Commit Graph

992 Commits

Author SHA1 Message Date
Arya e14d1d8e40
change(state): Upgrade db format to support new fields in RPC outputs (#9539)
* updates book/../state-db-upgrades.md

* updates zebra-consensus with the changes from PR #9432 and minor test changes from #9295

* updates zebra-chain with the changes from PR #9432

* updates imports in zebra-rpc

* Merges and applies changes to zebra-state from PRs #9295 and #9432

* adds a TODO.

* minor update to zebra-rpc to use the new ReadResponse::AddressBalance type

* renames add_block_info db upgrade

* moves migration from `add_balance_received` to `block_info_and_address_received`

* replaces `write` with `write_batch`

* update disk format snapshots

* combines partial_transparent_balance_change() and partial_transparent_received_change()

* fixes typo

* Replaces redundant code with a call to `construct_column_families()`

* refactors `AddressBalanceLocation` and `AddressBalanceLocationChange` into a newtypes around a common inner type.

* fixes lints and doc compilation issue

* updates snapshots

* bumps the db format version to the next major version (27.0.0) instead of the next minor version (26.1.0)

* fixes clippy lint, minor cleanups

* fixes lint

* applies suggestions from code review

* fixes a mistake in `is_reusable_major_upgrade` where v26.0.0 is not a restorable db version

* Fixes an issue around marking an upgraded db format in the disk version file before completing migrations when reusing a previous major db format and restarting Zebrad before the migration is complete.

* Apply suggestions from code review

---------

Co-authored-by: Gustavo Valverde <gustavo@iterativo.do>
2025-06-03 20:49:53 +00:00
Arya f8de752f52
change(deps): Allow Zebra crates to be compiled with alternative versions of their dependencies (#9484)
* Avoid pinning Zebra crate dependencies to specific patch versions

* re-bump packages with required functionality

---------

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
2025-06-03 16:10:25 +00:00
Alfredo Garcia cbd1bb7fc3
feat(rpc): Update `(z_)validateaddress` to validate TEX addresses (#9483)
* add TEX support to validate address rpc methods

* update call docs

* fix comment

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>

---------

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2025-05-22 15:12:37 +00:00
Marek b0e7fd4a9a
chore: Release v2.3.0 (#9475)
* Update changelog

* Update end of support

* Add release date

* Add breaking change description

* Add new PRs to changelog

* Add breaking change description to changelog

* Update list of PRs in changelog

* chore: Release

* Apply suggestions from code review

Co-authored-by: Arya <aryasolhi@gmail.com>

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2025-05-06 14:47:47 +00:00
Alfredo Garcia 638b4a212d
feat(rpc): Add `time` and `size` field to `TransactionObject` (#9458)
* add size and time to getrawtransaction object

* fix annoying clippy lint about large enum variant

* add todo

* add TODO, remove TODO

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>

---------

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
2025-05-06 08:44:03 +00:00
Alfredo Garcia ee65be98c5
fix(usability): Improve the cache dir and database startup panics (#9441)
* improve cache dir database panics

* Apply suggestions from code review

Co-authored-by: Arya <aryasolhi@gmail.com>

* fix build

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2025-05-06 01:01:53 +00:00
Alfredo Garcia 9002cfcbd3
downgrade info message (#9448) 2025-04-21 11:10:41 +00:00
Kris Nuttycombe 63723e7e84
zebra-state: Return only the history tree root in GetBlockTemplateChainInfo response. (#9444)
The `HistoryTree` type is intended for internal use within the node; it
should not be exposed via the ReadStateService response. Instead, this
response should simply include the hash needed for block template
construction.
2025-04-18 20:57:45 +00:00
Arya 4e1bb0e5e1
change(command): Use read-only db instance when running `tip-height` or `copy-state` commands (#9359)
* read tip height from read-only db instance when running "tip-height" command.

* use ReadStateService for the source state in the copy-state cmd
2025-04-11 12:37:28 +00:00
Alfredo Garcia c901adf177
feat(rpc): Add some missing fields to transaction object (#9329)
* extend `getrawtransaction` verbose output

* replace strings where possible, fix tests

* fix orchard

* add todos for script assembly code

* fix an import

* fmt

* fmt

* suggestion for #9329: change coinbase field and add valueSat field to match zcashd (#9407)

* change coinbase field and add valueSat field to match zcashd

* remove valueSat; update vectors

---------

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
2025-04-10 22:59:43 +00:00
Marek 4e29b097af
Remove the `getblocktemplate-rpcs` Cargo feature (#9401)
* Remove the `getblocktemplate-rpcs` Cargo feature

* Keep the feature in `zebrad/Cargo.toml`
2025-04-10 18:29:48 +00:00
Mark Henderson d061232312
Experiment: `Transaction::V6` variants only (#9339)
* Update main.yml

* feat: auto-sync upstream

* fix: merge errors

* Merge pull request #6 from ShieldedLabs/aphelionz/v6-transactions

Add Transaction::V6 Variants

* fix: enable tx_v6 on zebra-chain when it's enabled on zebra-state

* fix: more feature flag dependencies

* cleanup: remove prop.txt

* Update zebra-chain/src/transaction.rs

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>

* cleanup: removing SL-specific workflow

* fix: skip some windows-related denies

* Update deny.toml

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>

* fix: better deny.toml entry for windows-core

* Update zebra-chain/src/transaction/serialize.rs

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>

* Update zebra-chain/src/transaction/serialize.rs

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>

* Update zebra-chain/src/transaction/tests/vectors.rs

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>

* Update zebra-chain/src/transaction.rs

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>

* feat: passthrough functions for v6 -> v5

* fix: rust fmt

---------

Co-authored-by: Mark Henderson <mark@allspice.io>
Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
2025-04-09 18:52:13 +00:00
Alfredo Garcia 4956c22cdf
exit early in `try_reusing_previous_db_after_major_upgrade` if `!exist(old_path)` (#9397) 2025-04-09 10:11:09 +00:00
Marek 8e04edb24f
feat(rpc): Support negative heights in `HashOrHeight` (#9316)
* Support negative heights in `HashOrHeight`

* Change ownership of cached state

* Revert "Change ownership of cached state"

This reverts commit 1fe9ae393f.

* add solution to other methods, add tests

* cargo clippy fix

* fmt

---------

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2025-04-04 12:13:11 +00:00
Alfredo Garcia de51063957
fix(clippy): last lints (#9371)
* fix clippy lints

* another lint missing
2025-04-03 17:13:29 +00:00
Conrado Gouvea 949326258a
feat(rpc): fill size field in getblock with verbosity=2 (#9327)
* feat(rpc): fill size field in getblock with verbosity=2

* replace unwrap with expect
2025-03-28 13:45:06 +00:00
Arya 49011f8460
change(state): Refactor format upgrades into trait (#9263)
* Adds a new trait for disk format upgrades, implements in on a new struct, `PruneTrees`, and moves the logic for tree deduplication to the trait impl

* refactors add subtrees format upgrade to use new trait

* refactors fix tree keys, cache genesis roots, and value balance upgrades to use new trait

* Applies suggestions from code review:
- Avoids duplicate validation of format upgrades at startup when db is already upgraded,
- Minor refactors
- Doc fixes and cleanups

* Applies suggestions from code review

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2025-03-28 10:52:05 +00:00
Elijah Hampton 979cdaf963
feat(state): Implements reconsider_block method (#9260)
* Adds reconsider_block method and appropriate test cases

* Refactors invalidated_blocks state to use IndexMap. Returns error from validate_and_commit if a candidate block's hash is in the map of invalidated blocks. Stores invalidated_blocks by height and clears when finalizing. Checks against non finalized tip hash to create a new chain if parnt_chain doesn't exist. Renames ReconsiderError variant NonPreviouslyInvalidatedBlock to MissingInvalidatedBlock.

* Moves MAX_INVALIDATED_BLOCKS constant to constants.rs

* Maintains invalidate_blocks cleanup in reconsider_block and finalize(). Removes unused ReconsiderError variant. Opts to refuse block consideration if parent_chain does not exist. Adds db handle to reconsider_block function. Edits max blocks constant documentation

* Checks the finalized state first to create a new chain from non finalized blocks only before checking parent_chain.
2025-03-25 19:10:33 +00:00
Marek 79e18e045c
chore(CI): Update codespell's config (#9288) 2025-02-24 14:35:59 +00:00
Marek 80a25c1c4c
Fix Clippy lints for Rust 1.85 (#9289) 2025-02-24 14:34:19 +00:00
Arya cf653313dd
feat(rpc): Add fields to `getblockchaininfo` RPC output (#9215)
* Adds some of the required fields on `getblockchaininfo` output.

* Adds state request/response variants for querying disk usage

* Adds `size_on_disk`, `chain_supply`, and `monitored` fields.

* Updates snapshots

* fixes prop tests

* fixes doc lints

* Adds missing `size()` method

* Fixes lwd integration test issue by updating get_blockchain_info to fallback on default values instead of returning an error if the state is empty.

Related: Runs state queries in parallel from getblockchaininfo RPC and removes the BlockHeader query by getting the tip block time from the latest chain tip channel.

* Updates failing proptests

* fixes lint
2025-02-12 23:20:05 +00:00
Elijah Hampton 9bda2c8474
Add invalidate block method and invalidated_blocks field to NonFinalizedState (#9167)
* Adds new invalidate_block method to non finalized state. Adds test case in vectors.rs. Updates non finalized state to track invalidated_blocks

* Removes InvalidatedBlockData struct. Wraps invalidated_blocks HashMap values with Arc. Optimizies invalidate_block fn to return early if root has hash of desired block.

* Update metrics whenever chain_set is modified

* Adds child_blocks method and refactors invalidate_block in chain.rs. Refactors invalidate_block in NonFinalizedState.

---------

Co-authored-by: Elijah Hampton <elijahhampton@pop-os.lan>
2025-02-11 12:12:24 +00:00
Alfredo Garcia 6d01f052c9
chore(release): Zebra release v2.2.0 (#9195)
* add changelog section for 2.2.0

* chore: Release

* update end of support

* Apply suggestions from code review

Co-authored-by: Arya <aryasolhi@gmail.com>

* Update CHANGELOG.md

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
2025-02-04 16:50:10 +00:00
Alfredo Garcia d26b0c188f
run `cargo autoinherit` (#9041)
Co-authored-by: zancas <zancas@zingolabs.org>
2025-02-04 03:29:46 +00:00
Arya 13e8e7991c
fix(consensus): Avoid a concurrency bug when verifying transactions in blocks that are already present in the mempool (#9118)
* Wait for spent UTXOs to arrive in the state if they're not found elsewhere instead of returning an error when a transaction in a candidate block has already been verified in the mempool

* updates test, avoids returning InternalDowncastErrors when AwaitUtxo requests time out

* return early if there are no missing deps

* Applies suggestions from code review

* Updates field documentation
2025-01-31 12:13:22 +00:00
dependabot[bot] af89544b69
build(deps): bump the prod group across 1 directory with 36 updates (#9179)
* build(deps): bump the prod group across 1 directory with 36 updates

Bumps the prod group with 36 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [clap](https://github.com/clap-rs/clap) | `4.5.23` | `4.5.27` |
| [indexmap](https://github.com/indexmap-rs/indexmap) | `2.7.0` | `2.7.1` |
| [semver](https://github.com/dtolnay/semver) | `1.0.23` | `1.0.25` |
| [serde](https://github.com/serde-rs/serde) | `1.0.215` | `1.0.217` |
| [tokio](https://github.com/tokio-rs/tokio) | `1.42.0` | `1.43.0` |
| [tower](https://github.com/tower-rs/tower) | `0.4.13` | `0.5.1` |
| [pin-project](https://github.com/taiki-e/pin-project) | `1.1.7` | `1.1.8` |
| [tinyvec](https://github.com/Lokathor/tinyvec) | `1.8.0` | `1.8.1` |
| [thiserror](https://github.com/dtolnay/thiserror) | `2.0.6` | `2.0.11` |
| [dirs](https://github.com/soc/dirs-rs) | `5.0.1` | `6.0.0` |
| [rand](https://github.com/rust-random/rand) | `0.8.5` | `0.9.0` |
| [sentry](https://github.com/getsentry/sentry-rust) | `0.35.0` | `0.36.0` |
| [inferno](https://github.com/jonhoo/inferno) | `0.12.0` | `0.12.1` |
| [hyper](https://github.com/hyperium/hyper) | `1.5.1` | `1.6.0` |
| [metrics-exporter-prometheus](https://github.com/metrics-rs/metrics) | `0.16.0` | `0.16.1` |
| [log](https://github.com/rust-lang/log) | `0.4.22` | `0.4.25` |
| [indicatif](https://github.com/console-rs/indicatif) | `0.17.9` | `0.17.11` |
| [proptest](https://github.com/proptest-rs/proptest) | `1.5.0` | `1.6.0` |
| [proptest-derive](https://github.com/proptest-rs/proptest) | `0.5.0` | `0.5.1` |
| [jsonrpsee-types](https://github.com/paritytech/jsonrpsee) | `0.24.7` | `0.24.8` |
| [insta](https://github.com/mitsuhiko/insta) | `1.41.1` | `1.42.1` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.133` | `1.0.138` |
| [tempfile](https://github.com/Stebalien/tempfile) | `3.14.0` | `3.16.0` |
| [bitflags](https://github.com/bitflags/bitflags) | `2.6.0` | `2.8.0` |
| [primitive-types](https://github.com/paritytech/parity-common) | `0.12.2` | `0.13.1` |
| [rand_core](https://github.com/rust-random/rand) | `0.6.4` | `0.9.0` |
| [serde_with](https://github.com/jonasbb/serde_with) | `3.11.0` | `3.12.0` |
| [itertools](https://github.com/rust-itertools/itertools) | `0.13.0` | `0.14.0` |
| [rand_chacha](https://github.com/rust-random/rand) | `0.3.1` | `0.9.0` |
| [rocksdb](https://github.com/rust-rocksdb/rust-rocksdb) | `0.22.0` | `0.23.0` |
| [crossbeam-channel](https://github.com/crossbeam-rs/crossbeam) | `0.5.13` | `0.5.14` |
| [elasticsearch](https://github.com/elastic/elasticsearch-rs) | `8.16.0-alpha.1` | `8.17.0-alpha.1` |
| [jsonrpsee](https://github.com/paritytech/jsonrpsee) | `0.24.7` | `0.24.8` |
| [jsonrpsee-proc-macros](https://github.com/paritytech/jsonrpsee) | `0.24.7` | `0.24.8` |
| [syn](https://github.com/dtolnay/syn) | `2.0.90` | `2.0.96` |
| [quote](https://github.com/dtolnay/quote) | `1.0.37` | `1.0.38` |



Updates `clap` from 4.5.23 to 4.5.27
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.23...clap_complete-v4.5.27)

Updates `indexmap` from 2.7.0 to 2.7.1
- [Changelog](https://github.com/indexmap-rs/indexmap/blob/main/RELEASES.md)
- [Commits](https://github.com/indexmap-rs/indexmap/compare/2.7.0...2.7.1)

Updates `semver` from 1.0.23 to 1.0.25
- [Release notes](https://github.com/dtolnay/semver/releases)
- [Commits](https://github.com/dtolnay/semver/compare/1.0.23...1.0.25)

Updates `serde` from 1.0.215 to 1.0.217
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.215...v1.0.217)

Updates `tokio` from 1.42.0 to 1.43.0
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.42.0...tokio-1.43.0)

Updates `tower` from 0.4.13 to 0.5.1
- [Release notes](https://github.com/tower-rs/tower/releases)
- [Commits](https://github.com/tower-rs/tower/compare/tower-0.4.13...tower-0.5.1)

Updates `pin-project` from 1.1.7 to 1.1.8
- [Release notes](https://github.com/taiki-e/pin-project/releases)
- [Changelog](https://github.com/taiki-e/pin-project/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/pin-project/compare/v1.1.7...v1.1.8)

Updates `tinyvec` from 1.8.0 to 1.8.1
- [Changelog](https://github.com/Lokathor/tinyvec/blob/main/CHANGELOG.md)
- [Commits](https://github.com/Lokathor/tinyvec/compare/v1.8.0...v1.8.1)

Updates `thiserror` from 2.0.6 to 2.0.11
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/2.0.6...2.0.11)

Updates `dirs` from 5.0.1 to 6.0.0
- [Commits](https://github.com/soc/dirs-rs/commits)

Updates `rand` from 0.8.5 to 0.9.0
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/rand/compare/0.8.5...0.9.0)

Updates `sentry` from 0.35.0 to 0.36.0
- [Release notes](https://github.com/getsentry/sentry-rust/releases)
- [Changelog](https://github.com/getsentry/sentry-rust/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-rust/compare/0.35.0...0.36.0)

Updates `inferno` from 0.12.0 to 0.12.1
- [Changelog](https://github.com/jonhoo/inferno/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jonhoo/inferno/compare/v0.12.0...v0.12.1)

Updates `hyper` from 1.5.1 to 1.6.0
- [Release notes](https://github.com/hyperium/hyper/releases)
- [Changelog](https://github.com/hyperium/hyper/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/hyper/compare/v1.5.1...v1.6.0)

Updates `metrics-exporter-prometheus` from 0.16.0 to 0.16.1
- [Changelog](https://github.com/metrics-rs/metrics/blob/main/release.toml)
- [Commits](https://github.com/metrics-rs/metrics/compare/metrics-exporter-prometheus-v0.16.0...metrics-exporter-prometheus-v0.16.1)

Updates `log` from 0.4.22 to 0.4.25
- [Release notes](https://github.com/rust-lang/log/releases)
- [Changelog](https://github.com/rust-lang/log/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/log/compare/0.4.22...0.4.25)

Updates `indicatif` from 0.17.9 to 0.17.11
- [Release notes](https://github.com/console-rs/indicatif/releases)
- [Commits](https://github.com/console-rs/indicatif/compare/0.17.9...0.17.11)

Updates `proptest` from 1.5.0 to 1.6.0
- [Release notes](https://github.com/proptest-rs/proptest/releases)
- [Changelog](https://github.com/proptest-rs/proptest/blob/main/CHANGELOG.md)
- [Commits](https://github.com/proptest-rs/proptest/compare/v1.5.0...v1.6.0)

Updates `proptest-derive` from 0.5.0 to 0.5.1
- [Release notes](https://github.com/proptest-rs/proptest/releases)
- [Changelog](https://github.com/proptest-rs/proptest/blob/0.5.1/CHANGELOG.md)
- [Commits](https://github.com/proptest-rs/proptest/compare/proptest-derive-0.5.0...0.5.1)

Updates `jsonrpsee-types` from 0.24.7 to 0.24.8
- [Release notes](https://github.com/paritytech/jsonrpsee/releases)
- [Changelog](https://github.com/paritytech/jsonrpsee/blob/v0.24.8/CHANGELOG.md)
- [Commits](https://github.com/paritytech/jsonrpsee/compare/v0.24.7...v0.24.8)

Updates `insta` from 1.41.1 to 1.42.1
- [Release notes](https://github.com/mitsuhiko/insta/releases)
- [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/insta/compare/1.41.1...1.42.1)

Updates `serde_json` from 1.0.133 to 1.0.138
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.133...v1.0.138)

Updates `tempfile` from 3.14.0 to 3.16.0
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.14.0...v3.16.0)

Updates `bitflags` from 2.6.0 to 2.8.0
- [Release notes](https://github.com/bitflags/bitflags/releases)
- [Changelog](https://github.com/bitflags/bitflags/blob/main/CHANGELOG.md)
- [Commits](https://github.com/bitflags/bitflags/compare/2.6.0...2.8.0)

Updates `primitive-types` from 0.12.2 to 0.13.1
- [Commits](https://github.com/paritytech/parity-common/commits/primitive-types-v0.13.1)

Updates `rand_core` from 0.6.4 to 0.9.0
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/rand/compare/rand_core-0.6.4...0.9.0)

Updates `serde_with` from 3.11.0 to 3.12.0
- [Release notes](https://github.com/jonasbb/serde_with/releases)
- [Commits](https://github.com/jonasbb/serde_with/compare/v3.11.0...v3.12.0)

Updates `itertools` from 0.13.0 to 0.14.0
- [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-itertools/itertools/compare/v0.13.0...v0.14.0)

Updates `rand_chacha` from 0.3.1 to 0.9.0
- [Release notes](https://github.com/rust-random/rand/releases)
- [Changelog](https://github.com/rust-random/rand/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-random/rand/compare/rand_chacha-0.3.1...0.9.0)

Updates `rocksdb` from 0.22.0 to 0.23.0
- [Release notes](https://github.com/rust-rocksdb/rust-rocksdb/releases)
- [Changelog](https://github.com/rust-rocksdb/rust-rocksdb/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-rocksdb/rust-rocksdb/compare/v0.22.0...v0.23.0)

Updates `crossbeam-channel` from 0.5.13 to 0.5.14
- [Release notes](https://github.com/crossbeam-rs/crossbeam/releases)
- [Changelog](https://github.com/crossbeam-rs/crossbeam/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crossbeam-rs/crossbeam/compare/crossbeam-channel-0.5.13...crossbeam-channel-0.5.14)

Updates `elasticsearch` from 8.16.0-alpha.1 to 8.17.0-alpha.1
- [Release notes](https://github.com/elastic/elasticsearch-rs/releases)
- [Commits](https://github.com/elastic/elasticsearch-rs/compare/v8.16.0-alpha.1...v8.17.0-alpha.1)

Updates `jsonrpsee` from 0.24.7 to 0.24.8
- [Release notes](https://github.com/paritytech/jsonrpsee/releases)
- [Changelog](https://github.com/paritytech/jsonrpsee/blob/v0.24.8/CHANGELOG.md)
- [Commits](https://github.com/paritytech/jsonrpsee/compare/v0.24.7...v0.24.8)

Updates `jsonrpsee-proc-macros` from 0.24.7 to 0.24.8
- [Release notes](https://github.com/paritytech/jsonrpsee/releases)
- [Changelog](https://github.com/paritytech/jsonrpsee/blob/v0.24.8/CHANGELOG.md)
- [Commits](https://github.com/paritytech/jsonrpsee/compare/v0.24.7...v0.24.8)

Updates `syn` from 2.0.90 to 2.0.96
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.90...2.0.96)

Updates `quote` from 1.0.37 to 1.0.38
- [Release notes](https://github.com/dtolnay/quote/releases)
- [Commits](https://github.com/dtolnay/quote/compare/1.0.37...1.0.38)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: indexmap
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: semver
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: tower
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: pin-project
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tinyvec
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: dirs
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: prod
- dependency-name: rand
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: sentry
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: inferno
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: hyper
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: metrics-exporter-prometheus
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: log
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: indicatif
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: proptest
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: proptest-derive
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: jsonrpsee-types
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: insta
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: bitflags
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: primitive-types
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: rand_core
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: serde_with
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: itertools
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: rand_chacha
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: rocksdb
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: crossbeam-channel
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: elasticsearch
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: jsonrpsee
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: jsonrpsee-proc-macros
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: quote
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
...

Signed-off-by: dependabot[bot] <support@github.com>

* downgrade some dependencies, fixes where needed with what is left

* update denies

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
2025-01-31 04:11:33 +00:00
Arya f0c497160a
add(state): Track spending transaction ids by spent outpoints and revealed nullifiers (#8895)
* Adds new column family for [spent_out_loc] -> [spending_tx_loc] with a read method and an update to `prepare_spending_transparent_tx_ids_batch()` for maintaining it when committing blocks to the finalized state.

Adds TODOs for remaining production changes needed for issue #8837.

* add spending tx ids for spent outpoints to non-finalized chains

* adds a `spending_transaction_hash()` read fn for the new column family

* Adds a `TransactionIdForSpentOutPoint` ReadRequest and a `TransactionId` ReadResponse

* Updates snapshots, removes outdated TODOs, moves a TODO.

* Clarifies `spent_utxos` field docs, fixes an assertion

* import TypedColumnFamily from `finalized_state` instead of from the crate.

* adds db format upgrade for spent outpoints -> tx hash

* adds revealing tx ids for nullifiers in finalized and non-finalized states

* updates nullifiers column families to include revaling transaction locations in db format upgrade

* Renames new read state request to `SpendingTransactionId` and updates its type to a `Spend` enum

* refactor db format upgrade and prepare_nullifiers_batch() to use ZebraDb instead of DiskDb, checks cancel_receiver before every db operation

* Adds acceptance test for checking that the finalized state has spending transaction ids

* Adds variant docs to zebra_state::request::Spend enum

* Updates Zebra book with the latest changes to the rocks db column families

* Updates acceptance test to check non-finalized state

* adds a few log messages to the acceptance test, reduces frequency of logs for progress updates

* fixes docs lint and skips test when there is no cached state

* Avoids returning genesis coinbase tx hash when indexes are missing

* Adds `indexer` compilation feature in zebra-state and build metadata in db format version file

* stops tracking new indexes in finalized state when feature is unselected

* stops tracking new indexes in non-finalized state when indexer feature is unselected

* condenses imports

* - adds build metadata when writing db version file, if any.
- adds the build metadata to the db version file before adding indexes.
- deletes indexes when running without the `indexer` feature

* Replaces dropping cf with deleting range of all items to avoid a panic when trying to open the db with that column family.

* Fixes lint, avoids reading coinbase transactions from disk

* updates db column families table

* Document need for having an indexed cached state and use a multi-threaded tokio runtime in has_spending_transaction_ids test

* fixes call to renamed `future_blocks` test fn

* improves test logs and fixes a disk format deserialization bug

* Replaces a new expr with a previously existing constant, fixes typo
2025-01-27 14:34:48 +00:00
Pili Guerra baf20fa9f9
fix: typos with `address` (#9134)
* Fix typos in RPC docs

* Fixing other typos in zebra-state
2025-01-17 11:24:03 +00:00
Marek 410cac0b24
chore: Fix new clippy lints (#9114)
* Fix lints

* chore: Release

* Remove the "release crates" job (#9119)
2025-01-14 20:50:56 +00:00
Arya 7597cf1cae
change(consensus): Allow transactions spending coinbase outputs to have transparent outputs on Regtest (#9085)
* Updates `coinbase_spend_restriction()` method to always return `OnlyShieldedOutputs` on Regtest.

* Adds a `should_allow_unshielded_coinbase_spends` field to testnet::Parameters

* Adds a test

* Apply suggestions from code review

Co-authored-by: Marek <mail@marek.onl>

* Renames CoinbaseSpendRestriction variants and updates their documentation.

Updates a comment.

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Marek <mail@marek.onl>
2024-12-20 01:29:42 +00:00
dependabot[bot] 568b25e590
build(deps): bump the prod group with 10 updates (#9077)
* build(deps): bump the prod group with 10 updates

Bumps the prod group with 10 updates:

| Package | From | To |
| --- | --- | --- |
| [clap](https://github.com/clap-rs/clap) | `4.5.21` | `4.5.23` |
| [chrono](https://github.com/chronotope/chrono) | `0.4.38` | `0.4.39` |
| [tokio](https://github.com/tokio-rs/tokio) | `1.41.1` | `1.42.0` |
| [tokio-stream](https://github.com/tokio-rs/tokio) | `0.1.16` | `0.1.17` |
| [tower](https://github.com/tower-rs/tower) | `0.4.13` | `0.5.1` |
| [thiserror](https://github.com/dtolnay/thiserror) | `2.0.3` | `2.0.6` |
| [tracing-subscriber](https://github.com/tokio-rs/tracing) | `0.3.18` | `0.3.19` |
| [prost](https://github.com/tokio-rs/prost) | `0.13.3` | `0.13.4` |
| [primitive-types](https://github.com/paritytech/parity-common) | `0.12.2` | `0.13.1` |
| [tokio-util](https://github.com/tokio-rs/tokio) | `0.7.12` | `0.7.13` |


Updates `clap` from 4.5.21 to 4.5.23
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.21...clap_complete-v4.5.23)

Updates `chrono` from 0.4.38 to 0.4.39
- [Release notes](https://github.com/chronotope/chrono/releases)
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md)
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.38...v0.4.39)

Updates `tokio` from 1.41.1 to 1.42.0
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.41.1...tokio-1.42.0)

Updates `tokio-stream` from 0.1.16 to 0.1.17
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-stream-0.1.16...tokio-stream-0.1.17)

Updates `tower` from 0.4.13 to 0.5.1
- [Release notes](https://github.com/tower-rs/tower/releases)
- [Commits](https://github.com/tower-rs/tower/compare/tower-0.4.13...tower-0.5.1)

Updates `thiserror` from 2.0.3 to 2.0.6
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/2.0.3...2.0.6)

Updates `tracing-subscriber` from 0.3.18 to 0.3.19
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-subscriber-0.3.18...tracing-subscriber-0.3.19)

Updates `prost` from 0.13.3 to 0.13.4
- [Release notes](https://github.com/tokio-rs/prost/releases)
- [Changelog](https://github.com/tokio-rs/prost/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/prost/compare/v0.13.3...v0.13.4)

Updates `primitive-types` from 0.12.2 to 0.13.1
- [Commits](https://github.com/paritytech/parity-common/commits/primitive-types-v0.13.1)

Updates `tokio-util` from 0.7.12 to 0.7.13
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-util-0.7.12...tokio-util-0.7.13)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: chrono
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: tokio-stream
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tower
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tracing-subscriber
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: prost
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: primitive-types
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: tokio-util
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
...

Signed-off-by: dependabot[bot] <support@github.com>

* downgrade tower and primitive-types

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2024-12-11 16:29:44 +00:00
dependabot[bot] be50f7ce83
build(deps): bump the prod group across 1 directory with 22 updates (#9065)
* build(deps): bump the prod group across 1 directory with 22 updates

Bumps the prod group with 21 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [clap](https://github.com/clap-rs/clap) | `4.5.20` | `4.5.21` |
| [indexmap](https://github.com/indexmap-rs/indexmap) | `2.6.0` | `2.7.0` |
| [serde](https://github.com/serde-rs/serde) | `1.0.214` | `1.0.215` |
| [tokio](https://github.com/tokio-rs/tokio) | `1.41.0` | `1.41.1` |
| [tower](https://github.com/tower-rs/tower) | `0.4.13` | `0.5.1` |
| [thiserror](https://github.com/dtolnay/thiserror) | `1.0.65` | `2.0.3` |
| [tracing-error](https://github.com/tokio-rs/tracing) | `0.2.0` | `0.2.1` |
| [tracing](https://github.com/tokio-rs/tracing) | `0.1.40` | `0.1.41` |
| [metrics](https://github.com/metrics-rs/metrics) | `0.24.0` | `0.24.1` |
| [thread-priority](https://github.com/iddm/thread-priority) | `1.1.0` | `1.2.0` |
| [sentry](https://github.com/getsentry/sentry-rust) | `0.32.3` | `0.35.0` |
| [inferno](https://github.com/jonhoo/inferno) | `0.11.21` | `0.12.0` |
| [hyper](https://github.com/hyperium/hyper) | `1.5.0` | `1.5.1` |
| [bytes](https://github.com/tokio-rs/bytes) | `1.8.0` | `1.9.0` |
| [indicatif](https://github.com/console-rs/indicatif) | `0.17.8` | `0.17.9` |
| [insta](https://github.com/mitsuhiko/insta) | `1.41.0` | `1.41.1` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.132` | `1.0.133` |
| [tempfile](https://github.com/Stebalien/tempfile) | `3.13.0` | `3.14.0` |
| [primitive-types](https://github.com/paritytech/parity-common) | `0.12.2` | `0.13.1` |
| [elasticsearch](https://github.com/elastic/elasticsearch-rs) | `8.5.0-alpha.1` | `8.16.0-alpha.1` |
| [reqwest](https://github.com/seanmonstar/reqwest) | `0.11.27` | `0.12.9` |



Updates `clap` from 4.5.20 to 4.5.21
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.20...clap_complete-v4.5.21)

Updates `indexmap` from 2.6.0 to 2.7.0
- [Changelog](https://github.com/indexmap-rs/indexmap/blob/master/RELEASES.md)
- [Commits](https://github.com/indexmap-rs/indexmap/compare/2.6.0...2.7.0)

Updates `serde` from 1.0.214 to 1.0.215
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.214...v1.0.215)

Updates `tokio` from 1.41.0 to 1.41.1
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.41.0...tokio-1.41.1)

Updates `tower` from 0.4.13 to 0.5.1
- [Release notes](https://github.com/tower-rs/tower/releases)
- [Commits](https://github.com/tower-rs/tower/compare/tower-0.4.13...tower-0.5.1)

Updates `thiserror` from 1.0.65 to 2.0.3
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.65...2.0.3)

Updates `tracing-error` from 0.2.0 to 0.2.1
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-error-0.2.0...tracing-error-0.2.1)

Updates `tracing` from 0.1.40 to 0.1.41
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-0.1.40...tracing-0.1.41)

Updates `metrics` from 0.24.0 to 0.24.1
- [Changelog](https://github.com/metrics-rs/metrics/blob/main/release.toml)
- [Commits](https://github.com/metrics-rs/metrics/compare/metrics-v0.24.0...metrics-v0.24.1)

Updates `thread-priority` from 1.1.0 to 1.2.0
- [Commits](https://github.com/iddm/thread-priority/commits)

Updates `sentry` from 0.32.3 to 0.35.0
- [Release notes](https://github.com/getsentry/sentry-rust/releases)
- [Changelog](https://github.com/getsentry/sentry-rust/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-rust/compare/0.32.3...0.35.0)

Updates `inferno` from 0.11.21 to 0.12.0
- [Changelog](https://github.com/jonhoo/inferno/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jonhoo/inferno/compare/v0.11.21...v0.12.0)

Updates `hyper` from 1.5.0 to 1.5.1
- [Release notes](https://github.com/hyperium/hyper/releases)
- [Changelog](https://github.com/hyperium/hyper/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/hyper/compare/v1.5.0...v1.5.1)

Updates `bytes` from 1.8.0 to 1.9.0
- [Release notes](https://github.com/tokio-rs/bytes/releases)
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/bytes/compare/v1.8.0...v1.9.0)

Updates `indicatif` from 0.17.8 to 0.17.9
- [Release notes](https://github.com/console-rs/indicatif/releases)
- [Commits](https://github.com/console-rs/indicatif/compare/0.17.8...0.17.9)

Updates `insta` from 1.41.0 to 1.41.1
- [Release notes](https://github.com/mitsuhiko/insta/releases)
- [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/insta/compare/1.41.0...1.41.1)

Updates `serde_json` from 1.0.132 to 1.0.133
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.132...v1.0.133)

Updates `tempfile` from 3.13.0 to 3.14.0
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.13.0...v3.14.0)

Updates `primitive-types` from 0.12.2 to 0.13.1
- [Commits](https://github.com/paritytech/parity-common/commits/primitive-types-v0.13.1)

Updates `elasticsearch` from 8.5.0-alpha.1 to 8.16.0-alpha.1
- [Release notes](https://github.com/elastic/elasticsearch-rs/releases)
- [Commits](https://github.com/elastic/elasticsearch-rs/commits)

Updates `reqwest` from 0.11.27 to 0.12.9
- [Release notes](https://github.com/seanmonstar/reqwest/releases)
- [Changelog](https://github.com/seanmonstar/reqwest/blob/master/CHANGELOG.md)
- [Commits](https://github.com/seanmonstar/reqwest/compare/v0.11.27...v0.12.9)

Updates `syn` from 2.0.85 to 2.0.90
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.85...2.0.90)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: indexmap
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tower
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: prod
- dependency-name: tracing-error
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tracing
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: metrics
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: thread-priority
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: sentry
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: inferno
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: hyper
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: bytes
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: indicatif
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: insta
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: primitive-types
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: elasticsearch
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: reqwest
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
...

Signed-off-by: dependabot[bot] <support@github.com>

* downgrade tower, add denies

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
2024-12-07 04:27:09 +00:00
Arya 179aaa4c4f
Release v2.1.0 (#9072)
* Updates changelog, crate versions, end of support height, and docs.

* Update CHANGELOG.md

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>

---------

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
2024-12-06 18:28:56 +00:00
Conrado Gouvea a3bb1e2e05
change(diagnostics): Updates error messages to include inner error types (#9066)
* add: add consensus validation reason to error messages

* add additional instances
2024-12-04 18:45:10 +00:00
Arya e15184d39b
chore: Fix clippy lints (#9062)
* Allows non-local impls for abscissa derive macros and fixes other clippy lints.

* Fixes formatting
2024-11-29 23:15:20 +00:00
Arya 1e46914131
add(rpc): Adds `getblockheader` RPC method (#8967)
* Adds getblockheader RPC method

* Updates snapshots, adds hash/height/next_block_hash fields to verbose response

* updates getblock snapshot

* updates getblockheader response type to hex-encode fields, adds ToHex impl for sapling::tree::Root, adds snapshot and vector tests for new RPC method, adds snapshots.

* rustfmt

* fixes snapshots, matches zcashd more closely

* fixes vectors test

* updates lwd failure messages (probably doesn't matter, but seems better to handle it now than risk debugging it later)

* fixes getblock_rpc test, fixes/reverses finalsaplingroot field byte-order.

* fixes vector test, addresses remaining differences with zcashd (except the `chainwork` field), updates snapshots, and avoids a possible panic when there's a chain reorg between state queries.

* Adds a comment noting that the `relative_to_network()` method was copied from zcashd

* Apply suggestions from code review

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>

---------

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2024-11-18 12:16:27 +00:00
Marek fef500a728
chore: Release v2.0.1 (#8979)
* Run `cargo update`

* chore: Release

* Update `release-crates-dry-run.sh`

* Update `ESTIMATED_RELEASE_HEIGHT`

* Update `CHANGELOG.md`

* Update `ESTIMATED_RELEASE_HEIGHT`
2024-10-30 11:41:41 -03:00
Marek f45f6f282c
chore: Release v2.0.0 (#8974)
* Update `CHANGELOG.md`

* Update EOS

* Update CHANGELOG.md

Co-authored-by: Arya <aryasolhi@gmail.com>

* Update `release crates` script

* chore: Release

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2024-10-25 22:52:19 +00:00
dependabot[bot] a941b67a57
build(deps): bump the prod group across 1 directory with 18 updates (#8958)
* build(deps): bump the prod group across 1 directory with 18 updates

Bumps the prod group with 15 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [clap](https://github.com/clap-rs/clap) | `4.5.18` | `4.5.20` |
| [indexmap](https://github.com/indexmap-rs/indexmap) | `2.5.0` | `2.6.0` |
| [serde](https://github.com/serde-rs/serde) | `1.0.210` | `1.0.211` |
| [futures](https://github.com/rust-lang/futures-rs) | `0.3.30` | `0.3.31` |
| [tokio](https://github.com/tokio-rs/tokio) | `1.40.0` | `1.41.0` |
| [tower](https://github.com/tower-rs/tower) | `0.4.13` | `0.5.1` |
| [pin-project](https://github.com/taiki-e/pin-project) | `1.1.5` | `1.1.6` |
| [metrics](https://github.com/metrics-rs/metrics) | `0.23.0` | `0.24.0` |
| [hyper](https://github.com/hyperium/hyper) | `1.4.1` | `1.5.0` |
| [bytes](https://github.com/tokio-rs/bytes) | `1.7.2` | `1.8.0` |
| [metrics-exporter-prometheus](https://github.com/metrics-rs/metrics) | `0.15.3` | `0.16.0` |
| [once_cell](https://github.com/matklad/once_cell) | `1.19.0` | `1.20.2` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.128` | `1.0.132` |
| [primitive-types](https://github.com/paritytech/parity-common) | `0.12.2` | `0.13.1` |
| [serde_with](https://github.com/jonasbb/serde_with) | `3.9.0` | `3.11.0` |



Updates `clap` from 4.5.18 to 4.5.20
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.18...clap_complete-v4.5.20)

Updates `indexmap` from 2.5.0 to 2.6.0
- [Changelog](https://github.com/indexmap-rs/indexmap/blob/master/RELEASES.md)
- [Commits](https://github.com/indexmap-rs/indexmap/compare/2.5.0...2.6.0)

Updates `serde` from 1.0.210 to 1.0.211
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.210...v1.0.211)

Updates `futures` from 0.3.30 to 0.3.31
- [Release notes](https://github.com/rust-lang/futures-rs/releases)
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.30...0.3.31)

Updates `tokio` from 1.40.0 to 1.41.0
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.40.0...tokio-1.41.0)

Updates `tower` from 0.4.13 to 0.5.1
- [Release notes](https://github.com/tower-rs/tower/releases)
- [Commits](https://github.com/tower-rs/tower/compare/tower-0.4.13...tower-0.5.1)

Updates `pin-project` from 1.1.5 to 1.1.6
- [Release notes](https://github.com/taiki-e/pin-project/releases)
- [Changelog](https://github.com/taiki-e/pin-project/blob/main/CHANGELOG.md)
- [Commits](https://github.com/taiki-e/pin-project/compare/v1.1.5...v1.1.6)

Updates `metrics` from 0.23.0 to 0.24.0
- [Changelog](https://github.com/metrics-rs/metrics/blob/main/release.toml)
- [Commits](https://github.com/metrics-rs/metrics/compare/metrics-v0.23.0...metrics-v0.24.0)

Updates `hyper` from 1.4.1 to 1.5.0
- [Release notes](https://github.com/hyperium/hyper/releases)
- [Changelog](https://github.com/hyperium/hyper/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/hyper/compare/v1.4.1...v1.5.0)

Updates `bytes` from 1.7.2 to 1.8.0
- [Release notes](https://github.com/tokio-rs/bytes/releases)
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/bytes/compare/v1.7.2...v1.8.0)

Updates `metrics-exporter-prometheus` from 0.15.3 to 0.16.0
- [Changelog](https://github.com/metrics-rs/metrics/blob/main/release.toml)
- [Commits](https://github.com/metrics-rs/metrics/compare/metrics-exporter-prometheus-v0.15.3...metrics-exporter-prometheus-v0.16.0)

Updates `once_cell` from 1.19.0 to 1.20.2
- [Changelog](https://github.com/matklad/once_cell/blob/master/CHANGELOG.md)
- [Commits](https://github.com/matklad/once_cell/compare/v1.19.0...v1.20.2)

Updates `serde_json` from 1.0.128 to 1.0.132
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/1.0.128...1.0.132)

Updates `primitive-types` from 0.12.2 to 0.13.1
- [Commits](https://github.com/paritytech/parity-common/commits/primitive-types-v0.13.1)

Updates `serde_with` from 3.9.0 to 3.11.0
- [Release notes](https://github.com/jonasbb/serde_with/releases)
- [Commits](https://github.com/jonasbb/serde_with/compare/v3.9.0...v3.11.0)

Updates `futures-util` from 0.3.30 to 0.3.31
- [Release notes](https://github.com/rust-lang/futures-rs/releases)
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.30...0.3.31)

Updates `syn` from 2.0.79 to 2.0.82
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.79...2.0.82)

Updates `futures-core` from 0.3.30 to 0.3.31
- [Release notes](https://github.com/rust-lang/futures-rs/releases)
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.30...0.3.31)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: indexmap
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: futures
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: tower
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: pin-project
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: metrics
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: hyper
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: bytes
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: metrics-exporter-prometheus
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: once_cell
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: primitive-types
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: serde_with
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: futures-util
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: futures-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
...

Signed-off-by: dependabot[bot] <support@github.com>

* downgrade `primitive-types` and `tower`

* cargo vet

* update deny.toml

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
Co-authored-by: Marek <mail@marek.onl>
2024-10-25 17:33:11 +00:00
Arya 64a7277c0a
Updates `total_size_on_disk` to be the total sst file size (#8966) 2024-10-25 12:55:41 +00:00
Alfredo Garcia b89492168a
Release Zebra (`v2.0.0-rc.0`) (#8927)
* changelog

* add panic fix to changelog

* Apply suggestions from code review

Co-authored-by: Arya <aryasolhi@gmail.com>

* chore: Release

* update release-crates-dry-run workflow script

* fix command in release script

* change end of support

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2024-10-11 17:21:07 +00:00
Arya 7313d5304b
Responds with a maximum of 160 block headers (#8913) 2024-10-07 20:11:22 +00:00
dependabot[bot] 841047aa37
build(deps): bump the prod group across 1 directory with 24 updates (#8899)
* build(deps): bump the prod group across 1 directory with 24 updates

Bumps the prod group with 24 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [clap](https://github.com/clap-rs/clap) | `4.5.13` | `4.5.18` |
| [indexmap](https://github.com/indexmap-rs/indexmap) | `2.3.0` | `2.5.0` |
| [serde](https://github.com/serde-rs/serde) | `1.0.204` | `1.0.210` |
| [tokio](https://github.com/tokio-rs/tokio) | `1.39.2` | `1.40.0` |
| [tokio-stream](https://github.com/tokio-rs/tokio) | `0.1.15` | `0.1.16` |
| [tower](https://github.com/tower-rs/tower) | `0.4.13` | `0.5.0` |
| [thiserror](https://github.com/dtolnay/thiserror) | `1.0.63` | `1.0.64` |
| [hyper-util](https://github.com/hyperium/hyper-util) | `0.1.6` | `0.1.9` |
| [bytes](https://github.com/tokio-rs/bytes) | `1.7.1` | `1.7.2` |
| [regex](https://github.com/rust-lang/regex) | `1.10.6` | `1.11.0` |
| [insta](https://github.com/mitsuhiko/insta) | `1.39.0` | `1.40.0` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.122` | `1.0.128` |
| [tempfile](https://github.com/Stebalien/tempfile) | `3.11.0` | `3.13.0` |
| [prost](https://github.com/tokio-rs/prost) | `0.13.1` | `0.13.3` |
| [tonic](https://github.com/hyperium/tonic) | `0.12.1` | `0.12.3` |
| [tonic-build](https://github.com/hyperium/tonic) | `0.12.1` | `0.12.3` |
| [primitive-types](https://github.com/paritytech/parity-common) | `0.12.2` | `0.13.1` |
| [uint](https://github.com/paritytech/parity-common) | `0.9.5` | `0.10.0` |
| [tokio-util](https://github.com/tokio-rs/tokio) | `0.7.11` | `0.7.12` |
| [rlimit](https://github.com/Nugine/rlimit) | `0.10.1` | `0.10.2` |
| [tonic-reflection](https://github.com/hyperium/tonic) | `0.12.1` | `0.12.3` |
| [owo-colors](https://github.com/jam1garner/owo-colors) | `4.0.0` | `4.1.0` |
| [syn](https://github.com/dtolnay/syn) | `2.0.72` | `2.0.79` |
| [quote](https://github.com/dtolnay/quote) | `1.0.36` | `1.0.37` |



Updates `clap` from 4.5.13 to 4.5.18
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.13...clap_complete-v4.5.18)

Updates `indexmap` from 2.3.0 to 2.5.0
- [Changelog](https://github.com/indexmap-rs/indexmap/blob/master/RELEASES.md)
- [Commits](https://github.com/indexmap-rs/indexmap/compare/2.3.0...2.5.0)

Updates `serde` from 1.0.204 to 1.0.210
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.204...v1.0.210)

Updates `tokio` from 1.39.2 to 1.40.0
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.39.2...tokio-1.40.0)

Updates `tokio-stream` from 0.1.15 to 0.1.16
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-stream-0.1.15...tokio-stream-0.1.16)

Updates `tower` from 0.4.13 to 0.5.0
- [Release notes](https://github.com/tower-rs/tower/releases)
- [Commits](https://github.com/tower-rs/tower/compare/tower-0.4.13...tower-0.5.0)

Updates `thiserror` from 1.0.63 to 1.0.64
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.63...1.0.64)

Updates `hyper-util` from 0.1.6 to 0.1.9
- [Release notes](https://github.com/hyperium/hyper-util/releases)
- [Changelog](https://github.com/hyperium/hyper-util/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/hyper-util/compare/v0.1.6...v0.1.9)

Updates `bytes` from 1.7.1 to 1.7.2
- [Release notes](https://github.com/tokio-rs/bytes/releases)
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/bytes/compare/v1.7.1...v1.7.2)

Updates `regex` from 1.10.6 to 1.11.0
- [Release notes](https://github.com/rust-lang/regex/releases)
- [Changelog](https://github.com/rust-lang/regex/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/regex/compare/1.10.6...1.11.0)

Updates `insta` from 1.39.0 to 1.40.0
- [Release notes](https://github.com/mitsuhiko/insta/releases)
- [Changelog](https://github.com/mitsuhiko/insta/blob/master/CHANGELOG.md)
- [Commits](https://github.com/mitsuhiko/insta/compare/1.39.0...1.40.0)

Updates `serde_json` from 1.0.122 to 1.0.128
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](https://github.com/serde-rs/json/compare/v1.0.122...1.0.128)

Updates `tempfile` from 3.11.0 to 3.13.0
- [Changelog](https://github.com/Stebalien/tempfile/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Stebalien/tempfile/compare/v3.11.0...v3.13.0)

Updates `prost` from 0.13.1 to 0.13.3
- [Release notes](https://github.com/tokio-rs/prost/releases)
- [Changelog](https://github.com/tokio-rs/prost/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tokio-rs/prost/compare/v0.13.1...v0.13.3)

Updates `tonic` from 0.12.1 to 0.12.3
- [Release notes](https://github.com/hyperium/tonic/releases)
- [Changelog](https://github.com/hyperium/tonic/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/tonic/compare/v0.12.1...v0.12.3)

Updates `tonic-build` from 0.12.1 to 0.12.3
- [Release notes](https://github.com/hyperium/tonic/releases)
- [Changelog](https://github.com/hyperium/tonic/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/tonic/compare/v0.12.1...v0.12.3)

Updates `primitive-types` from 0.12.2 to 0.13.1
- [Commits](https://github.com/paritytech/parity-common/commits/primitive-types-v0.13.1)

Updates `uint` from 0.9.5 to 0.10.0
- [Commits](https://github.com/paritytech/parity-common/compare/uint-v0.9.5...uint-v0.10.0)

Updates `tokio-util` from 0.7.11 to 0.7.12
- [Release notes](https://github.com/tokio-rs/tokio/releases)
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-util-0.7.11...tokio-util-0.7.12)

Updates `rlimit` from 0.10.1 to 0.10.2
- [Changelog](https://github.com/Nugine/rlimit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/Nugine/rlimit/compare/v0.10.1...v0.10.2)

Updates `tonic-reflection` from 0.12.1 to 0.12.3
- [Release notes](https://github.com/hyperium/tonic/releases)
- [Changelog](https://github.com/hyperium/tonic/blob/master/CHANGELOG.md)
- [Commits](https://github.com/hyperium/tonic/compare/v0.12.1...v0.12.3)

Updates `owo-colors` from 4.0.0 to 4.1.0
- [Commits](https://github.com/jam1garner/owo-colors/compare/v4.0.0...v4.1.0)

Updates `syn` from 2.0.72 to 2.0.79
- [Release notes](https://github.com/dtolnay/syn/releases)
- [Commits](https://github.com/dtolnay/syn/compare/2.0.72...2.0.79)

Updates `quote` from 1.0.36 to 1.0.37
- [Release notes](https://github.com/dtolnay/quote/releases)
- [Commits](https://github.com/dtolnay/quote/compare/1.0.36...1.0.37)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: indexmap
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tokio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: tokio-stream
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tower
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: hyper-util
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: bytes
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: regex
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: insta
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: serde_json
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tempfile
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: prost
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tonic
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tonic-build
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: primitive-types
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: uint
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: tokio-util
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: rlimit
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: tonic-reflection
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: owo-colors
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: prod
- dependency-name: syn
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
- dependency-name: quote
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: prod
...

Signed-off-by: dependabot[bot] <support@github.com>

* downgrade `primitive-types` and `tower`

* fix docs and deprecated stuff

* cargo vet updates

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
2024-10-07 20:11:13 +00:00
Arya d6301a6d13
Returns an error instead of panicking when the relevant chain is empty (#8883) 2024-09-23 13:22:14 +00:00
Alfredo Garcia 3f94303bb2
feat(rpc): Add more fields to `getmininginfo` call (#8860)
* add additional fields to getmininginfo

* update openapi spec

* fix zebra-state standalone build

* make sure fields are not present when tip is 0
2024-09-18 11:05:25 +00:00
Alfredo Garcia 1511997829
fix clippy lints (#8855) 2024-09-06 15:24:15 +00:00
Arya 0ef9987e9e
fix(state): Write database format version to disk atomically to avoid a rare panic (#8795)
* Splits `atomic_write_to_tmp_file` out of `zebra_network::Config::update_peer_cache`

* Uses the new `atomic_write_to_tmp_file` fn in `update_peer_cache()`

* Replaces repetitive code for getting the default peer and state cache directories with `default_cache_dir()`

* Converts `atomic_write_to_tmp_file` to a blocking function and adds `spawn_atomic_write_to_tmp_file` for use in async environments.

* Uses `atomic_write_to_tmp_file` to write database versions to disk

* Removes `spawn_atomic_write_to_tmp_file()` and inlines its body at its callsite to avoid adding tokio as a dependency of zebra-chain.

* Apply suggestions from code review

Co-authored-by: Marek <mail@marek.onl>

---------

Co-authored-by: Marek <mail@marek.onl>
2024-08-29 21:09:27 +00:00
Arya 8b1be8846e
chore: Release v1.9.0 (#8734)
* Updates `EOS_PANIC_AFTER` end of support constant from 16 weeks to 14 weeks, so the Mainnet panic height is just before the second halving and end of the current dev fund.

* version bumps

* Updates CHANGELOG.md

* Updates changelog

* updates end of support time to 10 weeks

* Adds a note to the changelog about recovering after finalizing blocks from a fork

* Add new changes on main to CHANGELOG.md

* Updates ESTIMATED_RELEASE_HEIGHT

* Apply suggestions from code review

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>

* Update zebrad/src/components/sync/end_of_support.rs

---------

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
2024-08-28 01:07:37 +00:00
Arya 83c6725e84
change(rpc): Add value pool balances to `getblockchaininfo` RPC method response (#8769)
* Moves `Zec` type out from behind feature flag

* Adds 'ValuePoolBalance` type

* Updates getblockchaininfo return type to a BoxFuture

* minor refactor

* Adds service request

* Adds real value balances to getblockchaininfo RPC response

* Updates snapshots and the suggested command for updating snapshots

* Uses generic error constructors wherever possible and removes outdated TODOs

* Updates prop tests to handle mock service requests
2024-08-16 19:54:44 +00:00
Marek 88f9bffec9
change(state): Support in-place disk format upgrades for major database version bumps (#8748)
* Reuse existing db after a major upgrade

* Don't delete dbs that can be reused

* Apply suggestions from code review

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>

* Fix formatting

* Create only the parent dir for the db

---------

Co-authored-by: Pili Guerra <mpguerra@users.noreply.github.com>
Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
2024-08-09 15:39:38 +00:00