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

pythonPackages.pytest_3: fix build #64445

Closed
wants to merge 2 commits into from
Closed

Conversation

marsam
Copy link
Contributor

@marsam marsam commented Jul 8, 2019

Motivation for this change

Fixes #64440
cc: @peti

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@marsam marsam requested a review from FRidh as a code owner July 8, 2019 14:04
Copy link
Member

@FRidh FRidh left a comment

Choose a reason for hiding this comment

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

We don't override modules within the Python package set because it can lead to conflicting versions. Instead, we should likely set the package set wide version to 0.8.1 in case of Python 2.

Copy link
Member

@peti peti left a comment

Choose a reason for hiding this comment

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

Please add the old build as a versioned attribute, i.e. pluggy_0_8_1. Then we can override the version for the python-2.x package set on the top-level so that all builds depending on pluggy get a consistent version.

@marsam
Copy link
Contributor Author

marsam commented Jul 10, 2019

Sorry for the delay, I've added pluggy_0_8.
pytest_3 tests are failing with pluggy>=0.9, because pluggy made changes to PluginManager.load_setuptools_entrypoints; it's not related to the python version

@marsam
Copy link
Contributor Author

marsam commented Jul 10, 2019

@GrahamcOfBorg build pythonPackages.pytest_3 python3Packages.pytest_3

@@ -5293,6 +5293,8 @@ in {

pluggy = callPackage ../development/python-modules/pluggy {};

pluggy_0_8 = callPackage ../development/python-modules/pluggy/0_8.nix {};
Copy link
Member

Choose a reason for hiding this comment

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

This one will have to always be used with Python 2. Note though, if we notice breakage due to this change, then that means we won't be able to support pytest 3 anymore.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I tried, but it breaks

  • python3Packages.pytest_3 it would use pluggy=0.12.0, which was the original bug report
  • python{2,3}Packages.pytest because it requires pluggy>=0.12

then that means we won't be able to support pytest 3 anymore.

I'm inclined to drop pytest_3, only 9 packages depend on it

@@ -18,7 +18,7 @@ buildPythonPackage rec {

checkInputs = [ hypothesis mock ];
buildInputs = [ setuptools_scm ];
propagatedBuildInputs = [ attrs py setuptools six pluggy more-itertools atomicwrites]
propagatedBuildInputs = [ attrs py setuptools six pluggy_0_8 more-itertools atomicwrites]
Copy link
Member

Choose a reason for hiding this comment

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

We can't have multiple versions of the same library in use at the same time.

@FRidh
Copy link
Member

FRidh commented Jul 10, 2019

We indeed need to drop pytest_3 then.

@FRidh FRidh closed this Jul 10, 2019
@peti
Copy link
Member

peti commented Jul 10, 2019

Dropping pytest_3 won't help me fix #64440, though.

@marsam marsam mentioned this pull request Aug 9, 2019
10 tasks
pull bot pushed a commit to evanjs/nixpkgs that referenced this pull request Aug 13, 2019
pluggy>=0.9 introduced a breaking change to pytest_3, and is not
feasible to keep pytest_3 around in nixpkgs.
See: NixOS#64445
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.

python2.7-suds-jurko-0.6 broken by recent update of pluggy
3 participants