Releases: iron-fish/ironfish
Releases · iron-fish/ironfish
v2.10.0
What's Changed
SDK Breaking Changes 🛠
- Rename mutisig export from SDK by @danield9tqh in #5629
Other Changes
- Add a barebone WASM crate by @andiflabs in #5632
- Fix fixtures for wallet scanner by @danield9tqh in #5634
- fix transaction list output by @jowparks in #5635
- removes 'clear*' methods from the walletDb by @hughy in #5639
- Move table flags into OUTPUT group by @NullSoldier in #5638
- Support viewing transaction data for all accounts by @NullSoldier in #5640
- removes unused methods from walletDb by @hughy in #5641
- inlines logic of setNoteHashSequence by @hughy in #5643
- Include account names when displaying notes by @NullSoldier in #5642
- WASM: add bindings for the primitive types by @andiflabs in #5633
- Add a new output 'transfers' and make it default by @NullSoldier in #5644
- WASM: add bindings for
PublicAddress
by @andiflabs in #5645 - WASM: enable in-browser tests through
wasm-bindgen-test
by @andiflabs in #5646 - Run tests on the WASM package as part of the GitHub workflow by @andiflabs in #5647
- Rename Format -> TableOutput and output -> Format by @NullSoldier in #5650
- Add filter start and end support by @NullSoldier in #5651
- Add new date flag and use it in transactions cmd by @NullSoldier in #5654
- adds 'format' option to account import by @hughy in #5653
- WASM: expose the
Asset
andAssetIdentifier
types by @andiflabs in #5656 - WASM: expose the
MerkleNote
andMerkleNoteHash
types by @andiflabs in #5657 - WASM: expose the transaction description types by @andiflabs in #5658
- WASM: expose the
Transaction
type by @andiflabs in #5659 - adds ledger flag to burn command by @patnir in #5660
- handles expert mode required error in ledger ui by @hughy in #5661
- passes wallet passphrase from CLI to migrator by @hughy in #5631
- handles expert mode required errors from ledger dkg app by @hughy in #5662
- updates sign command to use ui.ledger for ledger signing by @hughy in #5663
- WalletScanner skips accounts with createdAt until createdAt sequence is reached by @danield9tqh in #5652
- Expose the ironfish crate features in the wasm crate by @andiflabs in #5664
- WASM: use a macro to simplify the definition of binding types by @andiflabs in #5665
- moves encryption/decryption logic into MasterKey by @hughy in #5636
- upgrades multisig signing commands to use ui.ledger by @hughy in #5670
- converts dkg commands to use ui.ledger by @hughy in #5669
- Rahul/supress websocket connection reattempt by @patnir in #5649
- do not retry ExitErrors in ui.retryStep by @hughy in #5668
- handles Ledger 'invalid dkg status' errors by @hughy in #5667
- adds template for migrations on encrypted wallets by @hughy in #5655
- Pass through decryptForSpender flag to note decryption by @dguenther in #5671
- Rust: remove unnecessary uses of dynamic dispatch by @andiflabs in #5676
- Switch from ubuntu-latest to ubuntu-22.04 by @dguenther in #5675
- optionally retries in cli commands if user rejects Ledger request by @hughy in #5672
- Remove unnecessary qualifications from Rust code by @andiflabs in #5682
- WASM: add bindings for the Sapling keys by @andiflabs in #5673
- WASM: expose the native asset identifier by @andiflabs in #5679
- WASM: add bindings for unsigned transactions and descriptions by @andiflabs in #5674
- WASM: add bindings for
Note
by @andiflabs in #5680 - adds a single signer transaction signing test by @hughy in #5683
- removes unused argument from RawTransaction.postedSize by @hughy in #5684
- throws error in createTransaction if tx is too big by @hughy in #5686
- adds migrations README by @hughy in #5677
- displays tx details before signing in 'wallet:sign' by @hughy in #5691
- Remove unused/unnecessary code from
ironfish::test_utils
by @andiflabs in #5690 - checks max transaction size while funding transaction by @hughy in #5687
- wallet:ledger:address CLI command by @patnir in #5693
- Pass through Chainport error messages from API by @dguenther in #5695
- adds support for fetching account tx by range by @hughy in #5694
- v2.10.0 by @patnir in #5696
- Staging to master v2.10.0 by @patnir in #5697
Full Changelog: v2.9.0...v2.10.0
v2.9.0
What's Changed
- Added more functionality for ledger and multisig accounts. Improvements to the multisig broker server
- Consume all of the rust crates from crates.io instead of github
- bug fixes + CLI usability improvements
SDK Breaking Changes 🛠
- Pass in account head to wallet/createAccount by @danield9tqh in #5619
- Proof generation key is now a
ironfish
owned type that is defined inironfish-zkp
, construction occurs now viaProofGenerationKey::new()
instead ofProofGenerationKey { ak, nk }
. It is re-exported viaironfish
rust package, so imports should not change. by @jowparks in #5559
New Contributors
Full Changelog: v2.8.1...v2.9.0
v2.8.1
What's Changed
- Add @ledgerhq/errors resolution to package by @NullSoldier in #5533
Full Changelog: v2.8.0...v2.8.1
v2.8.0
What's Changed
Other Changes
- Target network fees is in IRON by @patnir in #5455
- Fixes fetching assets for display in wallet:transactions:info by @dguenther in #5456
- Fix wallet:chainport:send fee selection when -a is used by @dguenther in #5458
- Use Iron Fish API for bridge info by @dguenther in #5457
- Fix vscode not resolving test types by @mat-if in #5294
- Store backup of ledger account on disk by @patnir in #5438
- Continously ask for name if duplicate by @NullSoldier in #5463
- adds multisig server to broker dkg messages by @hughy in #5459
- Update zondax ironfish to 0.5.1 by @patnir in #5449
- Adding zondax/ledger-js dependency by @patnir in #5466
- multisig server signing by @hughy in #5464
- Move multisig broker into its own folder by @NullSoldier in #5467
- Remove references to stratum in MultisigBroker by @NullSoldier in #5468
- Split out ledger classes into files by @NullSoldier in #5469
- adds TLS support to multisig server by @hughy in #5465
- encrypts multisig server messages by @hughy in #5470
- Render error in ui/retry by @NullSoldier in #5471
- Prefer the account name as the participant name by @NullSoldier in #5472
- fixes default tls flag in multisig commands by @hughy in #5475
- reduces log output when using multisig broker by @hughy in #5481
- Cleanup sessions on Multisig Broker Server by @mat-if in #5480
- Rahul/add ledger to chainport send by @patnir in #5479
- automatically retries messages to multisig broker by @hughy in #5477
- multisig broker server broadcasts on step completions by @hughy in #5476
- Cleanup DKG identity creation by @NullSoldier in #5473
- prevents incorrect session encryption from halting process by @hughy in #5483
- Add ability for sessions to track specific clients by @mat-if in #5482
- updates ux status messages waiting for multisig broker by @hughy in #5484
- Use ledger action to make ledger more reliable by @NullSoldier in #5474
- adds idle session timeout to multisig broker server by @hughy in #5485
- Add @ledgerhq/errors package to package.json by @NullSoldier in #5487
- Upgrade wallet:multisig:sign to use ui.ledger by @NullSoldier in #5489
- Move ledger UI functions into UI by @NullSoldier in #5486
- Upgrade wallet:import to use ui.ledger by @NullSoldier in #5488
- Handle appInfo() crash on rust app by @NullSoldier in #5491
- Use the connected app in case of disconnect by @NullSoldier in #5492
- get identity after dkg parameters in dkg:create by @hughy in #5495
- resets ledger ui status between errors by @hughy in #5490
- Use the same ledgerhq/errors as other lib by @NullSoldier in #5498
- Unify ledger errors and zondax errors by @NullSoldier in #5499
- Add flags for minSigners and totalParticipants for dkg:create by @mat-if in #5497
- Handle app command rejections from device by @NullSoldier in #5500
- Switch sendTransaction to use ledger UI by @NullSoldier in #5496
- Have ledger ui tell the user to approve by @NullSoldier in #5501
- Handle DKG reject message by @NullSoldier in #5502
- removes logger from Ledger class by @hughy in #5503
- Convert ui.retry to new confirmListPrompt by @NullSoldier in #5504
- Show account name public packages by @patnir in #5506
- Backup ledger keys in a separate step by @patnir in #5505
- Unhandled exception will stop UI action by @patnir in #5507
- unhide chainport:send by @patnir in #5461
- Fix rejection type on C vs Rust SDK by @NullSoldier in #5508
- Set approve timeout greater than connect timeout by @NullSoldier in #5509
- feat(cli): Update transaction summary for chainport transactions by @rohanjadvani in #5494
- Avoid connect handshake and handle all error cases by @NullSoldier in #5512
- Remove a stray apostrophe from NotEnoughFunds message by @dguenther in #5514
- reviews tx on InvalidTxHash error by @hughy in #5513
- Handle DeviceDisconnected Error by @NullSoldier in #5515
- Handle ledger app panics by @NullSoldier in #5516
- use numberprompt for total participants in multisig sign by @patnir in #5517
- Upgrade ledger-ironfish-js to 1.0.0 by @NullSoldier in #5518
- Handle ledger DisconnectDevice error by @NullSoldier in #5519
- adds owner to RpcMint by @hughy in #5522
- Update readme documentation on error codes returned by @NullSoldier in #5523
- Handle all device locks as manual retry by @NullSoldier in #5524
- Add an ability to request identity based on approval by @NullSoldier in #5525
- Handle all connecting errors as LedgerConnectError by @NullSoldier in #5526
- adds default multisig broker server by @hughy in #5520
- Upgrade ledger:backup cmd to use ledger action by @NullSoldier in #5527
- Fix ledger restore to require encrypted key by @NullSoldier in #5528
- Upgrade ledger:restore cmd to use ledger ui by @NullSoldier in #5529
- Bump SDK and CLI to 2.8.0 by @NullSoldier in #5532
- STAGING -> MASTER by @NullSoldier in #5531
Full Changelog: v2.7.0...v2.8.0
v2.7.0
What's Changed
Other Changes
- feat(cli): Unhide encryption CLI commands by @rohanjadvani in #5396
- feat(cli,ironfish): Add descriptions to primitives index by @rohanjadvani in #5412
- feat(cli,ironfish): Improve export for AccountImport by @rohanjadvani in #5414
- Add the ability to use a ledger device with the mint command by @mat-if in #5417
- exports makeFakeWitness test util from ironfish sdk by @hughy in #5415
- Enable transfering in a mint in the CLI by @NullSoldier in #5418
- use the testnet api url for asset verification when on testnet network by @mat-if in #5384
- Revert "exports makeFakeWitness test util from ironfish sdk (#5415)" by @hughy in #5419
- Feat/ledger dkg cli by @patnir in #5421
- Allows
--metadata ''
when minting an asset by @mat-if in #5424 - adds exportable devUtils module by @hughy in #5423
- separates Ledger DKG logic from single signer by @hughy in #5425
- Error for too many participants by @patnir in #5426
- Ask for confirmation while retrying ledger connect by @patnir in #5428
- fix resolution of @zondax/ledger-js package by @hughy in #5427
- Review ledger transaction before commitment by @patnir in #5429
- Expect to participant in signing by @patnir in #5431
- Fix logical error on catching duplicates by @patnir in #5432
- optionally sets createdAt when importing multisig accounts by @hughy in #5430
- fixes rendering of tx assets if node not synced by @hughy in #5436
- Use Chainport fallback token list API by @dguenther in #5437
- Rename interactive step Identity to Participant Identity by @mat-if in #5434
- Rename newAccount flag in dkg create command to name by @mat-if in #5435
- chainport config update with mainnet fields by @patnir in #5422
- Fix minor typos (show -> shown) by @mat-if in #5433
- Rahul/signing app error display improvement by @patnir in #5439
- Temporarily assign different URL for mainnet by @mat-if in #5441
- explicityly asking to broadcast ledger transaction by @patnir in #5440
- Detects whether ironfish dkg app is open by @patnir in #5442
- refresh Ledger connection before each instruction by @hughy in #5444
- displays own identity at start of signing process by @hughy in #5445
- ensures that min signers entered is <= total participants by @hughy in #5446
- changes 'backup' from flag to arg in 'restore' by @hughy in #5447
- uses actionable error message for common Ledger errors by @hughy in #5448
- wallet:multisig:account:participants displays your identity separately by @mat-if in #5450
- inputNumberPrompt and usage by @patnir in #5443
- bumps versions for v2.7.0 by @hughy in #5452
- staging -> master by @hughy in #5451
- Revert "staging -> master (#5451)" by @mat-if in #5453
- staging > master by @mat-if in #5454
Full Changelog: v2.6.0...v2.7.0
v2.6.0
Highlights
- Wallet Encryption 🔒
What's Changed
Other Changes
- Move JSON flags into flags module by @NullSoldier in #5199
- Add custom help category for RPC flags by @NullSoldier in #5200
- Added missing RemoteFlags on commands by @NullSoldier in #5201
- Upgrade commands to use JsonFlags by @NullSoldier in #5202
- Fix start command wallet flag over-riding config by @NullSoldier in #5204
- Add an asset info example by @NullSoldier in #5205
- Reorder chain commands so args are before flags by @NullSoldier in #5203
- Update chain description by @NullSoldier in #5207
- Delete autocomplete plugin by @NullSoldier in #5208
- Update command descriptions by @NullSoldier in #5209
- feat(rust): Add xchacha20poly1305 functions by @rohanjadvani in #5210
- status command returns json by @mat-if in #5215
- use ui json element instead of custom json parsing by @mat-if in #5216
- feat(rust,rust-nodejs): Add napi
encrypt
function for xchacha20poly1305 by @rohanjadvani in #5217 - feat(rust-nodejs): Add napi
decrypt
xchacha20poly1305 function by @rohanjadvani in #5218 - chore(rust-nodejs): Update Napi JS index file by @rohanjadvani in #5224
- CLI debug command uses card output and has json support by @mat-if in #5212
- feat(ironfish,rust-nodejs): Add EncryptedAccount class by @rohanjadvani in #5226
- CLI fees command uses card output and has json support by @mat-if in #5213
- update config descriptions to match our new standard by @mat-if in #5220
- feat(ironfish): Add serialization for encrypted accounts by @rohanjadvani in #5230
- feat(ironfish): Save encrypted accounts in the wallet by @rohanjadvani in #5237
- feat(ironfish): Add
encrypt
method for account by @rohanjadvani in #5247 - update mempool descriptions and add json support to status by @mat-if in #5221
- update migrations descriptions, migrations list supports json by @mat-if in #5222
- update peers descriptions, show -> info, add json to info by @mat-if in #5235
- update rpc descriptions, add json output by @mat-if in #5244
- update workers status cli desc, add json by @mat-if in #5245
- update miners command descriptions, add json to pool status by @mat-if in #5234
- Move
wallet:post
->wallet:transactions:post
by @NullSoldier in #5251 - move
wallet:transaction:watch
->wallet:transactions:watch
by @mat-if in #5254 - move
wallet:transaction:import
->wallet:transactions:import
by @mat-if in #5252 - move
wallet:transaction:view
->wallet:transactions:decode
by @mat-if in #5253 - Add hiddenAlias for wallet:transactions:post by @NullSoldier in #5255
- move
wallet:sign
->wallet:transactions:sign
by @NullSoldier in #5256 - Move
wallet:transaction
towallet:transactions:info
by @NullSoldier in #5257 - Move
wallet:accounts
->wallet
by @NullSoldier in #5258 wallet:transactions:decode
prompts for transaction before account by @mat-if in #5261- Add table output to wallet command by @NullSoldier in #5265
- move args to be above flags in wallet command definitions by @mat-if in #5259
- feat(ironfish): Add encrypt method to wallet by @rohanjadvani in #5248
- feat(ironfish): Add decrypt method to wallet by @rohanjadvani in #5266
- Add the ability to unset default account in CLI by @mat-if in #5263
- fix
wallet:which --displayName
output by @mat-if in #5272 - Update wallet command flag description for account by @mat-if in #5273
- Change wallet:status to output aggregation by @NullSoldier in #5275
- feat(ironfish): Add lock to wallet by @rohanjadvani in #5270
- Rename account args to name in wallet by @mat-if in #5274
- Update wallet command descriptions by @NullSoldier in #5277
- Add
wallet:transactions:delete
command by @mat-if in #5276 - feat(ironfish): Add unlock to wallet by @rohanjadvani in #5281
- Move common UI components into UI by @NullSoldier in #5287
- Make wallet:address support JSON output by @NullSoldier in #5290
- supports deploying branch-named Docker images to AWS by @hughy in #5250
- feat(ironfish): Remove cached accounts when encrypting/decrypting by @rohanjadvani in #5299
- feat(ironfish): Check if wallet is encrypted when calling setAccount by @rohanjadvani in #5300
- feat(ironfish): Return if the wallet is locked in getStatus by @rohanjadvani in #5307
- Always yield native balance in balances by @NullSoldier in #5308
- Make balance output consistent by @NullSoldier in #5309
- Fix account prompt returning undefined by @NullSoldier in #5310
- Disallow creation of accounts with no names by @mat-if in #5312
- Add new useAccount helper an upgrade commands by @NullSoldier in #5311
- Add the ability to delete a transaction to the wallet and RPC by @mat-if in #5286
- feat(ironfish): Add
wallet/encrypt
by @rohanjadvani in #5318 - Standardize account flags to char 'a' by @NullSoldier in #5315
- Delete required:false in flags which is default by @NullSoldier in #5316
- feat(ironfish): Add
wallet/decrypt
by @rohanjadvani in #5319 - Change wallet:delete to use new confirmInput by @NullSoldier in #5320
- Change wallet:rename arg names by @NullSoldier in #5314
- feat(ironfish): Add
wallet/unlock
by @rohanjadvani in #5321 - feat(ironfish): Add
wallet/lock
by @rohanjadvani in #5322 - dkg signing test rust by @jowparks in #5324
- feat(cli): Add
wallet:encrypt
by @rohanjadvani in #5327 - feat(cli): Add
wallet:decrypt
by @rohanjadvani in #5328 - feat(cli): Add
wallet:unlock
by @rohanjadvani in #5329 - feat(cli): Add
wallet:lock
by @rohanjadvani in #5330 - feat(cli,ironfish): Check if the wallet is locked before fetching accounts by @rohanjadvani in #5333
- feat(ironfish): Notify via logger when the wallet locks by @rohanjadvani in #5334
- feat(cli): Hide passphrases in encryption commands by @rohanjadvani in #5343
- feat(cli): Return locked warning in wallet:accounts and wallet:which by @rohanjadvani in #5344
- feat(cli): Update status to show when the wallet is locked by @rohanjadvani in #5345
- feat(ironfish): Add passphrase to import account for encrypted dbs by @rohanjadvani in #5352
- feat(cli): Log message in start when the wallet is locked by @rohanjadvani in #5336
- Improve RPC client types for broadcastTransaction and isValidPublicAddress by @dguenther in #5356
- feat(ironfish): Add passphrase to reset account methods by @rohanjadvani in https://github.c...
v2.5.0
What's Changed
Highlights
- Enhanced wallet scanning performance and parallelism.
- Implements Ledger hardware wallet integration
- Support for creating unsigned transactions in various wallet commands
- Upgraded to oclif 4.x for improved CLI functionality
RPC Breaking Changes 🛠
- Dont serialize rpc notes if not passed in by @NullSoldier in #5166
Other Changes
- Have WalletScanner use chain directly if available by @NullSoldier in #5066
- Introduce optional pagination to ChainProcessor by @NullSoldier in #5068
- Update remaining artifact github actions to v4 by @mat-if in #5072
- Add a development-only feature to print statistics related to notes encryption by @andiflabs in #5074
- Simplify ChainProcessor return logic by @NullSoldier in #5073
- fixes dkg round3 prompt for secret package by @hughy in #5076
- Suppress logs during nodeless wallet rescans by @andiflabs in #5077
- add ability to create unsigned transaction for mint cli command by @patnir in #5081
- Add unsigned transaction flag to
wallet:burn
by @patnir in #5088 - Make unsignedTransaction flag visible in send command. by @patnir in #5087
- DecryptNotes: move the code that groups notes by account from WorkerPool to the response class by @andiflabs in #5089
- Fix
Worker
handling ofJobAborted
requests by @andiflabs in #5093 - Maximize decryption parallelism during wallet scans by @andiflabs in #5058
- Fast construction of
NoteEncrypted
during wallet scans by @andiflabs in #5075 - add_signature to unsigned transaction by @patnir in #5096
- wallet/adSignature: RPC to add signature to a transaction. by @patnir in #5097
- Wallet cleanup should use an iter to load records by @NullSoldier in #5098
- Add lint rule to not use Promise.race by @dguenther in #5103
- adds ledger utility class by @patnir in #5099
- Prevent race conditions when getting list of accounts during scanning by @andiflabs in #5094
- Add test for ArrayUtils by @NullSoldier in #5102
- Move transactions outside of options by @NullSoldier in #5104
- stops scanState meter on scan completion by @hughy in #5108
- update to latest ledger hq version by @patnir in #5107
- ensures that postTransaction uses a spending account by @hughy in #5092
- Include the git commit hash in Docker images by @andiflabs in #5112
- Import duplicate spending key says account name by @NullSoldier in #5115
- version bump for v2.4.1 by @hughy in #5117
- Rahul/ifl 2746 wallet sign command by @patnir in #5111
- Rahul/ifl 2737 import ledger account by @patnir in #5100
- Add check for locked ledger device by @patnir in #5120
- Rename Wallet.accounts -> Wallet.accountsById by @NullSoldier in #5123
- Add Wallet.accounts property by @NullSoldier in #5124
- Implement custom CLI table logic by @mat-if in #5118
- add ledger flag to send command by @patnir in #5122
- Use an optimized method for note decryption when multiple accounts are present by @andiflabs in #5119
- Remove
@types/jest
, and use Jest's own type annotations instead by @andiflabs in #5113 - Replace ux.prompt for oclif 4.x upgrade prep by @mat-if in #5121
- Fast construction of
Transaction
when reading from the chain db by @andiflabs in #5078 - Upgrade to oclif 4.x by @mat-if in #5130
- Worker pool: use the transfer feature and shared buffers for message posting by @andiflabs in #5127
- Use a sparse array in
DecryptNotesResponse
by @andiflabs in #5128 - Optimize
WalletDB.loadNoteHash()
to avoid hitting the database if the note nullifier is known to be absent by @andiflabs in #5135 - Renders transaction summary at the end of the sign command. by @patnir in #5129
- Remove chain:show command by @NullSoldier in #5145
- Make chain:rewind command hidden by @NullSoldier in #5144
- Delete chain/readd-block command by @NullSoldier in #5148
- Move
chain:asset
tochain:assets:info
by @mat-if in #5147 - Move
blocks:show
tochain:blocks:info
by @mat-if in #5141 - Remove RPC chain/showChain by @NullSoldier in #5146
- Make rpc get network power request optional by @NullSoldier in #5151
- Abstract out rendering network name by @NullSoldier in #5152
- Add UI card element to CLI by @NullSoldier in #5153
- Add command chain:status by @NullSoldier in #5150
- Add
chain:transactions:info
command by @mat-if in #5149 - Adjust descriptions of chain commands by @NullSoldier in #5158
- Delete duplicate RPC serializers by @NullSoldier in #5167
- CLI command: replace unneeded type hacking with built-in ctor property by @mat-if in #5165
- Add ability to use JSON flag with CLI commands by @mat-if in #5163
- Add missing offline flag by @mat-if in #5169
- Convert existing commands to use new ui card by @mat-if in #5160
- Update style guide to document command output info by @NullSoldier in #5162
- refreshes WalletScanner scanningAccounts on disconnect by @hughy in #5161
- ChainProcessor returns when head is not found by @NullSoldier in #5170
- Fixes chain:rewind to properly rewind the wallet head by @NullSoldier in #5173
- Add the ability for CLI commands to track and close an RPC client by @mat-if in #5172
- Convert alises to hiddenAlias by @NullSoldier in #5178
- Add Config, DataDir and Verbose flags as base flags to all commands by @mat-if in #5174
- Move the flags in baseFlags into the global category by @mat-if in #5180
- Add mining reward to chain:blocks:info by @NullSoldier in #5185
- CLI commands: use built-in JSON functionality instead of re-implementing it as needed by @mat-if in #5175
- Have chain:power support --json flag by @NullSoldier in #5187
- Add json support for chain:assets:info by @mat-if in #5186
- Add --json support for chain:status by @NullSoldier in #5188
- Add --json support to chain:transactions:info cmd by @NullSoldier in #5189
- Make chain:getTransaction use rpcSerializer by @NullSoldier in #5190
- version bump for v2.5 by @patnir in #5192
- Merge master onto staging v2 5 0 by @patnir in #5197
- Staging to master v2.5.0 by @patnir in #5198
Full Changelog: v2.4.1...v2.5.0
v2.4.1
v2.4.0
What's Changed
RPC Breaking Changes 🛠
- RPC
node/getStatus
now returns the latest accounts head inaccounts.head
- Effectively deleted wallet/rescanAccount in favor of wallet/rescan. It rescans all accounts and doesn't apply to one account. Also changed request input.
- RPC
wallet/exportAccount
now only returns encoded accounts and defaults to Base64Json format. It no longer supports returning an RpcAccountImport. - RPC
wallet/importAccount
now only accepts encoded accounts. It no longer supports importing an RpcAccountImport.
SDK Breaking Changes 🛠
- Deleted
Wallet.getLatestHeadHash()
in favor ofWallet.getLatestHead()
Other Changes
- supports viewing posted transactions on cli by @hughy in #4936
- Only log transaction flushing if non-zero by @dguenther in #4940
- Upgrade node-datachannel to 0.8.0 by @dguenther in #4941
- Remove unused eventLoopResolve in Wallet by @dguenther in #4946
- Remove use of deprecated block.previous in RemoteChainProcessor by @dguenther in #4945
- Fix deprecation and wrong runners in build-ironfish-rust-nodejs.yml by @dguenther in #4948
- Update Checkout action in CI to v4 by @dguenther in #4947
- Rahul/validate correct public address on import by @patnir in #4950
- Remove old migration code by @NullSoldier in #4954
- Feat: support chain/getBlocks by @hairtail in #4942
- Change account not to have 1 object constructor by @NullSoldier in #4956
- Fix scan state TODO in wallet code by @dguenther in #4960
- Separate out block getter from RPC serialization by @NullSoldier in #4963
- Asset balance deltas now display in the correct denomination by @mat-if in #4966
- adds raw transaction flag to combine notes by @patnir in #4915
- Update description of wallet:rescan by @dguenther in #4957
- determines raw tx sender from tx fields by @hughy in #4970
- Move wallet/account/encoder to wallet/exporter by @NullSoldier in #4971
- Move multisig key encoder into database by @NullSoldier in #4972
- Remove AccountValue from account importer/exporter by @NullSoldier in #4973
- sorts accounts by name in 'wallet:transaction:view' by @hughy in #4974
- Give bech32 encoder it's own multisig encoder by @NullSoldier in #4976
- Moved multisig importing into wallet/exporter by @NullSoldier in #4977
- Fix migration 031 to use proper multisig encoder by @NullSoldier in #4978
- defaults cli tables to no-truncate by @hughy in #4979
- Add setScanning RPC and CLI commands by @dguenther in #4943
- Scan wallet accounts from earliest account head first by @dguenther in #4964
- Rahul/ifl 2581 bug watch command watches expired transactions by @patnir in #4968
- Add wallet/resetAccount RPC by @dguenther in #4985
- Remove unused tar util from CLI by @dguenther in #4987
- Prompt for expiration sequence when creating raw or unsigned transactions in CLI by @dguenther in #4988
- Add wallet/setAccountHead RPC by @dguenther in #4951
- Rahul/ifl 2634 chainport add memo decoder by @patnir in #5000
- Rahul/ifl 2637 add chainport config by @patnir in #5001
- Rahul/ifl 2633 chainport add api interface by @patnir in #5002
- supports pruning expired tx for one account by @hughy in #4999
- Rahul/ifl 2638 chainport add utils by @patnir in #5007
- supports combining notes for custom assets by @hughy in #5005
- Adds ability to filter assets in cli utils by @patnir in #5009
- Show verified checkmark when selecting asset and sort by verified by @danield9tqh in #4993
- Change setAccountHead to take blocks instead of transactions by @dguenther in #5004
- adds chainport transaction summary util by @patnir in #5011
- detect bridge transactions in wallet:transactions command by @patnir in #5012
- Rahul/ifl 2643 add explorer url to transaction command by @patnir in #5013
- Return latest account head in node status by @NullSoldier in #5017
- Organize RPC namespace folders by @NullSoldier in #5019
- Adds wallet:chainport:send CLI command by @patnir in #5015
- adds feerate to flags of chainport CLI command by @patnir in #5021
- Delete WalletBlockHeader and WalletTransaction by @NullSoldier in #5020
- renames transaction:add to transaction:import by @hughy in #5016
- adds unspent notes count to wallet balance rpc, cli by @hughy in #4998
- regenerate fixtures for performance tests by @patnir in #5023
- adds account flag to wallet commands by @hughy in #4994
- oclif 1.23.1 -> 3.27.0 by @mat-if in #5024
- upgrade oclif cli tool by @mat-if in #5026
- Update comment on setAccountHead blocks field by @dguenther in #5025
- Remove RemoteChainProcessor calculating noteIndex by @NullSoldier in #5027
- Remove version account version default by @NullSoldier in #4955
- Removes the ability to import/export AccountImport by @NullSoldier in #5032
- Remove unnecessary trims from CLI commands by @mat-if in #5031
- Rename isHexEncoding to be more clear by @NullSoldier in #5035
- Remove usage of chain.getBlockTransactions by @NullSoldier in #5028
- Move usage of RpcAccountImport to exporter system by @NullSoldier in #5034
- Normalize arg destructuring and remove a few extra
as
casts by @mat-if in #5033 - Remove unused
parseBoolean
util function from CLI by @mat-if in #5029 - Remove the
fishHashContext
argument fromsdk.node()
by @andiflabs in #5040 - Automatically start the worker pool if a job is submitted by @andiflabs in #5039
- Separate out account decoding from encrypting by @NullSoldier in #5038
- avoids resetting account birthday by @hughy in #5036
- Add error message for VerifyError by @mat-if in #5045
- update parsing of chainport status API to new interface by @patnir in #5030
- update chainport transaction api types by @patnir in #5047
- Use
cli-progress
library directly instead of via oclif by @mat-if in #5046 - adds networkId to wallet, accountImport by @hughy in #5042
- Fix transactions cmd not handling streaming errors by @NullSoldier in #5053
- Update axios to 1.7.2 by @dguenther in #5050
- Change
initializeSapling
to avoid cloning by @andiflabs in #5054 - Improve the calculation for the number of workers in the worker pool by @andiflabs in #5041
- Change
DecryptNotesResponse
to use a sparse serialization format by @andiflabs in #5049 - removes references to account createdAt hash by @hughy in #5060
- fixes workerMessages perf test by @hughy in #5064
- Have WalletScanner use chain directly if available by @NullSoldier in #5063
- supports setting createdAt on account import by @hughy in #5062
- Adds...
v2.3.0
What's Changed
RPC Breaking Changes 🛠
- Always honor the
name
parameter passed toimportAccount
by @andiflabs in #4906
SDK Breaking Changes 🛠
- Remove unused trusted setup code by @dguenther in #4896
- Multisig: fetch participant identities from the public key package by @andiflabs in #4920
- Use ironfish decimal parsing function by @danield9tqh in #4929
Other Changes
- updating level db version to 6.1.1 by @patnir in #4894
- Update to the latest version of ironfish-frost by @andiflabs in #4902
- fix(ironfish): Use CLI flag option for encrypted trusted dealer imports by @rohanjadvani in #4903
- Implement
wallet/multisig/dkg/round3
RPC by @andiflabs in #4900 - feat(cli,ironfish): Add
wallet:multisig:dkg:round3
by @rohanjadvani in #4905 - Update Cargo dependencies to fix dependabot alerts by @andiflabs in #4904
- add option to force full account rescan from genesis by @hughy in #4901
- Rahul/ifl 2471 normalize confirm message in cli in a helper function by @patnir in #4908
- Add integration tests for multisig with distributed key generation (DKG) by @andiflabs in #4907
- Standardizing post CLI command by @patnir in #4911
- feat(cli,ironfish): Add flag to override name in round3 by @rohanjadvani in #4912
- Move ironfish-mpc to a new repository by @dguenther in #4914
- Add transaction summary to wallet:post by @dguenther in #4910
- Batch accounts when decrypting transaction notes by @dguenther in #4727
- Show the correct decimal amount in wallet:transactions command by @danield9tqh in #4913
- select secret name from list in dkg commands by @hughy in #4916
- feat(cli): Improve prompt in round3 to indicate which packages from what round are needed by @rohanjadvani in #4917
- Multisig DKG Round 3: add an option to rescan the imported account by @andiflabs in #4918
- removes 'next step' from participant:create output by @hughy in #4921
- Multisig DKG: test that, at the end of round 3, participant identities are recorded correctly by @andiflabs in #4919
- Fix
wallet.test.slow.ts
andround3.test.ts
by @andiflabs in #4922 - Multisig DKG: use the round 2 "combined" public packages by @andiflabs in #4923
- Multisig DKG: prefix every occurrence of "package" with the round number by @andiflabs in #4924
- Remove unused renderIron function by @danield9tqh in #4925
- renames wallet:multisig:participants to wallet:multisig:account:participants by @hughy in #4926
- feat(cli): Add CLI command to list identities by @rohanjadvani in #4928
- renames secretName to participantName by @hughy in #4927
- updates text of identities prompts by @hughy in #4930
- feat(cli): Unhide multisig commands by @rohanjadvani in #4932
- adds cli command to view details for raw, unsigned transactions by @hughy in #4931
- v2.3.0 by @rohanjadvani in #4934
- STAGING -> MASTER by @rohanjadvani in #4935
Full Changelog: v2.2.0...v2.3.0