0.9.0

Removed

  • egenesis

  • Plugin market_history

    • history_api::get_fill_order_history

    • history_api::get_market_history

    • history_api::get_market_history_buckets

  • crypto_api

    • crypto_api::blind_sign

    • crypto_api::unblind_signature

    • crypto_api::blind

    • crypto_api::blind_sum

    • crypto_api::verify_sum

    • crypto_api::verify_range

    • crypto_api::range_proof_sign

    • crypto_api::verify_range_proof_rewind

    • crypto_api::range_get_info)

    • login_api::crypto

  • Referral system, lifetime accounts and cashbacks

    • account_upgrade_operation

    • account_referrer_index

  • Markets

    • limit_order_object, call_order_object, collateral_bid_object

    • limit_order_create_operation, limit_order_cancel_operation, call_order_update_operation, fill_order_operation, bid_collateral_operation, execute_bid_operation

  • assert

    • assert_object, assert_operation

  • asset ops

    • Fields of asset_options: market_fee_percent, max_market_fee, whitelist_markets, blacklist_markets

    • Fields of bitasset_options: force_settlement_delay_sec, force_settlement_offset_percent, maximum_force_settlement_volume

    • Fields of asset_create_operation: is_prediction_market

    • asset_settle_operation, asset_global_settle_operation, asset_settle_cancel_operation

    • force_settlement_object

  • custom

    • custom_object, custom_operation

  • withdraw_permission

    • withdraw_permission_object

    • withdraw_permission_create_operation, withdraw_permission_update_operation, withdraw_permission_claim_operation, withdraw_permission_delete_operation

  • witness_object

  • Fields of account_object: membership_expiration_date, referrer, lifetime_referrer, lifetime_referrer_fee_percentage, referrer_rewards_percentage, cashback_vb

  • From fill_account(result database_api::get_full_accounts()):

    • Fields referrer, lifetime_referrer_name, cashback_balance, limit_orders, call_orders, settle_orders, withdraws

    • Methods is_lifetime_member, is_member

  • Fields of account_create_operation: referrer, referrer_percent

  • Fields of chain_parameters:

    • lifetime_referrer_percent_of_fee

    • lifetime_referrer_percent_of_fee

    • cashback_vesting_threshold

    • count_non_member_votes

    • allow_non_member_whitelists

    • fee_liquidation_threshold

  • Field genesis_state_type::initial_account_type::is_lifetime_member

  • Field dynamic_global_property_object::recent_slots_filled

  • Fields num_special_accounts и num_special_assets из immutable_chain_parameters

  • buyback_account_options

  • Methods wallet API: get_market_history, get_limit_orders, get_call_orders, get_settle_orders, get_collateral_bids, upgrade_account, transfer_count,sell_asset, sell, buy, borrow_asset, cancel_order, global_settle_asset, settle_asset, bid_collateral, set_key_label, get_key_label, get_public_key, get_order_book,

Renamed

  • base_contract_operation -> contract_base_operation

  • create_contract_operation -> contract_create_operation

  • call_contract_operation -> contract_call_operation

  • generate_eth_address_operation -> sidechain_eth_create_address_operation

  • create_eth_address_operation -> sidechain_eth_approve_address_operation

  • deposit_eth_operation -> sidechain_eth_deposit_operation

  • withdraw_eth_operation -> sidechain_eth_withdraw_operation

  • approve_withdraw_eth_operation -> sidechain_eth_approve_withdraw_operation

  • register_erc20_token_operation -> sidechain_erc20_register_token_operation

  • deposit_erc20_token_operation -> sidechain_erc20_deposit_token_operation

  • withdraw_erc20_token_operation -> sidechain_erc20_withdraw_token_operation

  • approve_erc20_token_withdraw_operation -> sidechain_erc20_approve_token_withdraw_operation

  • change_sidechain_config_operation -> sidechain_change_config_operation

  • sidechain_issue_operation -> sidechain_eth_issue_operation

  • sidechain_burn_operation -> sidechain_eth_burn_operation

Changed

  • Flag "create-genesis-json" now logs the built-in node genesis in datadir

  • Flag "example-genesis-json" performs the role of the past "create-genesis-json" - creates a sample of genesis in the specified path

  • The account registration plugin is now enabled by default

  • Any accounts can register new accounts

  • New block structure:

    • previous, round, timestamp, account, transaction_merkle_root, vm_root, prev_signatures

  • vm_root block is now a vector and stores of roots separately

  • Of method register_account in wallet API removed arguments referrer_account and referrer_percent

  • get_contract_logs, subscribe_contract_logs. The to parameter is replaced by limit. Now you can request logs for a maximum of 100 blocks.

Added

  • Mainnet and testnet presets now have built-in genesis

  • API manage encrypted node keys. Flag is enabled by "configure-keys"

  • Saving signatures of the previous block to the block for payments to verifiers

  • Method check_erc20_token in wallet API

List of operations

typedef fc::static_variant<
transfer_operation,
account_create_operation,
account_update_operation,
account_whitelist_operation,
account_transfer_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,
proposal_create_operation,
proposal_update_operation,
proposal_delete_operation,
committee_member_create_operation,
committee_member_update_operation,
committee_member_update_global_parameters_operation,
vesting_balance_create_operation,
vesting_balance_withdraw_operation,
balance_claim_operation,
override_transfer_operation,
asset_claim_fees_operation,
contract_create_operation,
contract_call_operation,
contract_transfer_operation,
sidechain_change_config_operation, // Temporary operation for tests
account_address_create_operation,
transfer_to_address_operation,
sidechain_eth_create_address_operation,
sidechain_eth_approve_address_operation,
sidechain_eth_deposit_operation,
sidechain_eth_withdraw_operation,
sidechain_eth_approve_withdraw_operation,
contract_fund_pool_operation,
contract_whitelist_operation,
sidechain_eth_issue_operation, // VIRTUAL
sidechain_eth_burn_operation, // VIRTUAL
sidechain_erc20_register_token_operation,
sidechain_erc20_deposit_token_operation,
sidechain_erc20_withdraw_token_operation,
sidechain_erc20_approve_token_withdraw_operation,
contract_update_operation
> operation;

List of object types

enum 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,
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,
OBJECT_TYPE_COUNT ///< Sentry value which contains the number of different object types
};
enum 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_object_type,
impl_block_summary_object_type,
impl_account_transaction_history_object_type,
impl_chain_property_object_type,
impl_budget_record_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
};