All notable changes to this project will be documented in this file.
- Removed cell counting from default features
- Added method
BocReader::read_root
for fast reading root cell data from BOC - Added method
Message::read_header_fast
for fast reading message header from BOC
- Deleted deprecated method CellImpl::cell_data
- Fixed bug in the find_validators function when the number of validators in the new set was increased.
- Added methods McBlockExtra::validators_stat, McBlockExtra::validators_stat_mut and McBlockExtra::set_validators_stat
- Deleted unnecessary debug print
- Optimized Merkle proof creation ( less cell loading)
- Cell refactoring
- Fixed ser/deserialization of
AccountBlock
with mesh transactions
- SMFT configuration parameters
- Fixed partial change of mempool nodes. There was possible to get collator and mempool node with same number.
- Add round to MsgPackProcessingInfo
- Add construct_from_bitstring adapter
- SMFT config parameters
- Add filtering interfaces to hashmaps for encapsulation of serde_opts
- Changed serialization of ShardStateUnsplit: now it is possible to serialize/deserialize pack info without SERDE_OPTS_COMMON_MESSAGE enabled.
- To function find_validators added the ability to change mempool partially. Added related parameter to FastFinalityConfig
- Add adnl_addr interface for ValidatorDescr
- Addons for
MsgPack
and related data types
- Fix for external messages dictionary
- Added
MsgPack
and related data types
- Added data types for new fast finality roles mechanism
- Use modern crates anyhow and thiserror instead of failure
- Fix build for WASM target
- New CommonMessage structure as a container of old
Message
and new types of messages. - New serialization option for ser/de operations with other structs.
- Enhanced HashMap interface
- Some interfaces were refactored due to merging repos
- Added GlobalCapabilities::CapDuePaymentFix which disables due payments on credit phase and adds payed dues to storage fee in TVM
ton-types
repository was merged with this repository- crate was renamed from
ton_block
toever_block
- Added GlobalCapabilities::CapTvmV20 which enables BLS instructions in TVM
- Capability to avoid deletion of frozen accounts
- HashmapAugE returns depth of tree on insert new item
- Added MerkleUpdate::apply_for_with_cells_factory
- Removed extra crates base64, ed25519, sha2
- Minor refactoring
- Add new capability for disabling split of out queues during shard split
- HashMapAug and OutMsgQueue insertion API extended
- SMFT capability added
- Fix cells serialization format
- BLS data structures have been added
- Add new capability constant for TVM improvements
- Remove set_level_mask calls (levels are set at finalization now)
- Fixed
Block::set_gen_utime_ms
method
- Fixed deserialization of BlockInfo. Added method BlockInfo::read_from_ex()
- Removed 'fast_finality' feature
- Use new functions for hashmap manipulation
- Added new method MerkleUdate::apply_for_with_metrics()
- Remove compiler warning
- Fix the build for fast finality
- Added GlobalCapabilities::CapOptimisticConsensus
- Deleted unused field CollatorRange.unexpected_finish
- Store
original_shard
inProcessedUpto
for optimistic consensus
- Added CollatorRange:: updated_at
- Added ref_shard_blocks to ShardStateUnsplit
- Added new parameter 'collators' to ShardHashes::add_workchain
- Add milliseconds to state
- Added end_lt to ShardBlockRef
- Added BlockInfo::gen_utime_ms (#1)
- Open library tests
- Fix compiler warnings
- Increase package version
- Minor fixes for optimistic consensus
- Added "collator" and "ref shard blocks" fields for optimistic consensus
- Added config param 44
SuspendedAddresses
andComputeSkipReason::Suspended
- Added capability flag for big cells
GlobalCapabilities::CapBigCells = 0x4000_0000
- Supported ever-types version 2.0
- Add capability for fees in Gas units
- Fixed appending references to cells
- Add capability and feature for groth
- Add common as submodule
- New version of
Block
struct with out messages queue updates for foreign workchains - Added
GlobalCapabilities::CapWc2WcQueueUpdates
- Added new functions related with out messages queue updates
- Merkle proof pruned cell access fix
- Deprecated functions removed
- Refactor in message types naming
- Switched to Rust 2021 edition
- Performance issue in ValidatorDescr - removed ed25519_dalek::PublicKey using for holding public_key data
- Removed unused SignedBlock structure
- Bumped crc version to 3.0
- Added wrappers for BLS arithmetic
- Remove debug prints for BLS
- Minor optimization for fn SliceData::get_bytestring
- Renamed
TON
intoever
in comments
- Added
BocReader::set_allow_big_cells
method - Supported big cell data serialization in
CellData::serialize
&CellData::deserialize
(the functions are not used in boc, they need in node)
- The code related to cell counting was covered by the
cell_counter
feature. Disable counting allows to increase cell's synthetic performance, but the counting is very needed for memory usage diagnostics.
- Generate BLS key based on key material
- Added new method
Cell::cell_impl(&self)
- Add ability to get root of changed subtree during hashmap filter
- Add BLS KeyOption from ever-crypto
- Fixed performance issue with fake 16MB big cell
- Remove BuilderData::level_mask (compute it at finalization)
- Fixed persistant state save
- Make SliceData::with_bitstring() public
- Optimize hashmap labels
- Optimize put_to_fork_with_mode()
- Add BocWriterStack for faster boc saving
- Add crypto wrappers
- Transform BocWriter::traverse() into iterative algo
- Refactor hashmap functions to optimize perfomance
- Add hashmap benchmark with profiling instructions
- Upgraded to ed25519-dalek 2.0
- Fixed big cells counting in read_inmem
- Additional checks for big cells count while BOC reading
- Removal of dead code
- BocWriter::write_ex(): do not compute CRC if not requested
- Fixed cells lifetime while BOC traverse
- Added UsageTree::build_visited_set
- Refactor LabelReader for perfomance
- Use load_bitstring for performance
- Use SliceData as bitstring for hashmap key manipulation
- Fixed BocReader::read_inmem for big bocs (> 4Gb)
- Optimize Cell::default()
- Fixed bug in hashmap_filter function
- Fixed panics after fuzzing
- Enhanced hashmap filter split
- Enhanced hashmap split by prefix
- Enhanced hashmap merge in any place
- Implemented hashmap filter split in one pass like two hashmap filters
- Fixed bug in x25519_shared_secret
- Added interface base64_encode_url_safe
- Minor refactoring
- Moved all crypto crates to wrappers
- Added crypto functions from crypto-repo
- Added wrappers for sha256, sha512, base64
- Bumped version of crc crate to 3.0
- Fix for clippy
- Added big cell. Call
create_big_cell
to create one. - BOC routines: supported big cells and refactoring.
Created two basic structs for in-depth working with BOC:
BocWriter
andBocReader
. Additionally three convinient wrappers:write_boc
,read_boc
andread_single_root_boc
, that you'll probably want to use.
- Fix for clippy
- Add common as submodule
- Remove bad types conversion
- Loading cells with checking cell type
- Fixed bug in 'deserialize_cells_tree_inmem_with_abort' - deleted unneded check with error (all needed checks performs in 'precheck_cells_tree_len'). Error appeared when BOC contained CRC.
- Fixed bug in 'deserialize_cells_tree_inmem_with_abort' - CRC calculated using wrong offsets.