-
Notifications
You must be signed in to change notification settings - Fork 6
can't run on Nim 1.6 due to the chronicles dependency #98
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
Conversation
594ab7e to
05a32c4
Compare
|
well, it can - it should pick an earlier chronicles version - what's needed is to update nimble |
Even the latest nimble wouldn't help with that as the testing command specifically wants the latest nim-metrics/.github/workflows/ci.yml Line 14 in ecf64c6
|
that's likely from before we started using tagged versions in chronicles and when nimble was completely broken - ie tagged releases of chronices were made only recently - we can remove |
|
getting closer - now all that's needed is a nimble override (using github.com/status-im/nimbus-common-workflow/pull/6) - alternatively, we should simply switch nimbus-build-system to always build our version of nimble. |
And with the latest commit, using the latest nimble: getting further away :'( |
|
ah interesting, looks like it doesn't pollute the compilation any more with system-installed packages, in the new mode cc @jmgomez is this intentional?
|
|
in the meantime, I think all relevant bugs were fixed by the time of the 0.20.1 release (which is where we fixed the version filtering I think) |
As mentioned in the discord channel, the fallback is only implemented in |
|
@narimiran if you dont want to update to |
That version is not in the tags/releases: https://github.com/nim-lang/nimble/tags. But I found it in the commit list: nim-lang/nimble@db52507 - let me try to use that one and see what breaks :) |
|
Yeah, its because we are not releasing it yet. It will become Better to use the latest commit though :) |
|
Both the latest commit and 0.99.0 are failing on all 1.6 runners. The 0.20.1 is failing only on Windows, other 1.6 runners are ok. |
|
hmm ok. Then I would recommend to stick to |
uh .. this doesn't make sense at all - why would windows be special in this regard? |
|
yeah, I saw - if we look at the logs, it goes on to install nim 2.2.4 which it shouldn't do, which is effectively the bug/feature in nimble. there's another way we can work around this problem for now, in when (NimMajor, NimMinor) < (2, 0):
taskRequires "test_chronicles", "chronicles < 0.12"If we do that hack, it should be a high nimble prio to make it "just work" without the explicit instruction (this approach obviously doesn't scale). |
|
Why the test task has |
This enables it, for example to be more effectively used within the
For example for what went wrong when |
|
@tersec I see. Im failing to see the fundamental change between nim 1.6.x and 2.x. It seams at some point they treated the flag If Im not missing another way to specify the paths to the old compiler (which may be the case, I saw some references to |
this also includes using the |
|
@narimiran notice the issue is in the project. Old nimble by default is |
this is, I guess, the root cause of some of the issues here - afair, no nim versions look for dependencies in local in fact, looking at the way the project is built, there's no way for this is also something to keep in mind for taskRequires - it needs to update the paths file while the task is running and then restore at the end of the task |
|
From my point of view, this PR can be (cleaned up and) merged:
Why it works for this Nimble commit and not for the newest one is an orthogonal Nimble problem, and shouldn't block merging of this PR. |
No description provided.