Skip to content

chore(cargo)(deps): bump the cargo-dependencies group across 1 directory with 5 updates - #462

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/app/onchain/cargo-dependencies-f30302d6d7
Open

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/app/onchain/cargo-dependencies-f30302d6d7

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 15, 2026

Copy link
Copy Markdown
Contributor

Bumps the cargo-dependencies group with 5 updates in the /app/onchain directory:

Package From To
soroban-sdk 23.4.1 28.0.0
ed25519-dalek 2.2.0 3.0.0
serde_json 1.0.149 1.0.154
rand 0.8.5 0.9.5
proptest 1.11.0 1.12.0

Updates soroban-sdk from 23.4.1 to 28.0.0

Release notes

Sourced from soroban-sdk's releases.

28.0.0

This is a release supporting Protocol 28. Upgrading requires changes to some contracts. See the migration guide for the full detail on each breaking change below.

Breaking changes

  • Build contracts with stellar-cli v25.2.0 or newer. Spec shaking v2 is now always on, so the SDK emits a spec entry for every type and relies on the build system to strip the unreachable ones. Remove the experimental_spec_shaking_v2 feature from the soroban-sdk dependency, and remove any export = ... argument from contracttype, contracterror, and contractevent, which is now a compile error. Native builds and unit tests are unaffected. #1968
  • Remove any lib = ... argument from contracttype, contracterror, and contractevent. It is now a compile error, and contractimport! always generates the full type definition instead of aliasing into another crate. #1951 #2000
  • A contracttype struct can be read from stored data with extra or missing fields (CAP-86). A field missing from the map reads as None if it is an Option, and errors otherwise, and a map key that is not a field of the struct is ignored and dropped, where both used to panic. An Option field can now be added or removed without migrating everything already stored. Writing is unchanged and still writes every field. #2006
  • Events no longer publish fields that are unset (CAP-86). In a contractevent with data_format = "map", a field whose value is void, or Option::None, is left out of the published map rather than written as a key with a void value. Any off-chain system consuming the events must tolerate the absent key. Keep publishing every field with #[contractevent(sparse = false)]. #2008
  • Deploying and upgrading take a ContractExecutable (CAP-85). deploy_contract replaces deploy_v2, and update_current_contract replaces update_current_contract_wasm; the old ones still work but are deprecated. Wrap the Wasm hash in ContractExecutable::Wasm(...) to migrate. #2020
  • Test snapshots change for tests that register contracts natively. Every natively registered contract now gets its own contract code entry rather than sharing one empty entry, so snapshot JSON files are regenerated on upgrade. For a test that depended on contracts sharing a code entry, upload the contract once with Env::upload and deploy it repeatedly instead. #2014
  • The Approve event field expiration_ledger is renamed live_until_ledger, matching the name SEP-41 uses. Rename it wherever the event is constructed or matched on. #1985
  • #[contractimpl(contracttrait)] on an impl block that does not implement a trait is now a compile error. It was accepted and silently did nothing. #1992
  • Some test utilities now panic when called inside a contract function. Call them from the test, outside the contract. #2010

New features

  • Protocol 28 support, with soroban-env-* at 28.0.2 and stellar-xdr at 28.0.0. #1986
  • Manage contract executable references from a contract (CAP-85) with Env::executable_refs(), and deploy from one by passing ContractExecutable::ExternalRef. #2020
  • Upload a natively defined contract in tests with Env::upload and Env::upload_at, making it possible to test a factory, or any other contract that deploys from an existing code entry, without needing to build the contract to Wasm. #2007
  • Fuzz and property test with account addresses using the new ArbitraryAddressAccount prototype, which generates G... addresses so the account path of a contract gets exercised. ArbitraryAddress still generates contract addresses and is also named ArbitraryAddressContract. #2024
  • Use SorobanArbitrary prototypes with proptest, now documented in testutils::proptest. #2011

Fixes

  • MuxedAddress values from different Envs can be compared in tests. #2047
  • BytesN<N> rejects an N larger than u32::MAX when converting from Bytes. #2050
  • Generated and internal spec XDR statics are now private and hidden from docs. #2054 #2032

Full Changelog: stellar/rs-soroban-sdk@v27.0.6...v28.0.0

28.0.0-rc.2

This is a pre-release supporting Protocol 28, and follows v28.0.0-rc.1. Upgrading requires changes to some contracts. See the migration guide for the full detail on each breaking change, including those released in rc.1.

Note that any changes including breaking changes may be made until the stable release.

Breaking changes

  • None

Fixes

  • MuxedAddress values from different Envs can be compared in tests. Comparison now falls back to comparing serialized values when the object handles come from separate environments, matching every other SDK type. Such comparisons used to panic. Tests only. #2047
  • BytesN<N> rejects an N larger than u32::MAX when converting from Bytes. On 64-bit hosts N was truncated to u32, so a Bytes of a different length could be accepted. Contracts built for Wasm were unaffected, where usize is 32 bits. #2050
  • Generated spec XDR statics are now private and hidden from docs. The __SPEC_XDR_TYPE_*, __SPEC_XDR_EVENT_* and __SPEC_XDR_FN_* statics generated by contracttype, contracterror, contractevent and contractimpl, and the module wrapping the function one, no longer appear in the public API or in rustdoc. They exist only to place the contractspecv0 link section in the Wasm, and are __-prefixed #[doc(hidden)] internals nothing external is meant to reference. Rebuilt test Wasms are byte-identical. #2054 #2032

Docs

  • The auth docs include a full custom account example, showing a contract account implementing CustomAccountInterface end to end. #2053
  • Add AFL++ fuzzing examples #2016

... (truncated)

Commits
  • 48d5067 Bump version to 28.0.0 (#2067)
  • 3bb283c Fix contractimport! doc example and generated-client name in docs (#2056)
  • 9bafcef Add migration docs for check auth contract executable changes (#2057)
  • 5e875b5 Bump version to 28.0.0-rc.2 (#2055)
  • f4f46a2 Reject oversized BytesN lengths in try_from Bytes (#2050)
  • aa700d0 Make generated spec XDR statics private (#2054)
  • b230e55 Add custom account example to auth docs (#2053)
  • c632f79 Fix MuxedAddress comparison across environments in tests (#2047)
  • 73a2a8c Fix duplicate banner on published docs index (#2039)
  • a9b3c62 Improve the default example in the SDK docs (#2041)
  • Additional commits viewable in compare view

Updates ed25519-dalek from 2.2.0 to 3.0.0

Changelog

Sourced from ed25519-dalek's changelog.

3.0.0

  • Update the digest dependency to 0.9. This requires a major version because the digest traits are part of the public API, but there are otherwise no changes to the API.

2.1.0

  • Make Scalar::from_bits a const fn, allowing its use in const contexts.

2.0.0

  • Fix a data modeling error in the serde feature pointed out by Trevor Perrin which caused points and scalars to be serialized with length fields rather than as fixed-size 32-byte arrays. This is a breaking change, but it fixes compatibility with serde-json and ensures that the serde-bincode encoding matches the conventional encoding for X/Ed25519.
  • Update rand_core to 0.5, allowing use with new rand versions.
  • Switch from clear_on_drop to zeroize (by Tony Arcieri).
  • Require subtle = ^2.2.1 and remove the note advising nightly Rust, which is no longer required as of that version of subtle. See the subtle changelog for more details.
  • Update README.md for 2.x series.
  • Remove the build.rs hack which loaded the entire crate into its own build.rs to generate constants, and keep the constants in the source code.

The only significant change is the data model change to the serde feature; besides the rand_core version bump, there are no other user-visible changes.

1.2.4

  • Specify a semver bound for clear_on_drop rather than an exact version, addressing an issue where changes to inline assembly in rustc prevented clear_on_drop from working without an update.

1.2.3

  • Fix an issue identified by a Quarkslab audit (and Jack Grigg), where manually constructing unreduced Scalar values, as needed for X/Ed25519, and then performing scalar/scalar arithmetic could compute incorrect results.
  • Switch to upstream Rust intrinsics for the IFMA backend now that they exist in Rust and don't need to be defined locally.
  • Ensure that the NAF computation works correctly, even for parameters never used elsewhere in the codebase.
  • Minor refactoring to EdwardsPoint decompression.
  • Fix broken links in documentation.
  • Fix compilation on nightly broken due to changes to the #[doc(include)] path root (not quite correctly done in 1.2.2).

1.2.2

... (truncated)

Commits
  • 6d96eb7 Bump version to 3.0.0.
  • c68b30f Merge pull request #330 from isislovecruft/fix/move-coc
  • 2ee6193 Merge pull request #327 from huitseeker/digests-0.9
  • 91a0fae Move CoC section from CONTRIBUTING.md to new file.
  • 5038fcf Merge pull request #308 from isislovecruft/fix/pippenger-typo
  • 6afd8ff Update sha2, digest to 0.9
  • 3cc13a7 Merge branch 'master' into develop
  • c4824e1 Merge branch 'release/2.1.0'
  • 3fc47ef Bump version to 2.1.0
  • f04b830 Merge branch 'master' into develop
  • Additional commits viewable in compare view

Updates serde_json from 1.0.149 to 1.0.154

Release notes

Sourced from serde_json's releases.

v1.0.154

v1.0.153

v1.0.152

v1.0.151

v1.0.150

Commits
  • 20572a6 Release 1.0.154
  • a91bfaf Fix RandomState links in map documentation
  • 3c932c0 Merge pull request #1333 from razmser/no-std-preserve-order
  • 4b2d726 Release 1.0.153
  • 83335ee Touch up PR 1345
  • 4b4810a Resolve range_plus_one pedantic clippy lint
  • 8af71cc Merge pull request #1345 from 00200200/fix-invalid-utf8-error-column
  • 452afa2 Correct multiline raw UTF-8 error positions and simplify indexing
  • c9f1e3b Release 1.0.152
  • 854fc70 Touch up PR 1347
  • Additional commits viewable in compare view

Updates rand from 0.8.5 to 0.9.5

Changelog

Sourced from rand's changelog.

[0.9.5] — 2026-07-02

Fixes

  • Fix possible memory safety violation due to deserialization of UniformChar from bad source (#1803)

#1803: rust-random/rand#1803

[0.9.4] — 2026-04-13

Fixes

#1766: rust-random/rand#1766

[0.9.3] — 2026-04-11

This release back-ports a fix from v0.10. See also #1763.

Changes

  • Deprecate feature log (#1764)
  • Replace usages of doc_auto_cfg (#1764)

#1763: rust-random/rand#1763

[0.9.2] — 2025-07-20

Deprecated

  • Deprecate rand::rngs::mock module and StepRng generator (#1634)

Additions

  • Enable WeightedIndex<usize> (de)serialization (#1646)

[0.9.1] - 2025-04-17

Security and unsafe

  • Revise "not a crypto library" policy again (#1565)
  • Remove zerocopy dependency from rand (#1579)

Fixes

  • Fix feature simd_support for recent nightly rust (#1586)

Changes

  • Allow fn rand::seq::index::sample_weighted and fn IndexedRandom::choose_multiple_weighted to return fewer than amount results (#1623), reverting an undocumented change (#1382) to the previous release.

Additions

  • Add rand::distr::Alphabetic distribution. (#1587)
  • Re-export rand_core (#1604)

[0.9.0] - 2025-01-27

Security and unsafe

  • Policy: "rand is not a crypto library" (#1514)
  • Remove fork-protection from ReseedingRng and ThreadRng. Instead, it is recommended to call ThreadRng::reseed on fork. (#1379)
  • Use zerocopy to replace some unsafe code (#1349, #1393, #1446, #1502)

Dependencies

... (truncated)

Commits

Updates proptest from 1.11.0 to 1.12.0

Commits
  • 70cf37d Merge pull request #675 from proptest-rs/prep-1.12
  • 729e0ff prepare next releases and fix panic handling
  • 28c1fad Merge pull request #664 from Expyron/main
  • 5ddd9a4 Merge pull request #668 from toddATavail/fix-fork-persisted-failure
  • a6a9ac7 Merge pull request #673 from glaziermag/fix-book-deploy
  • d57d88b Replace rand_chacha with chacha20
  • 9411213 Deploy the book on pushes to main
  • 1719745 fix: terminate the fork replay when a persisted failure fails
  • 0f55b7a test: a persisted failure in a forked test must be reported
  • 4b0594e Merge pull request #669 from proptest-rs/no-fail-fast
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

…ory with 5 updates

Bumps the cargo-dependencies group with 5 updates in the /app/onchain directory:

| Package | From | To |
| --- | --- | --- |
| [soroban-sdk](https://github.com/stellar/rs-soroban-sdk) | `23.4.1` | `28.0.0` |
| [ed25519-dalek](https://github.com/dalek-cryptography/curve25519-dalek) | `2.2.0` | `3.0.0` |
| [serde_json](https://github.com/serde-rs/json) | `1.0.149` | `1.0.154` |
| [rand](https://github.com/rust-random/rand) | `0.8.5` | `0.9.5` |
| [proptest](https://github.com/proptest-rs/proptest) | `1.11.0` | `1.12.0` |



Updates `soroban-sdk` from 23.4.1 to 28.0.0
- [Release notes](https://github.com/stellar/rs-soroban-sdk/releases)
- [Commits](stellar/rs-soroban-sdk@v23.4.1...v28.0.0)

Updates `ed25519-dalek` from 2.2.0 to 3.0.0
- [Release notes](https://github.com/dalek-cryptography/curve25519-dalek/releases)
- [Changelog](https://github.com/dalek-cryptography/curve25519-dalek/blob/3.0.0/CHANGELOG.md)
- [Commits](dalek-cryptography/curve25519-dalek@ed25519-2.2.0...3.0.0)

Updates `serde_json` from 1.0.149 to 1.0.154
- [Release notes](https://github.com/serde-rs/json/releases)
- [Commits](serde-rs/json@v1.0.149...v1.0.154)

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

Updates `proptest` from 1.11.0 to 1.12.0
- [Release notes](https://github.com/proptest-rs/proptest/releases)
- [Changelog](https://github.com/proptest-rs/proptest/blob/main/CHANGELOG.md)
- [Commits](proptest-rs/proptest@v1.11.0...v1.12.0)

---
updated-dependencies:
- dependency-name: soroban-sdk
  dependency-version: 28.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: cargo-dependencies
- dependency-name: ed25519-dalek
  dependency-version: 3.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: cargo-dependencies
- dependency-name: serde_json
  dependency-version: 1.0.154
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: cargo-dependencies
- dependency-name: rand
  dependency-version: 0.9.5
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-dependencies
- dependency-name: proptest
  dependency-version: 1.12.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: cargo-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added the dependencies Pull requests that update a dependency file label Oct 15, 2026
@dependabot @github

dependabot Bot commented on behalf of github Oct 15, 2026

Copy link
Copy Markdown
Contributor Author

Labels

The following labels could not be found: cargo. Please create it before Dependabot can add it to a pull request.

Please fix the above issues or remove invalid values from dependabot.yml.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants