All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Nothing.
- Add
FromBase58CheckError::IncorrectBase58Prefix
variant. - Add
NomReader
,BinWriter
support forEd25519Signature
. - Add
signature::Signature
enum representing possible types of signature used in Tezos. - Add
From<PublicKeyEd25519>
impl forContractTz1Hash
. - Add
From<PublicKeySecp256k1>
impl forContractTz2Hash
. - Add
From<PublicKeyP256>
impl forContractTz3Hash
. - Add
From<PublicKeyBls>
impl forContractTz4Hash
. - Add
TryFrom<Signature>
impl for various signature types. - Add
PublicKeySignatureVerifier
impl forPublicKeyBls
. - Add
PublicKey
,PublicKeyHash
aggregate types.
tezos_data_encoding
: TheNomReader
trait is now explicitly parameterized by the lifetime of the input byte slice.- Altered hashes to implement
AsRef<[u8]>
instead ofAsRef<Vec<u8>>
. - Renamed
hash::Signature
tohash::UnknownSignature
. - All hash structs no longer publicly expose the underlying
Hash
. Instead, useInto<Vec<u8>>
andAsRef<[u8]>
. ToBase58Check
no longer returns aResult
type.blake2b::digest_128
,blake2b::digest_160
,blake2b::digest_256
return plainVec<u8>
instead ofResult<Vec<u8>, Blake2bError>
, the error was never possible.blake2b::merkle_tree
returns plainVec<u8>
instead ofResult<Vec<u8>, Blake2bError>
, the error was never possible.tezos_crypto_rs
:PublicKeyWithHash::pk_hash
now returnsSelf::Hash
instead ofResult
.PublicKeySignatureVerifier
now requires the explicitly correct signature kind for the given public key.- Update
num-bigint
dependency to0.4
to improve WASM compatibility. - Minimum supported rust version bumped to
1.64
. tezos_crypto_rs
now depends ontezos_data_encoding
, rather than vice-versa.
- Nothing.
- Removed legacy
SecretKeyEd25519
encoding. - Removed
ToBase58CheckError
. - Removed unused
Blake2bError::Other
. - Removed impossible
TryFromPKError
. tezos_data_encoding
: Removed unusedDecodeErrorKind::Hash
andDecodeError::hash_error
tezos_crypto_rs
: Removed unusedError
type fromPublicKeyWithHash
- Removed support for
hash
field attribute when deriving encodings.
- Fix prefix used in
SeedEd25519
encoding. - Add explicit prefix check during base58check decoding.
- Hash input before signing with
SecretKeyEd25519
, to match octez impl. - Fix
BlsSignature
base58 check encoding/decoding. - Fix
SecretKeyEd25519
base58 check encoding/decoding. - Fix all zeros signature encoding: should be
Unknown
rather than defaulting toEd25519
. - Fix
tz1
signature verification: input should be hashed. - Fix
tz2
signature verification: input should be hashed. - Fix
tz3
signature verification: input should be hashed.
- Bump curve25519-dalek to 4.1.3 to address RUSTSEC audit issue.
- Nothing.
- Added
bls
feature flag totezos_crypto_rs
, to allow disabling dependency onblst
.
- Nothing.
- Fixed the version of
blst
to 0.3.10 - Set the version of
ed25519-dalek
to 2.0.0
0.5.0 - 2023-05-12
- Nothing.
- Ed25519 implementation switched from
ed25519_compact
toed25519-dalek
. PublicKeyEd25519::sign
no longer takes anIterator
, instead only oneAsRef<u8>
is allowed.- Depencies bumped, including
nom
->7.1
.
- Nothing.
tezos_crypto_rs
: errors no longer implementPartialEq
,Clone
.tezos_crypto_rs
: errors no longer are (de)serializable with serde.
- Nothing.
- Nothing.
- Improvements in verification of
tz1
signatures, due to change in Ed25519 backend.
tezos_data_encoding_derive
was outputting code that referenced the oldtezos_encoding
crate. It now referencestezos_data_encoding
.
tezos_crypto
rename totezos_crypto_rs
, due to conflict on crates.io
tezos_encoding
renamed totezos_data_encoding
tezos_encoding_derive
renamed totezos_data_encoding_derive
0.4.0 - 2023-03-13
- support
tz4
,sr1
hashes. SecretKeyBls
,PublicKeyBls
support.
- minimum supported rust version bumped to
1.60
. SecretKeyEd25519
now implementsDebug
, and can be encoded/decoded.crypto
renamed totezos_crypto
.tezos_encoding_derive
now supports deriving over generic structs.tezos_encoding
nom::list
,nom::dynamic
no longer requireClone
.lib_sodium
dependency replaced withcryptoxide
for improved Wasm support.
- All crates, except for
crypto
,tezos_encoding
&tezos_encoding_derive
. crypto::seeded_step
,crypto::cryptobox
modules removed.
3.1.1 - 2022-06-28
- Added missing jakarta protocol recognition to context timings tool.
3.1.0 - 2022-06-27
- Jakarta support in rewards RPC.
- Fixed rewards RPC edge cases when the interrogated cycle was lower than preserved_cycles.
- Fixed embedded baker for blocks with predecessor containing a protocol activation.
- Minor fixes in Tezos encoding library.
- Removed
chrono
dependency fromnode_monitoring
application.
3.0.0 - 2022-06-25
- Internal baker built inside the node.
- Prechecking for manager operations.
- Jakarta support in mempool and bakers.
- New version of block application code in the protocol runner that performs extra checks.
- Prechecking for endorsement operations is now disabled by default.
2.3.6 - 2022-06-16
- Don't disconnect peers when in private mode.
- Include
tezedge-baker
program in docker image.
2.3.5 - 2022-06-16
- Baker live_block filter.
2.3.4 - 2022-06-15
- Double-baking and double-endorsement protection in baker
- Updated documentation.
2.3.3 - 2022-06-10
- Fixed possible errors while calling RPCs due to the WebSocket RPC feature.
- Fixed handling of lazy encoded micheline values in operations.
- Fixed unimplemented panic in describe endpoint.
- Split the rewards RPC into two (/dev/rewards/cycle/:cycle_num and /dev/rewards/cycle/:cycle_num/:delegate) to further optimise performance
2.3.2 - 2022-06-07
- In the baker, filter out outdated operations when injectiong a block.
- Better handling of injection RPC responses for unparseable operations.
2.3.1 - 2022-06-06
- New baker documentation.
- Handle corner case when recovering the context storage from a hard crash.
- Add missing flush call for the chain storage after block application to ensure it can be recovered from a hard crash.
- Bug in baker scheduler that caused some requests to wrongly eclipse previous ones.
2.3.0 - 2022-06-03
- Preliminary support for protocol 013-Jakarta.
- Added a baker implementation.
- Added RPC for baker rewards distribution.
- Added support for tezedge RPCs through websocket using JSON-RPC 2.0.
- Changed the monitoring websocket communication from a push based architecture to a request/response architecture.
- Reworked the prevalidated code in the protocol runner.
/chains/:chain/blocks
RPC.
2.2.0 - 2022-04-29
- In-memory context backend now regularly takes a snapshot of the most recent commits, and is able to restore its state when the node is restarted.
- Prevalidation priority logic, so that injected and consensus operations get validated first to increase the chance of them being included in the next block.
- Better and more detailed action statistics: https://tezedge.com/#/resources/state
- Slack alerts for missed block/endorsement for a specific baker.
- Report generation in case of missed block/endorsement, which includes debug information.
- Issues with mempool and prevalidator.
- Assertion failure in tezedge native context storage when running ithacanet.
- Rendering of operations metadata JSON in RPCs when there is too much data
- Optimized block application to avoid reapplying block in case of branch change.
2.1.0 - 2022-04-06
- Support for preendorsements UI.
- Bounds for operations in mempool.
- Fixed issue with node being disconnected from all peers.
- Fixed support for Ithaca endorsements UI.
- Fixed wrong duration in action statistics.
2.0.0 - 2022-03-31
- Adapt bootstrapping and mempool logic for Ithaca.
- State machine fuzzing improvements.
- On injection RPCs, respect the
is_async
parameter and respond without waiting for the injection to complete. - Fixed sporadic connectivity issues between the shell and protocol runner processes.
1.19.0 - 2022-03-25
- Import snapshot subcommand for importing snapshots from a remote file server.
- The --config-file argument now defaults to the default config file.
1.18.1 - 2022-03-22
- For macOS-arm64, use an updated libtezos.
1.18.0 - 2022-03-22
- Support for macOS-arm64 (M1 CPUs).
- Block headers download progress logging.
1.17.0 - 2022-03-18
- Preliminary support for protocol 012 (Ithaca 2).
- Re-implemented bootstrapping logic in the state machine.
- In-memory context context now supports loading it's state from disk.
- Disk usage measurements for the context stats db.
- Implemented Octez
tezos-accuser
support.
- In-memory context storage now has a new garbage collector that collects everything that doesn't belong to the last few levels.
- Block application retry logic is now more alike Octez, and can handle protocol runner failures.
- Fixed
/monitoring/valid_blocks
RPC. - Cache-related block application retry logic now in synch with the one in Octez.
1.16.1 - 2022-03-04
- Rust 2021 edition is used.
- The option
--disable-apply-retry
now isfalse
by default.
- Fixed
/chains/:chain-id:/blocks
RPC that prevented seed nonces to be revealed. - Fixed potential node stucking when using
--disable-apply-retry=true
. - Fixed issue that caused the snapshot command to sometimes timeout on slower computers.
- RUSTSEC-2020-0071 is fixed by using newer
time
crate version. - RUSTSEC-2020-0159 is fixed by using
time
crate instead ofchrono
.
1.16.0 - 2022-02-28
- New
snapshot
subcommand tolight-node
to produce trimmed copies of the storage. - Option to enable retrying block application with cache reloaded.
- Implemented shell-side prechecker for endorsement operations.
- Implemented optional shell-side block prechecking.
- Implemented statistics RPCs for tracking new blocks processing.
- Re-implemented block application logic in state machine.
- Re-implemented protocol-runner subprocess handling in the state machine.
- Rust upgraded to 1.58.1
- Missed endorsement when alternative heads are encountered.
- The
/monitor/bootstrapped
RPC now properly reports bootstrapping progress if the node is not bootstrapped already.
1.15.1 - 2022-02-18
- Bug when mapping OCaml->Rust values representing error responses from protocol RPCs.
1.15.0 - 2022-02-18
- Various tools for the Rust implementation of the context storage (see
tezos/context-tool
). context-integrity-check
flag to check the integrity of the Rust implementatino of the context storage at startup.
- Released binaries no longer make use of ADX instructions, increasing comptability with more CPUs.
- Improved the representation of the context storage inodes so that less memory is used.
1.14.0 - 2021-12-24
- In Rust implementation of persisted context storage, commits now behave as an atomic operations.
- Switch default Rust toolchain to stable Rust 1.57 version.
- Rewrote and moved mempool implementation from actor system to new state machine architecture.
- Compatibility with Hangzhou protocol.
- Rpc to get accumulated mempool operation statistics.
- Optimized Rust implementation of persisted context storage.
1.13.0 - 2021-12-01
- Removed redundant validations of
current_head
from peers, which in some cases was causing the node to lag behind.
1.12.0 - 2021-11-30
- Increase Irmin's index log size limit to
2_500_000
to match Octez v11. This should help with freezes during merges by making them happen less often, but increases memory usage a little. - Tweak the call to apply a block in chain feeder so that it is less prone to block Tokio's worker threads.
- MessagePack encoding is now used for action and state snapshot storage instead of JSON.
1.11.0 - 2021-11-29
- Persistent on-disk backend for the TezEdge context storage (preview release)
- Enabling conditions for actions in shell automaton.
- Drone CI Pipeline with Python tests for Granada
- Per-protocol context statistics
- Drone CI pipeline with Python tests for Edo
- When using the TezEdge context storage implementation, the default backend is now the persistent one (was in-memory)
- More eager cleanup of no-longer used IPC connections between the shell process and the protocol runner process, and more reuse of already existing connections (instead of instantiation a new one each time) when possible.
- Issue that caused the list of peers between the state machine and the actors system to get out of sync, causing the node to lag behind.
1.10.0 - 2021-11-16
- Rewrote P2P networking and peer management to new architecture.
- Made IPC communication with the protocol runner processes asynchronous.
- Renamed cli argument
--disable-peer-blacklist
to--disable-peer-graylist
.
- Synchronous ocaml IPC.
- Actor based P2P networking and peer management.
- FFI connection pool flags:
--ffi-pool-max-connections
--ffi-trpap-pool-max-connections
--ffi-twcap-pool-max-connections
--ffi-pool-connection-timeout-in-secs
--ffi-trpap-pool-connection-timeout-in-secs
--ffi-twcap-pool-connection-timeout-in-secs
--ffi-pool-max-lifetime-in-secs
--ffi-trpap-pool-max-lifetime-in-secs
--ffi-twcap-pool-max-lifetime-in-secs
--ffi-pool-idle-timeout-in-secs
--ffi-trpap-pool-idle-timeout-in-secs
--ffi-twcap-pool-idle-timeout-in-secs
1.9.1 - 2021-11-04
- Optimized mempool operations downloading from p2p
1.9.0 - 2021-10-26
- Support for Ubuntu 21
- Shell refactor and simplify communication between actors
- Upgrade to Tokio 1.12
riker
dependency replaced withtezedge-actor-system
dependency
- Removed
riker
dependency fromrpc
module
- Optimize
chains/{chain_id}/mempool/monitor_operations
andmonitor/heads/{chain_id}
RPCs. - Controlled startup for chain_manager - run p2p only after ChainManager is subscribed to NetworkChannel
- ChainFeeder block application improved error handling with retry policy on protocol-runner restart
- Added set_size_hint after decoding read_message to avoid unnecessary recounting for websocket monitoring
1.8.0 - 2021-09-20
- Added new, faster implementation of binary encoding of p2p messages
- Added encoding benchmarks
- Added new context storage optimization that takes advantage of repeated directory structures
- Added build file cache to CI
- Added new, faster implementation for endorsing and baking rights RPCs that use cached snapshots data
- Added handlers for protocol 009 and 010 baking and endorsing rights RPC.
- Changed historic protocols to use new storages for baking/endorsing rights calculation.
- Internal cleanup of the context storage implementation + documentation
- Replaced use of the failure crate with thiserror + anyhow crates
1.7.1 - 2021-08-31
- Fix a corner case in the communication with the protocol runner that could cause some off-by-one responses.
1.7.0 - 2021-08-19
- Bootstrap time test to Drone CI
- Implemented inodes representation in the TezEdge context storage
- Upgrade rust nightly to 2021-08-04
- Drone CI test pipelines optimization and improvements
- Drone CI test pipelines optimization and improvements
- Be more robust on the handling of IPC errors
- Calculate block header hash on decoding optimization
- TezEdge context fixes, optimizations and improvements
- Fixed chrono dependency panics
- Reworked <block_id> parsing for rpc and better error handling (future blocks, ...)
- Remove no-longer used COPY context function
1.6.10 - 2021-07-30
- New irmin context version
1.6.9 - 2021-07-22
- RPC uses protocol runners without context for decoding block/operations metadata
1.6.8 - 2021-07-20
- Add dns/resolv libs to distroless docker image
1.6.7 - 2021-07-20
- Quota throttling for p2p messages
1.6.6 - 2021-07-16
- Add massif test for bootstrapping
- Upgrade tokio dependency to 1.8
- Cleaning and better error handling
1.6.5 - 2021-07-13
- Add support for custom networks specified by a config file
- Log configuration on startup
- Storage db compatibility for 19 vs 20 for snapshots
1.6.4 - 2021-07-12
- Slog default rolling parameters to save more logs
1.6.2 - 2021-07-07
- Block storage iterator was returning blocks in reverse order.
1.6.1 - 2021-07-07
- A reworked in-memory backend for the TezEdge context that conforms to the Tezos context API and is now directly accessed from the Tezos protocol code.
- Flag
--tezos-context-storage
to choose the context backend. Default isirmin
, supported values are:tezedge
- Use the TezEdge context backend.irmin
- Use the Irmin context backend.both
- Use both backends at the same time
inmem-gc
option to the--context-kv-store
flag.- Flag
--context-stats-db-path=<PATH>
that enables the context storage stats. When this option is enabled, the node will measure the time it takes to complete each context query. When available, these will be rendered in the TezEdge explorer UI. - A new
replay
subcommand to thelight-node
program. This subcommand will take as input a range of blocks, a blocks store and re-apply all those blocks to the context store and validate the results. - A new CI runner running on linux with real-time patch kernel to increase determinism of performance tests
- Add conseil and tzkt tests for florencenet
- Add caching to functions used by RPC handlers
- Implemented new storage based on sled as replacement for rocksdb
- Implemented new commit log as storage for plain bytes/json data for block_headers
- New dockerhub: simplestakingcom -> tezedge
- Flag
--one-context
was removed, now all context backends are accessed directly by the protocol runner. - RocksDB and Sled backends are not supported anymore by the TezEdge context.
- The actions store enabled by
--actions-store-backend
is currently disabled and will not record anything.
1.5.1 - 2021-06-08
- Preserve frame pointer configuration (used by eBPF memprof docker image)
- Updated docker-composes + README + sandbox update for 009/010
1.5.0 - 2021-06-06
- New protocol 009_Florence/010_Granada (baker/endorser) integration support + (p2p, protocols, rpc, tests, CI pipelines)
- Encodings - implemented NOM decoding
- (FFI) Compatibility with Tezos v9-release
- Store apply block results (header/operations) metadata as plain bytes and added rpc decoding to speedup block application
- TezEdge node now works just with one Irmin context (temporary solution, custom context is coming soon...)
1.4.0 - 2021-05-20
- Optimize the Staging Area Tree part of Context Storage
- Shell memory optimizations
- Changed bootstrap current_branch/head algo
- New Drone CI with parallel runs
- Added Proof-of-work checking to hand-shake
1.3.1 - 2021-04-14
- New module
deploy_monitoring
for provisioning of TezEdge node, which runs as docker image with TezEdge Debugger and TezEdge Explorer - Flag
--one-context
to turn-off TezEdge second context and use just one in the FFI - Peer manager stats to log
- More tests to networking layer
- P2p manager limit incoming connections by ticketing
- Dead-lettered peer actors cleanup
- Memory RAM optimization
1.2.0 - 2021-03-26
- Automatically generated documentation on P2P messages encoding.
- Context actions record/replay feature
- Flag
--actions-store-backend <BACKEND1> <BACKEND2> ...
. When enabled the node stores incomming actions in one of the selected backends. Possible values are:rocksdb
,file
- Flag
--context-kv-store=STRING
. Chooses backend for data related to merkle storage. By default rocksdb database is used, possible values are : - Added new RPCs for get operations details
- Storage module refactor
- Upgrade code to ocaml-interop v0.7.2
- Safer handling of String encoding
1.1.4 - 2021-03-12
- Extended tests for calculation of context_hash
- Possibility to use multiple logger (terminal and/or file)
- Shell refactor to batch block application to context
1.1.3 - 2021-03-09
- Correct parsing of bootstrap addresses with port
- edo/edonet - automatically is switched to edo2/edo2net
1.1.2 - 2021-03-05
- New 008 edo2 support + possibility to connect to edo2net
- New algorithm for calculation of context_hash according to Tezos
- README.md and predefined docker composes
1.1.0 - 2021-03-02
- Sapling zcash-params init configuration handling for edo protocol on startup
- Backtracking support for Merkle storage
- Argument
--network=
is required + possibility to run dockers with different networks - RPC integration tests optimization - run in parallel and add elapsed time to the result in Drone CI
- Minor changes for dev RPCs for TezEdge-Explorer
- Argument
--ffi-calls-gc-treshold
. - Default value for argument
--network=
- Used hash instead of string for peer_id in SwapMessage
- Added limits for p2p messages according to the Tezos updates
1.0.0 - 2021-02-10
- Rpc for protocol runner memory stats
- Tokio update to 1.2.x version.
- Shell and bootstrap refactored to use kind of bootstrap pipeline to prevent stucking
- Error handling - changed expect/unwrap to errors
- Encodings - replaced recursive linked list with vector
- Encodings - introduced limits for p2p messages encoding
- Properly handle connection pool timeout
- Github Actions CI runs
cargo audit
(required)
0.9.2 - 2021-02-03
- Support for 008 protocol Edo + network support - p2p, rpc, fii
- Migrated Tokio dependency from 0.2.x to 1.1.x
- RocksDB kv store splitted into three instances (db, context, context_actions)
- Reworked websocket implementation, now uses warp::ws instead of default ws
- Various changes around the P2P layer and bootstrapping
0.9.1 - 2021-01-13
- Giganode1/2 to default mainnet bootstrap peers
- Protocol runner restarting and IPC accept handling
0.9.0 - 2021-01-05
- Modification of node to be able to launch Tezos python tests in Drone CI
- Benchmarks for message encoding, ffi conversion, storage predecessor search to Drone CI
- Block applied approx. stats to log for chain_manager
- Extended statistics in merkle storage
- Refactor shell/network channels and event/commands for actors
- Refactored chain_manager/chain_feeder + optimization to speedup bootstrap
- Optimizations of merkle storage by modifying trees in place
- Graceful shutdown of node and runners
- Generate invalid peer_id for identity
0.8.0 - 2020-11-30
- Multipass validation support for CurrentHead processing + blacklisting peers
- Support for connection to Delphinet.
- Dynamic RPC router can call Tezos's RPCs inside all protocol versions.
- Added rustfmt and clippy pipelines
- Build is now tested on GitHub Actions instead of Travis-CI.
0.7.2 - 2020-11-26
- Identity path in config for distroless docker image
0.7.1 - 2020-11-04
- Logging cleanup
0.7.0 - 2020-10-28
- Added support for reorg + CI Drone test
- Validation for new current head after apply
- Validation for accept branch only if fitness increases
- Operation pre-validation before added to mempool
- Skip_list was changed to merkle implementation for context
0.6.0 - 2020-10-20
- Added distroless docker builds
- Drone pipeline for releasing docker images (develop, master/tag)
- Cleanup unnecessary clones + some small optimization
- Sandbox improved error handling + cleanup
0.5.0 - 2020-09-30
- New OCaml FFI
ocaml-interop
integration - Integration test for chain_manager through p2p layer
- New library
tezos/identity
for generate/validate identity/pow in rust - Several structs/algorithms unnecessary
clone
optimization - Refactoring and cleanup
- Generate identity through OCaml FFI (reimplemented in
tezos/identity
)
- Added
#![forbid(unsafe_code)]
to (almost every) modules
0.4.0 - 2020-09-16
- More verbose error handling in the sandbox launcher.
- New rpc
forge/operations
. - New docker-compose file to start a setup with the sandbox launcher, tezedge-explorer front-end and tezedge-debugger.
- Various bugs in the sandbox launcher.
0.3.0 - 2020-08-31
- New configuration parameter
--disable-bootstrap-lookup
to turn off DNS lookup for peers (e.g. used for tests or sandbox). - New configuration parameter
--db-cfg-max-threads
to better control system resources. - New RPCs to make baking in sandbox mode possible with tezos-client.
- Support for MacOS (10.13 and newer).
- Enabling core dumps in debug mode (if not set), set max open files for process
- New sandbox module to launch the light-node via RPCs.
- Resolved various clippy warnings/errors.
- Drone test runs offline with carthagenet-snapshoted nodes.
- New OCaml FFI -
ocaml-rs
was replaced with a new custom library based oncaml-oxide
to get GC under control and improve performance. - P2P bootstrap process - NACK version control after metadata exchange.
0.2.0 - 2020-07-29
- RPCs for every protocol now support the Tezos indexer 'blockwatch/tzindex'.
- Support for connecting to Mainnet.
- Support for sandboxing, which means an empty TezEdge can be initialized with
tezos-client
for "activate protocol" and do "transfer" operation.
- FFI upgrade based on Tezos gitlab latest-release (v7.2), now supports OCaml 4.09.1
- Support for parallel access (readonly context) to Tezos FFI OCaml runtime through r2d2 connection pooling.
0.1.0 - 2020-06-25
- Mempool P2P support + FFI prevalidator protocol validation.
- Support for sandboxing (used in drone tests).
- RPC for /inject/operation (draft).
- RPCs for developers for blocks and contracts.
- Possibility to run mulitple sub-process with FFI integration to OCaml.
- Upgraded version of riker, RocksDB.
- Improved DRONE integration tests.
0.0.2 - 2020-06-01
- Support for connection to Carthagenet/Mainnet.
- Support for Ubuntu 20 and OpenSUSE Tumbleweed.
- RPCs for indexer blockwatch/tzindex (with drone integration test, which compares indexed data with Ocaml node against TezEdge node).
- Flags
--store-context-actions=BOOL.
If this flag is set to false, the node will persist less data to disk, which increases runtime speed.
- P2P speed-up bootstrap - support for p2p_version 1 feature Nack_with_list, extended Nack - with potential peers to connect.
- Storing all P2P messages (moved to tezedge-debugger), the node will persist less data to disk.
- Remove bitvec dependency.
- Refactored FFI to Ocaml not using BigArray1's for better GC processing.
0.0.1 - 2020-03-31
- P2P Explorer support with dedicated RPC exposed.
- Exposed RPC for Tezos indexers.
- Ability to connect and bootstrap data from Tezos Babylonnet.
- Protocol FFI integration.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.