Repository navigation
v0.11.10
·
19 commits
to mainnet
since this release
What's Changed
This release includes the changes shipped in v0.11.9 (which was published to npm but not tagged on GitHub) as well as the v0.11.10 changes.
Features
- Default to the
edge.provable.com/apigateway (#1407). Everyhttps://api.provable.comdefault becomeshttps://edge.provable.com/api, which serves the same routes. This covers the RustDEFAULT_URL, live tests, CI,create-leo-apptemplates, the website, guides, and the generated API reference. Edge is key-optional with no JWT route, whileapi.provable.comremains the JWT gateway. - Auth normalization for a lone
apiKey(#1407). A stringapiKeyon its own now selectsapi-keymode and is sent asX-API-Keywith no JWT mint. Previously it fell intojwtmode, which could never mint without aconsumerId, so it only warned and sent nothing. A key paired with aconsumerId, or a barejwtData, still selectsjwtmode for the legacy gateway. - Reusable multi-program prepared processes (#1396). Adds
ProgramManager.prepareProcess()andPreparedProcess, so one snarkVM process can be warmed once with multiple programs (plus an optional superset of dynamic-dispatch imports) and then servebuildAuthorization,buildAuthorizationUnchecked, andprovingRequestfor any function in any loaded program via the newpreparedProcessoption. Program sources, editions, static imports, and transitive dependencies are resolved once during preparation.PreparedProcess.supports()and per-program metadata are exposed for compatibility checks, and supplied sources, editions, functions, and imports are validated before a process is reused. The existing function-scopedPreparedProgramAPI is unchanged. - Fee estimation reuses the prepared process (#1396). Private-fee proving requests now estimate fees on the already-resolved process instead of materializing import sources through JavaScript and constructing a second process.
Bug Fixes
- Honor injected JWTs on the legacy
api.provable.compaths (#1409).AleoNetworkClientno longer discards a directly assignedjwtData: a token with no recorded mint scope is treated as injected and sent as before, while tokens the client mints itself keep consumer and origin scoping.RecordScanner.setJwtData()now rebuilds auth likesetApiKeyandsetConsumerId, flipping intojwtmode when a token is supplied and back when it is cleared. A newapi.provable.com legacy compatibilitytest suite pins the pre-edge wire behavior. - Send session-injected JWTs in the
noneauth mode (v0.11.9). A scanner built with no credentials normalizes tononemode, which previously returned no headers even when a caller injected a token throughsetJwtData.nonemode now sends an injected token and still never mints. - Serialize prepared-context WASM access (#1396). Concurrent calls on the same prepared context are now queued instead of rejected, and the queue state is isolated per context, so a shared context can no longer trigger a WASM
RefCellborrow panic. - Accept built-in
credits.aleoin prepared processes and validate the canonical source (#1396).
Templates and CI
- The loyalty template drops its hand-rolled
/jwtsminting, lets the SDK handle both gateways, and no longer hard-requires an API key for delegated or scanner mode (#1407). - The loyalty and record scanner live suites run in the default
nonemode against edge; the scanner suite defaults to the edge scanner whenRECORD_SCANNER_URLis unset (#1407).
Dependencies
- Bump
nextfrom 15.5.21 to 15.5.24 (#1408) - Bump
browserslistfrom 4.28.1 to 4.28.9 (#1406) - Bump
js-yamlfrom 4.3.1 to 4.3.2 (#1405) - Bump
baseline-browser-mappingfrom 2.9.5 to 2.11.21 (#1403) - Bump
svgofrom 4.0.2 to 4.1.0 (#1402) - Bump
colordfrom 2.9.3 to 2.10.0 (#1401) - Bump
@humanfs/nodefrom 0.16.7 to 0.16.8 (#1399) - Bump
fast-urifrom 3.1.5 to 3.1.7 (#1398) - Bump
postcss-selector-parserfrom 7.1.1 to 7.1.5 (#1397) - Bump
brace-expansionfrom 1.1.16 to 1.1.18 (#1388)
Full Changelog: v0.11.8...v0.11.10