Compare commits

..

No commits in common. "master" and "v0.3.0" have entirely different histories.

7 changed files with 23 additions and 28 deletions

View File

@ -2,9 +2,6 @@ version: 2
updates: updates:
- package-ecosystem: cargo - package-ecosystem: cargo
directory: '/' directory: '/'
# Update only the lockfile. We shouldn't update Cargo.toml unless it's for
# a security issue, or if we need a new feature of the dependency.
versioning-strategy: lockfile-only
schedule: schedule:
interval: daily interval: daily
timezone: America/New_York timezone: America/New_York

View File

@ -18,7 +18,7 @@ jobs:
with: with:
command: check command: check
# Test that "cargo package" works. This makes sure it's publishable, # Test that "cargo package" works. This make sure it's publishable,
# since we had issues where "cargo build" worked but "package" didn't. # since we had issues where "cargo build" worked but "package" didn't.
package: package:
name: Package name: Package
@ -76,6 +76,7 @@ jobs:
strategy: strategy:
fail-fast: false fail-fast: false
matrix: matrix:
# "windows-latest" was removed; see https://github.com/ZcashFoundation/zcash_script/issues/38
os: [ubuntu-latest, macOS-latest, windows-latest] os: [ubuntu-latest, macOS-latest, windows-latest]
steps: steps:
- uses: actions/checkout@v4 - uses: actions/checkout@v4

View File

@ -8,12 +8,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] - ReleaseDate ## [Unreleased] - ReleaseDate
## [0.3.1](https://github.com/ZcashFoundation/zcash_script/compare/v0.3.0...v0.3.1) - 2025-05-17
### Other
- Remove extra `&` from `SighashCalculator` ([#216](https://github.com/ZcashFoundation/zcash_script/pull/216))
## [0.3.0](https://github.com/ZcashFoundation/zcash_script/compare/v0.2.0...v0.3.0) - 2025-05-13 ## [0.3.0](https://github.com/ZcashFoundation/zcash_script/compare/v0.2.0...v0.3.0) - 2025-05-13
- Another major API update. The previous C++ functions were moved to the `cxx` - Another major API update. The previous C++ functions were moved to the `cxx`

2
Cargo.lock generated
View File

@ -776,7 +776,7 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
[[package]] [[package]]
name = "zcash_script" name = "zcash_script"
version = "0.3.1" version = "0.3.0"
dependencies = [ dependencies = [
"bindgen", "bindgen",
"bitflags", "bitflags",

View File

@ -1,6 +1,6 @@
[package] [package]
name = "zcash_script" name = "zcash_script"
version = "0.3.1" version = "0.3.0"
authors = [ authors = [
"Electric Coin Company <info@electriccoin.co>", "Electric Coin Company <info@electriccoin.co>",
"Greg Pfeil <greg@technomadic.org>", "Greg Pfeil <greg@technomadic.org>",
@ -73,21 +73,25 @@ ripemd = "0.1"
secp256k1 = "0.30" secp256k1 = "0.30"
sha-1 = "0.10" sha-1 = "0.10"
sha2 = "0.10" sha2 = "0.10"
tracing = "0.1" tracing = "0.1.41"
[build-dependencies] [build-dependencies]
# We want zcash-script to be compatible with whatever version of `bindgen` that # The `bindgen` dependency should automatically upgrade to match the version used by zebra-state's `rocksdb` dependency in:
# is being indirectly used by Zebra via the `rocksdb` dependency. To avoid # https://github.com/ZcashFoundation/zebra/blob/main/zebra-state/Cargo.toml
# having to update zcash-script every time Zebra updates its `rocksdb` #
# dependency, we allow any version of `bindgen`, even major version bumps, by # Treat minor versions with a zero major version as compatible (cargo doesn't by default).
# using the `>=` operator. There is some chance that this breaks the build if a bindgen = ">= 0.64.0"
# breaking API change affects us, but we can always fix it then.
bindgen = ">= 0.69.5" # These dependencies are shared with a lot of other Zebra dependencies,
# Same reasoning as above # so they are configured to automatically upgrade to match Zebra.
cc = { version = ">= 1.2.11", features = ["parallel"] } # But we try to use the latest versions here, to catch any bugs in `zcash_script`'s CI.
cc = { version = "1.2.11", features = ["parallel"] }
[dev-dependencies] [dev-dependencies]
# Same reasoning as above # These dependencies are shared with a lot of other Zebra dependencies.
# (See above.)
#
# Treat minor versions with a zero major version as compatible (cargo doesn't by default).
hex = ">= 0.4.3" hex = ">= 0.4.3"
lazy_static = "1.5.0" lazy_static = "1.5.0"
proptest = "1.6" proptest = "1.6"

View File

@ -2,4 +2,3 @@
# TODO: C++ linking on Linux broke in 1.82, but is fixed again in 1.85. This can be bumped once that # TODO: C++ linking on Linux broke in 1.82, but is fixed again in 1.85. This can be bumped once that
# is released. # is released.
channel = "1.81" channel = "1.81"
components = ["clippy", "rustfmt"]

View File

@ -227,14 +227,14 @@ pub struct ComparisonInterpreter<T, U> {
second: U, second: U,
} }
pub fn cxx_rust_comparison_interpreter( pub fn cxx_rust_comparison_interpreter<'a>(
sighash: SighashCalculator, sighash: &'a SighashCalculator<'a>,
lock_time: u32, lock_time: u32,
is_final: bool, is_final: bool,
flags: VerificationFlags, flags: VerificationFlags,
) -> ComparisonInterpreter< ) -> ComparisonInterpreter<
CxxInterpreter, CxxInterpreter<'a>,
StepwiseInterpreter<DefaultStepEvaluator<CallbackTransactionSignatureChecker>>, StepwiseInterpreter<DefaultStepEvaluator<CallbackTransactionSignatureChecker<'a>>>,
> { > {
ComparisonInterpreter { ComparisonInterpreter {
first: CxxInterpreter { first: CxxInterpreter {