0.12

[0.12.1]

Added

  • Account object

    • Field uint16_t active_delegate_share

  • Registration API

    • Method get_registrar()

  • Solidity

    • Method edverify(address address, bytes data, bytes signatures) returns (bool)

  • echo_wallet

    • update_committee_member

Removed

  • Registration API

    • Method register_account

  • Wallet

    • Method register_account_with_proof

Changed

  • echo_wallet

    • Method create_committee_member

[0.12.0]

Added

  • Mechanism for changing the list of active committee members

    • Operations

      • committee_member_activate_operation

      • committee_member_deactivate_operation

      • committee_frozen_balance_deposit_operation

      • committee_frozen_balance_withdraw_operation

    • Object committee_frozen_balance_object

    • Fields committee_frozen_balance_to_activate, committee_maintenance_intervals_to_deposit, committee_freeze_duration_seconds to chain_parameters

    • Field deposit to committee_member_create_operation

    • Field last_committee_quit to committee_member_object

    • Field _maintenance_after_change to database

    • Database API methods get_committee_frozen_balance

    • Wallet API methods

      • get_committee_frozen_balance

      • committee_freeze_balance

      • create_activate_committee_member_proposal

      • create_deactivate_committee_member_proposal

      • committee_withdraw_balance

  • Tracking internal contract calls

    • Operations

      • contract_internal_create_operation

      • contract_internal_call_operation

      • contract_selfdestruct_operation

  • Bitcoin sidechain

    • Operation sidechain_btc_create_intermediate_deposit_operation

    • Field previous_aggregation to sidechain_btc_aggregate_operation

    • Field approves, is_sent, echo_block_number to btc_intermediate_deposit_object

  • Fields block_num, trx_num, op_num to log_entry for contracts

  • Field accumulated_reward to account_object

Changed

  • Bitcoin sidechain

    • Field name sma_out_value to aggregation_out_value in sidechain_btc_aggregate_operation

    • Type of field signature in sidechain_btc_intermediate_deposit_operation

    • Wallet API methods get_account_deposits, get_account_withdrawals works for two sidechains now

  • Database API methods

    • subscribe_contract_logs

    • get_contract_logs

    • create_log_entries_for_contracts

  • Field active_committee_members in global_property_object is map<committee_member_id_type, account_id_type> now

  • Field _subscribed_contract_logs in database API is map<contract_id_type, std::set<string>> now

  • Output and logs in the x86-64 from bytes to hex format for better readability

Removed

  • Operation contract_transfer_operation

  • Database API methods lookup_vote_ids

  • Wallet API methods set_desired_committee_member_count, vote_for_committee_member, set_voting_proxy

  • Field votes from full_account

  • Field vote_id, total_votes from committee_member_object

  • Fields _vote_tally_buffer, _committee_count_histogram_buffer, _total_voting_stake from database

  • Fields voting_account, num_committee, votes from account_options

Fixed

  • get_required_signatures minimize return signatures

  • Invalid fee_payer in sidechain_issue and sidechain_burn operations

  • Removed last_rand_quantity from dynamic_global_property_object

  • Fixed sidechain time coefficient

Updated solidity, EVM

Changed data structures

FC_REFLECT_ENUM( graphene::chain::object_type,
(null_object_type)
(base_object_type)
(account_object_type)
(asset_object_type)
(committee_member_object_type)
(proposal_object_type)
(operation_history_object_type)
(vesting_balance_object_type)
(balance_object_type)
(frozen_balance_object_type)
(committee_frozen_balance_object_type)
(contract_object_type)
(contract_result_object_type)
(block_result_object_type)
(eth_address_object_type)
(deposit_eth_object_type)
(withdraw_eth_object_type)
(erc20_token_object_type)
(deposit_erc20_token_object_type)
(withdraw_erc20_token_object_type)
(btc_address_object_type)
(btc_intermediate_deposit_object_type)
(btc_deposit_object_type)
(btc_withdraw_object_type)
(btc_aggregating_object_type)
)
FC_REFLECT(graphene::chain::chain_parameters,
(current_fees)
(maintenance_interval)
(maintenance_duration_seconds)
(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_committee_count)
(maximum_authority_membership)
(reserve_percent_of_fee)
(network_percent_of_fee)
(max_predicate_opcode)
(accounts_per_fee_scale)
(account_fee_scale_bitshifts)
(max_authority_depth)
(block_emission_amount)
(block_producer_reward_ratio)
(committee_frozen_balance_to_activate)
(committee_maintenance_intervals_to_deposit)
(committee_freeze_duration_seconds)
(frozen_balances_multipliers)
(echorand_config)
(sidechain_config)
(erc20_config)
(gas_price)
(extensions)
)
FC_REFLECT(echo::sidechain::config,
(eth_contract_address)
(eth_committee_update_method)
(eth_gen_address_method)
(eth_withdraw_method)
(eth_update_addr_method)
(eth_withdraw_token_method)
(eth_collect_tokens_method)
(eth_committee_updated_topic)
(eth_gen_address_topic)
(eth_deposit_topic)
(eth_withdraw_topic)
(erc20_deposit_topic)
(erc20_withdraw_topic)
(ETH_asset_id)
(BTC_asset_id)
(fines)
(gas_price)
(satoshis_per_byte)
(coefficient_waiting_blocks)
)
FC_REFLECT_DERIVED(graphene::chain::dynamic_global_property_object, (graphene::db::object),
(head_block_number)(head_block_id)(time)(next_maintenance_time)(last_budget_time)
(committee_budget)(accounts_registered_this_interval)(dynamic_flags)
(last_irreversible_block_num)(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, //VIRTUAL
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_withdraw_operation,
sidechain_eth_approve_withdraw_operation,
sidechain_issue_operation, // VIRTUAL
sidechain_burn_operation, // VIRTUAL
sidechain_erc20_register_token_operation,
sidechain_erc20_deposit_token_operation,
sidechain_erc20_withdraw_token_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_approve_withdraw_operation,
sidechain_btc_aggregate_operation,
block_reward_operation // VIRTUAL
> operation;