diff --git a/CHANGELOG.md b/CHANGELOG.md index 2fa89368cc..2a29be997d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -45,6 +45,8 @@ All notable changes to this project will be documented in this file. - `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`. - `smartcontract`'s `test-sbf` target names its four program packages instead of running unscoped. An unscoped `cargo test-sbf` resolves the whole workspace against the platform-tools rustc (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. Neither is in any program's dependency graph. The sibling `test-programs` and `lint-programs` targets were already package-scoped, which is why only this one failed. - The imported `offchain/` tree catches up with the three pull requests that landed in `doublezero-offchain` after the import point: `doublezero-solana shreds pay` is removed (`withdraw`, `list`, `payments` and `price` stay), the fund-seat instruction is removed from the offchain Solana SDK while `shreds payments` keeps reading leftover fund-seat transactions, and the solana-cli crate moves to 0.5.12. Author, date and message come across unchanged, with the pull request references named the way the import named its own. `solana/` needed no sync: its upstream tip is the imported tip. + - `offchain/CONTRIBUTING.md` is removed and its code of conduct moves to the root README. It told contributors to fork `doublezero-offchain` and open pull requests and issues there, which stops being true when that repository is archived, and the rest of it duplicated the root's contributing guidance. + - DEVELOPMENT gains a section on the two imported trees, naming the parts the root `make` targets do not cover: the Solana L1 programs, which keep their own workspace and toolchain, and the Elixir scheduler. ## [v0.38.0](https://github.com/malbeclabs/doublezero/compare/client/v0.37.0...client/v0.38.0) - 2026-08-28 diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md index 4b71af22de..0ff724ed1c 100644 --- a/DEVELOPMENT.md +++ b/DEVELOPMENT.md @@ -20,6 +20,25 @@ make fmt make ci ``` +## The imported trees + +`offchain/` and `solana/` came from `doublezero-offchain` and `doublezero-solana`. +The offchain Rust crates are ordinary members of the root workspace, so the +Quickstart targets above cover them. Two parts are not covered: + +```bash +# The Solana L1 programs keep their own workspace, lockfile and 1.91 toolchain, +# so nothing at the root builds them. Their program bytes have to stay +# reproducible against solana/programs/sha256sums_*.txt, which is why they are +# held out. +cd solana && make lint && make test-lib && make test-sbf + +# The offchain scheduler is Elixir. Run the same checks as `.github/workflows/elixir.yml`. +cd offchain/scheduler && mix deps.get && mix format --check-formatted && mix compile --warnings-as-errors && mix credo --strict && mix test --cover +``` + +Both have their own CI workflows (`solana`, `elixir`), path-scoped to their trees. + ## Local end-to-end testing The local devnet and end-to-end test environments both run entirely in Docker containers. diff --git a/README.md b/README.md index 7e2be5336e..7635d687aa 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,10 @@ make ci For coding standards, local test instructions, and devnet usage, refer to [DEVELOPMENT](./DEVELOPMENT.md). +This project is intended to be a safe, welcoming space for collaboration, and +contributors are expected to adhere to the [Contributor Covenant Code of +Conduct](https://www.contributor-covenant.org/). + ## License Licensed under the **Apache License 2.0**. diff --git a/offchain/CONTRIBUTING.md b/offchain/CONTRIBUTING.md deleted file mode 100644 index 41da45dded..0000000000 --- a/offchain/CONTRIBUTING.md +++ /dev/null @@ -1,23 +0,0 @@ -### How to Contribute to this repository - -We value contributions from the community and will do everything we -can go get them reviewed in a timely fashion. If you have code to send -our way or a bug to report: - -- **Contributing Code**: If you have new code or a bug fix, fork this - repo, create a logically-named branch, and [submit a PR against this - repo](https://github.com/malbeclabs/doublezero-offchain). Include a - write up of the PR with details on what it does. - -- **Reporting Bugs**: Open an issue [against this - repo](https://github.com/malbeclabs/doublezero-offchain/issues) with as - much detail as you can. At the very least you'll include steps to - reproduce the problem. - -This project is intended to be a safe, welcoming space for -collaboration, and contributors are expected to adhere to the -[Contributor Covenant Code of -Conduct](http://contributor-covenant.org/). - -Above all, thank you for taking the time to be a part of the DoubleZero -Foundation community.