motoko-base icon indicating copy to clipboard operation
motoko-base copied to clipboard

Errors after updating to 0.14.10

Open altkdf opened this issue 6 months ago • 3 comments

The following error is returned by mops test after I upgrade to v0.14.10. v0.14.9 works without errors.

FAIL .mops/[email protected]/src/Nat32.mo:537:83: type error [M0072], field explodeNat32 does not exist in module.

See https://github.com/dfinity/vetkeys/actions/runs/15931177033/job/44940496526.

altkdf avatar Jun 27 '25 16:06 altkdf

in the logs the error is

 FAIL .mops/[email protected]/src/Nat32.mo:487:83: type error [M0072], field explodeNat32 does not exist in module.

which means that the moc version is too old compared to base. Make sure versions of moc and base match. If you are using dfx check which version of moc is bundled there and use the matching version of base:

$(dfx cache show)/moc --version

You can add it as an echo to your provision-linux.sh (and the darwin one) script so that you know which version is being installed

Kamirus avatar Jun 30 '25 07:06 Kamirus

Ah, it was indeed moc v0.14.8. Thanks for the clarification @Kamirus. That aside, though, shouldn't patch releases contain only non-breaking changes? 🤔 I'm mostly asking to confirm my own understanding.

altkdf avatar Jun 30 '25 07:06 altkdf

The current policy of base versioning is to exactly match versions from the moc compiler. Btw since you are using mops you might want to start using mo:core instead of mo:base. We want to replace base with core at some point but to avoid breaking changes for now we have both of these packages available

Kamirus avatar Jun 30 '25 08:06 Kamirus