Conversation
|
I think this is a good idea, better than #2010 |
|
Avoiding reimplementing haxelibs resolution logic seems like a good idea. A path overridden haxelib may have non-overridden dependencies. In that case, |
|
You're right, that's a bit less simple. I think f6deecb solves it, but it isn't very pretty. I guess it's time to bring up my other proposal: let's deprecate path overrides. Haxelib is fundamentally not designed to allow overriding a single path this way, and fighting it just opens up opportunities for incorrect behavior. Here's another example off the top of my head: And if the haxelib is accessed anywhere else in the build process, it certainly isn't going to use the hidden local repo. Luckily, most haxelibs aren't accessed from anywhere else, but Lime is, and overriding Lime's path breaks absolutely everything. Importantly, there are better tools for this. For one-off overrides, users could use |
By creating a few small files and setting the working directory, we can make Haxelib aware of a path override. This means we can call
haxelib pathdirectly, rather than trying to reimplement it.For now, I'm leaving the second block (the one that used to be the
elseblock), because otherwise it messes up the diff.