Skip to content

Conversation

@danielhollas
Copy link
Collaborator

@danielhollas danielhollas commented Nov 2, 2025

Lock upgrade is a pre-requisite for supporting Python 3.14. Split from #7074

Output of `uv lock --upgrade`

Updated alembic v1.16.4 -> v1.16.5, v1.17.2
Updated anyio v4.9.0 -> v4.11.0
Updated argon2-cffi-bindings v21.2.0 -> v25.1.0
Updated arrow v1.3.0 -> v1.4.0
Updated ase v3.25.0 -> v3.26.0
Updated attrs v25.3.0 -> v25.4.0
Updated bcrypt v4.3.0 -> v5.0.0
Updated beautifulsoup4 v4.13.4 -> v4.14.2
Updated bleach v6.2.0 -> v6.2.0, v6.3.0
Updated blessed v1.21.0 -> v1.23.0
Updated certifi v2025.7.14 -> v2025.11.12
Updated cffi v1.17.1 -> v2.0.0
Updated charset-normalizer v3.4.2 -> v3.4.4
Updated comm v0.2.2 -> v0.2.3
Updated contourpy v1.3.0, v1.3.2 -> v1.3.0, v1.3.2, v1.3.3
Updated coverage v7.10.7, v7.11.0 -> v7.10.7, v7.11.3
Updated cryptography v45.0.5 -> v46.0.3
Updated cwcwidth v0.1.10 -> v0.1.10, v0.1.11, v0.1.12
Updated debugpy v1.8.15 -> v1.8.17
Updated execnet v2.1.1 -> v2.1.2
Updated executing v2.2.0 -> v2.2.1
Updated fastjsonschema v2.21.1 -> v2.21.2
Updated filelock v3.18.0 -> v3.19.1, v3.20.0
Updated fonttools v4.59.0 -> v4.60.1
Updated greenlet v3.2.3 -> v3.2.4
Updated gssapi v1.9.0 -> v1.10.1
Updated identify v2.6.12 -> v2.6.15
Updated idna v3.10 -> v3.11
Updated iniconfig v2.1.0 -> v2.1.0, v2.3.0
Updated ipykernel v6.30.0 -> v6.31.0, v7.1.0
Updated ipython v8.18.1, v8.37.0, v9.4.0 -> v8.18.1, v8.37.0, v9.7.0
Updated ipywidgets v8.1.7 -> v8.1.8
Updated joblib v1.5.1 -> v1.5.2
Updated json5 v0.12.0 -> v0.12.1
Updated jsonschema v4.25.0 -> v4.25.1
Updated jsonschema-specifications v2025.4.1 -> v2025.9.1
Updated jupyter-core v5.8.1 -> v5.8.1, v5.9.1
Updated jupyter-lsp v2.2.6 -> v2.3.0
Updated jupyter-server v2.16.0 -> v2.17.0
Updated jupyterlab v4.4.5 -> v4.4.10
Updated jupyterlab-server v2.27.3 -> v2.28.0
Updated jupyterlab-widgets v3.0.15 -> v3.0.16
Updated kiwisolver v1.4.7, v1.4.8 -> v1.4.7, v1.4.9
Updated lark v1.2.2 -> v1.3.1
Updated markupsafe v3.0.2 -> v3.0.3
Updated matplotlib v3.9.4, v3.10.3 -> v3.9.4, v3.10.7
Updated matplotlib-inline v0.1.7 -> v0.2.1
Updated mdit-py-plugins v0.4.2 -> v0.4.2, v0.5.0
Updated mistune v3.1.3 -> v3.1.4
Updated multidict v6.6.3 -> v6.7.0
Updated mypy v1.18.1 -> v1.18.2
Updated narwhals v1.48.0 -> v2.11.0
Updated nbclassic v1.3.1 -> v1.3.3
Updated numpy v2.0.2, v2.2.6, v2.3.1 -> v2.0.2, v2.2.6, v2.3.4
Updated orjson v3.11.0 -> v3.11.4
Updated pandas v2.3.1 -> v2.3.3
Updated parso v0.8.4 -> v0.8.5
Updated pg8000 v1.31.4 -> v1.31.5
Updated pillow v11.3.0 -> v11.3.0, v12.0.0
Updated platformdirs v4.3.8 -> v4.4.0, v4.5.0
Updated plotly v6.2.0 -> v6.4.0
Updated prometheus-client v0.22.1 -> v0.23.1
Updated prompt-toolkit v3.0.51 -> v3.0.52
Updated propcache v0.3.2 -> v0.4.1
Updated psutil v7.1.0 -> v7.1.3
Updated psycopg v3.2.9 -> v3.2.12
Updated psycopg-binary v3.2.9 -> v3.2.12
Updated pycparser v2.22 -> v2.23
Updated pydantic v2.11.7 -> v2.12.4
Updated pydantic-core v2.33.2 -> v2.41.5
Updated pymatgen v2024.8.9, v2025.6.14 -> v2024.8.9, v2025.10.7
Updated pynacl v1.5.0 -> v1.6.1
Updated pyparsing v3.2.3 -> v3.2.5
Updated pytest-datadir v1.7.2 -> v1.8.0
Updated pytest-regressions v2.8.1 -> v2.8.3
Updated python-json-logger v3.3.0 -> v4.0.0
Updated pywinpty v2.0.15 -> v3.0.2
Updated pyyaml v6.0.2 -> v6.0.3
Updated pyzmq v27.0.0 -> v27.1.0
Updated referencing v0.36.2 -> v0.36.2, v0.37.0
Updated requests v2.32.4 -> v2.32.5
Updated rich v14.0.0 -> v14.2.0
Updated rpds-py v0.26.0 -> v0.27.1, v0.28.0
Updated ruamel-yaml v0.18.14 -> v0.18.16
Updated ruamel-yaml-clib v0.2.12 -> v0.2.14
Updated scipy v1.13.1, v1.15.3, v1.16.0 -> v1.13.1, v1.15.3, v1.16.3
Updated soupsieve v2.7 -> v2.8
Updated sqlalchemy v2.0.41 -> v2.0.44
Updated textual v4.0.0 -> v6.6.0
Updated tomli v2.2.1 -> v2.3.0
Updated tornado v6.5.1 -> v6.5.2
Updated types-docutils v0.22.2.20250924 -> v0.22.2.20251006
Removed types-python-dateutil v2.9.0.20250708
Updated types-pyyaml v6.0.12.20250516 -> v6.0.12.20250915
Updated typing-extensions v4.14.1 -> v4.15.0
Updated typing-inspection v0.4.1 -> v0.4.2
Updated virtualenv v20.32.0 -> v20.35.4
Updated wcwidth v0.2.13 -> v0.2.14
Updated webcolors v24.11.1 -> v24.11.1, v25.10.0
Updated websocket-client v1.8.0 -> v1.9.0
Updated widgetsnbextension v4.0.14 -> v4.0.15
Updated wrapt v1.17.2 -> v1.17.3
Updated yarl v1.20.1 -> v1.22.0

EDIT: I also tried to upgrade pytest to 8.x but ran into issues with leak tests so will do that in a separate PR.

@danielhollas danielhollas changed the title Uv.lock upgrade + updete pytest dependencies Uv.lock upgrade + update pytest dependencies Nov 2, 2025
@codecov
Copy link

codecov bot commented Nov 2, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 79.61%. Comparing base (0dcd10a) to head (e68161b).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #7077      +/-   ##
==========================================
- Coverage   79.62%   79.61%   -0.01%     
==========================================
  Files         566      566              
  Lines       43546    43546              
==========================================
- Hits        34669    34664       -5     
- Misses       8877     8882       +5     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@danielhollas danielhollas requested a review from GeigerJ2 November 3, 2025 17:20
@danielhollas
Copy link
Collaborator Author

Marking as draft until I can investigate the test failures (memory_leak tests are failing, but only for some Python versions?)

@danielhollas danielhollas marked this pull request as draft November 3, 2025 18:18
@danielhollas danielhollas changed the title Uv.lock upgrade + update pytest dependencies uv.lock upgrade Nov 4, 2025
@danielhollas danielhollas marked this pull request as ready for review November 4, 2025 06:05
@danielhollas danielhollas force-pushed the uv-lock-pytest-upgrade branch from 2d2b57b to ccc9f40 Compare November 4, 2025 06:20
# .github/actions/install-aiida-core/action.yml
# .readthedocs.yml
required-version = ">=0.7.0"
required-version = ">=0.8.4"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Different from 0.9.7 used in the other places? Why this minimum required version here?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added the following comment, let me know if it makes things clearer:

# We specify a minimum uv version so that the format of uv.lock file
# does not change depending on uv version that a particular developer has installed.
# The uv.lock format is versioned, using the "version" and "revision" fields in uv.lock,
# and the minimum version here should be the first one that introduced a given version/revision.

@GeigerJ2
Copy link
Contributor

Thanks, @danielhollas! Pls resolve conflicts then I approve 🙏🏽
Btw, as of now, current version of uv on pypi is 0.9.8. I'm just wondering if there is any systematic way we keep tools and dependencies up-to-date. As you wrote in the description, this PR was triggered by your work to support Python 3.14. Why was the uv.lock upgrade actually necessary for this? Asking just out of curiosity, could you elaborate?

@danielhollas
Copy link
Collaborator Author

I am fixing the test-install job in #7103 which should be merged first

@danielhollas danielhollas force-pushed the uv-lock-pytest-upgrade branch from b1141ef to e68161b Compare November 21, 2025 12:36
@danielhollas
Copy link
Collaborator Author

Why was the uv.lock upgrade actually necessary for this? Asking just out of curiosity, could you elaborate?

Yeah, I wasn't very precise here. Basicaly when I tried to use Python 3.14 with uv sync -p 3.14 it failed as it was trying to installed the outdated packages for the lockfile that didn't have Python 3.14 support. (it would have worked better if I had used uv pip install which installs the latest).
There are also some packages where we actually need to update in pyproject.toml to get 3.14 support, but I'll deal with that in #7074.

@danielhollas
Copy link
Collaborator Author

@GeigerJ2 is this one good to merge?

@GeigerJ2
Copy link
Contributor

@GeigerJ2 is this one good to merge?

Pull the trigger! 🔫

@danielhollas danielhollas merged commit 7b59996 into aiidateam:main Nov 24, 2025
31 checks passed
@danielhollas danielhollas deleted the uv-lock-pytest-upgrade branch November 24, 2025 13:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants