v1.0.0 (2025-01-18)
Bug Fixes
-
Add details for fields (
97a8e84
) -
Apply singleton to context (
15f2b76
) -
Change default api list to use (
6e06041
) -
Change license to GPL 3.0 (
8696d14
) -
Error log even successfully got data (
9740734
) -
Indent for config schema (
da8752b
) -
Inject ssl cert (
4077c8e
) -
Move config_reader out of config scope (
d407184
) -
Naming unpaid only, detail showing (
fe41fc0
) -
No expose config outside (
458fea7
)
Also refactor generate_schemas, simplify it
-
Re-organise to avoid config read related (
11eca21
) -
Sample config match schema (
4b442a6
) -
Schema config (
dd1aa79
) -
Split requirements for ci caching (
76fcba9
) -
Unclose httpaio session (
64695cc
) -
Update get_data return type without None case (
7ce4081
) -
Use apis list, not allow single api (
0115611
) -
async: Move aiohttp session from class attribute to function scope (
b9a7ba4
) -
config: Use snake case on config (
529e5a0
)
Also frozen set in model config, not in field
-
config-schema: Not using base abstract class (
39e369d
) -
deps: Export requirements.txt (
6a40ac4
) -
engines/csgt.vn: It works now (
301be0d
) -
get_data: Correct plate_infos type from list to tuple (
31d71aa
) -
get_data: Handle function to get owner which is a missing variable (
db3e0c1
) -
GetData: Resolve mutiples error of async in GetData (
d8820b0
) -
import: Update PlateInfo import path to match new module structure (
bd09001
) -
message: Resolve KeyError in string formatting (
81f6b2f
) -
pre-commit: Generate schema once (
1dcf3f8
) -
README: Using html instead of md for inline word bold (
6896066
) -
typo: Generate-schemas (
dc4dfc1
)
Chores
Co-authored-by: mend-bolt-for-github[bot] <42819689+mend-bolt-for-github[bot]@users.noreply.github.com>
-
Add config for cz (
ef6f583
) -
Add enabled field in telegram (
cc058bc
) -
Add more info in pyproject (
870a351
) -
Add more log info (
4f05f68
) -
Add precommit note for dev (
cbab738
)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
-
Add validator to parse the list of office (
ac67b7a
) -
Adjust justfile commands (
954bc19
) -
Break instead of return while looping to process apis (
5c7db8d
) -
Change is None to not check (
8d91f99
) -
Combine vehicle type in config (
97eaf58
) -
Delete whitesource config (
e408129
)
Not using whitesource. Use CodeQL scan instead
-
Export requirements again (
aeb9a2a
) -
Extract deps to requirements.txt (
9f95fa4
) -
Fix just commands again (
c9be332
) -
Fix justfile run command (
74bcd2f
) -
Fix uv run command that mutate env (
457b0ff
) -
Github repo on website, navigate,... (
2f34a17
) -
Handle not notify in case not enable (
e3f4712
) -
Hash more to differentiate more pydantic model (
50d6e07
) -
Improve print console (
f719d14
) -
Improve print console output (
1e20b4a
) -
Move "apt_pkgs.txt" to .github (
030a4df
) -
Move requirements to requirements folder (
3816a74
) -
Move schemas to docs, not include in repo (
b156519
) -
Note python ver 3.13 (
514af6f
) -
Only export normal deps to requirements.txt
-
Remove future again (
be5c950
) -
Remove import future (
8c19fb8
) -
Remove requirements.txt (
5aea390
) -
Remove unused exceptions (
e48a9dd
) -
Remove wrong code (
338838a
) -
Run pre-commit (
dbcc07e
) -
Sample config.json (
5704286
) -
Update command to include custom config file for schema generation (
a55668c
) -
Use logger enum (
3ecd7e5
) -
assets: Add site for csgt.vn (
e5e94aa
) -
assets: Delete sites (
9ee9de9
)
Test delete a file in github :))
-
config: Add HTML file exclusion to .whitesource (
818ad4c
) -
config: Add more bien so (
5230218
) -
config: Add VS Code settings to override Python run button (
17a4527
) -
config: Edit desc,... (
741ecdf
) -
config: Run program on task override VSCode run button (
0bc5174
) -
config: Update exclusion pattern in .whitesource (
577dcab
) -
config: Use / instead of \ to support linux os (
54f1bb7
) -
config.sample: Update sample config (
12c2177
) -
deps: Add requests to dependencies (
153bb88
)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
-
dev: Add precommit (
431d5c1
) -
dev: Add pyrightconfig, include unused import ruff rule (
d958f01
) -
dev: Using uv as package manager (
d0761fb
) -
dev: Validate json config based on metaschema (
b34ff75
) -
track file in models/ to trigger generate config schema
-
dev/precommit: Add uv lock file, export requirements hook (
c77478e
) -
dev/ruff: Add isort rule (
72a1156
) -
dev/vscode: Custom presentation for tasks (
bb5ae6a
) -
dev/vscode: Re-config for running and debugging (
2bb8de8
) -
engine/csgt: Remove logger of html data (
93358b4
) -
get-data: Improve logging (
6b13b41
) -
GetData: Handle unpaid_only variable for conditional processing (
b585f25
) -
jsfh: Reconfig, no reuse ref (
448d91f
) -
just: Adjust commands, add run pre-commit (
dafd5aa
) -
justfile: Add clean command (
99059d1
) -
justfile: Pre-commit install when restore deps (
4f102b7
) -
justfile: Remove dir with true (
55a897c
) -
justfile: Rename restore env, fix syntax (
24e3b74
) -
logging: Add logger to enhance debugging (
1928e0b
) -
pre-commit: Add taplo, actionlint (
4d49b36
) -
pre-commit: Disable taplo lint (
025db10
) -
pre-commit: Enable pyupgrade (
a2ca5ec
) -
pre-commit: Remove some hooks (
faa1ecc
) -
renovate: Auto merge deps, define managers (
c3fcc7a
) -
renovate: Enable pre-commit checks in configuration (
ca26656
) -
Ensures that pre-commit hooks are triggered and checked during dependency updates
-
requests: Add timeout argument to requests.post for better control (
98d856e
) -
requests/phatnguoi.vn: Use another plate for more verbose response (
109e5fe
) -
sample-config: Add sample enabled plate (
a32e7fc
) -
sample-config: Change schema url (
06a97ed
) -
sample-config: Update sample config (
2428ae8
) -
taplo: Add config for space 2 indent (
afddb23
) -
threading: Remove unused import (
222875d
) -
types/vehicle_type: Use new syntax (
238aa3d
) -
wip: Let Nguyen do :) (
ee2df77
)
Code Style
Continuous Integration
-
Add codeql (
75c2a5f
) -
Add concurrency for codeql and pre-commit (
3535423
) -
Add secret config (
1d067a9
) -
Cache pip python (
0b39bec
) -
Disable cron, cache path requirements.txt (
8077fbd
) -
Fix concurrency group (
4d26e3f
) -
Only run check, build web on main repo (
08976c1
) -
Setup for uv (
8904c98
) -
Trigger requests folder's changes (
bcde04f
) -
codeql: Fix not running when src changed recursively (
26e509d
) -
codeql: Only trigger on change in src (
3f5eda1
) -
deploy-website: Only trigger when needed (
1af776d
) -
deploy-website: Trigger on config model changes (
9d886e6
) -
deploy-website: Trigger when sample config is changed (
7d4e4e5
) -
pre-commit: Add pre-commit and status badge (
54f4724
) -
pre-commit: Fix wrong pre-commit command (
f5d57a9
) -
pre-commit: Skip generate-config-schemas on ci (
7244521
) -
schedule-run: Add tesseract and dataset (
fc9b118
) -
schedule-run: Clean unused env (
44913a2
) -
schedule-run: Fix wrong variable which lead fail to run (
1ae85c8
) -
schedule-run: Run with uv instead of just (
7a47197
) -
schedule-run: Shorten just command (
b53c305
) -
schedule-run: Use apt pkg dataset for tesseract (
cb581f1
)
Documentation
- Add note for phatnguoi.vn (
2b9aa66
)
Also add docs with include requests folder
Co-authored-by: codacy-production[bot] <61871480+codacy-production[bot]@users.noreply.github.com>
Co-authored-by: KevinNitroG [email protected]
-
Better guidance to use (
164f7be
) -
Change star history chart with dark theme supported (
43ebf0d
) -
Note for csgt.vn api, tesseract, dev require uv, just (
4863866
) -
Note for just usage (
526e49b
) -
Note more way to use (with uv, just) (
c789ae4
)
Adjust minor website appearance
- Only support python >=3.13 (
d035da9
)
Adjust some admonition
-
Update docs better mkdocs (
97ff1a8
) -
Use snippets instead of markdown include plugin (
3a21248
) -
generate-schemas: Create dir before write (
d7b97dd
) -
mkdocs: Add github repo link in web (
00ba940
) -
mkdocs: Exclude "requests" folder after build (
3e62ad3
) -
mkdocs: Fix broken link, reconfig mkdocs (
9f35541
) -
mkdocs: No plugin optimize (
f0c4f12
) -
mkdocs: Using gtag in mkdoc's feature (
c1239c2
) -
README: Add disclamer (
0f7a58d
) -
README: Add ex no violate plate (
1ee3b6e
) -
README: Add more example bien so (
7a4a82d
) -
README: Add refs (
db4cc74
) -
README: Add star history chart (
47ea850
) -
README: Add wakatime badge (
f009a8f
) -
README: Add warning using WIP (
e6616fb
) -
README: Bruh note (
e0f040a
) -
README: Edit disclaimer (
5e5364a
) -
README: Escape "_" (
4287860
) -
README: Fix duplicate title of star history (
e32f306
) -
README: Remove disclaimer section, add website link (
341e285
) -
README: Sep line for each sections (
4eeeb4f
) -
README: Use static badge for license (
0e31d15
) -
requests: Update requests with variables (
aaec153
) -
schedule-run: More details (
8848fa9
) -
usage: No arg editable with pip (
70017a7
)
Features
Co-authored-by: NTGNguyen [email protected]
-
Add get_data function to fetch data for mutiple plates (
f42286a
) -
Add license (
8be0d42
) -
Add logger config (
8bbfe77
) -
Add option havent_paid_only, detail_log (
0fc3d1b
)
-
fix: handle string as @KevinNitroG's instructions
-
fix(print_console): not behave as intended due to incorrect grouping
Co-authored-by: Kevin Nitro [email protected]
-
Add program's context model (
f9c9f8f
) -
Add telegram notify config (
875f294
) -
Create_getdata class to get data with a single Config object (
75f11f3
) -
Fix schema, use json instead of yaml (
a91b955
) -
Format PlatesContextModel into a md format string (
18c7b10
)
Co-authored-by: Kevin Nitro [email protected]
-
feat: get data from zm.io.vn
-
fix: rename to correct api
-
fix: hehe
Co-authored-by: Kevin Nitro [email protected]
-
Get the list of PlateInfoContextModel from get_data function (
35037e1
) -
Handle data after fetching it from an API and parse data to context (
1e32309
) -
Handle unpaid only case (
1a4efc4
) -
Initial commit (
1ccea9e
) -
Lower python version to run to 3.10 (
e211af1
) -
Option to toggle asynchronous request (
1400a74
) -
Print string to console (
d91b61c
)
Co-authored-by: KevinNitroG [email protected]
@NTGNguyen will fix this it later. I merged this because it contains changes
Performance Improvements
- Check empty notification in the right way (
c66917e
)
Refactoring
-
Add for multiple API (
040fee2
) -
Better name convention (
ca9ec33
) -
Cleanup test print (
f077e8e
) -
Config dto, context model,... (
cb0d7c2
) -
Declare str dunder method in suitable models (
a95fe8a
) -
For multi noti (
128a805
) -
Force type for vehicle, use camel case for config.json (
0e6b78a
) -
Idk too much (
b4419bd
)
fix #40
-
Let init import export only (
8e27ae0
) -
Minor reorganization of files for better clarity (
7fef896
) -
Modify log msg, todo for Nguyen to print plates (
f0b895b
) -
Name convention remove DTO, Model (
6e39112
) -
Note for Nguyen (
91dee91
)
hehe
-
Re-organise models (
060c65f
) -
Remove gha, use pydantic instead of dataclass (
7f2516b
) -
Remove redundant function as its logic is handled in another method (
4624b8c
) -
Rename noti to notification, improve class' names (
b5a9f92
) -
Replace datetime function with string converting (
a27daac
) -
Setup generate schema (
7196c51
) -
Timeout to constant (
d89cff4
) -
Unify architecture of get_data, send_notifications (
822b2bb
) -
Use dataclass with message detail model (
1f4e3d3
) -
Using tuple of class instead of a complex dict (
3827bfe
) -
Whatever will be, will be 8{ (
c3547d6
) -
async: Replace threading with async for improved concurrency (
553fb7a
) -
config: Define API also as list, constraint list length (
dbb2c20
) -
config: Read more config location, raise if no config found (
a1a4d81
) -
constants: Split constants.py into multiple files for better organization (
d8111ee
) -
context: Rename plate model (
b9ec97f
) -
engine/checkphatnguoi: Cleanup (
877d934
) -
engine/checkphatnguoi: Type safety response (
51034db
) -
message: Using a clearly class to store data instead of a complex type (
1df9158
) -
project: Organise project to run with pyproject (
cfe7d79
) -
send_messages: Using async instead of threading for better concurent (
2e0c41c
) -
typing: Change all lists to tuples for immutability (
d4faaba
)