Skip to content

Releases: Concordium/concordium-base

concordium_base 9.0.0

29 Oct 13:00
d2a481f

Choose a tag to compare

Summary

Various incremental improvements.

Changes

  • Changed Debug implementation of secret keys and cleartext values to not print the key or value.
  • Removed ChainParameterVersionX types and the MintDistributionFamily, GASRewardsFamily and AuthorizationsFamily traits and their implementations.
  • Revised UpdateSigner implementations not to use references, since the one method (sign_update_hash) already takes a reference (&self).
  • Made find_authorized_keys public for easier re-use.
  • Changed value inside AttributeKind to be non-public since it has a length constraint. Implemented AttributeKind::try_new, AsRef<str> for AttributeKind and From<AttributeKind> for String
    to allow constructing and accessing values.
  • Added Eq and PartialEq instances for
    • UpdateKeysThreshold
    • InclusiveRange<T>
    • LeverageFactor
    • MintRate
    • CapitalBound
    • Ratio
    • HigherLevelAccessStructure<Kind>
    • AccessStructure

concordium_base_derive 1.1.0-alpha

06 Jun 13:13
d611b9a

Choose a tag to compare

Pre-release

Implements derive macros for CBOR serialization defined in concordium_base 8.0.0-alpha

concordium_base 8.0.0-alpha

06 Jun 13:10
d611b9a

Choose a tag to compare

Pre-release

Summary

Support the upcoming release of Concordium node 9.x and Concordium Protocol Version 9, which implements support for protocol level tokens (PLT).

Changes

  • Protocol level token events and reject reasons are now defined in concordium_base::protocol_level_tokens.
    Event and reject reasons CBOR can be decoded with TokenModuleEvent::decode_token_module_event_type or
    TokenModuleRejectReason::decode_reject_reason_type.
  • Transaction Payload now supports TokenGovernance payloads.
    Operations can be created using functions in concordium_base::protocol_level_tokens::operations
    and composed to transactions with send::token_governance_operations and construct::token_governance_operations.
  • Transaction Payload now supports TokenHolder payloads.
    Operations can be created using functions in concordium_base::protocol_level_tokens::operations
    and composed to transactions with send::token_holder_operations and construct::token_holder_operations.
    The underlying model for protocol level tokens is defined in concordium_base::protocol_level_tokens.
  • Publish get_canonical_address on AccountAddress
  • Introduce protocol version 9 ProtocolVersion::P9
  • Introduce basic types related to protocol level tokens (PLT)
    • RawCbor, TokenId, TokenAmount, TokenModuleRef.
    • Extend UpdatePayload with CreatePlt variant.

concordium-wasm 5.1.0

18 Mar 14:16
2648a62

Choose a tag to compare

Changes

  • Added public methods get_mod_name and get_item_name to ArtifactNamedImport

concordium-smart-contract-engine 6.1.0

18 Mar 14:16
2648a62

Choose a tag to compare

Changes

  • Removed TestResult and run_module_tests since they will be moved to cargo-concordium. As part of this TestHost.rng_used has been made public.
  • Support more smart contract host-functions in TestHost (used by cargo concordium test):
    • get_slot_time
    • get_receive_self_address
    • get_receive_self_balance
    • get_parameter_size
    • get_parameter_section
    • get_init_origin
    • get_receive_invoker
    • get_receive_sender
    • get_receive_owner
    • get_receive_entrypoint
    • get_receive_entrypoint_size
    • verify_ed25519_signature
    • verify_ecdsa_secp256k1_signature
    • hash_sha2_256
    • hash_sha3_256
    • hash_keccak_256
      Corresponding new host functions are introduced just for TestHost allowing for setting the result of the above:
    • set_slot_time
    • set_receive_self_address
    • set_receive_self_balance
    • set_parameter
    • set_init_origin
    • set_receive_invoker
    • set_receive_sender
    • set_receive_owner
    • set_receive_entrypoint
      Attempting to get a value before setting it will result in a runtime error.
      The following getters are also created just for the TestHost:
    • get_event
    • get_event_size

concordium_base 7.0.0

03 Feb 13:29
3a9fe5f

Choose a tag to compare

Summary

This release adds support for protocol version 8, which introduces (automatic) suspension of inactive validators.

Changes

  • Add getter function reward_period_epochs to access the field in the struct RewardPeriodLength.
  • Add constructor TokenAddress::new for CIS2 type TokenAddress.
  • Introduce new chain parameters ValidatorScoreParameters that contain the
    threshold of maximal missed rounds before a validator gets suspended.
  • Add Default instance for UpdateSequenceNumber.
  • Add FinalizationCommitteeHash type.

concordium-wasm 5.0.0

09 Sep 11:02
e83282f

Choose a tag to compare

Changes

  • Revise the compilation of Wasm modules to Artifacts. The notion of the
    executable artifact is changed to no longer work with a stack.
  • The Handler trait is revised to provide handle_opcode function information
    about reachability of the instruction that is being handled.
  • The Host trait is expanded to special-case instructions for resource
    accounting.
  • Introduce a new version of cost assignment that is to be used in protocol 7.

concordium-smart-contract-engine 6.0.0

09 Sep 11:04
a7ad459

Choose a tag to compare

Changes

  • Bump concordium-wasm to version 5 used by Concordium node version 7.0.0.
    • Changes Wasm to Artifact compilation, meaning already compiled Artifacts will need to be recompiled.
    • Introduces a new version of cost assignment used in Concordium Protocol Version 7.
  • Loose the minor version for concordium-contracts-common dependency.

concordium-contracts-common 9.2.0

26 Aug 14:20
5e148cf

Choose a tag to compare

Summary

Minor release adding a number of convenience features.

Changes

  • Add TryFrom implementation to convert &[u8] to AccountAddress, when feature derive-serde is enabled.
  • Derive serde::Serialize and serde::Serialize for PublicKeyEd25519 using
    FromStr and Display implementations, when feature derive-serde is
    enabled.
  • Derive Default on Amount (defaults to 0).

concordium_base 6.0.0

26 Aug 14:17
5e148cf

Choose a tag to compare

Summary

This release adds support for company identities and sponsored transactions (CIS3). Encrypted transfers are deprecated in this release as they are not supported from protocol version 7.

Changes

  • Extend id::types::ATTRIBUTE_NAMES with new company attribute tags: "legalName", "legalCountry", "businessNumber" and "registationAuth".
  • Add a new module cis3_types that defines the interface types for CIS3
    compatible contracts.
  • Fix discrepancy in (de)serializing Web3IdAttribute::Timestamps due to an unexpected breaking change introduced in version 0.4.32 of chrono.
  • concordium_base::ed25519 now also exports SigningKey to enable constructing KeyPair structs.
  • Deprecated various functions related to encrypted transfers, as encrypted transfers are no longer supported in protocol version 7.