chrono_machines 0.8.0 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c6cbe05e9e40deb1bf5b846c57800d1f4439caf6cd753883562a7f911a453640
4
- data.tar.gz: ae0a5c30e033a6bdd974ff9ea8bbac5220f2aa316a9b6724897cefcdd23971cf
3
+ metadata.gz: 8784b5114cde3b48cafa9ee9dff5fe69778795235610ecce63a44c73204c28f7
4
+ data.tar.gz: b87ddb52e946b220b0a2552647c85c928aa6b2a0e65e513005a40f1fbfd9e33a
5
5
  SHA512:
6
- metadata.gz: 3d99472379c0ff2a7adf1a4035698e6d7f18f5e763096f389bb8ccb12d273a55e97bd4ffc62cca04b52436ed64f8cd294c76a8aacd6a0ca11982df7b9ee7a07c
7
- data.tar.gz: 7e6d0d99d5c074b978f9c3595245c1aa37ffaaf214e74d6ccbb75d16436c8bcd76383ca6d92abb265caf8cd359099e289d7d20cf2b3d0caf0d2e2a21db009b5b
6
+ metadata.gz: 1c04099978047a09d84ad12e52ec228bf632063f228cc227ca993012044eec481956703bdac03e57a81995ebec87b46c515e3859d2095262c56d866be94b3b64
7
+ data.tar.gz: 387168ff2aa02a535b1c2e25ce9a2541afa535786b50e8cd28bce5cea56deee20a3fedd9255b74f886948f3b4d567fd1f39a13d0e5b7d13ecab8e67a8a49a7ae
data/CHANGELOG.md CHANGED
@@ -1,5 +1,19 @@
1
1
  ## [Unreleased]
2
2
 
3
+ ## [0.9.1](https://github.com/seuros/chrono_machines/compare/chrono_machines/v0.9.0...chrono_machines/v0.9.1) (2026-10-05)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * **build:** skip host compile when packaging a cross gem ([5d5b61d](https://github.com/seuros/chrono_machines/commit/5d5b61da68a0815ef3a30f6fb731af844cbd45ee))
9
+
10
+ ## [0.9.0](https://github.com/seuros/chrono_machines/compare/chrono_machines/v0.8.0...chrono_machines/v0.9.0) (2026-10-05)
11
+
12
+
13
+ ### Features
14
+
15
+ * require Ruby 4.0, magnus 0.9, Ractor-safe native ext ([316d6f5](https://github.com/seuros/chrono_machines/commit/316d6f5e3de0f58e33d0a124eec4efafefb78cab))
16
+
3
17
  ## [0.8.0](https://github.com/seuros/chrono_machines/compare/chrono_machines/v0.5.0...chrono_machines/v0.8.0) (2026-09-14)
4
18
 
5
19
 
data/Cargo.lock CHANGED
@@ -58,9 +58,9 @@ checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
58
58
 
59
59
  [[package]]
60
60
  name = "chacha20"
61
- version = "0.10.0"
61
+ version = "0.10.2"
62
62
  source = "registry+https://github.com/rust-lang/crates.io-index"
63
- checksum = "6f8d983286843e49675a4b7a2d174efe136dc93a18d69130dd18198a6c167601"
63
+ checksum = "65c35e4b699c7e15ccbe7ee35c005e4fc0a278d22238a2857e6ce2dadeda1b06"
64
64
  dependencies = [
65
65
  "cfg-if",
66
66
  "cpufeatures",
@@ -69,7 +69,7 @@ dependencies = [
69
69
 
70
70
  [[package]]
71
71
  name = "chrono-machines"
72
- version = "0.6.0"
72
+ version = "0.8.0"
73
73
  dependencies = [
74
74
  "rand",
75
75
  "tokio",
@@ -77,7 +77,7 @@ dependencies = [
77
77
 
78
78
  [[package]]
79
79
  name = "chrono_machines_native"
80
- version = "0.5.0"
80
+ version = "0.9.0"
81
81
  dependencies = [
82
82
  "chrono-machines",
83
83
  "magnus",
@@ -233,9 +233,9 @@ checksum = "953f07c43838f8e6f9758cab68bf5bed85465e7587ebe0b823f1bcd81978ad3a"
233
233
 
234
234
  [[package]]
235
235
  name = "magnus"
236
- version = "0.8.2"
236
+ version = "0.9.2"
237
237
  source = "registry+https://github.com/rust-lang/crates.io-index"
238
- checksum = "3b36a5b126bbe97eb0d02d07acfeb327036c6319fd816139a49824a83b7f9012"
238
+ checksum = "b9068710e00d21be762edca59b9c4c8946dbdb29820d4f76ad559afea07982c9"
239
239
  dependencies = [
240
240
  "magnus-macros",
241
241
  "rb-sys",
@@ -245,9 +245,9 @@ dependencies = [
245
245
 
246
246
  [[package]]
247
247
  name = "magnus-macros"
248
- version = "0.8.0"
248
+ version = "0.9.1"
249
249
  source = "registry+https://github.com/rust-lang/crates.io-index"
250
- checksum = "47607461fd8e1513cb4f2076c197d8092d921a1ea75bd08af97398f593751892"
250
+ checksum = "9dafde2eeb66f090e0f326112323eb8324b12cb32b5d1210e541d3df6b0ce77e"
251
251
  dependencies = [
252
252
  "proc-macro2",
253
253
  "quote",
@@ -318,9 +318,9 @@ checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf"
318
318
 
319
319
  [[package]]
320
320
  name = "rand"
321
- version = "0.10.1"
321
+ version = "0.10.3"
322
322
  source = "registry+https://github.com/rust-lang/crates.io-index"
323
- checksum = "d2e8e8bcc7961af1fdac401278c6a831614941f6164ee3bf4ce61b7edb162207"
323
+ checksum = "65c9fb96cbc91e3478eaae79a69fcd3f1ae4ad052e471fe6732fff548984b4af"
324
324
  dependencies = [
325
325
  "chacha20",
326
326
  "getrandom",
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "chrono_machines_native"
3
- version = "0.8.0"
3
+ version = "0.9.0"
4
4
  edition = "2024"
5
5
  authors = ["Abdelkader Boudih <terminale@gmail.com>"]
6
6
  license = "MIT"
@@ -14,9 +14,9 @@ crate-type = ["cdylib"]
14
14
 
15
15
  [dependencies]
16
16
  chrono-machines = { workspace = true, features = ["std"] }
17
- magnus = "0.8.2"
17
+ magnus = "0.9"
18
18
  rand = { workspace = true }
19
- rb-sys = { version = "0.9.117", default-features = false, features = ["stable-api-compiled-fallback"] }
19
+ rb-sys = { version = "0.9.124", default-features = false, features = ["stable-api-compiled-fallback"] }
20
20
 
21
21
  [features]
22
22
  default = ["std"]
@@ -106,6 +106,11 @@ fn apply_jitter(base: f64, jitter_factor: f64) -> f64 {
106
106
  /// Initialize the Ruby extension
107
107
  #[magnus::init]
108
108
  fn init(ruby: &Ruby) -> Result<(), Error> {
109
+ // Must precede every method definition: Ruby marks methods Ractor-safe as
110
+ // they are defined. The RNG is thread-local, so Ractors never share it.
111
+ // SAFETY: called on the loading thread during extension initialisation.
112
+ unsafe { rb_sys::rb_ext_ractor_safe(true) };
113
+
109
114
  // Create ChronoMachinesNative module
110
115
  let module = ruby.define_module("ChronoMachinesNative")?;
111
116
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ChronoMachines
4
- VERSION = '0.8.0'
4
+ VERSION = '0.9.1'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chrono_machines
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.9.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Abdelkader Boudih
@@ -79,14 +79,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
- version: 3.3.0
82
+ version: 4.0.0
83
83
  required_rubygems_version: !ruby/object:Gem::Requirement
84
84
  requirements:
85
85
  - - ">="
86
86
  - !ruby/object:Gem::Version
87
87
  version: '0'
88
88
  requirements: []
89
- rubygems_version: 3.6.9
89
+ rubygems_version: 4.0.20
90
90
  specification_version: 4
91
91
  summary: A robust Ruby gem for implementing retry mechanisms with exponential backoff
92
92
  and jitter.