-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Fix nav2_bringup flake8 tests proposal #3893
Fix nav2_bringup flake8 tests proposal #3893
Conversation
Signed-off-by: Ignacio Vizzo <ignacio@dexory.com>
@nachovizzo thanks for starting, but CI still reports another 133 issues https://app.circleci.com/pipelines/github/ros-planning/navigation2/10248/workflows/00b8a38a-17fb-42ef-ab38-acab39d66001/jobs/32510/tests We're not looking to disable anything - we want to be in compliance with the newest ROS 2 best practices as they evolve |
@SteveMacenski I know. That's why I was asking how to proceed before spending hours changing double quotes for single quotes ;) Then you would say to go for option |
Yes, and I totally understand! |
Still fixes a few; I'll take incremental :-) |
@nachovizzo is this something you're committing to doing? If not, I need to take it on. We can't leave CI red for so long. |
@SteveMacenski I was planning on doing it this weekend, probably tomorrow ;) the PR will come soon |
Signed-off-by: Ignacio Vizzo <ignacio@dexory.com> Signed-off-by: gg <josho.wallace@gmail.com>
Signed-off-by: Ignacio Vizzo <ignacio@dexory.com> Signed-off-by: enricosutera <enricosutera@outlook.com>
Signed-off-by: Ignacio Vizzo <ignacio@dexory.com>
Signed-off-by: Ignacio Vizzo <ignacio@dexory.com>
Hello, I'm opening a PR instead of a ticket so the pipeline is also triggered and we can discuss further
Problem: new flake8 plugins in
ros:rolling
make the CI failThis sounds pretty strange, but the reason is quite simple:
The CI is using
ghcr.io/ros-planning/navigation2:main
as the base image, which is based onrolling
.By doing a simple docker run in such a container one can immediately see all the plugins that are installed there:
In contrast, if one searches for the
flake8
apt packages installed in theros:iron
image (as an example) the output is only:Why this happens
This is the thing I don't like much about
flake8
, the plugin systems. As is the case now, I cansudo apt install python3-flake8-quotes
and the output of theflake8
linter is going to be different from the "vanilla" flake8.How to reproduce the CI failure locally?
Easy:
And after that just run
ament_flake8 .
on thenavigation2
root, and you will see exactly the same errors that are on the CI.CI Test
The commit I've pushed only fix the issues from the new flake8 plugins in the
nav2_bringup
package, as seen in the CI run now those tests pass: , compared to the currentmaster
branch failure:Possible solutions
ament_lint
repo, disabling all the new stuff (especially the "quotes" linter is quite annoying)rosdistro
where those dependencies got added, and attempt to get rid of those (unlikely to happen)ament_flake8.ini
in nav2 and use that configuration in the ciFor Maintainers: