diff --git a/Makefile b/Makefile index f1064961d..a61c8d8aa 100644 --- a/Makefile +++ b/Makefile @@ -63,8 +63,9 @@ update-snapshots: # Update the constraints file for Python dependencies .PHONY: update-constraints update-constraints: - uv pip compile --quiet --extra excel --extra dev --python-version 3.9 --upgrade --output-file constraints.txt pyproject.toml - uv pip compile --quiet --extra excel --extra old_deps_pins --resolution=lowest --python-version 3.9 --upgrade --output-file constraints-old.txt pyproject.toml + uv pip compile --quiet --extra excel --extra dev --python-version 3.9 --upgrade --output-file constraints-git.txt pyproject.toml + uv pip compile --quiet --extra excel --extra dev --no-sources --python-version 3.9 --upgrade --output-file constraints.txt pyproject.toml + uv pip compile --quiet --extra excel --extra old_deps_pins --no-sources --resolution=lowest --python-version 3.9 --upgrade --output-file constraints-old.txt pyproject.toml # Update the frontend dependencies. .PHONY: update-frontend-deps diff --git a/constraints-git.txt b/constraints-git.txt new file mode 100644 index 000000000..0c851cd4c --- /dev/null +++ b/constraints-git.txt @@ -0,0 +1,351 @@ +# This file was autogenerated by uv via the following command: +# uv pip compile --extra excel --extra dev --python-version 3.9 --output-file constraints-git.txt pyproject.toml +alabaster==0.7.16 + # via sphinx +altgraph==0.17.4 + # via pyinstaller +anyio==4.7.0 + # via watchfiles +astroid==3.3.8 + # via pylint +babel==2.16.0 + # via + # fava (pyproject.toml) + # flask-babel + # sphinx +backports-tarfile==1.2.0 + # via jaraco-context +beancount @ git+https://github.com/beancount/beancount@afb42d6b107db38fe087c8f6991a97fcdcabba37 + # via + # fava (pyproject.toml) + # beangulp + # beanquery +beangulp @ git+https://github.com/beancount/beangulp@772dab222e6e6d0ef40d09faf07072151e44aa11 + # via fava (pyproject.toml) +beanquery @ git+https://github.com/beancount/beanquery@51ad2619acf787845b149b6330defb99ee33366b + # via fava (pyproject.toml) +beautifulsoup4==4.12.3 + # via + # beangulp + # furo +blinker==1.9.0 + # via flask +build==1.2.2.post1 + # via fava (pyproject.toml) +cachetools==5.5.0 + # via tox +certifi==2024.12.14 + # via requests +cffi==1.17.1 + # via cryptography +cfgv==3.4.0 + # via pre-commit +chardet==5.2.0 + # via + # beangulp + # tox +charset-normalizer==3.4.1 + # via requests +cheroot==10.0.1 + # via fava (pyproject.toml) +click==8.1.8 + # via + # fava (pyproject.toml) + # beancount + # beangulp + # beanquery + # flask +colorama==0.4.6 + # via tox +coverage==7.6.10 + # via pytest-cov +cryptography==44.0.0 + # via secretstorage +dill==0.3.9 + # via pylint +distlib==0.3.9 + # via virtualenv +docutils==0.21.2 + # via + # readme-renderer + # sphinx +et-xmlfile==2.0.0 + # via openpyxl +exceptiongroup==1.2.2 + # via + # anyio + # pytest +filelock==3.16.1 + # via + # tox + # virtualenv +flask==3.1.0 + # via + # fava (pyproject.toml) + # flask-babel +flask-babel==4.0.0 + # via fava (pyproject.toml) +furo==2024.8.6 + # via fava (pyproject.toml) +identify==2.6.3 + # via pre-commit +idna==3.10 + # via + # anyio + # requests +imagesize==1.4.1 + # via sphinx +importlib-metadata==8.5.0 + # via + # build + # flask + # keyring + # pyinstaller + # pyinstaller-hooks-contrib + # sphinx + # twine +iniconfig==2.0.0 + # via pytest +isort==5.13.2 + # via pylint +itsdangerous==2.2.0 + # via flask +jaraco-classes==3.4.0 + # via keyring +jaraco-context==6.0.1 + # via keyring +jaraco-functools==4.1.0 + # via + # cheroot + # keyring +jeepney==0.8.0 + # via + # keyring + # secretstorage +jinja2==3.1.5 + # via + # fava (pyproject.toml) + # flask + # flask-babel + # sphinx +keyring==25.6.0 + # via twine +lml==0.1.0 + # via + # pyexcel + # pyexcel-io +lxml==5.3.0 + # via + # beangulp + # pyexcel-ezodf + # pyexcel-ods3 +markdown-it-py==3.0.0 + # via rich +markdown2==2.5.2 + # via fava (pyproject.toml) +markupsafe==3.0.2 + # via + # jinja2 + # werkzeug +mccabe==0.7.0 + # via pylint +mdurl==0.1.2 + # via markdown-it-py +more-itertools==10.5.0 + # via + # cheroot + # jaraco-classes + # jaraco-functools +mypy==1.14.0 + # via fava (pyproject.toml) +mypy-extensions==1.0.0 + # via mypy +nh3==0.2.20 + # via readme-renderer +nodeenv==1.9.1 + # via pre-commit +openpyxl==3.1.5 + # via pyexcel-xlsx +packaging==24.2 + # via + # build + # pyinstaller + # pyinstaller-hooks-contrib + # pyproject-api + # pytest + # sphinx + # tox + # tox-uv + # twine +pkginfo==1.12.0 + # via twine +platformdirs==4.3.6 + # via + # pylint + # tox + # virtualenv +pluggy==1.5.0 + # via + # pytest + # tox +ply==3.11 + # via fava (pyproject.toml) +pre-commit==4.0.1 + # via fava (pyproject.toml) +pycparser==2.22 + # via cffi +pyexcel==0.7.1 + # via fava (pyproject.toml) +pyexcel-ezodf==0.3.4 + # via pyexcel-ods3 +pyexcel-io==0.6.7 + # via + # pyexcel + # pyexcel-ods3 + # pyexcel-xlsx +pyexcel-ods3==0.6.1 + # via fava (pyproject.toml) +pyexcel-xlsx==0.6.0 + # via fava (pyproject.toml) +pygments==2.18.0 + # via + # furo + # readme-renderer + # rich + # sphinx +pyinstaller==6.11.1 + # via fava (pyproject.toml) +pyinstaller-hooks-contrib==2024.11 + # via pyinstaller +pylint==3.3.3 + # via fava (pyproject.toml) +pyproject-api==1.8.0 + # via tox +pyproject-hooks==1.2.0 + # via build +pytest==8.3.4 + # via + # fava (pyproject.toml) + # pytest-cov +pytest-cov==6.0.0 + # via fava (pyproject.toml) +python-dateutil==2.9.0.post0 + # via + # beancount + # beanquery +python-magic==0.4.27 + # via beangulp +pytz==2024.2 + # via flask-babel +pyyaml==6.0.2 + # via pre-commit +readme-renderer==44.0 + # via twine +regex==2024.11.6 + # via beancount +requests==2.32.3 + # via + # fava (pyproject.toml) + # requests-toolbelt + # sphinx + # twine +requests-toolbelt==1.0.0 + # via twine +rfc3986==2.0.0 + # via twine +rich==13.9.4 + # via twine +secretstorage==3.3.3 + # via keyring +setuptools==75.6.0 + # via + # fava (pyproject.toml) + # pyinstaller + # pyinstaller-hooks-contrib +simplejson==3.19.3 + # via fava (pyproject.toml) +six==1.17.0 + # via python-dateutil +sniffio==1.3.1 + # via anyio +snowballstemmer==2.2.0 + # via sphinx +soupsieve==2.6 + # via beautifulsoup4 +sphinx==7.4.7 + # via + # fava (pyproject.toml) + # furo + # sphinx-autodoc-typehints + # sphinx-basic-ng +sphinx-autodoc-typehints==2.3.0 + # via fava (pyproject.toml) +sphinx-basic-ng==1.0.0b2 + # via furo +sphinxcontrib-applehelp==2.0.0 + # via sphinx +sphinxcontrib-devhelp==2.0.0 + # via sphinx +sphinxcontrib-htmlhelp==2.1.0 + # via sphinx +sphinxcontrib-jsmath==1.0.1 + # via sphinx +sphinxcontrib-qthelp==2.0.0 + # via sphinx +sphinxcontrib-serializinghtml==2.0.0 + # via sphinx +tatsu==5.7.4 + # via beanquery +texttable==1.7.0 + # via pyexcel +tomli==2.2.1 + # via + # build + # coverage + # mypy + # pylint + # pyproject-api + # pytest + # sphinx + # tox +tomlkit==0.13.2 + # via pylint +tox==4.23.2 + # via + # fava (pyproject.toml) + # tox-uv +tox-uv==1.16.2 + # via fava (pyproject.toml) +twine==6.0.1 + # via fava (pyproject.toml) +types-setuptools==75.6.0.20241223 + # via fava (pyproject.toml) +types-simplejson==3.19.0.20241221 + # via fava (pyproject.toml) +typing-extensions==4.12.2 + # via + # anyio + # astroid + # mypy + # pylint + # rich + # tox + # tox-uv +urllib3==2.3.0 + # via + # requests + # twine +uv==0.5.13 + # via tox-uv +virtualenv==20.28.0 + # via + # pre-commit + # tox +watchfiles==1.0.3 + # via fava (pyproject.toml) +werkzeug==3.1.3 + # via + # fava (pyproject.toml) + # flask +zipp==3.21.0 + # via importlib-metadata diff --git a/constraints-old.txt b/constraints-old.txt index 8e44ab9bc..18e5ae482 100644 --- a/constraints-old.txt +++ b/constraints-old.txt @@ -1,5 +1,5 @@ # This file was autogenerated by uv via the following command: -# uv pip compile --extra excel --extra old_deps_pins --resolution=lowest --python-version 3.9 --output-file constraints-old.txt pyproject.toml +# uv pip compile --extra excel --extra old_deps_pins --no-sources --resolution=lowest --python-version 3.9 --output-file constraints-old.txt pyproject.toml anyio==3.0.0 # via watchfiles attrs==19.2.0 diff --git a/constraints.txt b/constraints.txt index d6b6958fe..34757d22c 100644 --- a/constraints.txt +++ b/constraints.txt @@ -1,5 +1,5 @@ # This file was autogenerated by uv via the following command: -# uv pip compile --extra excel --extra dev --python-version 3.9 --output-file constraints.txt pyproject.toml +# uv pip compile --extra excel --extra dev --no-sources --python-version 3.9 --output-file constraints.txt pyproject.toml alabaster==0.7.16 # via sphinx altgraph==0.17.4 @@ -44,7 +44,7 @@ chardet==5.2.0 # via # beangulp # tox -charset-normalizer==3.4.0 +charset-normalizer==3.4.1 # via requests cheroot==10.0.1 # via fava (pyproject.toml) @@ -57,7 +57,7 @@ click==8.1.8 # flask colorama==0.4.6 # via tox -coverage==7.6.9 +coverage==7.6.10 # via pytest-cov cryptography==44.0.0 # via secretstorage @@ -128,7 +128,7 @@ jinja2==3.1.5 # flask # flask-babel # sphinx -keyring==25.5.0 +keyring==25.6.0 # via twine lml==0.1.0 # via @@ -335,7 +335,7 @@ urllib3==2.3.0 # via # requests # twine -uv==0.5.11 +uv==0.5.13 # via tox-uv virtualenv==20.28.0 # via diff --git a/pyproject.toml b/pyproject.toml index 56859291e..9ed6d0bc0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -196,3 +196,8 @@ max-args = 9 "tests/test_*.py" = ["D", "PLC2701", "S101", "SLF001"] "tests/data/import_config.py" = ["D", "INP"] "src/fava/core/filters.py" = ["D"] + +[tool.uv.sources] +beancount = { git = "https://github.com/beancount/beancount", branch = "master" } +beangulp = { git = "https://github.com/beancount/beangulp", branch = "master" } +beanquery = { git = "https://github.com/beancount/beanquery", branch = "master" } diff --git a/requirements.txt b/requirements.txt index 1abf2148b..c926460db 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,2 +1,2 @@ --r constraints.txt +-r constraints-git.txt -e . diff --git a/tox.ini b/tox.ini index 36ab92aa9..906b6400b 100644 --- a/tox.ini +++ b/tox.ini @@ -45,7 +45,7 @@ deps = setuptools types-setuptools types-simplejson - -c constraints.txt + -c constraints-git.txt commands = mypy src/fava tests _build_backend.py pylint src/fava tests _build_backend.py