mirror of
https://github.com/dlt-hub/dlt.git
synced 2025-12-17 19:31:30 +00:00
add a script to check wether our poetry lockfile is in order (#1103)
* add a script to check wether our poetry lockfile is in order * small script changes * convert script to python move tools to tools folder * add encoding information
This commit is contained in:
3
Makefile
3
Makefile
@@ -47,7 +47,8 @@ dev: has-poetry
|
||||
poetry install --all-extras --with airflow --with docs --with providers --with pipeline --with sentry-sdk
|
||||
|
||||
lint:
|
||||
./check-package.sh
|
||||
./tools/check-package.sh
|
||||
poetry run python ./tools/check-lockfile.py
|
||||
poetry run mypy --config-file mypy.ini dlt tests
|
||||
poetry run flake8 --max-line-length=200 dlt
|
||||
poetry run flake8 --max-line-length=200 tests --exclude tests/reflection/module_cases
|
||||
|
||||
0
tools/__init__.py
Normal file
0
tools/__init__.py
Normal file
24
tools/check-lockfile.py
Executable file
24
tools/check-lockfile.py
Executable file
@@ -0,0 +1,24 @@
|
||||
import sys
|
||||
|
||||
# File and string to search for
|
||||
lockfile_name = "poetry.lock"
|
||||
hash_string = "hash = "
|
||||
threshold = 100
|
||||
|
||||
try:
|
||||
count = 0
|
||||
with open(lockfile_name, 'r', encoding="utf8") as file:
|
||||
for line in file:
|
||||
if hash_string in line:
|
||||
count += 1
|
||||
if count >= threshold:
|
||||
print(f"Success: Found '{hash_string}' more than {threshold} times in {lockfile_name}.")
|
||||
sys.exit(0)
|
||||
|
||||
# If the loop completes without early exit, it means the threshold was not reached
|
||||
print(f"Error: The string '{hash_string}' appears less than {threshold} times in {lockfile_name}, please make sure you are using an up to date poetry version.")
|
||||
sys.exit(1)
|
||||
|
||||
except FileNotFoundError:
|
||||
print(f"Error: File {lockfile_name} does not exist.")
|
||||
sys.exit(1)
|
||||
Reference in New Issue
Block a user