Skip to content

Conversation

@das-g
Copy link
Member

@das-g das-g commented Apr 29, 2025

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.


Build fails with

warning: The interpretation of store paths arguments ending in `.drv` recently changed. If this command is now failing try again with '/nix/store/pvj2bhchp17k46s1851bg9lnfwrx4p0l-python3.12-pytest-tap-3.5.drv^*'
Sourcing python-remove-tests-dir-hook
Sourcing python-catch-conflicts-hook.sh
Sourcing python-remove-bin-bytecode-hook.sh
Sourcing pypa-build-hook
Using pypaBuildPhase
Sourcing python-runtime-deps-check-hook
Using pythonRuntimeDepsCheckHook
Sourcing pypa-install-hook
Using pypaInstallPhase
Sourcing python-imports-check-hook.sh
Using pythonImportsCheckPhase
Sourcing python-namespaces-hook
Sourcing python-catch-conflicts-hook.sh
Sourcing pytest-check-hook
/nix/store/lbw329diypjdljmc229l9h6zd51drp2v-pytest-check-hook/nix-support/setup-hook: line 41: warning: command substitution: 1 unterminated here-document
Using pytestCheckPhase
Running phase: unpackPhase
@nix { "action": "setPhase", "phase": "unpackPhase" }
unpacking source archive /nix/store/rbdhg56aci9dm2hb0h9n5k2j7ky79v6b-source
source root is source
setting SOURCE_DATE_EPOCH to timestamp 315619200 of file "source/uv.lock"
Running phase: patchPhase
@nix { "action": "setPhase", "phase": "patchPhase" }
Running phase: updateAutotoolsGnuConfigScriptsPhase
@nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" }
Running phase: configurePhase
@nix { "action": "setPhase", "phase": "configurePhase" }
no configure script, doing nothing
Running phase: buildPhase
@nix { "action": "setPhase", "phase": "buildPhase" }
Executing pypaBuildPhase
Creating a wheel...
pypa build flags: --no-isolation --outdir dist/ --wheel
* Getting build dependencies for wheel...
* Building wheel...
Successfully built pytest_tap-3.5-py3-none-any.whl
Finished creating a wheel...
Finished executing pypaBuildPhase
Running phase: pythonRuntimeDepsCheckHook
@nix { "action": "setPhase", "phase": "pythonRuntimeDepsCheckHook" }
Executing pythonRuntimeDepsCheck
Checking runtime dependencies for pytest_tap-3.5-py3-none-any.whl
Finished executing pythonRuntimeDepsCheck
Running phase: installPhase
@nix { "action": "setPhase", "phase": "installPhase" }
Executing pypaInstallPhase
Successfully installed pytest_tap-3.5-py3-none-any.whl
Finished executing pypaInstallPhase
Running phase: pythonOutputDistPhase
@nix { "action": "setPhase", "phase": "pythonOutputDistPhase" }
Executing pythonOutputDistPhase
Finished executing pythonOutputDistPhase
Running phase: fixupPhase
@nix { "action": "setPhase", "phase": "fixupPhase" }
shrinking RPATHs of ELF executables and libraries in /nix/store/yqp0czhsdxyhnirgl509xm8v7sv7nd6s-python3.12-pytest-tap-3.5
checking for references to /build/ in /nix/store/yqp0czhsdxyhnirgl509xm8v7sv7nd6s-python3.12-pytest-tap-3.5...
patching script interpreter paths in /nix/store/yqp0czhsdxyhnirgl509xm8v7sv7nd6s-python3.12-pytest-tap-3.5
stripping (with command strip and flags -S -p) in  /nix/store/yqp0czhsdxyhnirgl509xm8v7sv7nd6s-python3.12-pytest-tap-3.5/lib
shrinking RPATHs of ELF executables and libraries in /nix/store/gycd0m8sdzqrgpg5amqq5fx3gcky5n14-python3.12-pytest-tap-3.5-dist
checking for references to /build/ in /nix/store/gycd0m8sdzqrgpg5amqq5fx3gcky5n14-python3.12-pytest-tap-3.5-dist...
patching script interpreter paths in /nix/store/gycd0m8sdzqrgpg5amqq5fx3gcky5n14-python3.12-pytest-tap-3.5-dist
Executing pythonRemoveTestsDir
Finished executing pythonRemoveTestsDir
Running phase: installCheckPhase
@nix { "action": "setPhase", "phase": "installCheckPhase" }
no Makefile or custom installCheckPhase, doing nothing
Running phase: pythonCatchConflictsPhase
@nix { "action": "setPhase", "phase": "pythonCatchConflictsPhase" }
Running phase: pythonRemoveBinBytecodePhase
@nix { "action": "setPhase", "phase": "pythonRemoveBinBytecodePhase" }
Running phase: pythonImportsCheckPhase
@nix { "action": "setPhase", "phase": "pythonImportsCheckPhase" }
Executing pythonImportsCheckPhase
Check whether the following modules can be imported: pytest_tap
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "<string>", line 1, in <lambda>
  File "/nix/store/fqm9bqqlmaqqr02qbalm1bazp810qfiw-python3-3.12.9/lib/python3.12/importlib/__init__.py", line 90, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1387, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1360, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1324, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'pytest_tap'

@github-actions github-actions bot added 6.topic: python Python is a high-level, general-purpose programming language. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Apr 29, 2025
@mweinelt
Copy link
Member

mweinelt commented May 8, 2025

The resulting package only ships metadata, that's why the import fails.

lib/
lib/python3.12/
lib/python3.12/site-packages/
lib/python3.12/site-packages/pytest_tap-3.5.dist-info/
lib/python3.12/site-packages/pytest_tap-3.5.dist-info/METADATA
lib/python3.12/site-packages/pytest_tap-3.5.dist-info/RECORD
lib/python3.12/site-packages/pytest_tap-3.5.dist-info/WHEEL
lib/python3.12/site-packages/pytest_tap-3.5.dist-info/entry_points.txt
lib/python3.12/site-packages/pytest_tap-3.5.dist-info/licenses/
lib/python3.12/site-packages/pytest_tap-3.5.dist-info/licenses/AUTHORS
lib/python3.12/site-packages/pytest_tap-3.5.dist-info/licenses/LICENSE
nix-support/
nix-support/propagated-build-inputs

@das-g
Copy link
Member Author

das-g commented May 8, 2025

The resulting package only ships metadata

Can you look into why that is, @mweinelt? (I currently neither have time I can spend on this nor would I know where to begin looking.)

@das-g
Copy link
Member Author

das-g commented May 8, 2025

Eh, should probably ping the maintainer @Cynerd.

Copy link
Contributor

@Cynerd Cynerd left a comment

Choose a reason for hiding this comment

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

The issue is in upstream. The following patch fixes the issue you encountered.

diff --git a/pkgs/development/python-modules/pytest-tap/default.nix b/pkgs/development/python-modules/pytest-tap/default.nix
index 562c85f9b280..7e14ba0d2b74 100644
--- a/pkgs/development/python-modules/pytest-tap/default.nix
+++ b/pkgs/development/python-modules/pytest-tap/default.nix
@@ -2,6 +2,7 @@
   lib,
   buildPythonPackage,
   fetchFromGitHub,
+  fetchpatch,
   hatchling,
   pythonOlder,
   pytest,
@@ -23,6 +24,14 @@ buildPythonPackage rec {
     hash = "sha256-IuVtH1hrynbFDmz7IZ6vef9bAwl8L1eqR9WYQVL6CCA=";
   };
 
+  patches = [
+    (fetchpatch {
+      name = "missing-package-in-wheel.patch";
+      url = "https://github.com/python-tap/pytest-tap/pull/105.patch";
+      hash = "sha256-P52NqgXtnO2SthDwVbT+NVPeBNhjGS/8Vsbe/WLCc3A=";
+    })
+  ];
+
   build-system = [ hatchling ];
 
   buildInputs = [ pytest ];

python-tap/pytest-tap#105

Co-authored-by: Karel Kočí <cynerd@email.cz>
@das-g das-g marked this pull request as ready for review May 14, 2025 11:45
@das-g das-g requested review from CommentatorForAll and Cynerd May 14, 2025 11:45
@das-g das-g changed the title WIP: python3Packages.pytest-tap: 3.3 → 3.5 python3Packages.pytest-tap: 3.3 → 3.5 May 14, 2025
Copy link
Contributor

@Cynerd Cynerd left a comment

Choose a reason for hiding this comment

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

LGTM

@das-g
Copy link
Member Author

das-g commented May 14, 2025

nixpkgs-review result

Generated using nixpkgs-review.

Command: nixpkgs-review


x86_64-linux

✅ 4 packages built:
  • python312Packages.pytest-tap
  • python312Packages.pytest-tap.dist
  • python313Packages.pytest-tap
  • python313Packages.pytest-tap.dist

@mweinelt mweinelt merged commit f300617 into NixOS:master May 14, 2025
45 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: python Python is a high-level, general-purpose programming language. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants