Commit Graph

5604 Commits

Author SHA1 Message Date
Gustavo Valverde dd31d8f936
fix(ci): prevent duplicate draft releases in release-drafter (#9252)
Release Drafter v6.1.0 has a regression that creates multiple duplicate draft
releases instead of updating existing ones. This change:

- Disables pre-release flag for draft releases
- Excludes pre-releases from being included in drafts
- Explicitly defines PR event types in workflow

See: release-drafter/release-drafter#1425
2025-02-13 14:29:39 +00:00
Marek 4132c0e4e9
ci: Refactor Dockerfile & entrypoint (#8923)
* Refactor formatting & docs

* Refactor the `runtime` stage in Dockerfile

* Remove unused code from `entrypoint.sh`

* Simplify `entrypoint.sh` setup

* Revise docs & formatting

* Adjust default values for env vars

* Bump Rust v from 1.79 to 1.81 in Dockerfile

* Refactor `entrypoint.sh`

* Refactor `Dockerfile`

* Add TODOs for monitoring stage to Dockerfile

* Refactor `Dockerfile`

* Add TODOs for monitoring stage to Dockerfile

* Fix a typo

* Allow running `zebrad` in test mode

* Allow custom config for `zebrad` in test mode

* Remove `curl` from the `runtime` Docker image

* Remove redundant echos

* Remove a malfunctioning CD test

The test was using a custom config file set in `test_variables`.
However, the file was not included in the Docker image, and the
entrypoint script created a new, default one under the original file's
path. Zebra then loaded this new file, and the test passed because the
pattern in `grep_patterns` matched Zebra's output containing the
original path, even though the config file was different.

* Remove a redundant CI test

* Remove all packages from the `runtime` stage

* Docs cosmetics

* Clarify docs

* Bump Rust version

* Remove a security note

* Explicitly specify network cache dir

* Explicitly specify cookie dir

* Set UID, GID and home dir for the `zebra` user

* Set a working dir for the `zebra` user

* Don't remove `FEATURES`

* Try re-introducing the `testnet-conf` check

* `ZEBRA_CACHED_STATE_DIR` -> `ZEBRA_CACHE_DIR`

This dir doesn't hold only the state cache anymore, but also the cache
for network peers, and the cookie file.

* Refactor the dir structure

* Check that `ZEBRA_CONF_PATH` exists in the image

* Improve the check for `ZEBRA_CONF_PATH`

* Use different flag in the `ZEBRA_CONF_PATH` check

* Simplify the `ZEBRA_CONF_PATH` check

* Fix spelling

* Comment out the `testnet-conf` CI check

* Add commented out `test-zebra-conf-path` CI check

* Reintroduce `testnet-conf` CI check

* Update the `custom-conf` CI check

* Add `v2.1.0.toml` conf file

* Refine the `v2.1.0.toml` conf file

* Remove `ZEBRA_LISTEN_ADDR` from the entrypoint

* Remove `ZEBRA_CHECKPOINT_SYNC` from the entrypoint

* Stop supporting configuration of the RPC port

* Add default conf file

* Prepare Zebra's config in the entrypoint script

* Remove unneeded packages from the `deps` target

* Docs cosmetics

* Use only `$FEATURES` in entrypoint

* Simplify handling of Rust features

* Add a TODO

* Add CI debug statements

* Don't require test vars in conf test

* Reintroduce `protoc`

* Remove `-e NETWORK`

* Remove `ZEBRA_FORCE_USE_COLOR=1`

* Remove `ZEBRA_CACHE_DIR=/var/cache/zebrad-cache`

* Reintroduce the "custom-conf" test

* Set up test env the same way as prod

* Don't repeatedly check for conf file in entrypoint

* Simplify file ownership in Dockerfile

* Fix checkpoint tests in entrypoint

* Fix Zebra config CI tests

* `LIGHTWALLETD_DATA_DIR` -> `LWD_CACHE_DIR`

* Add config for `LWD_CACHE_DIR` to Dockerfile

* `/var/cache/zebrad-cache` -> `~/.cache/zebra`

* `var/cache/lwd-cache` -> `/home/zebra/.cache/lwd`

* Remove `LOG_COLOR=false` from GCP setup

* Don't specify `LWD_CACHE_DIR` in CI tests

* Don't switch to `zebra` user for tests in Docker

* Join "experimental" and "all" tests in CI

* Remove outdated docs

* Refactor tests with fake activation heights

* Fix tests for scanner
2025-02-13 09:15:32 +00:00
Jack Grigg f8860a67f4
zebra-rpc: Correctly map JSON-RPC to/from 2.0 (#9216)
* zebra-rpc: Correctly map JSON-RPC to/from 2.0

The existing code was only handling the `lightwalletd` client format
which includes a `"jsonrpc": "1.0"` entry, and it was returning
responses as JSON-RPC 2.0 regardless of what the client expected.

* Update zebra-rpc/src/server/http_request_compatibility.rs

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2025-02-12 23:47:50 +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
Arya ece9a8ee59
Adds unused and optional `_allow_high_fees` param on `sendrawtransaction` RPC (#9242) 2025-02-12 21:16:33 +00:00
Arya 35e400beaf
correctly serialize testnet params into config (#9224) 2025-02-12 17:34:19 +00:00
Marek f0ad471015
Fix doc ref (#9236) 2025-02-12 15:20:45 +00:00
Metalcape 3a0269d625
feat(rpc); Add `blockcommitments` field to `getblock` output (#9217)
* Add blockcommitments field to getblock output

* Parse commitment_bytes from block header

* Update tests

* Rustfmt

---------

Co-authored-by: Marek <mail@marek.onl>
2025-02-11 16:25:20 +00:00
dependabot[bot] 7445d81295
build(deps): bump the devops group with 5 updates (#9208)
Bumps the devops group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [google-github-actions/auth](https://github.com/google-github-actions/auth) | `2.1.7` | `2.1.8` |
| [google-github-actions/setup-gcloud](https://github.com/google-github-actions/setup-gcloud) | `2.1.2` | `2.1.4` |
| [tj-actions/changed-files](https://github.com/tj-actions/changed-files) | `45.0.6` | `45.0.7` |
| [jontze/action-mdbook](https://github.com/jontze/action-mdbook) | `3.0.1` | `4.0.0` |
| [release-drafter/release-drafter](https://github.com/release-drafter/release-drafter) | `6.0.0` | `6.1.0` |


Updates `google-github-actions/auth` from 2.1.7 to 2.1.8
- [Release notes](https://github.com/google-github-actions/auth/releases)
- [Changelog](https://github.com/google-github-actions/auth/blob/main/CHANGELOG.md)
- [Commits](https://github.com/google-github-actions/auth/compare/v2.1.7...v2.1.8)

Updates `google-github-actions/setup-gcloud` from 2.1.2 to 2.1.4
- [Release notes](https://github.com/google-github-actions/setup-gcloud/releases)
- [Changelog](https://github.com/google-github-actions/setup-gcloud/blob/main/CHANGELOG.md)
- [Commits](https://github.com/google-github-actions/setup-gcloud/compare/v2.1.2...v2.1.4)

Updates `tj-actions/changed-files` from 45.0.6 to 45.0.7
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v45.0.6...v45.0.7)

Updates `jontze/action-mdbook` from 3.0.1 to 4.0.0
- [Release notes](https://github.com/jontze/action-mdbook/releases)
- [Changelog](https://github.com/jontze/action-mdbook/blob/master/CHANGELOG.md)
- [Commits](https://github.com/jontze/action-mdbook/compare/v3.0.1...v4.0.0)

Updates `release-drafter/release-drafter` from 6.0.0 to 6.1.0
- [Release notes](https://github.com/release-drafter/release-drafter/releases)
- [Commits](https://github.com/release-drafter/release-drafter/compare/v6.0.0...v6.1.0)

---
updated-dependencies:
- dependency-name: google-github-actions/auth
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: devops
- dependency-name: google-github-actions/setup-gcloud
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: devops
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: devops
- dependency-name: jontze/action-mdbook
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: devops
- dependency-name: release-drafter/release-drafter
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: devops
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-11 13:27:13 +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
Arya 97460cfcca
fix(chain): Use network kind of `TestnetKind` in transparent addresses on Regtest (#9175)
* Use `TestnetKind` as transparent addr network kinds on Regtest

* Updates outdated error message

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2025-02-07 15:00:51 +00:00
cryptoraph e0c3a55998
Fix Typos in Continuous Integration and Release Process Documentation (#9209)
* typo continuous-integration.md

* typorelease-process.md
2025-02-06 02:04:18 +00:00
Gustavo Valverde bbb8e3d650
fix(ci): pin release-drafter to v6.0.0 to prevent duplicate drafts (#9207)
Release Drafter v6.1.0 introduced a regression that causes it to create
multiple duplicate draft releases instead of updating existing ones. This
was causing ~160 duplicate draft releases to be created for Zebra 2.2.0.

Pin to v6.0.0 which correctly finds and updates existing draft releases.
This is a known issue tracked in release-drafter/release-drafter#1425.
2025-02-05 14:06:36 +00:00
Alfredo Garcia 343656cb3c
fix(mining): Advertise mined blocks (#9176)
* add a channel for submit_block notifications to gossip task

* fix tests and gossip logic

* remove the network discriminant and add a test

* clippy suggestions

* fix unused variable

* attempt to fix the conditional compilation issues

* fix default

* Suggestions for "fix(mining): Advertise mined blocks" (#9183)

* refactor error conversions in GetBlockTemplateRpcImpl and rewords documentation

* Replaces polling mined block receiver with a select

* Skip checking that Zebra is likely synced to the network tip before returning block templates on Testnet.

* fixes a clippy lint and a concurrency bug

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2025-02-05 02:24:37 +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
Gustavo Valverde 6f24c9cc1e
docs: add CI/CD architecture documentation (#9202)
## Motivation

Our CI/CD infrastructure is complex and was lacking proper documentation, making it challenging for newcomers and contributors to understand the system. This PR adds comprehensive documentation to:

- Make our CI/CD architecture more accessible to new contributors
- Document workflow relationships and dependencies
- Explain infrastructure components and their roles
- Provide best practices and known limitations

Closes #9112

### Specifications & References

- [GitHub Actions Path Filtering Limitation](https://github.com/orgs/community/discussions/44490)
- [GitHub Actions Variables in Forks Limitation](https://github.com/orgs/community/discussions/44322)
- [Rust Caching Limitations](https://github.com/ZcashFoundation/zebra/issues/6169#issuecomment-1712776391)

## Solution

1. Added detailed CI/CD documentation in `.github/workflows/README.md`:
   - Table of contents for easy navigation
   - System overview and core infrastructure details
   - Mermaid diagram showing workflow relationships and parallel execution
   - Detailed sections on:
     - Core infrastructure components
     - Workflow organization
     - Test execution strategy
     - Infrastructure details
     - Best practices
     - Known issues

2. Added CI/CD section to main `README.md`:
   - Brief overview of CI/CD capabilities
   - Strategic placement between Getting Started and Documentation sections
   - Direct link to detailed documentation

3. Documentation improvements:
   - Clear explanation of patch workflows and their rationale
   - Detailed infrastructure dependencies and requirements
   - Comprehensive coverage of test execution patterns
   - External contributor considerations and limitations
2025-02-04 11:51:47 +00:00
Marek a5a1cdfebe
chore: Minor cleanups (#9198)
* Remove unnecessary clone

* Fix test in zebra-script

* Document that RPC server addr must be set

* Change the log level of missing port msg to info

Having the RPC port not specified is part of Zebra's normal operation,
and is the default config.

* Fix links in docs for tracing

* Update zebrad/src/commands/start.rs

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

---------

Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
2025-02-04 03:29:49 +00:00
Alfredo Garcia d26b0c188f
run `cargo autoinherit` (#9041)
Co-authored-by: zancas <zancas@zingolabs.org>
2025-02-04 03:29:46 +00:00
Marek fcf5565b2e
fix(consensus): Verify consensus branch ID in SIGHASH precomputation (#9139)
* Add `has_foo` fns to `Transaction`

* Add V5 SIGHASH test based on consensus branch ID

* Guard `skip_checks` by test features

* Enable `proptest-impl` for `zebrad` in tests

* Simplify conditional compilation

* Enable `proptest-impl` in scanner's dev deps

* Fix conditional compilation in `zebra-chain` tests

* Add error types for `zebra-chain`

* `impl TryFrom<u32> for NetworkUpgrade`

* `impl TryFrom<ConsensusBranchId> for BranchId`

* Rm `fn from_branch_id() -> Option<NetworkUpgrade>`

* Check consensus branch ID in SIGHASH computation

* Simplify tx deserialization

* Rm `impl TryFrom<&Trans> for zp_tx::Trans`

* Update tests

* Update tests

* Add docs for `to_librustzcash`

* Update docs for `PrecomputedTxData::new`

* Document the SIGHASH consensus rules we missed

* Update docs for script validation

* Fix script verification tests

In a previous commit, I erroneously edited the tests so that they'd
expect `Ok`s instead of `Err`s. This commit fixes that.

* Fix spelling

* Impl `NetworkUpgrade::iter()`

* Refactor `Network_upgrade::next_upgrade`

* Impl `NetworkUpgrade::previous_upgrade`

* Impl `Transaction::hash_shielded_data`

* Don't make  `NETWORK_UPGRADES_IN_ORDER` `pub`

* Test `Transaction::sighash` with cons branch ids

* Extend the `consensus_branch_id` test

* Derive `Debug` for `SigHasher`

* Remove the beautiful test for tx verifier

* Remove the "skip check" functionality

* Revert the compilation adjustments

* Apply suggestions from code review

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

* Fix docs

* Clarify panic conditions in docs

* remove duplicated verification

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

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
Co-authored-by: Alfredo Garcia <oxarbitrage@gmail.com>
2025-02-01 12:49:59 +00:00
Alfredo Garcia 09538d417c
release(maintenance): Run cargo update for v2.2.0 (#9188)
* cargo update foir v2.2.0

* revert zcash_protocol to 0.4.0 (which requires zcash_address 0.6.0)

---------

Co-authored-by: Conrado Gouvea <conrado@zfnd.org>
2025-01-31 23:08:21 +00:00
Fallengirl bb7ef30d96
docs: corrections (#9189)
* Update sub-test-zebra-config.yml

* Update sub-ci-unit-tests-docker.yml
2025-01-31 18:15:40 +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
Alfredo Garcia 8bec4f3766
chore(checkpoints): Update the mainnet and testnet checkpoints for v2.2.0 (#9180)
* add checkpoints for 2.2.0 release

* update automatic checkpoint readme
2025-01-31 02:03:17 +00:00
dependabot[bot] 433633e700
build(deps): bump the devops group with 2 updates (#9174)
Bumps the devops group with 2 updates: [codecov/codecov-action](https://github.com/codecov/codecov-action) and [docker/build-push-action](https://github.com/docker/build-push-action).


Updates `codecov/codecov-action` from 5.2.0 to 5.3.1
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v5.2.0...v5.3.1)

Updates `docker/build-push-action` from 6.12.0 to 6.13.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.12.0...v6.13.0)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: devops
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: devops
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-30 13:26:51 +00:00
dependabot[bot] ba50a6c1d1
build(deps): bump the ecc group across 1 directory with 3 updates (#9092)
Bumps the ecc group with 3 updates in the / directory: [incrementalmerkletree](https://github.com/zcash/incrementalmerkletree), [zcash_encoding](https://github.com/zcash/librustzcash) and [zcash_note_encryption](https://github.com/zcash/librustzcash).


Updates `incrementalmerkletree` from 0.7.0 to 0.7.1
- [Commits](https://github.com/zcash/incrementalmerkletree/compare/incrementalmerkletree-v0.7.0...incrementalmerkletree-v0.7.1)

Updates `zcash_encoding` from 0.2.1 to 0.2.2
- [Release notes](https://github.com/zcash/librustzcash/releases)
- [Commits](https://github.com/zcash/librustzcash/compare/zcash_encoding-0.2.1...zcash_encoding-0.2.2)

Updates `zcash_note_encryption` from 0.4.0 to 0.4.1
- [Release notes](https://github.com/zcash/librustzcash/releases)
- [Commits](https://github.com/zcash/librustzcash/compare/zcash_note_encryption-0.4.0...zcash_protocol-0.4.1)

---
updated-dependencies:
- dependency-name: incrementalmerkletree
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ecc
- dependency-name: zcash_encoding
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ecc
- dependency-name: zcash_note_encryption
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: ecc
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-30 13:26:46 +00:00
futreall 451ad3549b
fix spelling issues (#9177)
* Update chore-delete-gcp-resources.yml

* Update data-flow-2020-07-22.md
2025-01-30 08:28:22 +00:00
Pili Guerra 0dcc4205ee
Run dependabot monthly (#9171)
This is the next possible interval after weekly
2025-01-27 15:05:48 +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
dependabot[bot] 79fbc03ece
build(deps): bump codecov/codecov-action in the devops group (#9155)
Bumps the devops group with 1 update: [codecov/codecov-action](https://github.com/codecov/codecov-action).


Updates `codecov/codecov-action` from 5.1.2 to 5.2.0
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v5.1.2...v5.2.0)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: devops
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-24 11:44:39 +00:00
Elijah Hampton 8b84017807
Respond to getblockchaininfo with genesis block when empty state (#9138)
* Refactors getblockchaininfo to return gensis block if tip pool request fails. Adds test in prop.rs

* clippy, check and fmt

* Removes unused imports. Refactors code for correctness in genesis bytes reference and tokio pause() call

---------

Co-authored-by: Elijah Hampton <elijahhampton@pop-os.lan>
2025-01-23 09:54:05 +00:00
Dimitris Apostolou 05ab250129
fix: fix typos (#9140) 2025-01-22 10:58:29 +00:00
root c30187a8f8
fix typos (#9153) 2025-01-22 10:58:23 +00:00
Dimitris Apostolou c537bae352
fix: fix RUSTSEC-2024-0402 (#9141) 2025-01-22 10:58:19 +00:00
Alfredo Garcia c103c2d948
fix(rpc): Use `jsonrpsee` in `zebra-node-services` (#9151)
* replace jsonrpc-core with jsonrpsee-types in zebra-node-services

* remove non needed feature from dependency

* remove jsonrpc-core as a dev dependency in zebra-node-services

* add jsonrpsee-types as a dev dependency
2025-01-20 21:33:47 +00:00
Gustavo Valverde c7d8d71269
refactor(workflows): avoid using cached states for release instances (#9137)
- Renamed `no_cached_disk` input to `need_cached_disk` in `cd-deploy-nodes-gcp.yml` to clarify its purpose.
- Adjusted conditional logic for cached disk usage based on event types (release vs. non-release) in `cd-deploy-nodes-gcp.yml`.
- Removed the environment strategy matrix from `sub-deploy-integration-tests-gcp.yml` to simplify the workflow configuration.
- Enhanced comments for better clarity on caching and environment handling across workflows.
2025-01-20 13:28:38 +00:00
root 94e0d81a71
chore: delete repetitive words (#9131)
* repeat words

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

Co-authored-by: Pili Guerra <1311133+mpguerra@users.noreply.github.com>

---------

Co-authored-by: Pili Guerra <1311133+mpguerra@users.noreply.github.com>
2025-01-17 13:19:45 +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
Marius Kjærstad 926993aa85
Update copyright year to 2025 (#9127) 2025-01-16 09:06:19 +00:00
Gustavo Valverde 1976a56970
feat(actions): use GitHub `environments` for infra deployments (#9003)
* feat(actions): use GitHub `environments` for infra deployments

* chore(workflows): enhance environment handling in CI/CD configurations

- Added dynamic environment assignment in `cd-deploy-nodes-gcp.yml` based on event type (release or dev).
- Updated `sub-build-docker-image.yml` to utilize the `inputs.environment` for environment configuration.
- Introduced a strategy matrix for environment selection in `sub-deploy-integration-tests-gcp.yml`, allowing for both dev and prod environments based on the branch.
- Ensured `sub-find-cached-disks.yml` uses the `inputs.environment` for consistency across workflows.

* fix(workflows): streamline environment input handling in CI configurations

- Removed the required environment input from `sub-ci-integration-tests-gcp.yml`.
- Updated comments in `sub-deploy-integration-tests-gcp.yml` to clarify the strategy for creating images in dev and prod environments based on the main branch.

* test: just set the environmet when diff to dev

* refactor(workflows): unify environment handling across CI configurations

- Removed the optional environment input from multiple workflow files, including `manual-zcashd-deploy.yml`, `sub-build-docker-image.yml`, and `sub-deploy-integration-tests-gcp.yml`.
- Updated environment assignment logic to consistently use 'prod' for release events across `cd-deploy-nodes-gcp.yml`, `sub-build-docker-image.yml`, `sub-find-cached-disks.yml`, and `sub-deploy-integration-tests-gcp.yml`.
- Enhanced clarity in comments regarding environment strategies in `sub-deploy-integration-tests-gcp.yml`.

* fix(workflows): update environment assignment logic for CI configurations

- Changed environment assignment in `cd-deploy-nodes-gcp.yml`, `sub-build-docker-image.yml`, and `sub-find-cached-disks.yml` to use 'dev' as a fallback when the event is not a release, to avoid a `false` fallback
2025-01-16 01:37:28 +00:00
Marek 522d955a2a
change(consensus): Optimize checks for coinbase transactions (#9126)
* Avoid tx conversion in coinbase tx

* Update a section number

* Refactor the test for decrypting coinbase outputs
2025-01-15 20:22:31 +00:00
idky137 43869bfcb0
Add public getter / setter func to Zebra-RPC::methods.rs (#9113)
* added getters and setter for GetInfo and GetBlockchainInfo structs

* updated BlockHeader

* added fetcher for address strings

* publicised address balance

* added getter and setter for SentTransactionHash

* finished adding pub func

* added pub constructor for addressstrings

* added debug to legacycode

* review changes
2025-01-15 20:22:27 +00:00
dependabot[bot] 91bfb2df3e
build(deps): bump docker/build-push-action in the devops group (#9125)
Bumps the devops group with 1 update: [docker/build-push-action](https://github.com/docker/build-push-action).


Updates `docker/build-push-action` from 6.11.0 to 6.12.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.11.0...v6.12.0)

---
updated-dependencies:
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: devops
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-15 17:58:39 +00:00
Marek 050cdc39e8
Remove the "release crates" workflow (#9120)
## Motivation

Fix https://github.com/ZcashFoundation/zebra/actions/runs/12751834865/job/35539829251?pr=9114.

## Solution

- Remove the workflow and its associated bash script.

### Rationale

> It didn't catch publishing issues in the past, and it skips a bunch of things anyway.

> ..., it wasn't doing much with `--no-verify` anyway.

> It was working fine with the previous version of Rust. I think the latest stable version broke `--no-verify`, because it wasn't pulling dependencies from [crates.io](http://crates.io/) before (which is how we ended up with git sources on main when we were trying to publish Zebra), but now it does even if `--no-verify` is passed in explicitly.
2025-01-15 12:02:08 +00:00
Marek 82c23f377c
add(test): Add serialized NU5 blocks to test vectors (#9098)
* Add serialized Mainnet blocks for tests

* Add Sapling anchors

* Add Mainnet Orchard anchors

* Remove wrong Testnet NU5 blocks

* Add Testnet blocks with V5 txs to test vectors

* Move the Sapling treestate

* Add Sapling & Orchard anchors

* Remove unneeded test for fake V5 txs

We don't need this test anymore since we have real V5 txs now.

* Add `has_transparent_inputs` to `Transaction`

* Fix `v5_with_sapling_spends` test

* Fix `binding_signatures` test

* Refactor block test vectors

* Use real V5 txs instead of fake ones

* Fix `v5_transaction_is_rejected_before_nu5` test

* Fix `v5_tx_is_accepted_after_nu5_activation` test

* Fix `v5_tx_with_no_outputs_fails_validation` test

* Move `v5_tx_with_no_outputs_fails_validation` test

* Fix `v5_tx_with_no_inputs_fails_verification` test

* Fix `v5_tx_with_orchard_actions_has_inputs..` test

* Fix `v5_coinbase_tx_without_spends_flag_passes`

* Simplify `orchard` imports

* Fix `v5_tx_with_orchard_actions_has_flags` test

* Fix `v5_coinbase_tx_with_enable_spends_fails`

* Fix `v5_tx_with_duplicate_orchard_action` test

* Fix `coinbase_outputs_are_decryptable_for_v5`

* Fix `shielded_outputs_are_not_decryptable_for_v5`

* Use `Network::iter` instead of Mainnet

* Rename basic V5 tx test

* Apply suggestions from code review

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

* Return an `Ok` in tx is not coinbase

* formatting

* Update zebra-consensus/src/transaction/check.rs

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

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
2025-01-15 11:31:45 +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
Gustavo Valverde dad75437e3
fix(workflows): update patch jobs conditions and naming (#9117)
- Modified job conditions in multiple workflow files to ensure they only run for pull requests from external repositories.
- Updated job names for clarity and consistency across `cd-deploy-nodes-gcp`, `ci-tests`, and `docs-deploy-firebase` workflows, and to sync them with our rulesets
- Enhanced comments to emphasize the importance of synchronizing job names across related workflow files.

Fixes #9108
2025-01-14 14:27:52 +00:00
dependabot[bot] 79911641b9
build(deps): bump the devops group across 1 directory with 5 updates (#9109)
Bumps the devops group with 5 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [codecov/codecov-action](https://github.com/codecov/codecov-action) | `5.1.1` | `5.1.2` |
| [tj-actions/changed-files](https://github.com/tj-actions/changed-files) | `45.0.5` | `45.0.6` |
| [Swatinem/rust-cache](https://github.com/swatinem/rust-cache) | `2.7.5` | `2.7.7` |
| [baptiste0928/cargo-install](https://github.com/baptiste0928/cargo-install) | `3.1.1` | `3.3.0` |
| [docker/build-push-action](https://github.com/docker/build-push-action) | `6.10.0` | `6.11.0` |



Updates `codecov/codecov-action` from 5.1.1 to 5.1.2
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v5.1.1...v5.1.2)

Updates `tj-actions/changed-files` from 45.0.5 to 45.0.6
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v45.0.5...v45.0.6)

Updates `Swatinem/rust-cache` from 2.7.5 to 2.7.7
- [Release notes](https://github.com/swatinem/rust-cache/releases)
- [Changelog](https://github.com/Swatinem/rust-cache/blob/master/CHANGELOG.md)
- [Commits](https://github.com/swatinem/rust-cache/compare/v2.7.5...v2.7.7)

Updates `baptiste0928/cargo-install` from 3.1.1 to 3.3.0
- [Release notes](https://github.com/baptiste0928/cargo-install/releases)
- [Changelog](https://github.com/baptiste0928/cargo-install/blob/main/CHANGELOG.md)
- [Commits](https://github.com/baptiste0928/cargo-install/compare/v3.1.1...v3.3.0)

Updates `docker/build-push-action` from 6.10.0 to 6.11.0
- [Release notes](https://github.com/docker/build-push-action/releases)
- [Commits](https://github.com/docker/build-push-action/compare/v6.10.0...v6.11.0)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: devops
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: devops
- dependency-name: Swatinem/rust-cache
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: devops
- dependency-name: baptiste0928/cargo-install
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: devops
- dependency-name: docker/build-push-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: devops
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-14 07:29:37 +00:00
Alfredo Garcia 0fe47bbbbb
feature(rpc): Migrate from deprecated `jsonrpc_*` crates to `jsonrpsee` (#9059)
* update methods

* update get block template rpc methods

* update other getblocktemplate files

* upgrade server and middlewares

* upgrade zebrad start command

* remove unused imports

* add a todo for unauthenticated rpc error

* upgrade tests, temporally comment out some of them

* fix the rpc tx queue

* update denies

* fix  links

* clippy

* fir more doc links

* fix queue tests

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

* add suggestions from code review

* fix snapshots

* try `block_on` instead of `now_or_never` in the http middleware

* move import

* Apply suggestions from code review

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

* fix bounds

---------

Co-authored-by: Arya <aryasolhi@gmail.com>
2024-12-21 02:29:16 +00:00
dependabot[bot] 1ecf6551bc
build(deps): bump the devops group across 1 directory with 4 updates (#9091)
Bumps the devops group with 4 updates in the / directory: [codecov/codecov-action](https://github.com/codecov/codecov-action), [tj-actions/changed-files](https://github.com/tj-actions/changed-files), [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) and [docker/scout-action](https://github.com/docker/scout-action).


Updates `codecov/codecov-action` from 5.0.7 to 5.1.1
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v5.0.7...v5.1.1)

Updates `tj-actions/changed-files` from 45.0.4 to 45.0.5
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/v45.0.4...v45.0.5)

Updates `docker/setup-buildx-action` from 3.7.1 to 3.8.0
- [Release notes](https://github.com/docker/setup-buildx-action/releases)
- [Commits](https://github.com/docker/setup-buildx-action/compare/v3.7.1...v3.8.0)

Updates `docker/scout-action` from 1.15.1 to 1.16.1
- [Release notes](https://github.com/docker/scout-action/releases)
- [Commits](https://github.com/docker/scout-action/compare/v1.15.1...v1.16.1)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: devops
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: devops
- dependency-name: docker/setup-buildx-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: devops
- dependency-name: docker/scout-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: devops
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-20 03:55:11 +00:00