Skip to content

Commit ca96fc0

Browse files
committed
Update rand
1 parent f25a331 commit ca96fc0

File tree

14 files changed

+45
-43
lines changed

14 files changed

+45
-43
lines changed

caw/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ caw_midi_udp_widgets_app_lib = { version = "0.1", path = "../midi-udp-widgets-ap
4040

4141
[dev-dependencies]
4242
anyhow = "1.0"
43-
rand = "0.8"
43+
rand = "0.9"
4444
env_logger = "0.11"
4545
clap = { version = "4", features = ["derive"] }
4646

interactive/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ caw_utils = { version = "0.4", path = "../utils" }
3030
caw_audio_file = { version = "0.4", path = "../audio-file" }
3131
caw_widgets = { path = "../widgets" }
3232
env_logger = "0.11"
33-
rand = "0.8"
33+
rand = "0.9"
3434
wide = "0.7"
3535
clap = { version = "4", features = ["derive"] }
3636

interactive/examples/harmonics_oscillographics.rs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
11
use caw_core::*;
22
use caw_interactive::{
3-
window::{Visualization, Window},
43
Input,
4+
window::{Visualization, Window},
55
};
66
use caw_modules::*;
77
use rand::Rng;
88
use rgb_int::Rgb24;
99
use std::{
1010
sync::{
11-
mpsc::{self, Receiver, Sender},
1211
Arc, RwLock,
12+
mpsc::{self, Receiver, Sender},
1313
},
1414
thread,
1515
};
1616

1717
fn signal() -> Sig<impl SigT<Item = f32>> {
1818
let base_freq_hz = 50.0;
19-
let mut rng = rand::thread_rng();
20-
let freq_hz =
21-
(rng.gen_range(1..=3) as f32 * base_freq_hz) + (rng.gen::<f32>() * 0.1);
22-
let lfo =
23-
oscillator(Saw, rng.gen::<f32>() * 0.1).build() * rng.gen::<f32>();
19+
let mut rng = rand::rng();
20+
let freq_hz = (rng.random_range(1..=3) as f32 * base_freq_hz)
21+
+ (rng.random::<f32>() * 0.1);
22+
let lfo = oscillator(Saw, rng.random::<f32>() * 0.1).build()
23+
* rng.random::<f32>();
2424
oscillator(Saw, freq_hz + lfo).build() * 0.2
2525
}
2626

@@ -62,7 +62,7 @@ struct MultithreadedSignal {
6262
}
6363

6464
impl MultithreadedSignal {
65-
fn new(num_threads: usize, input: Input) -> Sig<impl SigT<Item = f32>> {
65+
fn new_sig(num_threads: usize, input: Input) -> Sig<impl SigT<Item = f32>> {
6666
let mut thread_info = Vec::new();
6767
for _ in 0..num_threads {
6868
let (send_query, recv_query) = mpsc::channel();
@@ -132,7 +132,7 @@ fn main() -> anyhow::Result<()> {
132132
let thresh = 10.0;
133133
let input = window.input();
134134
let sig = Stereo::new_fn(|| {
135-
MultithreadedSignal::new(6, input.clone())
135+
MultithreadedSignal::new_sig(6, input.clone())
136136
.map(|x| x.clamp(-thresh, thresh))
137137
});
138138
window.play_stereo(sig, Default::default())

interactive/examples/many_oscillators_multithreaded_visualized.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ use rand::Rng;
44
use rgb_int::Rgb24;
55
use std::{
66
sync::{
7-
mpsc::{self, Receiver, Sender},
87
Arc, RwLock,
8+
mpsc::{self, Receiver, Sender},
99
},
1010
thread,
1111
};
@@ -34,11 +34,11 @@ impl SigT for SawOscillatorWide {
3434

3535
fn osc_wide(freq: f32x8) -> Sig<impl SigT<Item = f32>> {
3636
let num_steps = 3.0;
37-
let mut rng = rand::thread_rng();
37+
let mut rng = rand::rng();
3838
Sig(SawOscillatorWide {
3939
freq,
4040
state_01: f32x8::splat(
41-
(rng.gen::<f32>() * num_steps).floor() / num_steps,
41+
(rng.random::<f32>() * num_steps).floor() / num_steps,
4242
) * 0.1,
4343
buf: Vec::new(),
4444
})

interactive/src/input.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
pub use caw_computer_keyboard::{Key, Keyboard as KeyboardGeneric};
2-
use caw_core::{sig_var, Sig, SigT, SigVar};
2+
use caw_core::{Sig, SigT, SigVar, sig_var};
33
use sdl2::{keyboard::Scancode, mouse::MouseButton as SdlMouseButton};
44

55
#[derive(Debug, Clone, Copy)]
@@ -146,7 +146,7 @@ impl Input {
146146
self.mouse.clone()
147147
}
148148

149-
pub fn key(&self, key: Key) -> Sig<impl SigT<Item = bool>> {
149+
pub fn key(&self, key: Key) -> Sig<impl SigT<Item = bool> + use<>> {
150150
self.keyboard.get(key)
151151
}
152152

@@ -157,11 +157,11 @@ impl Input {
157157
self.mouse.button(mouse_button)
158158
}
159159

160-
pub fn x_01(&self) -> Sig<impl SigT<Item = f32>> {
160+
pub fn x_01(&self) -> Sig<impl SigT<Item = f32> + use<>> {
161161
self.mouse.x_01()
162162
}
163163

164-
pub fn y_01(&self) -> Sig<impl SigT<Item = f32>> {
164+
pub fn y_01(&self) -> Sig<impl SigT<Item = f32> + use<>> {
165165
self.mouse.y_01()
166166
}
167167
}

keyboard/Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,12 @@ documentation = "https://docs.rs/caw_keyboard"
1010
edition = "2024"
1111

1212
[features]
13-
web = ["getrandom/js"]
13+
web = ["getrandom/wasm_js"]
1414

1515
[dependencies]
1616
caw_core = { version = "0.5", path = "../core" }
1717
smallvec = ">=1.6.1,<2"
1818
log = "0.4"
19-
rand = "0.8"
20-
getrandom = "0.2"
19+
rand = "0.9"
20+
getrandom = "0.3"
2121
itertools = "0.14"

keyboard/src/event.rs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
use crate::{
2+
MonoVoice, Note,
23
chord::{Chord, Inversion},
3-
polyphony, MonoVoice, Note,
4+
polyphony,
45
};
56
use caw_core::{Buf, ConstBuf, Sig, SigCtx, SigT};
67
use itertools::izip;
7-
use rand::{rngs::StdRng, Rng, SeedableRng};
8-
use smallvec::{smallvec, SmallVec};
8+
use rand::{Rng, SeedableRng, rngs::StdRng};
9+
use smallvec::{SmallVec, smallvec};
910
use std::{cmp::Ordering, collections::HashSet};
1011

1112
/// A key being pressed or released
@@ -392,7 +393,7 @@ impl ArpState {
392393
index: 0,
393394
current_note: None,
394395
ascending: true,
395-
rng: StdRng::from_entropy(),
396+
rng: StdRng::from_os_rng(),
396397
}
397398
}
398399

@@ -465,7 +466,8 @@ impl ArpState {
465466
}
466467
}
467468
Random => {
468-
let index = self.rng.gen_range(0..self.store.entries.len());
469+
let index =
470+
self.rng.random_range(0..self.store.entries.len());
469471
self.store.entries[index].note
470472
}
471473
Indices(indices) => {

modules/Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,13 @@ documentation = "https://docs.rs/caw_modules"
1010
edition = "2024"
1111

1212
[features]
13-
web = ["getrandom/js"]
13+
web = ["getrandom/wasm_js"]
1414

1515
[dependencies]
1616
caw_core = { version = "0.5", path = "../core" }
1717
caw_builder_proc_macros = { version = "0.1", path = "../builder-proc-macros" }
1818
itertools = "0.14"
1919
wide = "0.7"
20-
rand = "0.8"
20+
rand = "0.9"
2121
log = "0.4"
22-
getrandom = "0.2"
22+
getrandom = "0.3"

modules/src/super_saw.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use caw_builder_proc_macros::builder;
22
use caw_core::{Buf, Sig, SigCtx, SigT};
33
use itertools::izip;
4-
use rand::{rngs::StdRng, Rng, SeedableRng};
4+
use rand::{Rng, SeedableRng, rngs::StdRng};
55
use wide::f32x8;
66

77
#[derive(Debug, Clone, Copy)]
@@ -119,16 +119,16 @@ where
119119
}
120120
}
121121
SuperSawInit::Random => {
122-
let mut rng = StdRng::from_entropy();
122+
let mut rng = StdRng::from_os_rng();
123123
for (x, mask) in state_01.iter_mut().zip(mask.iter()) {
124-
*x = rng.gen::<[f32; 8]>().into();
124+
*x = rng.random::<[f32; 8]>().into();
125125
*x *= mask;
126126
}
127127
}
128128
SuperSawInit::RandomWithSeed(seed) => {
129129
let mut rng = StdRng::seed_from_u64(seed);
130130
for (x, mask) in state_01.iter_mut().zip(mask.iter()) {
131-
*x = rng.gen::<[f32; 8]>().into();
131+
*x = rng.random::<[f32; 8]>().into();
132132
*x *= mask;
133133
}
134134
}

player/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ log = "0.4"
2121
[dev-dependencies]
2222
caw_modules = { version = "0.4", path = "../modules" }
2323
env_logger = "0.11"
24-
rand = "0.8"
24+
rand = "0.9"
2525

2626
[[example]]
2727
name = "saw"

0 commit comments

Comments
 (0)