diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2f7416b0..cc2c30b5 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,53 @@
## [Unreleased]
+
+## [v0.21.0] - 2024-01-04
+### Build
+- **deps:** update minicbor requirement from 0.19 to 0.20 ([#337](https://github.com/txpipe/pallas/issues/337))
+
+### Chore
+- fix lint warnings across the board ([#374](https://github.com/txpipe/pallas/issues/374))
+- fix code formatting ([#363](https://github.com/txpipe/pallas/issues/363))
+- **txbuilder:** fix lint warnings ([#343](https://github.com/txpipe/pallas/issues/343))
+- **wallet:** fix lint warnings ([#344](https://github.com/txpipe/pallas/issues/344))
+
+### Doc
+- **applying:** add ShelleyMA tests description ([#356](https://github.com/txpipe/pallas/issues/356))
+
+### Feat
+- introduce transaction builder crate ([#338](https://github.com/txpipe/pallas/issues/338))
+- introduce wallet crate for ed25519-bip32 key management ([#342](https://github.com/txpipe/pallas/issues/342))
+- **applying:** implement ShelleyMA phase-1 validations ([#354](https://github.com/txpipe/pallas/issues/354))
+- **configs:** add Shelley config structs ([#359](https://github.com/txpipe/pallas/issues/359))
+- **hardano:** implement search for the immutabledb reader ([#372](https://github.com/txpipe/pallas/issues/372))
+- **hardano:** implement immutable db chunk parsing ([#328](https://github.com/txpipe/pallas/issues/328))
+- **network:** implement GetUTxOByAddress local state query ([#341](https://github.com/txpipe/pallas/issues/341))
+- **network:** add sanchonet compatibility ([#355](https://github.com/txpipe/pallas/issues/355))
+- **network:** update n2n handshake versions & add keepalive miniprotocol ([#362](https://github.com/txpipe/pallas/issues/362))
+- **network:** implement split read / write for NamedPipe bearer ([#371](https://github.com/txpipe/pallas/issues/371))
+- **network:** implement stake distribution local state query ([#340](https://github.com/txpipe/pallas/issues/340))
+- **rolldb:** add method to check if db is empty ([#352](https://github.com/txpipe/pallas/issues/352))
+- **traverse:** improve protocol update access ([#360](https://github.com/txpipe/pallas/issues/360))
+- **wallet:** implement HD private keys & encrypted wrapper ([#358](https://github.com/txpipe/pallas/issues/358))
+
+### Fix
+- update pallas-applying to work with keepraw native scripts ([#370](https://github.com/txpipe/pallas/issues/370))
+- correct datum kind for set_datum_hash ([#350](https://github.com/txpipe/pallas/issues/350))
+- return witness objects for conway era multieratx ([#346](https://github.com/txpipe/pallas/issues/346))
+- fix unable to build and sign txs ([#345](https://github.com/txpipe/pallas/issues/345))
+- add txbuilder to unstable feature gate ([#349](https://github.com/txpipe/pallas/issues/349))
+- **hardano:** remove panics from immutable db parsing ([#351](https://github.com/txpipe/pallas/issues/351))
+- **network:** set so_linger socket option to match cardano-node ([#369](https://github.com/txpipe/pallas/issues/369))
+- **network:** demux using one mpsc channel per miniprotocol ([#366](https://github.com/txpipe/pallas/issues/366))
+- **network:** add tcp_nodelay to bearer ([#365](https://github.com/txpipe/pallas/issues/365))
+- **network:** use correct client state transition for n2n txsub ([#348](https://github.com/txpipe/pallas/issues/348))
+- **network:** relax connect args lifetime ([#367](https://github.com/txpipe/pallas/issues/367))
+
+### Refactor
+- **network:** split bearer into read/write ([#364](https://github.com/txpipe/pallas/issues/364))
+
+
## [v0.20.0] - 2023-11-20
### Chore
@@ -34,7 +81,9 @@
### Fix
- fix conditional code for windows builds ([#334](https://github.com/txpipe/pallas/issues/334))
- make rolldb an optional dependency ([#329](https://github.com/txpipe/pallas/issues/329))
+- **applying:** define specific dependency versions
- **applying:** contemplate fee rules for genesis UTxOs ([#332](https://github.com/txpipe/pallas/issues/332))
+- **network:** add missing rt feature for tokio
- **network:** add missing feature gate flag to tokio dependency ([#333](https://github.com/txpipe/pallas/issues/333))
- **network:** fix bad codec for tx monitoring messages ([#298](https://github.com/txpipe/pallas/issues/298))
- **rolldb:** fix find wal sequence semantics ([#310](https://github.com/txpipe/pallas/issues/310))
@@ -1010,7 +1059,8 @@ handshake, chainsync, localstate and blockfetch mini-protocols changed the API s
- apply fmt to entire workspace
-[Unreleased]: https://github.com/txpipe/pallas/compare/v0.20.0...HEAD
+[Unreleased]: https://github.com/txpipe/pallas/compare/v0.21.0...HEAD
+[v0.21.0]: https://github.com/txpipe/pallas/compare/v0.20.0...v0.21.0
[v0.20.0]: https://github.com/txpipe/pallas/compare/v0.19.1...v0.20.0
[v0.19.1]: https://github.com/txpipe/pallas/compare/v0.19.0...v0.19.1
[v0.19.0]: https://github.com/txpipe/pallas/compare/v0.18.2...v0.19.0
diff --git a/pallas-addresses/Cargo.toml b/pallas-addresses/Cargo.toml
index aa50f5cd..6c52a71e 100644
--- a/pallas-addresses/Cargo.toml
+++ b/pallas-addresses/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "pallas-addresses"
description = "Ergonomic library to work with different Cardano addresses"
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/txpipe/pallas"
homepage = "https://github.com/txpipe/pallas"
@@ -12,8 +12,8 @@ authors = ["Santiago Carmuega "]
[dependencies]
hex = "0.4.3"
-pallas-crypto = { version = "=0.20.0", path = "../pallas-crypto" }
-pallas-codec = { version = "=0.20.0", path = "../pallas-codec" }
+pallas-crypto = { version = "=0.21.0", path = "../pallas-crypto" }
+pallas-codec = { version = "=0.21.0", path = "../pallas-codec" }
base58 = "0.2.0"
bech32 = "0.9.1"
thiserror = "1.0.31"
diff --git a/pallas-applying/Cargo.toml b/pallas-applying/Cargo.toml
index 2f6183d4..2e6e3e9f 100644
--- a/pallas-applying/Cargo.toml
+++ b/pallas-applying/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "pallas-applying"
description = "Logic for validating and applying new blocks and txs to the chain state"
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/MaicoLeberle/pallas"
homepage = "https://github.com/MaicoLeberle/pallas"
@@ -13,11 +13,11 @@ authors = ["Maico Leberle "]
doctest = false
[dependencies]
-pallas-addresses = { version = "=0.20.0", path = "../pallas-addresses" }
-pallas-codec = { version = "=0.20.0", path = "../pallas-codec" }
-pallas-crypto = { version = "=0.20.0", path = "../pallas-crypto" }
-pallas-primitives = { version = "=0.20.0", path = "../pallas-primitives" }
-pallas-traverse = { version = "=0.20.0", path = "../pallas-traverse" }
+pallas-addresses = { version = "=0.21.0", path = "../pallas-addresses" }
+pallas-codec = { version = "=0.21.0", path = "../pallas-codec" }
+pallas-crypto = { version = "=0.21.0", path = "../pallas-crypto" }
+pallas-primitives = { version = "=0.21.0", path = "../pallas-primitives" }
+pallas-traverse = { version = "=0.21.0", path = "../pallas-traverse" }
rand = "0.8"
[dev-dependencies]
diff --git a/pallas-codec/Cargo.toml b/pallas-codec/Cargo.toml
index 83c0252c..0b70455f 100644
--- a/pallas-codec/Cargo.toml
+++ b/pallas-codec/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "pallas-codec"
description = "Pallas common CBOR encoding interface and utilities"
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/txpipe/pallas"
homepage = "https://github.com/txpipe/pallas"
diff --git a/pallas-configs/Cargo.toml b/pallas-configs/Cargo.toml
index 7ed41f80..3307d194 100644
--- a/pallas-configs/Cargo.toml
+++ b/pallas-configs/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "pallas-configs"
description = "Config structs and utilities matching the Haskell implementation"
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/txpipe/pallas"
homepage = "https://github.com/txpipe/pallas"
@@ -12,9 +12,9 @@ authors = ["Santiago Carmuega "]
[dependencies]
hex = "0.4.3"
-pallas-addresses = { version = "=0.20.0", path = "../pallas-addresses" }
-pallas-crypto = { version = "=0.20.0", path = "../pallas-crypto" }
-pallas-codec = { version = "=0.20.0", path = "../pallas-codec" }
+pallas-addresses = { version = "=0.21.0", path = "../pallas-addresses" }
+pallas-crypto = { version = "=0.21.0", path = "../pallas-crypto" }
+pallas-codec = { version = "=0.21.0", path = "../pallas-codec" }
serde = { version = "1.0.136", optional = true, features = ["derive"] }
serde_json = { version = "1.0.79", optional = true }
base64 = "0.21.2"
diff --git a/pallas-crypto/Cargo.toml b/pallas-crypto/Cargo.toml
index 09425d3d..378de295 100644
--- a/pallas-crypto/Cargo.toml
+++ b/pallas-crypto/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "pallas-crypto"
description = "Cryptographic primitives for Cardano"
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/txpipe/pallas"
homepage = "https://github.com/txpipe/pallas"
@@ -15,7 +15,7 @@ hex = "0.4"
cryptoxide = { version = "0.4.1" }
thiserror = "1.0"
rand_core = "0.6"
-pallas-codec = { version = "=0.20.0", path = "../pallas-codec" }
+pallas-codec = { version = "=0.21.0", path = "../pallas-codec" }
serde = "1.0.143"
[dev-dependencies]
diff --git a/pallas-hardano/Cargo.toml b/pallas-hardano/Cargo.toml
index 75dceeef..6362c10a 100644
--- a/pallas-hardano/Cargo.toml
+++ b/pallas-hardano/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "pallas-hardano"
description = "Pallas interoperability with the Haskel Cardano node implementation"
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/txpipe/pallas"
homepage = "https://github.com/txpipe/pallas"
@@ -15,8 +15,8 @@ thiserror = "1.0.49"
binary-layout = "3.2.0"
tap = "1.0.1"
tracing = "0.1.40"
-pallas-traverse = { version = "0.20.0", path = "../pallas-traverse" }
-pallas-network = { version = "0.20.0", path = "../pallas-network" }
+pallas-traverse = { version = "=0.21.0", path = "../pallas-traverse" }
+pallas-network = { version = "=0.21.0", path = "../pallas-network" }
[dev-dependencies]
tracing-subscriber = "0.3.17"
diff --git a/pallas-network/CHANGELOG.md b/pallas-network/CHANGELOG.md
new file mode 100644
index 00000000..e69de29b
diff --git a/pallas-network/Cargo.toml b/pallas-network/Cargo.toml
index 45b06a40..32bd636a 100644
--- a/pallas-network/Cargo.toml
+++ b/pallas-network/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "pallas-network"
description = "Ouroboros networking stack using async IO"
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/txpipe/pallas"
homepage = "https://github.com/txpipe/pallas"
@@ -14,8 +14,8 @@ authors = ["Santiago Carmuega ", "Pi Lanningham "]
[dependencies]
-pallas-primitives = { version = "=0.20.0", path = "../pallas-primitives" }
-pallas-addresses = { version = "=0.20.0", path = "../pallas-addresses" }
-pallas-crypto = { version = "=0.20.0", path = "../pallas-crypto" }
-pallas-codec = { version = "=0.20.0", path = "../pallas-codec" }
+pallas-primitives = { version = "=0.21.0", path = "../pallas-primitives" }
+pallas-addresses = { version = "=0.21.0", path = "../pallas-addresses" }
+pallas-crypto = { version = "=0.21.0", path = "../pallas-crypto" }
+pallas-codec = { version = "=0.21.0", path = "../pallas-codec" }
hex = "0.4.3"
thiserror = "1.0.31"
paste = "1.0.14"
diff --git a/pallas-txbuilder/Cargo.toml b/pallas-txbuilder/Cargo.toml
index b8947f75..b0281f68 100644
--- a/pallas-txbuilder/Cargo.toml
+++ b/pallas-txbuilder/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "pallas-txbuilder"
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/txpipe/pallas"
homepage = "https://github.com/txpipe/pallas"
@@ -13,12 +13,12 @@ authors = [
]
[dependencies]
-pallas-codec = { path = "../pallas-codec", version = "=0.20.0" }
-pallas-crypto = { path = "../pallas-crypto", version = "=0.20.0" }
-pallas-primitives = { path = "../pallas-primitives", version = "=0.20.0" }
-pallas-traverse = { path = "../pallas-traverse", version = "=0.20.0" }
-pallas-addresses = { path = "../pallas-addresses", version = "=0.20.0" }
-pallas-wallet = { path = "../pallas-wallet", version = "=0.20.0" }
+pallas-codec = { path = "../pallas-codec", version = "=0.21.0" }
+pallas-crypto = { path = "../pallas-crypto", version = "=0.21.0" }
+pallas-primitives = { path = "../pallas-primitives", version = "=0.21.0" }
+pallas-traverse = { path = "../pallas-traverse", version = "=0.21.0" }
+pallas-addresses = { path = "../pallas-addresses", version = "=0.21.0" }
+pallas-wallet = { path = "../pallas-wallet", version = "=0.21.0" }
serde = { version = "1.0.188", features = ["derive"] }
serde_json = "1.0.107"
thiserror = "1.0.44"
diff --git a/pallas-utxorpc/Cargo.toml b/pallas-utxorpc/Cargo.toml
index ff9fa948..de9bc1c6 100644
--- a/pallas-utxorpc/Cargo.toml
+++ b/pallas-utxorpc/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "pallas-utxorpc"
description = "Pallas interoperability with the UTxORPC spec"
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/txpipe/pallas"
homepage = "https://github.com/txpipe/pallas"
@@ -13,6 +13,6 @@ authors = ["Santiago Carmuega "]
[dependencies]
#utxorpc = { path = "../../../utxorpc/rust-sdk" }
utxorpc = { version = "1.0.0-alpha.1" }
-pallas-traverse = { version = "=0.20.0", path = "../pallas-traverse" }
-pallas-primitives = { version = "=0.20.0", path = "../pallas-primitives" }
-pallas-codec = { version = "=0.20.0", path = "../pallas-codec" }
+pallas-traverse = { version = "=0.21.0", path = "../pallas-traverse" }
+pallas-primitives = { version = "=0.21.0", path = "../pallas-primitives" }
+pallas-codec = { version = "=0.21.0", path = "../pallas-codec" }
diff --git a/pallas-wallet/Cargo.toml b/pallas-wallet/Cargo.toml
index 8dab08e0..bd7e37e3 100644
--- a/pallas-wallet/Cargo.toml
+++ b/pallas-wallet/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "pallas-wallet"
description = "Cardano wallet utilities such as key generation"
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/txpipe/pallas"
homepage = "https://github.com/txpipe/pallas"
@@ -11,7 +11,7 @@ authors = ["Santiago Carmuega "]
[dependencies]
thiserror = "1.0.49"
-pallas-crypto = { version = "=0.20.0", path = "../pallas-crypto" }
+pallas-crypto = { version = "=0.21.0", path = "../pallas-crypto" }
ed25519-bip32 = "0.4.1"
bip39 = { version = "2.0.0", features = ["rand_core"] }
cryptoxide = "0.4.4"
diff --git a/pallas/Cargo.toml b/pallas/Cargo.toml
index eab47c3c..8cf30323 100644
--- a/pallas/Cargo.toml
+++ b/pallas/Cargo.toml
@@ -1,7 +1,7 @@
[package]
name = "pallas"
description = "Rust-native building blocks for the Cardano blockchain ecosystem."
-version = "0.20.0"
+version = "0.21.0"
edition = "2021"
repository = "https://github.com/txpipe/pallas"
homepage = "https://github.com/txpipe/pallas"
@@ -11,19 +11,19 @@ readme = "../README.md"
authors = ["Santiago Carmuega "]
[dependencies]
-pallas-applying = { version = "=0.20.0", path = "../pallas-applying/" }
-pallas-network = { version = "=0.20.0", path = "../pallas-network/" }
-pallas-primitives = { version = "=0.20.0", path = "../pallas-primitives/" }
-pallas-traverse = { version = "=0.20.0", path = "../pallas-traverse/" }
-pallas-addresses = { version = "=0.20.0", path = "../pallas-addresses/" }
-pallas-crypto = { version = "=0.20.0", path = "../pallas-crypto/" }
-pallas-codec = { version = "=0.20.0", path = "../pallas-codec/" }
-pallas-utxorpc = { version = "=0.20.0", path = "../pallas-utxorpc/" }
-pallas-configs = { version = "=0.20.0", path = "../pallas-configs/" }
-pallas-rolldb = { version = "=0.20.0", path = "../pallas-rolldb/", optional = true }
-pallas-wallet = { version = "=0.20.0", path = "../pallas-wallet/", optional = true }
-pallas-hardano = { version = "=0.20.0", path = "../pallas-hardano/", optional = true }
-pallas-txbuilder = { version = "=0.20.0", path = "../pallas-txbuilder/", optional = true }
+pallas-applying = { version = "=0.21.0", path = "../pallas-applying/" }
+pallas-network = { version = "=0.21.0", path = "../pallas-network/" }
+pallas-primitives = { version = "=0.21.0", path = "../pallas-primitives/" }
+pallas-traverse = { version = "=0.21.0", path = "../pallas-traverse/" }
+pallas-addresses = { version = "=0.21.0", path = "../pallas-addresses/" }
+pallas-crypto = { version = "=0.21.0", path = "../pallas-crypto/" }
+pallas-codec = { version = "=0.21.0", path = "../pallas-codec/" }
+pallas-utxorpc = { version = "=0.21.0", path = "../pallas-utxorpc/" }
+pallas-configs = { version = "=0.21.0", path = "../pallas-configs/" }
+pallas-rolldb = { version = "=0.21.0", path = "../pallas-rolldb/", optional = true }
+pallas-wallet = { version = "=0.21.0", path = "../pallas-wallet/", optional = true }
+pallas-hardano = { version = "=0.21.0", path = "../pallas-hardano/", optional = true }
+pallas-txbuilder = { version = "=0.21.0", path = "../pallas-txbuilder/", optional = true }
[features]
unstable = ["pallas-rolldb", "pallas-wallet", "pallas-hardano", "pallas-txbuilder"]