Skip to content

pythonp313Packages.rospkg: init at 1.6.0 #401730

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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

Guelakais
Copy link
Contributor

@Guelakais Guelakais commented Apr 25, 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.

@github-actions github-actions bot added the 6.topic: python Python is a high-level, general-purpose programming language. label Apr 25, 2025
@nix-owners nix-owners bot requested a review from natsukium April 25, 2025 12:17
@github-actions github-actions bot added 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 25, 2025
Copy link
Member

@ethancedwards8 ethancedwards8 left a comment

Choose a reason for hiding this comment

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

beautiful derivation. LGTM.

@wegank wegank added the 12.approvals: 1 This PR was reviewed and approved by one person. label Apr 26, 2025
Copy link
Contributor

@bengsparks bengsparks left a comment

Choose a reason for hiding this comment

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

Sorry, wrong button.

@Guelakais Guelakais requested a review from bengsparks April 28, 2025 17:26
@Guelakais Guelakais changed the title pythonp313Packages.rospkg: init at 1.6.0 pythonp313Packages.rospkg: init at 1.6.0, rosversion Apr 28, 2025
@bengsparks
Copy link
Contributor

Your title contains a typo pythonp313Packages. It should be python313Packages.
Also, the PR title technically does not conform to the naming standards; I imagine something like [python313Packages.rospkg, rosversion]: init at 1.6.0 is more accurate.

@Guelakais
Copy link
Contributor Author

Guys, seriously, what you're doing here is a packet of broken stuff. rospkg as a python module is deeply rooted in the infrastructure of ros and fundamentally important if you want to build ament_cmake for example. rosversion is a program from the ros1 era. Official support for ros1 will be discontinued in the middle of next month. From then on, rosversion will in fact never be developed or used again. rospkg will continue to be maintained as the underlying dependencies evolve. Can't we just take rosversion away again? It doesn't work anyway.

@bengsparks
Copy link
Contributor

Ah, if rosversion is from ros1, then there is probably not great interest in bringing it along in this package. Make sure to update your commit message and the PR title.

@Guelakais
Copy link
Contributor Author

Guelakais commented May 28, 2025

So I've thought about it again and decided that I simply don't have the brainpower to make the cli of this package work. From now on, I will only accept suggestions for improvements that involve making the package available in a meaningful way. So more tests or a more elegant access to the library api. Since I am primarily a ros2 developer, I have never had anything to do with rosversion - ros1 is no longer being developed anyway...

So if there are no more tests that need to be added, the package is declared ready at this point.

@Guelakais Guelakais requested a review from bengsparks May 28, 2025 07:51
@Guelakais Guelakais changed the title pythonp313Packages.rospkg: init at 1.6.0, rosversion pythonp313Packages.rospkg: init at 1.6.0 May 28, 2025
@nixpkgs-ci nixpkgs-ci bot added 12.approvals: 2 This PR was reviewed and approved by two persons. and removed 12.approvals: 1 This PR was reviewed and approved by one person. labels Jun 25, 2025
@Guelakais
Copy link
Contributor Author

Guys, we've been messing around with this pull request for three months now. What else is missing?

@@ -0,0 +1 @@
export ROS_OS_OVERRIDE=nixos
Copy link
Member

Choose a reason for hiding this comment

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

this almost certainly should be in env instead

Copy link
Contributor Author

Choose a reason for hiding this comment

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

No. this would produce the following:

this derivation will be built:
  /nix/store/zm4k40jdzacq259hfyx97rrh6razsbyq-python3.13-rospkg-1.6.0.drv
building '/nix/store/zm4k40jdzacq259hfyx97rrh6razsbyq-python3.13-rospkg-1.6.0.drv'...
error: builder for '/nix/store/zm4k40jdzacq259hfyx97rrh6razsbyq-python3.13-rospkg-1.6.0.drv' failed with exit code 1;
       last 25 log lines:
       > E         + TrueOs
       >
       > test/test_rospkg_os_detect.py:544: AssertionError
       > ____________________________ test_OsDetect_nomatch _____________________________
       >
       >     def test_OsDetect_nomatch():
       >         from rospkg.os_detect import OsDetect, OsNotDetected
       >         detect = OsDetect([('Dummy', FalseOs())])
       >         assert isinstance(detect.get_detector('Dummy'), FalseOs)
       >         try:
       >             detect.get_name()
       > >           assert False
       > E           assert False
       >
       > test/test_rospkg_os_detect.py:590: AssertionError
       > =============================== warnings summary ===============================
       > test/test_rospkg_os_detect.py::test_osx
       >   /nix/store/ks4p9h25ksa8ljgaykq1ff7z095aml4i-python3.13-rospkg-1.6.0/lib/python3.13/site-packages/rospkg/os_detect.py:351: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
       >     ver = distutils.version.StrictVersion(version).version
       >
       > -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
       > =========================== short test summary info ============================
       > FAILED test/test_rospkg_os_detect.py::test_OsDetect_single - AssertionError: assert 'TrueOs' == 'nixos'
       > FAILED test/test_rospkg_os_detect.py::test_OsDetect_nomatch - assert False
       > =================== 2 failed, 92 passed, 1 warning in 0.81s ====================
       For full logs, run:
         nix log /nix/store/zm4k40jdzacq259hfyx97rrh6razsbyq-python3.13-rospkg-1.6.0.drv

@nixpkgs-ci nixpkgs-ci bot added the 2.status: merge conflict This PR has merge conflicts with the target branch label Aug 13, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2.status: merge conflict This PR has merge conflicts with the target branch 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. 12.approvals: 2 This PR was reviewed and approved by two persons.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants