Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,12 @@ updates:

- package-ecosystem: "cargo"
# Enumerated rather than "**/*" because that glob would also pick up
# offchain/Cargo.toml and solana/Cargo.toml, and no job in this repo builds
# either tree yet. A grouped update would edit their lockfiles, merge green
# with nothing compiled, and diverge them from the repos that still release
# them. These five are every directory that has its own lockfile, which is
# what the glob resolved to before the import. Step 4 folds offchain into
# the root workspace, at which point "/" covers it.
# solana/Cargo.toml, and no job in this repo builds that tree: it keeps its
# own lockfile so the programs stay reproducible against
# solana/programs/sha256sums_*.txt. A grouped update would edit that lockfile,
# merge green with nothing compiled, and change the bytes the checksums pin.
# The offchain crates need no entry of their own any more, because they are
# root workspace members and "/" covers them.
directories:
- "/"
- "/sdk/geolocation/testdata/fixtures/generate-fixtures"
Expand Down
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,15 @@ All notable changes to this project will be documented in this file.
- The scheduler README closes its shell code block, so the Installation heading and everything after it stop rendering inside it.
- Solana programs
- Rename `test_lifetime_swept_2z_amount` to match the `lifetime_swapped_2z_amount` field and method it covers, so a search for the swapped-amount tests finds it.
- Repo
- The offchain crates join the root Cargo workspace. `offchain/Cargo.toml`, `offchain/Cargo.lock` and `offchain/rust-toolchain.toml` are gone, so all 15 crates build on this repo's 1.97.1 toolchain against one lockfile, and the ten path dependencies resolve inside a single workspace. The `solana/` tree stays excluded with its own lockfile and its 1.91 toolchain: 62 of the 96 crates in the programs' build closure resolve differently here, which would change the compiled bytes and break `solana/programs/sha256sums_*.txt`. (#4240)
- Each offchain crate now states `edition = "2024"` and its own version. Both were inherited from the offchain workspace, so folding them in would have moved all 15 crates to edition 2021, where they do not build, and reversioned four of them from 0.0.1 to 0.38.0.
- `bincode` and `reqwest` are declared per crate in the offchain tree rather than taken from the workspace. This repo is on bincode 2, whose API differs, and on reqwest with its default TLS backend, while the offchain crates use bincode 1 and rustls with the OS root store. Unifying either is a code change, not a manifest change.
- The e2e sentinel binary is renamed from `doublezero-sentinel` to `dz-e2e-sentinel`. Offchain ships a deb of the former name, and two members of one workspace cannot write the same file into `target/release`. The e2e base image and the sentinel image follow the new name.
- The e2e base image builds its four binaries by name instead of `--workspace`, so it no longer compiles the offchain crates and their arrow, parquet and AWS dependencies on the way to a client and a sentinel.
- The revdist fixture generator reaches `doublezero-program-tools` and `doublezero-revenue-distribution` by path into `solana/` instead of by an unpinned git dependency, matching the other three generators. Nothing there floats on the next `cargo update` any more.
- Offchain's release profile (`lto = true`, `codegen-units = 1`) is not carried over. Cargo profiles are workspace-wide, so keeping it would apply full link-time optimization to every release build in this repo, including the ones e2e waits on. The offchain release binaries lose that optimization, which is accepted rather than deferred.
- `smartcontract`'s `test-sbf` target runs from each program's directory, the way `build-programs` already does, instead of once from `smartcontract/`. An unscoped `cargo test-sbf` resolves the whole workspace against the platform-tools rustc, which reports itself as 1.89.0-dev, and the workspace now carries crates declaring a higher minimum: `aws-sdk-s3` at 1.94.1 and `rustler` at 1.91, both reached through the offchain crates and neither in any program's dependency graph. Serviceability runs before telemetry, whose test helper loads the serviceability `.so` from `target/deploy`.

## [v0.38.0](https://github.com/malbeclabs/doublezero/compare/client/v0.37.0...client/v0.38.0) - 2026-08-28

Expand Down
Loading
Loading