Skip to content

Latest commit

 

History

History
1338 lines (1031 loc) · 64.4 KB

CHANGELOG.md

File metadata and controls

1338 lines (1031 loc) · 64.4 KB

v0.30.1 - 2024-08-25

Fix

  • applying: use correct cost model for Conway (#508)
  • applying: add missing Conway pparams variant (#507)
  • interop: support Conway pparams mapping to u5c (#509)
  • primitives: patch remaining Conway issues (#505)
  • primitives: skip nonempty invariant check (#506)

v0.30.0 - 2024-08-21

Chore

  • interop: bump u5c spec to v0.9 (#503)
  • interop: update u5c spec to v0.8.0 (#493)
  • txbuilder: export ExUnits to make them accessible from outside (#497)

Feat

  • interop: implement u5c pparams mapping (#504)
  • interop: introduce field-mask context for u5c (#502)
  • math: add support for some math functions (#483)

Fix

  • exclude large data files blocking crate publish
  • addresses: relax length check during parsing (#491)
  • interop: skip conway certs in u5c (#498)
  • primitives: expose hidden struct fields in Conway (#501)
  • traverse: use Conway types in places they are meant to (#499)

v0.29.0 - 2024-07-15

Chore

  • interop: update u5c spec to v0.7.0 (#489)
  • interop: update u5c specs to v0.6 (#485)

Feat

  • hardano: add fuzzy block search by slot in Immutable db (#484)

Fix

  • interop: map missing u5c redeemers (#490)
  • interop: use correct input order to match redeemers (#487)
  • interop: check for spend purpose when matching redeemers (#486)

v0.28.0 - 2024-07-01

Build

  • deps: update itertools requirement from 0.12.1 to 0.13.0 (#459)

Chore

  • fix lint warnings and outdated tests (#475)
  • improve ImmutableDB error handling (#426)
  • math: initialize pallas-math crate (#474)

Ci

  • skip gmp dep until we can build on windows (#476)

Feat

  • network: add tx submission and tx monitor clients to network facades (#442)

Fix

  • relax CBOR decoding of Conway protocol params update (#473)
  • network: handle end of list in tx monitor response (#305)

Refactor

  • interop: use batching for utxorpc ledger interface (#472)
  • network: don't treat rejected txs as submit protocol errors (#306)

v0.27.0 - 2024-06-01

Chore

  • fix lint warnings (#470)
  • split unstable features into independent flags (#469)
  • traverse: make era enum serializable (#467)

Docs

  • define security policy (#464)

Feat

  • traverse: Decode Conway block headers properly (#466)

Fix

  • network: expose missing members in facades (#468)

v0.26.0 - 2024-05-21

Chore

  • apply lint recommendations (#458)
  • move txbuilder to stable feature (#451)
  • applying: prepare pparams for folding logic (#438)
  • deps: use cryptoxide sha3 instead of depending on sha3 crate (#452)

Feat

  • add a simple Crawler example (#453)
  • configs: add serde for Alonzo genesis file (#436)
  • interop: add ledger context for utxorpc mapping logic (#450)
  • interop: re-export utxorpc spec to unify downstream versions (#448)
  • network: add an extra ergonomic method for n2c chainsync (#439)
  • network: implement GetChainBlockNo local state query (#441)
  • network: implement background keep-alive loop (#427)
  • primitives: derive Eq on relevant structs (#446)
  • traverse: track original era for tx outputs (#447)

Fix

  • applying: fix tx size calculation (#443)
  • configs: parse directly into rational numbers (#437)
  • hardano: exclude last chunk file during immutable db read (#454)
  • primitives: handle conway extreme param updates (#462)

Refactor

  • applying: unify approach for protocol params access (#432)
  • interop: use stateful mapper for u5 (#460)

Test

  • hardano: contemplate skip of last chunk in immutable read (#457)

v0.25.0 - 2024-04-02

Build

  • deps: update utxorpc-spec requirement from 0.3.0 to 0.4.4 (#425)

Feat

  • add Conway 2024-03 CDDL conformity (#424)
  • applying: add support for preview / preprod networks (#422)

Test

  • hardano: fix failing tests on CI context (#429)
  • hardano: discover snapshots by inspecting test_data dir (#428)

v0.24.0 - 2024-03-09

Build

  • deps: update base64 requirement from 0.21.2 to 0.22.0 (#417)
  • deps: update rocksdb requirement from 0.21.0 to 0.22.0 (#403)

Feat

  • implement GetCBOR local state query (#413)
  • add Babbage phase-1 validations (#405)
  • crypto: add Blake2b hasher for 20-bytes digests (#416)
  • network: implement GetGenesisConfig local state query (#407)
  • rolldb: allow optionally overlap of WAL over immutable chain (#419)
  • rolldb: allow crawl from intersect options (#404)

Fix

  • allow extra bytes when decoding base address (#420)
  • primitives: contemplate Conway's CBOR set tag (#421)

v0.23.0 - 2024-02-11

Build

  • deps: update itertools requirement from 0.10.5 to 0.12.1 (#390)

Chore

  • fix new lint warnings (#400)
  • update utxorpc-spec to 0.3.0 (#399)

Feat

  • network: implement stake snapshot local state query (#394)

Fix

  • support multiple pools in stake snapshot query (#396)
  • contemplate legacy tx outputs in utxo by address query (#386)
  • favor Babbage over Conway for tx decoding (#389)
  • addresses: check length before decoding (#377)
  • traverse: fix conway txs not returning reference inputs (#388)
  • traverse: add missing tx field getters for Conway (#392)
  • utxorpc: map missing struct values (#387)

v0.22.0 - 2024-01-25

Feat

  • implement GetCurrentPParams local state query (#322)
  • applying: implement Alonzo phase-1 validations (#380)
  • hardano: enable async for read_blocks_from_point iterator (#379)
  • network: implement server side KeepAlive (#376)

Fix

  • codec: Fix flat encoding and decoding of arbitrarily size integers (#378)
  • network: use initiatorOnlyDiffusionMode correctly after spec fix (#384)

v0.21.0 - 2024-01-04

Build

  • deps: update minicbor requirement from 0.19 to 0.20 (#337)

Chore

  • fix lint warnings across the board (#374)
  • fix code formatting (#363)
  • txbuilder: fix lint warnings (#343)
  • wallet: fix lint warnings (#344)

Doc

  • applying: add ShelleyMA tests description (#356)

Feat

  • introduce transaction builder crate (#338)
  • introduce wallet crate for ed25519-bip32 key management (#342)
  • applying: implement ShelleyMA phase-1 validations (#354)
  • configs: add Shelley config structs (#359)
  • hardano: implement search for the immutabledb reader (#372)
  • hardano: implement immutable db chunk parsing (#328)
  • network: implement GetUTxOByAddress local state query (#341)
  • network: add sanchonet compatibility (#355)
  • network: update n2n handshake versions & add keepalive miniprotocol (#362)
  • network: implement split read / write for NamedPipe bearer (#371)
  • network: implement stake distribution local state query (#340)
  • rolldb: add method to check if db is empty (#352)
  • traverse: improve protocol update access (#360)
  • wallet: implement HD private keys & encrypted wrapper (#358)

Fix

  • add missing Cargo metadata required for publish
  • add missing READMEs for crate publish
  • update pallas-applying to work with keepraw native scripts (#370)
  • add txbuilder to unstable feature gate (#349)
  • correct datum kind for set_datum_hash (#350)
  • return witness objects for conway era multieratx (#346)
  • fix unable to build and sign txs (#345)
  • hardano: remove panics from immutable db parsing (#351)
  • network: demux using one mpsc channel per miniprotocol (#366)
  • network: add tcp_nodelay to bearer (#365)
  • network: use correct client state transition for n2n txsub (#348)
  • network: set so_linger socket option to match cardano-node (#369)
  • network: relax connect args lifetime (#367)

Refactor

  • network: split bearer into read/write (#364)

Release

v0.20.0 - 2023-11-20

Chore

  • fix lint warnings (#339)
  • fix lint warnings (#330)
  • update mini-protocol pdf README link (#301)
  • include configs in main crate (#299)
  • deps: update NamedPipes related deps (#336)

Docs

  • applying: document Byron tx validations (#311)

Feat

  • scaffold Byron phase-1 validations (#300)
  • improve access to genesis utxos (#302)
  • generate genesis utxos from genesis file (#59)
  • introduce RollDB (#307)
  • introduce conway primitives (#290)
  • Move flat en/de from aiken to pallas (#303)
  • applying: validate all inputs in UTxO set (#324)
  • applying: check non-empty set of inputs and outputs (#312)
  • applying: add remaining validations for Byron era (#325)
  • codec: add utility for untyped CBOR fragments (#327)
  • network: add cbor decoder for HardForkQuery (#335)
  • network: scaffold local state query server (#280)
  • network: implement windows named pipes connections (#279)
  • network: implement LocalTxSubmission client (#289)
  • traverse: expose tx update field (#313)

Fix

  • fix conditional code for windows builds (#334)
  • make rolldb an optional dependency (#329)
  • applying: define specific dependency versions
  • applying: contemplate fee rules for genesis UTxOs (#332)
  • network: add missing rt feature for tokio
  • network: add missing feature gate flag to tokio dependency (#333)
  • network: fix bad codec for tx monitoring messages (#298)
  • rolldb: fix find wal sequence semantics (#310)

Refactor

  • network: simplify local state mini-protocol implementation (#326)

v0.19.1 - 2023-09-10

Ci

  • run Rust check on multiple OS (#286)

Fix

  • network: skip unix listener on windows (#287)
  • network: make facade members public (#285)

v0.19.0 - 2023-09-09

Chore

  • fix lint warning (#283)
  • fix pending code formatting (#270)
  • fix clippy warnings (#262)
  • undo upstream crate experiment (#258)
  • upgrade to gasket v0.4 (#256)
  • upgrade gasket to v0.3.0 (#255)
  • Use gasket dep from crates.io (#249)
  • Fix lint warnings for all targets (#240)
  • Improve network tracing messages (#237)
  • traverse: Improve API ergonomics (#233)

Docs

  • Small crate readme tweaks
  • network: Add chain-sync client docs (#252)
  • network: Document BlockFetch client (#251)

Feat

  • Migrate to asynchronous I/O (#241)
  • Add client/server use_channel variants (#228)
  • Allow creation of secret key from bytes (#224)
  • Make the underlying TxBody type generic
  • add helper to create bootstrap addresses (#269)
  • add handshake with query for n2c (#266)
  • Introduce Upstream crate (#230)
  • introduce UTxO RPC interop (#260)
  • Add constants for known miniprotocols
  • addresses: Derive Hash on Address (#235)
  • interop: add block mapping to u5c (#261)
  • network: add server side of blockfetch miniprotocol (#275)
  • network: implement chain sync server side (#277)
  • network: add server-side facades (#282)
  • traverse: Introduce time helpers (#234)
  • traverse: Expose aux data scripts (#232)
  • traverse: improve native asset access (#259)
  • traverse: add network id to genesis values (#272)
  • upstream: Make output generic by adapter (#236)

Fix

  • Make upstream worker easy to connect (#246)
  • use u64 instead of i64 for unit interval and rational numerator (#268)
  • fix builds on windows platform (#263)
  • ignore duplicate consumed inputs (#257)
  • back-merge v0.18.1 hotfix (#254)
  • Handle bearer I/O errors (#247)
  • traverse: fix well-known genesis values for preprod / preview (#284)
  • upstream: Use sync read for chunk dequeue (#239)

Refactor

  • Improve network module naming (#245)
  • Merge multiplexer & miniprotocols into single crate (#244)
  • traverse: Unify mint and output asset artifacts (#231)

BREAKING CHANGE

The signature for Bearer.accept_tcp now returns the bearer, and the address that connected.

This can, for example, be used to implement allow and deny lists for accepting or rejecting incoming connections.

  • Return the remote address from accept_unix

  • cargo fmt

  • Fix comment formatting

v0.18.2 - 2023-08-23

Fix

  • use u64 instead of i64 for unit interval and rational numerator (#268)
  • primitives: Handle U8 and U16 in value serialization

v0.19.0-alpha.2 - 2023-07-18

Chore

  • fix pending code formatting (#270)

Feat

  • add handshake with query for n2c (#266)

Fix

  • use u64 instead of i64 for unit interval and rational numerator (#268)
  • fix builds on windows platform (#263)

v0.19.0-alpha.1 - 2023-06-11

Chore

  • fix clippy warnings (#262)
  • undo upstream crate experiment (#258)
  • upgrade to gasket v0.4 (#256)
  • upgrade gasket to v0.3.0 (#255)
  • Use gasket dep from crates.io (#249)
  • Fix lint warnings for all targets (#240)
  • Improve network tracing messages (#237)
  • traverse: Improve API ergonomics (#233)

Docs

  • Small crate readme tweaks
  • network: Add chain-sync client docs (#252)
  • network: Document BlockFetch client (#251)

Feat

  • Introduce Upstream crate (#230)
  • introduce UTxO RPC interop (#260)
  • Add client/server use_channel variants (#228)
  • Migrate to asynchronous I/O (#241)
  • Allow creation of secret key from bytes (#224)
  • Add constants for known miniprotocols
  • Make the underlying TxBody type generic
  • addresses: Derive Hash on Address (#235)
  • interop: add block mapping to u5c (#261)
  • traverse: Expose aux data scripts (#232)
  • traverse: improve native asset access (#259)
  • traverse: Introduce time helpers (#234)
  • upstream: Make output generic by adapter (#236)

Fix

  • ignore duplicate consumed inputs (#257)
  • back-merge v0.18.1 hotfix (#254)
  • Handle bearer I/O errors (#247)
  • Make upstream worker easy to connect (#246)
  • upstream: Use sync read for chunk dequeue (#239)

Refactor

  • Improve network module naming (#245)
  • Merge multiplexer & miniprotocols into single crate (#244)
  • traverse: Unify mint and output asset artifacts (#231)

BREAKING CHANGE

The signature for Bearer.accept_tcp now returns the bearer, and the address that connected.

This can, for example, be used to implement allow and deny lists for accepting or rejecting incoming connections.

  • Return the remote address from accept_unix

  • cargo fmt

  • Fix comment formatting

v0.18.1 - 2023-04-21

Fix

  • primitives: Handle U8 and U16 in value serialization

v0.19.0-alpha.0 - 2023-04-13

Chore

  • Use gasket dep from crates.io (#249)
  • Fix lint warnings for all targets (#240)
  • Improve network tracing messages (#237)
  • traverse: Improve API ergonomics (#233)

Docs

  • Small crate readme tweaks

Feat

  • Migrate to asynchronous I/O (#241)
  • Allow creation of secret key from bytes (#224)
  • Add client/server use_channel variants (#228)
  • Add constants for known miniprotocols
  • Introduce Upstream crate (#230)
  • Make the underlying TxBody type generic
  • addresses: Derive Hash on Address (#235)
  • traverse: Expose aux data scripts (#232)
  • traverse: Introduce time helpers (#234)
  • upstream: Make output generic by adapter (#236)

Fix

  • Handle bearer I/O errors (#247)
  • Make upstream worker easy to connect (#246)
  • upstream: Use sync read for chunk dequeue (#239)

Refactor

  • Improve network module naming (#245)
  • Merge multiplexer & miniprotocols into single crate (#244)
  • traverse: Unify mint and output asset artifacts (#231)

BREAKING CHANGE

The signature for Bearer.accept_tcp now returns the bearer, and the address that connected.

This can, for example, be used to implement allow and deny lists for accepting or rejecting incoming connections.

  • Return the remote address from accept_unix

  • cargo fmt

  • Fix comment formatting

v0.18.0 - 2023-02-04

Build

  • deps: update env_logger requirement from 0.9.0 to 0.10.0 (#209)
  • deps: update minicbor requirement from 0.18 to 0.19 (#213)

Chore

  • Fix lint issues (#222)
  • Fix README badge (#217)

Feat

  • Derive Debug for Bearer (#219)
  • miniprotocols: Implement tx submission client (#220)

Fix

  • Provide original hash for inline datum (#221)

v0.17.0 - 2023-01-26

Fix

  • use PlutusBytes to encode BigUInt/BigNInt (#216)

v0.16.0 - 2023-01-06

Chore

  • Remove lagging pre-release ref (#206)
  • Fix lint warnings (#205)
  • Remove pre-release ref from deps (#204)
  • Fix address lint issue (#201)
  • miniprotocols: Fix integration tests after preview respin (#203)
  • miniprotocols: Add chain-sync tip test (#199)

Feat

  • Migrate to dumb agents (#198)
  • addresses: Add helper for shelley into stake address (#208)
  • miniprotocols: Introduce tracing (#214)
  • multiplexer: Introduce sync multiplexer option (#210)
  • traverse: produces_at method for MultiEraTx (#200)

Fix

  • Match CBOR encoding of plutus data with the haskell implementation. (#212)
  • addresses: Remove bad todo in bech32 logic (#207)
  • primitives: Handle generic int in Plutus data (#202)

BREAKING CHANGE

handshake, chainsync, localstate and blockfetch mini-protocols changed the API surface

v0.14.2 - 2022-11-14

Build

  • deps: update minicbor requirement from 0.17 to 0.18 (#134)
  • deps: update bech32 requirement from 0.8.1 to 0.9.1 (#177)

Chore

  • Fix linter warnings (#194)
  • Fix lint warnings (#190)
  • Move fee logic out of primitives (#174)
  • Move time logic out of primitives (#173)
  • Move hash logic out of primitives (#172)
  • primitives: Remove redundant address logic (#171)

Feat

  • return indexes along with outputs returned by produces() (#193)
  • Provide access to all assets at a tx out (#180)
  • Add magic constants for preview and preprod environments (#179)
  • Introduce Bech32 crate (#176)
  • addresses: Add hex and bech32 for Shelley parts (#181)
  • primitives: Preserve order of map structures (#192)
  • primitives: Enable serde of ledger structs (#169)
  • traverse: Add helper methods to Asset data (#195)
  • traverse: Provide access to original Datum hash (#189)
  • traverse: Introduce new MultiEraTx helpers (#184)

Fix

  • Stop double CBOR encoding of Plutus script used for hashing (#188)
  • use correct prefix when hashing plutus v2 script (#182)
  • codec: Make Int struct copy (#170)
  • primitives: Handle generic int in Plutus data (#202)
  • primitives: Add missing PartialOrd and Ord to TransactionInput (#191)
  • traverse: Make ToHash trait public outside crate (#186)

v0.13.4 - 2022-11-14

Fix

  • primitives: Handle generic int in Plutus data (#202)

v0.15.0 - 2022-11-13

Chore

  • Remove lagging pre-release ref (#206)
  • Fix lint warnings (#205)
  • Remove pre-release ref from deps (#204)
  • Fix address lint issue (#201)
  • miniprotocols: Fix integration tests after preview respin (#203)
  • miniprotocols: Add chain-sync tip test (#199)

Feat

  • Migrate to dumb agents (#198)
  • traverse: produces_at method for MultiEraTx (#200)

Fix

  • primitives: Handle generic int in Plutus data (#202)

BREAKING CHANGE

handshake, chainsync, localstate and blockfetch mini-protocols changed the API surface

v0.14.0 - 2022-10-13

v0.14.0-alpha.6 - 2022-10-13

Build

  • deps: update minicbor requirement from 0.17 to 0.18 (#134)
  • deps: update bech32 requirement from 0.8.1 to 0.9.1 (#177)

Chore

  • Fix linter warnings (#194)
  • Fix lint warnings (#190)
  • Move fee logic out of primitives (#174)
  • Move time logic out of primitives (#173)
  • Move hash logic out of primitives (#172)
  • primitives: Remove redundant address logic (#171)

Feat

  • return indexes along with outputs returned by produces() (#193)
  • Provide access to all assets at a tx out (#180)
  • Add magic constants for preview and preprod environments (#179)
  • Introduce Bech32 crate (#176)
  • addresses: Add hex and bech32 for Shelley parts (#181)
  • primitives: Preserve order of map structures (#192)
  • primitives: Enable serde of ledger structs (#169)
  • traverse: Add helper methods to Asset data (#195)
  • traverse: Provide access to original Datum hash (#189)
  • traverse: Introduce new MultiEraTx helpers (#184)

Fix

  • Stop double CBOR encoding of Plutus script used for hashing (#188)
  • use correct prefix when hashing plutus v2 script (#182)
  • codec: Make Int struct copy (#170)
  • primitives: Add missing PartialOrd and Ord to TransactionInput (#191)
  • traverse: Make ToHash trait public outside crate (#186)

v0.13.3 - 2022-10-13

Fix

  • Handle undefined CBOR maps in Plutus data (#196)

v0.14.0-alpha.5 - 2022-09-28

Feat

  • traverse: Add helper methods to Asset data (#195)

v0.14.0-alpha.4 - 2022-09-21

Chore

  • Fix linter warnings (#194)

Feat

  • return indexes along with outputs returned by produces() (#193)
  • Provide access to all assets at a tx out (#180)

v0.14.0-alpha.3 - 2022-09-15

Feat

  • primitives: Preserve order of map structures (#192)

Fix

  • primitives: Add missing PartialOrd and Ord to TransactionInput (#191)

v0.14.0-alpha.2 - 2022-09-13

Chore

  • Fix lint warnings (#190)

Feat

  • traverse: Provide access to original Datum hash (#189)

Fix

  • Stop double CBOR encoding of Plutus script used for hashing (#188)

v0.14.0-alpha.1 - 2022-09-11

Fix

  • traverse: Make ToHash trait public outside crate (#186)

v0.14.0-alpha.0 - 2022-09-11

Build

  • deps: update minicbor requirement from 0.17 to 0.18 (#134)
  • deps: update bech32 requirement from 0.8.1 to 0.9.1 (#177)

Chore

  • Move fee logic out of primitives (#174)
  • Move time logic out of primitives (#173)
  • Move hash logic out of primitives (#172)
  • primitives: Remove redundant address logic (#171)

Feat

  • Add magic constants for preview and preprod environments (#179)
  • Introduce Bech32 crate (#176)
  • addresses: Add hex and bech32 for Shelley parts (#181)
  • primitives: Enable serde of ledger structs (#169)
  • traverse: Introduce new MultiEraTx helpers (#184)

Fix

  • use correct prefix when hashing plutus v2 script (#182)
  • codec: Make Int struct copy (#170)

v0.13.2 - 2022-08-19

Fix

  • addresses: Skip error on pointer address overflow (#178)

v0.13.1 - 2022-08-08

Fix

  • primitives: Fix overflow on cost model (#168)
  • primitives: Make cost models optional (#167)

v0.13.0 - 2022-08-07

Chore

  • Fix lint warnings (#166)
  • Fix trailing comma lint issue (#165)

Feat

  • primitives: Add ToHash to DatumOption (#163)
  • traverse: Add missing getters on output (#162)
  • traverse: Add missing getters for witness fields (#160)
  • traverse: Add reference inputs to Tx (#161)
  • traverse: Expose collateral return (#158)

Fix

  • primitives: Handle alonzo headers without prev-hash (#164)
  • primitives: Force CBOR null primitive for missing aux data (#159)

v0.12.0 - 2022-08-02

Chore

  • Add test for output traverse (#157)
  • Fix lint warnings

Fix

  • addresses: Fix Byron cbor structure (#155)

v0.12.0-alpha.0 - 2022-07-20

Chore

  • Apply code formatting
  • primitives: Add Plutus script hash test (#147)

Feat

  • addresses: Improve API ergonomics (#148)
  • miniprotocols: Add Tx-Mempool-Monitoring mini-Protocol (#150)
  • traverse: Introduce more new accessor methods (#153)
  • traverse: Introduce new accessor methods (#152)
  • traverse: Expose multi-era metadata (#151)
  • traverse: Integrate address library (#149)

Fix

  • multiplexer: Honor read timeouts in bearer logic (#154)

v0.11.1 - 2022-07-03

Fix

  • traverse: Add missing era probe

v0.11.0 - 2022-07-02

Build

  • deps: update bech32 requirement from 0.8.1 to 0.9.0 (#104)

Chore

  • primitives: Organize test data on a single dir (#112)

Docs

  • Update changelog

Feat

  • Add mechanism to check era's features (#120)
  • Introduce 'traverse' library (#117)
  • Introduce Addresses crate (#137)
  • Add Vasil / Babbage compatibility (#126)
  • Implement common traverse iterators (#119)
  • multiplexer: Use single channel for muxer (#133)
  • primitives: Introduce MintedBlock concept (#116)
  • traverse: Add era-handling utilities (#123)
  • traverse: Add output refs for inputs (#122)
  • traverse: Add tx input traversing (#121)
  • traverse: Add output-at helper method (#124)
  • traverse: Add ada amount method on output (#135)
  • traverse: Expose block number value (#140)
  • traverse: Improve MultiEraOutput ergonomics (#141)

Fix

  • Add missing README blocking publish
  • Add missing README preventing publish
  • multiplexer: Use buffers that own the inner channel (#113)
  • multiplexer: Handle bearer io error instead of panic (#118)
  • primitives: Handle bytes indef in Plutus data (#143)
  • primitives: Adjust member visibility in structs (#144)
  • traverse: Handle Shelley's lack of invalid_transactions field (#138)

v0.10.1 - 2022-07-02

Fix

  • primitives: Handle bytes indef in Plutus data

v0.11.0-beta.1 - 2022-06-25

Feat

  • Introduce Addresses crate (#137)

Fix

  • Add missing README blocking publish
  • traverse: Handle Shelley's lack of invalid_transactions field (#138)

v0.11.0-beta.0 - 2022-06-20

Build

  • deps: update bech32 requirement from 0.8.1 to 0.9.0 (#104)

Feat

  • Add Vasil / Babbage compatibility (#126)
  • multiplexer: Use single channel for muxer (#133)
  • traverse: Add ada amount method on output (#135)

v0.11.0-alpha.2 - 2022-06-17

Feat

  • traverse: Add output-at helper method (#124)
  • traverse: Add era-handling utilities (#123)
  • traverse: Add output refs for inputs (#122)
  • traverse: Add tx input traversing (#121)

Fix

  • Add missing README preventing publish

v0.11.0-alpha.1 - 2022-06-15

Feat

  • Add mechanism to check era's features (#120)
  • Implement common traverse iterators (#119)
  • Introduce 'traverse' library (#117)
  • primitives: Introduce MintedBlock concept (#116)

Fix

  • multiplexer: Handle bearer io error instead of panic (#118)

v0.11.0-alpha.0 - 2022-06-10

Chore

  • primitives: Organize test data on a single dir (#112)

Docs

  • Update changelog

Fix

  • multiplexer: Use buffers that own the inner channel (#113)

v0.10.0 - 2022-06-04

Chore

  • deps: Upgrade to minicbor 0.17 (breaking changes) (#109)

Feat

  • Improve multiplexer ergonomics (#111)
  • Add mechanism to retain original CBOR (#110)
  • multiplexer: Allow fine-grained control of concurrency strategy (#106)
  • primitives: Add self-contained transaction struct (#107)

v0.9.1 - 2022-05-03

Fix

  • Provide access to PlutusScript bytes (#102)

v0.9.0 - 2022-04-30

Ci

  • Skip publish confirmation prompt
  • Enable tag-based release workflow
  • Add draft version of the release workflow (#101)

Docs

  • Add retroactive change log

v0.9.0-alpha.1 - 2022-04-29

Chore

  • Add unit test for native script hash (#98)
  • Move miniprotocol examples to custom crate (#97)

Feat

  • Implement Plutus Data hashing / JSON (#100)

Fix

  • Use correct struct for metadatum labels (#96)
  • Update failing native script json test (#95)
  • primitives: Fix native scripts policy id (add missing tag) (#94)
  • primitives: Fix native scripts before/after type serialization (#93)

v0.9.0-alpha.0 - 2022-04-26

Feat

  • primitives: Implement length-preserving uints (#92)
  • primitives: Implement canonical JSON serialization (#90)

v0.8.0 - 2022-04-11

v0.8.0-alpha.1 - 2022-04-11

Feat

  • Improve alonzo address ergonomics (#87)
  • Make blockfetch observer mutable (#86)
  • miniprotocols: Allow step-by-step agents (#85)

v0.8.0-alpha.0 - 2022-03-22

Chore

  • Fix rogue clippy warnings (#79)
  • Add block-decoding example (#78)
  • Update README with new crates (#77)

Docs

  • Split miniprotocol status into initiator vs responder (#82)
  • Fix README links (#81)
  • Add miniprotocols crate README (#80)

Feat

  • miniprotocols: Allow graceful exit on chainsync and blockfetch (#83)

Refactor

  • miniprotocols: Use pure functions for state machines (#84)

pallas-codec@0.7.1 - 2022-03-16

Fix

  • miniprotocols: Handle regression related to multi-msg payloads (#76)

v0.7.0 - 2022-03-16

v0.7.0-alpha.1 - 2022-03-16

Build

  • deps: update minicbor requirement from 0.14 to 0.15 (#72)

Feat

  • Use DecodeOwned for improved ergonomic (#74)
  • Introduce shared codec lib (#71)

Fix

  • Use minicbor int to represent metadatum ints (#73)
  • primitives: Handle very BigInt in plutus data (#75)

v0.7.0-alpha.0 - 2022-03-13

Fix

  • primitives: Handle map-indef variant for aux data (#70)

Fix

  • primitives: Add missing variant (not in CDDL) to AddrAttr enum (#69)

Fix

  • primitives: Fix decoding of empty Nonce hash (#67)

Fix

  • primitives: Fix round-trip decoding of Alonzo update struct (#66)

v0.6.0 - 2022-02-28

v0.5.4 - 2022-02-28

Build

  • deps: minicbor-0.14, minicbor-derive-0.9.0, fix build (#63)

Fix

  • miniprotocols: Decode BlockContent correctly (#60)
  • primitives: Fix round-trip decoding of move_instantaneous_reward struct (#64)
  • primitives: Fix ssc struct codec (#62)
  • primitives: Fix Byron 'Up' struct decoding (#61)

v0.5.0 - 2022-02-24

Chore

  • Fix clippy warnings

v0.5.0-beta.0 - 2022-02-24

Chore

  • Tidy up examples

Feat

  • Handle correct probing of genesis block (#57)

Fix

  • primitives: Fix round-trip decoding of genesis block (#58)

v0.5.0-alpha.5 - 2022-02-23

Feat

  • Allow chainsync to start from origin (#56)

v0.5.0-alpha.4 - 2022-02-18

Feat

  • add Eq & Ord to Era (#53)

v0.5.0-alpha.3 - 2022-02-17

Feat

  • Make chainsync protocol era-agnostic (#52)
  • Include cbor probing for all known eras (#51)

v0.5.0-alpha.2 - 2022-02-16

Feat

  • Implement rollback buffer (#49)

Fix

  • Add mutability to chainsync observer (#50)

v0.5.0-alpha.1 - 2022-02-14

Chore

  • Simplify ChainSync agent logic (#48)

Feat

  • Add Byron header hashing (#45)
  • Implement block cbor probing (#44)
  • primitives: Improve ergonomics for Byron primitives (#47)

Fix

  • primitives: Probe old shelley blocks correctly (#46)

v0.5.0-alpha.0 - 2022-02-09

Chore

  • Merge Byron / Alonzo into single crate (#43)
  • Add logo to README (#42)
  • Add logo assets
  • Merge mini-protocols into single crate (#40)

Feat

  • Introduce Byron library (#39)

Test

  • Overflow error in ExUnits (#38)

v0.4.0 - 2022-01-31

Build

  • Enable dependabot
  • deps: update minicbor requirement from 0.12 to 0.13 (#37)
  • deps: update cryptoxide requirement from 0.3.6 to 0.4.1 (#36)
  • deps: update minicbor-derive requirement from 0.7.2 to 0.8.0

Docs

  • Add block download example (#24)

Feat

  • make use of the pallas_crypto::Hash type (#25)

Fix

  • alonzo: ExUnits steps overflow (#35)

Pull Requests

  • Merge pull request #27 from txpipe/nicolasdp/ed25519-plus
  • Merge pull request #23 from txpipe/nicolasdp/pallas-crypto-faster-hash-computation
  • Merge pull request #21 from txpipe/dependabot/cargo/minicbor-derive-0.8.0

v0.3.9 - 2022-01-09

Fix

  • alonzo: Apply valid cbor codec for Nonce values (#20)

v0.3.8 - 2022-01-08

Fix

  • alonzo: Contemplate aux data with multiple plutus scripts (#19)

v0.3.7 - 2022-01-07

Fix

  • alonzo: Apply correct codec for protocol param updates (#18)

v0.3.6 - 2022-01-06

Fix

  • alonzo: Make 'invalid txs' field optional for old block compatibility (#17)

v0.3.5 - 2022-01-03

Chore

  • Fix formatting / linting issues

Ci

  • Ignore clippy needless_range_loop
  • multiplexer: Fix connection refused error in integration tests (#13)

Fix

  • chainsync: Stop the consumer machine when intersect is not found (#14)
  • machines: Don't warn on expected end-of-input errors (#15)
  • multiplexer: Remove disconnected protocols from muxer loop (#16)

Pull Requests

  • Merge pull request #9 from 2nd-Layer/main

v0.3.4 - 2021-12-19

Ci

  • add validation workflow on push

Feat

  • Disable Unix socket on non-unix platforms
  • multiplexer: Add error messages to potential panics

Style

  • multiplexer: format code

Test

  • multiplexer: Add basic integration tests

Pull Requests

  • Merge pull request #8 from 2nd-Layer/disable_unix_socket_on_non-unix_system

v0.3.3 - 2021-12-14

Chore

  • improve gitignore

Docs

  • multiplexer: tidy up examples
  • multiplexer: add introduction to readme

Fix

  • alonzo: avoid indef arrays isomorphic codec issues
  • alonzo: deal with transaction body ordering
  • alonzo: use correct codec for plutus data
  • multiplexer: resolve lint issues

Refactor

  • make chainsync machine agnostic of content

v0.3.2 - 2021-12-10

Feat

  • blockfetch: add more observer events

v0.3.1 - 2021-12-10

Feat

  • alonzo: add instantaneous reward model

Fix

  • intra dev dependencies for example code
  • update incompatible doc link versions
  • alonzo: bad epoch data type
  • alonzo: visibility of struct members

v0.3.0 - 2021-12-09

Chore

  • bump version numbers
  • bump versions
  • alonzo: ensure isomorphic decoding / encoding

Feat

  • alonzo: small ergonomic improvements to lib api
  • alonzo: add mechanism to compute hashes of common structs
  • blockfetch: add on-demand block-fetch client
  • chainsync: add cursor to observer args
  • chainsync: add tip finder specialized client

Fix

  • update incompatible doc link versions
  • handshake: make client struct data public

Refactor

  • multiplexer: allow multiplexer channels to be sequantially shared

Style

  • apply fmt to entire workspace