seatlayer 0.5.0 → 0.6.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0ab55cb5752c5ddc06db43cfb1653248cebf2b0bd6c8b06be7b308653ca7f5cf
4
- data.tar.gz: 44ec1f8c5e9f9da17e76c7e5913d1d1929ed4ca8be31d2fed6d24fc9d8521fe9
3
+ metadata.gz: a0ac6e36b23b34e28d914944c5a15cf08dabb40f9b31466740b4b04b99cec1c6
4
+ data.tar.gz: cabf4e47e42d39f2fe9f9ef0d001ff8043428702982f41d4c20f04f70cd333f9
5
5
  SHA512:
6
- metadata.gz: f1252c05e9535563f4459383151d4dd8b8d9699766fbbce0fe453f21e020b310fe6d315f176aa071b3282af1f390a9cc1fd78b3d1efbdbe12d8f67f71249375f
7
- data.tar.gz: 11f5318bd9b583d2b818446569d7f6b33285966a5dd7544045a03e2dad82a3325c685b51ae290a754a60182c067122eb8bb0999c03b0fe3403919eb21cfd1178
6
+ metadata.gz: eef04285447d411a1ab752e670136491716bc27284cbb5a825670ff9eca7d292de3ed473b842ce4c4a7af3925dd278353cb48683dd9029d371c03b11c76f30b0
7
+ data.tar.gz: f86eacb6d08d744362d0d84cc802720a4c5a04b9134b70950a1051cf4f4d1b3266744b356374895340b1c782a7fcc32e5b49a45e59e845a70bf84d0159cc6148
data/CHANGELOG.md CHANGED
@@ -1,6 +1,10 @@
1
1
  # Changelog
2
2
 
3
- ## Unreleased
3
+ ## 0.6.0 — 2026-08-23
4
+
5
+ - Added exact immutable Event configuration binding reads and compare-and-set
6
+ attach/detach through `events.retrieve_configuration_binding` and
7
+ `events.update_configuration_binding`. Updates remain deliberately single-attempt.
4
8
 
5
9
  ## 0.5.0 — 2026-08-21
6
10
 
data/README.md CHANGED
@@ -291,7 +291,7 @@ client.request("POST", "/v1/events/ev_1/some-new-route", body: { "qty" => 2 })
291
291
  | --- | --- |
292
292
  | `charts` | `list` `list_all` `create` `retrieve` `update` `delete` `copy` `archive` `unarchive` `publish` |
293
293
  | `templates` | `instantiate_template` |
294
- | `events` | `list` `list_all` `create` `retrieve` `update` `delete` `update_poster` `delete_poster` `update_chart` `close` `reopen` `archive` `retrieve_hold_ttl` `update_hold_ttl` `list_ticket_releases` `update_ticket_releases` `close_ticket_release` `retrieve_report` `retrieve_log` |
294
+ | `events` | `list` `list_all` `create` `retrieve` `retrieve_configuration_binding` `update_configuration_binding` `update` `delete` `update_poster` `delete_poster` `update_chart` `close` `reopen` `archive` `retrieve_hold_ttl` `update_hold_ttl` `list_ticket_releases` `update_ticket_releases` `close_ticket_release` `retrieve_report` `retrieve_log` |
295
295
  | `inventory` | `hold` `hold_best_available` `book_best_available` `extend_hold` `retrieve_hold` `release` `book` `box_office_book` `unbook` `list_bookings` `retrieve_booking` `block` `unblock` `unblock_all` `retrieve_availability` `update_availability` |
296
296
  | `channels` | `list_channels` `create_channel` `update_channel` `update_assignments` `list_allocation` `retrieve_access_preview` `retrieve_report` `pause` `unpause` `archive` `create_buyer_access_session` `list_buyer_access_sessions` `revoke_buyer_access_session` `create_access_link` `list_access_links` `rotate_access_link` `revoke_access_link` |
297
297
  | `sessions` | `create_manage_session` `revoke_manage_session` `create_designer_session` `revoke_designer_session` |
@@ -196,6 +196,21 @@ module SeatLayer
196
196
  @client.get("/v1/events/#{encode(event_key)}")
197
197
  end
198
198
 
199
+ # Read the Event's exact immutable configuration selection and audit trail.
200
+ def retrieve_configuration_binding(event_key)
201
+ @client.get("/v1/events/#{encode(event_key)}/event-configuration")
202
+ end
203
+
204
+ # Attach an exact published configuration version, or pass +nil+ to detach.
205
+ # The expected revision prevents one administrator from silently overwriting
206
+ # another, and the mutation remains deliberately single-attempt.
207
+ def update_configuration_binding(event_key, expected_revision:, configuration:)
208
+ @client.put(
209
+ "/v1/events/#{encode(event_key)}/event-configuration",
210
+ { "expectedRevision" => expected_revision, "configuration" => configuration }
211
+ )
212
+ end
213
+
199
214
  def update(event_key, fields)
200
215
  @client.patch("/v1/events/#{encode(event_key)}", fields)
201
216
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module SeatLayer
4
- VERSION = "0.5.0"
4
+ VERSION = "0.6.0"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: seatlayer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - SeatLayer