0.11.0
-
motoko (
moc)-
Warn on detection of unused identifiers (code
M0194) (#4377).- By design, warnings are not emitted for code imported from a package.
- A warning can be suppressed by replacing the identifier entirely by a wildcard
_,
or by prefixing it with an_, e.g. replacexby_x.
Limitations: recursive and mutually recursive definitions are considered used,
even if never referenced outside the recursive definition. -
Remove
__get_candid_interface_tmp_hackendpoint. Candid interface is already stored as canister metadata, this temporary endpoint is redundant, thus removed. (#4386) -
Improved capability system, introducing a synchronous (
system) capability (#4406).actorinitialisation body,pre/postupgradehooks,asyncfunction bodies (and
blocks) possess this capability. Functions (and classes) can demand it by prependingsystem
to the type argument list. The capability can be forwarded in calls by mentioning<system, …>
in the instantiation parameter list.BREAKING CHANGE (Minor): A few built-in functions have been marked with demand
for thesystemcapability. In order to call these, the full call hierarchy needs to be
adapted to pass thesystemcapability. -
Introduced the feature for precise tagging of scalar values (#4369).
Controlled by flag
--experimental-rtti(off by default). Minor performance changes for
arithmetic expected. We advise to only turn on the feature for testing, as currently no
productive upsides exist (though future improvements will depend on it), and performance
of arithmetic will degrade somewhat. See the PR for the whole picture.
-
-
motoko-base
- Added
Option.equalfunction (thanks to ByronBecker) (dfinity/motoko-base#615).
- Added