-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
pip packages names should not use underscores #18116
Comments
|
Your title does not match what the PEP8 link says. "Modules should have short, all-lowercase names. Underscores can be used in the module name if it improves readability. Python packages should also have short, all-lowercase names, although the use of underscores is discouraged." Discouraged vs should are different. What action do you want to suggest based on this? This repository does not provide any modules or packages like face recognition. |
I think @ipa-mdl is referring to this recently added pip package (that contains an underscore): Lines 1010 to 1022 in fbacef4
|
I am sorry, my description lacks some context.. PyPi/pip references packages with underscores by substituting these with hyphens internally. Some pip packages (like
I see two options:
I would suggest to go for option 2 as it reflects the way packages are named in pip and make this an additional rule for pip packages. |
Another example:
|
Thanks for the extra context. Yeah, option 2 sounds like the right approach since the pip rules are already pip specific. And it is important that rosdep can detect them as listed. Trying to make rosdep be able to disambiguate is likely much more complicated than saying that the rosdep rule should just be what pip freeze says the package is. |
Seems sensible to me, please see #18126 for the first part. |
Yeah, I'd like to actually get to the point that we're checking package manager databases that rules are resolvable, not just formated right. I started work on the shorter_rosdep branch https://github.com/ros/rosdistro/tree/shorter_rosdep to only check changed rosdeps. After that's in we can both check formatting and actually query the database that the key exists and is potentially installable. |
Since we closed out #18126, I'm going to close this out as well. Feel free to reopen if you think there is still something we should do here. |
While investigating ros-industrial/industrial_ci#282, I have discovered that pip does not use underscores in package names (they are discouraged in PEP8).
While
pip install face_recognition
works,pip freeze
lists it asface-recognition==VERSION
.The latter is used by
rosdep
to detect the package.(With pip 10 the detection works because
rosdep
usespip show
as fallback.)The text was updated successfully, but these errors were encountered: