0.22

[0.22.3]

Added

Changed

  • Wallet API method create_vesting_cdd_policy now have new arg: const fc::time_point_sec& start_claim.

  • Wallet API method get_account_addresses now accepting account name or id, not account id only.

  • vesting_balance_create_evaluator::do_evaluate changed.

  • Renamed Wallet API and Database API methods from 0.22.2: get_incentives_info -> get_current_incentives_info.

  • Removed sidechain_btc_block_process_operation.

  • Removed btc_block_object_type

  • Added block_number field to sidechain_btc_approve_aggregate_operation.

Fixed

  • Clang 12 compiler support.

  • Initial assets core_exchange rate

  • Feeds publishing for initial EETH and EBTC assets by committee members

  • Frozen balances revertion on node stopping that caused sync problems

Changed or added data structures

FC_REFLECT(echo::chain::sidechain_btc_approve_aggregate_operation,
(fee)(committee_member_id)(transaction_id)(block_number)(extensions))

[0.22.2]

Added

Changed

  • Renamed rewards_pool_object -> incentives_pool_object.

Fixed

  • Bad cast exception in wallet import_balance.

  • Use current block timestamp instead of last block in freezing balance and vesting.

  • SIGABORT after starting echo_wallet in Debug build type.

  • log_message throw time exception from boost.

  • Fix processing of missed blocks in btc sidechain.

  • Added missing balances to current supply calculation.

  • Fixed fc::canceled_exception on p2p connection destruction at another thread.

Changed or added data structures

FC_REFLECT_ENUM(echo::chain::impl_object_type,
(impl_global_property_object_type)
(impl_dynamic_global_property_object_type)
(impl_asset_dynamic_data_type)
(impl_asset_bitasset_data_type)
(impl_account_balance_object_type)
(impl_account_statistics_object_type)
(impl_transaction_dedupe_object_type)
(impl_block_summary_object_type)
(impl_account_transaction_history_object_type)
(impl_chain_property_object_type)
(impl_special_authority_object_type)
(impl_contract_balance_object_type)
(impl_contract_history_object_type)
(impl_contract_statistics_object_type)
(impl_account_address_object_type)
(impl_contract_pool_object_type)
(impl_malicious_committeemen_object_type)
(impl_incentives_pool_object_type)
)
FC_REFLECT_DERIVED(echo::chain::incentives_pool_object,
(echo::db::object),
(pool)
)
FC_REFLECT_DERIVED(echo::chain::btc_block_object,
(echo::chain::object),
(block_number)(is_approved)(approves)(extensions))
typedef std::variant<transfer_operation,
transfer_to_address_operation,
override_transfer_operation,
account_create_operation,
account_update_operation,
account_whitelist_operation,
account_address_create_operation,
asset_create_operation,
asset_update_operation,
asset_update_bitasset_operation,
asset_update_feed_producers_operation,
asset_issue_operation,
asset_reserve_operation,
asset_fund_fee_pool_operation,
asset_publish_feed_operation,
asset_claim_fees_operation,
proposal_create_operation,
proposal_update_operation,
proposal_delete_operation,
committee_member_create_operation,
committee_member_update_operation,
committee_member_update_global_parameters_operation,
committee_member_activate_operation,
committee_member_deactivate_operation,
committee_frozen_balance_deposit_operation,
committee_frozen_balance_withdraw_operation,
vesting_balance_create_operation,
vesting_balance_withdraw_operation,
balance_claim_operation,
balance_freeze_operation,
balance_unfreeze_operation,
request_balance_unfreeze_operation,
contract_create_operation,
contract_call_operation,
contract_internal_create_operation, // VIRTUAL
contract_internal_call_operation, // VIRTUAL
contract_selfdestruct_operation, // VIRTUAL
contract_update_operation,
contract_fund_pool_operation,
contract_whitelist_operation,
sidechain_eth_create_address_operation,
sidechain_eth_approve_address_operation,
sidechain_eth_deposit_operation,
sidechain_eth_send_deposit_operation,
sidechain_eth_withdraw_operation,
sidechain_eth_send_withdraw_operation,
sidechain_eth_approve_withdraw_operation,
sidechain_eth_update_contract_address_operation,
sidechain_issue_operation, // VIRTUAL
sidechain_burn_operation, // VIRTUAL
sidechain_erc20_register_token_operation,
sidechain_erc20_deposit_token_operation,
sidechain_erc20_send_deposit_operation,
sidechain_erc20_withdraw_token_operation,
sidechain_erc20_send_withdraw_operation,
sidechain_erc20_approve_token_withdraw_operation,
sidechain_erc20_issue_operation, // VIRTUAL
sidechain_erc20_burn_operation, // VIRTUAL
sidechain_btc_create_address_operation,
sidechain_btc_create_intermediate_deposit_operation,
sidechain_btc_intermediate_deposit_operation,
sidechain_btc_deposit_operation,
sidechain_btc_withdraw_operation,
sidechain_btc_aggregate_operation,
sidechain_btc_approve_aggregate_operation,
sidechain_btc_block_process_operation,
block_reward_operation, // VIRTUAL
evm_address_register_operation,
did_create_operation,
did_update_operation,
did_delete_operation>
operation;
FC_REFLECT(echo::chain::sidechain_btc_block_process_operation,
(fee)(committee_member_id)(block_number)(extensions))
FC_REFLECT(echo::chain::sidechain_btc_block_process_operation::fee_parameters_type, (fee))
FC_REFLECT_DERIVED(echo::chain::dynamic_global_property_object,
(echo::db::object),
(head_block_number)(head_block_id)(time)(next_maintenance_time)(last_budget_time)(committee_budget)
(dynamic_flags)(last_irreversible_block_num)(last_block_of_previous_interval)(last_processed_btc_block)(extensions))

[0.22.1]

Added

  • Some economy and echorand params restrinctions. economy_config.pool_divider, economy_config.blocks_in_interval, echorand_config._ok_threshold should be greater than 0.

Changed

  • Field address of eth_getLogs, eth_newFilter methods accept both single address or addresses array.

  • eth_getLogs, eth_newFilter methods could be called with null or without arguments.

  • Method get_block with 0 in argument return genesis block.

  • Method eth_chainId in ethrpc return uint_t instead of hash_t.

Fixed

  • Wallet methods which send transactions throw an error if key to sign hasn't imported.

  • Fees for contract operations.

[0.22.0]

Added

  • Object rewards_pool_object.

  • Operation request_unfreeze_balance_operation.

  • Wallet API method request_unfreeze_balance.

  • Field min_request_time to frozen_balance_object.

  • Field balance_unfreezing_time to chain_parameters.

  • Field economy_config to chain_parameters.

  • Field last_block_of_previous_interval to dynamic_global_property_object.

Changed

  • Field unfreeze_time in frozen_balance_object is optional now.

  • get_erc20_token method in wallet API may take as argument contract id in Echo network.

  • Creation and execution of x86_64 contract is currently disabled.

  • did_api is disabled.

  • API methods add_verifiable_credential, get_verifiable_credential_keywords, get_verifiable_credential, get_all_verifiable_credentials, get_did_object_key, get_verifiable_presentation, validate_verifiable_presentation, validate_verifiable_credential also is currently disabled.

  • did_create_operation, did_update_operation, did_delete_operation isn't execute now. If you try to send this operation, you would have exception Currently isn't supported.

Removed

  • help_method in wallet API. Now help with name of method do the same like help_method. If you want to get all methods, call help without arguments.

  • Field block_emission_amount in chain_parameters.

  • Field block_producer_reward_ratio in chain_parameters.

Changed or added data structures

FC_REFLECT_ENUM(echo::chain::impl_object_type,
(impl_global_property_object_type)
(impl_dynamic_global_property_object_type)
(impl_asset_dynamic_data_type)
(impl_asset_bitasset_data_type)
(impl_account_balance_object_type)
(impl_account_statistics_object_type)
(impl_transaction_dedupe_object_type)
(impl_block_summary_object_type)
(impl_account_transaction_history_object_type)
(impl_chain_property_object_type)
(impl_special_authority_object_type)
(impl_contract_balance_object_type)
(impl_contract_history_object_type)
(impl_contract_statistics_object_type)
(impl_account_address_object_type)
(impl_contract_pool_object_type)
(impl_malicious_committeemen_object_type)
(impl_rewards_pool_object_type)
)
FC_REFLECT_DERIVED(echo::chain::frozen_balance_object,
(echo::db::object),
(owner)
(balance)
(multiplier)
(min_request_time)
(unfreeze_time)
(extensions)
)
FC_REFLECT_DERIVED(echo::chain::dynamic_global_property_object,
(echo::db::object),
(head_block_number)
(head_block_id)
(time)
(next_maintenance_time)
(last_budget_time)
(committee_budget)
(dynamic_flags)
(last_irreversible_block_num)
(last_block_of_previous_interval)
(extensions)
)
typedef fc::static_variant<transfer_operation,
transfer_to_address_operation,
override_transfer_operation,
account_create_operation,
account_update_operation,
account_whitelist_operation,
account_address_create_operation,
asset_create_operation,
asset_update_operation,
asset_update_bitasset_operation,
asset_update_feed_producers_operation,
asset_issue_operation,
asset_reserve_operation,
asset_fund_fee_pool_operation,
asset_publish_feed_operation,
asset_claim_fees_operation,
proposal_create_operation,
proposal_update_operation,
proposal_delete_operation,
committee_member_create_operation,
committee_member_update_operation,
committee_member_update_global_parameters_operation,
committee_member_activate_operation,
committee_member_deactivate_operation,
committee_frozen_balance_deposit_operation,
committee_frozen_balance_withdraw_operation,
vesting_balance_create_operation,
vesting_balance_withdraw_operation,
balance_claim_operation,
balance_freeze_operation,
balance_unfreeze_operation,
request_balance_unfreeze_operation,
contract_create_operation,
contract_call_operation,
contract_internal_create_operation, // VIRTUAL
contract_internal_call_operation, // VIRTUAL
contract_selfdestruct_operation, // VIRTUAL
contract_update_operation,
contract_fund_pool_operation,
contract_whitelist_operation,
sidechain_eth_create_address_operation,
sidechain_eth_approve_address_operation,
sidechain_eth_deposit_operation,
sidechain_eth_send_deposit_operation,
sidechain_eth_withdraw_operation,
sidechain_eth_send_withdraw_operation,
sidechain_eth_approve_withdraw_operation,
sidechain_eth_update_contract_address_operation,
sidechain_issue_operation, // VIRTUAL
sidechain_burn_operation, // VIRTUAL
sidechain_erc20_register_token_operation,
sidechain_erc20_deposit_token_operation,
sidechain_erc20_send_deposit_operation,
sidechain_erc20_withdraw_token_operation,
sidechain_erc20_send_withdraw_operation,
sidechain_erc20_approve_token_withdraw_operation,
sidechain_erc20_issue_operation, // VIRTUAL
sidechain_erc20_burn_operation, // VIRTUAL
sidechain_btc_create_address_operation,
sidechain_btc_create_intermediate_deposit_operation,
sidechain_btc_intermediate_deposit_operation,
sidechain_btc_deposit_operation,
sidechain_btc_withdraw_operation,
sidechain_btc_aggregate_operation,
sidechain_btc_approve_aggregate_operation,
block_reward_operation, // VIRTUAL
evm_address_register_operation,
did_create_operation,
did_update_operation,
did_delete_operation> operation;
FC_REFLECT(echo::chain::chain_parameters,
(current_fees)
(maintenance_interval)
(maintenance_duration_seconds)
(balance_unfreezing_time)
(committee_proposal_review_period)
(maximum_transaction_size)
(maximum_block_size)
(maximum_time_until_expiration)
(maximum_proposal_lifetime)
(maximum_asset_whitelist_authorities)
(maximum_asset_feed_publishers)
(maximum_authority_membership)
(max_authority_depth)
(committee_frozen_balance_to_activate)
(committee_maintenance_intervals_to_deposit)
(committee_balance_unfreeze_duration_seconds)
(x86_64_maximum_contract_size)
(frozen_balances_multipliers)
(echorand_config)
(sidechain_config)
(erc20_config)
(gas_price)
(valid_fee_asset)
(economy_config)
(extensions)
)
FC_REFLECT(echo::economy::config,
(blocks_in_interval)
(maintenances_in_interval)
(block_emission_amount)
(block_producer_reward_ratio)
(pool_divider)
)
FC_REFLECT_DERIVED(echo::chain::rewards_pool_object,
(echo::db::object),
(pool)
)