Skip to content

Commit 447f6d8

Browse files
committed
Merge remote-tracking branch 'origin/main' into danlaine/contiguous-2
2 parents 6304e61 + dffdc0f commit 447f6d8

233 files changed

Lines changed: 17716 additions & 5576 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/actions/disk/action.yml

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,39 @@ runs:
5959
echo "TMP=D:\Temp" >> $env:GITHUB_ENV
6060
New-Item -ItemType Directory -Path "D:\Temp" -Force | Out-Null
6161
62+
- name: Configure swap (Linux)
63+
shell: bash
64+
if: runner.os == 'Linux'
65+
run: |
66+
sudo swapoff -a
67+
sudo fallocate -l 8G /swapfile
68+
sudo chmod 600 /swapfile
69+
sudo mkswap /swapfile
70+
sudo swapon /swapfile
71+
sudo swapon --show
72+
73+
# macOS manages swap dynamically via dynamic_pager; ensure it is running and report state.
74+
- name: Configure swap (macOS)
75+
shell: bash
76+
if: runner.os == 'macOS'
77+
run: |
78+
set -euxo pipefail
79+
sudo mkdir -p /private/var/vm
80+
if ! pgrep -x dynamic_pager >/dev/null; then
81+
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist || true
82+
fi
83+
sysctl vm.swapusage || true
84+
85+
# Windows manages the pagefile dynamically by default, and changing its size requires a
86+
# reboot to take effect (not practical within a single job). Log the current state only.
87+
- name: Log pagefile (Windows)
88+
shell: pwsh
89+
if: runner.os == 'Windows'
90+
run: |
91+
$ErrorActionPreference = 'Continue'
92+
Get-CimInstance -ClassName Win32_PageFileUsage | Format-List Name, AllocatedBaseSize, CurrentUsage, PeakUsage
93+
Get-CimInstance -ClassName Win32_PageFileSetting | Format-List Name, InitialSize, MaximumSize
94+
6295
- name: Show disk free (after)
6396
shell: bash
6497
run: df -h || true

.github/workflows/publish.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,11 @@ jobs:
6565
continue-on-error: true
6666
env:
6767
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
68+
- name: Publish runtime-macros
69+
run: cargo publish --manifest-path runtime/macros/Cargo.toml
70+
continue-on-error: true
71+
env:
72+
CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }}
6873
- name: Publish runtime
6974
run: cargo publish --manifest-path runtime/Cargo.toml
7075
continue-on-error: true

Cargo.lock

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

Cargo.toml

Lines changed: 70 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ members = [
1616
"parallel",
1717
"resolver",
1818
"runtime",
19+
"runtime/macros",
1920
"storage",
2021
"stream",
2122
"invariants",
@@ -104,6 +105,7 @@ commonware-p2p = { version = "2026.4.0", path = "p2p" }
104105
commonware-parallel = { version = "2026.4.0", path = "parallel", default-features = false }
105106
commonware-resolver = { version = "2026.4.0", path = "resolver" }
106107
commonware-runtime = { version = "2026.4.0", path = "runtime" }
108+
commonware-runtime-macros = { version = "2026.4.0", path = "runtime/macros" }
107109
commonware-storage = { version = "2026.4.0", path = "storage", default-features = false }
108110
commonware-stream = { version = "2026.4.0", path = "stream" }
109111
commonware-utils = { version = "2026.4.0", path = "utils", default-features = false }
@@ -114,8 +116,9 @@ criterion = "0.7.0"
114116
crossbeam-queue = "0.3.12"
115117
crossterm = "0.29.0"
116118
ctutils = "0.3.1"
119+
curve25519-dalek = "4.1.3"
117120
ecdsa = { version = "0.16.9", default-features = false }
118-
ed25519-consensus = { version = "2.1.0", default-features = false }
121+
ed25519-consensus = "2.1.0"
119122
ed25519-zebra = "4.1.0"
120123
either = "1.13.0"
121124
futures = "0.3.31"
@@ -194,3 +197,69 @@ debug = true
194197
# Although overflow checks are enabled by default in "test", we explicitly
195198
# enable them here for clarity.
196199
overflow-checks = true
200+
201+
[profile.test.package.curve25519-dalek]
202+
opt-level = 3
203+
204+
[profile.test.package.aws-lc-rs]
205+
opt-level = 3
206+
207+
[profile.test.package.aws-lc-sys]
208+
opt-level = 3
209+
210+
[profile.test.package.blake3]
211+
opt-level = 3
212+
213+
[profile.test.package.blst]
214+
opt-level = 3
215+
216+
[profile.test.package.chacha20poly1305]
217+
opt-level = 3
218+
219+
[profile.test.package.crc]
220+
opt-level = 3
221+
222+
[profile.test.package.crc-fast]
223+
opt-level = 3
224+
225+
[profile.test.package.ctutils]
226+
opt-level = 3
227+
228+
[profile.test.package.crypto-bigint]
229+
opt-level = 3
230+
231+
[profile.test.package.ecdsa]
232+
opt-level = 3
233+
234+
[profile.test.package.elliptic-curve]
235+
opt-level = 3
236+
237+
[profile.test.package.num-bigint]
238+
opt-level = 3
239+
240+
[profile.test.package.num-integer]
241+
opt-level = 3
242+
243+
[profile.test.package.num-rational]
244+
opt-level = 3
245+
246+
[profile.test.package.num-traits]
247+
opt-level = 3
248+
249+
[profile.test.package.p256]
250+
opt-level = 3
251+
252+
[profile.test.package.primeorder]
253+
opt-level = 3
254+
255+
[profile.test.package.rand_chacha]
256+
opt-level = 3
257+
258+
[profile.test.package.reed-solomon-simd]
259+
opt-level = 3
260+
261+
[profile.test.package.sha2]
262+
opt-level = 3
263+
264+
[profile.test.package.x25519-dalek]
265+
opt-level = 3

broadcast/Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ commonware-macros = { workspace = true, features = ["std"] }
2020
commonware-p2p.workspace = true
2121
commonware-runtime = { workspace = true, features = ["test-utils"] }
2222
commonware-utils.workspace = true
23-
prometheus-client.workspace = true
2423
thiserror.workspace = true
2524
tracing.workspace = true
2625

broadcast/src/buffered/engine.rs

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
use super::{metrics, Config, Mailbox, Message};
2-
use crate::buffered::metrics::SequencerLabel;
32
use commonware_codec::Codec;
43
use commonware_cryptography::{Digestible, PublicKey};
54
use commonware_macros::select_loop;
@@ -9,7 +8,7 @@ use commonware_p2p::{
98
};
109
use commonware_runtime::{
1110
spawn_cell,
12-
telemetry::metrics::status::{CounterExt, GaugeExt, Status},
11+
telemetry::metrics::{status::Status, GaugeExt},
1312
BufferPooler, Clock, ContextCell, Handle, Metrics, Spawner,
1413
};
1514
use commonware_utils::{
@@ -104,7 +103,7 @@ where
104103
// Metrics
105104
////////////////////////////////////////
106105
/// Metrics
107-
metrics: metrics::Metrics,
106+
metrics: metrics::Metrics<P>,
108107
}
109108

110109
impl<E, P, M, D> Engine<E, P, M, D>
@@ -223,10 +222,7 @@ where
223222
};
224223

225224
trace!(?peer, "network");
226-
self.metrics
227-
.peer
228-
.get_or_create(&SequencerLabel::from(&peer))
229-
.inc();
225+
self.metrics.peer.get_or_create_by(&peer).inc();
230226
self.handle_network(peer, msg);
231227
},
232228
}

0 commit comments

Comments
 (0)