teptris 0.2.49-s390x-linux → 0.2.51-s390x-linux

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: b72e68daff45d9c5b094bc8c97eee29afb76f286f55a30f4d2278f1d7a1fe6f8
4
- data.tar.gz: e4a01e1194bfbf77a97b1810bf8e164c36e6cf691842cdf5a59374b4392f0237
3
+ metadata.gz: 64b20fc2d666d4d1aec6e75932c5bc84a94614723ea821425c6cb562fdfaf447
4
+ data.tar.gz: 5a246f7b353dc1dbe6f98d398d557a5b4894522d1972ccf05d6bc7217a53dd58
5
5
  SHA512:
6
- metadata.gz: 22400c9c1875b61c2ee3663870f87a2b204638a3911f9b3164d9ea53ee5f88c5f555b9be0b6d28c8d95fff491016ee3803ed35e6e1283e71e5de7f24baaff51a
7
- data.tar.gz: 52b10b4d490f0fa604a535f13ef0e46fb646692315e2d8460b46e1b59d2c983b4322438264809cf6be7289f35e57e7835e2fe65e7bdf1c463a603cd9a9a4a974
6
+ metadata.gz: 545bc1d5f9924a3165eca130d1a3b52d9edd880ec4fc8a7230dce7b49054c658da838dec4589e78628fb498eeab91bd04657e243b5551ce463387e2fa1946972
7
+ data.tar.gz: 0c251d93e222b3064814f0d9ecde30751ce6a3cc00aa6ebf66bf9368aee2ab726c0e0d51645c11d18f0e5124210d4543a6edb19e6c0413ea02f90418d719fe2a
@@ -178,7 +178,12 @@ static VALUE obj_from_node(const teptris_node *n, unsigned flags,
178
178
  switch (teptris_node_kind(n)) {
179
179
  case TEPTRIS_TABLE: {
180
180
  size_t len = teptris_node_table_length(n);
181
+ #if RUBY_API_VERSION_MAJOR > 3 || \
182
+ (RUBY_API_VERSION_MAJOR == 3 && RUBY_API_VERSION_MINOR >= 2)
183
+ VALUE h = rb_hash_new_capa((long)len);
184
+ #else
181
185
  VALUE h = rb_hash_new();
186
+ #endif
182
187
  for (size_t i = 0; i < len; i++) {
183
188
  teptris_view key;
184
189
  const teptris_node *v = teptris_node_table_at(n, i, &key);
@@ -1040,6 +1045,9 @@ static VALUE ext_load_batch(int argc, VALUE *argv, VALUE self) {
1040
1045
  }
1041
1046
 
1042
1047
  void Init_teptris_ext(void) {
1048
+ /* every module static is written once here and read-only after;
1049
+ * call state (key cache, arenas, types) is per-object or per-call */
1050
+ rb_ext_ractor_safe(true);
1043
1051
  VALUE m = rb_define_module("TeptrisExt");
1044
1052
  rb_define_module_function(m, "load", ext_load, -1);
1045
1053
  rb_define_module_function(m, "load_lazy", ext_load_lazy, 1);
Binary file
Binary file
Binary file
@@ -1,3 +1,3 @@
1
1
  module Teptris
2
- VERSION = "0.2.49"
2
+ VERSION = "0.2.51"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: teptris
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.49
4
+ version: 0.2.51
5
5
  platform: s390x-linux
6
6
  authors:
7
7
  - teptris contributors
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-09-26 00:00:00.000000000 Z
11
+ date: 2026-09-30 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: A native C extension over libteptris, a C99 TOML 1.1 parser/emitter.
14
14
  API shape mirrors the tomlib gem.