Skip to content
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

[update] Allow to process single ROS distro, fix 723 #738

Merged
merged 4 commits into from
Jan 24, 2020

Conversation

mikaelarguedas
Copy link
Contributor

Fixes #723

Handling of --rosdistro argument in 9915909. Added a print for consistency with skipping EOL but it may be better to remove it.
ff38f1e preserves original behavior if the provided rosdistro name is unknown.

With existing rosdistro

root@cd278b6e5a50:/opt/rosdep# time rosdep update --rosdistro indigo
reading in sources list data from /etc/ros/rosdep/sources.list.d
Warning: running 'rosdep update' as root is not recommended.
  You should run 'sudo rosdep fix-permissions' and invoke 'rosdep update' again without sudo.
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml
Query rosdistro index https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml
Skip distro "ardent" different from requested "indigo"
Skip distro "bouncy" different from requested "indigo"
Skip distro "crystal" different from requested "indigo"
Skip distro "dashing" different from requested "indigo"
Skip distro "eloquent" different from requested "indigo"
Skip distro "foxy" different from requested "indigo"
Skip distro "groovy" different from requested "indigo"
Skip distro "hydro" different from requested "indigo"
Add distro "indigo"
Skip distro "jade" different from requested "indigo"
Skip distro "kinetic" different from requested "indigo"
Skip distro "lunar" different from requested "indigo"
Skip distro "melodic" different from requested "indigo"
Skip distro "noetic" different from requested "indigo"
updated cache in /root/.ros/rosdep/sources.cache

real	0m4.136s
user	0m3.152s
sys	0m0.086s

With no-existing rosdistro

root@cd278b6e5a50:/opt/rosdep# time rosdep update --rosdistro indigooo
reading in sources list data from /etc/ros/rosdep/sources.list.d
Warning: running 'rosdep update' as root is not recommended.
  You should run 'sudo rosdep fix-permissions' and invoke 'rosdep update' again without sudo.
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
Hit https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml
Query rosdistro index https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml
Requested distribution "indigooo" is not in the index. Ignoring ros_distro argument
Skip end-of-life distro "ardent"
Skip end-of-life distro "bouncy"
Add distro "crystal"
Add distro "dashing"
Add distro "eloquent"
Add distro "foxy"
Skip end-of-life distro "groovy"
Skip end-of-life distro "hydro"
Skip end-of-life distro "indigo"
Skip end-of-life distro "jade"
Add distro "kinetic"
Skip end-of-life distro "lunar"
Add distro "melodic"
Add distro "noetic"
updated cache in /root/.ros/rosdep/sources.cache

real	0m6.654s
user	0m5.032s
sys	0m0.046s

@wjwwood FYI

src/rosdep2/sources_list.py Outdated Show resolved Hide resolved
src/rosdep2/sources_list.py Outdated Show resolved Hide resolved
src/rosdep2/sources_list.py Outdated Show resolved Hide resolved
@codecov-io
Copy link

codecov-io commented Jan 7, 2020

Codecov Report

Merging #738 into master will decrease coverage by 0.17%.
The diff coverage is 21.42%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master     #738      +/-   ##
==========================================
- Coverage   75.99%   75.82%   -0.18%     
==========================================
  Files          40       40              
  Lines        3129     3139      +10     
==========================================
+ Hits         2378     2380       +2     
- Misses        751      759       +8
Impacted Files Coverage Δ
src/rosdep2/main.py 48.92% <0%> (-0.27%) ⬇️
src/rosdep2/sources_list.py 86.47% <27.27%> (-1.31%) ⬇️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update edb89c4...28bd6d2. Read the comment docs.

@mikaelarguedas
Copy link
Contributor Author

mikaelarguedas commented Jan 8, 2020

CI failures seem unrelated to this change as they happen on master as well

Edit: CI failures addressed in #739

@dirk-thomas
Copy link
Member

I am not the maintainer of this package therefore I unassigned myself as a reviewer.

@mikaelarguedas
Copy link
Contributor Author

As you reviewed and asked for changes I thought you were the right person to request a follow up review from.

Could you please clarify who the current maintainer is?

@dirk-thomas
Copy link
Member

Could you please clarify who the current maintainer is?

@wjwwood

@wjwwood
Copy link
Contributor

wjwwood commented Jan 23, 2020

I’m unlikely to have time to review this soon, but I’ll get to it when I can.

@dirk-thomas I think it is reasonable to ask you to finish a review if you start one and the maintainer doesn’t have to be the only person to review the pull request.

Copy link
Contributor

@wjwwood wjwwood left a comment

Choose a reason for hiding this comment

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

Do you think we should update the --rosdistro argument's help text to mention how it is used with the update command? (or maybe the update command's help text)

Signed-off-by: Mikael Arguedas <[email protected]>
@mikaelarguedas
Copy link
Contributor Author

Do you think we should update the --rosdistro argument's help text to mention how it is used with the update command? (or maybe the update command's help text)

Sounds good. What do you think of 28bd6d2 ?

if distribution.get('distribution_status') == 'end-of-life':
print('Skip end-of-life distro "%s"' % dist_name)
if dist_name != ros_distro:
if ros_distro is not None:
Copy link
Contributor

Choose a reason for hiding this comment

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

This logic (the two lines here in combination with the for loop) is a bit tricky, but I think it's correct.

@wjwwood
Copy link
Contributor

wjwwood commented Jan 24, 2020

The issues in CI are unrelated in my opinion.

@wjwwood wjwwood merged commit 2977726 into ros-infrastructure:master Jan 24, 2020
@mikaelarguedas
Copy link
Contributor Author

Thanks for the express review!

The issues in CI are unrelated in my opinion.

Seems like it, #739 addresses unrelated the CI failures

@mikaelarguedas mikaelarguedas deleted the single_ros_distro branch January 25, 2020 08:33
gstavrinos pushed a commit to gstavrinos/rosdep that referenced this pull request Nov 12, 2020
* Add Suite3 option with Ubuntu Focal (ros-infrastructure#734)

Signed-off-by: Shane Loretz <[email protected]>

* [update] Allow to process single ROS distro, fix 723 (ros-infrastructure#738)

* [update] skip other distro if --rosdistro passed

Signed-off-by: Mikael Arguedas <[email protected]>

* ignore argument if specified distro doesnt exist

* address review comments

* update help message for rosdistro

Signed-off-by: Mikael Arguedas <[email protected]>

* Fix CI and reduce CI time (ros-infrastructure#739)

* test newer python
* use yaml.safe_load
* pin PyYAML version for Python 3.4
* pass user flag to pip when needed
* move slow jobs to the top to reduce CI time

Signed-off-by: Mikael Arguedas <[email protected]>

* Strip Alpine's patch version from OS codename (ros-infrastructure#716)

* Resolve Alpine os_version_type using OsDetect
* Reduced Alpine OS VERSION to Major.Minor

* improve support for null entries (ros-infrastructure#726)

* support null for entire OS and not only OS version

syntax like 'ubuntu: null' will now be raising ResolutionError with
relevant error message instead of InvalidData with obscure error message
will also cover syntax like:
"
ubuntu:
  '*': null
  bionic: [foobar]
"

Signed-off-by: Mikael Arguedas <[email protected]>

Co-authored-by: Scott K Logan <[email protected]>

* Use DNF installer on RHEL 8 and newer (ros-infrastructure#713)

RHEL/CentOS 8 uses DNF by default.

* Updates to YUM and DNF (ros-infrastructure#640)

Output YUM, DNF and RPM versions with `--all-versions` and fix the format guide's default PM for Fedora.

* tests: don't assume euid != 0 (ros-infrastructure#703)

If tests rely on the environment being a certain way, they should ensure
it meets its expectations. Update the tests to ensure they're testing
multiple euid conditions, and setting it explicitly where required.

Fix ros-infrastructure#702

Signed-off-by: Kyle Fazzari <[email protected]>

* openSUSE package query  and install enhancements (ros-infrastructure#729)

* Enable PIP installer for openSUSE

* openSUSE package detection with RPM capabilities

Packages sometimes get renamed and their old name is kept as an rpm capability (like an alias), so the additional flag `--whatprovides` is passed to the `rpm` query.

* Fix conditional dependencies when one package uses manifest.xml (ros-infrastructure#737)

* Fix conditional dependencies when one package uses manifest.xml

Signed-off-by: Shane Loretz <[email protected]>

* Return rosdeps as a list to avoid breaking the interface.

Co-authored-by: Steven! Ragnarök <[email protected]>

* Guard next(inter) (ros-infrastructure#701)

* guard next(inter)

  Fix ros-infrastructure#691

Signed-off-by: artivis <[email protected]>

* Handle StopIteration with slightly less line noise.

Co-authored-by: Steven! Ragnarök <[email protected]>

* [Windows] Add console script entry point (ros-infrastructure#656)

* Add console script entry point

Add console script entry point for platforms (e.g. Windows) not supporting shebang.

* remove scripts entry since we are using console_scripts.

* fix bad merge.

* fix SKIP_PYTHON_SCRIPTS case.

Co-authored-by: Lou Amadio <[email protected]>

* Depend on modules packages only to allow co-installability. (ros-infrastructure#750)

When the rosdep modules package was split in [ros-infrastructure#731] the module
dependencies weren't updated to only depend on modules packages
themselves which prevents rosdep modules for python2 and python3 from
actually being co-installable.

I haven't yet audited to make sure there's no cli usage of these tools
in the modules but it's Friday afternoon and I wanted to get this inked
before I walked away.

When I return to it I'll check for that before proceeding for reviews.

* 0.19.0

* also install buildtool_export_depends (ros-infrastructure#753)

not adding 'exec_depends' or 'build_export_depends' are both are included inside 'run_depends'

Signed-off-by: Mikael Arguedas <[email protected]>

* Drop shebang from a non-executable file (ros-infrastructure#755)

* add alias for Pop! OS (ros-infrastructure#757)

* add alias for Pop! OS

Signed-off-by: Mikael Arguedas <[email protected]>

Co-authored-by: Shane Loretz <[email protected]>
Co-authored-by: Mikael Arguedas <[email protected]>
Co-authored-by: Mark Hedley Jones <[email protected]>
Co-authored-by: Scott K Logan <[email protected]>
Co-authored-by: Kyle Fazzari <[email protected]>
Co-authored-by: Bjar Ne <[email protected]>
Co-authored-by: Jeremie Deray <[email protected]>
Co-authored-by: Sean Yen <[email protected]>
Co-authored-by: Lou Amadio <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update the database of only a single ROS distribution
4 participants