yes 2.5.0 → 2.6.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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +41 -0
  3. data/lib/yes/version.rb +1 -1
  4. metadata +9 -9
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 27fa6e481ab4f64857ba0da8b4a5467e007d335da39c9c727e305e114c91a5ec
4
- data.tar.gz: 40d8b9b5c42e36f1e0b9b51b932d4b54bdc10d924a8657cf440c6e21763f62b2
3
+ metadata.gz: 3ad1c2c42cc9d5a9b1edf908cccb44f63de770f8c693715ad18f2571f515d976
4
+ data.tar.gz: 8ec5fbc7a12f0a36d774b0af83e9b3642abb4ea6eb7e6175af1ff72c6d8f30f9
5
5
  SHA512:
6
- metadata.gz: 73e90e974f52d312bf4971695b7ced952abf55b338326a4034be85ddc905b81eddb962bc135123c41759a13d9baca8080a02bfae48b0c684f62ab5cb55639eae
7
- data.tar.gz: 96cfeae522ef6c4155623c7d860a6cc9dce190ec4c1177d4c173e1d0911dfe3f21a226fe6c323ad41d237cdc75caabc3e8c43e593fb5898a37e9927f1b58f913
6
+ metadata.gz: 21588c2cffb2b8b82ad156ae9951fb0795e7504270e38c0119a2b429fd55c4d4629e2be3ee24d4c021f4b793b03a464323c8d19dc6498334597c3a7319b78ea1
7
+ data.tar.gz: 8b278620d445d8beff8ee69483d3dd96d9789ae3840463869c15651ee347349e600e3fc8027f0542cb6e0a5138d02dbcabc2eb08ce410029ed7e2f96bea4bf02
data/CHANGELOG.md CHANGED
@@ -2,6 +2,47 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [Unreleased]
6
+
7
+ ## [2.6.1] - 2026-10-28
8
+
9
+ ### yes-core
10
+
11
+ #### Changed
12
+ - `CerbosGrpcRetryPolicy.channel_args` now also caps the gRPC reconnect backoff (100ms initial/min, 1s max).
13
+ After a refused connection (e.g. a Cerbos pod that is shutting down) the channel otherwise stays in its
14
+ default reconnect backoff, longer than the retry window, and fails every call of the process for many seconds.
15
+
16
+ ### yes-command-api
17
+
18
+ #### Changed
19
+ - `CommandsController` responds with `503 Service Unavailable` and `Retry-After: 1` instead of a 500 when
20
+ Cerbos is unavailable (`Cerbos::Error::Unavailable`, `Cerbos::Error::DeadlineExceeded`). No command was
21
+ executed, so the request can be retried. The error is still recorded on the span and reported via `Rails.error`.
22
+
23
+ ### yes-read-api
24
+
25
+ #### Changed
26
+ - `QueriesController` responds with `503 Service Unavailable` and `Retry-After: 1` instead of a 500 when
27
+ Cerbos is unavailable (`Cerbos::Error::Unavailable`, `Cerbos::Error::DeadlineExceeded`). The error is still
28
+ reported via `Rails.error`.
29
+
30
+ ## [2.6.0] - 2026-10-28
31
+
32
+ ### yes-core
33
+
34
+ #### Added
35
+ - `Yes::Core::ReadModel::Builder#call` now writes the stream revision of the handled event into the read
36
+ model's `revision` column, if it has one. The column only moves forward, so replaying older events does
37
+ not lower it, and a rebuild ends at the last revision of the stream. Events that were not handled (no
38
+ handler, locale not available) leave it unchanged. Per-aggregate revision columns such as
39
+ `shop_order_revision` are not touched. The builder writes `revision` for every event of the read model's own
40
+ stream, so a read model whose `revision` column an aggregate writes must not also be fed by a builder (use
41
+ per-aggregate revision columns or project the events through the aggregate instead). Only events of the
42
+ read model's own stream are considered, compared by stream id only: a read model fed by two streams with
43
+ the same id (different context or stream name) would get a mixed revision and must not rely on it. This lets a consumer of a read model fed by a
44
+ subscription compare its `revision` with the stream's last revision to know whether the projection has caught up.
45
+
5
46
  ## [2.5.0] - 2026-10-08
6
47
 
7
48
  ### yes-core
data/lib/yes/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Yes
4
- VERSION = '2.5.0'
4
+ VERSION = '2.6.1'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: 'yes'
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.5.0
4
+ version: 2.6.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nico Ritsche
@@ -15,56 +15,56 @@ dependencies:
15
15
  requirements:
16
16
  - - '='
17
17
  - !ruby/object:Gem::Version
18
- version: 2.5.0
18
+ version: 2.6.1
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - '='
24
24
  - !ruby/object:Gem::Version
25
- version: 2.5.0
25
+ version: 2.6.1
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: yes-command-api
28
28
  requirement: !ruby/object:Gem::Requirement
29
29
  requirements:
30
30
  - - '='
31
31
  - !ruby/object:Gem::Version
32
- version: 2.5.0
32
+ version: 2.6.1
33
33
  type: :runtime
34
34
  prerelease: false
35
35
  version_requirements: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - '='
38
38
  - !ruby/object:Gem::Version
39
- version: 2.5.0
39
+ version: 2.6.1
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: yes-core
42
42
  requirement: !ruby/object:Gem::Requirement
43
43
  requirements:
44
44
  - - '='
45
45
  - !ruby/object:Gem::Version
46
- version: 2.5.0
46
+ version: 2.6.1
47
47
  type: :runtime
48
48
  prerelease: false
49
49
  version_requirements: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - '='
52
52
  - !ruby/object:Gem::Version
53
- version: 2.5.0
53
+ version: 2.6.1
54
54
  - !ruby/object:Gem::Dependency
55
55
  name: yes-read-api
56
56
  requirement: !ruby/object:Gem::Requirement
57
57
  requirements:
58
58
  - - '='
59
59
  - !ruby/object:Gem::Version
60
- version: 2.5.0
60
+ version: 2.6.1
61
61
  type: :runtime
62
62
  prerelease: false
63
63
  version_requirements: !ruby/object:Gem::Requirement
64
64
  requirements:
65
65
  - - '='
66
66
  - !ruby/object:Gem::Version
67
- version: 2.5.0
67
+ version: 2.6.1
68
68
  description: Event sourcing framework for Ruby on Rails applications
69
69
  email:
70
70
  - nico.ritsche@yousty.ch