yrby-actioncable 0.2.0 → 0.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c0c73db294d14b5f9f9a4caecd1ef6d6e5f90fbed04f56485f0a30f0273f9a2c
4
- data.tar.gz: b600ef54c94358690e42eadbb1e18c7bb49f847779fdb6bdb82829454f80fc6d
3
+ metadata.gz: 1ab50fed7379fc20924fec613bc32b7c4b34f2cac85ed446c6f562bd31ae3f5f
4
+ data.tar.gz: 7d17034c1eca75b303c4c0b839f7b14c1c23745ce3629b8e68cb21e161570bef
5
5
  SHA512:
6
- metadata.gz: 97cdf721058d71485a590e0fb0b64fd5d1c05ba21df712d6ce0594ddb6a1f78c1cf2cf6492351092bfbd53412279e352311633367907adcbcdd33c3ef7934754
7
- data.tar.gz: c3f0b6505bdb923ea48a0909e65d4ce3d9a68e933e3ba8bead8415facba3a8203ca3201e44e8bef18f732781968d917fde1972ab534abdcf68777c9fe97d8dd1
6
+ metadata.gz: '06697a55539569ee6010e11d6b80c5eaceb6e9643c71f355c91a4e286aaf664a00698ef1893cc37dd5005e6d47fcfcac6a08b352029f3866da2660d918269995'
7
+ data.tar.gz: 7a3cab1a4fe6d5171ac7ada2312cc6ece5dbd10e896c27132927d158ce19dae1e6ac06b768ad392b20ba8def7c0579eaa314f67d01f0c3dbf07ac74b92aaec9a
@@ -6,6 +6,13 @@ this project aims to follow [Semantic Versioning](https://semver.org/spec/v2.0.0
6
6
 
7
7
  ## [Unreleased]
8
8
 
9
+ ## [0.2.1] - 2026-06-29
10
+
11
+ ### Changed
12
+ - **Internal:** ActionCable stream-name prefix `y_ruby:` → `yrby:`.
13
+ Server-internal (broadcast + `stream_from` both use it) — no public API or
14
+ client-facing wire change. Depends on `yrby >= 0.2.1`.
15
+
9
16
  ## [0.2.0] - 2026-06-28
10
17
 
11
18
  First release under the **`yrby-actioncable`** name (previously developed as
@@ -14,8 +21,9 @@ First release under the **`yrby-actioncable`** name (previously developed as
14
21
  ### Changed
15
22
  - **Renamed `yrb-lite-actioncable` → `yrby-actioncable`.** Channel concern
16
23
  `YrbLite::ActionCable::Sync` → **`Y::ActionCable::Sync`**; require
17
- `require "yrb_lite/action_cable"` → `require "y/action_cable"`. ActionCable
18
- stream prefix `yrb_lite:` `y_ruby:`. Depends on `yrby >= 0.2.0`.
24
+ `require "yrb_lite/action_cable"` → `require "y/action_cable"`. (The stream
25
+ prefix shipped as `y_ruby:` in 0.2.0; see 0.2.1 for its rename to `yrby:`.)
26
+ Depends on `yrby >= 0.2.0`.
19
27
 
20
28
  ### Notes
21
29
  - Full y-websocket protocol over ActionCable/AnyCable: origin-filtered relay,
data/README.md CHANGED
@@ -20,7 +20,7 @@ end
20
20
  ```
21
21
 
22
22
  On the browser, use the `ActionCableProvider` from the
23
- [`@yrby/client`](https://www.npmjs.com/package/@yrby/client) npm package.
23
+ [`yrby-client`](https://www.npmjs.com/package/yrby-client) npm package.
24
24
  Integrates with any editor that includes Y.js support, such as Tiptap, ProseMirror
25
25
  and [Lexxy](https://www.npmjs.com/package/lexxy-realtime).
26
26
 
@@ -30,7 +30,7 @@ Install the gem and npm package:
30
30
 
31
31
  ```
32
32
  gem install yrby-actioncable # depends on yrby
33
- npm install @yrby/client
33
+ npm install yrby-client
34
34
  ```
35
35
 
36
36
  ## What you get
@@ -59,7 +59,7 @@ guarantees, correctness, and thread safety.
59
59
 
60
60
  Towards that goal, `yrby` adds capabilities that may even stand out in the Yjs ecosystem:
61
61
 
62
- - Built-in update acknowledgement: the `ActionCableProvider` in `@yrby/client` will continue to
62
+ - Built-in update acknowledgement: the `ActionCableProvider` in `yrby-client` will continue to
63
63
  send updates until an ack is received from the server. [`yrby-actioncable`](https://rubygems.org/gems/yrby-actioncable)
64
64
  only sends an ack when applying an update is successful. The goal is at-least-once delivery,
65
65
  and because CRDTs are idempotent a duplicate update is effectively a no-op.
@@ -197,7 +197,7 @@ for the same document as long as they share the same store and cable adapter.
197
197
 
198
198
  `on_load` and `on_change` are required. If either is missing, the channel fails
199
199
  before it can acknowledge or broadcast edits. Presence is ephemeral:
200
- awareness frames are relayed, and `@yrby/client` sends a best-effort
200
+ awareness frames are relayed, and `yrby-client` sends a best-effort
201
201
  presence-removal frame on disconnect/pagehide, with the client-side awareness
202
202
  timeout as the fallback for abrupt disconnects.
203
203
 
@@ -315,7 +315,7 @@ client -> server { "update": "<base64 update>", "id": 42 }
315
315
  server -> client { "ack": 42 } # update accepted; safe to forget
316
316
  ```
317
317
 
318
- `@yrby/client`'s `ActionCableProvider` handles this automatically. It keeps
318
+ `yrby-client`'s `ActionCableProvider` handles this automatically. It keeps
319
319
  the unacknowledged local document tail in a queue and sends the merged tail as a
320
320
  single causally-complete delta. The id is the highest sequence in the batch, so
321
321
  one `{ ack: id }` cumulatively confirms everything up to it. Because CRDT apply
@@ -324,7 +324,7 @@ re-acks. Awareness stays ephemeral and is not acked.
324
324
 
325
325
  Presence (cursors, selections) is owned by the browser clients — the server
326
326
  never sets or holds presence state, it only relays awareness frames opaquely.
327
- See `@yrby/client` for the client-side awareness API.
327
+ See `yrby-client` for the client-side awareness API.
328
328
 
329
329
  ## Thread Safety
330
330
 
@@ -296,7 +296,7 @@ module Y::ActionCable # rubocop:disable Style/ClassAndModuleChildren
296
296
  end
297
297
 
298
298
  def sync_stream_name
299
- "y_ruby:#{@sync_key}"
299
+ "yrby:#{@sync_key}"
300
300
  end
301
301
 
302
302
  def sync_awareness_stream_name
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Y
4
4
  module ActionCable
5
- VERSION = "0.2.0"
5
+ VERSION = "0.2.1"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: yrby-actioncable
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - JP Camara
@@ -29,14 +29,14 @@ dependencies:
29
29
  requirements:
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 0.2.0
32
+ version: 0.2.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: 0.2.0
39
+ version: 0.2.1
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: actioncable
42
42
  requirement: !ruby/object:Gem::Requirement