python-catkin_lint fails to build with Python 3.13.03. ====================================================================== FAIL: test_exports (test.test_checks_build.ChecksBuildTest.test_exports) Test checks for exported libraries (POSIX/NT) ---------------------------------------------------------------------- Traceback (most recent call last): File "/builddir/build/BUILD/catkin_lint-1.6.22/test/helper.py", line 58, in wrapper func(*args, **kwargs) ~~~~^^^^^^^^^^^^^^^^^ File "/usr/lib64/python3.13/unittest/mock.py", line 1417, in patched return func(*newargs, **newkeywargs) ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ File "/builddir/build/BUILD/catkin_lint-1.6.22/test/test_checks_build.py", line 1026, in test_exports self.assertEqual([], result) ~~~~~~~~~~~~~~~~^^^^^^^^^^^^ AssertionError: Lists differ: [] != ['MISSING_INCLUDE_PATH'] Second list contains 1 additional elements. First extra element 0: 'MISSING_INCLUDE_PATH' - [] + ['MISSING_INCLUDE_PATH'] -------------------- >> begin captured stdout << --------------------- --------------------- >> end captured stdout << ---------------------- ---------------------------------------------------------------------- Warning: you need to install "coverage_plugin" extra requirements to use this plugin. e.g. `pip install nose2[coverage_plugin]` Ran 85 tests in 0.245s FAILED (failures=1, skipped=1) https://docs.python.org/3.13/whatsnew/3.13.html For the build logs, see: https://copr-be.cloud.fedoraproject.org/results/@python/python3.13/fedora-rawhide-x86_64/06930746-python-catkin_lint/ For all our attempts to build python-catkin_lint with Python 3.13, see: https://copr.fedorainfracloud.org/coprs/g/python/python3.13/package/python-catkin_lint/ Testing and mass rebuild of packages is happening in copr. You can follow these instructions to test locally in mock if your package builds with Python 3.13: https://copr.fedorainfracloud.org/coprs/g/python/python3.13/ Let us know here if you have any questions. Python 3.13 is planned to be included in Fedora 41. To make that update smoother, we're building Fedora packages with all pre-releases of Python 3.13. A build failure prevents us from testing all dependent packages (transitive [Build]Requires), so if this package is required a lot, it's important for us to get it fixed soon. We'd appreciate help from the people who know this package best, but if you don't want to work on this now, let us know so we can try to work around it on our side.
This bug appears to have been reported against 'rawhide' during the Fedora Linux 40 development cycle. Changing version to 40.
*** Bug 2291645 has been marked as a duplicate of this bug. ***
This is a little odd. The test is basically linting a CMakeLists.txt that looks like this: project(mock) find_package(catkin REQUIRED) find_package(other_catkin REQUIRED) find_package(other_system REQUIRED) catkin_package( INCLUDE_DIRS ${CMAKE_CURRENT_BINARY_DIR} CATKIN_DEPENDS other_catkin DEPENDS other_system ) and expecting there to be no errors, but it's getting a MISSING_INCLUDE_PATH error, which indicates the linter thinks that the path CMAKE_CURRENT_BINARY_DIR resolves to doesn't exist. With some additional logging, that path seems to be some kinda random string - ones I've got are: /e0RDahb2EYle4Jjl /fQxptyshNme2Mor2 /8WAS3xitz4Myqm2K etc. I don't know if this is normal and the bug is that it's not finding that path, or this is *not* normal and the path should be something else that does exist. The check function is pretty complex: https://github.com/fkie/catkin_lint/blob/3d3c092aabdbd2be5214bdc93afde2e1b7069df6/src/catkin_lint/linter.py#L209 , and uses at least os.path and posixpath. Not sure if there have been significant changes to that in Python 3.13.
OK, figured it out, this was a fun one. https://github.com/fkie/catkin_lint/issues/110 . I've sent https://github.com/fkie/catkin_lint/pull/111 as a potential fix and applied that to our package for now. Fixed in https://bodhi.fedoraproject.org/updates/FEDORA-2024-f4ce04a098 , which is waiting on signing (robosignatory is falling over a lot this week).
Hello, Please note that this comment was generated automatically by https://pagure.io/releng/blob/main/f/scripts/ftbfs-fti/follow-policy.py If you feel that this output has mistakes, please open an issue at https://pagure.io/releng/ All subpackages of a package against which this bug was filled are now installable or removed from Fedora 41. Thanks for taking care of it!