Skip to content

Commit 78a5aca

Browse files
committed
chore: prepare version 0.17.0
1 parent 0b38d63 commit 78a5aca

3 files changed

Lines changed: 22 additions & 19 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 19 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,26 @@
11
# Changelog
22

3-
## Unreleased
3+
## 0.17.0 - 2026-10-03
44

55
- Publish RBS types for portable events, metric samples, actor diagnostics, and
66
event observers in `sig/public/telemetry.rbs`, and a `json_value` type for
77
message results and actor state. Observer blocks, diagnostics, and results now
88
type-check against these contracts instead of `untyped`.
9-
- `solid_objects.activation.started` now fires before the actor's `activate`
10-
hook. Before, it fired after a successful hook. The new
9+
- **Breaking:** `solid_objects.activation.started` now fires before the actor's
10+
`activate` hook. Before, it fired after a successful hook. The new
1111
`solid_objects.activation.completed` event takes that meaning, and
1212
`solid_objects.activation.failed` reports a failed hook. JavaScript changes
1313
the same events. Move a subscriber that reads `activation.started` as a
1414
finished activation to `activation.completed`.
15-
- Active Support payloads no longer carry `error_message`. This applies to
16-
`commit_action.failed`, `activation.deactivation_failed`,
15+
- **Breaking:** Active Support payloads no longer carry `error_message`. This
16+
applies to `commit_action.failed`, `activation.deactivation_failed`,
1717
`supervisor.monitor_failed`, `supervisor.retention_failed`,
1818
`supervisor.redrive_failed`, and `wake_up.failed`. The
1919
`solid_objects.worker.error` log entry also omits it. Each keeps
2020
`error_class`. Exception text can contain actor state, so JavaScript already
2121
reports only the error name.
2222

23-
- Rename `solid_objects.payload_broadcast_failed` to
23+
- **Breaking:** rename `solid_objects.payload_broadcast_failed` to
2424
`solid_objects.payload_broadcast.failed`, the dotted form that every other
2525
event uses. Update Active Support subscribers to the new name. The portable
2626
event names the payload `payload`.
@@ -45,19 +45,22 @@
4545
writers can finish on Rails 7.1 and 7.2. Preserve configured wait limits and
4646
synchronous deadlines; cover contention with a coordinated lock regression.
4747

48-
- Reject query and observable state mutation and staged durable work with
49-
terminal `QueryMutatedState` errors. Cover individual snapshot projections and
50-
preserve ordinary operations' already-staged work while reading projections,
51-
including replacements that leave the intent count unchanged.
48+
- **Breaking:** reject query and observable state mutation and staged durable
49+
work with terminal `QueryMutatedState` errors. Cover individual snapshot
50+
projections and preserve ordinary operations' already-staged work while
51+
reading projections, including replacements that leave the intent count
52+
unchanged.
5253
- Pin reserved JSON property names with shared Ruby/JS fixtures. Document the
5354
reminder-name limit difference and the authorized dead-transmit retry API.
5455

55-
- Reauthorize every message-reference status, result, and outcome read against
56-
the original invocation. Pass `authorization_context:` on every read.
57-
- Retain immutable JSON results for background and internal messages as well as
58-
synchronous calls. All operations now enforce result serialization and size
59-
limits; return `nil` explicitly when an operation does not need a result.
60-
`result` raises terminal rejection/failure errors; `outcome` exposes them as data.
56+
- **Breaking:** reauthorize every message-reference status, result, and outcome
57+
read against the original invocation. Pass `authorization_context:` on every
58+
read.
59+
- **Breaking:** retain immutable JSON results for background and internal
60+
messages as well as synchronous calls. All operations now enforce result
61+
serialization and size limits; return `nil` explicitly when an operation does
62+
not need a result. `result` raises terminal rejection/failure errors;
63+
`outcome` exposes them as data.
6164
- Preserve polling transition intervals in milliseconds and string reasons in
6265
portable telemetry. Pin transmit staging order and null-argument validation
6366
against the shared JavaScript contract.

‎Gemfile.lock‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
PATH
22
remote: .
33
specs:
4-
solid_objects (0.16.1)
4+
solid_objects (0.17.0)
55
actioncable (>= 7.1)
66
actionpack (>= 7.1)
77
actionview (>= 7.1)
@@ -384,7 +384,7 @@ CHECKSUMS
384384
rubocop-rails-omakase (1.1.0) sha256=2af73ac8ee5852de2919abbd2618af9c15c19b512c4cfc1f9a5d3b6ef009109d
385385
ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33
386386
securerandom (0.4.1) sha256=cc5193d414a4341b6e225f0cb4446aceca8e50d5e1888743fac16987638ea0b1
387-
solid_objects (0.16.1)
387+
solid_objects (0.17.0)
388388
sqlite3 (2.9.5-aarch64-linux-gnu) sha256=78075b6337d3d182c6d2b4691049ed45cd220826160c9ea18946bf6a1de200dc
389389
sqlite3 (2.9.5-aarch64-linux-musl) sha256=18c801185deb4adc01ddb281e8f672a39e3d1729979ca91e39439cd3eac0402d
390390
sqlite3 (2.9.5-arm-linux-gnu) sha256=1bdfca0c7d63998c60b0f4a8e3c8df2d33800ccc4abd2d612eddbbbc92a4c48b

‎lib/solid_objects/version.rb‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# rbs_inline: enabled
22

33
module SolidObjects
4-
VERSION = "0.16.1"
4+
VERSION = "0.17.0"
55
end

0 commit comments

Comments
 (0)