Changelog
For more elaborate changelogs, refer to our documentation: https://docs.second.tech/changelog/changelog/ Below is a more concise summary for each version.v0.1.0-beta.7
ark-lib
- BREAKING: Refactor
GenesisItem::Arkoorto remove embedded policy. Removes thePolicyfromGenesisItem::Arkoorto allow adding new policies without introducing breaking changes to the protocol encoding. #1396 - Split
VtxoPolicyinto user-facing and server-internal types #1542 - Fix encoding for VTXOs with more than 256 genesis items #1550
- BREAKING:
ProtocolEncodingfor genesis length fields has changed - Fix bug in signed tree encoding/decoding round-trip #1551
- BREAKING: Remove old pre-hark encoding of
VtxoTreeSpec#1552 BoardBuildergains functionality to trackServerVtxos and provides methods to build internal unsigned VTXOs and transactions #1513
bark
- BREAKING: Implement unified mailbox delivery. Bark now uses a unified mailbox system for receiving VTXOs, providing more reliable delivery across different sources. Addresses now use mailbox addresses. #1412
- Add environment variable support to Config #1558
- Add
Wallet::next_round_start_timeto ask server for next round start time #1559 - Add delegated maintenance and refresh APIs to
Walletthat return immediately with a pending movement that can be tracked viasync()for completion status #1566 - Add
--delegatedflag tomaintainandrefreshcommands for non-blocking operations #1566
server
- Add NextRoundTime endpoint to expose next scheduled round start time #1559
- Migrate lightning invoice monitoring from polling to TrackAll stream with improved reliability and automatic stream recovery #1453
- Notify sender promptly on intra-ark lightning payment cancellation #1543
- Drop the
boarddatabase table - board tracking is now handled through the virtual transaction tree #1513
v0.1.0-beta.6
ark-lib
tree::signedmodule is refactored to add hArk protocol. For hArk details, see Evolving the Ark Protocol Using CTV and CSFS #1440- All leaves now have an unlock hash attached
- Leaf txs are no longer signed during the interactive process
- Add
BoardBuilder::new_from_vtxoto reconstruct a board from a VTXO #1472 - Changes to arkoor builder to support dust VTXOs #1440
bark
- Round protocol changed to hArk protocol #1440
- Offboards and onchain payments temporarily disabled
- New round VTXOs are now not immediately spendable after interactive round part finished
- All BarkPersister API was made async, resulting in most of Bark’s API becoming async too #1485
- Support sending and receiving dust VTXOs #1440
- Re-enable send-to-onchain functionality -
bark send-onchaincommand now returns offboard txid #1531 - BREAKING: Replace VtxoSeed by WalletSeed to allow deriving key dedicated to mailbox. Normal derivations were replaced by hardened ones. Any wallet created before this change won’t load successfully anymore #1452
server
- Round protocol changed to hArk protocol #1440
- New gRPC endpoints:
SubmitRoundParticipation,RoundParticipationStatus,RequestLeafVtxoCosign,RequestForfeitNonces,ForfeitVtxos - gRPC
SubmitPaymentnow returns an unlock_hash
- New gRPC endpoints:
- Introduce
SyncManagerandBlockIndexutilities for block-based sync #1471 - Rename
hodlreferences toholdacross configuration and code #1478 - Support dust VTXOs in arkoor and lightning #1440
captaind
- Validate board server pubkey during registration to prevent potential double-spend attacks #1472
- Add FeeEstimator module for dynamic fee rate estimation #1496
v0.1.0-beta.5
All
- Change variants of the word “cancel” to US spelling. This affects REST endpoints, function names and RPC types/names. #1415
ark-lib
- Add
Vtxo::is_fully_signedto check whether a VTXO is fully signed #1293 - Added
get_final_amounttolightning::Invoice#1331 - The notion of arkoor-depth has been removed #1342
- Make compatible with WASM for the web and ensure compatibility in CI #1363
- Created a new
challengesmodule to centralize VTXO ownership challenge types #1368
bark
- Bark will not consider arkoor-depth anymore #1342
- Bark’s
pay_lightning_invoiceis made non-blocking #1401 - Remove support for recovering round VTXOs from past rounds #1417
- Renamed
Wallet::movementstoWallet::history#1455
bark-json
- Movements are ordered by creation date followed by ID from newest to oldest #1354
Movement::metadatais now JSON instead of a string- Implement a strongly typed PaymentMethod #1362
- Rename MovementStatus::Finished to MovementStatus::Successful #1362
server
- Deprecating
PostArkoorPackageMailboxandEmptyArkoorMailboxgRPC methods #1292 - Creation of new gRPC methods
PostVtxosMailbox,SubscribeMailboxandReadMailboxwith checkpoint system #1292 initiate_lightning_paymentdoesn’t wait for payment settlement anymore #1401- Added
invoice_expiryandreceive_htlc_forward_timeoutconfig options #1419
v0.1.0-beta.4
barkwallet
- Fixed a bug in which HTLC vtxo’s weren’t properly marked as spent #1345
v0.1.0-beta.3
ark-lib
- Added
offboard_feeratefield toArkInfo. The offboard feerate is now fixed and no longer specified JIT for each round. #1070 - Removed the
RoundEvent::Startvariant #1070 - A new field
ln_receive_anti_dos_requiredhas been added to theArkInfostruct #1183
bark-wallet
- A full rewrite occurred on how state is managed internally #1070
- Increased stability
- Can sign up to a round and make round progress asynchronously
- Input VTXOs are locked at signup to the round
- Output VTXOs are made available as soon as we have signed funding tx
- Rename some lightning methods to be more consistent #1279
- Big refactor of the movements API and related types #1275
- Add experimental
Daemonto run background tasks #1297
bark-cli
- Refresh, offboard and all other commands that participate in a round are now returning
RoundStatus#1070 - The
bark ln claimcommand now accepts an optional--tokenargument #1183 - Not all bark config variables are required anymore, default values will be filled for missing values #1254
- Add experimental
barkddaemon with REST HTTP server and background process
bark-server
SubscribeRoundEventsgRPC no longer opens with the last happened event #1070- A new configuration variable,
ln_receive_anti_dos_required, was added #1183