Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[python-updates] 2025-01-19: major updates #375144

Merged
merged 857 commits into from
Jan 27, 2025
Merged

[python-updates] 2025-01-19: major updates #375144

merged 857 commits into from
Jan 27, 2025

Conversation

mweinelt
Copy link
Member

@mweinelt mweinelt commented Jan 19, 2025

This is a bulk update run on the python package set.

Questions? Join #python:nixos.org on Matrix.

Known issues

@mweinelt mweinelt changed the base branch from master to staging January 19, 2025 20:23
@ofborg ofborg bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Jan 19, 2025
@github-actions github-actions bot added 6.topic: python 2.status: merge conflict This PR has merge conflicts with the target branch and removed 2.status: merge conflict This PR has merge conflicts with the target branch labels Jan 19, 2025
@ofborg ofborg bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Jan 19, 2025
@mweinelt mweinelt marked this pull request as ready for review January 19, 2025 23:30
@nix-owners nix-owners bot requested a review from natsukium January 19, 2025 23:31
@mweinelt
Copy link
Member Author

@mweinelt
Copy link
Member Author

@mweinelt
Copy link
Member Author

@mweinelt
Copy link
Member Author

@ofborg ofborg bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Jan 21, 2025
@mweinelt

This comment was marked as outdated.

@mweinelt
Copy link
Member Author

@imincik
Copy link
Contributor

imincik commented Jan 22, 2025

@mweinelt , see #375859 .

@ofborg ofborg bot removed the 2.status: merge conflict This PR has merge conflicts with the target branch label Jan 22, 2025
@mweinelt
Copy link
Member Author

Did a rebase on staging to get postgresql to build and uncover the hidden build failures behind it.

Also dropped all bumps for which there were reverts and ordered package inits in front of the package that required packaging them.

@ofborg ofborg bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Jan 23, 2025
@imincik imincik mentioned this pull request Jan 23, 2025
13 tasks
@mweinelt
Copy link
Member Author

@mweinelt
Copy link
Member Author

@SuperSandro2000
Copy link
Member

When #376394 is merged, drop the oslo-utils test ignore from this PR

@mweinelt
Copy link
Member Author

I never pushed it.

@drupol drupol mentioned this pull request Feb 6, 2025
13 tasks
@mweinelt
Copy link
Member Author

mweinelt commented Feb 6, 2025

@mweinelt can we somehow exclude playwright from such updates a0cce8a? The lib depends on a specific driver version and must be updated using included update.sh. PR with such update #358638

If a package is fragile and often breaks during these bulks updates, it may be reasonable to set passthru.skipBulkUpdate = true in the derivation. This decision should not be made on a whim and should always be supported by a qualifying comment.

https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks/python.section.md#updating-packages-in-bulk-python-package-bulk-updates

@trofi
Copy link
Contributor

trofi commented Feb 7, 2025

On master python3Packages.androguard fails as:

$ nix build --no-link -f. -L python3Packages.androguard
...
python3.12-androguard> applying patch /nix/store/0ihd8gmffhv6ppx0nv8hzfcrsp1d6dyg-drop-removed-networkx-formats.patch
python3.12-androguard> patching file androguard/cli/main.py
python3.12-androguard> Hunk #1 FAILED at 110.
python3.12-androguard> 1 out of 1 hunk FAILED -- saving rejects to file androguard/cli/main.py.rej

I suspect it's after 47c6362 python3Packages.androguard: 3.4.0a1 -> 4.1.2 (bisect fails early on other intermediate python package failures, thus have to guess).

@trofi trofi mentioned this pull request Feb 7, 2025
13 tasks
@linsui
Copy link
Contributor

linsui commented Feb 8, 2025

New androguard requires a broken dep. androguard/androguard#1068

@trofi
Copy link
Contributor

trofi commented Feb 8, 2025

Bisect says 311264f python3Packages.cstruct: 5.3 -> 6.0 broke jefferson (a diffoscope dependency) on master as:

$ nix build --no-link -f. jefferson -L
...
jefferson> Checking runtime dependencies for jefferson-0.4.5-py3-none-any.whl
jefferson>   - cstruct<6.0,>=5.2 not satisfied by version 6.0

@sikmir
Copy link
Member

sikmir commented Feb 8, 2025

h3 is broken after update (#380382).

@happysalada
Copy link
Contributor

@drawbu it looks like duckduckgo-search is broken on a mismatch of primp package. If you have time of course.

@Sigmanificient
Copy link
Member

Sigmanificient commented Feb 8, 2025

This breaks fava too, #380197

@arjan-s
Copy link
Contributor

arjan-s commented Feb 8, 2025

This breaks XWayland support in Qtile. We were already tracking the problem in #371737 and qtile/qtile#5101 and this PR just blindly updated Qtile without looking at it.
Can we revert the qtile and qtile-extras updates done by this PR?

@terlar
Copy link
Contributor

terlar commented Feb 13, 2025

@mweinelt: This seems to have broken checkov, it is possible to work around by pinning the version:

pkgs.checkov.overridePythonAttrs {
  dependencies = map (pkg:
    if pkg.pname == "cyclonedx-python-lib" then
      pkg.overrideAttrs (old: rec {
        name = builtins.replaceStrings [ old.version ] [ version ] old.name;
        version = "7.6.2";
        src = pkgs.fetchFromGitHub {
          owner = "CycloneDX";
          repo = "cyclonedx-python-lib";
          tag = "v${version}";
          hash = "sha256-nklizCiu7Nmynjd5WU5oX/v2TWy9xFVF4GkmCwFKZLI=";
        };
      })
    else
      pkg
  ) pkgs.checkov.dependencies;
}

They have it pinned to the older version https://github.com/bridgecrewio/checkov/blob/main/Pipfile#L69

The question is how do we handle these local dependency limitations. Do we create a new cyclonedx-python-lib_7, do we inline it inside the checkov package or do we try to patch it to work?

@mweinelt
Copy link
Member Author

Use an overwritten python with packageOverrides to pin dependencies within the checkov package.

https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks/python.section.md#how-to-override-a-python-package-how-to-override-a-python-package

@philipwilk
Copy link
Contributor

Broke python3Packages.imbalanced-learn as dependency python3Packages.sklearn-compat was not added.

52270a8 adds sklearn-compat but 2 tests still fail on imbalanced-learn.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.