From c2bfca55508484f19bc2b40e15babc0fd721fdc5 Mon Sep 17 00:00:00 2001 From: LLM Date: Mon, 6 Apr 2026 09:56:11 +0000 Subject: [PATCH] [+] ruff line-length 100, add meson:install:list, bump pr34 v0.1.5.66 1. set ruff line-length to 100, reformat 18 files; 2. move pr34 version to pyproject.common.toml, read via toml in meson.build; 3. fix meson install_subdir to only include meson/toolchains, not entire meson/; 4. add meson:install:list command with --mode meson|pyproject for dry-run; 5. add .venv-whl-cache to .gitignore exceptions and .gitattributes lfs tracking; 6. release pr34 v0.1.5.66 .whl; 7. commit python/.venv-whl-cache and archlinux/.venv-whl-cache via lfs; --- .gitattributes | 2 + .gitignore | 2 + .../annotated_types-0.7.0-py3-none-any.whl | 3 + .../build-1.4.0-py3-none-any.whl | 3 + ...inux_2_17_x86_64.manylinux_2_28_x86_64.whl | 3 + .../meson-1.10.2-py3-none-any.whl | 3 + .../meson_python-0.19.0-py3-none-any.whl | 3 + ...inux_2_17_x86_64.manylinux_2_28_x86_64.whl | 3 + .../mypy_extensions-1.1.0-py3-none-any.whl | 3 + .../nodeenv-1.10.0-py2.py3-none-any.whl | 3 + .../packaging-26.0-py3-none-any.whl | 3 + .../pathspec-1.0.4-py3-none-any.whl | 3 + .../pip-23.3.2-py3-none-any.whl | 3 + .../pybind11-3.0.2-py3-none-any.whl | 3 + .../pydantic-2.12.5-py3-none-any.whl | 3 + ...linux_2_17_x86_64.manylinux2014_x86_64.whl | 3 + .../pydantic_settings-2.13.1-py3-none-any.whl | 3 + .../pyproject_hooks-1.2.0-py3-none-any.whl | 3 + ...pyproject_metadata-0.11.0-py3-none-any.whl | 3 + ...linux_2_17_x86_64.manylinux2014_x86_64.whl | 3 + .../pyright-1.1.408-py3-none-any.whl | 3 + .../python_dotenv-1.2.2-py3-none-any.whl | 3 + ...linux_2_17_x86_64.manylinux2014_x86_64.whl | 3 + .../setuptools-82.0.1-py3-none-any.whl | 3 + ...7.35-cp314-cp314-manylinux_2_28_x86_64.whl | 3 + ...inux_2_17_x86_64.manylinux_2_28_x86_64.whl | 3 + .../typing_extensions-4.15.0-py3-none-any.whl | 3 + .../typing_inspection-0.4.2-py3-none-any.whl | 3 + ...linux_2_17_x86_64.manylinux2014_x86_64.whl | 3 + ...linux_2_17_x86_64.manylinux2014_x86_64.whl | 3 + .../annotated_doc-0.0.4-py3-none-any.whl | 3 + .../annotated_types-0.7.0-py3-none-any.whl | 3 + .../anyio-4.10.0-py3-none-any.whl | 3 + .../argcomplete-3.6.2-py3-none-any.whl | 3 + .../asgiref-3.9.1-py3-none-any.whl | 3 + .../build-1.3.0-py3-none-any.whl | 3 + ...linux_2_17_x86_64.manylinux2014_x86_64.whl | 3 + .../click-8.2.1-py3-none-any.whl | 3 + .../click-8.3.2-py3-none-any.whl | 3 + ...5.0.6-cp311-abi3-manylinux_2_34_x86_64.whl | 3 + .../django-5.2.5-py3-none-any.whl | 3 + .../django_stubs-5.2.2-py3-none-any.whl | 3 + .../django_stubs_ext-5.2.2-py3-none-any.whl | 3 + .../fastapi-0.116.1-py3-none-any.whl | 3 + .../h11-0.16.0-py3-none-any.whl | 3 + .../idna-3.10-py3-none-any.whl | 3 + .../jmespath-1.1.0-py3-none-any.whl | 3 + ...inux_2_24_x86_64.manylinux_2_28_x86_64.whl | 3 + .../markdown_it_py-4.0.0-py3-none-any.whl | 3 + .../mdurl-0.1.2-py3-none-any.whl | 3 + .../meson-1.9.1-py3-none-any.whl | 3 + .../meson_python-0.18.0-py3-none-any.whl | 3 + ...inux_2_17_x86_64.manylinux_2_28_x86_64.whl | 3 + .../mypy_extensions-1.1.0-py3-none-any.whl | 3 + ...linux2014_x86_64.manylinux_2_17_x86_64.whl | 3 + .../nodeenv-1.9.1-py2.py3-none-any.whl | 3 + ...inux_2_27_x86_64.manylinux_2_28_x86_64.whl | 3 + ...ne_fxreader_pr34-0.1.5.39-py3-none-any.whl | 3 + .../packaging-25.0-py3-none-any.whl | 3 + ...ylinux_2_5_x86_64.musllinux_1_1_x86_64.whl | 3 + .../pathspec-0.12.1-py3-none-any.whl | 3 + .../.venv-whl-cache/pip-25.1-py3-none-any.whl | 3 + .../pybind11-3.0.1-py3-none-any.whl | 3 + .../pycparser-2.22-py3-none-any.whl | 3 + .../pydantic-2.12.3-py3-none-any.whl | 3 + ...linux_2_17_x86_64.manylinux2014_x86_64.whl | 3 + .../pydantic_settings-2.11.0-py3-none-any.whl | 3 + .../pygments-2.20.0-py3-none-any.whl | 3 + .../pyproject_hooks-1.2.0-py3-none-any.whl | 3 + .../pyproject_metadata-0.9.1-py3-none-any.whl | 3 + ...linux_2_17_x86_64.manylinux2014_x86_64.whl | 3 + .../pyright-1.1.407-py3-none-any.whl | 3 + .../python_dotenv-1.2.1-py3-none-any.whl | 3 + ...inux_2_17_x86_64.manylinux_2_28_x86_64.whl | 3 + .../rich-14.3.3-py3-none-any.whl | 3 + ...linux_2_17_x86_64.manylinux2014_x86_64.whl | 3 + .../setuptools-80.9.0-py3-none-any.whl | 3 + .../shellingham-1.5.4-py2.py3-none-any.whl | 3 + .../sniffio-1.3.1-py3-none-any.whl | 3 + .../sqlparse-0.5.3-py3-none-any.whl | 3 + .../starlette-0.47.3-py3-none-any.whl | 3 + .../toml_cli-0.8.2-py3-none-any.whl | 3 + ...inux_2_17_x86_64.manylinux_2_28_x86_64.whl | 3 + .../tomlkit-0.13.3-py3-none-any.whl | 3 + .../tomlkit-0.14.0-py3-none-any.whl | 3 + .../tomlq-0.1.0-py2.py3-none-any.whl | 3 + .../typer-0.24.1-py3-none-any.whl | 3 + ...es_pyyaml-6.0.12.20250822-py3-none-any.whl | 3 + .../typing_extensions-4.15.0-py3-none-any.whl | 3 + .../typing_inspection-0.4.2-py3-none-any.whl | 3 + ...linux_2_17_x86_64.manylinux2014_x86_64.whl | 3 + .../uvicorn-0.35.0-py3-none-any.whl | 3 + .../xmltodict-0.14.2-py2.py3-none-any.whl | 3 + .../.venv-whl-cache/yq-3.4.3-py3-none-any.whl | 3 + python/_m.py | 5 +- python/cli.py | 54 ++- python/m.py | 65 ++-- python/meson.build | 9 +- python/online/fxreader/pr34/commands.py | 335 ++++-------------- .../fxreader/pr34/commands_typed/cli.py | 145 ++++---- .../pr34/commands_typed/cli_bootstrap.py | 65 ++-- .../fxreader/pr34/commands_typed/crypto.py | 4 +- .../fxreader/pr34/commands_typed/metrics.py | 26 +- .../fxreader/pr34/commands_typed/mypy.py | 10 +- .../online/fxreader/pr34/commands_typed/os.py | 14 +- .../fxreader/pr34/commands_typed/pip.py | 32 +- .../fxreader/pr34/commands_typed/pydantic.py | 22 +- .../fxreader/pr34/commands_typed/status.py | 4 +- python/online/fxreader/pr34/oom_firefox.py | 29 +- python/online/fxreader/pr34/tasks/ble.py | 12 +- python/online/fxreader/pr34/tasks/cython.py | 4 +- .../fxreader/pr34/tasks/jigsaw_toxic.py | 16 +- .../online/fxreader/pr34/tasks/mlb_player.py | 270 ++++---------- python/pyproject.common.toml | 8 +- ...ne_fxreader_pr34-0.1.5.66-py3-none-any.whl | 3 + 115 files changed, 657 insertions(+), 755 deletions(-) create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/annotated_types-0.7.0-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/build-1.4.0-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/librt-0.8.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/meson-1.10.2-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/meson_python-0.19.0-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/mypy-1.19.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/mypy_extensions-1.1.0-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/nodeenv-1.10.0-py2.py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/packaging-26.0-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pathspec-1.0.4-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pip-23.3.2-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pybind11-3.0.2-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic-2.12.5-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic_settings-2.13.1-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyproject_hooks-1.2.0-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyproject_metadata-0.11.0-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyrefly-0.56.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyright-1.1.408-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/python_dotenv-1.2.2-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/ruff-0.15.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/setuptools-82.0.1-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/solv-0.7.35-cp314-cp314-manylinux_2_28_x86_64.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/tomli-2.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/typing_extensions-4.15.0-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/typing_inspection-0.4.2-py3-none-any.whl create mode 100644 meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/uv-0.10.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl create mode 100644 python/.venv-whl-cache/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl create mode 100644 python/.venv-whl-cache/annotated_doc-0.0.4-py3-none-any.whl create mode 100644 python/.venv-whl-cache/annotated_types-0.7.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/anyio-4.10.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/argcomplete-3.6.2-py3-none-any.whl create mode 100644 python/.venv-whl-cache/asgiref-3.9.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/build-1.3.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl create mode 100644 python/.venv-whl-cache/click-8.2.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/click-8.3.2-py3-none-any.whl create mode 100644 python/.venv-whl-cache/cryptography-45.0.6-cp311-abi3-manylinux_2_34_x86_64.whl create mode 100644 python/.venv-whl-cache/django-5.2.5-py3-none-any.whl create mode 100644 python/.venv-whl-cache/django_stubs-5.2.2-py3-none-any.whl create mode 100644 python/.venv-whl-cache/django_stubs_ext-5.2.2-py3-none-any.whl create mode 100644 python/.venv-whl-cache/fastapi-0.116.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/h11-0.16.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/idna-3.10-py3-none-any.whl create mode 100644 python/.venv-whl-cache/jmespath-1.1.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/marisa_trie-1.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl create mode 100644 python/.venv-whl-cache/markdown_it_py-4.0.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/mdurl-0.1.2-py3-none-any.whl create mode 100644 python/.venv-whl-cache/meson-1.9.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/meson_python-0.18.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/mypy-1.18.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl create mode 100644 python/.venv-whl-cache/mypy_extensions-1.1.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/ninja-1.13.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl create mode 100644 python/.venv-whl-cache/nodeenv-1.9.1-py2.py3-none-any.whl create mode 100644 python/.venv-whl-cache/numpy-2.3.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl create mode 100644 python/.venv-whl-cache/online_fxreader_pr34-0.1.5.39-py3-none-any.whl create mode 100644 python/.venv-whl-cache/packaging-25.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/patchelf-0.17.2.4-py3-none-manylinux1_x86_64.manylinux_2_5_x86_64.musllinux_1_1_x86_64.whl create mode 100644 python/.venv-whl-cache/pathspec-0.12.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/pip-25.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/pybind11-3.0.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/pycparser-2.22-py3-none-any.whl create mode 100644 python/.venv-whl-cache/pydantic-2.12.3-py3-none-any.whl create mode 100644 python/.venv-whl-cache/pydantic_core-2.41.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl create mode 100644 python/.venv-whl-cache/pydantic_settings-2.11.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/pygments-2.20.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/pyproject_hooks-1.2.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/pyproject_metadata-0.9.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/pyrefly-0.59.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl create mode 100644 python/.venv-whl-cache/pyright-1.1.407-py3-none-any.whl create mode 100644 python/.venv-whl-cache/python_dotenv-1.2.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/regex-2026.4.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl create mode 100644 python/.venv-whl-cache/rich-14.3.3-py3-none-any.whl create mode 100644 python/.venv-whl-cache/ruff-0.14.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl create mode 100644 python/.venv-whl-cache/setuptools-80.9.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/shellingham-1.5.4-py2.py3-none-any.whl create mode 100644 python/.venv-whl-cache/sniffio-1.3.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/sqlparse-0.5.3-py3-none-any.whl create mode 100644 python/.venv-whl-cache/starlette-0.47.3-py3-none-any.whl create mode 100644 python/.venv-whl-cache/toml_cli-0.8.2-py3-none-any.whl create mode 100644 python/.venv-whl-cache/tomli-2.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl create mode 100644 python/.venv-whl-cache/tomlkit-0.13.3-py3-none-any.whl create mode 100644 python/.venv-whl-cache/tomlkit-0.14.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/tomlq-0.1.0-py2.py3-none-any.whl create mode 100644 python/.venv-whl-cache/typer-0.24.1-py3-none-any.whl create mode 100644 python/.venv-whl-cache/types_pyyaml-6.0.12.20250822-py3-none-any.whl create mode 100644 python/.venv-whl-cache/typing_extensions-4.15.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/typing_inspection-0.4.2-py3-none-any.whl create mode 100644 python/.venv-whl-cache/uv-0.9.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl create mode 100644 python/.venv-whl-cache/uvicorn-0.35.0-py3-none-any.whl create mode 100644 python/.venv-whl-cache/xmltodict-0.14.2-py2.py3-none-any.whl create mode 100644 python/.venv-whl-cache/yq-3.4.3-py3-none-any.whl create mode 100644 releases/whl/online_fxreader_pr34-0.1.5.66-py3-none-any.whl diff --git a/.gitattributes b/.gitattributes index 3a0b795..44cc4e7 100644 --- a/.gitattributes +++ b/.gitattributes @@ -4,3 +4,5 @@ python/online/fxreader/pr34/commands_typed/archlinux/tests/res/*.db filter=lfs d python/deps/whl/** filter=lfs diff=lfs merge=lfs -text docker/*/deps/whl/** filter=lfs diff=lfs merge=lfs -text **/*.gpg filter=lfs diff=lfs merge=lfs -text +python/.venv-whl-cache/** filter=lfs diff=lfs merge=lfs -text +meson/**/.venv-whl-cache/** filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore index 02a7a05..3a1d7f7 100644 --- a/.gitignore +++ b/.gitignore @@ -23,3 +23,5 @@ python/pyproject.toml !docker/*/deps/whl/** !dotfiles/.vim +!python/.venv-whl-cache/** +!meson/**/.venv-whl-cache/** diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/annotated_types-0.7.0-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/annotated_types-0.7.0-py3-none-any.whl new file mode 100644 index 0000000..d0b1b92 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/annotated_types-0.7.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +size 13643 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/build-1.4.0-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/build-1.4.0-py3-none-any.whl new file mode 100644 index 0000000..a578317 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/build-1.4.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a07c1b8eb6f2b311b96fcbdbce5dab5fe637ffda0fd83c9cac622e927501596 +size 24141 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/librt-0.8.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/librt-0.8.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl new file mode 100644 index 0000000..1e91e8b --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/librt-0.8.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6b1977c4ea97ce5eb7755a78fae68d87e4102e4aaf54985e8b56806849cc06a3 +size 221217 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/meson-1.10.2-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/meson-1.10.2-py3-none-any.whl new file mode 100644 index 0000000..55c128b --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/meson-1.10.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f84ef186e6e788d9154db63620fc61b3ece69f643b94b43c8b9203c43d89b36 +size 1060890 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/meson_python-0.19.0-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/meson_python-0.19.0-py3-none-any.whl new file mode 100644 index 0000000..1ab893a --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/meson_python-0.19.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:67b5906c37404396d23c195e12c8825506074460d4a2e7083266b845d14f0298 +size 28946 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/mypy-1.19.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/mypy-1.19.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl new file mode 100644 index 0000000..802829e --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/mypy-1.19.1-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:28902ee51f12e0f19e1e16fbe2f8f06b6637f482c459dd393efddd0ec7f82045 +size 13601998 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/mypy_extensions-1.1.0-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/mypy_extensions-1.1.0-py3-none-any.whl new file mode 100644 index 0000000..7db212d --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/mypy_extensions-1.1.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +size 4963 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/nodeenv-1.10.0-py2.py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/nodeenv-1.10.0-py2.py3-none-any.whl new file mode 100644 index 0000000..a36aec7 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/nodeenv-1.10.0-py2.py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5bb13e3eed2923615535339b3c620e76779af4cb4c6a90deccc9e36b274d3827 +size 23438 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/packaging-26.0-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/packaging-26.0-py3-none-any.whl new file mode 100644 index 0000000..b9642b8 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/packaging-26.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b36f1fef9334a5588b4166f8bcd26a14e521f2b55e6b9de3aaa80d3ff7a37529 +size 74366 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pathspec-1.0.4-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pathspec-1.0.4-py3-none-any.whl new file mode 100644 index 0000000..ae23c9e --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pathspec-1.0.4-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb6ae2fd4e7c921a165808a552060e722767cfa526f99ca5156ed2ce45a5c723 +size 55206 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pip-23.3.2-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pip-23.3.2-py3-none-any.whl new file mode 100644 index 0000000..4612b0f --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pip-23.3.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5052d7889c1f9d05224cd41741acb7c5d6fa735ab34e339624a614eaaa7e7d76 +size 2109393 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pybind11-3.0.2-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pybind11-3.0.2-py3-none-any.whl new file mode 100644 index 0000000..452418b --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pybind11-3.0.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8a6500548919cc33bcd220d5f984688326f574fa97f1107f2f4fdb4c6fb019f +size 310158 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic-2.12.5-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic-2.12.5-py3-none-any.whl new file mode 100644 index 0000000..69cd7f3 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic-2.12.5-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e561593fccf61e8a20fc46dfc2dfe075b8be7d0188df33f221ad1f0139180f9d +size 463580 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..7bd301f --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic_core-2.41.5-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:22f0fb8c1c583a3b6f24df2470833b40207e907b90c928cc8d3594b76f874375 +size 2064877 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic_settings-2.13.1-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic_settings-2.13.1-py3-none-any.whl new file mode 100644 index 0000000..626eeb6 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pydantic_settings-2.13.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d56fd801823dbeae7f0975e1f8c8e25c258eb75d278ea7abb5d9cebb01b56237 +size 58929 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyproject_hooks-1.2.0-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyproject_hooks-1.2.0-py3-none-any.whl new file mode 100644 index 0000000..c99f61f --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyproject_hooks-1.2.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +size 10216 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyproject_metadata-0.11.0-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyproject_metadata-0.11.0-py3-none-any.whl new file mode 100644 index 0000000..d499213 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyproject_metadata-0.11.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85bbecca8694e2c00f63b492c96921d6c228454057c88e7c352b2077fcaa4096 +size 22040 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyrefly-0.56.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyrefly-0.56.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..3568e66 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyrefly-0.56.0-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec6ab3f9e2c03bae8dfa520f52778f47b6762020929a664177d36aa3b941db22 +size 39843682 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyright-1.1.408-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyright-1.1.408-py3-none-any.whl new file mode 100644 index 0000000..2cd05dc --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/pyright-1.1.408-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:090b32865f4fdb1e0e6cd82bf5618480d48eecd2eb2e70f960982a3d9a4c17c1 +size 6399144 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/python_dotenv-1.2.2-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/python_dotenv-1.2.2-py3-none-any.whl new file mode 100644 index 0000000..00f478f --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/python_dotenv-1.2.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d8214789a24de455a8b8bd8ae6fe3c6b69a5e3d64aa8a8e5d68e694bbcb285a +size 22101 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/ruff-0.15.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/ruff-0.15.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..e13ba15 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/ruff-0.15.6-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:98893c4c0aadc8e448cfa315bd0cc343a5323d740fe5f28ef8a3f9e21b381f7e +size 11310928 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/setuptools-82.0.1-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/setuptools-82.0.1-py3-none-any.whl new file mode 100644 index 0000000..c100f20 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/setuptools-82.0.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a59e362652f08dcd477c78bb6e7bd9d80a7995bc73ce773050228a348ce2e5bb +size 1006223 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/solv-0.7.35-cp314-cp314-manylinux_2_28_x86_64.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/solv-0.7.35-cp314-cp314-manylinux_2_28_x86_64.whl new file mode 100644 index 0000000..34f4d58 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/solv-0.7.35-cp314-cp314-manylinux_2_28_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5606cd8e4bb1b3f30bbff592632fbc47c0e4f79d42869eff1af78dca8e6fd47 +size 2697752 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/tomli-2.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/tomli-2.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl new file mode 100644 index 0000000..dcbf2fa --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/tomli-2.4.0-cp314-cp314-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a26d7ff68dfdb9f87a016ecfd1e1c2bacbe3108f4e0f8bcd2228ef9a766c787d +size 250639 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/typing_extensions-4.15.0-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/typing_extensions-4.15.0-py3-none-any.whl new file mode 100644 index 0000000..19c74d0 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/typing_extensions-4.15.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +size 44614 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/typing_inspection-0.4.2-py3-none-any.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/typing_inspection-0.4.2-py3-none-any.whl new file mode 100644 index 0000000..c4071f4 --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/typing_inspection-0.4.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +size 14611 diff --git a/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/uv-0.10.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/uv-0.10.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..53c9c7b --- /dev/null +++ b/meson/online/fxreader/pr34/commands_typed/archlinux/.venv-whl-cache/uv-0.10.10-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e42e9e4a196ef75d1089715574eb1fe9bb62d390da05c6c8b36650a4de23d59f +size 23473055 diff --git a/python/.venv-whl-cache/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/python/.venv-whl-cache/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..2c2c766 --- /dev/null +++ b/python/.venv-whl-cache/PyYAML-6.0.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:70b189594dbe54f75ab3a1acec5f1e3faa7e8cf2f1e08d9b561cb41b845f69d5 +size 759523 diff --git a/python/.venv-whl-cache/annotated_doc-0.0.4-py3-none-any.whl b/python/.venv-whl-cache/annotated_doc-0.0.4-py3-none-any.whl new file mode 100644 index 0000000..55ee996 --- /dev/null +++ b/python/.venv-whl-cache/annotated_doc-0.0.4-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:571ac1dc6991c450b25a9c2d84a3705e2ae7a53467b5d111c24fa8baabbed320 +size 5303 diff --git a/python/.venv-whl-cache/annotated_types-0.7.0-py3-none-any.whl b/python/.venv-whl-cache/annotated_types-0.7.0-py3-none-any.whl new file mode 100644 index 0000000..d0b1b92 --- /dev/null +++ b/python/.venv-whl-cache/annotated_types-0.7.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53 +size 13643 diff --git a/python/.venv-whl-cache/anyio-4.10.0-py3-none-any.whl b/python/.venv-whl-cache/anyio-4.10.0-py3-none-any.whl new file mode 100644 index 0000000..505b55d --- /dev/null +++ b/python/.venv-whl-cache/anyio-4.10.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:60e474ac86736bbfd6f210f7a61218939c318f43f9972497381f1c5e930ed3d1 +size 107213 diff --git a/python/.venv-whl-cache/argcomplete-3.6.2-py3-none-any.whl b/python/.venv-whl-cache/argcomplete-3.6.2-py3-none-any.whl new file mode 100644 index 0000000..ba66c44 --- /dev/null +++ b/python/.venv-whl-cache/argcomplete-3.6.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:65b3133a29ad53fb42c48cf5114752c7ab66c1c38544fdf6460f450c09b42591 +size 43708 diff --git a/python/.venv-whl-cache/asgiref-3.9.1-py3-none-any.whl b/python/.venv-whl-cache/asgiref-3.9.1-py3-none-any.whl new file mode 100644 index 0000000..56f221b --- /dev/null +++ b/python/.venv-whl-cache/asgiref-3.9.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f3bba7092a48005b5f5bacd747d36ee4a5a61f4a269a6df590b43144355ebd2c +size 23790 diff --git a/python/.venv-whl-cache/build-1.3.0-py3-none-any.whl b/python/.venv-whl-cache/build-1.3.0-py3-none-any.whl new file mode 100644 index 0000000..d6f061c --- /dev/null +++ b/python/.venv-whl-cache/build-1.3.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7145f0b5061ba90a1500d60bd1b13ca0a8a4cebdd0cc16ed8adf1c0e739f43b4 +size 23382 diff --git a/python/.venv-whl-cache/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/python/.venv-whl-cache/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..0330bc8 --- /dev/null +++ b/python/.venv-whl-cache/cffi-1.17.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:dd398dbc6773384a17fe0d3e7eeb8d1a21c2200473ee6806bb5e6a8e62bb73dd +size 479447 diff --git a/python/.venv-whl-cache/click-8.2.1-py3-none-any.whl b/python/.venv-whl-cache/click-8.2.1-py3-none-any.whl new file mode 100644 index 0000000..11fd756 --- /dev/null +++ b/python/.venv-whl-cache/click-8.2.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61a3265b914e850b85317d0b3109c7f8cd35a670f963866005d6ef1d5175a12b +size 102215 diff --git a/python/.venv-whl-cache/click-8.3.2-py3-none-any.whl b/python/.venv-whl-cache/click-8.3.2-py3-none-any.whl new file mode 100644 index 0000000..3470466 --- /dev/null +++ b/python/.venv-whl-cache/click-8.3.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1924d2c27c5653561cd2cae4548d1406039cb79b858b747cfea24924bbc1616d +size 108379 diff --git a/python/.venv-whl-cache/cryptography-45.0.6-cp311-abi3-manylinux_2_34_x86_64.whl b/python/.venv-whl-cache/cryptography-45.0.6-cp311-abi3-manylinux_2_34_x86_64.whl new file mode 100644 index 0000000..c7a40d9 --- /dev/null +++ b/python/.venv-whl-cache/cryptography-45.0.6-cp311-abi3-manylinux_2_34_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f4028f29a9f38a2025abedb2e409973709c660d44319c61762202206ed577c42 +size 4456890 diff --git a/python/.venv-whl-cache/django-5.2.5-py3-none-any.whl b/python/.venv-whl-cache/django-5.2.5-py3-none-any.whl new file mode 100644 index 0000000..c2240e5 --- /dev/null +++ b/python/.venv-whl-cache/django-5.2.5-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b2ada0ee8a5ff743a40e2b9820d1f8e24c11bac9ae6469cd548f0057ea6ddcd +size 8302999 diff --git a/python/.venv-whl-cache/django_stubs-5.2.2-py3-none-any.whl b/python/.venv-whl-cache/django_stubs-5.2.2-py3-none-any.whl new file mode 100644 index 0000000..3b70770 --- /dev/null +++ b/python/.venv-whl-cache/django_stubs-5.2.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:79bd0fdbc78958a8f63e0b062bd9d03f1de539664476c0be62ade5f063c9e41e +size 485188 diff --git a/python/.venv-whl-cache/django_stubs_ext-5.2.2-py3-none-any.whl b/python/.venv-whl-cache/django_stubs_ext-5.2.2-py3-none-any.whl new file mode 100644 index 0000000..372502d --- /dev/null +++ b/python/.venv-whl-cache/django_stubs_ext-5.2.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8833bbe32405a2a0ce168d3f75a87168f61bd16939caf0e8bf173bccbd8a44c5 +size 8816 diff --git a/python/.venv-whl-cache/fastapi-0.116.1-py3-none-any.whl b/python/.venv-whl-cache/fastapi-0.116.1-py3-none-any.whl new file mode 100644 index 0000000..bbb7aa6 --- /dev/null +++ b/python/.venv-whl-cache/fastapi-0.116.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c46ac7c312df840f0c9e220f7964bada936781bc4e2e6eb71f1c4d7553786565 +size 95631 diff --git a/python/.venv-whl-cache/h11-0.16.0-py3-none-any.whl b/python/.venv-whl-cache/h11-0.16.0-py3-none-any.whl new file mode 100644 index 0000000..43e545e --- /dev/null +++ b/python/.venv-whl-cache/h11-0.16.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86 +size 37515 diff --git a/python/.venv-whl-cache/idna-3.10-py3-none-any.whl b/python/.venv-whl-cache/idna-3.10-py3-none-any.whl new file mode 100644 index 0000000..3ef2f95 --- /dev/null +++ b/python/.venv-whl-cache/idna-3.10-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3 +size 70442 diff --git a/python/.venv-whl-cache/jmespath-1.1.0-py3-none-any.whl b/python/.venv-whl-cache/jmespath-1.1.0-py3-none-any.whl new file mode 100644 index 0000000..067316f --- /dev/null +++ b/python/.venv-whl-cache/jmespath-1.1.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5663118de4908c91729bea0acadca56526eb2698e83de10cd116ae0f4e97c64 +size 20419 diff --git a/python/.venv-whl-cache/marisa_trie-1.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl b/python/.venv-whl-cache/marisa_trie-1.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl new file mode 100644 index 0000000..bfe7a8e --- /dev/null +++ b/python/.venv-whl-cache/marisa_trie-1.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ecdb19d33b26738a32602ef432b06cc6deeca4b498ce67ba8e5e39c8a7c19745 +size 1262653 diff --git a/python/.venv-whl-cache/markdown_it_py-4.0.0-py3-none-any.whl b/python/.venv-whl-cache/markdown_it_py-4.0.0-py3-none-any.whl new file mode 100644 index 0000000..c4471bb --- /dev/null +++ b/python/.venv-whl-cache/markdown_it_py-4.0.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147 +size 87321 diff --git a/python/.venv-whl-cache/mdurl-0.1.2-py3-none-any.whl b/python/.venv-whl-cache/mdurl-0.1.2-py3-none-any.whl new file mode 100644 index 0000000..8664ece --- /dev/null +++ b/python/.venv-whl-cache/mdurl-0.1.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8 +size 9979 diff --git a/python/.venv-whl-cache/meson-1.9.1-py3-none-any.whl b/python/.venv-whl-cache/meson-1.9.1-py3-none-any.whl new file mode 100644 index 0000000..f34f59b --- /dev/null +++ b/python/.venv-whl-cache/meson-1.9.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f824ab770c041a202f532f69e114c971918ed2daff7ea56583d80642564598d0 +size 1030356 diff --git a/python/.venv-whl-cache/meson_python-0.18.0-py3-none-any.whl b/python/.venv-whl-cache/meson_python-0.18.0-py3-none-any.whl new file mode 100644 index 0000000..5e3a1ab --- /dev/null +++ b/python/.venv-whl-cache/meson_python-0.18.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3b0fe051551cc238f5febb873247c0949cd60ded556efa130aa57021804868e2 +size 28420 diff --git a/python/.venv-whl-cache/mypy-1.18.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl b/python/.venv-whl-cache/mypy-1.18.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl new file mode 100644 index 0000000..457e752 --- /dev/null +++ b/python/.venv-whl-cache/mypy-1.18.2-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a431a6f1ef14cf8c144c6b14793a23ec4eae3db28277c358136e79d7d062f62d +size 13338709 diff --git a/python/.venv-whl-cache/mypy_extensions-1.1.0-py3-none-any.whl b/python/.venv-whl-cache/mypy_extensions-1.1.0-py3-none-any.whl new file mode 100644 index 0000000..7db212d --- /dev/null +++ b/python/.venv-whl-cache/mypy_extensions-1.1.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505 +size 4963 diff --git a/python/.venv-whl-cache/ninja-1.13.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl b/python/.venv-whl-cache/ninja-1.13.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl new file mode 100644 index 0000000..6a59f18 --- /dev/null +++ b/python/.venv-whl-cache/ninja-1.13.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fb46acf6b93b8dd0322adc3a4945452a4e774b75b91293bafcc7b7f8e6517dfa +size 180716 diff --git a/python/.venv-whl-cache/nodeenv-1.9.1-py2.py3-none-any.whl b/python/.venv-whl-cache/nodeenv-1.9.1-py2.py3-none-any.whl new file mode 100644 index 0000000..438bc6b --- /dev/null +++ b/python/.venv-whl-cache/nodeenv-1.9.1-py2.py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ba11c9782d29c27c70ffbdda2d7415098754709be8a7056d79a737cd901155c9 +size 22314 diff --git a/python/.venv-whl-cache/numpy-2.3.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl b/python/.venv-whl-cache/numpy-2.3.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl new file mode 100644 index 0000000..0cae87e --- /dev/null +++ b/python/.venv-whl-cache/numpy-2.3.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:938065908d1d869c7d75d8ec45f735a034771c6ea07088867f713d1cd3bbbe4f +size 16635989 diff --git a/python/.venv-whl-cache/online_fxreader_pr34-0.1.5.39-py3-none-any.whl b/python/.venv-whl-cache/online_fxreader_pr34-0.1.5.39-py3-none-any.whl new file mode 100644 index 0000000..6de61f6 --- /dev/null +++ b/python/.venv-whl-cache/online_fxreader_pr34-0.1.5.39-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b73f4caecb1ce6b94b4b3a87299e779b843ceb8d7a581da8d27abe622a6a37db +size 76119 diff --git a/python/.venv-whl-cache/packaging-25.0-py3-none-any.whl b/python/.venv-whl-cache/packaging-25.0-py3-none-any.whl new file mode 100644 index 0000000..af3ad3c --- /dev/null +++ b/python/.venv-whl-cache/packaging-25.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484 +size 66469 diff --git a/python/.venv-whl-cache/patchelf-0.17.2.4-py3-none-manylinux1_x86_64.manylinux_2_5_x86_64.musllinux_1_1_x86_64.whl b/python/.venv-whl-cache/patchelf-0.17.2.4-py3-none-manylinux1_x86_64.manylinux_2_5_x86_64.musllinux_1_1_x86_64.whl new file mode 100644 index 0000000..cd281b2 --- /dev/null +++ b/python/.venv-whl-cache/patchelf-0.17.2.4-py3-none-manylinux1_x86_64.manylinux_2_5_x86_64.musllinux_1_1_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9b35ebfada70c02679ad036407d9724ffe1255122ba4ac5e4be5868618a5689 +size 482846 diff --git a/python/.venv-whl-cache/pathspec-0.12.1-py3-none-any.whl b/python/.venv-whl-cache/pathspec-0.12.1-py3-none-any.whl new file mode 100644 index 0000000..9a48dd1 --- /dev/null +++ b/python/.venv-whl-cache/pathspec-0.12.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08 +size 31191 diff --git a/python/.venv-whl-cache/pip-25.1-py3-none-any.whl b/python/.venv-whl-cache/pip-25.1-py3-none-any.whl new file mode 100644 index 0000000..cd44ead --- /dev/null +++ b/python/.venv-whl-cache/pip-25.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:13b4aa0aaad055020a11bec8a1c2a70a2b2d080e12d89b962266029fff0a16ba +size 1824948 diff --git a/python/.venv-whl-cache/pybind11-3.0.1-py3-none-any.whl b/python/.venv-whl-cache/pybind11-3.0.1-py3-none-any.whl new file mode 100644 index 0000000..689bae7 --- /dev/null +++ b/python/.venv-whl-cache/pybind11-3.0.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:aa8f0aa6e0a94d3b64adfc38f560f33f15e589be2175e103c0a33c6bce55ee89 +size 293611 diff --git a/python/.venv-whl-cache/pycparser-2.22-py3-none-any.whl b/python/.venv-whl-cache/pycparser-2.22-py3-none-any.whl new file mode 100644 index 0000000..bef1e71 --- /dev/null +++ b/python/.venv-whl-cache/pycparser-2.22-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc +size 117552 diff --git a/python/.venv-whl-cache/pydantic-2.12.3-py3-none-any.whl b/python/.venv-whl-cache/pydantic-2.12.3-py3-none-any.whl new file mode 100644 index 0000000..41bd1e9 --- /dev/null +++ b/python/.venv-whl-cache/pydantic-2.12.3-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6986454a854bc3bc6e5443e1369e06a3a456af9d339eda45510f517d9ea5c6bf +size 462431 diff --git a/python/.venv-whl-cache/pydantic_core-2.41.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/python/.venv-whl-cache/pydantic_core-2.41.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..f816530 --- /dev/null +++ b/python/.venv-whl-cache/pydantic_core-2.41.4-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a1351f5bbdbbabc689727cb91649a00cb9ee7203e0a6e54e9f5ba9e22e384b84 +size 2069635 diff --git a/python/.venv-whl-cache/pydantic_settings-2.11.0-py3-none-any.whl b/python/.venv-whl-cache/pydantic_settings-2.11.0-py3-none-any.whl new file mode 100644 index 0000000..fa10bf0 --- /dev/null +++ b/python/.venv-whl-cache/pydantic_settings-2.11.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe2cea3413b9530d10f3a5875adffb17ada5c1e1bab0b2885546d7310415207c +size 48608 diff --git a/python/.venv-whl-cache/pygments-2.20.0-py3-none-any.whl b/python/.venv-whl-cache/pygments-2.20.0-py3-none-any.whl new file mode 100644 index 0000000..668c4d5 --- /dev/null +++ b/python/.venv-whl-cache/pygments-2.20.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81a9e26dd42fd28a23a2d169d86d7ac03b46e2f8b59ed4698fb4785f946d0176 +size 1231151 diff --git a/python/.venv-whl-cache/pyproject_hooks-1.2.0-py3-none-any.whl b/python/.venv-whl-cache/pyproject_hooks-1.2.0-py3-none-any.whl new file mode 100644 index 0000000..c99f61f --- /dev/null +++ b/python/.venv-whl-cache/pyproject_hooks-1.2.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9e5c6bfa8dcc30091c74b0cf803c81fdd29d94f01992a7707bc97babb1141913 +size 10216 diff --git a/python/.venv-whl-cache/pyproject_metadata-0.9.1-py3-none-any.whl b/python/.venv-whl-cache/pyproject_metadata-0.9.1-py3-none-any.whl new file mode 100644 index 0000000..2d771d4 --- /dev/null +++ b/python/.venv-whl-cache/pyproject_metadata-0.9.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ee5efde548c3ed9b75a354fc319d5afd25e9585fa918a34f62f904cc731973ad +size 18829 diff --git a/python/.venv-whl-cache/pyrefly-0.59.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/python/.venv-whl-cache/pyrefly-0.59.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..011f825 --- /dev/null +++ b/python/.venv-whl-cache/pyrefly-0.59.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:59a2d01723b84d042f4fa6ec871ffd52d0a7e83b0ea791c2e0bb0ff750abce56 +size 41236246 diff --git a/python/.venv-whl-cache/pyright-1.1.407-py3-none-any.whl b/python/.venv-whl-cache/pyright-1.1.407-py3-none-any.whl new file mode 100644 index 0000000..daceb8d --- /dev/null +++ b/python/.venv-whl-cache/pyright-1.1.407-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dd419f54fcc13f03b52285796d65e639786373f433e243f8b94cf93a7444d21 +size 5997008 diff --git a/python/.venv-whl-cache/python_dotenv-1.2.1-py3-none-any.whl b/python/.venv-whl-cache/python_dotenv-1.2.1-py3-none-any.whl new file mode 100644 index 0000000..a83227d --- /dev/null +++ b/python/.venv-whl-cache/python_dotenv-1.2.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b81ee9561e9ca4004139c6cbba3a238c32b03e4894671e181b671e8cb8425d61 +size 21230 diff --git a/python/.venv-whl-cache/regex-2026.4.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl b/python/.venv-whl-cache/regex-2026.4.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl new file mode 100644 index 0000000..d2a9f38 --- /dev/null +++ b/python/.venv-whl-cache/regex-2026.4.4-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ffa81f81b80047ba89a3c69ae6a0f78d06f4a42ce5126b0eb2a0a10ad44e0b2e +size 801126 diff --git a/python/.venv-whl-cache/rich-14.3.3-py3-none-any.whl b/python/.venv-whl-cache/rich-14.3.3-py3-none-any.whl new file mode 100644 index 0000000..a076d35 --- /dev/null +++ b/python/.venv-whl-cache/rich-14.3.3-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:793431c1f8619afa7d3b52b2cdec859562b950ea0d4b6b505397612db8d5362d +size 310458 diff --git a/python/.venv-whl-cache/ruff-0.14.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/python/.venv-whl-cache/ruff-0.14.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..643efd4 --- /dev/null +++ b/python/.venv-whl-cache/ruff-0.14.3-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e2f8a0bbcffcfd895df39c9a4ecd59bb80dca03dc43f7fb63e647ed176b741e +size 13315293 diff --git a/python/.venv-whl-cache/setuptools-80.9.0-py3-none-any.whl b/python/.venv-whl-cache/setuptools-80.9.0-py3-none-any.whl new file mode 100644 index 0000000..0a1f7e8 --- /dev/null +++ b/python/.venv-whl-cache/setuptools-80.9.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:062d34222ad13e0cc312a4c02d73f059e86a4acbfbdea8f8f76b28c99f306922 +size 1201486 diff --git a/python/.venv-whl-cache/shellingham-1.5.4-py2.py3-none-any.whl b/python/.venv-whl-cache/shellingham-1.5.4-py2.py3-none-any.whl new file mode 100644 index 0000000..bd44065 --- /dev/null +++ b/python/.venv-whl-cache/shellingham-1.5.4-py2.py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7ecfff8f2fd72616f7481040475a65b2bf8af90a56c89140852d1120324e8686 +size 9755 diff --git a/python/.venv-whl-cache/sniffio-1.3.1-py3-none-any.whl b/python/.venv-whl-cache/sniffio-1.3.1-py3-none-any.whl new file mode 100644 index 0000000..721b009 --- /dev/null +++ b/python/.venv-whl-cache/sniffio-1.3.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2 +size 10235 diff --git a/python/.venv-whl-cache/sqlparse-0.5.3-py3-none-any.whl b/python/.venv-whl-cache/sqlparse-0.5.3-py3-none-any.whl new file mode 100644 index 0000000..18cf3af --- /dev/null +++ b/python/.venv-whl-cache/sqlparse-0.5.3-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cf2196ed3418f3ba5de6af7e82c694a9fbdbfecccdfc72e281548517081f16ca +size 44415 diff --git a/python/.venv-whl-cache/starlette-0.47.3-py3-none-any.whl b/python/.venv-whl-cache/starlette-0.47.3-py3-none-any.whl new file mode 100644 index 0000000..99b5e47 --- /dev/null +++ b/python/.venv-whl-cache/starlette-0.47.3-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89c0778ca62a76b826101e7c709e70680a1699ca7da6b44d38eb0a7e61fe4b51 +size 72991 diff --git a/python/.venv-whl-cache/toml_cli-0.8.2-py3-none-any.whl b/python/.venv-whl-cache/toml_cli-0.8.2-py3-none-any.whl new file mode 100644 index 0000000..b054341 --- /dev/null +++ b/python/.venv-whl-cache/toml_cli-0.8.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7af4679ca04c53ad0f6d300dab26f45a78fedf88e8310305bfe0a8ead37fd000 +size 7432 diff --git a/python/.venv-whl-cache/tomli-2.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl b/python/.venv-whl-cache/tomli-2.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl new file mode 100644 index 0000000..58dec54 --- /dev/null +++ b/python/.venv-whl-cache/tomli-2.3.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4021923f97266babc6ccab9f5068642a0095faa0a51a246a6a02fccbb3514eaf +size 248586 diff --git a/python/.venv-whl-cache/tomlkit-0.13.3-py3-none-any.whl b/python/.venv-whl-cache/tomlkit-0.13.3-py3-none-any.whl new file mode 100644 index 0000000..e49be75 --- /dev/null +++ b/python/.venv-whl-cache/tomlkit-0.13.3-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c89c649d79ee40629a9fda55f8ace8c6a1b42deb912b2a8fd8d942ddadb606b0 +size 38901 diff --git a/python/.venv-whl-cache/tomlkit-0.14.0-py3-none-any.whl b/python/.venv-whl-cache/tomlkit-0.14.0-py3-none-any.whl new file mode 100644 index 0000000..26243ef --- /dev/null +++ b/python/.venv-whl-cache/tomlkit-0.14.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:592064ed85b40fa213469f81ac584f67a4f2992509a7c3ea2d632208623a3680 +size 39310 diff --git a/python/.venv-whl-cache/tomlq-0.1.0-py2.py3-none-any.whl b/python/.venv-whl-cache/tomlq-0.1.0-py2.py3-none-any.whl new file mode 100644 index 0000000..a2fb993 --- /dev/null +++ b/python/.venv-whl-cache/tomlq-0.1.0-py2.py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4b966fd999ed2bf69081b7c7f5caadbc4c9542d0ed5fcf2e9b7b4d8d7ada3c82 +size 3446 diff --git a/python/.venv-whl-cache/typer-0.24.1-py3-none-any.whl b/python/.venv-whl-cache/typer-0.24.1-py3-none-any.whl new file mode 100644 index 0000000..923d38d --- /dev/null +++ b/python/.venv-whl-cache/typer-0.24.1-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:112c1f0ce578bfb4cab9ffdabc68f031416ebcc216536611ba21f04e9aa84c9e +size 56085 diff --git a/python/.venv-whl-cache/types_pyyaml-6.0.12.20250822-py3-none-any.whl b/python/.venv-whl-cache/types_pyyaml-6.0.12.20250822-py3-none-any.whl new file mode 100644 index 0000000..335766e --- /dev/null +++ b/python/.venv-whl-cache/types_pyyaml-6.0.12.20250822-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1fe1a5e146aa315483592d292b72a172b65b946a6d98aa6ddd8e4aa838ab7098 +size 20314 diff --git a/python/.venv-whl-cache/typing_extensions-4.15.0-py3-none-any.whl b/python/.venv-whl-cache/typing_extensions-4.15.0-py3-none-any.whl new file mode 100644 index 0000000..19c74d0 --- /dev/null +++ b/python/.venv-whl-cache/typing_extensions-4.15.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0fa19c6845758ab08074a0cfa8b7aecb71c999ca73d62883bc25cc018c4e548 +size 44614 diff --git a/python/.venv-whl-cache/typing_inspection-0.4.2-py3-none-any.whl b/python/.venv-whl-cache/typing_inspection-0.4.2-py3-none-any.whl new file mode 100644 index 0000000..c4071f4 --- /dev/null +++ b/python/.venv-whl-cache/typing_inspection-0.4.2-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4ed1cacbdc298c220f1bd249ed5287caa16f34d44ef4e9c3d0cbad5b521545e7 +size 14611 diff --git a/python/.venv-whl-cache/uv-0.9.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl b/python/.venv-whl-cache/uv-0.9.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl new file mode 100644 index 0000000..d12cb2a --- /dev/null +++ b/python/.venv-whl-cache/uv-0.9.7-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8cf6bc2482d1293cc630f66b862b494c09acda9b7faff7307ef52667a2b3ad49 +size 21382006 diff --git a/python/.venv-whl-cache/uvicorn-0.35.0-py3-none-any.whl b/python/.venv-whl-cache/uvicorn-0.35.0-py3-none-any.whl new file mode 100644 index 0000000..1e2dbf2 --- /dev/null +++ b/python/.venv-whl-cache/uvicorn-0.35.0-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:197535216b25ff9b785e29a0b79199f55222193d47f820816e7da751e9bc8d4a +size 66406 diff --git a/python/.venv-whl-cache/xmltodict-0.14.2-py2.py3-none-any.whl b/python/.venv-whl-cache/xmltodict-0.14.2-py2.py3-none-any.whl new file mode 100644 index 0000000..3e51056 --- /dev/null +++ b/python/.venv-whl-cache/xmltodict-0.14.2-py2.py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:20cc7d723ed729276e808f26fb6b3599f786cbc37e06c65e192ba77c40f20aac +size 9981 diff --git a/python/.venv-whl-cache/yq-3.4.3-py3-none-any.whl b/python/.venv-whl-cache/yq-3.4.3-py3-none-any.whl new file mode 100644 index 0000000..a862319 --- /dev/null +++ b/python/.venv-whl-cache/yq-3.4.3-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:547e34bc3caacce83665fd3429bf7c85f8e8b6b9aaee3f953db1ad716ff3434d +size 18812 diff --git a/python/_m.py b/python/_m.py index 7f327ab..879fa45 100644 --- a/python/_m.py +++ b/python/_m.py @@ -53,10 +53,7 @@ def js(argv: list[str]) -> int: '--project-directory', Settings.settings().project_root, '-f', - Settings.settings().project_root - / 'docker' - / 'js' - / 'docker-compose.yml', + Settings.settings().project_root / 'docker' / 'js' / 'docker-compose.yml', *argv, ] ) diff --git a/python/cli.py b/python/cli.py index 567e3ac..794ad80 100644 --- a/python/cli.py +++ b/python/cli.py @@ -37,6 +37,7 @@ class Command(enum.Enum): deploy_wheel = 'deploy:wheel' tests = 'tests' meson_setup = 'meson:setup' + meson_install_list = 'meson:install:list' module_switch = 'module:switch' pyrefly = 'pyrefly' @@ -58,12 +59,7 @@ class CLI(_cli.CLI): self._projects: dict[str, _cli.Project] = { 'online.fxreader.pr34': _cli.Project( source_dir=self.settings.base_dir / 'python', - build_dir=self.settings.base_dir - / 'tmp' - / 'online' - / 'fxreader' - / 'pr34' - / 'build', + build_dir=self.settings.base_dir / 'tmp' / 'online' / 'fxreader' / 'pr34' / 'build', dest_dir=self.settings.base_dir / 'tmp' / 'online' @@ -73,10 +69,37 @@ class CLI(_cli.CLI): meson_path=self.settings.base_dir / 'python' / 'meson.build', ), 'online.fxreader.pr34.commands_typed.archlinux': _cli.Project( - source_dir=self.settings.base_dir / 'meson' / 'online' / 'fxreader' / 'pr34' / 'commands_typed' / 'archlinux', - build_dir=self.settings.base_dir / 'tmp' / 'online' / 'fxreader' / 'pr34' / 'commands_typed' / 'archlinux' / 'build', - dest_dir=self.settings.base_dir / 'tmp' / 'online' / 'fxreader' / 'pr34' / 'commands_typed' / 'archlinux' / 'install', - meson_path=self.settings.base_dir / 'meson' / 'online' / 'fxreader' / 'pr34' / 'commands_typed' / 'archlinux' / 'meson.build', + source_dir=self.settings.base_dir + / 'meson' + / 'online' + / 'fxreader' + / 'pr34' + / 'commands_typed' + / 'archlinux', + build_dir=self.settings.base_dir + / 'tmp' + / 'online' + / 'fxreader' + / 'pr34' + / 'commands_typed' + / 'archlinux' + / 'build', + dest_dir=self.settings.base_dir + / 'tmp' + / 'online' + / 'fxreader' + / 'pr34' + / 'commands_typed' + / 'archlinux' + / 'install', + meson_path=self.settings.base_dir + / 'meson' + / 'online' + / 'fxreader' + / 'pr34' + / 'commands_typed' + / 'archlinux' + / 'meson.build', ), } @@ -135,9 +158,7 @@ class CLI(_cli.CLI): parser = argparse.ArgumentParser() parser.add_argument('command', choices=[o.value for o in Command]) - parser.add_argument( - '-p', '--project', choices=[o for o in self.projects] - ) + parser.add_argument('-p', '--project', choices=[o for o in self.projects]) parser.add_argument( '-o', '--output_dir', @@ -203,6 +224,13 @@ class CLI(_cli.CLI): argv=args, force=options.force, ) + elif options.command is Command.meson_install_list: + assert not options.project is None + + self.meson_install_list( + project_name=options.project, + argv=args, + ) elif options.command is Command.mypy: self.mypy( argv=args, diff --git a/python/m.py b/python/m.py index 502200f..85d28dd 100755 --- a/python/m.py +++ b/python/m.py @@ -86,9 +86,7 @@ class PyProject: third_party_roots: list[ThirdPartyRoot] = dataclasses.field( default_factory=lambda: [], ) - requirements: dict[str, pathlib.Path] = dataclasses.field( - default_factory=lambda: dict() - ) + requirements: dict[str, pathlib.Path] = dataclasses.field(default_factory=lambda: dict()) modules: list[Module] = dataclasses.field( default_factory=lambda: [], @@ -276,9 +274,7 @@ def pyproject_load( res.early_features = pr34_tool['early_features'] if 'pip_find_links' in pr34_tool: - res.pip_find_links = [ - d.parent / pathlib.Path(o) for o in pr34_tool['pip_find_links'] - ] + res.pip_find_links = [d.parent / pathlib.Path(o) for o in pr34_tool['pip_find_links']] if 'runtime_libdirs' in pr34_tool: res.runtime_libdirs = [ @@ -297,9 +293,7 @@ def pyproject_load( if 'third_party_roots' in pr34_tool: for o in check_list(pr34_tool['third_party_roots']): o2 = check_dict(o, str, str) - assert all( - [k in {'package', 'module_root', 'path'} for k in o2] - ) + assert all([k in {'package', 'module_root', 'path'} for k in o2]) res.third_party_roots.append( PyProject.ThirdPartyRoot( @@ -313,9 +307,7 @@ def pyproject_load( res.requirements = { k: d.parent / pathlib.Path(v) # pathlib.Path(o) - for k, v in check_dict( - pr34_tool['requirements'], str, str - ).items() + for k, v in check_dict(pr34_tool['requirements'], str, str).items() } if 'modules' in pr34_tool: @@ -382,9 +374,7 @@ class BootstrapSettings: ).strip() ) pip_check_conflicts: Optional[bool] = dataclasses.field( - default_factory=lambda: os.environ.get( - 'PIP_CHECK_CONFLICTS', json.dumps(True) - ) + default_factory=lambda: os.environ.get('PIP_CHECK_CONFLICTS', json.dumps(True)) in [json.dumps(True)], ) uv_cache_dir: str = dataclasses.field( @@ -399,9 +389,18 @@ class BootstrapSettings: '--no-index -U', ).split(), ) - whl_cache_update: Optional[bool] = dataclasses.field(default_factory=lambda: os.environ.get('WHL_CACHE_UPDATE', json.dumps(False)) in [json.dumps(True)]) - uv_compile_allow_index: bool = dataclasses.field(default_factory=lambda: os.environ.get('UV_COMPILE_ALLOW_INDEX', json.dumps(False)) in [json.dumps(True)]) - venv_partial: bool = dataclasses.field(default_factory=lambda: os.environ.get('VENV_PARTIAL', json.dumps(False)) in [json.dumps(True)]) + whl_cache_update: Optional[bool] = dataclasses.field( + default_factory=lambda: os.environ.get('WHL_CACHE_UPDATE', json.dumps(False)) + in [json.dumps(True)] + ) + uv_compile_allow_index: bool = dataclasses.field( + default_factory=lambda: os.environ.get('UV_COMPILE_ALLOW_INDEX', json.dumps(False)) + in [json.dumps(True)] + ) + venv_partial: bool = dataclasses.field( + default_factory=lambda: os.environ.get('VENV_PARTIAL', json.dumps(False)) + in [json.dumps(True)] + ) @classmethod def get( @@ -459,9 +458,7 @@ def requirements_name_get( else: requirements_path = source_dir / 'requirements.txt' - requirements_path_in = requirements_path.parent / ( - requirements_path.stem + '.in' - ) + requirements_path_in = requirements_path.parent / (requirements_path.stem + '.in') requirements_in: list[str] = [] @@ -542,7 +539,9 @@ def whl_cache_download( logger.info(dict(msg='downloading missing wheels', count=len(missing_reqs), pkgs=missing_reqs)) - with tempfile.NamedTemporaryFile(mode='w', prefix='requirements_missing_', suffix='.txt', delete=False) as f: + with tempfile.NamedTemporaryFile( + mode='w', prefix='requirements_missing_', suffix='.txt', delete=False + ) as f: f.write('\n'.join(missing_reqs)) f.flush() missing_req_path = f.name @@ -576,7 +575,9 @@ def check_host_prerequisites() -> None: stderr=subprocess.DEVNULL, ) except (subprocess.CalledProcessError, FileNotFoundError): - logger.error('[bootstrap] %s -m %s is not available on the host system' % (sys.executable, mod)) + logger.error( + '[bootstrap] %s -m %s is not available on the host system' % (sys.executable, mod) + ) sys.exit(1) @@ -617,9 +618,7 @@ def env_bootstrap( requirements_in: list[str] = [] - requirements_in.extend( - ['uv', 'pip', 'build', 'setuptools', 'meson-python', 'pybind11'] - ) + requirements_in.extend(['uv', 'pip', 'build', 'setuptools', 'meson-python', 'pybind11']) if pyproject.early_features: early_dependencies = sum( @@ -671,7 +670,9 @@ def env_bootstrap( constraint_args: list[str] = [] if bootstrap_settings.venv_partial and requirements_path.exists(): - logger.info('[bootstrap] VENV_PARTIAL: recompiling with existing requirements.txt as constraints') + logger.info( + '[bootstrap] VENV_PARTIAL: recompiling with existing requirements.txt as constraints' + ) needs_compile = True constraint_args = ['-c', str(requirements_path)] @@ -699,7 +700,9 @@ def env_bootstrap( uv_compile_args = bootstrap_settings.uv_args if bootstrap_settings.uv_compile_allow_index: - uv_compile_args = [o for o in uv_compile_args if o not in ('--no-index', '-U', '--upgrade')] + uv_compile_args = [ + o for o in uv_compile_args if o not in ('--no-index', '-U', '--upgrade') + ] if len(constraint_args) > 0: uv_compile_args = [o for o in uv_compile_args if o not in ('-U', '--upgrade')] @@ -749,7 +752,11 @@ def env_bootstrap( 'uv', '--cache-dir', bootstrap_settings.uv_cache_dir, - *[o for o in bootstrap_settings.uv_args if o not in ['-U', '--upgrade', '--no-index']], + *[ + o + for o in bootstrap_settings.uv_args + if o not in ['-U', '--upgrade', '--no-index'] + ], 'venv', *venv_python_version, *cache_find_links_args, diff --git a/python/meson.build b/python/meson.build index 8a819c2..c2dad09 100644 --- a/python/meson.build +++ b/python/meson.build @@ -5,7 +5,10 @@ project( ).stdout().strip('\n'), # 'online.fxreader.uv', # ['c', 'cpp'], - version: '0.1.5.65', + version: run_command( + '.venv/bin/toml', 'get', '--toml-path', 'pyproject.toml', 'project.version', + check: true + ).stdout().strip('\n'), # default_options: [ # 'cpp_std=c++23', # # 'prefer_static=true', @@ -80,8 +83,8 @@ if mode == 'pyproject' ) # install_subdir( - project_root / '..' / 'meson', - install_dir : module_root, + project_root / '..' / 'meson' / 'toolchains', + install_dir : module_root / 'meson', strip_directory: false, # install_tag: 'devel', install_tag: 'devel', diff --git a/python/online/fxreader/pr34/commands.py b/python/online/fxreader/pr34/commands.py index 6e20f27..ac5b1c0 100644 --- a/python/online/fxreader/pr34/commands.py +++ b/python/online/fxreader/pr34/commands.py @@ -60,10 +60,7 @@ def custom_notify( if sys.platform == 'darwin': osascript_translate = functools.partial( custom_translate, - check=lambda a, b: not re.compile( - r'^[a-zA-Z0-9\<\>\/\(\)\s\.\,\:]*$' - ).match(b) - is None, + check=lambda a, b: not re.compile(r'^[a-zA-Z0-9\<\>\/\(\)\s\.\,\:]*$').match(b) is None, ) subprocess.check_call( @@ -78,9 +75,7 @@ def custom_notify( ] ) else: - subprocess.check_call( - ['notify-send', '-t', '%d' % timeout2, title, msg[-128:]] - ) + subprocess.check_call(['notify-send', '-t', '%d' % timeout2, title, msg[-128:]]) class intercept_output_t: @@ -137,8 +132,7 @@ def intercept_output( while not (not current_subprocess.poll() is None and not last_data is None): if ( not timeout is None - and (datetime.datetime.now() - start_timestamp).total_seconds() - > timeout + and (datetime.datetime.now() - start_timestamp).total_seconds() > timeout ): break @@ -209,9 +203,7 @@ def player_metadata() -> Optional[str]: for k in range(20): try: metadata = { - k: subprocess.check_output(['playerctl', 'metadata', k]) - .decode('utf-8') - .strip() + k: subprocess.check_output(['playerctl', 'metadata', k]).decode('utf-8').strip() for k in ['artist', 'title'] } return '%s - %s' % (metadata['artist'], metadata['title']) @@ -233,9 +225,7 @@ def memory_stats() -> memory_stats_t.res_t: with io.BytesIO(subprocess.check_output('free', shell=True)) as f: t1 = f.read().decode('utf-8').splitlines() mem_total = int(t1[1].strip().split()[1]) - mem_used = int(t1[1].strip().split()[2]) + int( - t1[1].strip().split()[4] - ) + mem_used = int(t1[1].strip().split()[2]) + int(t1[1].strip().split()[4]) return dict( mem_total=mem_total, @@ -257,9 +247,7 @@ def memory_stats() -> memory_stats_t.res_t: t1 = subprocess.check_output('vm_stat').decode('utf-8') t2 = [o.split(':') for o in t1.splitlines() if ':' in o] t3 = { - o[0].replace(' ', '_').replace('-', '_').lower(): int( - o[1].strip().rstrip('.') - ) + o[0].replace(' ', '_').replace('-', '_').lower(): int(o[1].strip().rstrip('.')) for o in t2 if len(o) == 2 and len(o[0]) > 0 @@ -400,9 +388,7 @@ def eternal_oom(argv: list[str]) -> None: p = config[app] try: - t1 = subprocess.check_output( - ['pgrep', '-a', '-f', p[0]] - ).decode('utf-8') + t1 = subprocess.check_output(['pgrep', '-a', '-f', p[0]]).decode('utf-8') except Exception: continue t2 = t1.splitlines() @@ -519,8 +505,7 @@ def eternal_oom(argv: list[str]) -> None: columns: dict[str, list[Any]] merged_data_frame: MergedDataFrame = dict( - header=[column + '_x' for column in left] - + [column + '_y' for column in right], + header=[column + '_x' for column in left] + [column + '_y' for column in right], columns={}, ) @@ -528,9 +513,7 @@ def eternal_oom(argv: list[str]) -> None: merged_data_frame['columns'][column] = [] common_values: set[Any] = { - left_value - for left_value in index['left'] - if left_value in index['right'] + left_value for left_value in index['left'] if left_value in index['right'] } class RowMatch(TypedDict): @@ -554,9 +537,7 @@ def eternal_oom(argv: list[str]) -> None: values[ common_row[ cast( - Literal[ - 'left_row_index' | 'right_row_index' - ], + Literal['left_row_index' | 'right_row_index'], 'left_row_index' if index_name == 'left' else 'right_row_index' @@ -590,8 +571,7 @@ def eternal_oom(argv: list[str]) -> None: )[::-1] ] return { - column: [values[row_index] for row_index in t1] - for column, values in data_frame.items() + column: [values[row_index] for row_index in t1] for column, values in data_frame.items() } def pandas_filter_values(data_frame, condition): @@ -603,22 +583,14 @@ def eternal_oom(argv: list[str]) -> None: t1 = [ row_index for row_index in range(shape[1]) - if condition( - { - column: values[row_index] - for column, values in data_frame.items() - } - ) + if condition({column: values[row_index] for column, values in data_frame.items()}) ] return { - column: [values[row_index] for row_index in t1] - for column, values in data_frame.items() + column: [values[row_index] for row_index in t1] for column, values in data_frame.items() } def pandas_row(data_frame, row_index): - return { - column: values[row_index] for column, values in data_frame.items() - } + return {column: values[row_index] for column, values in data_frame.items()} def pandas_shape(data_frame): columns_count = len(data_frame) @@ -645,9 +617,7 @@ def eternal_oom(argv: list[str]) -> None: def oom_get_processes( extra_filter=None, ): - with io.BytesIO( - subprocess.check_output('ps -e -o pid,rss,user,%cpu', shell=True) - ) as f: + with io.BytesIO(subprocess.check_output('ps -e -o pid,rss,user,%cpu', shell=True)) as f: t1 = pandas_data_frame( f.read().decode('utf-8').splitlines(), ps_regex(4), @@ -661,11 +631,7 @@ def eternal_oom(argv: list[str]) -> None: del t1['%CPU'] assert set(t1.keys()) == set(['PID', 'RSS', 'USER', 'CPU']) - t5 = ( - subprocess.check_output('ps -e -o pid,args', shell=True) - .decode('utf-8') - .splitlines() - ) + t5 = subprocess.check_output('ps -e -o pid,args', shell=True).decode('utf-8').splitlines() t6 = pandas_data_frame( t5, r'^\s*(\d+)\s(.*)$', @@ -772,9 +738,7 @@ def eternal_oom(argv: list[str]) -> None: if t11['total_cpu'] > options.cpu_limit: oom_display_rows(t11['by_cpu']) - free_before_oom = ( - options.memory_limit - current_memory_stats['mem_used'] - ) + free_before_oom = options.memory_limit - current_memory_stats['mem_used'] print( 'available %5.2f %% out of %5.2f %% of cpu limit before OOC' @@ -826,10 +790,7 @@ def eternal_oom(argv: list[str]) -> None: if last_cpu_high is None: last_cpu_high = datetime.datetime.now().timestamp() - if ( - datetime.datetime.now().timestamp() - last_cpu_high - > options.cpu_wait - ): + if datetime.datetime.now().timestamp() - last_cpu_high > options.cpu_wait: last_cpu_high = None del last_total_cpu[:] return True @@ -852,8 +813,7 @@ def eternal_oom(argv: list[str]) -> None: mem_used = mem_stat['mem_used'] if options.memory_limit < mem_stat['mem_total'] and not oom_mem_high( - mem_stat['mem_total'] - - (mem_stat['mem_total'] - options.memory_limit) / 2 + mem_stat['mem_total'] - (mem_stat['mem_total'] - options.memory_limit) / 2 ): extra_filters = lambda row: ( 'chrome' in row['COMMAND_y'] @@ -901,9 +861,7 @@ def eternal_oom(argv: list[str]) -> None: def resilient_vlc(stream=None): if stream is None: - streams_path = os.path.join( - os.environ['CACHE_PATH'], 'resilient-vlc-streams.json' - ) + streams_path = os.path.join(os.environ['CACHE_PATH'], 'resilient-vlc-streams.json') if os.path.exists(streams_path): with io.open(streams_path, 'r') as f: @@ -944,9 +902,7 @@ def resilient_vlc(stream=None): 'main interface error', ] ] - ) and any( - [o in t1 for o in ['pulse audio output debug: underflow']] - ): + ) and any([o in t1 for o in ['pulse audio output debug: underflow']]): print('shit') p.kill() while True: @@ -1024,12 +980,7 @@ def eternal_firefox( ) as p: try: if debug: - assert ( - subprocess.check_call( - ['notify-send', '%s:Starting' % group_name] - ) - == 0 - ) + assert subprocess.check_call(['notify-send', '%s:Starting' % group_name]) == 0 # t3 = '' for k in range(300): @@ -1114,18 +1065,10 @@ def eternal_firefox( reposition() if debug: - assert ( - subprocess.check_call( - ['notify-send', '%s:Started' % group_name] - ) - == 0 - ) + assert subprocess.check_call(['notify-send', '%s:Started' % group_name]) == 0 start = datetime.datetime.now() - is_to_restart = ( - lambda: (datetime.datetime.now() - start).total_seconds() - >= 900 * 4 - ) + is_to_restart = lambda: (datetime.datetime.now() - start).total_seconds() >= 900 * 4 polling_count = 0 while not is_to_restart(): @@ -1138,12 +1081,7 @@ def eternal_firefox( polling_count += 1 if debug: - assert ( - subprocess.check_call( - ['notify-send', '%s:Closing' % group_name] - ) - == 0 - ) + assert subprocess.check_call(['notify-send', '%s:Closing' % group_name]) == 0 # assert os.system('wmctrl -i -c %s' % t2) == 0 assert ( @@ -1179,12 +1117,7 @@ def eternal_firefox( pprint.pprint([p.pid, '20 seconds timeout', 'kill']) p.kill() if debug: - assert ( - subprocess.check_call( - ['notify-send', '%s:Closed' % group_name] - ) - == 0 - ) + assert subprocess.check_call(['notify-send', '%s:Closed' % group_name]) == 0 def resilient_ethernet(ip_addr, ethernet_device): @@ -1199,9 +1132,7 @@ do ping -c 3 -w 3 -W 1 {{IP_ADDR}} || (\ ); \ sleep 10; clear; date; \ done' - """.replace('{{IP_ADDR}}', ip_addr).replace( - '{{ETHERNET_DEVICE}}}', ethernet_device - ), + """.replace('{{IP_ADDR}}', ip_addr).replace('{{ETHERNET_DEVICE}}}', ethernet_device), shell=True, ) @@ -1289,10 +1220,7 @@ def http_server(argv): # options.host # ]) assert options.host in sum( - [ - [o2.local for o2 in o.addr_info] - for o in commands_os.interfaces_index() - ], + [[o2.local for o2 in o.addr_info] for o in commands_os.interfaces_index()], [], ) except Exception: @@ -1342,9 +1270,7 @@ def http_server(argv): ] ) - location_section = ( - 'location / {deny all;}location /%s/ {alias %s/;%s%s}' - ) % ( + location_section = ('location / {deny all;}location /%s/ {alias %s/;%s%s}') % ( path, APP_DIR, '\n'.join(['add_header %s;' % o for o in options.response_headers]), @@ -1553,8 +1479,7 @@ def pass_ssh_osx(argv): assert len(t1) > 0 print( - 'select on of pass names\n%s' - % '\n'.join(['%d: %s' % (k, v) for k, v in enumerate(t1)]) + 'select on of pass names\n%s' % '\n'.join(['%d: %s' % (k, v) for k, v in enumerate(t1)]) ) while True: @@ -1619,9 +1544,7 @@ def pass_ssh_osx(argv): p.wait(1) assert p.poll() == 0 - with subprocess.Popen( - ssh_command, stdout=subprocess.PIPE, stderr=subprocess.PIPE - ) as p: + with subprocess.Popen(ssh_command, stdout=subprocess.PIPE, stderr=subprocess.PIPE) as p: password = None last_chunk = None @@ -1741,9 +1664,7 @@ def vpn(argv: list[str]) -> None: python_path: list[str] if (pathlib.Path(__file__).parent / 'env3').exists(): - python_path = [ - str(pathlib.Path(__file__).parent / 'env3' / 'bin' / 'python3') - ] + python_path = [str(pathlib.Path(__file__).parent / 'env3' / 'bin' / 'python3')] elif (pathlib.Path(__file__).parent.parent.parent.parent / 'm').exists(): python_path = [ str(pathlib.Path(__file__).parent.parent.parent.parent / 'm'), @@ -1874,9 +1795,7 @@ def pm_service(argv): wu = 0 while True: - subprocess.check_call( - ['osascript', '-e', 'tell application "Finder" to sleep'] - ) + subprocess.check_call(['osascript', '-e', 'tell application "Finder" to sleep']) subprocess.check_call( ['pmset', 'sleepnow'], stdout=subprocess.DEVNULL, @@ -1921,10 +1840,7 @@ def pm_service(argv): or 'PMRD: kIOMessageSystemWillPowerOn' in cmd ): if ( - ( - 'AppleMultitouchDevice' in cmd - and 'tp' in options.events - ) + ('AppleMultitouchDevice' in cmd and 'tp' in options.events) or ('AppleACPIButton' in cmd and 'pb' in options.events) or ('eventType:29' in cmd and 'kb' in options.events) ): @@ -1945,8 +1861,7 @@ def pm_service(argv): ) else: print( - '\r%s wu : %d, la : %s' - % (datetime.datetime.now().isoformat(), wu, action), + '\r%s wu : %d, la : %s' % (datetime.datetime.now().isoformat(), wu, action), end='', ) @@ -2067,9 +1982,7 @@ def scrap_yt_music(argv: list[str]) -> None: break if p is None and not current_name is None: - output_name = os.path.join( - options.library_path, '%s.mp3' % current_name - ) + output_name = os.path.join(options.library_path, '%s.mp3' % current_name) logging.info('audio_record, new recording') p = subprocess.Popen( ['sox', '-d', output_name], @@ -2107,9 +2020,7 @@ def scrap_yt_music(argv: list[str]) -> None: target=functools.partial( http_events, context=context, - res_cb=lambda *args, **kwargs: context['http_on_event']( - *args, **kwargs - ), + res_cb=lambda *args, **kwargs: context['http_on_event'](*args, **kwargs), ) ), threading.Thread( @@ -2124,9 +2035,7 @@ def scrap_yt_music(argv: list[str]) -> None: def http_on_event(event, events): with context['track_cv']: if 'title' in event and event['title'].strip() != '': - context['track_name'] = str(event['title'])[:128].replace( - '\n', '' - ) + context['track_name'] = str(event['title'])[:128].replace('\n', '') else: context['track_name'] = None @@ -2374,8 +2283,7 @@ class Battery: else: pass print( - '\r%s % 5.2f%% %s' - % (datetime.datetime.now().isoformat(), t3, str(t5)), + '\r%s % 5.2f%% %s' % (datetime.datetime.now().isoformat(), t3, str(t5)), end='', ) except Exception: @@ -2462,9 +2370,7 @@ def desktop_services(argv): t2 = [] try: - t1 = subprocess.check_output( - ['swaymsg', '-t', 'get_tree'] - ).decode('utf-8') + t1 = subprocess.check_output(['swaymsg', '-t', 'get_tree']).decode('utf-8') t2 = json.loads(t1) except Exception: logging.error(traceback.format_exc()) @@ -2539,9 +2445,7 @@ def desktop_services(argv): @classmethod def dpms_get(cls): try: - t1 = subprocess.check_output( - ['swaymsg', '-r', '-t', 'get_outputs'], timeout=1 - ) + t1 = subprocess.check_output(['swaymsg', '-r', '-t', 'get_outputs'], timeout=1) t2 = t1.decode('utf-8') t3 = json.loads(t2) t4 = [ @@ -2798,9 +2702,7 @@ def desktop_services(argv): ]: if os.path.exists('/sys/bus/platform/devices/applesmc.768'): return 'applesmc.768' - elif os.path.exists( - '/sys/devices/system/cpu/intel_pstate/no_turbo' - ): + elif os.path.exists('/sys/devices/system/cpu/intel_pstate/no_turbo'): return 'intel_pstate' elif os.path.exists('/sys/devices/system/cpu/amd_pstate'): return 'amd_pstate' @@ -3059,10 +2961,7 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost def skip_loop_long_ago(self): if ( self.last_skip_loop is None - or ( - datetime.datetime.now() - self.last_skip_loop - ).total_seconds() - >= 30 + or (datetime.datetime.now() - self.last_skip_loop).total_seconds() >= 30 ): self.last_skip_loop = datetime.datetime.now() return True @@ -3070,9 +2969,7 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost return False def background_check(self): - if ( - self.bg is None or not self.bg.poll() is None - ) and not self.bg_terminate: + if (self.bg is None or not self.bg.poll() is None) and not self.bg_terminate: if not options.background_image is None: self.bg = subprocess.Popen( [ @@ -3101,10 +2998,7 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost def force_idle(self): if ( self.last_force_idle is None - or ( - datetime.datetime.now() - self.last_force_idle - ).total_seconds() - >= 10 + or (datetime.datetime.now() - self.last_force_idle).total_seconds() >= 10 ): self.last_force_idle = datetime.datetime.now() return True @@ -3150,9 +3044,7 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost self.data.append(chunk) if b'\n' in chunk['data']: - total = b''.join([o['data'] for o in self.data]).decode( - 'utf-8' - ) + total = b''.join([o['data'] for o in self.data]).decode('utf-8') sep_pos = total.rfind('\n') lines = total[:sep_pos].splitlines() self.data = [ @@ -3191,10 +3083,7 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost while True: logging.info('retry i = %d, cnt = %d' % (i, cnt)) - if not ( - subprocess.call(['swaymsg', '-t', 'get_version']) - == 0 - ): + if not (subprocess.call(['swaymsg', '-t', 'get_version']) == 0): continue if cb() == 0: @@ -3204,11 +3093,7 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost i += 1 - if ( - len(new_events) > 0 - or len(self.events) > 0 - and self.skip_loop_long_ago() - ): + if len(new_events) > 0 or len(self.events) > 0 and self.skip_loop_long_ago(): self.events.extend(new_events) skip_loop = False @@ -3257,9 +3142,7 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost # subprocess.check_call(self.commands['lock'], shell=True) logging.info('started t1') if self.force_idle(): - subprocess.check_call( - self.commands['timeout1'], shell=True - ) + subprocess.check_call(self.commands['timeout1'], shell=True) logging.info('done t1') self.release_lock() elif o == 't2': @@ -3270,12 +3153,7 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost msg='loginctl lock started', ) while True: - if ( - not subprocess.call( - self.commands['lock'], shell=True - ) - == 0 - ): + if not subprocess.call(self.commands['lock'], shell=True) == 0: continue if ( not subprocess.call( @@ -3302,42 +3180,24 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost elif o == 't4': logging.info('started t4') if self.force_idle(): - subprocess.check_call( - self.commands['lock'], shell=True - ) - subprocess.call( - self.commands['timeout2'], shell=True - ) - subprocess.check_call( - self.commands['timeout1'], shell=True - ) + subprocess.check_call(self.commands['lock'], shell=True) + subprocess.call(self.commands['timeout2'], shell=True) + subprocess.check_call(self.commands['timeout1'], shell=True) logging.info('done t4') self.release_lock() elif o == 't5': logging.info('started timeout resume') if self.force_idle(): - subprocess.check_call( - self.commands['lock'], shell=True - ) + subprocess.check_call(self.commands['lock'], shell=True) retry( - lambda: subprocess.call( - self.commands['resume'], shell=True - ), + lambda: subprocess.call(self.commands['resume'], shell=True), ) logging.info('done timeout resume') elif o == 't6': logging.info('started before-sleep') if self.force_idle(): - ( - subprocess.call( - self.commands['timeout2'], shell=True - ), - ) - ( - subprocess.check_call( - self.commands['timeout1'], shell=True - ), - ) + (subprocess.call(self.commands['timeout2'], shell=True),) + (subprocess.check_call(self.commands['timeout1'], shell=True),) logging.info('done before-sleep') self.release_lock() elif o == 't7': @@ -3345,12 +3205,7 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost # if self.force_idle(): # subprocess.check_call(self.commands['lock'], shell=True) while True: - if ( - subprocess.call( - self.commands['resume'], shell=True - ) - == 0 - ): + if subprocess.call(self.commands['resume'], shell=True) == 0: break else: time.sleep(0.5) @@ -3376,13 +3231,7 @@ echo 1 | tee /sys/devices/system/cpu/cpu*/cpufreq/boost if options.polkit_service: services.extend( - [ - subprocess.Popen( - [ - '/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1' - ] - ) - ] + [subprocess.Popen(['/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1'])] ) services.extend( @@ -3573,9 +3422,7 @@ def gnome_shortcuts(argv: list[str]) -> None: [ 'gsettings', 'get', - ( - 'org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:%s' - ) + ('org.gnome.settings-daemon.plugins.media-keys.custom-keybinding:%s') % o, k, ] @@ -3776,18 +3623,10 @@ def share_wifi(argv): print('enter password:') - pw = subprocess.check_output('read -s PW; echo -n $PW', shell=True).decode( - 'utf-8' - ) + pw = subprocess.check_output('read -s PW; echo -n $PW', shell=True).decode('utf-8') if len(pw) == 0: - pw = ( - subprocess.check_output('pwgen -syn 20 1', shell=True) - .decode('utf-8') - .strip() - ) - with subprocess.Popen( - ['qrencode', '-t', 'UTF8'], stdin=subprocess.PIPE - ) as p: + pw = subprocess.check_output('pwgen -syn 20 1', shell=True).decode('utf-8').strip() + with subprocess.Popen(['qrencode', '-t', 'UTF8'], stdin=subprocess.PIPE) as p: p.stdin.write(pw.encode('utf-8')) p.stdin.flush() p.stdin.close() @@ -3854,9 +3693,7 @@ def share_wifi(argv): if shutdown: break - if ( - datetime.datetime.now() - last_timestamp - ).total_seconds() > options.restart_delay: + if (datetime.datetime.now() - last_timestamp).total_seconds() > options.restart_delay: restart = True last_timestamp = datetime.datetime.now() @@ -3975,14 +3812,8 @@ def media_keys(argv): if mode == 'mocp': raise NotImplementedError elif mode == 'playerctl': - pos = float( - subprocess.check_output(['playerctl', 'position']).decode( - 'utf-8' - ) - ) - subprocess.check_call( - ['playerctl', 'position', '%f' % (pos - float(args[0]))] - ) + pos = float(subprocess.check_output(['playerctl', 'position']).decode('utf-8')) + subprocess.check_call(['playerctl', 'position', '%f' % (pos - float(args[0]))]) # msg = player_metadata() else: raise NotImplementedError @@ -3990,14 +3821,8 @@ def media_keys(argv): if mode == 'mocp': raise NotImplementedError elif mode == 'playerctl': - pos = float( - subprocess.check_output(['playerctl', 'position']).decode( - 'utf-8' - ) - ) - subprocess.check_call( - ['playerctl', 'position', '%f' % (pos + float(args[0]))] - ) + pos = float(subprocess.check_output(['playerctl', 'position']).decode('utf-8')) + subprocess.check_call(['playerctl', 'position', '%f' % (pos + float(args[0]))]) # msg = player_metadata() else: raise NotImplementedError @@ -4011,13 +3836,9 @@ def media_keys(argv): else: raise NotImplementedError elif options.command == 'media-lower-volume': - subprocess.check_call( - ['pactl', 'set-sink-volume', '@DEFAULT_SINK@', '-5%'] - ) + subprocess.check_call(['pactl', 'set-sink-volume', '@DEFAULT_SINK@', '-5%']) msg = ( - subprocess.check_output( - ['pactl', 'get-sink-volume', '@DEFAULT_SINK@'] - ) + subprocess.check_output(['pactl', 'get-sink-volume', '@DEFAULT_SINK@']) .decode('utf-8') .strip() ) @@ -4031,20 +3852,14 @@ def media_keys(argv): ] ) msg = ( - subprocess.check_output( - ['pactl', 'get-sink-volume', '@DEFAULT_SINK@'] - ) + subprocess.check_output(['pactl', 'get-sink-volume', '@DEFAULT_SINK@']) .decode('utf-8') .strip() ) elif options.command == 'media-raise-volume': - subprocess.check_call( - ['pactl', 'set-sink-volume', '@DEFAULT_SINK@', '+5%'] - ) + subprocess.check_call(['pactl', 'set-sink-volume', '@DEFAULT_SINK@', '+5%']) msg = ( - subprocess.check_output( - ['pactl', 'get-sink-volume', '@DEFAULT_SINK@'] - ) + subprocess.check_output(['pactl', 'get-sink-volume', '@DEFAULT_SINK@']) .decode('utf-8') .strip() ) @@ -4120,9 +3935,7 @@ def install(argv: list[str]) -> None: final_target = options.target / relative_source - logger.info( - dict(final_target=final_target, relative_source=relative_source) - ) + logger.info(dict(final_target=final_target, relative_source=relative_source)) if final_target.exists(): if not options.overwrite: diff --git a/python/online/fxreader/pr34/commands_typed/cli.py b/python/online/fxreader/pr34/commands_typed/cli.py index a50c135..6257899 100644 --- a/python/online/fxreader/pr34/commands_typed/cli.py +++ b/python/online/fxreader/pr34/commands_typed/cli.py @@ -224,9 +224,7 @@ class CLI(abc.ABC): self.projects[project].source_dir / 'pyproject.toml' ) - dependencies = sum( - [pyproject.dependencies[o] for o in features], cast(list[str], []) - ) + dependencies = sum([pyproject.dependencies[o] for o in features], cast(list[str], [])) pip_find_links: list[pathlib.Path] = [] @@ -268,9 +266,7 @@ class CLI(abc.ABC): force: bool, ) -> None: for k, d in self.dependencies.items(): - whl_glob = self.dist_settings.wheel_dir / ( - '*%s*.whl' % d.name.replace('.', '_') - ) + whl_glob = self.dist_settings.wheel_dir / ('*%s*.whl' % d.name.replace('.', '_')) if len(glob.glob(str(whl_glob))) == 0 or force: if d.source_path.exists(): @@ -310,9 +306,7 @@ class CLI(abc.ABC): def index_get(o: dict[str, Any]) -> tuple[Any, ...]: return (o['path'], o['stat']) - present_files_index = { - index_get(o): o for o in present_files - } + present_files_index = {index_get(o): o for o in present_files} new_files: list[dict[str, Any]] = [] @@ -351,13 +345,7 @@ class CLI(abc.ABC): [ pathlib.Path(o) for o in glob.glob( - str( - self.dist_settings.env_path - / 'lib' - / 'python*' - / '**' - / 'pkgconfig' - ), + str(self.dist_settings.env_path / 'lib' / 'python*' / '**' / 'pkgconfig'), recursive=True, ) ] @@ -481,12 +469,7 @@ class CLI(abc.ABC): '-Csetup-args=%s' % ( '-Dthird_party_roots=%s' - % json.dumps( - [ - str(o.absolute()) - for o in self.third_party_roots(project_name) - ] - ) + % json.dumps([str(o.absolute()) for o in self.third_party_roots(project_name)]) ) ) @@ -523,14 +506,21 @@ class CLI(abc.ABC): from . import cli_bootstrap pyproject = cli_bootstrap.pyproject_load(project.source_dir / 'pyproject.toml') - whl_name_prefix = (pyproject.name or project_name).replace('.', '_').replace('-', '_') + whl_name_prefix = ( + (pyproject.name or project_name).replace('.', '_').replace('-', '_') + ) whl_name_prefix += '-' + pyproject.version if pyproject.version else '' - conflicting = [o for o in glob.glob(str(pathlib.Path(output_dir) / '*.whl')) if pathlib.Path(o).name.startswith(whl_name_prefix + '-')] + conflicting = [ + o + for o in glob.glob(str(pathlib.Path(output_dir) / '*.whl')) + if pathlib.Path(o).name.startswith(whl_name_prefix + '-') + ] if len(conflicting) > 0: raise FileExistsError( - 'wheel(s) already exist in %s: %s. Use --force-whl-overwrite to overwrite.' % (output_dir, [pathlib.Path(o).name for o in conflicting]) + 'wheel(s) already exist in %s: %s. Use --force-whl-overwrite to overwrite.' + % (output_dir, [pathlib.Path(o).name for o in conflicting]) ) logger.info(dict(env=env, cmd=cmd)) @@ -551,6 +541,44 @@ class CLI(abc.ABC): ] ) + def meson_install_list( + self, + project_name: str, + argv: Optional[list[str]] = None, + ) -> None: + from . import argparse as pr34_argparse + + project = self.projects[project_name] + + parser = argparse.ArgumentParser() + parser.add_argument( + '--mode', + choices=['meson', 'pyproject'], + default='meson', + ) + + options, rest = pr34_argparse.parse_args(parser, argv) + + cmd = [ + str(self.dist_settings.python_path), + '-m', + 'mesonbuild.mesonmain', + 'install', + '-C', + str(project.build_dir / options.mode), + '--destdir', + str(project.dest_dir), + '--dry-run', + *rest, + ] + + logger.info(dict(cmd=cmd)) + + subprocess.check_call( + cmd, + env=self.make_env(), + ) + def meson_install( self, project_name: str, @@ -574,21 +602,11 @@ class CLI(abc.ABC): preserve_top_path=True, ) - pyproject = cli_bootstrap.pyproject_load( - project.source_dir / 'pyproject.toml' - ) + pyproject = cli_bootstrap.pyproject_load(project.source_dir / 'pyproject.toml') - pyproject_tool = ( - pydantic.RootModel[PyProject.Tool] - .model_validate(pyproject.tool) - .root - ) + pyproject_tool = pydantic.RootModel[PyProject.Tool].model_validate(pyproject.tool).root - if ( - pyproject_tool.meson - and pyproject_tool.meson.args - and pyproject_tool.meson.args.install - ): + if pyproject_tool.meson and pyproject_tool.meson.args and pyproject_tool.meson.args.install: argv = pyproject_tool.meson.args.install + argv cmd = [ @@ -633,9 +651,7 @@ class CLI(abc.ABC): content = f.read() with io.open(o, 'w') as f: - f.write( - content.replace('prefix=/', 'prefix=${pcfiledir}/../../') - ) + f.write(content.replace('prefix=/', 'prefix=${pcfiledir}/../../')) def ninja( self, @@ -736,8 +752,8 @@ class CLI(abc.ABC): for third_party_root in pyproject.third_party_roots: if third_party_root.package: if not third_party_root.module_root: - third_party_root.module_root = ( - third_party_root.package.replace('.', os.path.sep) + third_party_root.module_root = third_party_root.package.replace( + '.', os.path.sep ) if not third_party_root.path: packages = pip_show([third_party_root.package]) @@ -771,9 +787,7 @@ class CLI(abc.ABC): def meson_toolchains( self, ) -> dict[str, meson_toolchains_t.res_t.toolchain_t]: - t1 = pathlib.Path( - importlib.import_module('online.fxreader.pr34').__path__[0] - ) + t1 = pathlib.Path(importlib.import_module('online.fxreader.pr34').__path__[0]) toolchains = glob.glob(str(t1 / 'meson' / 'toolchains' / '*')) res: dict[str, CLI.meson_toolchains_t.res_t.toolchain_t] = dict() @@ -798,11 +812,7 @@ class CLI(abc.ABC): ) -> list[str]: from . import argparse as pr34_argparse - if ( - pyproject_tool.meson - and pyproject_tool.meson.args - and pyproject_tool.meson.args.setup - ): + if pyproject_tool.meson and pyproject_tool.meson.args and pyproject_tool.meson.args.setup: extra_args = pyproject_tool.meson.args.setup + extra_args parser = argparse.ArgumentParser() @@ -821,9 +831,7 @@ class CLI(abc.ABC): not options.cross_file.is_absolute() and options.cross_file.stem in self.meson_toolchains ): - options.cross_file = self.meson_toolchains[ - options.cross_file.stem - ].path + options.cross_file = self.meson_toolchains[options.cross_file.stem].path extra_args = ['--cross-file', str(options.cross_file)] + args @@ -852,15 +860,9 @@ class CLI(abc.ABC): if env is None: env = dict() - pyproject = cli_bootstrap.pyproject_load( - project.source_dir / 'pyproject.toml' - ) + pyproject = cli_bootstrap.pyproject_load(project.source_dir / 'pyproject.toml') - pyproject_tool = ( - pydantic.RootModel[PyProject.Tool] - .model_validate(pyproject.tool) - .root - ) + pyproject_tool = pydantic.RootModel[PyProject.Tool].model_validate(pyproject.tool).root logger.info(dict(env=env)) @@ -884,12 +886,7 @@ class CLI(abc.ABC): if len(self.third_party_roots(project_name)) > 0: extra_args.append( '-Dthird_party_roots=%s' - % json.dumps( - [ - str(o.absolute()) - for o in self.third_party_roots(project_name) - ] - ) + % json.dumps([str(o.absolute()) for o in self.third_party_roots(project_name)]) ) cmd = [ @@ -955,9 +952,7 @@ class CLI(abc.ABC): argv, ) - pyproject = cli_bootstrap.pyproject_load( - project.source_dir / 'pyproject.toml' - ) + pyproject = cli_bootstrap.pyproject_load(project.source_dir / 'pyproject.toml') dependencies = sum( [pyproject.dependencies[o] for o in options.features], @@ -967,9 +962,7 @@ class CLI(abc.ABC): pip_find_links: list[pathlib.Path] = [] if not pyproject.pip_find_links is None: - pip_find_links.extend( - [o for o in pyproject.pip_find_links if o.exists()] - ) + pip_find_links.extend([o for o in pyproject.pip_find_links if o.exists()]) requirements_name_get_res = cli_bootstrap.requirements_name_get( source_dir=project.source_dir, @@ -1078,9 +1071,7 @@ class CLI(abc.ABC): assert options.module in [o.name for o in pyproject.modules] - modules: dict[str, cli_bootstrap.PyProject.Module] = { - o.name: o for o in pyproject.modules - } + modules: dict[str, cli_bootstrap.PyProject.Module] = {o.name: o for o in pyproject.modules} module = modules[options.module] diff --git a/python/online/fxreader/pr34/commands_typed/cli_bootstrap.py b/python/online/fxreader/pr34/commands_typed/cli_bootstrap.py index 755f3e6..576d29d 100644 --- a/python/online/fxreader/pr34/commands_typed/cli_bootstrap.py +++ b/python/online/fxreader/pr34/commands_typed/cli_bootstrap.py @@ -86,9 +86,7 @@ class PyProject: third_party_roots: list[ThirdPartyRoot] = dataclasses.field( default_factory=lambda: [], ) - requirements: dict[str, pathlib.Path] = dataclasses.field( - default_factory=lambda: dict() - ) + requirements: dict[str, pathlib.Path] = dataclasses.field(default_factory=lambda: dict()) modules: list[Module] = dataclasses.field( default_factory=lambda: [], @@ -276,9 +274,7 @@ def pyproject_load( res.early_features = pr34_tool['early_features'] if 'pip_find_links' in pr34_tool: - res.pip_find_links = [ - d.parent / pathlib.Path(o) for o in pr34_tool['pip_find_links'] - ] + res.pip_find_links = [d.parent / pathlib.Path(o) for o in pr34_tool['pip_find_links']] if 'runtime_libdirs' in pr34_tool: res.runtime_libdirs = [ @@ -297,9 +293,7 @@ def pyproject_load( if 'third_party_roots' in pr34_tool: for o in check_list(pr34_tool['third_party_roots']): o2 = check_dict(o, str, str) - assert all( - [k in {'package', 'module_root', 'path'} for k in o2] - ) + assert all([k in {'package', 'module_root', 'path'} for k in o2]) res.third_party_roots.append( PyProject.ThirdPartyRoot( @@ -313,9 +307,7 @@ def pyproject_load( res.requirements = { k: d.parent / pathlib.Path(v) # pathlib.Path(o) - for k, v in check_dict( - pr34_tool['requirements'], str, str - ).items() + for k, v in check_dict(pr34_tool['requirements'], str, str).items() } if 'modules' in pr34_tool: @@ -382,9 +374,7 @@ class BootstrapSettings: ).strip() ) pip_check_conflicts: Optional[bool] = dataclasses.field( - default_factory=lambda: os.environ.get( - 'PIP_CHECK_CONFLICTS', json.dumps(True) - ) + default_factory=lambda: os.environ.get('PIP_CHECK_CONFLICTS', json.dumps(True)) in [json.dumps(True)], ) uv_cache_dir: str = dataclasses.field( @@ -399,9 +389,18 @@ class BootstrapSettings: '--no-index -U', ).split(), ) - whl_cache_update: Optional[bool] = dataclasses.field(default_factory=lambda: os.environ.get('WHL_CACHE_UPDATE', json.dumps(False)) in [json.dumps(True)]) - uv_compile_allow_index: bool = dataclasses.field(default_factory=lambda: os.environ.get('UV_COMPILE_ALLOW_INDEX', json.dumps(False)) in [json.dumps(True)]) - venv_partial: bool = dataclasses.field(default_factory=lambda: os.environ.get('VENV_PARTIAL', json.dumps(False)) in [json.dumps(True)]) + whl_cache_update: Optional[bool] = dataclasses.field( + default_factory=lambda: os.environ.get('WHL_CACHE_UPDATE', json.dumps(False)) + in [json.dumps(True)] + ) + uv_compile_allow_index: bool = dataclasses.field( + default_factory=lambda: os.environ.get('UV_COMPILE_ALLOW_INDEX', json.dumps(False)) + in [json.dumps(True)] + ) + venv_partial: bool = dataclasses.field( + default_factory=lambda: os.environ.get('VENV_PARTIAL', json.dumps(False)) + in [json.dumps(True)] + ) @classmethod def get( @@ -459,9 +458,7 @@ def requirements_name_get( else: requirements_path = source_dir / 'requirements.txt' - requirements_path_in = requirements_path.parent / ( - requirements_path.stem + '.in' - ) + requirements_path_in = requirements_path.parent / (requirements_path.stem + '.in') requirements_in: list[str] = [] @@ -542,7 +539,9 @@ def whl_cache_download( logger.info(dict(msg='downloading missing wheels', count=len(missing_reqs), pkgs=missing_reqs)) - with tempfile.NamedTemporaryFile(mode='w', prefix='requirements_missing_', suffix='.txt', delete=False) as f: + with tempfile.NamedTemporaryFile( + mode='w', prefix='requirements_missing_', suffix='.txt', delete=False + ) as f: f.write('\n'.join(missing_reqs)) f.flush() missing_req_path = f.name @@ -576,7 +575,9 @@ def check_host_prerequisites() -> None: stderr=subprocess.DEVNULL, ) except (subprocess.CalledProcessError, FileNotFoundError): - logger.error('[bootstrap] %s -m %s is not available on the host system' % (sys.executable, mod)) + logger.error( + '[bootstrap] %s -m %s is not available on the host system' % (sys.executable, mod) + ) sys.exit(1) @@ -617,9 +618,7 @@ def env_bootstrap( requirements_in: list[str] = [] - requirements_in.extend( - ['uv', 'pip', 'build', 'setuptools', 'meson-python', 'pybind11'] - ) + requirements_in.extend(['uv', 'pip', 'build', 'setuptools', 'meson-python', 'pybind11']) if pyproject.early_features: early_dependencies = sum( @@ -671,7 +670,9 @@ def env_bootstrap( constraint_args: list[str] = [] if bootstrap_settings.venv_partial and requirements_path.exists(): - logger.info('[bootstrap] VENV_PARTIAL: recompiling with existing requirements.txt as constraints') + logger.info( + '[bootstrap] VENV_PARTIAL: recompiling with existing requirements.txt as constraints' + ) needs_compile = True constraint_args = ['-c', str(requirements_path)] @@ -699,7 +700,9 @@ def env_bootstrap( uv_compile_args = bootstrap_settings.uv_args if bootstrap_settings.uv_compile_allow_index: - uv_compile_args = [o for o in uv_compile_args if o not in ('--no-index', '-U', '--upgrade')] + uv_compile_args = [ + o for o in uv_compile_args if o not in ('--no-index', '-U', '--upgrade') + ] if len(constraint_args) > 0: uv_compile_args = [o for o in uv_compile_args if o not in ('-U', '--upgrade')] @@ -749,7 +752,11 @@ def env_bootstrap( 'uv', '--cache-dir', bootstrap_settings.uv_cache_dir, - *[o for o in bootstrap_settings.uv_args if o not in ['-U', '--upgrade', '--no-index']], + *[ + o + for o in bootstrap_settings.uv_args + if o not in ['-U', '--upgrade', '--no-index'] + ], 'venv', *venv_python_version, *cache_find_links_args, diff --git a/python/online/fxreader/pr34/commands_typed/crypto.py b/python/online/fxreader/pr34/commands_typed/crypto.py index aeac872..327d1cb 100644 --- a/python/online/fxreader/pr34/commands_typed/crypto.py +++ b/python/online/fxreader/pr34/commands_typed/crypto.py @@ -64,9 +64,7 @@ class PasswordUtils: raise NotImplementedError @classmethod - def _scrypt_init( - cls, salt: bytes - ) -> cryptography.hazmat.primitives.kdf.scrypt.Scrypt: + def _scrypt_init(cls, salt: bytes) -> cryptography.hazmat.primitives.kdf.scrypt.Scrypt: return cryptography.hazmat.primitives.kdf.scrypt.Scrypt( salt=salt, length=32, diff --git a/python/online/fxreader/pr34/commands_typed/metrics.py b/python/online/fxreader/pr34/commands_typed/metrics.py index c98cae1..b1f55d4 100644 --- a/python/online/fxreader/pr34/commands_typed/metrics.py +++ b/python/online/fxreader/pr34/commands_typed/metrics.py @@ -51,9 +51,7 @@ class Metric(pydantic.BaseModel): parameters=s.parameters, value='NaN', timestamp=( - s.timestamp + datetime.timedelta(seconds=15) - if s.timestamp - else None + s.timestamp + datetime.timedelta(seconds=15) if s.timestamp else None ), ) ) @@ -73,11 +71,7 @@ class Metric(pydantic.BaseModel): ] ), value=s2.value, - timestamp=( - '%.f' % (s2.timestamp.timestamp() * 1000,) - if s2.timestamp - else '' - ), + timestamp=('%.f' % (s2.timestamp.timestamp() * 1000,) if s2.timestamp else ''), ) for s2 in samples ] @@ -99,19 +93,9 @@ def serialize( '{help}{type}{samples}'.format( # help='# HELP %s some metric' % o.name, # type='# TYPE %s counter' % o.name, - help=( - '# HELP {0} {1}\n'.format(o.name, o.help) - if o.help - else '' - ), - type=( - '# TYPE {0} {1}\n'.format(o.name, o.type) - if o.type - else '' - ), - samples=''.join( - [Metric.sample_serialize(o, s) for s in o.samples] - ), + help=('# HELP {0} {1}\n'.format(o.name, o.help) if o.help else ''), + type=('# TYPE {0} {1}\n'.format(o.name, o.type) if o.type else ''), + samples=''.join([Metric.sample_serialize(o, s) for s in o.samples]), ) for o in metrics if len(o.samples) > 0 diff --git a/python/online/fxreader/pr34/commands_typed/mypy.py b/python/online/fxreader/pr34/commands_typed/mypy.py index 91de680..82bb7d8 100644 --- a/python/online/fxreader/pr34/commands_typed/mypy.py +++ b/python/online/fxreader/pr34/commands_typed/mypy.py @@ -38,9 +38,7 @@ class MypyFormatEntry: class MypyFormat: - vscode: ClassVar[MypyFormatEntry] = MypyFormatEntry( - name='vscode', value='vscode' - ) + vscode: ClassVar[MypyFormatEntry] = MypyFormatEntry(name='vscode', value='vscode') json: ClassVar[MypyFormatEntry] = MypyFormatEntry(name='json', value='json') @classmethod @@ -151,11 +149,7 @@ def run( assert not res.returncode is None errors = sorted( - [ - json.loads(o) - for o in res.stdout.decode('utf-8').splitlines() - if not o.strip() == '' - ], + [json.loads(o) for o in res.stdout.decode('utf-8').splitlines() if not o.strip() == ''], key=lambda x: ( x.get('file', ''), x.get('line', 0), diff --git a/python/online/fxreader/pr34/commands_typed/os.py b/python/online/fxreader/pr34/commands_typed/os.py index 13a646d..2be0396 100644 --- a/python/online/fxreader/pr34/commands_typed/os.py +++ b/python/online/fxreader/pr34/commands_typed/os.py @@ -56,17 +56,11 @@ def runtime_libdirs_init( for o in [ *[ o.absolute() - for o in ( - project.runtime_libdirs - if project.runtime_libdirs - else [] - ) + for o in (project.runtime_libdirs if project.runtime_libdirs else []) ], *[ pathlib.Path(o) - for o in os.environ.get('LD_LIBRARY_PATH', '').split( - os.path.pathsep - ) + for o in os.environ.get('LD_LIBRARY_PATH', '').split(os.path.pathsep) if o != '' ], ] @@ -86,9 +80,7 @@ def runtime_libdirs_init( ld_library_path_present.append(o) os.environ.update( - LD_LIBRARY_PATH=os.path.pathsep.join( - [str(o) for o in ld_library_path_present] - ) + LD_LIBRARY_PATH=os.path.pathsep.join([str(o) for o in ld_library_path_present]) ) for preload_path in project.runtime_preload or []: diff --git a/python/online/fxreader/pr34/commands_typed/pip.py b/python/online/fxreader/pr34/commands_typed/pip.py index df69eb8..e0a5b9a 100644 --- a/python/online/fxreader/pr34/commands_typed/pip.py +++ b/python/online/fxreader/pr34/commands_typed/pip.py @@ -140,9 +140,7 @@ def pip_resolve( import pip._internal.models.direct_url with contextlib.ExitStack() as stack: - stack.enter_context( - pip._internal.utils.temp_dir.global_tempdir_manager() - ) + stack.enter_context(pip._internal.utils.temp_dir.global_tempdir_manager()) t2 = pip._internal.cli.main_parser.create_main_parser() @@ -180,9 +178,7 @@ def pip_resolve( pip._internal.cli.cmdoptions.check_dist_restriction(options) # t1._in_main_context = True session = t1.get_default_session(options) - target_python = pip._internal.cli.cmdoptions.make_target_python( - options - ) + target_python = pip._internal.cli.cmdoptions.make_target_python(options) finder = cast( pip_resolve_t.build_package_finder_t, getattr(t1, '_build_package_finder'), @@ -205,9 +201,7 @@ def pip_resolve( finder, session, ) - pip._internal.req.req_install.check_legacy_setup_py_options( - options, reqs - ) + pip._internal.req.req_install.check_legacy_setup_py_options(options, reqs) directory = pip._internal.utils.temp_dir.TempDirectory( delete=True, kind='download', globally_managed=True ) @@ -230,9 +224,7 @@ def pip_resolve( py_version_info=options.python_version, ) t1.trace_basic_info(finder) - requirement_set = resolver.resolve( - reqs, check_supported_wheels=True - ) + requirement_set = resolver.resolve(reqs, check_supported_wheels=True) res = pip_resolve_t.res_t() @@ -306,9 +298,7 @@ def pip_resolve( location, ) - batch_downloader_call_def = ( - pip._internal.network.download.BatchDownloader.__call__ - ) + batch_downloader_call_def = pip._internal.network.download.BatchDownloader.__call__ def batch_downloader_call( _self: pip._internal.network.download.BatchDownloader, @@ -327,9 +317,7 @@ def pip_resolve( return [(o, ('/dev/null', '')) for o in links] # base_resolver_resolve_def = pip._internal.resolution.base.BaseResolver.resolve - base_resolver_resolve_def = ( - pip._internal.resolution.resolvelib.resolver.Resolver.resolve - ) + base_resolver_resolve_def = pip._internal.resolution.resolvelib.resolver.Resolver.resolve result_requirements: list[RequirementSet | InstallRequirement] = [] @@ -340,9 +328,7 @@ def pip_resolve( ) -> RequirementSet: # print(args, kwargs) - res = base_resolver_resolve_def( - _self, root_reqs, check_supported_wheels - ) + res = base_resolver_resolve_def(_self, root_reqs, check_supported_wheels) result_requirements.append(res) raise NotImplementedError @@ -374,7 +360,9 @@ def pip_resolve( else: return get_http_url_def(link, download, download_dir, hashes) - prepare_linked_requirements_more_def = pip._internal.operations.prepare.RequirementPreparer.prepare_linked_requirements_more + prepare_linked_requirements_more_def = ( + pip._internal.operations.prepare.RequirementPreparer.prepare_linked_requirements_more + ) def prepare_linked_requirements_more( _self: pip._internal.resolution.resolvelib.resolver.Resolver, diff --git a/python/online/fxreader/pr34/commands_typed/pydantic.py b/python/online/fxreader/pr34/commands_typed/pydantic.py index 6d86c9c..d1a2782 100644 --- a/python/online/fxreader/pr34/commands_typed/pydantic.py +++ b/python/online/fxreader/pr34/commands_typed/pydantic.py @@ -37,20 +37,16 @@ def validate_params( kind: Any annotation: Any - parameters = cast( - Mapping[str, Parameter], inspect.signature(view).parameters - ) + parameters = cast(Mapping[str, Parameter], inspect.signature(view).parameters) - positional_parameters: collections.OrderedDict[str, type[Any]] = ( - collections.OrderedDict( - ( - (k, v.annotation) - for k, v in parameters.items() - if v.kind - in ( - inspect.Parameter.POSITIONAL_ONLY, - inspect.Parameter.POSITIONAL_OR_KEYWORD, - ) + positional_parameters: collections.OrderedDict[str, type[Any]] = collections.OrderedDict( + ( + (k, v.annotation) + for k, v in parameters.items() + if v.kind + in ( + inspect.Parameter.POSITIONAL_ONLY, + inspect.Parameter.POSITIONAL_OR_KEYWORD, ) ) ) diff --git a/python/online/fxreader/pr34/commands_typed/status.py b/python/online/fxreader/pr34/commands_typed/status.py index 0569af8..49e9310 100644 --- a/python/online/fxreader/pr34/commands_typed/status.py +++ b/python/online/fxreader/pr34/commands_typed/status.py @@ -208,9 +208,7 @@ printf '% 3.0f%%' $(upower -d | grep -Po 'percentage:\\s+\\d+(\\.\\d+)?%' | grep now_ts = datetime.datetime.now() spent = (now_ts - last_ts).total_seconds() - new_ts = last_ts + datetime.timedelta( - seconds=options.repeat_interval - ) + new_ts = last_ts + datetime.timedelta(seconds=options.repeat_interval) if new_ts > now_ts: if is_late: diff --git a/python/online/fxreader/pr34/oom_firefox.py b/python/online/fxreader/pr34/oom_firefox.py index 674105e..3badda5 100644 --- a/python/online/fxreader/pr34/oom_firefox.py +++ b/python/online/fxreader/pr34/oom_firefox.py @@ -197,15 +197,9 @@ def kill_prioritized( for p in procs: if worker_regex is None and main_regex is None: pass - elif ( - not worker_regex is None - and not re.compile(worker_regex).match(p['cmd']) is None - ): + elif not worker_regex is None and not re.compile(worker_regex).match(p['cmd']) is None: pass - elif ( - not main_regex is None - and not re.compile(main_regex).match(p['cmd']) is None - ): + elif not main_regex is None and not re.compile(main_regex).match(p['cmd']) is None: continue elif not main_regex is None and not worker_regex is None: continue @@ -257,9 +251,7 @@ def kill_prioritized( # — systemd-run logic — -def launch_firefox_with_limits( - base_cmd, memory_high, swap_max, extra_args, unit_name -): +def launch_firefox_with_limits(base_cmd, memory_high, swap_max, extra_args, unit_name): cmd = [ 'systemd-run', '--user', @@ -345,23 +337,14 @@ def main(): args = parser.parse_args() - os.makedirs( - pathlib.Path('~/.cache/oom_firefox/').expanduser(), exist_ok=True - ) + os.makedirs(pathlib.Path('~/.cache/oom_firefox/').expanduser(), exist_ok=True) logging.basicConfig( level=logging.INFO, - format=( - '%(asctime)s ' - '%(levelname)-8s ' - '%(filename)s:%(lineno)d ' - '%(funcName)s – %(message)s' - ), + format=('%(asctime)s %(levelname)-8s %(filename)s:%(lineno)d %(funcName)s – %(message)s'), handlers=[ logging.handlers.RotatingFileHandler( - pathlib.Path( - '~/.cache/oom_firefox/log-%s' % args.unit_name - ).expanduser(), + pathlib.Path('~/.cache/oom_firefox/log-%s' % args.unit_name).expanduser(), maxBytes=128 * 1024, backupCount=3, ) diff --git a/python/online/fxreader/pr34/tasks/ble.py b/python/online/fxreader/pr34/tasks/ble.py index b7ba7e5..13950cd 100644 --- a/python/online/fxreader/pr34/tasks/ble.py +++ b/python/online/fxreader/pr34/tasks/ble.py @@ -49,13 +49,7 @@ async def f5( t5 = {i: o.details[0].name() for i, o in enumerate(t1)} - t2.extend( - [ - t1[k] - for k, v in t5.items() - if isinstance(v, str) and name_check(v) - ] - ) + t2.extend([t1[k] for k, v in t5.items() if isinstance(v, str) and name_check(v)]) else: t2.extend(t1) @@ -78,9 +72,7 @@ async def f4( assert name_check in [ 'watch fit', ] - name_check2 = ( - lambda current_name: name_check.lower() in current_name.lower() - ) + name_check2 = lambda current_name: name_check.lower() in current_name.lower() else: name_check2 = name_check diff --git a/python/online/fxreader/pr34/tasks/cython.py b/python/online/fxreader/pr34/tasks/cython.py index 58b63d2..87e6e49 100644 --- a/python/online/fxreader/pr34/tasks/cython.py +++ b/python/online/fxreader/pr34/tasks/cython.py @@ -256,9 +256,7 @@ def test_cython(N: int = 4, T: int = 16) -> None: def test_mypyc(N: int = 4, W: int = 35) -> None: cython2 = mypyc_build( - (pathlib.Path(__file__).parent / 'cython2.py').relative_to( - pathlib.Path.cwd() - ) + (pathlib.Path(__file__).parent / 'cython2.py').relative_to(pathlib.Path.cwd()) ) # from .cython2 import fib diff --git a/python/online/fxreader/pr34/tasks/jigsaw_toxic.py b/python/online/fxreader/pr34/tasks/jigsaw_toxic.py index ea16158..6bf714d 100644 --- a/python/online/fxreader/pr34/tasks/jigsaw_toxic.py +++ b/python/online/fxreader/pr34/tasks/jigsaw_toxic.py @@ -131,9 +131,7 @@ def kernel_2(): validation = pd.read_csv( '/kaggle/input/jigsaw-multilingual-toxic-comment-classification/validation.csv' ) - test = pd.read_csv( - '/kaggle/input/jigsaw-multilingual-toxic-comment-classification/test.csv' - ) + test = pd.read_csv('/kaggle/input/jigsaw-multilingual-toxic-comment-classification/test.csv') # %% [markdown] # We will drop the other columns and approach this problem as a Binary Classification Problem and also we will have our exercise done on a smaller subsection of the dataset(only 12000 data points) to make it easier to train the models @@ -234,9 +232,7 @@ def kernel_2(): model.add(Embedding(len(word_index) + 1, 300, input_length=max_len)) model.add(SimpleRNN(100)) model.add(Dense(1, activation='sigmoid')) - model.compile( - loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'] - ) + model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy']) model.summary() @@ -296,9 +292,7 @@ def kernel_3( # %% [code] scores_model = [] - scores_model.append( - {'Model': 'SimpleRNN', 'AUC_Score': roc_auc(scores, o_2['yvalid'])} - ) + scores_model.append({'Model': 'SimpleRNN', 'AUC_Score': roc_auc(scores, o_2['yvalid'])}) # %% [markdown] # ## Code Explanantion @@ -331,9 +325,7 @@ def kernel_4( t2 = o_2['token'].texts_to_sequences( [t1], ) - t3 = keras.preprocessing.sequence.pad_sequences( - t2, maxlen=o_2['max_len'] - ) + t3 = keras.preprocessing.sequence.pad_sequences(t2, maxlen=o_2['max_len']) t4 = o_2['model'].predict( t3, ) diff --git a/python/online/fxreader/pr34/tasks/mlb_player.py b/python/online/fxreader/pr34/tasks/mlb_player.py index a2d8fa3..df60e64 100644 --- a/python/online/fxreader/pr34/tasks/mlb_player.py +++ b/python/online/fxreader/pr34/tasks/mlb_player.py @@ -54,11 +54,7 @@ def kernel_2( t2 = '/kaggle/input/mlb-player-digital-engagement-forecasting/train.csv' t3 = pandas.DataFrame( sum( - [ - json.loads(o) - for o in o_1['t3'][t2][k].values - if isinstance(o, str) - ], + [json.loads(o) for o in o_1['t3'][t2][k].values if isinstance(o, str)], [], ) ).to_xarray() @@ -69,9 +65,7 @@ def kernel_2( t5 = '%s-v2.nc' % k if not os.path.exists(t5): t2 = xarray.load_dataset(t4) - t3 = t2.sel( - index=numpy.arange(2017653 - 10 * 1000, 2017653 + 1) - ) + t3 = t2.sel(index=numpy.arange(2017653 - 10 * 1000, 2017653 + 1)) t3.to_netcdf(t5) t1[k] = xarray.load_dataset(t5) print('loaded %s' % t5) @@ -135,15 +129,9 @@ def kernel_3(should_exist=None): def kernel_4( o_3=None, ): - [ - print(o_3['t5']['events'].to_dataframe().iloc[k].to_json(indent=4)) - for k in range(-10, -1) - ] + [print(o_3['t5']['events'].to_dataframe().iloc[k].to_json(indent=4)) for k in range(-10, -1)] - [ - print(o_3['t5']['games'].to_dataframe().iloc[k].to_json(indent=4)) - for k in range(-10, -1) - ] + [print(o_3['t5']['games'].to_dataframe().iloc[k].to_json(indent=4)) for k in range(-10, -1)] t4 = 'https://www.youtube.com/watch?v=reaC7BHgL3M' @@ -286,9 +274,7 @@ def kernel_6( try: cap = cv2.VideoCapture(o) - fps = cap.get( - cv2.CAP_PROP_FPS - ) # OpenCV2 version 2 used "CV_CAP_PROP_FPS" + fps = cap.get(cv2.CAP_PROP_FPS) # OpenCV2 version 2 used "CV_CAP_PROP_FPS" frame_count = int(cap.get(cv2.CAP_PROP_FRAME_COUNT)) duration = frame_count / fps finally: @@ -478,11 +464,7 @@ def kernel_7( for k in layer: v = layer[k] if 'pool' in k: - layers += [ - nn.MaxPool2d( - kernel_size=v[0], stride=v[1], padding=v[2] - ) - ] + layers += [nn.MaxPool2d(kernel_size=v[0], stride=v[1], padding=v[2])] else: conv2d = nn.Conv2d( in_channels=v[0], @@ -570,11 +552,7 @@ def kernel_7( for key in block: v = block[key] if 'pool' in key: - layers += [ - nn.MaxPool2d( - kernel_size=v[0], stride=v[1], padding=v[2] - ) - ] + layers += [nn.MaxPool2d(kernel_size=v[0], stride=v[1], padding=v[2])] else: conv2d = nn.Conv2d( in_channels=v[0], @@ -593,19 +571,11 @@ def kernel_7( return PoseEstimation(models) - def get_paf_and_heatmap( - model, img_raw, scale_search, param_stride=8, box_size=368 - ): - multiplier = [ - scale * box_size / img_raw.shape[0] for scale in scale_search - ] + def get_paf_and_heatmap(model, img_raw, scale_search, param_stride=8, box_size=368): + multiplier = [scale * box_size / img_raw.shape[0] for scale in scale_search] - heatmap_avg = torch.zeros( - (len(multiplier), 19, img_raw.shape[0], img_raw.shape[1]) - ).cuda() - paf_avg = torch.zeros( - (len(multiplier), 38, img_raw.shape[0], img_raw.shape[1]) - ).cuda() + heatmap_avg = torch.zeros((len(multiplier), 19, img_raw.shape[0], img_raw.shape[1])).cuda() + paf_avg = torch.zeros((len(multiplier), 38, img_raw.shape[0], img_raw.shape[1])).cuda() for i, scale in enumerate(multiplier): img_test = cv2.resize( @@ -615,14 +585,9 @@ def kernel_7( fy=scale, interpolation=cv2.INTER_CUBIC, ) - img_test_pad, pad = pad_right_down_corner( - img_test, param_stride, param_stride - ) + img_test_pad, pad = pad_right_down_corner(img_test, param_stride, param_stride) img_test_pad = ( - np.transpose( - np.float32(img_test_pad[:, :, :, np.newaxis]), (3, 2, 0, 1) - ) - / 256 + np.transpose(np.float32(img_test_pad[:, :, :, np.newaxis]), (3, 2, 0, 1)) / 256 - 0.5 ) @@ -632,13 +597,9 @@ def kernel_7( # print(output1.size()) # print(output2.size()) - heatmap = nn.UpsamplingBilinear2d( - (img_raw.shape[0], img_raw.shape[1]) - ).cuda()(output2) + heatmap = nn.UpsamplingBilinear2d((img_raw.shape[0], img_raw.shape[1])).cuda()(output2) - paf = nn.UpsamplingBilinear2d( - (img_raw.shape[0], img_raw.shape[1]) - ).cuda()(output1) + paf = nn.UpsamplingBilinear2d((img_raw.shape[0], img_raw.shape[1])).cuda()(output1) heatmap_avg[i] = heatmap[0].data paf_avg[i] = paf[0].data @@ -684,24 +645,18 @@ def kernel_7( ) ) - peaks = zip( - np.nonzero(peaks_binary)[1], np.nonzero(peaks_binary)[0] - ) # note reverse + peaks = zip(np.nonzero(peaks_binary)[1], np.nonzero(peaks_binary)[0]) # note reverse peaks = list(peaks) peaks_with_score = [x + (map_ori[x[1], x[0]],) for x in peaks] ids = range(peak_counter, peak_counter + len(peaks)) - peaks_with_score_and_id = [ - peaks_with_score[i] + (ids[i],) for i in range(len(ids)) - ] + peaks_with_score_and_id = [peaks_with_score[i] + (ids[i],) for i in range(len(ids))] all_peaks.append(peaks_with_score_and_id) peak_counter += len(peaks) return all_peaks - def extract_paf_info( - img_raw, paf_avg, all_peaks, param_thre2=0.05, param_thre3=0.5 - ): + def extract_paf_info(img_raw, paf_avg, all_peaks, param_thre2=0.05, param_thre3=0.5): connection_all = [] special_k = [] mid_num = 10 @@ -749,19 +704,13 @@ def kernel_7( ] ) - score_midpts = np.multiply(vec_x, vec[0]) + np.multiply( - vec_y, vec[1] - ) - score_with_dist_prior = sum(score_midpts) / len( + score_midpts = np.multiply(vec_x, vec[0]) + np.multiply(vec_y, vec[1]) + score_with_dist_prior = sum(score_midpts) / len(score_midpts) + score_with_dist_prior += min(0.5 * img_raw.shape[0] / norm - 1, 0) + + criterion1 = len(np.nonzero(score_midpts > param_thre2)[0]) > 0.8 * len( score_midpts ) - score_with_dist_prior += min( - 0.5 * img_raw.shape[0] / norm - 1, 0 - ) - - criterion1 = len( - np.nonzero(score_midpts > param_thre2)[0] - ) > 0.8 * len(score_midpts) criterion2 = score_with_dist_prior > 0 if criterion1 and criterion2: connection_candidate.append( @@ -769,9 +718,7 @@ def kernel_7( i, j, score_with_dist_prior, - score_with_dist_prior - + candA[i][2] - + candB[j][2], + score_with_dist_prior + candA[i][2] + candB[j][2], ] ) @@ -782,9 +729,7 @@ def kernel_7( for c in range(len(connection_candidate)): i, j, s = connection_candidate[c][0:3] if i not in connection[:, 3] and j not in connection[:, 4]: - connection = np.vstack( - [connection, [candA[i][3], candB[j][3], s, i, j]] - ) + connection = np.vstack([connection, [candA[i][3], candB[j][3], s, i, j]]) if len(connection) >= min(nA, nB): break @@ -799,9 +744,7 @@ def kernel_7( # last number in each row is the total parts number of that person # the second last number in each row is the score of the overall configuration subset = -1 * np.ones((0, 20)) - candidate = np.array( - [item for sublist in all_peaks for item in sublist] - ) + candidate = np.array([item for sublist in all_peaks for item in sublist]) for k in range(len(map_ids)): if k not in special_k: @@ -813,10 +756,7 @@ def kernel_7( found = 0 subset_idx = [-1, -1] for j in range(len(subset)): # 1:size(subset,1): - if ( - subset[j][indexA] == partAs[i] - or subset[j][indexB] == partBs[i] - ): + if subset[j][indexA] == partAs[i] or subset[j][indexB] == partBs[i]: subset_idx[found] = j found += 1 @@ -826,15 +766,13 @@ def kernel_7( subset[j][indexB] = partBs[i] subset[j][-1] += 1 subset[j][-2] += ( - candidate[partBs[i].astype(int), 2] - + connection_all[k][i][2] + candidate[partBs[i].astype(int), 2] + connection_all[k][i][2] ) elif found == 2: # if found 2 and disjoint, merge them j1, j2 = subset_idx print('found = 2') membership = ( - (subset[j1] >= 0).astype(int) - + (subset[j2] >= 0).astype(int) + (subset[j1] >= 0).astype(int) + (subset[j2] >= 0).astype(int) )[:-2] if len(np.nonzero(membership == 2)[0]) == 0: # merge subset[j1][:-2] += subset[j2][:-2] + 1 @@ -845,8 +783,7 @@ def kernel_7( subset[j1][indexB] = partBs[i] subset[j1][-1] += 1 subset[j1][-2] += ( - candidate[partBs[i].astype(int), 2] - + connection_all[k][i][2] + candidate[partBs[i].astype(int), 2] + connection_all[k][i][2] ) # if find no partA in the subset, create a new subset @@ -856,11 +793,7 @@ def kernel_7( row[indexB] = partBs[i] row[-1] = 2 row[-2] = ( - sum( - candidate[ - connection_all[k][i, :2].astype(int), 2 - ] - ) + sum(candidate[connection_all[k][i, :2].astype(int), 2]) + connection_all[k][i][2] ) subset = np.vstack([subset, row]) @@ -877,9 +810,7 @@ def kernel_7( for i in range(18): for j in range(len(all_peaks[i])): - cv2.circle( - img_canvas, all_peaks[i][j][0:2], 4, colors[i], thickness=-1 - ) + cv2.circle(img_canvas, all_peaks[i][j][0:2], 4, colors[i], thickness=-1) return subset, img_canvas @@ -905,9 +836,7 @@ def kernel_7( 1, ) cv2.fillConvexPoly(cur_canvas, polygon, colors[i]) - img_canvas = cv2.addWeighted( - img_canvas, 0.4, cur_canvas, 0.6, 0 - ) + img_canvas = cv2.addWeighted(img_canvas, 0.4, cur_canvas, 0.6, 0) return img_canvas @@ -924,17 +853,11 @@ def kernel_7( img_padded = img pad_up = np.tile(img_padded[0:1, :, :] * 0 + pad_value, (pad[0], 1, 1)) img_padded = np.concatenate((pad_up, img_padded), axis=0) - pad_left = np.tile( - img_padded[:, 0:1, :] * 0 + pad_value, (1, pad[1], 1) - ) + pad_left = np.tile(img_padded[:, 0:1, :] * 0 + pad_value, (1, pad[1], 1)) img_padded = np.concatenate((pad_left, img_padded), axis=1) - pad_down = np.tile( - img_padded[-2:-1, :, :] * 0 + pad_value, (pad[2], 1, 1) - ) + pad_down = np.tile(img_padded[-2:-1, :, :] * 0 + pad_value, (pad[2], 1, 1)) img_padded = np.concatenate((img_padded, pad_down), axis=0) - pad_right = np.tile( - img_padded[:, -2:-1, :] * 0 + pad_value, (1, pad[3], 1) - ) + pad_right = np.tile(img_padded[:, -2:-1, :] * 0 + pad_value, (1, pad[3], 1)) img_padded = np.concatenate((img_padded, pad_right), axis=1) return img_padded, pad @@ -960,12 +883,12 @@ def kernel_7( # In[4]: - state_dict = torch.load(model)[ - 'state_dict' - ] # getting the pre-trained model's parameters + state_dict = torch.load(model)['state_dict'] # getting the pre-trained model's parameters # A state_dict is simply a Python dictionary object that maps each layer to its parameter tensor. - model_pose = get_pose_model() # building the model (see fn. defn. above). To see the architecture, see below cell. + model_pose = ( + get_pose_model() + ) # building the model (see fn. defn. above). To see the architecture, see below cell. model_pose.load_state_dict( state_dict ) # Loading the parameters (weights, biases) into the model. @@ -977,9 +900,7 @@ def kernel_7( if use_gpu: model_pose.cuda() - model_pose = torch.nn.DataParallel( - model_pose, device_ids=range(torch.cuda.device_count()) - ) + model_pose = torch.nn.DataParallel(model_pose, device_ids=range(torch.cuda.device_count())) cudnn.benchmark = True def estimate_pose( @@ -1015,9 +936,7 @@ def kernel_7( img_points = None try: - paf_info, heatmap_info = get_paf_and_heatmap( - model_pose, img_ori, scale_param - ) + paf_info, heatmap_info = get_paf_and_heatmap(model_pose, img_ori, scale_param) peaks = extract_heatmap_info(heatmap_info) sp_k, con_all = extract_paf_info(img_ori, paf_info, peaks) @@ -1061,11 +980,7 @@ def kernel_8( o_7, ): for i, o in enumerate( - [ - '../input/indonesian-traditional-dance/tgagrakanyar/tga_00%d0.jpg' - % k - for k in range(6) - ] + ['../input/indonesian-traditional-dance/tgagrakanyar/tga_00%d0.jpg' % k for k in range(6)] ): arch_image = o img_ori = o_7['cv2'].imread(arch_image) @@ -1077,9 +992,7 @@ def kernel_9_benchmark( ): import datetime - t1 = o_7['cv2'].imread( - '../input/indonesian-traditional-dance/tgagrakanyar/tga_0000.jpg' - ) + t1 = o_7['cv2'].imread('../input/indonesian-traditional-dance/tgagrakanyar/tga_0000.jpg') t5 = 10 t2 = datetime.datetime.now() for k in range(t5): @@ -1097,9 +1010,7 @@ def kernel_10(): import torch # Model - model = torch.hub.load( - 'ultralytics/yolov5', 'yolov5s' - ) # or yolov5m, yolov5x, custom + model = torch.hub.load('ultralytics/yolov5', 'yolov5s') # or yolov5m, yolov5x, custom # Images img = 'https://ultralytics.com/images/zidane.jpg' # or file, PIL, OpenCV, numpy, multiple @@ -1121,9 +1032,7 @@ def kernel_11_benchmark( ): import datetime - t1 = o_7['cv2'].imread( - '../input/indonesian-traditional-dance/tgagrakanyar/tga_0000.jpg' - ) + t1 = o_7['cv2'].imread('../input/indonesian-traditional-dance/tgagrakanyar/tga_0000.jpg') t5 = 10 t2 = datetime.datetime.now() for k in range(t5): @@ -1155,9 +1064,7 @@ def kernel_13( sum( [ [ - o2['t11'][0].assign( - frame_id=k, video_path=o['video_path'] - ) + o2['t11'][0].assign(frame_id=k, video_path=o['video_path']) for k, o2 in enumerate(o['frames']) ] for o in o_6['t8'] @@ -1235,9 +1142,7 @@ def kernel_14( def kernel_15( o_14, ): - t1 = pandas.DataFrame( - numpy.unique(o_14['o_13']['t1']['name'].data, return_counts=True) - ).T + t1 = pandas.DataFrame(numpy.unique(o_14['o_13']['t1']['name'].data, return_counts=True)).T pprint.pprint( dict( t1=t1, @@ -1287,9 +1192,7 @@ def kernel_15( t12 = cv2.cvtColor(t11, cv2.COLOR_BGR2RGB) t13 = t12.copy() t15 = numpy.array([t8.xcenter, t8.ycenter, t8.width, t8.height]) - t16 = numpy.array( - [t13.shape[1], t13.shape[0], t13.shape[1], t13.shape[0]] - ) + t16 = numpy.array([t13.shape[1], t13.shape[0], t13.shape[1], t13.shape[0]]) t17 = t15 * t16 t18 = t17[:2] - t17[2:] / 2 t19 = t17[:2] + t17[2:] / 2 @@ -1551,10 +1454,7 @@ def kernel_20( t1 = numpy.array(o_18['t2']['t7'][0]['keypoints']).reshape(17, -1) t2 = o_18['t2']['t6'][0] t3 = o_18['t2']['t1'][0]['image_canvas'].copy() - assert ( - o_18['t2']['t7'][0]['image_id'] - == os.path.split(o_18['t2']['t1'][0]['image_name'])[1] - ) + assert o_18['t2']['t7'][0]['image_id'] == os.path.split(o_18['t2']['t1'][0]['image_name'])[1] for i, o2 in enumerate(o_21['p_color']): if i >= 17: @@ -1781,11 +1681,7 @@ def kernel_25(images, delay=None): def kernel_26(o_18, image_name): - t1 = [ - i - for i, o in enumerate(o_18['t2']['t1']) - if o['image_name'] == image_name - ] + t1 = [i for i, o in enumerate(o_18['t2']['t1']) if o['image_name'] == image_name] assert len(t1) == 1 return t1[0] @@ -1807,11 +1703,7 @@ def kernel_23(o_18, o_22, ids=None): t9 = kernel_26(o_18=o_18, image_name=t3['image_name']) t4 = o_18['t2']['t1'][t9]['image_canvas'] t10 = o_18['t2']['t6'][t9] - t4 = [ - o['image_canvas'] - for o in o_18['t2']['t1'] - if o['image_name'] == t3['image_name'] - ] + t4 = [o['image_canvas'] for o in o_18['t2']['t1'] if o['image_name'] == t3['image_name']] assert len(t4) == 1 t5 = t4[0] t6 = kernel_24(t5, t3['keypoints']) @@ -1872,9 +1764,7 @@ def kernel_27(): """ % (t4, t2) if False: pprint.pprint([t4, t2, t6]) - with subprocess.Popen( - t6, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE - ) as p: + with subprocess.Popen(t6, shell=True, stdout=subprocess.PIPE, stderr=subprocess.PIPE) as p: if False: pprint.pprint(p.communicate()) p.wait() @@ -1902,9 +1792,7 @@ def kernel_28( max_seconds = 999999 if video_path is None: - video_path = ( - '/kaggle/working/ATL AT TOR - April 19, 2015-T0MUK91ZWys.mp4' - ) + video_path = '/kaggle/working/ATL AT TOR - April 19, 2015-T0MUK91ZWys.mp4' t5 = video_path t3 = '/kaggle/working/kernel_28-output%s.dir' % video_id t13 = '/root/kernel_28-output.dir/tmp-slice' @@ -1914,9 +1802,7 @@ def kernel_28( try: cap = cv2.VideoCapture(t5) - fps = cap.get( - cv2.CAP_PROP_FPS - ) # OpenCV2 version 2 used "CV_CAP_PROP_FPS" + fps = cap.get(cv2.CAP_PROP_FPS) # OpenCV2 version 2 used "CV_CAP_PROP_FPS" frame_count = int(cap.get(cv2.CAP_PROP_FRAME_COUNT)) real_duration = frame_count / fps duration = min(real_duration, max_seconds) @@ -1996,9 +1882,7 @@ def kernel_29( video_id = '' if video_path is None: - video_path = ( - '/kaggle/working/ATL AT TOR - April 19, 2015-T0MUK91ZWys.mp4' - ) + video_path = '/kaggle/working/ATL AT TOR - April 19, 2015-T0MUK91ZWys.mp4' assert os.path.exists(video_path) @@ -2014,10 +1898,7 @@ def kernel_29( if len(t7) == 0: t1 = [ dict(data=json.load(io.open(o, 'r')), input_path=o) - for o in glob.glob( - '/kaggle/working/kernel_28-output%s.dir/slice-*/*.json' - % video_id - ) + for o in glob.glob('/kaggle/working/kernel_28-output%s.dir/slice-*/*.json' % video_id) ] assert len(t1) > 0 @@ -2082,9 +1963,7 @@ def kernel_30( low_mean_conf = 0.6 if video_path is None: - video_path = ( - '/kaggle/working/ATL AT TOR - April 19, 2015-T0MUK91ZWys.mp4' - ) + video_path = '/kaggle/working/ATL AT TOR - April 19, 2015-T0MUK91ZWys.mp4' if max_frames is None: max_frames = 9999 @@ -2295,8 +2174,7 @@ def kernel_31(image_id, image_size, keypoints): ab = [a[0] - b[0], a[1] - b[1]] ab1 = [c[0] - d[0], c[1] - d[1]] cos = abs(ab[0] * ab1[0] + ab[1] * ab1[1]) / ( - sqrt(ab[0] ** 2 + ab[1] ** 2) * sqrt(ab1[0] ** 2 + ab1[1] ** 2) - + 1e-8 + sqrt(ab[0] ** 2 + ab[1] ** 2) * sqrt(ab1[0] ** 2 + ab1[1] ** 2) + 1e-8 ) ang = acos(cos) return ang * 180 / np.pi @@ -2529,9 +2407,7 @@ def kernel_36(): # import os from os.path import exists, join, basename, splitext - git_repo_url = ( - 'https://github.com/CMU-Perceptual-Computing-Lab/openpose.git' - ) + git_repo_url = 'https://github.com/CMU-Perceptual-Computing-Lab/openpose.git' project_name = splitext(basename(git_repo_url))[0] if 1 or not exists(project_name): @@ -2540,18 +2416,8 @@ def kernel_36(): print('install new CMake becaue of CUDA10') cmake_version = 'cmake-3.20.2-linux-x86_64.tar.gz' if not exists(cmake_version): - assert ( - os.system( - r"""!wget -q 'https://cmake.org/files/v3.20/{cmake_version}' """ - ) - == 0 - ) - assert ( - os.system( - r"""!tar xfz {cmake_version} --strip-components=1 -C /usr/local """ - ) - == 0 - ) + assert os.system(r"""!wget -q 'https://cmake.org/files/v3.20/{cmake_version}' """) == 0 + assert os.system(r"""!tar xfz {cmake_version} --strip-components=1 -C /usr/local """) == 0 print('clone openpose') assert os.system(r"""!git clone -q --depth 1 $git_repo_url """) == 0 @@ -2583,9 +2449,7 @@ def kernel_36(): print(filename) colab_video_path = folder_path + filename print(colab_video_path) - colab_openpose_video_path = ( - colab_video_path.replace('.mp4', '') + '-openpose.mp4' - ) + colab_openpose_video_path = colab_video_path.replace('.mp4', '') + '-openpose.mp4' print(colab_openpose_video_path) if not exists(colab_openpose_video_path): assert ( @@ -2607,9 +2471,7 @@ def kernel_36(): == 0 ) colab_video_path = '/content/drive/My Drive/openpose/' + youtube_id + '.mp4' - colab_openpose_video_path = ( - colab_video_path.replace('.mp4', '') + '-openpose.mp4' - ) + colab_openpose_video_path = colab_video_path.replace('.mp4', '') + '-openpose.mp4' assert ( os.system( @@ -2634,9 +2496,7 @@ def kernel_36(): # from os.path import exists, join, basename, splitext # colab_video_path = '/content/drive/My Drive/bachata.mp4' colab_video_path = '/content/output.mp4' - colab_openpose_video_path = ( - colab_video_path.replace('.mp4', '') + '-openpose.mp4' - ) + colab_openpose_video_path = colab_video_path.replace('.mp4', '') + '-openpose.mp4' assert ( os.system( diff --git a/python/pyproject.common.toml b/python/pyproject.common.toml index 035c6b9..6a60887 100644 --- a/python/pyproject.common.toml +++ b/python/pyproject.common.toml @@ -9,10 +9,8 @@ classifiers = [ ] name = 'online.fxreader.pr34' -# version = '0.1.5.16+27.7' -dynamic = [ - 'version', -] +version = '0.1.5.66' +dynamic = [] dependencies = [ #"-r requirements.txt", @@ -90,7 +88,7 @@ build-backend = "mesonpy" [tool.ruff] -line-length = 160 +line-length = 100 target-version = 'py310' # builtins = ['_', 'I', 'P'] include = [ diff --git a/releases/whl/online_fxreader_pr34-0.1.5.66-py3-none-any.whl b/releases/whl/online_fxreader_pr34-0.1.5.66-py3-none-any.whl new file mode 100644 index 0000000..e0c13b4 --- /dev/null +++ b/releases/whl/online_fxreader_pr34-0.1.5.66-py3-none-any.whl @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6f6640fb423adfced027ed39af74512a824574e42e2ccc308ae0c733f1132d4 +size 85554