Skip to content

ICNativeClient 0.7.6

Choose a tag to compare

@humandebri humandebri released this 08 Sep 01:52
· 11 commits to main since this release
fed6a7b

Fixed

  • Bound Candid decoding work across shared-type resolution, normalization, and validation to prevent excessive expansion from small replies. Cached types also retain their nesting depth for limit checks.
  • Decode Candid from Data slices without assuming a zero-based index.
  • Accept padded Candid LEB128 encodings while retaining integer overflow, termination, and length checks. Encoded output remains unchanged.
  • Use sorted hash-tree label boundaries to recognize certified absence despite pruned sibling branches, allowing polling to continue and certified rejects without error_code to be returned.

Compatibility

  • Public APIs are unchanged. Candid inputs exceeding the fixed internal budget of 1,000,000 work units now throw ICClientError.invalidCandid, even if their encoded size is small.

Bundled ic-candid-swift-bindgen remains version 0.1.3.

Full changelog: 0.7.5...0.7.6