chore: depr vendor and leverage nimble#3682
Conversation
.github/workflows/ci.yml
Outdated
| uses: actions/checkout@v4 | ||
|
|
||
| - name: Install Nim | ||
| uses: jiro4989/setup-nim-action@v2 |
There was a problem hiding this comment.
instead of installing nim, it makes more sense to install nimble and have nimble manage nim.
Nim itself also needs to be locked down for a reproducible build.
There was a problem hiding this comment.
See also github.com/nim-lang/setup-nimble-action
There was a problem hiding this comment.
also, for a reproducible build, you need to lock the nimble version, which setup-nimble-action allows you to do.
waku.nimble
Outdated
| requires "nim >= 2.2.4" | ||
|
|
||
| # Pure Nim packages - pinned to exact commits via Nimble | ||
| requires "https://github.com/status-im/nim-chronicles#54f5b726025e8c7385e3a6529d3aa27454c6e6ff" |
There was a problem hiding this comment.
using requires this way will effectively prevent third-parties from depending on waku, unless they use the exact same commit of everything.
nimble lock can be used to produce a lock file that allows an application to use a locked set of deps while at the same time allowing others that depend on waku to be more flexible in the versions they use. For example, an application might want to use a newer version of chronicles for logging, and it's unreasonable for waku to limit this.
There was a problem hiding this comment.
Thanks for the idea. I’m now using nimble.lock to get an exact replica of the packages for the waku build.
7d8fbd3 to
351cac6
Compare
|
@darshankabariya FYI in this #3670 I bumped versions on nim-chronos and nim-libp2p which involves new deps: nim-lsquic and nim-jwt. |
685ba5c to
7d34b1e
Compare
Sure, will do. I tried earlier, but it failed. I need to resolve the conflict carefully now. |
d497532 to
7d34b1e
Compare
774bb40 to
dafdee9
Compare
f2476a2 to
2d40cb9
Compare
c6234e6 to
97b4665
Compare
353ffc1 to
5fd7c82
Compare
closes #3672