Closed timotheecour closed 4 years ago
I cannot reproduce this failure with nim-1.2.0 or nim-devel..just copying your command line. What am I missing?
it only works/fails if older version of cligen is nimble installed
. you can see from traceback that it uses modules from different sources.
this sounds like another instance of https://github.com/nim-lang/Nim/pull/13868#issuecomment-618890814 which points to important_package's broken way of testing packages
nim -v e86a6d24d5ffe43e9dc7f230b80c274167376225
cd $dir
git clone https://github.com/c-blake/cligen.git cligen1 && cd cligen1
git checkout 71ce865a1af7d9db32e5fa0cd593a1bedcb0ddb2
nimble develop
cd $dir
git clone https://github.com/c-blake/cligen.git cligen2 && cd cligen2
nim c -o:cligenn -r -f cligen.nim # fails
nim c --path:. -o:cligenn -r -f cligen.nim # works
you may think this is silly, and indeed it is, but I think that's what's happening; not just to your package, this basically keeps breaking every few days for random packages.
this is very order-dependent (read: buggy), where package X depends on cligen at version N, but then cligen gets tested via version HEAD => bug.
simply passing --path:.
works in this specific case but isn't a real general fix because HEAD may also need to be installed to pickup new dependencies.
From
but expected one of:
proc specifierHighlight(fmt: string; pctTerm: set[char]; plain = false; pct = '%';
openBkt = {'{', '['}; closeBkt = {'}', ']'}): string
first type mismatch at position: 4
unknown named parameter: keepPct
The CI has somehow fetched a roughly 21 hr older version of humanUt.nim from this repo, and not the latest.
Well, I can punch the 0.9.46 release very soon. I was going to as soon as I heard back from @kaushalmodi this morning. Would that help since there would be a new tagged version? { It's definitely not designed to be cross compatible with old versions of itself. That's a crazy high bar... ;-) }
I certainly don't want to hold up the whole Nim CI procedures (which do sound too fragile).
The CI has somehow fetched a roughly 21 hr older version of humanUt.nim from this repo, and not the latest.
exactly what I'm diagnosing in https://github.com/nim-lang/Nim/pull/13868#issuecomment-618890814 : nimble installs latest tag, but tests latest HEAD
Would that help since there would be a new tagged version
yes it will fix it in this case, so good enough as a quick fix, but the underlying testament bug remains ...
It's definitely not designed to be cross compatible with old versions of itself. That's a crazy high bar
once testament is fixed that won't be needed (current bar is HEAD vs latest tag, not tag N vs tag N-1)
Ok. I am closing this issue since it's not really a cligen
package issue. Hopefully testament can be made more robust.
Well, I can punch the 0.9.46 release very soon. I was going to as soon as I heard back from @kaushalmodi this morning.
I am good with the release. The HEAD of this repo is working fine for me.
nim CI broke after a recent commit; this could be root caused by the broken way in which nim tests nimble packages; investigating ...
note: as of cligen 34578fc60d27da93d4873cdd838e449d00ac51f7
https://pipelines.actions.githubusercontent.com/ZRinn1OrR0LWxU3iWy1StaQcZRN2kXW9lHWwDJ3esfasrmfdRn/_apis/pipelines/1/runs/1087/signedlogcontent/3?urlExpires=2020-05-05T11%3A00%3A30.7579137Z&urlSigningMethod=HMACV1&urlSignature=kXw%2FA%2FnIdPvweqNFEOlAwrO582IYFVt7nrzz7ygwyoQ%3D
and indeed I can reproduce locally;
nim c -o:cligenn -r cligen.nim