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

Fails to resolve model paths on case-insensitive filesystems like in macOS #80

Open
azeey opened this issue Jun 18, 2020 · 1 comment
Open
Labels
bug Something isn't working help wanted Extra attention is needed macOS macOS support

Comments

@azeey
Copy link
Contributor

azeey commented Jun 18, 2020

The recent change of owner name from openrobotics to OpenRobotics has caused a regression in homebrew builds of ign-gazebo (https://build.osrfoundation.org/job/ignition_gazebo-ci-ign-gazebo2-homebrew-amd64/129/testReport/). I think the issue stems from the fact that the filesystem in macOS can be case-insensitive, and if there's already a directory called openrobotics, it will not create a new one called OpenRobotics. However, when checking if a model is already downloaded, ign-fuel-tools compares the owner name from the URI and the owner name derived from the file path. Since that comparison fails, models are always downloaded. It also looks like ign-fuel-tools uses this comparison when determining the version number as it creates the final path to the downloaded model.sdf file. But due to the name mismatch, the version is set to tip instead of a numeric value. This causes failures downstream, for example, in sdformat as it tries to open a file with the pattern <cache path>/openrobotics/models/<model name>/tip, which doesn't actually exist in the filesystem.

@azeey azeey added the bug Something isn't working label Jun 18, 2020
@chapulina
Copy link
Contributor

if there's already a directory called openrobotics, it will not create a new one called OpenRobotics

This specifically sounds like a one-time issue since we don't expect user names to be changing.

For downstream users: maybe we should officially communicate this issue and tell them to clear previously existing folders?

For the tests: I'd hope they wouldn't be affected by this. We've tried to use a custom cache location for tests and clear it between tests. If a previously existing directory is messing with the tests I think we could improve the tests.


More generally, this could be an issue if Fuel allows different users to be created with the same letters but different cases, like someuser and SomeUser. Maybe this is something we need to disallow on the server side. CC @nkoenig

@chapulina chapulina added the help wanted Extra attention is needed label Jun 22, 2020
@chapulina chapulina added the macOS macOS support label Jul 24, 2020
@chapulina chapulina mentioned this issue Jul 29, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Extra attention is needed macOS macOS support
Projects
None yet
Development

No branches or pull requests

2 participants