Given that the solution proposed is to ship a custom patch, I'm going to
bump this to a FFe to get acceptance of the release-team and also
unblock the excuses transition in existing Noble development cycle.

 * Merge request: 
https://code.launchpad.net/~j-rivero/ubuntu/+source/python-pytest-flake8/+git/python-pytest-flake8/+merge/464197
 * Build tested: 
https://code.launchpad.net/~j-rivero/+recipe/python-pytest-flake8-daily

[Justification]
This package is stopping the transition in Noble from noble-proposed to noble 
of python3-flake8, see 
https://ubuntu-archive-team.ubuntu.com/proposed-migration/update_excuses.html#python-flake8

If you install python3-flake8 in regular Noble right now, you get version 
5.0.4.  
flake8 depends on pydocstyle, which was updated to a newer version (6.3.0), 
which changed API.  So attempting to run flake8 fails at startup, trying to call
an invalid API.

python3-flake8 7.0.0 and 8.1.1 (the latest) both fix this issue. 
8.1.1 is currently the version in noble-proposed.  However, it has been stuck 
in 
proposed for several months because pythonpytest-flake8 fails tests when used 
against that version.

See the problem in the long build of the ROS buildfarm:
https://build.ros2.org/view/Rdev/job/Rdev__ros2cli__ubuntu_noble_amd64/2/console

---- 8< -----------------------------
08:29:45 _________________________________ test_flake8 
__________________________________
08:29:45 /usr/lib/python3/dist-packages/flake8/plugins/finder.py:296: in 
_load_plugin
08:29:45     obj = plugin.entry_point.load()
08:29:45 /usr/lib/python3.12/importlib/metadata/__init__.py:205: in load
08:29:45     module = import_module(match.group('module'))
08:29:45 /usr/lib/python3.12/importlib/__init__.py:90: in import_module
08:29:45     return _bootstrap._gcd_import(name[level:], package, level)
08:29:45 /usr/lib/python3/dist-packages/flake8/plugins/pycodestyle.py:25: in 
<module>
08:29:45     from pycodestyle import missing_whitespace_around_operator as 
_missing_whitespace_around_operator  # noqa: E501
08:29:45 E   ImportError: cannot import name 
'missing_whitespace_around_operator' from 'pycodestyle' 
(/usr/lib/python3/dist-packages/pycodestyle.py). Did you mean: 
'whitespace_around_operator'?
---- 8< -----------------------------


[Testing done]

We have been injecting the python3-flake version in noble-proposed into the ROS
buildfarm build, see that there are no failures any more, software run as 
expected:
https://ci.ros2.org/job/ci_linux/20828/console
---- 8< ------------------------------
=============================== warnings summary 
===============================
test/test_flake8.py::test_flake8
test/test_flake8.py::test_flake8
test/test_flake8.py::test_flake8
test/test_flake8.py::test_flake8
test/test_flake8.py::test_flake8
test/test_flake8.py::test_flake8
test/test_flake8.py::test_flake8
test/test_flake8.py::test_flake8
  /usr/lib/python3.12/multiprocessing/popen_fork.py:66: DeprecationWarning: 
This process (pid=259742) is multi-threaded, use of fork() may lead to 
deadlocks in the child.
    self.pid = os.fork()

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
---
---- 8< ------------------------------

The ROS buildfarm is a large project for testing lot of software packages in 
open 
source robotics and the use of flake8 is integrated into each python package. We
have been using it last weeks without problems.

** Summary changed:

- python-pytest-flake8 FTBFS against python-flake8  7
+ [FFe] python-pytest-flake8 FTBFS against python-flake8  7

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2058914

Title:
  [FFe] python-pytest-flake8 FTBFS against python-flake8  7

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/python-flake8/+bug/2058914/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to