Skip to content

Commit bcd21d0

Browse files
committed
bump rust
1 parent a417258 commit bcd21d0

File tree

9 files changed

+26
-28
lines changed

9 files changed

+26
-28
lines changed

Cargo.toml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ members = ["benches/*", "bin", "crates/*", "examples/builder_log", "examples/da_
33
resolver = "2"
44

55
[workspace.package]
6-
edition = "2021"
7-
rust-version = "1.83"
6+
edition = "2024"
7+
rust-version = "1.85"
88
version = "0.8.0-rc.2"
99

1010
[workspace.dependencies]

bin/cli.rs

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,6 @@ use clap::Parser;
44
#[tokio::main]
55
async fn main() -> eyre::Result<()> {
66
color_eyre::install()?;
7-
// set default backtrace unless provided
8-
if std::env::var_os("RUST_BACKTRACE").is_none() {
9-
std::env::set_var("RUST_BACKTRACE", "1");
10-
}
11-
127
let args = cb_cli::Args::parse();
138

149
args.run().await

bin/pbs.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,6 @@ use tracing::{error, info};
1111
async fn main() -> Result<()> {
1212
color_eyre::install()?;
1313

14-
// set default backtrace unless provided
15-
if std::env::var_os("RUST_BACKTRACE").is_none() {
16-
std::env::set_var("RUST_BACKTRACE", "1");
17-
}
1814
let _guard = initialize_tracing_log(PBS_MODULE_NAME, LogsSettings::from_env_config()?);
1915

2016
let _args = cb_cli::PbsArgs::parse();

bin/signer.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,6 @@ use tracing::{error, info};
1111
async fn main() -> Result<()> {
1212
color_eyre::install()?;
1313

14-
// set default backtrace unless provided
15-
if std::env::var_os("RUST_BACKTRACE").is_none() {
16-
std::env::set_var("RUST_BACKTRACE", "1");
17-
}
1814
let _guard = initialize_tracing_log(SIGNER_MODULE_NAME, LogsSettings::from_env_config()?);
1915

2016
let _args = cb_cli::SignerArgs::parse();

crates/signer/build.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
fn main() -> Result<(), Box<dyn std::error::Error>> {
2-
std::env::set_var("OUT_DIR", "src/proto");
2+
unsafe { std::env::set_var("OUT_DIR", "src/proto") };
33
tonic_build::configure().build_server(false).compile_protos(
44
&[
55
"proto/pb/v1/lister.proto",

docs/docs/get_started/building.md

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
Commit-Boost's components are all written in [Rust](https://www.rust-lang.org/). This guide will walk you through the setup required to build them from source. It assumes you are on a Debian or Debian-based system (e.g., Ubuntu, Linux Mint, Pop OS). For other systems, please adapt the steps for your system's package manager accordingly.
44

5-
65
## Building via the Docker Builder
76

87
For convenience, Commit-Boost has Dockerized the build environment for Linux `x64` and `arm64` platforms. It utilizes Docker's powerful [buildx](https://docs.docker.com/reference/cli/docker/buildx/) system. All of the prerequisites, cross-compilation tooling, and configuration are handled by the builder image. If you would like to build the CLI, PBS module, or Signer binaries and Docker images from source, you are welcome to use the Docker builder process.
@@ -27,17 +26,15 @@ The `version` provided will be used to house the output binaries in `./build/<ve
2726

2827
If you're interested in building the binaries and/or Docker images for multiple architectures (currently Linux `amd64` and `arm64`), use the variants of those recipes that have the `-multiarch` suffix. Note that building a multiarch Docker image manifest will require the use of a [custom Docker registry](https://www.digitalocean.com/community/tutorials/how-to-set-up-a-private-docker-registry-on-ubuntu-20-04), as the local registry built into Docker does not have multiarch manifest support.
2928

30-
3129
## Building Manually
3230

3331
If you don't want to use the Docker builder, you can compile the Commit-Boost artifacts locally. The following instructions assume a Debian or Debian-based system (e.g., Ubuntu, Linux Mint, Pop OS) for simplicity. For other systems, please adapt any relevant instructions to your environment accordingly.
3432

35-
3633
### Prerequisites
3734

3835
Requirements:
3936

40-
- Rust 1.83+
37+
- Rust 1.85+
4138
- GCC (or another C compiler of your choice)
4239
- OpenSSL development libraries
4340
- Protobuf Compiler (`protoc`)
@@ -65,48 +62,53 @@ just install-protoc
6562
This works on OSX and Linux systems, but you are welcome to download and install it manually as well.
6663

6764
With the prerequisites set up, pull the repository:
65+
6866
```bash
6967
git clone https://github.com/Commit-Boost/commit-boost-client
7068
```
7169

7270
Check out the `stable` branch which houses the latest release:
71+
7372
```bash
7473
cd commit-boost-client && git checkout stable
7574
```
7675

7776
Finally, update the submodules:
77+
7878
```
7979
git submodule update --init --recursive
8080
```
8181

8282
Your build environment should now be ready to use.
8383

84-
8584
### Building the CLI
8685

8786
To build the CLI, run:
87+
8888
```
8989
cargo build --release --bin commit-boost-cli
9090
```
9191

9292
This will create a binary in `./target/release/commit-boost-cli`. Confirm that it works:
93+
9394
```
9495
./target/release/commit-boost-cli --version
9596
```
9697

9798
You can now use this to generate the Docker Compose file to drive the other modules if desired. See the [configuration](./configuration.md) guide for more information.
9899

99-
100100
### Building the PBS Module
101101

102102
To build PBS, run:
103+
103104
```
104105
cargo build --release --bin commit-boost-pbs
105106
```
106107

107108
This will create a binary in `./target/release/commit-boost-pbs`. To verify it works, create [a TOML configuration](./configuration.md) for the PBS module (e.g., `cb-config.toml`).
108109

109110
As a quick example, we'll use this configuration that connects to the Flashbots relay on the Hoodi network:
111+
110112
```toml
111113
chain = "Hoodi"
112114

@@ -130,11 +132,13 @@ secrets_path = "/tmp/secrets"
130132
```
131133

132134
Set the path to it in the `CB_CONFIG` environment variable and run the binary:
135+
133136
```
134137
CB_CONFIG=cb-config.toml ./target/release/commit-boost-pbs
135138
```
136139

137140
If it works, you should see output like this:
141+
138142
```
139143
2025-05-07T21:09:17.407245Z WARN No metrics server configured
140144
2025-05-07T21:09:17.407257Z INFO starting PBS service version="0.7.0" commit_hash="58082edb1213596667afe8c3950cd997ab85f4f3" addr=127.0.0.1:18550 events_subs=0 chain=Hoodi
@@ -144,17 +148,18 @@ If it works, you should see output like this:
144148

145149
If you do, then the binary works.
146150

147-
148151
### Building the Signer Module
149152

150153
To build the Signer, run:
154+
151155
```
152156
cargo build --release --bin commit-boost-signer
153157
```
154158

155159
This will create a binary in `./target/release/commit-boost-signer`. To verify it works, create [a TOML configuration](./configuration.md) for the Signer module (e.g., `cb-config.toml`). We'll use the example in the PBS build section above.
156160

157161
The signer needs the following environment variables set:
162+
158163
- `CB_CONFIG` = path of your config file.
159164
- `CB_JWTS` = a dummy key-value pair of [JWT](https://en.wikipedia.org/wiki/JSON_Web_Token) values for various services. Since we don't need them for the sake of just testing the binary, we can use something like `"test_jwts=dummy"`.
160165

@@ -166,10 +171,11 @@ CB_CONFIG=cb-config.toml CB_JWTS="test_jwts=dummy" ./target/release/commit-boost
166171
```
167172

168173
You should see output like this:
174+
169175
```
170176
2025-06-03T04:57:19.815702Z WARN Proxy store not configured. Proxies keys and delegations will not be persisted
171177
2025-06-03T04:57:19.818193Z INFO Starting signing service version="0.8.0-rc.1" commit_hash="3eed5268f07803c55cca7d7e2e14a7017098f797" modules=["test"] endpoint=127.0.0.1:20000 loaded_consensus=0 loaded_proxies=0
172178
2025-06-03T04:57:19.818229Z WARN No metrics server configured
173179
```
174180

175-
If you do, then the binary works.
181+
If you do, then the binary works.

docs/docs/get_started/overview.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ Commit-Boost is primarily based on [Docker](https://www.docker.com/) to enable m
88

99
Each component roughly maps to a container: from a single `.toml` config file, the node operator can specify which modules they want to run, and Commit-Boost takes care of spinning up the services and creating links between them.
1010
Commit-Boost ships with two core modules:
11+
1112
- A PBS module which implements the [BuilderAPI](https://ethereum.github.io/builder-specs/) for [MEV Boost](https://docs.flashbots.net/flashbots-mev-boost/architecture-overview/specifications).
1213
- A signer module, which implements the [Signer API](/api) and provides the interface for modules to request proposer commitments.
1314

@@ -18,13 +19,16 @@ The Commit-Boost CLI creates a dynamic `docker-compose` file, with services and
1819
Whether you're using Docker or running the binaries natively, you can compile from source directly from the repo, or download binaries and fetch docker images from the official releases.
1920

2021
## Binaries and images
22+
2123
Find the latest releases at https://github.com/Commit-Boost/commit-boost-client/releases.
2224

2325
The modules are also published at [each release](https://github.com/orgs/Commit-Boost/packages?repo_name=commit-boost-client).
2426

2527
### From source
28+
2629
Requirements:
27-
- Rust 1.83
30+
31+
- Rust 1.85
2832

2933
:::note
3034
Run `rustup update` to update Rust and Cargo to the latest version
@@ -43,6 +47,7 @@ If you get an `openssl` related error try running: `apt-get update && apt-get in
4347
:::
4448

4549
### Docker
50+
4651
You will need to build the CLI to create the `docker-compose` file:
4752

4853
```bash
@@ -54,6 +59,7 @@ cargo build --release --bin commit-boost-cli
5459
```
5560

5661
and the modules as Docker images:
62+
5763
```bash
5864
docker build -t commitboost_pbs_default . -f ./provisioning/pbs.Dockerfile
5965
docker build -t commitboost_signer . -f ./provisioning/signer.Dockerfile
@@ -72,4 +78,3 @@ cargo build --release --bin commit-boost-pbs
7278
# Build the Signer module
7379
cargo build --release --bin commit-boost-signer
7480
```
75-

provisioning/build.Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# This will be the main build image
2-
FROM --platform=${BUILDPLATFORM} rust:1.83-slim-bookworm AS chef
2+
FROM --platform=${BUILDPLATFORM} rust:1.85-slim-bookworm AS chef
33
ARG TARGETOS TARGETARCH BUILDPLATFORM TARGET_CRATE
44
ENV CARGO_REGISTRIES_CRATES_IO_PROTOCOL=sparse
55
WORKDIR /app

rust-toolchain.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
[toolchain]
2-
channel = "1.83.0"
2+
channel = "1.85.0"

0 commit comments

Comments
 (0)