kobako 0.11.2-x86_64-linux → 0.12.1-x86_64-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 +4 -4
- data/.release-please-manifest.json +1 -1
- data/CHANGELOG.md +31 -0
- data/data/kobako.wasm +0 -0
- data/lib/kobako/3.3/kobako.so +0 -0
- data/lib/kobako/3.4/kobako.so +0 -0
- data/lib/kobako/4.0/kobako.so +0 -0
- data/lib/kobako/codec/handle_walk.rb +6 -7
- data/lib/kobako/transport/dispatcher.rb +8 -10
- data/lib/kobako/version.rb +1 -1
- data/release-please-config.json +16 -1
- data/sig/kobako/transport/dispatcher.rbs +0 -2
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: cbd9774c84737000b2be506f6a0334702ed103889df9ac26008f174973cb048e
|
|
4
|
+
data.tar.gz: 48dcbc87ab4227394ffd0efe751b338ac8b957c5a4979c56e0ee8f6fdc98e033
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: f7eb01555a4d46ba57359a643e8c43a493f6ae0a8f05119df3f3c2ab2b679bb6f1f3a07f06d27735a0c77e2b0d0b22ffb41464b3b63d4ed71ce355666d7e7e0a
|
|
7
|
+
data.tar.gz: 7e21e70dd618e3c3996b68ee68e463b8f5902ee19ed3e6e93eff4ea48f8084779e2c27e72c7f057ea57856e00ad596796a803d92e2e15a6959b3177c69cd682a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{".":"0.
|
|
1
|
+
{".":"0.12.1","wasm/kobako-core":"0.6.0","wasm/kobako":"0.6.0","wasm/kobako-io":"0.6.0","wasm/kobako-json":"0.6.0","wasm/kobako-regexp":"0.6.0","wasm/kobako-baker":"0.6.0"}
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,36 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [0.12.1](https://github.com/elct9620/kobako/compare/v0.12.0...v0.12.1) (2026-06-27)
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
### Bug Fixes
|
|
7
|
+
|
|
8
|
+
* **spec:** resolve nested Handle dispatch arguments symmetric with B-37 ([bb4ca9a](https://github.com/elct9620/kobako/commit/bb4ca9a0fef0f17a6e97a63a3ee4a3784961fbe2))
|
|
9
|
+
* **transport:** resolve nested Handle dispatch arguments to host objects ([de5b233](https://github.com/elct9620/kobako/commit/de5b233a2750684ce1c6cceb3d718da1194eabc1))
|
|
10
|
+
|
|
11
|
+
## [0.12.0](https://github.com/elct9620/kobako/compare/v0.11.2...v0.12.0) (2026-06-26)
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
### Features
|
|
15
|
+
|
|
16
|
+
* **bench:** inject the Guest Binary into probes via KOBAKO_BENCH_WASM ([3408058](https://github.com/elct9620/kobako/commit/3408058f5a4319725863dd3bd1b305cc4609bbf8))
|
|
17
|
+
* **kobako-json:** classify generate values by native mruby type ([f8e5de3](https://github.com/elct9620/kobako/commit/f8e5de3a2bdc0234290101734f2cceff88058cd6))
|
|
18
|
+
* **spec:** specify the guest JSON capability (B-52/B-53, docs/json.md) ([b666d6f](https://github.com/elct9620/kobako/commit/b666d6fecc230eef0b01ae34cdb9eab2bbc6b153))
|
|
19
|
+
* **wasm:** compose the json and full Guest Binary variants ([002b16d](https://github.com/elct9620/kobako/commit/002b16d88ea7c9dbf0493185bbac757b782bc28d))
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Bug Fixes
|
|
23
|
+
|
|
24
|
+
* **bench:** correct results/baseline path depth after support dir move ([faf1d8a](https://github.com/elct9620/kobako/commit/faf1d8aaf185159edced2d421696c721da9ed15c))
|
|
25
|
+
* **spec:** classify Symbol as directly-encoded in JSON generate ([10a8671](https://github.com/elct9620/kobako/commit/10a867145ed8ccb0b0e2d8e61c0ae84ae0ef3399))
|
|
26
|
+
* **spec:** close the JSON Hash-key host-dispatch gap and refresh the anchor range ([aea1313](https://github.com/elct9620/kobako/commit/aea13133efc957c70f8ff3f77fd2164c634ebb86))
|
|
27
|
+
* **spec:** complete the JSON generate Hash-key partition and tighten wording ([b01a3f2](https://github.com/elct9620/kobako/commit/b01a3f26baf2e8364ff82a9d292b426444e0acd7))
|
|
28
|
+
* **spec:** keep B-52 from re-enumerating the JSON-carrying variants ([13a5723](https://github.com/elct9620/kobako/commit/13a57236e1b4b33c5e84caa8bb940a0b8560a6d0))
|
|
29
|
+
* **spec:** let pretty_generate own its layout instead of pinning CRuby ([bf78bf1](https://github.com/elct9620/kobako/commit/bf78bf1a8ab8e125f35eacf6e2151ec94f87d46b))
|
|
30
|
+
* **spec:** make the JSON depth bound consistent across parse and generate ([efdc535](https://github.com/elct9620/kobako/commit/efdc535f5e70f67efb8638abcd4b7b1881cedf35))
|
|
31
|
+
* **spec:** make variant pointers source-free and pin generate edge cases ([8aeeecd](https://github.com/elct9620/kobako/commit/8aeeecd674ba24f4caab3cc3ea4e905b182061b0))
|
|
32
|
+
* **spec:** note the full variant in regexp.md availability ([7e50f27](https://github.com/elct9620/kobako/commit/7e50f27a593ed8d8582f24961c8725fc252699b5))
|
|
33
|
+
|
|
3
34
|
## [0.11.2](https://github.com/elct9620/kobako/compare/v0.11.1...v0.11.2) (2026-06-24)
|
|
4
35
|
|
|
5
36
|
|
data/data/kobako.wasm
CHANGED
|
Binary file
|
data/lib/kobako/3.3/kobako.so
CHANGED
|
Binary file
|
data/lib/kobako/3.4/kobako.so
CHANGED
|
Binary file
|
data/lib/kobako/4.0/kobako.so
CHANGED
|
Binary file
|
|
@@ -8,8 +8,7 @@ module Kobako
|
|
|
8
8
|
# the host↔guest boundary. {deep_wrap} allocates a +Kobako::Handle+ for
|
|
9
9
|
# each non-wire-representable leaf on the host→guest +#run+ argument
|
|
10
10
|
# path; {deep_restore} resolves each wire-decoded Handle back to its
|
|
11
|
-
# host object on every guest→host value path
|
|
12
|
-
# result and the yield-block result alike. {representable?} is the
|
|
11
|
+
# host object on every guest→host value path. {representable?} is the
|
|
13
12
|
# by-value codec-type predicate that decides which leaves {deep_wrap}
|
|
14
13
|
# must wrap: the closed 12-entry wire type set
|
|
15
14
|
# ({docs/wire-codec.md}[link:../../../docs/wire-codec.md] § Type
|
|
@@ -82,11 +81,11 @@ module Kobako
|
|
|
82
81
|
# +Kobako::Handle+ leaf with the host-side object +handler+ resolves
|
|
83
82
|
# it to. The symmetric inverse of {deep_wrap}: that walk allocates objects
|
|
84
83
|
# into Handles on the host→guest argument path; this walk resolves
|
|
85
|
-
# Handles back to their objects
|
|
86
|
-
#
|
|
87
|
-
# descends through Array elements and Hash keys and
|
|
88
|
-
# structural level at a time; any non-Handle leaf passes
|
|
89
|
-
# unchanged.
|
|
84
|
+
# Handles back to their objects wherever a guest→host payload carries
|
|
85
|
+
# one — an invocation result, a yield-block result, or a dispatch
|
|
86
|
+
# argument. The walk descends through Array elements and Hash keys and
|
|
87
|
+
# values one structural level at a time; any non-Handle leaf passes
|
|
88
|
+
# through unchanged.
|
|
90
89
|
#
|
|
91
90
|
# +value+ is a decoded Ruby value (a Handle here is a wire-decoded
|
|
92
91
|
# +Kobako::Handle+, never a guest-forged one); +handler+ must
|
|
@@ -170,12 +170,14 @@ module Kobako
|
|
|
170
170
|
raise UndefinedTargetError, "method #{name.inspect} is not exposed to the guest"
|
|
171
171
|
end
|
|
172
172
|
|
|
173
|
-
#
|
|
174
|
-
#
|
|
175
|
-
#
|
|
176
|
-
#
|
|
173
|
+
# Resolve every Kobako::Handle in an argument — bare or nested in an
|
|
174
|
+
# Array / Hash — back to its host object before the dispatch reaches
|
|
175
|
+
# +public_send+, symmetric with the guest→host return path. A Handle id
|
|
176
|
+
# with no live entry surfaces as an unrecognized target.
|
|
177
177
|
def resolve_arg(value, handler)
|
|
178
|
-
|
|
178
|
+
Kobako::Codec::HandleWalk.deep_restore(value, handler)
|
|
179
|
+
rescue Kobako::SandboxError => e
|
|
180
|
+
raise UndefinedTargetError, e.message
|
|
179
181
|
end
|
|
180
182
|
|
|
181
183
|
# Resolve a Request target to the Ruby object the registry (or
|
|
@@ -190,7 +192,7 @@ module Kobako
|
|
|
190
192
|
when String
|
|
191
193
|
resolve_path(target, namespaces)
|
|
192
194
|
when Kobako::Handle
|
|
193
|
-
|
|
195
|
+
require_live_object!(target.id, handler)
|
|
194
196
|
end
|
|
195
197
|
end
|
|
196
198
|
|
|
@@ -200,10 +202,6 @@ module Kobako
|
|
|
200
202
|
raise UndefinedTargetError, e.message
|
|
201
203
|
end
|
|
202
204
|
|
|
203
|
-
def resolve_handle(handle, handler)
|
|
204
|
-
require_live_object!(handle.id, handler)
|
|
205
|
-
end
|
|
206
|
-
|
|
207
205
|
# Resolve +id+ through the Catalog::Handles. An unknown id
|
|
208
206
|
# surfaces as UndefinedTargetError.
|
|
209
207
|
def require_live_object!(id, handler)
|
data/lib/kobako/version.rb
CHANGED
data/release-please-config.json
CHANGED
|
@@ -74,6 +74,21 @@
|
|
|
74
74
|
}
|
|
75
75
|
]
|
|
76
76
|
},
|
|
77
|
+
"wasm/kobako-json": {
|
|
78
|
+
"component": "kobako-json",
|
|
79
|
+
"release-type": "rust",
|
|
80
|
+
"extra-files": [
|
|
81
|
+
{
|
|
82
|
+
"type": "toml",
|
|
83
|
+
"path": "/wasm/Cargo.lock",
|
|
84
|
+
"jsonpath": "$.package[?(@.name=='kobako-json')].version"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"type": "generic",
|
|
88
|
+
"path": "/wasm/kobako-json/README.md"
|
|
89
|
+
}
|
|
90
|
+
]
|
|
91
|
+
},
|
|
77
92
|
"wasm/kobako-baker": {
|
|
78
93
|
"component": "kobako-baker",
|
|
79
94
|
"release-type": "rust",
|
|
@@ -94,7 +109,7 @@
|
|
|
94
109
|
{
|
|
95
110
|
"type": "linked-versions",
|
|
96
111
|
"groupName": "kobako guest crates",
|
|
97
|
-
"components": ["kobako-core", "kobako-rs", "kobako-io", "kobako-regexp", "kobako-baker"]
|
|
112
|
+
"components": ["kobako-core", "kobako-rs", "kobako-io", "kobako-json", "kobako-regexp", "kobako-baker"]
|
|
98
113
|
}
|
|
99
114
|
],
|
|
100
115
|
"extra-files": [
|
|
@@ -30,8 +30,6 @@ module Kobako
|
|
|
30
30
|
|
|
31
31
|
def self?.resolve_path: (String path, Kobako::Catalog::Namespaces namespaces) -> untyped
|
|
32
32
|
|
|
33
|
-
def self?.resolve_handle: (Kobako::Handle handle, Kobako::Catalog::Handles handler) -> untyped
|
|
34
|
-
|
|
35
33
|
def self?.require_live_object!: (Integer id, Kobako::Catalog::Handles handler) -> untyped
|
|
36
34
|
|
|
37
35
|
def self?.encode_ok: (untyped value, Kobako::Catalog::Handles handler) -> String
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: kobako
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.12.1
|
|
5
5
|
platform: x86_64-linux
|
|
6
6
|
authors:
|
|
7
7
|
- Aotokitsuruya
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-06-
|
|
11
|
+
date: 2026-06-27 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: msgpack
|