Closed arnetheduck closed 1 year ago
Can you elaborate on how the lockfile breaks Nim devel testing?
Even after Nim is locked in the lockfile, nimble commands such as nimble build
have the option --use-system-nim
which tells Nimble to use the first Nim executable found in the system PATH, so I would argue the Nim important packages use case is fully supported.
on our end, we've had CI build failures because of this for weeks without anyone taking action, and it's disrupting upstream's testing as well - the lock files have also been without maintainer for months - when there's maintenance in place and a strategy for handling the ensuing lock file churn, we can readd them but until then they disrupt day-to-day work (I'm happy to close this if a PR comes along that fixes all of the above, but until then..):
more of the same: https://github.com/status-im/nim-chronos/issues/337 (and similar issues elsewhere)
OK, I agree that the lockfiles need to be maintained and it's reasonable to temporarily remove them until the team starts to use the intended tooling. I've tasked @yyoncho with delivering an exemplar Nimble integration in the CI of LibP2P repo which will hopefully resolve some of the remaining contention points.
There was another way to "fix" the issue here though. You could have tried the new Nimble and/or the nim-workspace workflow and produced an up-to-date lockfile.
produced an up-to-date lockfile.
not quite, we need separate lock files for every nim version and significant updates to the CI scripts and a working solution for the upstream "important packages" for practically every project - this is not a 5-minute job but rather a complex task that requires dedicated time and effort.
The lock file breaks devel testing - CI updates are needed as well as a strategy for handling "nim important packages" builds (which build with a version of Nim different from that in the lock file)