All notable changes to this project will be documented in this file. The format is based on Keep a Changelog.
- Added
RewardsHandlingsupport to the execution engine - Added
RewardsHandlingfield to the structEngineConfig
- Add support for a factory pattern on the host side.
- struct casper_execution_engine::engine_state::engine_config::EngineConfig
- struct casper_execution_engine::engine_state::engine_config::EngineConfigBuilder
- const casper_execution_engine::engine_state::engine_config::DEFAULT_ALLOW_AUCTION_BIDS: bool
- const casper_execution_engine::engine_state::engine_config::DEFAULT_ALLOW_UNRESTRICTED_TRANSFERS: bool
- const casper_execution_engine::engine_state::engine_config::DEFAULT_BALANCE_HOLD_INTERVAL: casper_types::timestamp::TimeDiff
- const casper_execution_engine::engine_state::engine_config::DEFAULT_COMPUTE_REWARDS: bool
- const casper_execution_engine::engine_state::engine_config::DEFAULT_ENABLE_ENTITY: bool
- const casper_execution_engine::engine_state::engine_config::DEFAULT_MAXIMUM_DELEGATION_AMOUNT: u64
- const casper_execution_engine::engine_state::engine_config::DEFAULT_MAX_ASSOCIATED_KEYS: u32
- const casper_execution_engine::engine_state::engine_config::DEFAULT_MAX_DELEGATORS_PER_VALIDATOR: u32
- const casper_execution_engine::engine_state::engine_config::DEFAULT_MAX_QUERY_DEPTH: u64
- const casper_execution_engine::engine_state::engine_config::DEFAULT_MAX_RUNTIME_CALL_STACK_HEIGHT: u32
- const casper_execution_engine::engine_state::engine_config::DEFAULT_MAX_STORED_VALUE_SIZE: u32
- const casper_execution_engine::engine_state::engine_config::DEFAULT_MINIMUM_DELEGATION_AMOUNT: u64
- const casper_execution_engine::engine_state::engine_config::DEFAULT_PROTOCOL_VERSION: casper_types::protocol_version::ProtocolVersion
- const casper_execution_engine::engine_state::engine_config::DEFAULT_STRICT_ARGUMENT_CHECKING: bool
- const casper_execution_engine::engine_state::engine_config::DEFAULT_VESTING_SCHEDULE_LENGTH_MILLIS: u64
- enum casper_execution_engine::engine_state::Error
- enum casper_execution_engine::engine_state::ExecutableItem
- enum casper_execution_engine::engine_state::InvalidRequest
- enum casper_execution_engine::engine_state::SessionInputData<'a>
- struct casper_execution_engine::engine_state::BlockInfo
- struct casper_execution_engine::engine_state::EngineConfig
- struct casper_execution_engine::engine_state::EngineConfigBuilder
- struct casper_execution_engine::engine_state::ExecutionEngineV1
- struct casper_execution_engine::engine_state::SessionDataDeploy<'a>
- struct casper_execution_engine::engine_state::SessionDataV1<'a>
- struct casper_execution_engine::engine_state::WasmV1Request
- struct casper_execution_engine::engine_state::WasmV1Result
- const casper_execution_engine::engine_state::DEFAULT_MAX_QUERY_DEPTH: u64
- const casper_execution_engine::engine_state::DEFAULT_MAX_RUNTIME_CALL_STACK_HEIGHT: u32
- const casper_execution_engine::engine_state::MAX_PAYMENT_AMOUNT: u64
- const casper_execution_engine::engine_state::WASMLESS_TRANSFER_FIXED_GAS_PRICE: u8
- static casper_execution_engine::engine_state::MAX_PAYMENT: once_cell::sync::Lazy<casper_types::uint::macro_code::U512>
- enum casper_execution_engine::execution::ExecError
- enum casper_execution_engine::resolvers::error::ResolverError
- trait casper_execution_engine::resolvers::memory_resolver::MemoryResolver
- const casper_execution_engine::runtime::cryptography::DIGEST_LENGTH: usize
- fn casper_execution_engine::runtime::cryptography::blake2b<T: core::convert::AsRef<[u8]>>(data: T) -> [u8; 32]
- fn casper_execution_engine::runtime::cryptography::blake3<T: core::convert::AsRef<[u8]>>(data: T) -> [u8; 32]
- fn casper_execution_engine::runtime::cryptography::sha256<T: core::convert::AsRef<[u8]>>(data: T) -> [u8; 32]
- struct casper_execution_engine::runtime::stack::RuntimeStack
- struct casper_execution_engine::runtime::stack::RuntimeStackOverflow
- type casper_execution_engine::runtime::stack::RuntimeStackFrame = casper_types::system::caller::Caller
- enum casper_execution_engine::runtime::PreprocessingError
- enum casper_execution_engine::runtime::WasmValidationError
- struct casper_execution_engine::runtime::Runtime<'a, R>
- struct casper_execution_engine::runtime::RuntimeStack
- struct casper_execution_engine::runtime::RuntimeStackOverflow
- const casper_execution_engine::runtime::DEFAULT_BR_TABLE_MAX_SIZE: u32
- const casper_execution_engine::runtime::DEFAULT_MAX_GLOBALS: u32
- const casper_execution_engine::runtime::DEFAULT_MAX_PARAMETER_COUNT: u32
- const casper_execution_engine::runtime::DEFAULT_MAX_TABLE_SIZE: u32
- fn casper_execution_engine::runtime::cycles_for_instruction(instruction: &casper_wasm::elements::ops::Instruction) -> u32
- fn casper_execution_engine::runtime::preprocess(wasm_config: casper_types::chainspec::vm_config::wasm_config::WasmConfig, module_bytes: &[u8]) -> core::result::Result<casper_wasm::elements::module::Module, casper_execution_engine::runtime::PreprocessingError>
- type casper_execution_engine::runtime::RuntimeStackFrame = casper_types::system::caller::Caller
- enum casper_execution_engine::runtime_context::AllowInstallUpgrade
- struct casper_execution_engine::runtime_context::RuntimeContext<'a, R>
- const casper_execution_engine::runtime_context::RANDOM_BYTES_COUNT: usize
- struct casper_execution_engine::config::Config
- enum casper_execution_engine::core::engine_state::balance::BalanceResult
- struct casper_execution_engine::core::engine_state::balance::BalanceRequest
- struct casper_execution_engine::core::engine_state::chainspec_registry::ChainspecRegistry
- struct casper_execution_engine::core::engine_state::checksum_registry::ChecksumRegistry
- struct casper_execution_engine::core::engine_state::deploy_item::DeployItem
- enum casper_execution_engine::core::engine_state::engine_config::FeeHandling
- enum casper_execution_engine::core::engine_state::engine_config::RefundHandling
- struct casper_execution_engine::core::engine_state::engine_config::EngineConfig
- struct casper_execution_engine::core::engine_state::engine_config::EngineConfigBuilder
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_ALLOW_AUCTION_BIDS: bool
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_ALLOW_UNRESTRICTED_TRANSFERS: bool
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_FEE_HANDLING
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_MAX_ASSOCIATED_KEYS
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_MAX_QUERY_DEPTH
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_MAX_RUNTIME_CALL_STACK_HEIGHT
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_MAX_STORED_VALUE_SIZE
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_MINIMUM_BID_AMOUNT
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_MINIMUM_DELEGATION_AMOUNT
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_REFUND_HANDLING
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_STRICT_ARGUMENT_CHECKING
- const casper_execution_engine::core::engine_state::engine_config::DEFAULT_VESTING_SCHEDULE_LENGTH_MILLIS
- enum casper_execution_engine::core::engine_state::era_validators::GetEraValidatorsError
- struct casper_execution_engine::core::engine_state::era_validators::GetEraValidatorsRequest
- enum casper_execution_engine::core::engine_state::executable_deploy_item::ContractIdentifier
- enum casper_execution_engine::core::engine_state::executable_deploy_item::ContractPackageIdentifier
- enum casper_execution_engine::core::engine_state::executable_deploy_item::DeployKind
- enum casper_execution_engine::core::engine_state::executable_deploy_item::ExecutableDeployItem
- enum casper_execution_engine::core::engine_state::executable_deploy_item::ExecutionKind
- struct casper_execution_engine::core::engine_state::executable_deploy_item::ExecutableDeployItemDiscriminantsIter
- struct casper_execution_engine::core::engine_state::execute_request::ExecuteRequest
- struct casper_execution_engine::core::engine_state::execution_effect::ExecutionEffect
- enum casper_execution_engine::core::engine_state::execution_result::ExecutionResult
- enum casper_execution_engine::core::engine_state::execution_result::ForcedTransferResult
- struct casper_execution_engine::core::engine_state::execution_result::ExecutionResultBuilder
- type casper_execution_engine::core::engine_state::execution_result::ExecutionResults = alloc::collections::vec_deque::VecDeque<casper_execution_engine::core::engine_state::execution_result::ExecutionResult>
- enum casper_execution_engine::core::engine_state::genesis::GenesisAccount
- enum casper_execution_engine::core::engine_state::genesis::GenesisError
- struct casper_execution_engine::core::engine_state::genesis::AdministratorAccount
- struct casper_execution_engine::core::engine_state::genesis::ExecConfig
- struct casper_execution_engine::core::engine_state::genesis::ExecConfigBuilder
- struct casper_execution_engine::core::engine_state::genesis::GenesisConfig
- struct casper_execution_engine::core::engine_state::genesis::GenesisSuccess
- struct casper_execution_engine::core::engine_state::genesis::GenesisValidator
- const casper_execution_engine::core::engine_state::genesis::DEFAULT_AUCTION_DELAY: u64
- const casper_execution_engine::core::engine_state::genesis::DEFAULT_GENESIS_TIMESTAMP_MILLIS: u64
- const casper_execution_engine::core::engine_state::genesis::DEFAULT_LOCKED_FUNDS_PERIOD_MILLIS: u64
- const casper_execution_engine::core::engine_state::genesis::DEFAULT_ROUND_SEIGNIORAGE_RATE: num_rational::Ratio
- const casper_execution_engine::core::engine_state::genesis::DEFAULT_UNBONDING_DELAY: u64
- const casper_execution_engine::core::engine_state::genesis::DEFAULT_VALIDATOR_SLOTS: u32
- enum casper_execution_engine::core::engine_state::get_bids::GetBidsResult
- struct casper_execution_engine::core::engine_state::get_bids::GetBidsRequest
- enum casper_execution_engine::core::engine_state::op::Op
- enum casper_execution_engine::core::engine_state::query::QueryResult
- struct casper_execution_engine::core::engine_state::query::QueryRequest
- struct casper_execution_engine::core::engine_state::run_genesis_request::RunGenesisRequest
- enum casper_execution_engine::core::engine_state::step::StepError
- struct casper_execution_engine::core::engine_state::step::EvictItem
- struct casper_execution_engine::core::engine_state::step::RewardItem
- struct casper_execution_engine::core::engine_state::step::SlashItem
- struct casper_execution_engine::core::engine_state::step::StepRequest
- struct casper_execution_engine::core::engine_state::step::StepSuccess
- struct casper_execution_engine::core::engine_state::system_contract_registry::SystemContractRegistry
- enum casper_execution_engine::core::engine_state::upgrade::ProtocolUpgradeError
- struct casper_execution_engine::core::engine_state::upgrade::UpgradeConfig
- struct casper_execution_engine::core::engine_state::upgrade::UpgradeSuccess
- enum casper_execution_engine::core::engine_state::BalanceResult
- enum casper_execution_engine::core::engine_state::Error
- enum casper_execution_engine::core::engine_state::ExecError
- enum casper_execution_engine::core::engine_state::ExecutableDeployItem
- enum casper_execution_engine::core::engine_state::ExecutionResult
- enum casper_execution_engine::core::engine_state::ForcedTransferResult
- enum casper_execution_engine::core::engine_state::GenesisAccount
- enum casper_execution_engine::core::engine_state::GetBidsResult
- enum casper_execution_engine::core::engine_state::GetEraValidatorsError
- enum casper_execution_engine::core::engine_state::PruneResult
- enum casper_execution_engine::core::engine_state::QueryResult
- enum casper_execution_engine::core::engine_state::StepError
- enum casper_execution_engine::core::engine_state::TransferTargetMode
- struct casper_execution_engine::core::engine_state::BalanceRequest
- struct casper_execution_engine::core::engine_state::ChainspecRegistry
- struct casper_execution_engine::core::engine_state::ChecksumRegistry
- struct casper_execution_engine::core::engine_state::DeployItem
- struct casper_execution_engine::core::engine_state::EngineConfig
- struct casper_execution_engine::core::engine_state::EngineConfigBuilder
- struct casper_execution_engine::core::engine_state::EngineState
- struct casper_execution_engine::core::engine_state::ExecConfig
- struct casper_execution_engine::core::engine_state::ExecuteRequest
- struct casper_execution_engine::core::engine_state::GenesisConfig
- struct casper_execution_engine::core::engine_state::GenesisSuccess
- struct casper_execution_engine::core::engine_state::GetBidsRequest
- struct casper_execution_engine::core::engine_state::GetEraValidatorsRequest
- struct casper_execution_engine::core::engine_state::PruneConfig
- struct casper_execution_engine::core::engine_state::QueryRequest
- struct casper_execution_engine::core::engine_state::RewardItem
- struct casper_execution_engine::core::engine_state::RunGenesisRequest
- struct casper_execution_engine::core::engine_state::SlashItem
- struct casper_execution_engine::core::engine_state::StepRequest
- struct casper_execution_engine::core::engine_state::StepSuccess
- struct casper_execution_engine::core::engine_state::SystemContractRegistry
- struct casper_execution_engine::core::engine_state::TransferArgs
- struct casper_execution_engine::core::engine_state::TransferRuntimeArgsBuilder
- struct casper_execution_engine::core::engine_state::UpgradeConfig
- struct casper_execution_engine::core::engine_state::UpgradeSuccess
- const casper_execution_engine::core::engine_state::DEFAULT_MAX_QUERY_DEPTH: u64
- const casper_execution_engine::core::engine_state::DEFAULT_MAX_RUNTIME_CALL_STACK_HEIGHT: u32
- const casper_execution_engine::core::engine_state::MAX_PAYMENT_AMOUNT: u64
- const casper_execution_engine::core::engine_state::WASMLESS_TRANSFER_FIXED_GAS_PRICE: u64
- static casper_execution_engine::core::engine_state::MAX_PAYMENT: once_cell::sync::Lazy<casper_types::uint::macro_code::U512>
- enum casper_execution_engine::core::execution::Error
- enum casper_execution_engine::core::resolvers::error::ResolverError
- trait casper_execution_engine::core::resolvers::memory_resolver::MemoryResolver
- struct casper_execution_engine::core::runtime::stack::RuntimeStack
- struct casper_execution_engine::core::runtime::stack::RuntimeStackOverflow
- type casper_execution_engine::core::runtime::stack::RuntimeStackFrame = casper_types::system::call_stack_element::CallStackElement
- struct casper_execution_engine::core::runtime::Runtime<'a, R>
- struct casper_execution_engine::core::runtime_context::RuntimeContext<'a, R>
- const casper_execution_engine::core::runtime_context::RANDOM_BYTES_COUNT: usize
- fn casper_execution_engine::core::runtime_context::validate_group_membership(contract_package: &casper_types::contracts::ContractPackage, access: &casper_types::contracts::EntryPointAccess, validator: impl core::ops::function::Fn(&casper_types::uref::URef) -> bool) -> core::result::Result<(), casper_execution_engine::core::engine_state::ExecError>
- enum casper_execution_engine::core::tracking_copy::AddResult
- enum casper_execution_engine::core::tracking_copy::TrackingCopyQueryResult
- enum casper_execution_engine::core::tracking_copy::ValidationError
- struct casper_execution_engine::core::tracking_copy::TrackingCopy
- struct casper_execution_engine::core::tracking_copy::TrackingCopyCache
- trait casper_execution_engine::core::tracking_copy::TrackingCopyExt
- fn casper_execution_engine::core::tracking_copy::validate_balance_proof(hash: &casper_hashing::Digest, balance_proof: &casper_execution_engine::storage::trie::merkle_proof::TrieMerkleProof<casper_types::key::Key, casper_types::stored_value::StoredValue>, expected_purse_key: casper_types::key::Key, expected_motes: &casper_types::uint::macro_code::U512) -> core::result::Result<(), casper_execution_engine::core::tracking_copy::ValidationError>
- fn casper_execution_engine::core::tracking_copy::validate_query_proof(hash: &casper_hashing::Digest, proofs: &[casper_execution_engine::storage::trie::merkle_proof::TrieMerkleProof<casper_types::key::Key, casper_types::stored_value::StoredValue>], expected_first_key: &casper_types::key::Key, path: &[alloc::string::String], expected_value: &casper_types::stored_value::StoredValue) -> core::result::Result<(), casper_execution_engine::core::tracking_copy::ValidationError>
- enum casper_execution_engine::core::ValidationError
- const casper_execution_engine::core::ADDRESS_LENGTH: usize
- fn casper_execution_engine::core::validate_balance_proof(hash: &casper_hashing::Digest, balance_proof: &casper_execution_engine::storage::trie::merkle_proof::TrieMerkleProof<casper_types::key::Key, casper_types::stored_value::StoredValue>, expected_purse_key: casper_types::key::Key, expected_motes: &casper_types::uint::macro_code::U512) -> core::result::Result<(), casper_execution_engine::core::tracking_copy::ValidationError>
- fn casper_execution_engine::core::validate_query_proof(hash: &casper_hashing::Digest, proofs: &[casper_execution_engine::storage::trie::merkle_proof::TrieMerkleProof<casper_types::key::Key, casper_types::stored_value::StoredValue>], expected_first_key: &casper_types::key::Key, path: &[alloc::string::String], expected_value: &casper_types::stored_value::StoredValue) -> core::result::Result<(), casper_execution_engine::core::tracking_copy::ValidationError>
- type casper_execution_engine::core::Address = [u8; 32]
- struct casper_execution_engine::shared::additive_map::AdditiveMap<K, V, S>
- struct casper_execution_engine::shared::execution_journal::ExecutionJournal
- struct casper_execution_engine::shared::host_function_costs::HostFunction
- struct casper_execution_engine::shared::host_function_costs::HostFunctionCosts
- type casper_execution_engine::shared::host_function_costs::Cost = u32
- enum casper_execution_engine::shared::logging::Style
- struct casper_execution_engine::shared::logging::Settings
- fn casper_execution_engine::shared::logging::initialize(settings: casper_execution_engine::shared::logging::Settings) -> core::result::Result<(), log::SetLoggerError>
- fn casper_execution_engine::shared::logging::log_details(_log_level: log::Level, _message_format: alloc::string::String, _properties: alloc::collections::btree::map::BTreeMap<&str, alloc::string::String>)
- fn casper_execution_engine::shared::logging::log_host_function_metrics(_host_function: &str, _properties: alloc::collections::btree::map::BTreeMap<&str, alloc::string::String>)
- struct casper_execution_engine::shared::newtypes::CorrelationId
- struct casper_execution_engine::shared::opcode_costs::BrTableCost
- struct casper_execution_engine::shared::opcode_costs::ControlFlowCosts
- struct casper_execution_engine::shared::opcode_costs::OpcodeCosts
- const casper_execution_engine::shared::opcode_costs::DEFAULT_ADD_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_BIT_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONST_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_BLOCK_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_BR_IF_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_BR_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_BR_TABLE_MULTIPLIER: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_BR_TABLE_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_CALL_INDIRECT_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_CALL_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_DROP_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_ELSE_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_END_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_IF_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_LOOP_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_RETURN_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONTROL_FLOW_SELECT_OPCODE: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CONVERSION_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_CURRENT_MEMORY_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_DIV_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_GLOBAL_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_GROW_MEMORY_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_INTEGER_COMPARISON_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_LOAD_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_LOCAL_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_MUL_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_NOP_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_STORE_COST: u32
- const casper_execution_engine::shared::opcode_costs::DEFAULT_UNREACHABLE_COST: u32
- struct casper_execution_engine::shared::storage_costs::StorageCosts
- const casper_execution_engine::shared::storage_costs::DEFAULT_GAS_PER_BYTE_COST: u32
- struct casper_execution_engine::shared::system_config::auction_costs::AuctionCosts
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_ACTIVATE_BID_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_ADD_BID_COST: u64
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_DELEGATE_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_DISTRIBUTE_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_GET_ERA_VALIDATORS_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_READ_ERA_ID_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_READ_SEIGNIORAGE_RECIPIENTS_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_REDELEGATE_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_RUN_AUCTION_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_SLASH_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_UNDELEGATE_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_WITHDRAW_BID_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_WITHDRAW_DELEGATOR_REWARD_COST: u32
- const casper_execution_engine::shared::system_config::auction_costs::DEFAULT_WITHDRAW_VALIDATOR_REWARD_COST: u32
- struct casper_execution_engine::shared::system_config::handle_payment_costs::HandlePaymentCosts
- const casper_execution_engine::shared::system_config::handle_payment_costs::DEFAULT_FINALIZE_PAYMENT_COST: u32
- const casper_execution_engine::shared::system_config::handle_payment_costs::DEFAULT_GET_PAYMENT_PURSE_COST: u32
- const casper_execution_engine::shared::system_config::handle_payment_costs::DEFAULT_GET_REFUND_PURSE_COST: u32
- const casper_execution_engine::shared::system_config::handle_payment_costs::DEFAULT_SET_REFUND_PURSE_COST: u32
- struct casper_execution_engine::shared::system_config::mint_costs::MintCosts
- const casper_execution_engine::shared::system_config::mint_costs::DEFAULT_BALANCE_COST: u32
- const casper_execution_engine::shared::system_config::mint_costs::DEFAULT_CREATE_COST: u32
- const casper_execution_engine::shared::system_config::mint_costs::DEFAULT_MINT_COST: u32
- const casper_execution_engine::shared::system_config::mint_costs::DEFAULT_MINT_INTO_EXISTING_PURSE_COST: u32
- const casper_execution_engine::shared::system_config::mint_costs::DEFAULT_READ_BASE_ROUND_REWARD_COST: u32
- const casper_execution_engine::shared::system_config::mint_costs::DEFAULT_REDUCE_TOTAL_SUPPLY_COST: u32
- const casper_execution_engine::shared::system_config::mint_costs::DEFAULT_TRANSFER_COST: u32
- struct casper_execution_engine::shared::system_config::standard_payment_costs::StandardPaymentCosts
- struct casper_execution_engine::shared::system_config::SystemConfig
- const casper_execution_engine::shared::system_config::DEFAULT_WASMLESS_TRANSFER_COST: u32
- fn casper_execution_engine::shared::test_utils::mocked_account(account_hash: casper_types::account::account_hash::AccountHash) -> alloc::vec::Vec<(casper_types::key::Key, casper_types::stored_value::StoredValue)>
- enum casper_execution_engine::shared::transform::Error
- enum casper_execution_engine::shared::transform::Transform
- static casper_execution_engine::shared::utils::OS_PAGE_SIZE: once_cell::sync::Lazy
- fn casper_execution_engine::shared::utils::check_multiple_of_page_size(value: usize)
- fn casper_execution_engine::shared::utils::jsonify(value: T, pretty_print: bool) -> alloc::string::String where T: serde::ser::Serialize
- struct casper_execution_engine::shared::wasm_config::WasmConfig
- const casper_execution_engine::shared::wasm_config::DEFAULT_MAX_STACK_HEIGHT: u32
- const casper_execution_engine::shared::wasm_config::DEFAULT_WASM_MAX_MEMORY: u32
- enum casper_execution_engine::shared::wasm_prep::PreprocessingError
- enum casper_execution_engine::shared::wasm_prep::WasmValidationError
- const casper_execution_engine::shared::wasm_prep::DEFAULT_BR_TABLE_MAX_SIZE: u32
- const casper_execution_engine::shared::wasm_prep::DEFAULT_MAX_GLOBALS: u32
- const casper_execution_engine::shared::wasm_prep::DEFAULT_MAX_PARAMETER_COUNT: u32
- const casper_execution_engine::shared::wasm_prep::DEFAULT_MAX_TABLE_SIZE: u32
- fn casper_execution_engine::shared::wasm_prep::deserialize(module_bytes: &[u8]) -> core::result::Result<casper_wasm::elements::module::Module, casper_execution_engine::shared::wasm_prep::PreprocessingError>
- fn casper_execution_engine::shared::wasm_prep::get_module_from_entry_points(entry_point_names: alloc::vec::Vec<&str>, module: casper_wasm::elements::module::Module) -> core::result::Result<alloc::vec::Vec, casper_execution_engine::core::engine_state::ExecError>
- fn casper_execution_engine::shared::wasm_prep::preprocess(wasm_config: casper_execution_engine::shared::wasm_config::WasmConfig, module_bytes: &[u8]) -> core::result::Result<casper_wasm::elements::module::Module, casper_execution_engine::shared::wasm_prep::PreprocessingError>
- enum casper_execution_engine::storage::error::in_memory::Error
- enum casper_execution_engine::storage::error::lmdb::Error
- enum casper_execution_engine::storage::error::Error
- struct casper_execution_engine::storage::global_state::in_memory::InMemoryGlobalState
- struct casper_execution_engine::storage::global_state::lmdb::LmdbGlobalState
- struct casper_execution_engine::storage::global_state::scratch::ScratchGlobalState
- enum casper_execution_engine::storage::global_state::CommitError
- trait casper_execution_engine::storage::global_state::CommitProvider: casper_execution_engine::storage::global_state::StateProvider
- trait casper_execution_engine::storage::global_state::StateProvider
- trait casper_execution_engine::storage::global_state::StateReader<K, V>
- fn casper_execution_engine::storage::global_state::commit<'a, R, S, H, E>(environment: &'a R, store: &S, correlation_id: casper_execution_engine::shared::newtypes::CorrelationId, prestate_hash: casper_hashing::Digest, effects: casper_execution_engine::shared::additive_map::AdditiveMap<casper_types::key::Key, casper_execution_engine::shared::transform::Transform, H>) -> core::result::Result<casper_hashing::Digest, E> where R: casper_execution_engine::storage::transaction_source::TransactionSource<'a, Handle =
::Handle>, S: casper_execution_engine::storage::trie_store::TrieStore<casper_types::key::Key, casper_types::stored_value::StoredValue>,::Error: core::convert::From<::Error>, E: core::convert::From<::Error> + core::convert::From<::Error> + core::convert::From<casper_types::bytesrepr::Error> + core::convert::From<casper_execution_engine::storage::global_state::CommitError>, H: core::hash::BuildHasher - fn casper_execution_engine::storage::global_state::put_stored_values<'a, R, S, E>(environment: &'a R, store: &S, correlation_id: casper_execution_engine::shared::newtypes::CorrelationId, prestate_hash: casper_hashing::Digest, stored_values: std::collections::hash::map::HashMap<casper_types::key::Key, casper_types::stored_value::StoredValue>) -> core::result::Result<casper_hashing::Digest, E> where R: casper_execution_engine::storage::transaction_source::TransactionSource<'a, Handle =
::Handle>, S: casper_execution_engine::storage::trie_store::TrieStore<casper_types::key::Key, casper_types::stored_value::StoredValue>,::Error: core::convert::From<::Error>, E: core::convert::From<::Error> + core::convert::From<::Error> + core::convert::From<casper_types::bytesrepr::Error> + core::convert::From<casper_execution_engine::storage::global_state::CommitError> - trait casper_execution_engine::storage::store::Store<K, V>
- trait casper_execution_engine::storage::store::StoreExt<K, V>: casper_execution_engine::storage::store::Store<K, V>
- struct casper_execution_engine::storage::transaction_source::in_memory::InMemoryEnvironment
- struct casper_execution_engine::storage::transaction_source::in_memory::InMemoryReadTransaction
- struct casper_execution_engine::storage::transaction_source::in_memory::InMemoryReadWriteTransaction<'a>
- struct casper_execution_engine::storage::transaction_source::lmdb::LmdbEnvironment
- trait casper_execution_engine::storage::transaction_source::Readable: casper_execution_engine::storage::transaction_source::Transaction
- trait casper_execution_engine::storage::transaction_source::Transaction: core::marker::Sized
- trait casper_execution_engine::storage::transaction_source::TransactionSource<'a>
- trait casper_execution_engine::storage::transaction_source::Writable: casper_execution_engine::storage::transaction_source::Transaction
- fn casper_execution_engine::storage::transaction_source::Writable::write(&mut self, handle: Self::Handle, key: &[u8], value: &[u8]) -> core::result::Result<(), Self::Error>
- impl<'a> casper_execution_engine::storage::transaction_source::Writable for lmdb::transaction::RwTransaction<'a>
- fn lmdb::transaction::RwTransaction<'a>::write(&mut self, handle: Self::Handle, key: &[u8], value: &[u8]) -> core::result::Result<(), Self::Error>
- enum casper_execution_engine::storage::trie::merkle_proof::TrieMerkleProofStep
- struct casper_execution_engine::storage::trie::merkle_proof::TrieMerkleProof<K, V>
- enum casper_execution_engine::storage::trie::DescendantsIterator<'a>
- enum casper_execution_engine::storage::trie::Pointer
- enum casper_execution_engine::storage::trie::Trie<K, V>
- struct casper_execution_engine::storage::trie::PointerBlock
- struct casper_execution_engine::storage::trie::TrieRaw
- type casper_execution_engine::storage::trie::Parents<K, V> = alloc::vec::Vec<(u8, casper_execution_engine::storage::trie::Trie<K, V>)>
- type casper_execution_engine::storage::trie::PointerBlockArray = [casper_execution_engine::storage::trie::PointerBlockValue; 256]
- type casper_execution_engine::storage::trie::PointerBlockValue = core::option::Option<casper_execution_engine::storage::trie::Pointer>
- struct casper_execution_engine::storage::trie_store::in_memory::InMemoryTrieStore
- struct casper_execution_engine::storage::trie_store::lmdb::LmdbTrieStore
- trait casper_execution_engine::storage::trie_store::TrieStore<K, V>: casper_execution_engine::storage::store::Store<casper_hashing::Digest, casper_execution_engine::storage::trie::Trie<K, V>>
- macro casper_execution_engine::make_array_newtype!
- Change the cost of
wasm.storage_costs.gas_per_byteandshared::storage_costs::DEFAULT_GAS_PER_BYTE_COSTfrom630_000to1_117_587. - Change the cost of the host function
casper_add_associated_keyfrom9_000to1_200_000. - Change the cost of the argument
entry_points_sizeof host functioncasper_add_contract_versionfrom0to120_000. - Change the cost of the host function
casper_blake2band its argumentin_sizefrom200and0respectively to1_200_000to120_000. - Change the cost of the host function
casper_call_contractand its argumentsentry_point_name_sizeandruntime_args_sizefrom4_500,0and420respectively to300_000_000,120_000and120_000. - Change the cost of the host function
casper_call_versioned_contractand the argumentsentry_point_name_sizeandruntime_args_sizefrom4_500,0and420respectively to300_000_000,120_000and120_000. - Change the cost of the host function
casper_get_balancefrom3_800to3_000_000. - Change the cost of arguments
name_sizeanddest_sizeof host functioncasper_get_named_argfrom0to120_000. - Change the cost of the host function
casper_put_keyand its argumentsname_sizeandkey_sizefrom38_000,1_100and0respectively to100_000_000,120_000and120_000. - Change the cost of the host function
casper_read_valueand its argumentkey_sizefrom6_000and0respectively to60_000and120_000. - Change the cost of the argument
urefs_sizeof host functioncasper_remove_contract_user_group_urefsfrom0to120_000. - Change the cost of the host function
casper_transfer_from_purse_to_pursefrom82_000to82_000_000.
Unreleased (node 1.5.4)
- Add chainspec option
core.allow_unrestricted_transfersthat, if enabled, allows token transfers between any two peers. Disabling this option makes sense only for private chains. - Add chainspec option
core.allow_auction_bidsthat, if enabled, allows auction entrypointsdelegateandadd_bidto operate. Disabling this option makes sense only for private chains. - Add chainspec option
core.compute_rewardsthat, if enabled, computes rewards for each era. Disabling this option makes sense only for private chains. - Add chainspec option
core.refund_handlingthat specifies how payment refunds are handled. - Add chainspec option
core.fee_handlingthat specifies how transaction fees are handled. - Add chainspec option
core.administratorsthat, if set, contains list of administrator accounts. This option makes sense only for private chains. - Add support for a new FFI function
enable_contract_versionfor enabling a specific version of a contract.
current stack heightis written tostderrin caseTrap(Unreachable)error is encountered during Wasm execution.- Tweak upgrade logic transforming withdraw purses to early exit if possible.
- Lower the default gas costs of opcodes.
- Set the cost for branching opcodes to 35,000 (
br,br_if,br_table). - Set the cost for call opcodes to 68,000 (
call,call_indirect).
- Set the cost for branching opcodes to 35,000 (
- Default value for round seigniorage rate is halved to
7/175070816due to reduction in block times, to maintain current seigniorage rate (per unit of time). - Refund ratio is changed from 0% to 99%.
- Default value for
max_stack_heightis increased to 500. - Replace usage of
parity-wasmandwasmiwith Casper forkscasper-wasmandcasper-wasmirespectively.
- Fix incorrect handling of unbonding purses for validators that were also evicted in that era.
- Fix issue with one-time code used for migrating data to support redelegations.
- Fix unbounded memory allocation issue while parsing Wasm.
- Add a new entry point
redelegateto the Auction system contract which allows users to redelegate to another validator without having to unbond. The function signature for the entrypoint is:redelegate(delegator: PublicKey, validator: PublicKey, amount: U512, new_validator: PublicKey) - Add a new type
ChainspecRegistrywhich contains the hashes of thechainspec.tomland will optionally contain the hashes foraccounts.tomlandglobal_state.toml. - Add ability to enable strict args checking when executing a contract; i.e. that all non-optional args are provided and of the correct
CLType.
- Fix some integer casts.
- Change both genesis and upgrade functions to write
ChainspecRegistryunder the fixedKey::ChainspecRegistry. - Lift the temporary limit of the size of individual values stored in global state.
- Providing incorrect Wasm for execution will cause the default 2.5CSPR to be charged.
- Update the default
control_flowopcode cost from440to440_000.
- Update dependencies (in particular
casper-typesto v2.0.0 due to additionalKeyvariant, requiring a major version bump here).
- Update the following constant values to match settings in production chainspec:
DEFAULT_RET_VALUE_SIZE_WEIGHTDEFAULT_CONTROL_FLOW_CALL_OPCODEDEFAULT_CONTROL_FLOW_CALL_INDIRECT_OPCODEDEFAULT_GAS_PER_BYTE_COSTDEFAULT_ADD_BID_COSTDEFAULT_WITHDRAW_BID_COSTDEFAULT_DELEGATE_COSTDEFAULT_UNDELEGATE_COSTDEFAULT_MAX_STACK_HEIGHT
- Add
commit_prunefunctionality to support pruning of entries in global storage.
- Update to use
casper-wasm-utils; a patched fork of the archivedwasm-utils.
- Implement more precise control over opcode costs that lowers the gas cost.
- Increase cost of
withdraw_bidandundelegateauction entry points to 2.5CSPR.
- Implement checks before preprocessing Wasm to avoid potential OOM when initializing table section.
- Implement checks before preprocessing Wasm to avoid references to undeclared functions or globals.
- Implement checks before preprocessing Wasm to avoid possibility to import internal host functions.
- Change contract runtime to allow caching global state changes during execution of a single block, also avoiding writing interstitial data to global state.
- Temporarily limit the size of individual values stored in global state.
amountargument is now required for transactions wanting to send tokens using account's main purse. It is now an upper limit on all tokens being transferred within the transaction.- Significant rework around the responsibilities of the executor, runtime and runtime context objects, with a focus on removing alternate execution paths where unintended escalation of privilege was possible.
- Attenuate the main purse URef to remove WRITE permissions by default when returned via
retor passed as a runtime argument. - Fix a potential panic during Wasm preprocessing.
get_era_validatorsperforms a query rather than execution.
- No longer checksum-hex encode hash digest and address types.
- Auction contract now handles minting into an existing purse.
- Default maximum stack size in
WasmConfigchanged to 188. - Default behavior of LMDB changed to use
NO_READAHEAD
- Fix a case where an unlocked and partially unbonded genesis validator with smaller stake incorrectly occupies slot for a non-genesis validator with higher stake.
1.4.2 - 2021-11-11
- Execution transforms are returned in their insertion order.
- Removed
SystemContractCacheas it was not being used anymore
1.4.0 - 2021-10-04
- Added genesis validation step to ensure there are more genesis validators than validator slots.
- Added a support for passing a public key as a
targetargument in native transfers. - Added a
max_associated_keysconfiguration option for a hard limit of associated keys under accounts.
- Documented
storagemodule and children. - Reduced visibility to
pub(crate)in several areas, allowing some dead code to be noticed and pruned. - Support building and testing using stable Rust.
- Increase price of
create_purseto 2.5CSPR. - Increase price of native transfer to 100 million motes (0.1 CSPR).
- Improve doc comments to clarify behavior of the bidding functionality.
- Document
coreandsharedmodules and their children. - Change parameters to
LmdbEnvironment's constructor enabling manual flushing to disk.
- Fix a case where user could potentially supply a refund purse as a payment purse.
1.3.0 - 2021-07-19
- Update pinned version of Rust to
nightly-2021-06-17.
1.2.0 - 2021-05-27
- Add validation that the delegated amount of each genesis account is non-zero.
- Add
activate-bidclient contract. - Add a check in
Mint::transferthat the source hasReadpermissions.
- Change to Apache 2.0 license.
- Remove the strict expectation that minor and patch protocol versions must always increase by 1.
- Remove
RootNotFounderror struct.
1.1.1 - 2021-04-19
No changes.
1.1.0 - 2021-04-13 [YANKED]
No changes.
1.0.1 - 2021-04-08
No changes.
1.0.0 - 2021-03-30
- Initial release of execution engine for Casper mainnet.