-
-
Notifications
You must be signed in to change notification settings - Fork 78
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
Should "custom" versions of libraries be allowed #526
Comments
I guess It's a side effect of |
Yeah seems like it. Pretty easily fixed using abstracts. I assume it's fine to remove that in that case? |
- HaxeFoundation#364 - HaxeFoundation#526 - Ensure `list` doesn't break with invalid directories in the repository - Ensure `list` doesn't show invalid versions - Ensure --skip-dependencies doesn't break installing from haxelib.json - Ensure --cwd works - Ensure specifying versions with run, path, and libpath commands works properly - Don't show update message if vcs lib was already up to date - Ensure order of output of `path` is correct - Ensure remove can't break dev path set inside git/hg version
- HaxeFoundation#364 - HaxeFoundation#526 - Ensure `list` doesn't break with invalid directories in the repository - Ensure `list` doesn't show invalid versions - Ensure --skip-dependencies doesn't break installing from haxelib.json - Ensure --cwd works - Ensure specifying versions with run, path, and libpath commands works properly HaxeFoundation#249 - Don't show update message if vcs lib was already up to date - Ensure order of output of `path` is correct - Ensure remove can't break dev path set inside git/hg version
- HaxeFoundation#364 - HaxeFoundation#526 - Ensure `list` doesn't break with invalid directories in the repository - Ensure `list` doesn't show invalid versions - Ensure --skip-dependencies doesn't break installing from haxelib.json - Ensure --cwd works - Ensure specifying versions with run, path, and libpath commands works properly HaxeFoundation#249 - Don't show update message if vcs lib was already up to date - Ensure order of output of `path` is correct - Ensure remove can't break dev path set inside git/hg version
- HaxeFoundation#364 - HaxeFoundation#526 - Ensure `list` doesn't break with invalid directories in the repository - Ensure `list` doesn't show invalid versions - Ensure --skip-dependencies doesn't break installing from haxelib.json - Ensure --cwd works - Ensure specifying versions with run, path, and libpath commands works properly HaxeFoundation#249 - Don't show update message if vcs lib was already up to date - Ensure order of output of `path` is correct - Ensure remove can't break dev path set inside git/hg version
- #364 - #526 - Ensure `list` doesn't break with invalid directories in the repository - Ensure `list` doesn't show invalid versions - Ensure --skip-dependencies doesn't break installing from haxelib.json - Ensure --cwd works - Ensure specifying versions with run, path, and libpath commands works properly #249 - Don't show update message if vcs lib was already up to date - Ensure order of output of `path` is correct - Ensure remove can't break dev path set inside git/hg version
Wow that just completely broke our build system :'( |
It was actually a feature, could this be revert ? I don't see an actual problem with allowing this as long as it doesn't happen in the common case. |
This is going to be complicated to revert... the version values used are now abstracts with strict validation rules 😅. How exactly have you been making use of this? |
All of our libs are stored in a single haxelib repo and so all the directories are in |
it's absolutely necessary for us to allow custom versions as we have our own system for managing libraries that use tags instead of versions since they are managed differently (no public release) |
Is there any chance you would be able to move to using But if not, which commands would have to support this? |
Users might also have .dev so we don't want these to overwrite the one in our repo. |
We're also getting the following:
I guess these two are related ? |
Is this still an issue if you're using a local repository? I assume The other warning is about fixing potential library name capitalisation issues, so it isn't related, however that command may have fail with the custom versions. |
We don't use local repos, it's a bit more custom/complex than that :) if we can just get the |
Alright, could you check if your builds work with 3a26569? It should work now, but I still need to add proper tests for it. I do still think however that this is more of a bug, and it's abusing the way haxelib works to handle dependencies in a way that would be better done by a custom tool. Can we say that if all the stuff from here is implemented for easier custom library paths we can disallow these extra cases? ;) |
Just to clarify, Regarding the |
I'm getting the following:
I think the Warning will cause a problem for Haxe compiler and should never be displayed with |
Uhm ok, running haxelib fixrepo creates a .repoversion set to 1, then haxelib path works. |
The warning is printed to stderr, while the compiler reads from stdout, so that should not be an issue. The details are described here. The fix is required (mostly on Linux) in order to make library names completely case insensitive for all haxelib commands. To summarise, it turns all library directories to be lowercase and adds Also, it is useful to show the warning there, because that way if |
While working on my PR to rewrite the client code, I noticed that it is currently possible to create a "custom" version of a library and use it. I am wondering whether it's ok to remove this to make the code make more sense or whether it was ever meant to be an actual feature?
Steps to reproduce:
custom
, or anything:haxelib set libname custom
Reasons why this shouldn't be allowed:
So, I see this as a bug, but I just wanted to confirm.
The text was updated successfully, but these errors were encountered: