Skip to content

Latest commit

 

History

History
1968 lines (1415 loc) · 227 KB

changelog-stagenet.md

File metadata and controls

1968 lines (1415 loc) · 227 KB

Changelog

All notable changes to this project will be documented in this file. See standard-version for commit guidelines.

0.48.0 (2023-04-12)

⚠ BREAKING CHANGES

  • add key commitment to database main key AEAD (#5188)
  • peer_db: more accurate peer stats per address (#5142)
  • use consensus hashing API for validator node MMR (#5207)
  • consensus: add balanced binary merkle tree (#5189)

Features

Bug Fixes

0.45.0 (2023-02-14)

⚠ BREAKING CHANGES

  • refactor database encryption (#5154)
  • update Argon2 parameters (#5140)

Features

Bug Fixes

0.44.1 (2023-01-19)

0.44.0 (2023-01-18)

⚠ BREAKING CHANGES

  • prune mode sync (#5124)

Features

Bug Fixes

  • add burnt utxos to side chain query (#5125) (fb2fa4b)
  • automatically set base node fetures on startup, sign only if necessary (#5108) (9aa9436)
  • dht: check for empty body contents in initial msg validation (#5123) (48bf2d9)
  • prune mode sync (#5124) (8fa076a)
  • vanity_id example should create id with base node features (#5107) (3b21199)

0.43.3 (2023-01-12)

Features

Bug Fixes

0.43.2 (2022-12-19)

Features

Bug Fixes

  • ci: pin ci to ubuntu 20.04 (#5047) (1cafba7)
  • core: fix build issues and add ban check listening (#5041) (774ab7a)
  • core: fixes stale chain metadata being sent to listening state (#5039) (aaf99b7)
  • support arbitrary range proof batching (#5049) (3dd10bd)

0.43.1 (2022-12-12)

Bug Fixes

  • ci: workaround - lock linux-x86_64 to ubuntu 20.04 (#5032) (dc2cd82)

0.43.0 (2022-12-08)

⚠ BREAKING CHANGES

  • input and output signatures (#4983)

Features

Bug Fixes

0.42.0 (2022-12-02)

⚠ BREAKING CHANGES

  • core: sort validate set by shard key (#4952)
  • implement validator node registration as per RFC-0313 (#4928)

Features

Bug Fixes

  • ci: update libtari_wallet_ffi sha256sums (#4968) (5de63d3)
  • console wallet timestamp display (#4942) (baa196f)
  • core: sort validate set by shard key (#4952) (349d429)
  • hide sensitive data on tari repo (see issue #4846) (#4967) (bcc47e1)
  • minimize potential memory leaks of sensitive data on the wallet code (#4953) (e364994)
  • node gets banned on reorg (#4949) (5bcf6e5)
  • wallet: fix wallet_setting keys (#4976) (f2cbe6f)
  • wallet: invalid metadata sig when creating code template utxo (#4975) (a8e2e00)
  • wallet: slightly improve error output for failed decryption (#4972) (b2370b1)

0.41.0 (2022-11-25)

⚠ BREAKING CHANGES

  • update commitment signature (#4943)

Features

Bug Fixes

  • add hidden types and seed words to key manager (#4925) (0bdb568)
  • ci: update GHA release process (#4945) (2af6c94)
  • config cleanup (#4938) (68f990f)
  • deleted_txo_mmr_position_to_height_index already exists error (#4924) (0269f11)
  • remove unused ffi types and methods (#4948) (5703d02)
  • use same instance of randomx factory for statemachine and validation (#4947) (9aed188)

0.40.2 (2022-11-18)

Features

Bug Fixes

  • dht: use limited ban period for invalid peer (#4933) (04a3a8f)

0.40.1 (2022-11-17)

Bug Fixes

  • set wallet start scan height to birthday and not 0 (see issue #4807) (#4911) (797f91a)

0.40.0 (2022-11-16)

⚠ BREAKING CHANGES

  • add tari address for wallet to use (#4881)

Features

Bug Fixes

  • comms: spawn liveness check after address is final (#4919) (f558a11)
  • remove fs2 dependency from tari_common (#4921) (dca7b06)
  • updates for SafePassword API change (#4927) (92d73e4)

0.39.0 (2022-11-14)

⚠ BREAKING CHANGES

  • merges feature-dan into development (#4913)
  • wallet: use KDFs on ECDH shared secrets (#4847)
  • core: remove unused get_committees call from base node (#4880)
  • refactor CipherSeed, zeroize, and fix key derivation (#4860)
  • impl final tari pow algorithm (#4862)
  • core: adds utxo and block info to get_template_registrations request (#4789)

Features

  • add block height to input request to get network consensus constants (#4856) (23b4313)
  • add grpc to get shard key for public key (#4654) (0fd3256)
  • add missing fields to grpc consensus constants interface (#4845) (ce6c22f)
  • add static lifetime to emission amounts calculation (#4851) (5b0eb04)
  • add validator node registration (#4507) (96a30c1)
  • base_node_grpc_client: add getActiveValidatorNodes method (#4719) (cfa05be)
  • core: add template registration sidechain features (#4470) (8ee5a05)
  • core: add validator registration sidechain feature (#4690) (0fef174)
  • core: store and fetch templates from lmdb (#4726) (27f77b2)
  • impl final tari pow algorithm (#4862) (a580103), closes #4875
  • mempool sync wait for node initial sync (#4897) (5526721)
  • merges feature-dan into development (#4913) (539e758)
  • remove tracing_subscriber (#4906) (956b279)

Bug Fixes

  • base-node: use less harsh emoji for unreachable node (#4855) (2d90e91)
  • ci: correct ARM64 builds (#4876) (7628692)
  • ci: selectively revert resolver for arm64 builds (#4871) (cd88484)
  • ci: update GHA set-output plus dependabot schedule for GHA (#4857) (f978507)
  • comms/peer_manager: fix possible panic in offline calc (#4877) (c0d1f58)
  • computation of vn mmr (#4772) (64002e9)
  • core/metrics: set target difficulty as single value (#4902) (f625f73)
  • core: add txo version checks to async validator (#4852) (2cf51b8)
  • core: adds utxo and block info to get_template_registrations request (#4789) (9e81c7b)
  • core: bring validator node MR inline with other merkle root code (#4692) (613b655)
  • core: remove unused get_committees call from base node (#4880) (392d541)
  • correct value for validator_node_timeout consensus constant in localnet (#4879) (bd49bf2)
  • delete orphans if they exist (#4868) (6ff1c02)
  • dht: use new DHKE shared secret type (#4844) (234571d)
  • fix get shard key (#4744) (3a4dd50)
  • fix validator node registration logic (#4718) (72018f4)
  • force wallet sqlite to do checkpoint after db decryption (#4905) (55d1334)
  • recover mined coinbase (#4896) (2028136)
  • refactor CipherSeed, zeroize, and fix key derivation (#4860) (b190c26)
  • remove tari script serialization fix migration (#4874) (44ed0c8)
  • remove unused config for validator node (#4849) (df5d78e)
  • wallet/grpc: add transaction id and template_address to template_reg response (#4788) (4060935)
  • wallet: use KDFs on ECDH shared secrets (#4847) (3d1a51c)

0.38.8 (2022-10-25)

Features

  • add deepsource config (dceea99)
  • add more detailed error mapping for the ffi (#4840) (b27391e)
  • add multisig script that returns aggregate of signed public keys (#4742) (c004e30)
  • add opcode versions (#4836) (c8abe99)
  • better FFI feedback from transaction validation (#4827) (3c97be4)
  • comms: adds periodic socket-level liveness checks (#4819) (2bea05f)

Bug Fixes

  • base-node: use Network::from_str to parse network in cli (#4838) (47d279e)
  • comms/rpc: measures client-side latency to first message received (#4817) (02b8660)
  • core: dont request full non-tip block if block is empty (#4802) (becff0f)
  • core: increase sync timeouts (#4800) (87dfab5)
  • core: periodically commit large transaction in prune_to_height (#4805) (700a007)
  • dht: fix over allocation for encrypted messages (#4832) (d29a64c)
  • dht: zeroize AEAD keys on drop (#4843) (9957222)
  • list-connections (#4841) (23b2c9a)
  • remove clear_on_drop dependency (#4848) (9edbbce)

0.38.7 (2022-10-11)

Bug Fixes

0.38.6 (2022-10-11)

Features

Bug Fixes

0.38.6 (2022-10-11)

Features

Bug Fixes

0.38.5 (2022-10-03)

Features

Bug Fixes

  • add a macos dependency to compile libtor (#4720) (b41226c)
  • base_node/grpc: audit of error handling (#4704) (595e334)
  • base-node/grpc: fixes panic if invalid kernel mr is given (#4693) (80af7fa)
  • burned reorg (#4697) (08773f4)
  • ci: add cargo cache, reduce Ubuntu dependencies and action on pull_request (#4757) (33e0dc2)
  • cli wallet cucumber (#4739) (62384f9)
  • clients: fix tari nodejs client proto paths (#4743) (88b75dc)
  • comms/peer_manager: add migration to remove onionv2 addresses (#4748) (a92f205)
  • comms/rpc: increase max frame size limit for rpc requests (#4724) (239b64b)
  • comms: fixes edge case where online status event does not get published (#4756) (aab729a)
  • core/mempool: improve perf of retrieve transactions (#4710) (f55762e)
  • core: broken doctests (#4763) (4cbb378)
  • core: improve logging of dropped reply channels (#4702) (9768f02)
  • core: use compact inputs for block propagation (#4714) (c659275)
  • dht/encryption: greatly reduce heap allocations for encrypted messaging (#4753) (195df85)
  • ffi tests (#4713) (4551ac3)
  • fixes cargo check (#4729) (851ba1d)
  • mined tx being invalid (#4735) (24e396d)
  • refactor incorrect cucumber test on burn funds via cli (#4679) (cd183ef)
  • sync handling and increase reorg speed in mempool (#4706) (a3b529a)
  • wallet: fixes bug in fetch_by_commitment (#4703) (97b01c2)

0.38.4 (2022-09-16)

Features

  • ci: add default CI and FFI testing with custom dispatch (#4672) (9242051)

Bug Fixes

  • add burn funds command to console wallet (see issue #4547) (#4655) (0242b1d)
  • comms: simplify and remove possibility of deadlock from pipelines and substream close (#4676) (f41bcf9)
  • fix potential race condition between add_block and sync (#4677) (55f2b9c)
  • p2p: remove DETACH flag usage (#4682) (947f64f)
  • reinsert transactions from failed block (#4675) (8030364)
  • stray clippy error (#4685) (a709282)
  • wallet: mark mined_height as null when pending outputs are cancelled (#4686) (209ee3d)

0.38.3 (2022-09-13)

Bug Fixes

0.38.2 (2022-09-08)

Bug Fixes

0.38.1 (2022-09-07)

Features

  • allow user to select specific UTXOs when sending transactions #4514 (#4523) (4b40e61)
  • attempt to recognize the source of a recovered output (#4580) (095196b)
  • ci: merge non-critical & long-running CI into one workflow (#4614) (a81228c)
  • comms: update yamux and snow dependencies (#4600) (541877a)
  • console and FFI should have setting to not choose outputs that reveal the address #4403 (#4516) (17bb64e)
  • hide Coinbases that are in the process of being mined (#4602) (c6c47fc)
  • let sql in wal mode provide async db, not app level spawn blocking (transaction service) (#4597) (e17c1f9)
  • make sure duplication check happens first in mempool (#4627) (23e4894)
  • remove spawn blocking calls from wallet db (wallet storage)(#4591) (77bb10d)

Bug Fixes

  • add Grpc authentication to merge mining proxy (see issue #4587) (#4592) (004c219)
  • change wallet log target from error to trace (see issue #4586) (183fa6e)
  • cleanup logs (#4590) (66c8032)
  • comms: only reap when number of connections exceeds threshold (#4607) (415f339)
  • console_wallet: use cli.non_interactive instead of propmt to show seed words (#4612) (8ad67ab)
  • dht: updates to message padding (#4594) (cf4f9bf)
  • ffi wallet file for unknown type name (#4589) (5cbf9aa)
  • outbound: reduce messaging protocol error to debug (#4578) (99cef05)
  • reduces RPC error log to debug when domain-level RPC service returns an error (fixes #4579) (#4611) (86c030d)
  • remove unused dependencies (#4624) (058f492)
  • remove window resize (#4593) (896eff9)
  • stop race condition in output encumbrance (#4613) (31e130a)
  • update cargo versions (#4622) (07c1a29)
  • use dht inbound error for decryption (Fixes #4596) (#4601) (d9ef267)
  • wallet: detect base node change during long-running protocols (#4610) (2a2a8b6)
  • wallet: use RPC pool connections for non-recovery utxo scanning (#4598) (7c9e22c)

0.38.0 (2022-08-31)

⚠ BREAKING CHANGES

  • replace AES-GCM with XChaCha20-Poly1305 (#4550)

Features

  • build: multiple targeted build types with options for docker builds (#4540) (7e7d053)
  • comms/rpc: restrict rpc session per peer #4497 (#4549) (080bccf)
  • console-wallet: detect local base node and prompt (#4557) (887df88)
  • remove spawn blocking calls from wallet db (contacts service) (#4575) (7464581)
  • remove spawn blocking calls from wallet db (key manager service) (#4564) (a5d5133)
  • update tor seed nodes for esmeralda network (#4572) (c4cfc12)
  • upgrade to tokio 1.20.1 (#4566) (777936a)

Bug Fixes

0.37.0 (2022-08-25)

⚠ BREAKING CHANGES

  • reset gen block for new faucets (#4534)
  • core: replace block and transaction hashes with FixedHash type (#4533)
  • change how sha3 difficulty is calculated (#4528)
  • header consensus (#4527)
  • add domain consensus hashing to all previous uses of default consensus hashing (#4522)

Features

  • add domain consensus hashing to all previous uses of default consensus hashing (#4522) (1885509)
  • change how sha3 difficulty is calculated (#4528) (1843998)
  • console-wallet: adds basic grpc authentication (#4532) (2615c1b)
  • make stealth addresses the default for one sided in ffi #4423 (#4517) (e89ffac)
  • merge grpc list headers commands (#4515) (18a88d7)
  • show the banned reason if a peer was banned in the contacts (#4525) (f970f81)

Bug Fixes

  • base-node: fix messy output in base node console (#4509) (c2dfa23)

  • build: remove tari_validator_node from binary builds (#4518) (6df9cc8)

  • build: switch linux-arm64 builds to cross-rs (#4524) (69e8d0b)

  • comms/dht: fixes invalid peer ban on invalid encrypted msg signature (#4519) (7a2c95e)

  • comms: ignore dial cancel event when inbound connection exists (#4521) (a7040c5)

  • core: fix block consensus encoding and add tests (#4537) (0a9d5ef)

  • core: replace block and transaction hashes with FixedHash type (#4533) (501f550)

  • cucumber: update get_online_status function signature in cucumber (#4536) (a57eb12)

  • grpc inconsistent serialization of keys (see issue #4224) (#4491) (bdb262c)

  • header consensus (#4527) (3f5fcf2)

  • re-add user agents to base node and console wallet (#4520) (3f60c44)

  • reset gen block for new faucets (#4534) (4fe5742)

0.36.0 (2022-08-19)

⚠ BREAKING CHANGES

  • add hashing API use to base layer (see issue #4394) (#4447)
  • change monero consensus encoding an update for hardfork v15 (#4492)
  • core/covenants: update covenants to support OutputType enum (#4472)
  • core: restrict output types to only those permitted by consensus (#4467)
  • tariscript: use varints in tari script (de)serialization (#4460)
  • apply hashing api to the mmr (#4445)
  • burned commitment mmr calculation and cucumber prune mode (#4453)

Features

  • add hashing API use to base layer (see issue #4394) (#4447) (f9af875)
  • apply hashing api to the mmr (#4445) (d6bab2f)
  • core: restrict output types to only those permitted by consensus (#4467) (a481a06)
  • move dan layer to new repo (#4448) (52bc2be)
  • remove more dan layer code (#4490) (073de55)
  • remove total_txs and rename total_weight in mempool (#4474) (02ed4d4)
  • tariscript: use varints in tari script (de)serialization (#4460) (a0403e5)
  • wallet: adds --stealth-one-sided flag to make-it-rain (#4508) (30dd70e)

Bug Fixes

0.35.0 (2022-08-11)

⚠ BREAKING CHANGES

  • comms: use domain hasher for noise DH key derivation (#4432)
  • core: consensus hashing without extraneous length prefixes for each write (#4420)
  • new esmeralda network (#4391)
  • fix kernel mutability (#4377)
  • dht: add message padding for message decryption, to reduce message length leaks (fixes #4140) (#4362)
  • improve wallet key derivation by use of proper domain separation (see issue #4170) (#4316)
  • add burned outputs (#4364)
  • base_layer: new output field for minimum value range proof (#4319)

Features

  • accept 'esme' as network name on cli (#4401) (966aa0b)
  • add burned outputs (#4364) (60f3877)
  • add hashing api to wallet secret keys (#4424) (d944574)
  • add quarantine and backup keys (#4289) (ed9f8cb)
  • add sending to stealth address (command, grpc, gui) (#4307) (a897278)
  • add tari_crypto hashing api support (#4328) (dba167b)
  • add tari_scanner (#4280) (bd672eb)
  • base_layer/core: add domain hashing wrapper for consensus encoding (#4381) (ad11ec5)
  • base_layer: checkpoint quorum validation (#4303) (e1704f4)
  • base_layer: checkpoint signature validation (#4297) (850e78f)
  • base_layer: new output field for minimum value range proof (#4319) (5cff7a9)
  • base_layer: remove the initial_reward field for contracts (#4313) (a7daf3a)
  • base-node: adds add-peer command (#4430) (b2563a2)
  • build arm64 binaries from json matrix (#4342) (53397e0)
  • bump tari_crypto version -> v0.15.4 (#4382) (5dd7811)
  • bump toolchain for GHA from nightly-2021-11-20 to nightly-2022-05-01 (#4308) (dbdadcf)
  • bump toolchain for GHA from nightly-2021-11-20 to nightly-2022-05-01 for develop (#4329) (9797c19)
  • comms: auto detects configured tor control port auth (#4428) (98a7b0c)
  • dan/engine: add more engine primitives and add template context (#4388) (a481f89)
  • dan/engine: adds single state storage interface (#4368) (954efea)
  • dan/wasm: implement basic wasm module engine calls (#4350) (ad89150)
  • dan: add WASM template invocation from user instruction (#4331) (d265c6f)
  • dan: basic template macro (#4358) (594ca0e)
  • dan: invocation of functions in templates (#4343) (3d92eb0)
  • dan: template macro handles component state (#4380) (696d909)
  • fix kernel mutability (#4377) (d25d726)
  • mempool: remove transaction for locally mined blocks that fail validation (#4306) (15f41b3)
  • multi-threaded vanity id generator (#4345) (32569da)
  • new esmeralda network (#4391) (622763a)
  • proposal acceptance signatures are submitted and validated (#4288) (2bf7efe)
  • read tor cookies from a file (#4317) (c75d224)
  • remove hash_digest type (#4376) (7b2750a)
  • remove hashing domain and update key manager (#4367) (e805f1f)
  • remove recovery byte (#4301) (a2778f0)
  • show tari script properly in tari_explorer (#4321) (4a1b50e)
  • support for stealth addresses in one-sided transactions (#4310) (c73de62)
  • tari launchpad downstream merge (#4322) (222052f)
  • vn: recognize abandoned state (#4272) (e42085a)

Bug Fixes

0.34.0 (2022-07-08)

⚠ BREAKING CHANGES

  • core: include issuer public key in contract id hash (#4239)
  • dan_layer: generate and add checkpoint signatures (#4261)
  • add checkpoint_number to checkpoint with basic base layer validations (#4258)

Features

  • add checkpoint_number to checkpoint with basic base layer validations (#4258) (7b76141)
  • add encryption service (#4225) (6ce6b89)
  • add range proof batch verification to validators (#4260) (02d3121)
  • add tari engine for flow and wasm functions (#4237) (a997934)
  • base_layer: basic checkpoint validation (#4293) (045997a)
  • comms: add or_optional trait extension for RpcStatus (#4246) (11fddf6)
  • contract acceptance signatures are submitted and validated (#4269) (414be33)
  • core: validates non-contract utxos have no sidechain features (#4259) (a8ba89f)
  • dan_layer/core: track checkpoint number for each checkpoint submitted (#4268) (16e07a0)
  • dan_layer: generate and add checkpoint signatures (#4261) (0f581ca)
  • wallet: uses tip height to calc abs acceptance period (#4271) (480d55d)

Bug Fixes

  • add saturating sub to prevent potential underflow (#4286) (56d184a)
  • base-node: minor fixups for hex/type parsing and long running commands (#4281) (f910cce)
  • core: include issuer public key in contract id hash (#4239) (ef62c00)
  • dan_layer/core: include state root in checkpoint signature (#4285) (bcaabf0)
  • vn: scan and save contracts without autoaccept (#4265) (a137f53)
  • wallet: handle not found rpc error in utxo scanning (#4249) (bcd14c7)

0.33.0 (2022-06-30)

⚠ BREAKING CHANGES

  • core: add contract index to blockchain database (#4184)
  • core: replace OutputFlags with OutputType (#4174)
  • core: add side-chain features and constitution to UTXOs (#4134)
  • comms: commit to public key and nonce in identity sig (#3928)
  • dht: fixes MAC related key vuln for propagated cleartext msgs (#3907)
  • core: define OutputFlags for side-chain contracts (#4088)

Features

  • add an encrypted value to the TransactionOutput (#4148) (01b600a)
  • add encrypted_value to the UnblindedOutput (#4142) (f79d383)
  • add FeePerGramStats to ffi library (#4114) (234d32f)
  • add sender to instructions (#4234) (6c116ac)
  • add validator node checkpointing (#4217) (8b0add0)
  • base_layer: basic contract constitution validation (#4232) (c2efd5e)
  • base_layer: basic validations for proposals, proposal acceptances and amendments (#4238) (64f8972)
  • base_layer: validate acceptance window expiration on dan layer (#4251) (25e316b)
  • base_layer: validate duplicated acceptances (#4233) (3d8a3b2)
  • base_layer: validate that contract definitions are not duplicated (#4230) (0a2812c)
  • base_layer: validation of committee membership in contract acceptances (#4221) (641844a)
  • base-node: improve contract utxo scanning (#4208) (0fcde31)
  • change tari explorer block view (#4226) (652cba3)
  • console-wallet: add contract-definition init command (#4164) (8685e2f)
  • console-wallet: generate issuer key for contract init-definition (#4202) (7317d6b)
  • constitution publishing (#4150) (ba83b8f)
  • contract acceptance publication (#4151) (d3d3e91)
  • contract auto acceptance (#4177) (87f9969)
  • core: add contract acceptance utxo features (#4145) (2636cb5)
  • core: add contract index to blockchain database (#4184) (b7e97f4)
  • core: add side-chain features and constitution to UTXOs (#4134) (ada3143)
  • core: adds constitution UTXO features (#4121) (da5696a)
  • core: define OutputFlags for side-chain contracts (#4088) (50993a3)
  • core: impl consensus encoding for bool (#4120) (682aa5d)
  • core: new output features for changes in contracts (#4169) (41570f6)
  • miner: friendlier miner output (#4219) (4245838)
  • publication of contract update proposal acceptances (#4199) (e3b2b9b)
  • scan base node for constitutions (#4144) (310a2d2)
  • swap dalek bulletproofs for bulletproofs-plus (#4213) (46f9bb8)
  • use tari_crypto's updated "extended pedersen commitment factory" (#4206) (50ce20a)
  • validator_node: add global db (#4210) (3965267)
  • validator-node: add logging (#4189) (2ed859f)
  • validator-node: allow network to be configured via cli (#4190) (6a4c1a4)
  • vn: record contract states (#4241) (92ae4ab)
  • wallet selects previous checkpoint for spending (#4236) (90a5ec3)
  • wallet_ffi: new ffi method to create covenant (#4115) (dd65b4b)
  • wallet_ffi: new ffi method to create output features (#4109) (f8fa3ec)
  • wallet: add help for wallet cli commands (#4162) (859b7d3)
  • wallet: adds contract_id to outputs db (#4222) (6f331f8)
  • wallet: new cli commands to initialise proposals and amendments (#4205) (40cbd50)
  • wallet: new command to publish a contract definition transaction (#4133) (b4991a4)
  • wallet: new command to publish a contract update proposal (#4188) (0e3bee0)
  • wallet: publish contract amendment (#4200) (edcce4a)

Bug Fixes

  • add prettierignore for partials (#4229) (923cf07)

  • ci: sort .license.ignore locally before diff (#4106) (8594754)

  • comms: commit to public key and nonce in identity sig (#3928) (5ac6133)

  • contract-index: adds support for ContractAmendment to contract index (#4214) (a41d0c9)

  • core: cleanup duplicate maturity check (#4181) (5e55bf2)

  • core: don't allow coinbase transactions in mempool (#4103) (46450d5)

  • dht: fixes MAC related key vuln for propagated cleartext msgs (#3907) (1e96d45)

  • hash in cucumber (#4124) (5d7d55d)

  • hotstuff: fix bug where decide state was listening for wrong message (#4160) (fe7b304)

  • integration_test: fix wallet-cli integration tests (#4132) (4464064)

  • move peer dbs into sub folders (#4147) (2b1a69a)

  • test: integration test for validator node is broken (#4192) (16d6ba5)

  • test: unifying dan layer integration tests (#4175) (f3495ee)

  • validator-node: return error if contract_id empty for publish_contract_acceptance grpc (#4191) (8874114)

  • validator: set tor_identity base path (#4187) (e324b80)

  • vn scanning: only scan since last scan and restart accepted contracts (#4252) (43b4a53)

  • wallet: select only basic utxos when building a transaction (#4178) (42269ae)

  • wallet: use correct type for contract_id in the contract constitution file format (#4179) (669a1bd)

  • core: replace OutputFlags with OutputType (#4174) (d779f43)

0.34.0 (2022-07-08)

⚠ BREAKING CHANGES

  • core: include issuer public key in contract id hash (#4239)
  • dan_layer: generate and add checkpoint signatures (#4261)
  • add checkpoint_number to checkpoint with basic base layer validations (#4258)

Features

  • add checkpoint_number to checkpoint with basic base layer validations (#4258) (7b76141)
  • add encryption service (#4225) (6ce6b89)
  • add range proof batch verification to validators (#4260) (02d3121)
  • add tari engine for flow and wasm functions (#4237) (a997934)
  • base_layer: basic checkpoint validation (#4293) (045997a)
  • comms: add or_optional trait extension for RpcStatus (#4246) (11fddf6)
  • contract acceptance signatures are submitted and validated (#4269) (414be33)
  • core: validates non-contract utxos have no sidechain features (#4259) (a8ba89f)
  • dan_layer/core: track checkpoint number for each checkpoint submitted (#4268) (16e07a0)
  • dan_layer: generate and add checkpoint signatures (#4261) (0f581ca)
  • wallet: uses tip height to calc abs acceptance period (#4271) (480d55d)

Bug Fixes

  • add saturating sub to prevent potential underflow (#4286) (56d184a)
  • base-node: minor fixups for hex/type parsing and long running commands (#4281) (f910cce)
  • core: include issuer public key in contract id hash (#4239) (ef62c00)
  • dan_layer/core: include state root in checkpoint signature (#4285) (bcaabf0)
  • vn: scan and save contracts without autoaccept (#4265) (a137f53)
  • wallet: handle not found rpc error in utxo scanning (#4249) (bcd14c7)

0.33.0 (2022-06-30)

⚠ BREAKING CHANGES

  • core: add contract index to blockchain database (#4184)
  • core: replace OutputFlags with OutputType (#4174)
  • core: add side-chain features and constitution to UTXOs (#4134)
  • comms: commit to public key and nonce in identity sig (#3928)
  • dht: fixes MAC related key vuln for propagated cleartext msgs (#3907)
  • core: define OutputFlags for side-chain contracts (#4088)

Features

  • add an encrypted value to the TransactionOutput (#4148) (01b600a)
  • add encrypted_value to the UnblindedOutput (#4142) (f79d383)
  • add FeePerGramStats to ffi library (#4114) (234d32f)
  • add sender to instructions (#4234) (6c116ac)
  • add validator node checkpointing (#4217) (8b0add0)
  • base_layer: basic contract constitution validation (#4232) (c2efd5e)
  • base_layer: basic validations for proposals, proposal acceptances and amendments (#4238) (64f8972)
  • base_layer: validate acceptance window expiration on dan layer (#4251) (25e316b)
  • base_layer: validate duplicated acceptances (#4233) (3d8a3b2)
  • base_layer: validate that contract definitions are not duplicated (#4230) (0a2812c)
  • base_layer: validation of committee membership in contract acceptances (#4221) (641844a)
  • base-node: improve contract utxo scanning (#4208) (0fcde31)
  • change tari explorer block view (#4226) (652cba3)
  • ci: build both x86/arm64 docker images from GHA (#4204) (28a8f8b)
  • console-wallet: add contract-definition init command (#4164) (8685e2f)
  • console-wallet: generate issuer key for contract init-definition (#4202) (7317d6b)
  • constitution publishing (#4150) (ba83b8f)
  • contract acceptance publication (#4151) (d3d3e91)
  • contract auto acceptance (#4177) (87f9969)
  • core: add contract acceptance utxo features (#4145) (2636cb5)
  • core: add contract index to blockchain database (#4184) (b7e97f4)
  • core: add side-chain features and constitution to UTXOs (#4134) (ada3143)
  • core: adds constitution UTXO features (#4121) (da5696a)
  • core: define OutputFlags for side-chain contracts (#4088) (50993a3)
  • core: impl consensus encoding for bool (#4120) (682aa5d)
  • core: new output features for changes in contracts (#4169) (41570f6)
  • miner: friendlier miner output (#4219) (4245838)
  • publication of contract update proposal acceptances (#4199) (e3b2b9b)
  • scan base node for constitutions (#4144) (310a2d2)
  • swap dalek bulletproofs for bulletproofs-plus (#4213) (46f9bb8)
  • use tari_crypto's updated "extended pedersen commitment factory" (#4206) (50ce20a)
  • validator_node: add global db (#4210) (3965267)
  • validator-node: add logging (#4189) (2ed859f)
  • validator-node: allow network to be configured via cli (#4190) (6a4c1a4)
  • vn: record contract states (#4241) (92ae4ab)
  • wallet selects previous checkpoint for spending (#4236) (90a5ec3)
  • wallet_ffi: new ffi method to create covenant (#4115) (dd65b4b)
  • wallet_ffi: new ffi method to create output features (#4109) (f8fa3ec)
  • wallet: add help for wallet cli commands (#4162) (859b7d3)
  • wallet: adds contract_id to outputs db (#4222) (6f331f8)
  • wallet: allow UTXO selection by specific outputs and by token (#4227) (f2a7e18)
  • wallet: new cli commands to initialise proposals and amendments (#4205) (40cbd50)
  • wallet: new command to publish a contract definition transaction (#4133) (b4991a4)
  • wallet: new command to publish a contract update proposal (#4188) (0e3bee0)
  • wallet: publish contract amendment (#4200) (edcce4a)

Bug Fixes

  • add prettierignore for partials (#4229) (923cf07)

  • ci: sort .license.ignore locally before diff (#4106) (8594754)

  • comms: commit to public key and nonce in identity sig (#3928) (5ac6133)

  • contract-index: adds support for ContractAmendment to contract index (#4214) (a41d0c9)

  • core: cleanup duplicate maturity check (#4181) (5e55bf2)

  • core: don't allow coinbase transactions in mempool (#4103) (46450d5)

  • dht: fixes MAC related key vuln for propagated cleartext msgs (#3907) (1e96d45)

  • hash in cucumber (#4124) (5d7d55d)

  • hotstuff: fix bug where decide state was listening for wrong message (#4160) (fe7b304)

  • integration_test: fix wallet-cli integration tests (#4132) (4464064)

  • move peer dbs into sub folders (#4147) (2b1a69a)

  • test: integration test for validator node is broken (#4192) (16d6ba5)

  • test: unifying dan layer integration tests (#4175) (f3495ee)

  • validator-node: return error if contract_id empty for publish_contract_acceptance grpc (#4191) (8874114)

  • validator: set tor_identity base path (#4187) (e324b80)

  • vn scanning: only scan since last scan and restart accepted contracts (#4252) (43b4a53)

  • wallet: select only basic utxos when building a transaction (#4178) (42269ae)

  • wallet: use correct type for contract_id in the contract constitution file format (#4179) (669a1bd)

  • core: replace OutputFlags with OutputType (#4174) (d779f43)

0.32.12 (2022-07-11)

Bug Fixes

0.32.11 (2022-07-11)

Bug Fixes

0.32.10 (2022-07-07)

Features

Bug Fixes

0.32.9 (2022-07-06)

Features

0.32.8 (2022-07-04)

Features

0.32.7 (2022-06-30)

Features

  • wallet_ffi: wallet_get_utxos, wallet_coin_join, wallet_coin_split (#4244) (88931aa)

0.32.6 (2022-06-29)

Features

  • ci: build both x86/arm64 docker images from GHA (#4204) (28a8f8b)
  • wallet_ffi: add coin join and split (#4218) (af6c834)
  • wallet: allow UTXO selection by specific outputs and by token (#4227) (f2a7e18)

0.32.5 (2022-06-20)

Features

0.32.4 (2022-06-10)

Features

  • daily-tests: use environment variable to set custom seed words (#4086) (3773bba)
  • wallet-ffi: adds FFI wallet_get_utxos() and test_wallet_get_utxos() (#4180) (9770402)

Bug Fixes

  • better message for failed software update check (#4100) (f33a503)
  • block-sync: check coinbase maturity (#4168) (38b4af7)
  • dht: optimisation, no decrypt if public key dest doesn't match (#4131) (987972c)

0.32.3 (2022-05-23)

Features

0.32.1 (2022-05-20)

Features

  • add FeePerGramStats to ffi library (#4114) (6f14034)
  • add mempool fee per gram stats to transaction service (#4105) (34fd58a)
  • dht: add feature to optionally bundle sqlite (#4104) (498248e)
  • wallet_ffi: new ffi method to create covenant (#4115) (121149a)
  • wallet_ffi: new ffi method to create output features (fixed flag size for dibbler) (#4118) (cf3a1e6)

Bug Fixes

  • core: set reorg metrics on header sync rewind (#4087) (354bae2)
  • possible overflow in difficulty calculation (fixes #3923) (#4090) (e8d1091)
  • single allocation for block header consensus encoding (#4101) (aa85738)
  • tx importing status to correctly reflect the origin (#4119) (63a0df6)
  • wallet header: remove function argument (#4092) (cf91e91)
  • wallet: add default value for wait stage (#4089) (810d9ff)
  • wallet: use network specified by cli/envvar in console wallet (#4096) (7f2252a)

0.32.0 (2022-05-10)

⚠ BREAKING CHANGES

  • major config rework. Config files should be recreated (#4006)

Features

  • allow network to be set by TARI_NETWORK env var (#4073) (c27be5c)
  • collectibles: add list assets command (#3908) (5b726a6)
  • merge mining proxy: check achieved Monero difficulty before submitting to Tari basenode (#4019) (b09fa76)
  • p2p: adds tor.forward_address setting (#4070) (8c78717)
  • tari_explorer: add total hashrate chart (#4054) (9e0ec36)

Bug Fixes

  • add Environment cfg source and remove --create-id (#4018) (e59e657)
  • base-node: assign correct base dir to tor identity (#4081) (1464f8b)
  • dht: saf storage uses constructs correct msg hash (#4003) (e1e7669)
  • dht: sets file default for DHT db (#4030) (5b125e7)
  • dns-seeds: use correct cloudflare resolver default (#4029) (c95e589)
  • fix github integration tests (#4008) (aa143c6)
  • github actions (#4014) (a03392e)
  • ignore test that timeout in github action (#4010) (6c5471e)
  • key-manager: remove floating point math from mnemonic code (#4064) (c2d60b3)
  • launchpad build docker images (#4042) (50e2812)
  • launchpad: fix config presets (#4028) (1b8b274)
  • long running and non critical github action (#4009) (3b8cb8b)
  • makes header consensus encoding infallible (#4045) (5ebf129)
  • only count base nodes in peers count in base node status (#4039) (190d75a)
  • prevent seed peer address from being overwritten unless newer (#4085) (59b76c3)
  • support safe non-interactive mode (#4072) (b34f79d)
  • test_output_manager_sqlite_db(_encrypted) (#4025) (7a6f980)
  • update daily test configuration (#4049) (b15d682)
  • wallet: do not prompt for password if given in config (#4040) (fc1aa65)
  • wallet: ensure block hash exists (#4083) (a258984)
  • weird behaviour of dates in base node banned peers (#4037) (7097185)

0.31.1 (2022-04-06)

Bug Fixes

  • clippy error when not on unix (#4000) (7e38259)
  • fix NodeIdentityHasNoAddress when creating new node identity (#4002) (76b526e)

0.31.0 (2022-04-05)

Features

  • add config setting to resize terminal (#3920) (ce697bd)
  • add less aggressive txn cancelling (#3904) (40bedde)
  • check file perms on identity files (#3958) (7f381d3)
  • implement qr code for base node (#3977) (2f618a2)
  • remove spawn blocking calls from wallet db (output manager service) (#3982) (cbf75ca)
  • update committee from the committee definions TXs (#3911) (0b29c89)
  • wallet: send a cancel message to a receiver when it responds to a canceled transaction (#3976) (96d24c6)

Bug Fixes

  • another fix for the recovery daily test (#3978) (73365a4)
  • estimated hashrate calculation is incorrect (#3996) (4587fc0)
  • recovery daily test reporting of uT was rounding incorrectly (#3992) (b5797b7)
  • separate watch loop for the non-interactive mode (#3979) (9bf6503)

0.30.2 (2022-03-29)

Features

Bug Fixes

  • add output option to the status command (#3969) (aabb653)
  • revert changes to key manager branch seed strings (#3971) (db688aa)

0.30.1 (2022-03-28)

Features

  • add mmr check to reconstructed block and mempool validation for unique excess signature (#3930) (b8f9db5)
  • dht: monitor and display warning for min ratio for TCPv4 nodes (#3953) (c4070ff)
  • gracefully handle recovering a duplicate output in LibWallet (#3903) (bcd1418)
  • listen to terminal events in the watch mode (#3931) (869abd3)
  • metrics: add UTXO set size to base node metrics (#3932) (08ecabc)
  • script to produce coverage report for wallet (#3938) (48eb86e)

Bug Fixes

  • base-node: disable SAF auto requests (#3919) (b34503b)
  • bug in block timing grpc method (#3926) (1c7adc0)
  • correct main path for wallet rpc client (#3934) (b36295c)
  • fix ffi import external utxo from faucet (#3956) (3480323)
  • fix handling of creating faux transaction for recovered outputs (#3959) (c5eb9e5)
  • fix Tor ID deserialization issue (#3950) (c290ab9)
  • launch the watch command on start (#3924) (7145201)
  • sync: adds extra checks for sync stream termination (#3927) (dd544cb)
  • sync: ban peer if sending invalid prev_header (#3955) (384ab0c)
  • wallet: ensure that identity sig is stored on startup (#3951) (b8d08ed)
  • wallet: tor identity private key needs to be serialized (#3946) (a68614e)

0.30.0 (2022-03-16)

⚠ BREAKING CHANGES

  • change hash to use consensus encoding (#3820)

Bug Fixes

0.29.0 (2022-03-14)

⚠ BREAKING CHANGES

Existing nodes should delete their databases and resync.

  • add recovery byte to output features (#3727)
  • add support for specifying custom messages for scanned outputs in libwallet (#3871)
  • add committee management utxo (#3835)

Features

  • add committee management utxo (#3835) (50fe421)
  • add contacts liveness service to base layer wallet (#3857) (0d96ea3)
  • add contacts status to tui (#3868) (30bf86b)
  • add liveness call to wallet GRPC (#3854) (9ab832a)
  • add logging of cancelled outputs when transaction is rejected (#3863) (d28703d)
  • add recovery byte to output features (#3727) (c9985de)
  • add support for make-it-rain command (#3830) (0322402)
  • add support for specifying custom messages for scanned outputs in libwallet (#3871) (0d7f8fc)
  • adds get-mempool-tx command (#3841) (a49b1af)
  • base-node: allow status line interval to be configured (#3852) (427463d)
  • collectibles: add basic window menu items (#3847) (c8ebe5b)
  • dht: convenience function for DHT to discover then connect (#3840) (da59c85)
  • update committee selection from collectibles (#3872) (daf140d)
  • update console wallet notifications (e3e8b3d)
  • update FFI client user agent string (4a6df68)
  • validator-node: committee proposes genesis block w/ instructions (#3844) (68a9f76)

Bug Fixes

  • add bound for number of console_wallet notifications (033db2a)
  • block-sync: use avg latency to determine slow sync peer for block sync (#3912) (f091c25)
  • core: correctly filter pruned sync peers for block sync (#3902) (bfdfce6)
  • dht: use blocking tasks for db calls (1832416)
  • fix flakey test_coinbase_abandoned integration test (#3866) (ab52f5e)
  • fix merge mining proxy pool mining (#3814) (407160c)
  • improve sha3 pool mining (#3846) (be75c74)
  • remove critical tag from flaky cucumber test (#3865) (64b72de)
  • update metadata size calculation to use FixedSet.iter() (dbbe095)
  • update wallet logging config (7675e75)
  • validator-node: fix consensus stall after genesis (#3855) (64efeff)
  • wallet: minor wording fix on transactions tab (#3853) (fd32bc9)

0.28.1 (2022-02-17)

Features

  • add persistence of transaction cancellation reason to wallet db (#3842) (31410cd)
  • cli: resize terminal height (#3838) (9026152)
  • resize base node terminal on startup (#3827) (00bc6e2), closes #1728
  • sync: switch peers when max latency is exceeded (#3741) (9e4af94)
  • update console wallet tui (#3837) (3403db6)
  • validator-node: initial state sync implementation (partial) (#3826) (ee4b52d)
  • wallet: add grpc method for setting base node (#3828) (8791e93)

Bug Fixes

0.28.0 (2022-02-10)

⚠ BREAKING CHANGES

  • add scanned transaction handling for one-sided payments with callbacks (#3794)
  • wallet_ffi: add base node connectivity callback to wallet ffi (#3796)

Features

  • ability to compile on stable rust (#3759) (c19db92)
  • add logging and config to collectibles (#3781) (96a1e4e)
  • add scanned transaction handling for one-sided payments with callbacks (#3794) (5453c9e)
  • add specific LibWallet error code for “Fee is greater than amount” (#3793) (5aa2a66)
  • base-node: add base node prometheus metrics (#3773) (7502c02)
  • base-node: add number of active sync peers metric (#3784) (3495e85)
  • collectibles: add delete committee member button (#3786) (51f2f91)
  • prevent ambiguous output features in transaction protocols (#3765) (f5b6ab6)
  • re-use scanned range proofs (#3764) (ffd502d)
  • read asset definitions from base layer (#3802) (86de08b)
  • validator_node: add get_sidechain_block p2p rpc method (#3803) (74df1d0)
  • wallet_ffi: add base node connectivity callback to wallet ffi (#3796) (66ea697)

Bug Fixes

  • bump flood ban messages config (#3799) (bbd0e1e)
  • coinbase output recovery bug (#3789) (beb299e)
  • comms: minor edge-case fix to handle inbound connection while dialing (#3785) (2f9603b)
  • core: fetch_header_containing_*_mmr functions now take a 0-based mmr position (#3749) (f5b72d9)
  • core: fix potential panic for sidechain merkle root with incorrect length (#3788) (b3cc6f2)
  • core: reduce one block behind waiting period (#3798) (cc41f36)
  • ffi: missing param in header.h (#3774) (7645a83)
  • ffi: mut pointers should be const (#3775) (d09ba30)
  • fix rustls and trust-dns-client after version bump (#3816) (e6e845c)
  • improved image handling in collectibles (#3808) (4b22252)
  • minor fixes on collectibles (#3795) (cfc42dd)
  • text explorer show sha-3 correctly + minor fixes (#3779) (a5dacf2)

0.27.2 (2022-01-28)

Bug Fixes

0.27.0 (2022-01-28)

⚠ BREAKING CHANGES

  • ffi: Add commitment_signature_create and destroy (#3768)
  • ffi: add features, metadata_signature and sender_offset_public_key to import_utxo (#3767)

Features

  • collectibles: add form validation error when committee not set (#3750) (dfdaf4b)
  • console-wallet: shift+tab to go to prev tab (#3748) (9725f5f)
  • explorer: better view on mempool (#3763) (caa2837)
  • ffi: Add commitment_signature_create and destroy (#3768) (2df8193)
  • ffi: add features, metadata_signature and sender_offset_public_key to import_utxo (#3767) (7d8aa69)
  • show error if IPFS upload fails (#3746) (b58cf4c)
  • update the available balance in console wallet (#3760) (d3edfe5)

Bug Fixes

  • fix attempting to validate faux transaction (#3758) (7de1b23)
  • fix cucumber test for standard recovery (#3757) (1d58977)
  • properly decrypt imported faux tx when reading from db (#3754) (997b74b)
  • use of branch seed in key manager (#3751) (ec92919)

0.26.1 (2022-01-26)

Features

  • collectibles: add form validation error when committee not set (#3750) (dfdaf4b)
  • console-wallet: shift+tab to go to prev tab (#3748) (9725f5f)
  • show error if IPFS upload fails (#3746) (b58cf4c)

Bug Fixes

  • properly decrypt imported faux tx when reading from db (#3754) (997b74b)
  • use of branch seed in key manager (#3751) (ec92919)

0.26.0 (2022-01-25)

⚠ BREAKING CHANGES

  • generate new dibbler genesis block (#3742)
  • core: add missing consensus encoding length byte rangeproof & covenants (#3730)

Bug Fixes

  • core: add missing consensus encoding length byte rangeproof & covenants (#3730) (d56da1a)
  • ensure that features are set when syncing peers (#3745) (8efd2e4)
  • move config to one file (9f9a46c)

0.25.1 (2022-01-24)

Features

Bug Fixes

  • prevent key leaking through derive debug impl (#3735) (12a90e6)

0.25.0 (2022-01-21)

⚠ BREAKING CHANGES

  • don't include duplicate unique ID in same block template (#3713)
  • reinstate 2 min blocks for dibbler (#3720)

Features

  • add command line arguments support to collectibles (#3714) (696f2ef)
  • base_node: base node keeps track of historical reorgs (#3718) (79ffdec)

Bug Fixes

  • collectibles: fix setup and unlock (#3724) (f98596d)
  • collectibles: various ui fixes (#3726) (1cc51a9)
  • comms: ensure signature challenge is constructed consistently (#3725) (e5173b7)
  • don't include duplicate unique ID in same block template (#3713) (b501771)
  • put libtor behind optional feature flag (#3717) (e850cf0)
  • reinstate 2 min blocks for dibbler (#3720) (3c5890d)

0.24.0 (2022-01-18)

⚠ BREAKING CHANGES

  • fix tx and txo validation callback bug in wallet FFI (#3695)
  • compact block propagation (#3704)

Features

  • add versioning to transaction(input,output,kernel) (#3709) (08995c7)
  • compact block propagation (#3704) (274b7d9)
  • enable optional libtor for macos/linux (#3703) (572168f)
  • update faux transaction status when imported output is validated (#3684) (aaeb186)

Bug Fixes

  • fix tx and txo validation callback bug in wallet FFI (#3695) (16cfa22)

0.23.0 (2022-01-13)

⚠ BREAKING CHANGES

  • mempool: optimisations,excess sig index,fix weight calc (#3691)
  • comms: add signature to peer identity to allow third party identity updates (#3629)
  • provide a compact form of TransactionInput (#3460)
  • comms: optimise connection establishment (#3658)

Features

  • add 721 template stub (#3643) (5c276ee)
  • add chain storage and mempool validation for unique asset ids (#3416) (7331b0c)
  • add connect per site into the web extension (#3626) (75aa0a3)
  • add dibbler testnet and genesis block (6f355f7)
  • add file uploading to ipfs for asset create (#3524) (b1ee1df)
  • add onboarding flow for web extension (#3582) (0c47bc8)
  • add tari collectibles app (#3480) (eb46127)
  • add wallet stub to collectibles app (#3589) (dfc3b92)
  • collectibles: load asset registrations from base node on dash (#3532) (1fd5d03)
  • comms: add signature to peer identity to allow third party identity updates (#3629) (c672d48)
  • compile key manager to wasm and add javascript interface (#3565) (35790d6)
  • covenants implementation (#3656) (8dfcf3a)
  • create tari web extension application stub (#3535) (4a61c04)
  • example to generate vanity node_ids (#3654) (40fd1f0)
  • provide a compact form of TransactionInput (#3460) (834eff9)

Bug Fixes

  • allow 0-conf in blockchain db (#3680) (246709a)
  • comms: improve simultaneous connection handling (#3697) (99ba6a3)
  • prefer configured seeds over dns seeds (#3662) (0f438aa)
  • remove noise negotiation for debugging on bad wire mode (#3657) (eee73f7)

0.22.1 (2022-01-04)

Features

Bug Fixes

  • edge cases causing bans during header/block sync (#3661) (95af1cf)
  • end stale outbound queue immediately on disconnect, retry outbound messages (#3664) (576a00c)
  • return correct index for include_pruned_utxos = false (#3663) (80854b2)

0.22.0 (2021-12-07)

⚠ BREAKING CHANGES

Base node users should delete their node databases and resync

  • consensus: add tari script byte size limit check to validation (#3640)
  • pruned mode: prune inputs, allow horizon sync resume and other fixes (#3521)
  • sending one-sided transactions in wallet_ffi (#3634)
  • multiple monerod addresses in tari merge mining proxy (#3628)
  • separate peer seeds to common.network (#3635)
  • console wallet grpc_console_wallet_addresss config (#3619)
  • add tcp bypass settings for tor in wallet_ffi (#3615)
  • expose reason for transaction cancellation for callback in wallet_ffi (#3601)

Features

  • add ban peers metric (#3605) (65157b0)
  • add bulletproof rewind profiling (#3618) (5790a9d)
  • add page for detailed mempool in explorer (#3613) (970f811)
  • add tcp bypass settings for tor in wallet_ffi (#3615) (1003f91)
  • bad block list for invalid blocks after sync (#3637) (5969723)
  • consensus: add tari script byte size limit check to validation (#3640) (53a5174)
  • display network for console wallet (#3611) (7432c62)
  • expose reason for transaction cancellation for callback in wallet_ffi (#3601) (3b3da21)
  • implement dht pooled db connection (#3596) (2ac0757)
  • improve wallet responsiveness (#3625) (73d862f)
  • language detection for mnemonic seed words (#3590) (57f51bc)
  • only trigger UTXO scanning when a new block event is received (#3620) (df1be7e)
  • prevent banning of connected base node in wallet (#3642) (363b254)
  • removed transaction validation redundant events (#3630) (c3dbdc9)
  • sending one-sided transactions in wallet_ffi (#3634) (e501aa0)
  • standardize output hash for unblinded output, transaction output and transaction input (#3592) (2ba437b)
  • track ping failures and disconnect (#3597) (91fe921)
  • use CipherSeed wallet birthday for recovery start point (#3602) (befa621)

Bug Fixes

  • allow bullet proof value only rewinding in atomic swaps (#3586) (889796a)
  • allow bullet proof value only rewinding off one-sided transaction (#3587) (f32a38f)
  • be more permissive of responses for the incorrect request_id (#3588) (c0d625c)
  • console wallet grpc_console_wallet_addresss config (#3619) (b09acd1)
  • get-peer command works with public key again (#3636) (2e1500b)
  • improve handling of old base nodes and reorgs in wallet recovery (#3608) (bb94ea2)
  • minor improvements to available neighbouring peer search (#3598) (e59d194)
  • multiple monerod addresses in tari merge mining proxy (#3628) (ddb9268)
  • pruned mode: prune inputs, allow horizon sync resume and other fixes (#3521) (a4341a0)
  • remove delay from last request latency call (eb8b815)
  • remove delay from last request latency call (#3579) (c82a8ca)
  • seed word parsing (#3607) (fff45db)
  • separate peer seeds to common.network (#3635) (326579b)
  • update daily test start times and seed phrase (#3584) (8e271d7)
  • use json 5 for tor identity (regression) (#3624) (7d49fa4)

0.21.2 (2021-11-19)

Features

  • add atomic swap refund transaction handling (#3573) (337bc6f)
  • improve wallet connectivity status for console wallet (#3577) (e191e27)

0.21.1 (2021-11-17)

Features

  • add atomic swap htlc sending and claiming (#3552) (a185506)
  • add error codes to LibWallet for CipherSeed errors (#3578) (2913804)
  • add support for MultiAddr in RPC config (#3557) (9f8e289)
  • get fee for transactions for stratum transcoder (#3571) (ccf1da0)
  • implement multiple read single write for sqlite (#3568) (8d22164)
  • implement prometheus metrics for base node (#3563) (433bc46)
  • one-click installer - cli edition (#3534) (ec67798)
  • trigger time lock balance update when block received (#3567) (11b8afa)
  • wallet: import utxo’s as EncumberedToBeReceived rather than Unspent (#3575) (c286d40)

Bug Fixes

0.21.0 (2021-11-09)

⚠ BREAKING CHANGES

  • remove outdated wallet_ffi balance methods (#3528)
  • rpc: read from substream while streaming to check for interruptions (#3548)

Features

Bug Fixes

  • add check for old db encryption and provide warning (#3549) (69bbbdf)

  • add decision step between header sync and pruned/archival (#3546) (23e868a)

  • check for previously cancelled completed txn before accepting a repeat message (#3542) (911b83b)

  • prevent race condition between block propagation and sync (#3536) (6bbb654)

  • remove dns resolver config from cucumber tests, use default (#3547) (e17ee64)

  • rpc: read from substream while streaming to check for interruptions (#3548) (9194501)

  • update the seed words used in the Daily tests (#3545) (7696840)

  • use tcp tls backend for peer seed DNS resolution (#3544) (5b38909)

  • remove outdated wallet_ffi balance methods (#3528) (413757b)

0.13.0 (2021-11-04)

⚠ BREAKING CHANGES

  • implement new CipherSeed and upgrade encryption KDF (#3505)

Features

  • add a Rejected status to TransactionStatus (#3512) (c65a01c)
  • add caching and clippy annotations to CI (#3518) (beacb9e)
  • implement new CipherSeed and upgrade encryption KDF (#3505) (ef4f84f)

Bug Fixes

  • edge case fix for integer pair iter (#3508) (097e3e2)
  • header sync must allow transition to archival/pruned if tip is behind (#3520) (e028386)

0.12.0 (2021-10-29)

⚠ BREAKING CHANGES

  • wallet_ffi: add get_balance callback to wallet ffi (#3475)
  • apps should not depend on other app configs (#3469)

Features

Bug Fixes

  • add details to UnknownError (#3429) (dddc18f)
  • add display_currency_decimal method (#3445) (1f52ffc)
  • add sanity checks to prepare_new_block (#3448) (76bc1f0)
  • ban peer that advertises higher PoW than able to provide (#3478) (c04fca5)
  • check SAF message inflight and check stored_at is in past (#3444) (fbf8eb8)
  • correct panic in tracing for comms (#3499) (af15fcc)
  • dht: discard encrypted message with no destination (#3472) (6ca3424)
  • ensure that accumulated orphan chain data is committed before header validation (#3462) (80f7c78)
  • fix config file whitespace issue when auto generated in windows (#3491) (996c047)
  • fix confusing names in get_balance functions (#3447) (6cd9228)
  • fix flakey rust tests (#3435) (7384201)
  • fix recovery test reporting message (#3479) (335b626)
  • improve responsiveness of wallet base node switching (#3488) (762cb9a)
  • improve test Wallet should display transactions made (#3501) (6b3bac8)
  • prevent tari_mining_node from being able to start without a valid address for pool mining (#3440) (92dee77)
  • remove consensus breaking change in transaction input (#3474) (d1b3523)
  • remove is_synced check for transaction validation (#3459) (53989f4)
  • remove unbounded vec allocations from base node grpc/p2p messaging (#3467) (5d7fb20)
  • remove unnecessary wallet dependency (#3438) (07c2c69)
  • sha256sum isn't available on all *nix platforms (#3466) (6f61582)
  • typo in console wallet (#3465) (401aff9)
  • u64->i64->u64 conversion; chain split height as u64 (#3442) (43b2033)
  • upgrade rustyline dependencies (#3476) (a05ac5e)
  • validate dht header before dedup cache (#3468) (81f01d2)

0.11.0 (2021-10-08)

⚠ BREAKING CHANGES

  • new transaction and output validation protocol (#3421)

Features

Bug Fixes

  • allow env override of mining node pool settings (#3428) (423dbe1)
  • auto update cucumber tests, reduced timeout (#3418) (ce17627)
  • don't display an error when there is no message to be read in tari_mining_node (#3409) (eb4b560)
  • handle recovering a duplicate output (#3426) (f9c9201)
  • network switching (#3413) (9a369a0)
  • only allow one session per peer for block/header sync (#3402) (06da165)
  • reduce console wallet tui memory usage (#3389) (ca1e9fd)
  • update default sha3 pool address in readme and config (#3405) (dae656a)
  • update message on finding a valid share in tari_mining_node (#3408) (7c13fde)
  • updates to daily recovery test (#3433) (8ac27be)
  • use intermediate u64 to calculate average (#3432) (ff6bc38)

0.10.1 (2021-10-01)

Features

Bug Fixes

  • additional check for cancelled transactions (#3369) (ac5f26e)
  • fix console wallet tick events endless loop edge case at shutdown (#3380) (b40a98f)
  • fix debouncer delay bug (#3376) (4ac2fb2)
  • iOS linker error workaround (#3401) (58105d3)
  • mempool stats reflects unconfirmed pool (#3398) (596ea4a)
  • pressing b key should not clear existing base node in console wallet (#3364) (e594c5f)
  • relative paths for logs is now relative to data path instead of current execution directory (#3365) (e164c2b)
  • remove unnecessary range proof verify and fix test temp disk usage (#3334) (eeb62a6)
  • resolved feature flags for openssl vendoring (#3287) (30343d4)
  • wallet recovery (#3366) (2fde873)

0.10.0 (2021-09-17)

Features

Bug Fixes

  • always grow database when asked to resize (#3313) (603bcb3)
  • ban header sync peer if no headers provided (#3297) (570e222)
  • block sync validation (#3236) (fd081c8)
  • ci: add quotes to pr title ci (29247c2), closes #3254
  • dead_code lint error when base_node_feature is not set (#3354) (7fa0572)
  • dedup sql error when deleting many entries (#3300) (7e58845)
  • disable P2P transaction negotiation while recovery is in progress (#3248) (844e6cf)
  • disconnected node was never ready (#3312) (dfc6fd2)
  • fix median timestamp index (#3349) (0757e9b)
  • fix regression in cucumber tests for wallet ffi step (#3356) (481f3c9)
  • handle stream read error case by explicitly closing the substream (#3321) (336f4d6)
  • invalid forced sync peer now returns configerror (#3350) (8163ef8)
  • prevent immediate run of wallet recovery on cron script (#3260) (969b306)
  • randomx memory usage (#3301) (52e409d), closes #3104 #3103
  • reduce overly-eager connection reaping for slow connections (#3308) (9a0c999)
  • remove explicit panic from rpc handshake on io error (#3341) (c2ebfc8)
  • remove sqlite from windows installer and scripts (#3362) (b2b6912)
  • resolved design flaw in wallet_ffi library (#3285) (2e6638c)
  • stop MTP attack (#3357) (a82638a)
  • update balance after pending transaction is created (#3320) (47bafbf)
  • update block explorer to use local grpc (#3348) (fc1e120)
  • update cucumber tests for walletffi.feature (#3275) (38191d3)
  • wait couple rounds for no pings to send an event (#3315) (2dcc0ea)

0.9.6 (2021-09-01)

Features

  • add ability to bypass rangeproof (#3265) (055271fc)
  • allow network to be selected at application start (#3247) (8a36fb56)
  • add Igor testnet (#3256) (0f6d3b1c)
  • improve basenode switch from listening to lagging mode (#3255) (9dc335f6)
  • allow DHT to be configured to repropagate messages for a number of rounds (#3211) (60f286b3)
  • base_node prompt user to create id if not found (#3245) (6391941f)
  • add support for forcing sync from seeds (#3228) (d1329320)
  • wallet: add tab for error log to the wallet (#3250) (098f25dc)

Bug Fixes

  • make logging less noisy (#3267) (4798161b)
  • remove cucumber walletffi.js file that got re-included in rebase (#3271) (77c92565)
  • auto update continuously checks auto_update_check_interval is disabled (#3270) (b3bff31c)
  • revert mining_node default logging config (#3262) (edc1a2b9)
  • off-by-one causing "no further headers to download" bug (#3264) (3502b397)
  • small display bug (#3257) (d1bb7377)
  • send transactions to all connected peers (#3239) (16f779ed)
  • add periodic connection check to wallet connectivity service (#3237) (8c7066bc)
  • fix base_node_service_config not read (#3251) (80066887)
  • daily wallet recovery fixes (#3229) (6970230d)
  • remove OpenSSL from Windows runtime (#3242) (0048c3bc)
  • add status output to logs in non-interactive mode (#3244) (6b91bb63)
  • exit command and free up tokio thread (#3235) (d924beb6)

0.9.5 (2021-08-23)

Bug Fixes

  • show warnings on console (#3225) (3291021c)
  • edge-case fixes for wallet peer switching in console wallet (#3226) (f577df8e)
  • chain error caused by zero-conf transactions and reorgs (#3223) (f0404273)
  • bug in wallet base node peer switching (#3217) (878c317b)
  • division by zero (8a988e1c)
  • improve p2p RPC robustness (#3208) (211dcfdb)
  • wallet: add NodeId to console wallet Who Am I tab (#3213) (706ff5e5)
  • wallet_ffi: fix division by zero during recovery (#3214) (abd3d849)

Features

  • add ping() to all comms RPC clients (#3227) (b5b62238)

Breaking Changes

  • base nodes should delete their database and resync

0.9.4 (2021-08-17)

Features

  • add sync rpc client pool to wallet connectivity (#3199) (305aeda1)
  • wallet: add network selection to wallet_ffi (#3178) (f0f40b20)

Bug Fixes

  • fix console wallet buffer size bug (#3200) (b94667fd)
  • ensure peers are added to peer list before recovery starts (#3186) (5f33414a)
  • enforce unique commitments in utxo set (#3173) (23a7d64c)
  • cleanup stratum config terminal output in tari_mining_node (#3181) (6c38f226)
  • wallet: handle receiver cancelling an inbound transaction that is later received (#3177) (c79e53cf)

0.9.3 (2021-08-12)

Bug Fixes

  • set robust limits for busy a blockchain (#3150) (c993780a)
  • update handling of SAF message propagation and deletion (#3164) (cedb4efc)
  • improve prune mode to remove panics (#3163) (05f78132)
  • better method for getting an open port in cucumber tests (2d9f3a60)
  • fix utxo scan edge case when pc awakes from sleep (#3160) (5bdc9f39)
  • ban peer when merkle roots mismatch (39ddd337)
  • fix search_kernel command (#3157) (dc99898e)
  • introduce cache update cool down to console wallet (#3146) (5de92526)
  • add timeout to protocol notifications + log improvements (#3143) (77018464)
  • fix GRPC GetTransactionInfo not found response (#3145) (0e0bfe0f)
  • fix cucumber transaction builder reliability (#3147) (d4a7fdd3)
  • wallet:
    • fix resize panic (#3149) (33af0847)
    • in wallet block certain keys during popup (#3148) (84542922)
    • correctly deal with new coinbase transactions for the same height (#3151) (564ef5a2)

Features

  • wallet connectivity service (#3159) (54e8c8e4)
  • add a shared p2p rpc client session pool to reduce rpc setup time (#3152) (778f9512)
  • miningcore transcoder (#3003) (ee9a225c)
  • mining_node: mining worker name for tari_mining_node (#3185) (48a62f98)

0.9.2 (2021-07-29)

Bug Fixes

  • update LibWallet wallet_import_utxo method to include valid TariScript (#3139) (cc6de2ab)
  • update LibWallet recovery task event handling (#3142) (0861d726)
  • improve reliability of get block template protocol in mm proxy (#3141) (6afde62f)
  • replace usage of RangeProof MR with Witness MR (#3129) (bbfc6878)
  • fix prune mode sync (#3138) (d0d1d614)
  • update transaction and block validator to use full deleted map (#3137) (4f1509e6)
  • bug that causes non p2p apps to panic on startup (#3131) (389dd748)
  • console wallet now recognises wallet.network comms settings (#3121) (162e98bf)

Features

  • add persistent dedup cache for message hashes (#3130) (08f2675d)
  • comms:
    • tcp-only p2p protocol listener (#3127) (6fefd18a)
  • wallet: add extra feedback to recovery monitoring callback in Wallet FFI (#3128) (02836b09)

Breaking Changes

  • console wallet now recognises wallet.network comms settings (#3121) (162e98bf)

0.9.1 (2021-07-21)

Bug Fixes

  • accumulated block data bitmap now contains current stxo indexes (#3109) (77b1789d)
  • fix prune mode sync bug introduced in TariScript (#3082) (b374e7fd)
  • accumulated block data bitmap only contains current stxo indexes (d8440437)
  • don't log tor control port password (#3110) (12320ec8)
  • reduce UTXO batch size query limit to account for 4MB frame size (#3098) (c4f5a875)
  • update transaction status from broadcast if already minedi (#3101) (32fe3d26)
  • run wallet on windows terminal if present. (#3091) (bd017bca)
  • fallback to default flags if rxcache initialization fails (#3087) (eace2ffe)
  • update parsing of num_mining_threads config field (#3081) (1f20252b)
  • fix bug in wallet FFI header file (#3075) (a835032d)
  • update Tari-common crate feature flags to exclude git2 from lib_wallet build (#3072) (a54d87f2)
  • improve transaction receive protocol logic (#3067) (60de24c9)
  • wallet:
    • fix UTXO scanning (#3094) (81422f1c)
    • clear the console after seeing the seed words. (#3093) (7b1c29db)
    • fix when ESC is pressed while adding contact. (#3092) (ffd7abfe)

Breaking Changes

  • accumulated block data bitmap now contains current stxo indexes (#3109) (77b1789d)
  • fix prune mode sync bug introduced in TariScript (#3082) (b374e7fd)
  • accumulated block data bitmap only contains current stxo indexes (d8440437)

Features

  • add networking grpc calls to wallet and base node (#3100) (17f37fb6)
  • add support for /dns multiaddrs to dns resolver (#3105) (6d48dbe8)
  • Add support for /dns multiaddrs to dns resolver (db384c05)
  • add one-sided txns to make-it-rain (#3084) (043f27d6)
  • wallet: add contact lookup in wallet. (#3096) (92993d7a)

0.9.0 (2021-07-07)

Bug Fixes

  • fix missing edge case in header sync (#3060) (0f0fb856)
  • remove unstable impl trait from Tari comms (#3056) (08b019f0)
  • fix db update error (#3063) (b95d558f)
  • remove unimplemented Blake pow algo variant (#3047) (347973e3, breaks #)
  • fix small issues related to #3020 (#3026) (da1d7579)
  • update connectivity manager defaults (#3031) (229830e5)
  • check minimum number of headers for calc-timing (#3009) (b3522027)
  • fix Unique Constraint bug when requesting a coinbase output at same height (#3004) (537db06f)
  • cancel faux transaction when imported UTXO is invalidated (#2984) (472c3086)
  • update console wallet on one sided payment import (#2983) (f45cdc46)
  • fix prune mode (#2952) (f7dc3a44)
  • fix ChainStorageError after a reorg with new block (#2915) (7e99ea59)
  • improve error messages in tari applications (#2951) (e04c884e)
  • merge dev, update peer seeds (#2974) (94ffd185)
  • implement cucumber tests for one-sided recovery and scanning (#2955) (b55d99fe)
  • update rust nightly toolchain (#2957) (812a1611)
  • update failing rust tests (#2961) (ed17fee3)
  • wallet: increment wallet key manager index during recovery (#2973) (c9fdeb3d)

Breaking Changes

  • remove unimplemented Blake pow algo variant (#3047) (347973e3
  • ffi: wallet_create takes seed words for recovery (#2986) (a2c6b17d

Features

  • bundle openssl dependency (#3038) (7fd5c286)
  • bundle sqlite dependency (#3036) (7bd13411)
  • add tari script transaction data structures (#3064) (266b5f1c)
  • implement metadata comsig on txn output (#3057) (8ecbb1f2)
  • software auto updates for base node (#3039) (cf33cdb5)
  • add zero conf tx (#3043) (742dd9e6)
  • network separation and protocol versioning implementation (#3030) (2c9f6999)
  • add filtering of abandoned coinbase txs to console wallet (#3032) (ae15fd9c)
  • add input_mr and witness_mr to header (#3041) (65552cbd)
  • Change script_signature type to ComSig (#3016) (adb4a640)
  • update app state when base node is set by command/script mode (#3019) (4a499564)
  • add sender signature to txn output (#3020) (7901b3ca)
  • display local time instead of UTC. Add new wallet commands. (#2994) (b3760202)
  • mininal merkle proof for monero pow data (#2996) (ac062e57)
  • modify gamma calculation for TariScript (c88d789e)
  • fix birthday attack vulnerability in tari script offset (#2956) (5174de0d)
  • improve LWMA (#2960) (db303e8c)
  • ffi: wallet_create takes seed words for recovery (#2986) (a2c6b17d)
  • wallet:
    • add maturity to transaction detail (#3042) (9b281cec)
    • ensure recovery will not overwrite existing wallet (#2992) (70c21294)