All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning as described in The Cargo Book.
0.6.4 - 2023-01-02
- Implement
From<trade::DealId>andFrom<swap::SwapId>forUuidby @h4sh3d (#323)
- Don't persist master secret key in
KeyManagerand derive account level keys on initialization by @TheCharlatan (#322) - Rename
DoubleKeysintoSwapRoleKeysby @h4sh3d (#324) - Improve documentation for protocol functions by @h4sh3d (#326)
- Stand alone reveal proof message is removed and part of Alice and Bob reveal parameters by @h4sh3d (#325)
0.6.3 - 2022-12-28
- Derive strict encoding for FundingTx (segwit v0) by @TheCharlatan (#320)
0.6.2 - 2022-12-28
- Derive strict encoding for
Alice(segwit v0),Bob(segwit v0), andKeyManagerby @TheCharlatan (#318)
- Fee strategy
rangesupport is now under the new crate featurefee_rangeand disable by default by @h4sh3d (#314) - Change Bitcoin fee unit from
sat/vBtosat/kvBby @h4sh3d (#315)
- Check input lenght when parsing deals from strings by @h4sh3d (#313])
- Add estimated witness when computing transaction fee by @h4sh3d (#317)
0.6.1 - 2022-12-14
- Implement
FromStrforDealIdandSwapIdby @TheCharlatan (#307]) - Derive
PartialOrdandOrdforUuid,DealId, andSwapIdby @TheCharlatan (#308)
0.6.0 - 2022-12-13
Uuidwrapper type againstuuid:Uuidto identify trades and swaps, the wrapper implements strict encoding functionalities by @h4sh3d (#297)- New
DealIdandSwapIdtypes wrapping genericUuidby @h4sh3d (#297)
- Module
negotiationis renamed as thetrademodule by @h4sh3d and @Lederstrumpf (#296) OfferandPublicOfferare renamedDealParametersandDeal, these structs are used to initialized a swap during the trade setup and should be the outcome of a proper negotiation phase currently out-of-scope for this library by @h4sh3d and @Lederstrumpf (#296)- Deal
uuidtype is switched to a wrapper type by @h4sh3d (#297)
SwapIdis removed and use the newUuidwrapper type by @h4sh3d (#297)lightning_encodingis removed for the protocol messages by @h4sh3d (#298)
0.5.1 - 2022-08-15
- Offer
uuidof typeUuid(#292) - Offer and public offer
fingerprintfunctions, returnsOfferFingerprint(#292)
OfferIdandPublicOfferIdare replaced by the new offeruuidandfingerprintfunctions (#292)
0.5.0 - 2022-07-27
- Proper serde support on principal types (#259)
- Transaction label display and getters (#260)
- Impl
Fromfor timelocks (#265) - Impl some traits to replace node's
Coinstructure with core'sBlockchain(#266) - More type transformation to ease usage in node (#275)
- Re-export concrete types for Bitcoin-Monero swap pair (#273)
- Replaced
Ctx: Swapgeneric context with specific generics (#255, #256) - Re-work blockchain management and serialization (#264)
- Bump node related dependencies (#220, #281)
- Bump bitvec to version 1 (#238)
- Move to Rust edition 2021 (#279)
- Use bytes convertion to keep secpfun compatibility (#269)
- Bump MSRV (Minimum Supported Rust Version) from 1.54.0 to 1.59.0
- Fix key manager consensus decodable implementation (#239)
serdefeature is removed and always enabled- Remove instruction module and general clean up (#257, #271)
0.4.4 - 2022-02-27
- Bump lnp/bp dependencies (#215)
0.4.3 - 2021-12-06
- Add
strict_encodingimplementation forPublicOffertype (#195) - Add
strict_encodingimplementation forPublicOfferIdtype (#195)
0.4.2 - 2021-12-05
- Add
"monero"and"xmr"variants for MoneroFromStrimpl (#192) - Add
"bitcoin"variant forBitcoin<Segwit>implementation ofFromStr(#193)
- Fix
Displayimplementation to work with any given writer (#192)
0.4.1 - 2021-12-05
- Add
Displayimplementation forOffertype (#188)
- Remove
std::RangefromFeeStrategyand use custom struct with correct inclusive bound checks (#189) - Improve variants for
FromStrnetwork parsing (#184)
0.4.0 - 2021-11-17
- Add prefix
Offerto serialized public offer (#173) - Switch from hex format to base58 (monero) format with checksum verification (#171)
- Update monero requirement from 0.15 to 0.16 (#175)
- Reimplement serde for
SwapId,OfferIdandPublicOfferId(#176)
0.3.0 - 2021-11-01
- Add strict encode + decode for
TxLabel(#136)
- Correct publish been not triggered after release (#165)
- Monero network conversion from blockchain network (#156)
0.2.0 - 2021-10-29
- Workflow automation to manage releases
- Test ser/de strict encoding on protocol messages (#150)
- TxLabel::AccLock (#152)
- Add build on MSRV 1.54.0 in CI (#145)
- Encoding/Decoding support for DLEQ (#144)
- DLEQ implementation (#143)
- Manage accordant address (#142)
- Add correct accordant secret spend management (#139)
- Add PartialEq to events (#134)
- Taproot and key management (#126)
- Auto derive on syncer structs (#132)
- Cleanup and fix features (#149)
- Split out dleq proof from parameters (#153)
- Bump dependencies (#146, #147, #148)
- Update Bitcoin and Bitcoincore RPC deps (#141)
- Renaming some traits & structs (#138)
- Rename and move some files (#137)
- Modify segwit0 and extract witness (#133)
- RPC tests automation (#127, #131)
- Remove public keys from DLEQ proof (#151)
0.1.0 - 2021-08-24
- Swap offers
- Swap roles and trade roles
- Basic support for Bitcoin and Monero
- Basic transaction template for
Bitcoin<SegwitV0> - experimental ECDSA adaptor signatures (with
ecdsa_fun) - Messages exchanged between farcaster-node's microservices
- Tasks and blockchain events used by syncers