actioncable 7.2.1.2 → 8.0.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1c298dc79be414128a3b6ebda507b30766f1d7a77910525401618f46dc99f681
4
- data.tar.gz: 97c73df99c36472f251f264c10a7d4425414657f806968ebca8e0f3950fc432f
3
+ metadata.gz: 8fbb636a677c963849f247b80e4b42f86c89925d34e326ddb0ec53745433e7ea
4
+ data.tar.gz: 7dc0e29e27c83651f099d3f3c2f2561ca2e01c37f9d543c9dbf258425576eb5f
5
5
  SHA512:
6
- metadata.gz: 6d1f4d954c6f0cb96c35045756c96b706b63331fb9bc685ed0297c36fe9aad3abc2924286091716257271034096fe2c8eadc31eccbf33e926119f0619c6f59ee
7
- data.tar.gz: 11943827ddb66dfeaa2d69caa89901caad97cd868b52af5888967ece77a37ed51b36a9649013ffee3eb65b2539aa7183f1c136575a54df6930bc2d2c4374aac8
6
+ metadata.gz: 2f771d4a87f7f3a599e36ce5f4f2648d6f312e4898b34d6709fd215fd64b65fa71b3ca768ef530069926c3aee88d32b15dffc323dff1fef13c2488ef1cbca83d
7
+ data.tar.gz: 7778ccb1dc1f864ec5b15d138f040e687d5d6efde6acbef35e45031338b83efcafbe33eed6ae8dcc17664825c42bda692e646c1ef4036f2f14bc040acc7f9b0c
data/CHANGELOG.md CHANGED
@@ -1,58 +1,7 @@
1
- ## Rails 7.2.1.2 (October 23, 2024) ##
1
+ ## Rails 8.0.0.beta1 (September 26, 2024) ##
2
2
 
3
- * No changes.
3
+ * Add an `identifier` to the event payload for the ActiveSupport::Notification `transmit_subscription_confirmation.action_cable` and `transmit_subscription_rejection.action_cable`.
4
4
 
5
+ *Keith Schacht*
5
6
 
6
- ## Rails 7.2.1.1 (October 15, 2024) ##
7
-
8
- * No changes.
9
-
10
-
11
- ## Rails 7.2.1 (August 22, 2024) ##
12
-
13
- * No changes.
14
-
15
-
16
- ## Rails 7.2.0 (August 09, 2024) ##
17
-
18
- * Bring `ActionCable::Connection::TestCookieJar` in alignment with `ActionDispatch::Cookies::CookieJar` in regards to setting the cookie value.
19
-
20
- Before:
21
-
22
- ```ruby
23
- cookies[:foo] = { value: "bar" }
24
- puts cookies[:foo] # => { value: "bar" }
25
- ```
26
-
27
- After:
28
-
29
- ```ruby
30
- cookies[:foo] = { value: "bar" }
31
- puts cookies[:foo] # => "bar"
32
- ```
33
-
34
- *Justin Ko*
35
-
36
- * Record ping on every Action Cable message.
37
-
38
- Previously only `ping` and `welcome` message types were keeping the connection active.
39
- Now every Action Cable message updates the `pingedAt` value, preventing the connection
40
- from being marked as stale.
41
-
42
- *yauhenininjia*
43
-
44
- * Add two new assertion methods for Action Cable test cases: `assert_has_no_stream`
45
- and `assert_has_no_stream_for`.
46
-
47
- These methods can be used to assert that a stream has been stopped, e.g. via
48
- `stop_stream` or `stop_stream_for`. They complement the already existing
49
- `assert_has_stream` and `assert_has_stream_for` methods.
50
-
51
- ```ruby
52
- assert_has_no_stream "messages"
53
- assert_has_no_stream_for User.find(42)
54
- ```
55
-
56
- *Sebastian Pöll*, *Junichi Sato*
57
-
58
- Please check [7-1-stable](https://github.com/rails/rails/blob/7-1-stable/actioncable/CHANGELOG.md) for previous changes.
7
+ Please check [7-2-stable](https://github.com/rails/rails/blob/7-2-stable/actioncable/CHANGELOG.md) for previous changes.
@@ -309,7 +309,7 @@ module ActionCable
309
309
  unless subscription_confirmation_sent?
310
310
  logger.debug "#{self.class.name} is transmitting the subscription confirmation"
311
311
 
312
- ActiveSupport::Notifications.instrument("transmit_subscription_confirmation.action_cable", channel_class: self.class.name) do
312
+ ActiveSupport::Notifications.instrument("transmit_subscription_confirmation.action_cable", channel_class: self.class.name, identifier: @identifier) do
313
313
  connection.transmit identifier: @identifier, type: ActionCable::INTERNAL[:message_types][:confirmation]
314
314
  @subscription_confirmation_sent = true
315
315
  end
@@ -324,7 +324,7 @@ module ActionCable
324
324
  def transmit_subscription_rejection
325
325
  logger.debug "#{self.class.name} is transmitting the subscription rejection"
326
326
 
327
- ActiveSupport::Notifications.instrument("transmit_subscription_rejection.action_cable", channel_class: self.class.name) do
327
+ ActiveSupport::Notifications.instrument("transmit_subscription_rejection.action_cable", channel_class: self.class.name, identifier: @identifier) do
328
328
  connection.transmit identifier: @identifier, type: ActionCable::INTERNAL[:message_types][:rejection]
329
329
  end
330
330
  end
@@ -9,10 +9,10 @@ module ActionCable
9
9
  end
10
10
 
11
11
  module VERSION
12
- MAJOR = 7
13
- MINOR = 2
14
- TINY = 1
15
- PRE = "2"
12
+ MAJOR = 8
13
+ MINOR = 0
14
+ TINY = 0
15
+ PRE = "beta1"
16
16
 
17
17
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join(".")
18
18
  end
@@ -39,45 +39,44 @@ module ActionCable
39
39
  RemoteConnection.new(server, identifier)
40
40
  end
41
41
 
42
- private
43
- # # Action Cable Remote Connection
44
- #
45
- # Represents a single remote connection found via
46
- # `ActionCable.server.remote_connections.where(*)`. Exists solely for the
47
- # purpose of calling #disconnect on that connection.
48
- class RemoteConnection
49
- class InvalidIdentifiersError < StandardError; end
42
+ # # Action Cable Remote Connection
43
+ #
44
+ # Represents a single remote connection found via
45
+ # `ActionCable.server.remote_connections.where(*)`. Exists solely for the
46
+ # purpose of calling #disconnect on that connection.
47
+ class RemoteConnection
48
+ class InvalidIdentifiersError < StandardError; end
50
49
 
51
- include Connection::Identification, Connection::InternalChannel
50
+ include Connection::Identification, Connection::InternalChannel
52
51
 
53
- def initialize(server, ids)
54
- @server = server
55
- set_identifier_instance_vars(ids)
56
- end
52
+ def initialize(server, ids)
53
+ @server = server
54
+ set_identifier_instance_vars(ids)
55
+ end
57
56
 
58
- # Uses the internal channel to disconnect the connection.
59
- def disconnect(reconnect: true)
60
- server.broadcast internal_channel, { type: "disconnect", reconnect: reconnect }
61
- end
57
+ # Uses the internal channel to disconnect the connection.
58
+ def disconnect(reconnect: true)
59
+ server.broadcast internal_channel, { type: "disconnect", reconnect: reconnect }
60
+ end
62
61
 
63
- # Returns all the identifiers that were applied to this connection.
64
- redefine_method :identifiers do
65
- server.connection_identifiers
66
- end
62
+ # Returns all the identifiers that were applied to this connection.
63
+ redefine_method :identifiers do
64
+ server.connection_identifiers
65
+ end
67
66
 
68
- protected
69
- attr_reader :server
67
+ protected
68
+ attr_reader :server
70
69
 
71
- private
72
- def set_identifier_instance_vars(ids)
73
- raise InvalidIdentifiersError unless valid_identifiers?(ids)
74
- ids.each { |k, v| instance_variable_set("@#{k}", v) }
75
- end
70
+ private
71
+ def set_identifier_instance_vars(ids)
72
+ raise InvalidIdentifiersError unless valid_identifiers?(ids)
73
+ ids.each { |k, v| instance_variable_set("@#{k}", v) }
74
+ end
76
75
 
77
- def valid_identifiers?(ids)
78
- keys = ids.keys
79
- identifiers.all? { |id| keys.include?(id) }
80
- end
81
- end
76
+ def valid_identifiers?(ids)
77
+ keys = ids.keys
78
+ identifiers.all? { |id| keys.include?(id) }
79
+ end
80
+ end
82
81
  end
83
82
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: actioncable
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.2.1.2
4
+ version: 8.0.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pratik Naik
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2024-10-23 00:00:00.000000000 Z
12
+ date: 2024-09-26 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
@@ -17,28 +17,28 @@ dependencies:
17
17
  requirements:
18
18
  - - '='
19
19
  - !ruby/object:Gem::Version
20
- version: 7.2.1.2
20
+ version: 8.0.0.beta1
21
21
  type: :runtime
22
22
  prerelease: false
23
23
  version_requirements: !ruby/object:Gem::Requirement
24
24
  requirements:
25
25
  - - '='
26
26
  - !ruby/object:Gem::Version
27
- version: 7.2.1.2
27
+ version: 8.0.0.beta1
28
28
  - !ruby/object:Gem::Dependency
29
29
  name: actionpack
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - '='
33
33
  - !ruby/object:Gem::Version
34
- version: 7.2.1.2
34
+ version: 8.0.0.beta1
35
35
  type: :runtime
36
36
  prerelease: false
37
37
  version_requirements: !ruby/object:Gem::Requirement
38
38
  requirements:
39
39
  - - '='
40
40
  - !ruby/object:Gem::Version
41
- version: 7.2.1.2
41
+ version: 8.0.0.beta1
42
42
  - !ruby/object:Gem::Dependency
43
43
  name: nio4r
44
44
  requirement: !ruby/object:Gem::Requirement
@@ -154,10 +154,10 @@ licenses:
154
154
  - MIT
155
155
  metadata:
156
156
  bug_tracker_uri: https://github.com/rails/rails/issues
157
- changelog_uri: https://github.com/rails/rails/blob/v7.2.1.2/actioncable/CHANGELOG.md
158
- documentation_uri: https://api.rubyonrails.org/v7.2.1.2/
157
+ changelog_uri: https://github.com/rails/rails/blob/v8.0.0.beta1/actioncable/CHANGELOG.md
158
+ documentation_uri: https://api.rubyonrails.org/v8.0.0.beta1/
159
159
  mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
160
- source_code_uri: https://github.com/rails/rails/tree/v7.2.1.2/actioncable
160
+ source_code_uri: https://github.com/rails/rails/tree/v8.0.0.beta1/actioncable
161
161
  rubygems_mfa_required: 'true'
162
162
  post_install_message:
163
163
  rdoc_options: []
@@ -167,7 +167,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
167
167
  requirements:
168
168
  - - ">="
169
169
  - !ruby/object:Gem::Version
170
- version: 3.1.0
170
+ version: 3.2.0
171
171
  required_rubygems_version: !ruby/object:Gem::Requirement
172
172
  requirements:
173
173
  - - ">="