Skip to content

Commit dad04e7

Browse files
authored
Merge pull request #50 from Lythaeon/release/sof-0.10.0
chore(release): bump SOF crates to 0.10.0
2 parents 42027da + 0fe81bf commit dad04e7

15 files changed

Lines changed: 79 additions & 46 deletions

File tree

‎Cargo.lock‎

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎README.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -71,8 +71,8 @@ cargo add sof-gossip-tuning
7171
Feature examples:
7272

7373
```toml
74-
sof = { version = "0.9.2", features = ["gossip-bootstrap"] }
75-
sof-tx = { version = "0.9.2", features = ["sof-adapters"] }
74+
sof = { version = "0.10.0", features = ["gossip-bootstrap"] }
75+
sof-tx = { version = "0.10.0", features = ["sof-adapters"] }
7676
```
7777

7878
Kernel-bypass integrations:

‎crates/sof-gossip-tuning/Cargo.toml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "sof-gossip-tuning"
3-
version = "0.9.2"
3+
version = "0.10.0"
44
edition.workspace = true
55
description = "Typed gossip and ingest tuning presets for SOF hosts"
66
license = "Apache-2.0 OR MIT"

‎crates/sof-observer/Cargo.toml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "sof"
3-
version = "0.9.2"
3+
version = "0.10.0"
44
edition.workspace = true
55
description = "Solana Observer Framework for low-latency shred ingestion and plugin-driven transaction observation"
66
license = "Apache-2.0 OR MIT"
@@ -23,7 +23,7 @@ gossip-bootstrap = ["dep:solana-gossip"]
2323
kernel-bypass = ["dep:xdp"]
2424

2525
[dependencies]
26-
sof-gossip-tuning = { version = "0.9.2", path = "../sof-gossip-tuning" }
26+
sof-gossip-tuning = { version = "0.10.0", path = "../sof-gossip-tuning" }
2727
solana-gossip = { package = "sof-solana-gossip", version = "3.1.8-sof.4", optional = true, features = ["agave-unstable-api"] }
2828
solana-entry = { version = "3.1.8", features = ["agave-unstable-api"] }
2929
solana-keypair = "3.0.1"

‎crates/sof-observer/README.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,13 @@ cargo add sof
3636
Optional gossip bootstrap support at compile time:
3737

3838
```toml
39-
sof = { version = "0.9.2", features = ["gossip-bootstrap"] }
39+
sof = { version = "0.10.0", features = ["gossip-bootstrap"] }
4040
```
4141

4242
Optional external `kernel-bypass` ingress support:
4343

4444
```toml
45-
sof = { version = "0.9.2", features = ["kernel-bypass"] }
45+
sof = { version = "0.10.0", features = ["kernel-bypass"] }
4646
```
4747

4848
The bundled `sof-solana-gossip` backend defaults to SOF's lightweight in-memory duplicate/conflict

‎crates/sof-tx/Cargo.toml‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "sof-tx"
3-
version = "0.9.2"
3+
version = "0.10.0"
44
edition.workspace = true
55
description = "SOF transaction SDK for building and submitting Solana transactions"
66
license = "Apache-2.0 OR MIT"
@@ -40,7 +40,7 @@ solana-signature = "3.1.0"
4040
solana-signer = "3.0.0"
4141
solana-system-interface = { version = "3.0.0", features = ["bincode"] }
4242
solana-transaction = { version = "3.0.2", features = ["bincode"] }
43-
sof = { version = "0.9.2", path = "../sof-observer", default-features = false, optional = true }
43+
sof = { version = "0.10.0", path = "../sof-observer", default-features = false, optional = true }
4444
thiserror = "2.0"
4545
tokio = { version = "1.48", features = ["macros", "rt-multi-thread", "net", "sync", "time"] }
4646
tonic = { version = "0.12", optional = true, default-features = false, features = ["codegen", "prost", "transport", "tls-webpki-roots"] }

‎crates/sof-tx/README.md‎

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -35,18 +35,18 @@ cargo add sof-tx
3535
Enable SOF runtime adapters when you want provider values from live `sof` plugin events:
3636

3737
```toml
38-
sof-tx = { version = "0.9.2", features = ["sof-adapters"] }
38+
sof-tx = { version = "0.10.0", features = ["sof-adapters"] }
3939
```
4040

4141
Enable `kernel-bypass` transport hooks for kernel-bypass direct submit integrations:
4242

4343
```toml
44-
sof-tx = { version = "0.9.2", features = ["kernel-bypass"] }
44+
sof-tx = { version = "0.10.0", features = ["kernel-bypass"] }
4545
```
4646

4747
## Quick Start
4848

49-
Start with the simplest builder-based path:
49+
Start with the simplest unsigned-submit path:
5050

5151
```rust
5252
use sof_tx::{SubmitMode, TxBuilder, TxSubmitClient};
@@ -68,7 +68,7 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
6868
);
6969

7070
let _ = client
71-
.submit_builder(builder, &[&payer], SubmitMode::RpcOnly)
71+
.submit_unsigned(builder, &[&payer], SubmitMode::RpcOnly)
7272
.await?;
7373

7474
Ok(())
@@ -100,7 +100,7 @@ let mut signed_only_client = TxSubmitClient::builder()
100100
.build();
101101
```
102102

103-
- `with_rpc_defaults(...)`: use one RPC URL for builder-based `RpcOnly` submission.
103+
- `with_rpc_defaults(...)`: use one RPC URL for unsigned `RpcOnly` submission.
104104
- `with_jito_defaults(...)`: use one RPC URL for blockhash plus Jito for `JitoOnly` submission.
105105
- `with_rpc_transport(...)`: enough for `submit_signed(...)` because that path does not build the
106106
transaction inside the client and does not need a blockhash provider.
@@ -181,7 +181,7 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
181181
));
182182

183183
let _ = client
184-
.submit_builder(builder, &[&payer], SubmitMode::Hybrid)
184+
.submit_unsigned(builder, &[&payer], SubmitMode::Hybrid)
185185
.await?;
186186

187187
Ok(())
@@ -248,7 +248,7 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
248248
));
249249

250250
let _result = client
251-
.submit_builder(builder, &[&payer], SubmitMode::JitoOnly)
251+
.submit_unsigned(builder, &[&payer], SubmitMode::JitoOnly)
252252
.await?;
253253

254254
Ok(())
@@ -287,7 +287,7 @@ async fn submit_strategy_ixs(
287287
.add_instructions(ixs);
288288

289289
let _ = client
290-
.submit_builder(builder, &[payer], SubmitMode::Hybrid)
290+
.submit_unsigned(builder, &[payer], SubmitMode::Hybrid)
291291
.await?;
292292

293293
Ok(())

‎crates/sof-tx/src/submit/client.rs‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,9 @@ use crate::{
3636

3737
/// Transaction submission client that orchestrates RPC and direct submit modes.
3838
pub struct TxSubmitClient {
39-
/// Blockhash source used by builder submit path.
39+
/// Blockhash source used by unsigned submit path.
4040
blockhash_provider: Arc<dyn RecentBlockhashProvider>,
41-
/// Optional RPC-backed blockhash source refreshed on demand before builder submit.
41+
/// Optional RPC-backed blockhash source refreshed on demand before unsigned submit.
4242
on_demand_blockhash_provider: Option<Arc<RpcRecentBlockhashProvider>>,
4343
/// Leader source used by direct/hybrid paths.
4444
leader_provider: Arc<dyn LeaderProvider>,
@@ -230,7 +230,7 @@ impl TxSubmitClient {
230230
self
231231
}
232232

233-
/// Registers an RPC-backed blockhash provider to refresh on demand for builder submit paths.
233+
/// Registers an RPC-backed blockhash provider to refresh on demand for unsigned submit paths.
234234
#[must_use]
235235
pub fn with_rpc_blockhash_provider(
236236
mut self,
@@ -260,7 +260,7 @@ impl TxSubmitClient {
260260
///
261261
/// Returns [`SubmitError`] when blockhash lookup, signing, dedupe, routing, or submission
262262
/// fails.
263-
pub async fn submit_builder<T>(
263+
pub async fn submit_unsigned<T>(
264264
&mut self,
265265
builder: TxBuilder,
266266
signers: &T,
@@ -292,7 +292,7 @@ impl TxSubmitClient {
292292
///
293293
/// Returns [`SubmitError`] when blockhash lookup, signing, dedupe, toxic-flow guards,
294294
/// routing, or submission fails.
295-
pub async fn submit_builder_with_context<T>(
295+
pub async fn submit_unsigned_with_context<T>(
296296
&mut self,
297297
builder: TxBuilder,
298298
signers: &T,

‎crates/sof-tx/src/submit/client_builder.rs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ use crate::{
1818

1919
/// High-level builder for common `TxSubmitClient` configurations.
2020
pub struct TxSubmitClientBuilder {
21-
/// Source used by builder submit paths.
21+
/// Source used by unsigned submit paths.
2222
blockhash_provider: Arc<dyn RecentBlockhashProvider>,
2323
/// Optional RPC-backed blockhash source refreshed on demand.
2424
on_demand_blockhash_provider: Option<Arc<RpcRecentBlockhashProvider>>,
@@ -87,7 +87,7 @@ impl TxSubmitClientBuilder {
8787
self
8888
}
8989

90-
/// Uses one RPC endpoint as an on-demand blockhash source for builder submits.
90+
/// Uses one RPC endpoint as an on-demand blockhash source for unsigned submits.
9191
///
9292
/// # Errors
9393
///

‎crates/sof-tx/src/submit/tests.rs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -400,7 +400,7 @@ async fn rpc_only_constructor_uses_rpc_for_blockhash_and_submit() {
400400
solana_system_interface::instruction::transfer(&payer.pubkey(), &recipient.pubkey(), 1),
401401
);
402402
let result = client
403-
.submit_builder(builder, &[&payer], SubmitMode::RpcOnly)
403+
.submit_unsigned(builder, &[&payer], SubmitMode::RpcOnly)
404404
.await;
405405

406406
assert!(result.is_ok());
@@ -460,7 +460,7 @@ async fn builder_rpc_defaults_uses_rpc_for_blockhash_and_submit() {
460460
solana_system_interface::instruction::transfer(&payer.pubkey(), &recipient.pubkey(), 1),
461461
);
462462
let result = client
463-
.submit_builder(builder, &[&payer], SubmitMode::RpcOnly)
463+
.submit_unsigned(builder, &[&payer], SubmitMode::RpcOnly)
464464
.await;
465465

466466
assert!(result.is_ok());

0 commit comments

Comments
 (0)