internet-computer-protocol / evm-rpc-canister

Interact with EVM blockchains from the Internet Computer.
https://internetcomputer.org/docs/current/developer-docs/multi-chain/ethereum/evm-rpc/overview
Apache License 2.0
63 stars 13 forks source link

Bump candid from 0.8.4 to 0.9.2 #27

Closed dependabot[bot] closed 1 year ago

dependabot[bot] commented 1 year ago

Bumps candid from 0.8.4 to 0.9.2.

Changelog

Sourced from candid's changelog.

2023-07-25 (Rust 0.9.2)

  • Fix error message for subtype::equal to report the correct missing label.
  • Recover subtype error from custom deserializer. This fixes some custom types for not applying special opt rule.
  • Fix Candid UI to support composite query.

2023-07-11

Rust (0.9.1)

  • utils::service_equal to check if two service are structurally equal under variable renaming.
  • utils::instantiate_candid to generate metadata from did file: separate init args, flatten imports. For now, comments in the original did file is not preserved.
  • impl From<Func/Service> trait for define_function/define_service macros.
  • Make bindings::candid::pp_args a public method.
  • Bump dependencies, notably pretty, logos and syn.

Candid UI

  • Bump agent-js to fix the new response code change
  • Bump candid to 0.9

didc

  • Add a strict mode for didc check which checks for structural equality instead of backward compatibility.

2023-06-30 (Rust 0.9.0)

Breaking changes:

  • Deserializer only checks subtyping for reference types, fully conforming to Candid spec 1.4. You can now decode opt variant even if the variant tags are not the same, allowing upgrading variant types without breaking the client code.
  • The old candid::Type is now candid::TypeInner, and Type is a newtype of Rc<TypeInner>. This change significantly improves deserialization performance (25% -- 50% improvements)
  • candid::parser module is only available under feature flag "parser". This significantly cuts down compilation time and Wasm binary size
  • Disable the use of candid::Func and candid::Service to avoid footguns. Use define_function! and define_service! macro instead
  • candid::parser::typing::TypeEnv moved to candid::types::TypeEnv. Use of candid::TypeEnv is not affected
  • candid::parser::types::FuncMode moved to candid::types::FuncMode
  • candid::parser::value moved to candid::types::value
  • candid::parser::pretty moved to candid::bindings::candid::value
  • Deprecate ToDoc trait for pretty printing IDLProg, use candid::bindings::candid module instead
  • Deprecate candid::codegen, use candid::bindings instead
  • In candid::bindings::rust, there is a Config struct to control how Rust bindings are generated

Non-breaking changes:

  • Macros for constructing type AST nodes: service!, func! and field!
  • Support future types
  • Bound recursion depth in deserialization for non-Wasm target (Wasm canister doesn't have a specified C ABI, and runs in a sandbox. It's okay to stack overflow)
  • Limit the size of vec null/reversed in deserialization
  • Nat serialization for JSON and CBOR
  • Support custom candid path for export_service!
  • Support composite_query function annotation
Commits


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
dependabot[bot] commented 1 year ago

Superseded by #29.