beni 0.11.0 → 0.13.0

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.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +63 -0
  3. data/README.md +8 -5
  4. data/lib/beni/version.rb +1 -1
  5. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 18eb9b13e83616649552b4bf7a560f745187baff1fb89766aa0ce28a4085c97f
4
- data.tar.gz: 701833de6976853a71f4facf1375196f0fd1eb36669176cd20d0f7227171abb3
3
+ metadata.gz: d6d668b6f67ab7af2c0bd498ae991426eafaa8f18766191879ef994dd77d7be2
4
+ data.tar.gz: c21ea30a1f5e43b7570282aa29dbd3e10712209998544a4c0ccb50aaa7b5868f
5
5
  SHA512:
6
- metadata.gz: 4fbefdb61247ef7ca05e3587a77da36ec7da47af70a8f758864a56558621173e4570f4854010a39e1e9669f22e2cdab313d6a602ff79210a14d8cfbb0f1c8bb7
7
- data.tar.gz: ab17c324ce5f7d4db36428a56479cd65e3079898c52e57912f2bf43cb00a4abc507cbad9f785e5dd26cca5e813f8032b2a09ccbb4204d7523b8353089e0f141e
6
+ metadata.gz: fcca13aadd01ff0de6f657aff014b57e137b2615bf6a70a25c2e9886ec9f889060903181d53376f0d7de0d4419fb87a4b80a08a3d4341fdbe8eee7f0c78e731c
7
+ data.tar.gz: a059e6e170582881583f7ad1e78f1bfe5d5a05244a3cd379477f5743c12ce55f173d92383650b5177b72172064f55ef6fc2134e0b9189003c4bcb868dae13c18
data/CHANGELOG.md CHANGED
@@ -1,5 +1,68 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.13.0](https://github.com/elct9620/beni/compare/v0.12.0...v0.13.0) (2026-09-08)
4
+
5
+
6
+ ### ⚠ BREAKING CHANGES
7
+
8
+ * **beni:** `Ccontext` and `Mrb::load_string` now require the `compiler` feature. A consumer on default features is unaffected; one already passing `default-features = false` loses them.
9
+ * **beni:** give a context-free load the same compile-error contract
10
+ * **beni:** hand a parse failure back with the location it happened at
11
+ * **beni-sys:** a host build with no archive discovery variable set now fails instead of compiling a placeholder surface, and dependents no longer receive DEP_MRUBY_LINKED.
12
+
13
+ ### Features
14
+
15
+ * **beni:** answer a Proc's compiled form as bytecode ([2e48579](https://github.com/elct9620/beni/commit/2e485795166bf41882611cb09ba07c5755ef4ba6))
16
+ * **beni:** give a context-free load the same compile-error contract ([e047c27](https://github.com/elct9620/beni/commit/e047c275c0a91d21b4baef8d713bc08265628e85))
17
+ * **beni:** hand a parse failure back with the location it happened at ([6738fda](https://github.com/elct9620/beni/commit/6738fda7035fabe06136036676bb7e0abe240fc0))
18
+ * **beni:** keep the warnings a load produced on its context ([c5bee4b](https://github.com/elct9620/beni/commit/c5bee4b061a7051828461722df1e70cf4a06cabf))
19
+ * **beni:** let a caller stop between the compile and the run ([247616d](https://github.com/elct9620/beni/commit/247616d99df5c57ec8e491bb2dc97b2c0055fcd4))
20
+ * **beni:** let a consumer decline the compiler ([bf1ae17](https://github.com/elct9620/beni/commit/bf1ae17ef79dc95c429650544b0631dfaad331fe))
21
+ * **beni:** read an error's backtrace frames in one call ([27d1d47](https://github.com/elct9620/beni/commit/27d1d473a4ed33da9624f269c75b1d3b52036ccd))
22
+ * **docs:** generate the bindings a documentation build reads ([63c5a27](https://github.com/elct9620/beni/commit/63c5a27a75bc805c92cd3c92364468931c4be6b4))
23
+ * **surface:** make a capability feature an axis of the drift net ([ff7026f](https://github.com/elct9620/beni/commit/ff7026fbc356b74c923ff706457c6b0158ac2134))
24
+
25
+
26
+ ### Bug Fixes
27
+
28
+ * **docs:** carry the documentation host's own bindings ([5e0b3c5](https://github.com/elct9620/beni/commit/5e0b3c52e33b0a98575e55c996b11255bd0284d0))
29
+ * **docs:** generate the bindings where the documentation host builds ([f04a57b](https://github.com/elct9620/beni/commit/f04a57b6fb5940271cd570cbef2079ec50f96ee0))
30
+ * **docs:** generate the documentation bindings instead of pinning them ([dd07492](https://github.com/elct9620/beni/commit/dd07492bae642aa18089922517c0556289914154))
31
+ * **hooks:** fail the lint gate when the archive is missing ([2c036c9](https://github.com/elct9620/beni/commit/2c036c9167bd8bf066d5be991ad33153dd0791b4))
32
+ * **rust:** compile the documentation build before rendering it ([3b957df](https://github.com/elct9620/beni/commit/3b957df2f959f7f976622d812f2ead88d0aa1eaa))
33
+ * **tasks:** fail the wasm legs when the target is not installed ([a8826bd](https://github.com/elct9620/beni/commit/a8826bdcdec5d1ef10b419c8252bde68883e9de3))
34
+
35
+
36
+ ### Code Refactoring
37
+
38
+ * **beni-sys:** build against an archive or not at all ([c7de9f6](https://github.com/elct9620/beni/commit/c7de9f685093d0e3b97a3b4094cad83666610fcf))
39
+
40
+ ## [0.12.0](https://github.com/elct9620/beni/compare/v0.11.0...v0.12.0) (2026-09-07)
41
+
42
+
43
+ ### ⚠ BREAKING CHANGES
44
+
45
+ * **beni-sys:** check the toolchain root against the one that built it
46
+ * **beni-sys:** link what the archive's sidecar names
47
+ * **beni:** require a carried payload to cross threads
48
+
49
+ ### Features
50
+
51
+ * **beni-sys:** check the toolchain root against the one that built it ([c8799ae](https://github.com/elct9620/beni/commit/c8799aedff194819d1ef5b1e9ebbdefcc95344e7))
52
+ * **beni-sys:** link what the archive's sidecar names ([e694a2d](https://github.com/elct9620/beni/commit/e694a2d03199f86982e776e3c39dafb1c95bcaaa))
53
+ * **beni-sys:** refuse an archive older than the crates build against ([46d5830](https://github.com/elct9620/beni/commit/46d583041f3789a64e5e5cf4385e3666304caa8e))
54
+ * **beni:** carry an interpreter between threads ([e439835](https://github.com/elct9620/beni/commit/e4398358c25a2a167c4f90e6becd8da5260c9db7))
55
+ * **beni:** require a carried payload to cross threads ([ee8a0b7](https://github.com/elct9620/beni/commit/ee8a0b7303eb7c6ed651b26aad4c30b933661c3c))
56
+ * **beni:** state that a data-type descriptor crosses threads ([95b6d2f](https://github.com/elct9620/beni/commit/95b6d2f02c823b9b79cdfee449aad5f87f54ba99))
57
+ * **beni:** state that a typed handle crosses threads ([c75436a](https://github.com/elct9620/beni/commit/c75436a02db5ff6d23363b2e38499e93c8fb62e2))
58
+
59
+
60
+ ### Bug Fixes
61
+
62
+ * **beni-sys:** compile the shims with the compiler their flags were written for ([bb3a3ea](https://github.com/elct9620/beni/commit/bb3a3ea57096c84d4a304cc16f469730191feb51))
63
+ * **beni-sys:** fail on a link set the sidecar states in another shape ([a68f3e9](https://github.com/elct9620/beni/commit/a68f3e919adc5c0cd944b9863677a126a7bd3ca0))
64
+ * **beni-sys:** hold binding generation to what the headers declare ([1829b20](https://github.com/elct9620/beni/commit/1829b20c959aa1875578589651730d8d94fc360d))
65
+
3
66
  ## [0.11.0](https://github.com/elct9620/beni/compare/v0.10.0...v0.11.0) (2026-09-04)
4
67
 
5
68
 
data/README.md CHANGED
@@ -90,11 +90,14 @@ fn main() {
90
90
  }
91
91
  ```
92
92
 
93
- With no archive discovery variable set, a host build compiles in
94
- placeholder mode: `cargo check` passes, no FFI surface is exported, and
95
- `Mrb::open` returns an error — so `beni` is safe to take as a transitive
96
- dependency. Any C API the typed wrapper does not cover stays reachable
97
- through the unsafe `beni::sys` escape hatch.
93
+ An interpreter is carried between threads but never reached from two at
94
+ once: `Mrb` is `Send` and not `Sync`, so handing one to another thread
95
+ compiles while sharing it needs a `Mutex` of your own.
96
+
97
+ Every build needs the archive: with no discovery variable set the build
98
+ fails naming the ones it looked for, rather than handing you a crate
99
+ whose every call aborts later. Any C API the typed wrapper does not
100
+ cover stays reachable through the unsafe `beni::sys` escape hatch.
98
101
 
99
102
  ### Cross-compile for wasm32-wasip1
100
103
 
data/lib/beni/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Beni
4
- VERSION = "0.11.0"
4
+ VERSION = "0.13.0"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beni
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.0
4
+ version: 0.13.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aotokitsuruya