cable_room 0.1.2 → 0.3.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.
@@ -718,3 +718,3059 @@ Shutting down CableRoom
718
718
  [ActionCable] Broadcasting to TestRoom:c7ece772ed45f53a11946b268cd2d14b:from_room: {type: "room_closed"}
719
719
  [TestRoom 21a71c42454f] Shutting down
720
720
  [TestRoom 21a71c42454f] Shutdown complete
721
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168367aeacfeacca440ee:to_room: {type: "member_joined", tags: [], mtok: "bd7ee2fa6e69b5fce64b966ecce9a1a6"}
722
+ [TestRoom f36865bc5cc6] Initializing new TestRoom
723
+ [TestRoom f36865bc5cc6] UUID: f36865bc5cc6
724
+ [TestRoom f36865bc5cc6] Key: TestRoom:a09fd943a75168367aeacfeacca440ee
725
+ [TestRoom f36865bc5cc6] Ping watchdog
726
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168367aeacfeacca440ee:from_room: {type: "custom_started"}
727
+ [TestRoom f36865bc5cc6] Started
728
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168367aeacfeacca440ee:from_room: {type: "room_opened"}
729
+ [TestRoom f36865bc5cc6] TestRoom::Channel is streaming from TestRoom:a09fd943a75168367aeacfeacca440ee:to_room
730
+ [TestRoom f36865bc5cc6] TestRoom::Channel is transmitting the subscription confirmation
731
+ [TestRoom f36865bc5cc6] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
732
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168367aeacfeacca440ee:to_room: {type: "member_left", mtok: "bd7ee2fa6e69b5fce64b966ecce9a1a6"}
733
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836ABC:to_room: {type: "member_joined", tags: [], mtok: "2ed863c16a6261b9b3e517d36b39549d"}
734
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
735
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:30:in 'block (3 levels) in <module:InputHandling>'
736
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
737
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
738
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
739
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
740
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
741
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
742
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
743
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
744
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
745
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
746
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
747
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
748
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
749
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
750
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
751
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
752
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
753
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
754
+ <internal:kernel>:168:in 'Kernel#loop'
755
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
756
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
757
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
758
+ [TestRoom ee8c680fd07c] Initializing new TestRoom
759
+ [TestRoom ee8c680fd07c] UUID: ee8c680fd07c
760
+ [TestRoom ee8c680fd07c] Key: TestRoom:a09fd943a7516836ABC
761
+ [TestRoom ee8c680fd07c] Ping watchdog
762
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836ABC:from_room: {type: "custom_started"}
763
+ [TestRoom ee8c680fd07c] Started
764
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836ABC:from_room: {type: "room_opened"}
765
+ [TestRoom ee8c680fd07c] TestRoom::Channel is streaming from TestRoom:a09fd943a7516836ABC:to_room
766
+ [TestRoom ee8c680fd07c] TestRoom::Channel is transmitting the subscription confirmation
767
+ [TestRoom ee8c680fd07c] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
768
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836ABC:to_room: {type: "member_left", mtok: "2ed863c16a6261b9b3e517d36b39549d"}
769
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168368cb4ed757aaa6cde:to_room: {type: "member_joined", tags: [], mtok: "4cd7bb08d34fa8a831026ce5ba3b756d"}
770
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
771
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:30:in 'block (3 levels) in <module:InputHandling>'
772
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
773
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
774
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
775
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
776
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
777
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
778
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
779
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
780
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
781
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
782
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
783
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
784
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
785
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
786
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
787
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
788
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
789
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
790
+ <internal:kernel>:168:in 'Kernel#loop'
791
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
792
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
793
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
794
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836728d575b41d01285:to_room: {type: "member_joined", tags: [], mtok: "b7c47f9a591c6af1f8076b86d436fb86"}
795
+ [TestRoom 57461ca047be] Initializing new TestRoom
796
+ [TestRoom 57461ca047be] UUID: 57461ca047be
797
+ [TestRoom 57461ca047be] Key: TestRoom:a09fd943a7516836728d575b41d01285
798
+ [TestRoom 57461ca047be] Ping watchdog
799
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836728d575b41d01285:from_room: {type: "custom_started"}
800
+ [TestRoom 57461ca047be] Started
801
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836728d575b41d01285:from_room: {type: "room_opened"}
802
+ [TestRoom 57461ca047be] TestRoom::Channel is streaming from TestRoom:a09fd943a7516836728d575b41d01285:to_room
803
+ [TestRoom 57461ca047be] TestRoom::Channel is transmitting the subscription confirmation
804
+ [TestRoom 57461ca047be] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
805
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836728d575b41d01285:to_room: {type: "member_joined", tags: [], mtok: "9445240dc92109d444fdc81947d0fb38"}
806
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
807
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:30:in 'block (3 levels) in <module:InputHandling>'
808
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
809
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
810
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
811
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
812
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
813
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
814
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
815
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
816
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
817
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
818
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
819
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
820
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
821
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
822
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
823
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
824
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
825
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
826
+ <internal:kernel>:168:in 'Kernel#loop'
827
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
828
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
829
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
830
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836728d575b41d01285:to_room: {type: "member_left", mtok: "9445240dc92109d444fdc81947d0fb38"}
831
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836A:to_room: {type: "member_joined", tags: [], mtok: "d6001d0315bcffcb5fe95a2758194dcb"}
832
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
833
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:30:in 'block (3 levels) in <module:InputHandling>'
834
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
835
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
836
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
837
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
838
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
839
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
840
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
841
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
842
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
843
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
844
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
845
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
846
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
847
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
848
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
849
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
850
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
851
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
852
+ <internal:kernel>:168:in 'Kernel#loop'
853
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
854
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
855
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
856
+ [TestRoom 8cf351e20633] Initializing new TestRoom
857
+ [TestRoom 8cf351e20633] UUID: 8cf351e20633
858
+ [TestRoom 8cf351e20633] Key: TestRoom:a09fd943a7516836A
859
+ [TestRoom 8cf351e20633] Ping watchdog
860
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836A:from_room: {type: "custom_started"}
861
+ [TestRoom 8cf351e20633] Started
862
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836A:from_room: {type: "room_opened"}
863
+ [TestRoom 8cf351e20633] TestRoom::Channel is streaming from TestRoom:a09fd943a7516836A:to_room
864
+ [TestRoom 8cf351e20633] TestRoom::Channel is transmitting the subscription confirmation
865
+ [TestRoom 8cf351e20633] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
866
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836B:to_room: {type: "member_joined", tags: [], mtok: "802e388778edb1fc51d08d4f9a33aac8"}
867
+ [TestRoom 80999c8ddb5d] Initializing new TestRoom
868
+ [TestRoom 80999c8ddb5d] UUID: 80999c8ddb5d
869
+ [TestRoom 80999c8ddb5d] Key: TestRoom:a09fd943a7516836B
870
+ [TestRoom 80999c8ddb5d] Ping watchdog
871
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836B:from_room: {type: "custom_started"}
872
+ [TestRoom 80999c8ddb5d] Started
873
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836B:from_room: {type: "room_opened"}
874
+ [TestRoom 80999c8ddb5d] TestRoom::Channel is streaming from TestRoom:a09fd943a7516836B:to_room
875
+ [TestRoom 80999c8ddb5d] TestRoom::Channel is transmitting the subscription confirmation
876
+ [TestRoom 80999c8ddb5d] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
877
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836B:to_room: {type: "member_left", mtok: "802e388778edb1fc51d08d4f9a33aac8"}
878
+ [ActionCable] Broadcasting to TestRoom:a09fd943a751683606dceb05cd7fa8c6:to_room: {type: "member_joined", tags: [], mtok: "53ca0e4e791c814659c9e5eca872901f"}
879
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
880
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:30:in 'block (3 levels) in <module:InputHandling>'
881
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
882
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
883
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
884
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
885
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
886
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
887
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
888
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
889
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
890
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
891
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
892
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
893
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
894
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
895
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
896
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
897
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
898
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
899
+ <internal:kernel>:168:in 'Kernel#loop'
900
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
901
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
902
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
903
+ [TestRoom f1d0d21a1468] Initializing new TestRoom
904
+ [TestRoom f1d0d21a1468] UUID: f1d0d21a1468
905
+ [TestRoom f1d0d21a1468] Key: TestRoom:a09fd943a751683606dceb05cd7fa8c6
906
+ [TestRoom f1d0d21a1468] Ping watchdog
907
+ [ActionCable] Broadcasting to TestRoom:a09fd943a751683606dceb05cd7fa8c6:from_room: {type: "custom_started"}
908
+ [TestRoom f1d0d21a1468] Started
909
+ [ActionCable] Broadcasting to TestRoom:a09fd943a751683606dceb05cd7fa8c6:from_room: {type: "room_opened"}
910
+ [TestRoom f1d0d21a1468] TestRoom::Channel is streaming from TestRoom:a09fd943a751683606dceb05cd7fa8c6:to_room
911
+ [TestRoom f1d0d21a1468] TestRoom::Channel is transmitting the subscription confirmation
912
+ [TestRoom f1d0d21a1468] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
913
+ [ActionCable] Broadcasting to TestRoom:a09fd943a751683606dceb05cd7fa8c6:to_room: {type: "member_left", mtok: "53ca0e4e791c814659c9e5eca872901f"}
914
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836c62c85a77b9f386d:to_room: {type: "member_joined", tags: [], mtok: "c5dd71d488328d02719e2088aaa72e3e"}
915
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
916
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:30:in 'block (3 levels) in <module:InputHandling>'
917
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
918
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
919
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
920
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
921
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
922
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
923
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
924
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
925
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
926
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
927
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
928
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
929
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
930
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
931
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
932
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
933
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
934
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
935
+ <internal:kernel>:168:in 'Kernel#loop'
936
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
937
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
938
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
939
+ [TestRoom df46381cbf61] Initializing new TestRoom
940
+ [TestRoom df46381cbf61] UUID: df46381cbf61
941
+ [TestRoom df46381cbf61] Key: TestRoom:a09fd943a7516836c62c85a77b9f386d
942
+ [TestRoom df46381cbf61] Ping watchdog
943
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836c62c85a77b9f386d:from_room: {type: "custom_started"}
944
+ [TestRoom df46381cbf61] Started
945
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836c62c85a77b9f386d:from_room: {type: "room_opened"}
946
+ [TestRoom df46381cbf61] TestRoom::Channel is streaming from TestRoom:a09fd943a7516836c62c85a77b9f386d:to_room
947
+ [TestRoom df46381cbf61] TestRoom::Channel is transmitting the subscription confirmation
948
+ [TestRoom df46381cbf61] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
949
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836c62c85a77b9f386d:to_room: "KILL"
950
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
951
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:30:in 'block (3 levels) in <module:InputHandling>'
952
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
953
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
954
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
955
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
956
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
957
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
958
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
959
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
960
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
961
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
962
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
963
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
964
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
965
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
966
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
967
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
968
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
969
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
970
+ <internal:kernel>:168:in 'Kernel#loop'
971
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
972
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
973
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
974
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168365767ca81942f5128:to_room: {type: "member_joined", tags: [], mtok: "d60890a971dfe43e25f95c0c0dc6b0b5"}
975
+ [TestRoom 2f8504a3ddd1] Initializing new TestRoom
976
+ [TestRoom 2f8504a3ddd1] UUID: 2f8504a3ddd1
977
+ [TestRoom 2f8504a3ddd1] Key: TestRoom:a09fd943a75168365767ca81942f5128
978
+ [TestRoom 2f8504a3ddd1] Ping watchdog
979
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168365767ca81942f5128:from_room: {type: "custom_started"}
980
+ [TestRoom 2f8504a3ddd1] Started
981
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168365767ca81942f5128:from_room: {type: "room_opened"}
982
+ [TestRoom 2f8504a3ddd1] TestRoom::Channel is streaming from TestRoom:a09fd943a75168365767ca81942f5128:to_room
983
+ [TestRoom 2f8504a3ddd1] TestRoom::Channel is transmitting the subscription confirmation
984
+ [TestRoom 2f8504a3ddd1] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
985
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168365767ca81942f5128:to_room: {type: "member_left", mtok: "d60890a971dfe43e25f95c0c0dc6b0b5"}
986
+ [TestRoom 2f8504a3ddd1] Ping watchdog
987
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
988
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:30:in 'block (3 levels) in <module:InputHandling>'
989
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
990
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
991
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
992
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
993
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
994
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
995
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
996
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
997
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
998
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
999
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1000
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1001
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1002
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1003
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1004
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1005
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1006
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1007
+ <internal:kernel>:168:in 'Kernel#loop'
1008
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1009
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1010
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1011
+ [TestRoom 2f8504a3ddd1] Watchdog timeout for room TestRoom[a09fd943a75168365767ca81942f5128], shutting down
1012
+ [TestRoom 2f8504a3ddd1] TestRoom::Channel stopped streaming from TestRoom:a09fd943a75168365767ca81942f5128:to_room
1013
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168365767ca81942f5128:from_room: {type: "room_closed"}
1014
+ [TestRoom 2f8504a3ddd1] Shutting down
1015
+ [TestRoom 2f8504a3ddd1] Shutdown complete
1016
+ Shutting down CableRoom
1017
+ [TestRoom f36865bc5cc6] TestRoom::Channel stopped streaming from TestRoom:a09fd943a75168367aeacfeacca440ee:to_room
1018
+ [TestRoom ee8c680fd07c] TestRoom::Channel stopped streaming from TestRoom:a09fd943a7516836ABC:to_room
1019
+ [TestRoom 57461ca047be] TestRoom::Channel stopped streaming from TestRoom:a09fd943a7516836728d575b41d01285:to_room
1020
+ [TestRoom 8cf351e20633] TestRoom::Channel stopped streaming from TestRoom:a09fd943a7516836A:to_room
1021
+ [TestRoom 80999c8ddb5d] TestRoom::Channel stopped streaming from TestRoom:a09fd943a7516836B:to_room
1022
+ [TestRoom f1d0d21a1468] TestRoom::Channel stopped streaming from TestRoom:a09fd943a751683606dceb05cd7fa8c6:to_room
1023
+ [TestRoom df46381cbf61] TestRoom::Channel stopped streaming from TestRoom:a09fd943a7516836c62c85a77b9f386d:to_room
1024
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836ABC:from_room: {type: "room_closed"}
1025
+ [TestRoom ee8c680fd07c] Shutting down
1026
+ [TestRoom ee8c680fd07c] Shutdown complete
1027
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836728d575b41d01285:from_room: {type: "room_closed"}
1028
+ [TestRoom 57461ca047be] Shutting down
1029
+ [TestRoom 57461ca047be] Shutdown complete
1030
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836A:from_room: {type: "room_closed"}
1031
+ [TestRoom 8cf351e20633] Shutting down
1032
+ [TestRoom 8cf351e20633] Shutdown complete
1033
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836B:from_room: {type: "room_closed"}
1034
+ [TestRoom 80999c8ddb5d] Shutting down
1035
+ [TestRoom 80999c8ddb5d] Shutdown complete
1036
+ [ActionCable] Broadcasting to TestRoom:a09fd943a751683606dceb05cd7fa8c6:from_room: {type: "room_closed"}
1037
+ [TestRoom f1d0d21a1468] Shutting down
1038
+ [TestRoom f1d0d21a1468] Shutdown complete
1039
+ [ActionCable] Broadcasting to TestRoom:a09fd943a7516836c62c85a77b9f386d:from_room: {type: "room_closed"}
1040
+ [TestRoom df46381cbf61] Shutting down
1041
+ [TestRoom df46381cbf61] Shutdown complete
1042
+ [ActionCable] Broadcasting to TestRoom:a09fd943a75168367aeacfeacca440ee:from_room: {type: "room_closed"}
1043
+ [TestRoom f36865bc5cc6] Shutting down
1044
+ [TestRoom f36865bc5cc6] Shutdown complete
1045
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7f3fa8ed852187a01:to_room: {type: "member_joined", tags: [], mtok: "fef249b3990ed299a88a9fdf31de5c09"}
1046
+ [TestRoom 08834f7a3537] Initializing new TestRoom
1047
+ [TestRoom 08834f7a3537] UUID: 08834f7a3537
1048
+ [TestRoom 08834f7a3537] Key: TestRoom:2d7903453b912dc7f3fa8ed852187a01
1049
+ [TestRoom 08834f7a3537] Ping watchdog
1050
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7f3fa8ed852187a01:from_room: {type: "custom_started"}
1051
+ [TestRoom 08834f7a3537] Started
1052
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7f3fa8ed852187a01:from_room: {type: "room_opened"}
1053
+ [TestRoom 08834f7a3537] TestRoom::Channel is streaming from TestRoom:2d7903453b912dc7f3fa8ed852187a01:to_room
1054
+ [TestRoom 08834f7a3537] TestRoom::Channel is transmitting the subscription confirmation
1055
+ [TestRoom 08834f7a3537] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1056
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7f3fa8ed852187a01:to_room: {type: "member_left", mtok: "fef249b3990ed299a88a9fdf31de5c09"}
1057
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7ABC:to_room: {type: "member_joined", tags: [], mtok: "6b10b87d5347331c6b985a2425099d3c"}
1058
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1059
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
1060
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1061
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1062
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1063
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1064
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1065
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1066
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1067
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1068
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1069
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1070
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1071
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1072
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1073
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1074
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1075
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1076
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1077
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1078
+ <internal:kernel>:168:in 'Kernel#loop'
1079
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1080
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1081
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1082
+ [TestRoom 17585385a8ce] Initializing new TestRoom
1083
+ [TestRoom 17585385a8ce] UUID: 17585385a8ce
1084
+ [TestRoom 17585385a8ce] Key: TestRoom:2d7903453b912dc7ABC
1085
+ [TestRoom 17585385a8ce] Ping watchdog
1086
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7ABC:from_room: {type: "custom_started"}
1087
+ [TestRoom 17585385a8ce] Started
1088
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7ABC:from_room: {type: "room_opened"}
1089
+ [TestRoom 17585385a8ce] TestRoom::Channel is streaming from TestRoom:2d7903453b912dc7ABC:to_room
1090
+ [TestRoom 17585385a8ce] TestRoom::Channel is transmitting the subscription confirmation
1091
+ [TestRoom 17585385a8ce] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1092
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7ABC:to_room: {type: "member_left", mtok: "6b10b87d5347331c6b985a2425099d3c"}
1093
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc74fac5e16685b8ea1:to_room: {type: "member_joined", tags: [], mtok: "57b747dad770f1b9113552a36fef2fc4"}
1094
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1095
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
1096
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1097
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1098
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1099
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1100
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1101
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1102
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1103
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1104
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1105
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1106
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1107
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1108
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1109
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1110
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1111
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1112
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1113
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1114
+ <internal:kernel>:168:in 'Kernel#loop'
1115
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1116
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1117
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1118
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc700b24e6f70306e5f:to_room: {type: "member_joined", tags: [], mtok: "140f23660dbe873ab38ef8b725c19cf2"}
1119
+ [TestRoom 7aeaa165980e] Initializing new TestRoom
1120
+ [TestRoom 7aeaa165980e] UUID: 7aeaa165980e
1121
+ [TestRoom 7aeaa165980e] Key: TestRoom:2d7903453b912dc700b24e6f70306e5f
1122
+ [TestRoom 7aeaa165980e] Ping watchdog
1123
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc700b24e6f70306e5f:from_room: {type: "custom_started"}
1124
+ [TestRoom 7aeaa165980e] Started
1125
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc700b24e6f70306e5f:from_room: {type: "room_opened"}
1126
+ [TestRoom 7aeaa165980e] TestRoom::Channel is streaming from TestRoom:2d7903453b912dc700b24e6f70306e5f:to_room
1127
+ [TestRoom 7aeaa165980e] TestRoom::Channel is transmitting the subscription confirmation
1128
+ [TestRoom 7aeaa165980e] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1129
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc700b24e6f70306e5f:to_room: {type: "member_joined", tags: [], mtok: "edb47fb69d775e3088889f8943a17173"}
1130
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1131
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
1132
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1133
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1134
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1135
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1136
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1137
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1138
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1139
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1140
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1141
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1142
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1143
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1144
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1145
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1146
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1147
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1148
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1149
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1150
+ <internal:kernel>:168:in 'Kernel#loop'
1151
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1152
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1153
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1154
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc700b24e6f70306e5f:to_room: {type: "member_left", mtok: "edb47fb69d775e3088889f8943a17173"}
1155
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7A:to_room: {type: "member_joined", tags: [], mtok: "170bdd4cc9a4b558954cc3b53ffaf339"}
1156
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1157
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
1158
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1159
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1160
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1161
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1162
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1163
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1164
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1165
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1166
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1167
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1168
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1169
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1170
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1171
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1172
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1173
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1174
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1175
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1176
+ <internal:kernel>:168:in 'Kernel#loop'
1177
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1178
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1179
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1180
+ [TestRoom 24e80298d2a9] Initializing new TestRoom
1181
+ [TestRoom 24e80298d2a9] UUID: 24e80298d2a9
1182
+ [TestRoom 24e80298d2a9] Key: TestRoom:2d7903453b912dc7A
1183
+ [TestRoom 24e80298d2a9] Ping watchdog
1184
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7A:from_room: {type: "custom_started"}
1185
+ [TestRoom 24e80298d2a9] Started
1186
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7A:from_room: {type: "room_opened"}
1187
+ [TestRoom 24e80298d2a9] TestRoom::Channel is streaming from TestRoom:2d7903453b912dc7A:to_room
1188
+ [TestRoom 24e80298d2a9] TestRoom::Channel is transmitting the subscription confirmation
1189
+ [TestRoom 24e80298d2a9] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1190
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7B:to_room: {type: "member_joined", tags: [], mtok: "bee04b2f7f27910efecffc92d25b2b53"}
1191
+ [TestRoom 56fa417676ac] Initializing new TestRoom
1192
+ [TestRoom 56fa417676ac] UUID: 56fa417676ac
1193
+ [TestRoom 56fa417676ac] Key: TestRoom:2d7903453b912dc7B
1194
+ [TestRoom 56fa417676ac] Ping watchdog
1195
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7B:from_room: {type: "custom_started"}
1196
+ [TestRoom 56fa417676ac] Started
1197
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7B:from_room: {type: "room_opened"}
1198
+ [TestRoom 56fa417676ac] TestRoom::Channel is streaming from TestRoom:2d7903453b912dc7B:to_room
1199
+ [TestRoom 56fa417676ac] TestRoom::Channel is transmitting the subscription confirmation
1200
+ [TestRoom 56fa417676ac] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1201
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7B:to_room: {type: "member_left", mtok: "bee04b2f7f27910efecffc92d25b2b53"}
1202
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc73b9d2bc7511c8eb4:to_room: {type: "member_joined", tags: [], mtok: "c40f61a3c2df408c8a0f03e9a0a863a2"}
1203
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1204
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
1205
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1206
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1207
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1208
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1209
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1210
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1211
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1212
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1213
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1214
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1215
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1216
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1217
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1218
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1219
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1220
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1221
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1222
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1223
+ <internal:kernel>:168:in 'Kernel#loop'
1224
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1225
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1226
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1227
+ [TestRoom 228e41cc0d84] Initializing new TestRoom
1228
+ [TestRoom 228e41cc0d84] UUID: 228e41cc0d84
1229
+ [TestRoom 228e41cc0d84] Key: TestRoom:2d7903453b912dc73b9d2bc7511c8eb4
1230
+ [TestRoom 228e41cc0d84] Ping watchdog
1231
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc73b9d2bc7511c8eb4:from_room: {type: "custom_started"}
1232
+ [TestRoom 228e41cc0d84] Started
1233
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc73b9d2bc7511c8eb4:from_room: {type: "room_opened"}
1234
+ [TestRoom 228e41cc0d84] TestRoom::Channel is streaming from TestRoom:2d7903453b912dc73b9d2bc7511c8eb4:to_room
1235
+ [TestRoom 228e41cc0d84] TestRoom::Channel is transmitting the subscription confirmation
1236
+ [TestRoom 228e41cc0d84] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1237
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc73b9d2bc7511c8eb4:to_room: {type: "member_left", mtok: "c40f61a3c2df408c8a0f03e9a0a863a2"}
1238
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc75f5878a64e2e601d:to_room: {type: "member_joined", tags: [], mtok: "fe007b531339880169ae88c675484435"}
1239
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1240
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
1241
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1242
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1243
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1244
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1245
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1246
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1247
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1248
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1249
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1250
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1251
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1252
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1253
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1254
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1255
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1256
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1257
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1258
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1259
+ <internal:kernel>:168:in 'Kernel#loop'
1260
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1261
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1262
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1263
+ [TestRoom 6ef58d75d87e] Initializing new TestRoom
1264
+ [TestRoom 6ef58d75d87e] UUID: 6ef58d75d87e
1265
+ [TestRoom 6ef58d75d87e] Key: TestRoom:2d7903453b912dc75f5878a64e2e601d
1266
+ [TestRoom 6ef58d75d87e] Ping watchdog
1267
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc75f5878a64e2e601d:from_room: {type: "custom_started"}
1268
+ [TestRoom 6ef58d75d87e] Started
1269
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc75f5878a64e2e601d:from_room: {type: "room_opened"}
1270
+ [TestRoom 6ef58d75d87e] TestRoom::Channel is streaming from TestRoom:2d7903453b912dc75f5878a64e2e601d:to_room
1271
+ [TestRoom 6ef58d75d87e] TestRoom::Channel is transmitting the subscription confirmation
1272
+ [TestRoom 6ef58d75d87e] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1273
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc75f5878a64e2e601d:to_room: "KILL"
1274
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1275
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
1276
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1277
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1278
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1279
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1280
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1281
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1282
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1283
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1284
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1285
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1286
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1287
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1288
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1289
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1290
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1291
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1292
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1293
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1294
+ <internal:kernel>:168:in 'Kernel#loop'
1295
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1296
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1297
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1298
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc75c4abd8496471c21:to_room: {type: "member_joined", tags: [], mtok: "92623c64def00377b145f5796096c797"}
1299
+ [TestRoom 22b2ca2cffdd] Initializing new TestRoom
1300
+ [TestRoom 22b2ca2cffdd] UUID: 22b2ca2cffdd
1301
+ [TestRoom 22b2ca2cffdd] Key: TestRoom:2d7903453b912dc75c4abd8496471c21
1302
+ [TestRoom 22b2ca2cffdd] Ping watchdog
1303
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc75c4abd8496471c21:from_room: {type: "custom_started"}
1304
+ [TestRoom 22b2ca2cffdd] Started
1305
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc75c4abd8496471c21:from_room: {type: "room_opened"}
1306
+ [TestRoom 22b2ca2cffdd] TestRoom::Channel is streaming from TestRoom:2d7903453b912dc75c4abd8496471c21:to_room
1307
+ [TestRoom 22b2ca2cffdd] TestRoom::Channel is transmitting the subscription confirmation
1308
+ [TestRoom 22b2ca2cffdd] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1309
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc75c4abd8496471c21:to_room: {type: "member_left", mtok: "92623c64def00377b145f5796096c797"}
1310
+ [TestRoom 22b2ca2cffdd] Ping watchdog
1311
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1312
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
1313
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1314
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1315
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1316
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1317
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1318
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1319
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1320
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1321
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1322
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1323
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1324
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1325
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1326
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1327
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1328
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1329
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1330
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1331
+ <internal:kernel>:168:in 'Kernel#loop'
1332
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1333
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1334
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1335
+ [TestRoom 22b2ca2cffdd] Watchdog timeout for room TestRoom[2d7903453b912dc75c4abd8496471c21], shutting down
1336
+ [TestRoom 22b2ca2cffdd] TestRoom::Channel stopped streaming from TestRoom:2d7903453b912dc75c4abd8496471c21:to_room
1337
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc75c4abd8496471c21:from_room: {type: "room_closed"}
1338
+ [TestRoom 22b2ca2cffdd] Shutting down
1339
+ [TestRoom 22b2ca2cffdd] Shutdown complete
1340
+ Shutting down CableRoom
1341
+ [TestRoom 08834f7a3537] TestRoom::Channel stopped streaming from TestRoom:2d7903453b912dc7f3fa8ed852187a01:to_room
1342
+ [TestRoom 17585385a8ce] TestRoom::Channel stopped streaming from TestRoom:2d7903453b912dc7ABC:to_room
1343
+ [TestRoom 7aeaa165980e] TestRoom::Channel stopped streaming from TestRoom:2d7903453b912dc700b24e6f70306e5f:to_room
1344
+ [TestRoom 24e80298d2a9] TestRoom::Channel stopped streaming from TestRoom:2d7903453b912dc7A:to_room
1345
+ [TestRoom 56fa417676ac] TestRoom::Channel stopped streaming from TestRoom:2d7903453b912dc7B:to_room
1346
+ [TestRoom 228e41cc0d84] TestRoom::Channel stopped streaming from TestRoom:2d7903453b912dc73b9d2bc7511c8eb4:to_room
1347
+ [TestRoom 6ef58d75d87e] TestRoom::Channel stopped streaming from TestRoom:2d7903453b912dc75f5878a64e2e601d:to_room
1348
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7ABC:from_room: {type: "room_closed"}
1349
+ [TestRoom 17585385a8ce] Shutting down
1350
+ [TestRoom 17585385a8ce] Shutdown complete
1351
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc700b24e6f70306e5f:from_room: {type: "room_closed"}
1352
+ [TestRoom 7aeaa165980e] Shutting down
1353
+ [TestRoom 7aeaa165980e] Shutdown complete
1354
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7A:from_room: {type: "room_closed"}
1355
+ [TestRoom 24e80298d2a9] Shutting down
1356
+ [TestRoom 24e80298d2a9] Shutdown complete
1357
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7f3fa8ed852187a01:from_room: {type: "room_closed"}
1358
+ [TestRoom 08834f7a3537] Shutting down
1359
+ [TestRoom 08834f7a3537] Shutdown complete
1360
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc73b9d2bc7511c8eb4:from_room: {type: "room_closed"}
1361
+ [TestRoom 228e41cc0d84] Shutting down
1362
+ [TestRoom 228e41cc0d84] Shutdown complete
1363
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc75f5878a64e2e601d:from_room: {type: "room_closed"}
1364
+ [TestRoom 6ef58d75d87e] Shutting down
1365
+ [TestRoom 6ef58d75d87e] Shutdown complete
1366
+ [ActionCable] Broadcasting to TestRoom:2d7903453b912dc7B:from_room: {type: "room_closed"}
1367
+ [TestRoom 56fa417676ac] Shutting down
1368
+ [TestRoom 56fa417676ac] Shutdown complete
1369
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5027d8c626be8ebe0:to_room: {type: "member_joined", tags: [], mtok: "f03d1a15eadfa60ffa4587721edef5a0"}
1370
+ [TestRoom aae840e6c8f0] Initializing new TestRoom
1371
+ [TestRoom aae840e6c8f0] UUID: aae840e6c8f0
1372
+ [TestRoom aae840e6c8f0] Key: TestRoom:3e562f7a7c1b59f5027d8c626be8ebe0
1373
+ [TestRoom aae840e6c8f0] Ping watchdog
1374
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5027d8c626be8ebe0:from_room: {type: "custom_started"}
1375
+ [TestRoom aae840e6c8f0] Started
1376
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5027d8c626be8ebe0:from_room: {type: "room_opened"}
1377
+ [TestRoom aae840e6c8f0] TestRoom::Channel is streaming from TestRoom:3e562f7a7c1b59f5027d8c626be8ebe0:to_room
1378
+ [TestRoom aae840e6c8f0] TestRoom::Channel is transmitting the subscription confirmation
1379
+ [TestRoom aae840e6c8f0] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1380
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5027d8c626be8ebe0:to_room: {type: "member_left", mtok: "f03d1a15eadfa60ffa4587721edef5a0"}
1381
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5ABC:to_room: {type: "member_joined", tags: [], mtok: "b8475aae3603b9e0f856e4e0a8b9b477"}
1382
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1383
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
1384
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1385
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1386
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1387
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1388
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1389
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1390
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1391
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1392
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1393
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1394
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1395
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1396
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1397
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1398
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1399
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1400
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1401
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1402
+ <internal:kernel>:168:in 'Kernel#loop'
1403
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1404
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1405
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1406
+ [TestRoom 54bba2eda3c6] Initializing new TestRoom
1407
+ [TestRoom 54bba2eda3c6] UUID: 54bba2eda3c6
1408
+ [TestRoom 54bba2eda3c6] Key: TestRoom:3e562f7a7c1b59f5ABC
1409
+ [TestRoom 54bba2eda3c6] Ping watchdog
1410
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5ABC:from_room: {type: "custom_started"}
1411
+ [TestRoom 54bba2eda3c6] Started
1412
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5ABC:from_room: {type: "room_opened"}
1413
+ [TestRoom 54bba2eda3c6] TestRoom::Channel is streaming from TestRoom:3e562f7a7c1b59f5ABC:to_room
1414
+ [TestRoom 54bba2eda3c6] TestRoom::Channel is transmitting the subscription confirmation
1415
+ [TestRoom 54bba2eda3c6] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1416
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5ABC:to_room: {type: "member_left", mtok: "b8475aae3603b9e0f856e4e0a8b9b477"}
1417
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f54c309455e2448ddb:to_room: {type: "member_joined", tags: [], mtok: "b4a765b6634564d20a3a7018bbce4350"}
1418
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1419
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
1420
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1421
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1422
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1423
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1424
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1425
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1426
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1427
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1428
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1429
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1430
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1431
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1432
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1433
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1434
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1435
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1436
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1437
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1438
+ <internal:kernel>:168:in 'Kernel#loop'
1439
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1440
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1441
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1442
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5de93ddcd8d9d2c11:to_room: {type: "member_joined", tags: [], mtok: "59e201ba6fc425291afad37d799310f7"}
1443
+ [TestRoom 905bad5799ff] Initializing new TestRoom
1444
+ [TestRoom 905bad5799ff] UUID: 905bad5799ff
1445
+ [TestRoom 905bad5799ff] Key: TestRoom:3e562f7a7c1b59f5de93ddcd8d9d2c11
1446
+ [TestRoom 905bad5799ff] Ping watchdog
1447
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5de93ddcd8d9d2c11:from_room: {type: "custom_started"}
1448
+ [TestRoom 905bad5799ff] Started
1449
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5de93ddcd8d9d2c11:from_room: {type: "room_opened"}
1450
+ [TestRoom 905bad5799ff] TestRoom::Channel is streaming from TestRoom:3e562f7a7c1b59f5de93ddcd8d9d2c11:to_room
1451
+ [TestRoom 905bad5799ff] TestRoom::Channel is transmitting the subscription confirmation
1452
+ [TestRoom 905bad5799ff] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1453
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5de93ddcd8d9d2c11:to_room: {type: "member_joined", tags: [], mtok: "16a9e90c3f7ef4a51d0630232a37ddeb"}
1454
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1455
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
1456
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1457
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1458
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1459
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1460
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1461
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1462
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1463
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1464
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1465
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1466
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1467
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1468
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1469
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1470
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1471
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1472
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1473
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1474
+ <internal:kernel>:168:in 'Kernel#loop'
1475
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1476
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1477
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1478
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5de93ddcd8d9d2c11:to_room: {type: "member_left", mtok: "16a9e90c3f7ef4a51d0630232a37ddeb"}
1479
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5A:to_room: {type: "member_joined", tags: [], mtok: "b9527456eaf3bb2450ca2e3c8472466d"}
1480
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1481
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
1482
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1483
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1484
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1485
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1486
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1487
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1488
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1489
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1490
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1491
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1492
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1493
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1494
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1495
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1496
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1497
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1498
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1499
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1500
+ <internal:kernel>:168:in 'Kernel#loop'
1501
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1502
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1503
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1504
+ [TestRoom f6b7736edaf8] Initializing new TestRoom
1505
+ [TestRoom f6b7736edaf8] UUID: f6b7736edaf8
1506
+ [TestRoom f6b7736edaf8] Key: TestRoom:3e562f7a7c1b59f5A
1507
+ [TestRoom f6b7736edaf8] Ping watchdog
1508
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5A:from_room: {type: "custom_started"}
1509
+ [TestRoom f6b7736edaf8] Started
1510
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5A:from_room: {type: "room_opened"}
1511
+ [TestRoom f6b7736edaf8] TestRoom::Channel is streaming from TestRoom:3e562f7a7c1b59f5A:to_room
1512
+ [TestRoom f6b7736edaf8] TestRoom::Channel is transmitting the subscription confirmation
1513
+ [TestRoom f6b7736edaf8] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1514
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5B:to_room: {type: "member_joined", tags: [], mtok: "700bbea030e382bfbb016d3a14f67dd7"}
1515
+ [TestRoom a24b42d0d0c0] Initializing new TestRoom
1516
+ [TestRoom a24b42d0d0c0] UUID: a24b42d0d0c0
1517
+ [TestRoom a24b42d0d0c0] Key: TestRoom:3e562f7a7c1b59f5B
1518
+ [TestRoom a24b42d0d0c0] Ping watchdog
1519
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5B:from_room: {type: "custom_started"}
1520
+ [TestRoom a24b42d0d0c0] Started
1521
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5B:from_room: {type: "room_opened"}
1522
+ [TestRoom a24b42d0d0c0] TestRoom::Channel is streaming from TestRoom:3e562f7a7c1b59f5B:to_room
1523
+ [TestRoom a24b42d0d0c0] TestRoom::Channel is transmitting the subscription confirmation
1524
+ [TestRoom a24b42d0d0c0] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1525
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5B:to_room: {type: "member_left", mtok: "700bbea030e382bfbb016d3a14f67dd7"}
1526
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f53cbd2feb503d0b23:to_room: {type: "member_joined", tags: [], mtok: "3188d8e212051131b0c1e88d379b5859"}
1527
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1528
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
1529
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1530
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1531
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1532
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1533
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1534
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1535
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1536
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1537
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1538
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1539
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1540
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1541
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1542
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1543
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1544
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1545
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1546
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1547
+ <internal:kernel>:168:in 'Kernel#loop'
1548
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1549
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1550
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1551
+ [TestRoom a135347cf39b] Initializing new TestRoom
1552
+ [TestRoom a135347cf39b] UUID: a135347cf39b
1553
+ [TestRoom a135347cf39b] Key: TestRoom:3e562f7a7c1b59f53cbd2feb503d0b23
1554
+ [TestRoom a135347cf39b] Ping watchdog
1555
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f53cbd2feb503d0b23:from_room: {type: "custom_started"}
1556
+ [TestRoom a135347cf39b] Started
1557
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f53cbd2feb503d0b23:from_room: {type: "room_opened"}
1558
+ [TestRoom a135347cf39b] TestRoom::Channel is streaming from TestRoom:3e562f7a7c1b59f53cbd2feb503d0b23:to_room
1559
+ [TestRoom a135347cf39b] TestRoom::Channel is transmitting the subscription confirmation
1560
+ [TestRoom a135347cf39b] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1561
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f53cbd2feb503d0b23:to_room: {type: "member_left", mtok: "3188d8e212051131b0c1e88d379b5859"}
1562
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5a9cd03b3fda7cf0c:to_room: {type: "member_joined", tags: [], mtok: "b2d1fd90d2938576539690b601148a12"}
1563
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1564
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
1565
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1566
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1567
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1568
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1569
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1570
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1571
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1572
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1573
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1574
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1575
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1576
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1577
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1578
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1579
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1580
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1581
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1582
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1583
+ <internal:kernel>:168:in 'Kernel#loop'
1584
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1585
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1586
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1587
+ [TestRoom e24587451428] Initializing new TestRoom
1588
+ [TestRoom e24587451428] UUID: e24587451428
1589
+ [TestRoom e24587451428] Key: TestRoom:3e562f7a7c1b59f5a9cd03b3fda7cf0c
1590
+ [TestRoom e24587451428] Ping watchdog
1591
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5a9cd03b3fda7cf0c:from_room: {type: "custom_started"}
1592
+ [TestRoom e24587451428] Started
1593
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5a9cd03b3fda7cf0c:from_room: {type: "room_opened"}
1594
+ [TestRoom e24587451428] TestRoom::Channel is streaming from TestRoom:3e562f7a7c1b59f5a9cd03b3fda7cf0c:to_room
1595
+ [TestRoom e24587451428] TestRoom::Channel is transmitting the subscription confirmation
1596
+ [TestRoom e24587451428] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1597
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5a9cd03b3fda7cf0c:to_room: "KILL"
1598
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1599
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
1600
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1601
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1602
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1603
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1604
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1605
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1606
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1607
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1608
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1609
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1610
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1611
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1612
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1613
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1614
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1615
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1616
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1617
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1618
+ <internal:kernel>:168:in 'Kernel#loop'
1619
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1620
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1621
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1622
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f57cfeb85b77577232:to_room: {type: "member_joined", tags: [], mtok: "19472ffebeffb42ef37639c2dc654040"}
1623
+ [TestRoom 63070721da1d] Initializing new TestRoom
1624
+ [TestRoom 63070721da1d] UUID: 63070721da1d
1625
+ [TestRoom 63070721da1d] Key: TestRoom:3e562f7a7c1b59f57cfeb85b77577232
1626
+ [TestRoom 63070721da1d] Ping watchdog
1627
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f57cfeb85b77577232:from_room: {type: "custom_started"}
1628
+ [TestRoom 63070721da1d] Started
1629
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f57cfeb85b77577232:from_room: {type: "room_opened"}
1630
+ [TestRoom 63070721da1d] TestRoom::Channel is streaming from TestRoom:3e562f7a7c1b59f57cfeb85b77577232:to_room
1631
+ [TestRoom 63070721da1d] TestRoom::Channel is transmitting the subscription confirmation
1632
+ [TestRoom 63070721da1d] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1633
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f57cfeb85b77577232:to_room: {type: "member_left", mtok: "19472ffebeffb42ef37639c2dc654040"}
1634
+ [TestRoom 63070721da1d] Ping watchdog
1635
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1636
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
1637
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1638
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1639
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1640
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1641
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1642
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1643
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1644
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1645
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1646
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1647
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1648
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1649
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1650
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1651
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1652
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1653
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1654
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1655
+ <internal:kernel>:168:in 'Kernel#loop'
1656
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1657
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1658
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1659
+ [TestRoom 63070721da1d] Watchdog timeout for room TestRoom[3e562f7a7c1b59f57cfeb85b77577232], shutting down
1660
+ [TestRoom 63070721da1d] TestRoom::Channel stopped streaming from TestRoom:3e562f7a7c1b59f57cfeb85b77577232:to_room
1661
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f57cfeb85b77577232:from_room: {type: "room_closed"}
1662
+ [TestRoom 63070721da1d] Shutting down
1663
+ [TestRoom 63070721da1d] Shutdown complete
1664
+ Shutting down CableRoom
1665
+ [TestRoom aae840e6c8f0] TestRoom::Channel stopped streaming from TestRoom:3e562f7a7c1b59f5027d8c626be8ebe0:to_room
1666
+ [TestRoom 54bba2eda3c6] TestRoom::Channel stopped streaming from TestRoom:3e562f7a7c1b59f5ABC:to_room
1667
+ [TestRoom 905bad5799ff] TestRoom::Channel stopped streaming from TestRoom:3e562f7a7c1b59f5de93ddcd8d9d2c11:to_room
1668
+ [TestRoom f6b7736edaf8] TestRoom::Channel stopped streaming from TestRoom:3e562f7a7c1b59f5A:to_room
1669
+ [TestRoom a24b42d0d0c0] TestRoom::Channel stopped streaming from TestRoom:3e562f7a7c1b59f5B:to_room
1670
+ [TestRoom a135347cf39b] TestRoom::Channel stopped streaming from TestRoom:3e562f7a7c1b59f53cbd2feb503d0b23:to_room
1671
+ [TestRoom e24587451428] TestRoom::Channel stopped streaming from TestRoom:3e562f7a7c1b59f5a9cd03b3fda7cf0c:to_room
1672
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5ABC:from_room: {type: "room_closed"}
1673
+ [TestRoom 54bba2eda3c6] Shutting down
1674
+ [TestRoom 54bba2eda3c6] Shutdown complete
1675
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5de93ddcd8d9d2c11:from_room: {type: "room_closed"}
1676
+ [TestRoom 905bad5799ff] Shutting down
1677
+ [TestRoom 905bad5799ff] Shutdown complete
1678
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5A:from_room: {type: "room_closed"}
1679
+ [TestRoom f6b7736edaf8] Shutting down
1680
+ [TestRoom f6b7736edaf8] Shutdown complete
1681
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5B:from_room: {type: "room_closed"}
1682
+ [TestRoom a24b42d0d0c0] Shutting down
1683
+ [TestRoom a24b42d0d0c0] Shutdown complete
1684
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f53cbd2feb503d0b23:from_room: {type: "room_closed"}
1685
+ [TestRoom a135347cf39b] Shutting down
1686
+ [TestRoom a135347cf39b] Shutdown complete
1687
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5a9cd03b3fda7cf0c:from_room: {type: "room_closed"}
1688
+ [TestRoom e24587451428] Shutting down
1689
+ [TestRoom e24587451428] Shutdown complete
1690
+ [ActionCable] Broadcasting to TestRoom:3e562f7a7c1b59f5027d8c626be8ebe0:from_room: {type: "room_closed"}
1691
+ [TestRoom aae840e6c8f0] Shutting down
1692
+ [TestRoom aae840e6c8f0] Shutdown complete
1693
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb7097e300c764e57620b:to_room: {type: "member_joined", tags: [], mtok: "96a157ff3e3f0e88ad5f0c4203a1b022"}
1694
+ [TestRoom f855857c31d0] Initializing new TestRoom
1695
+ [TestRoom f855857c31d0] UUID: f855857c31d0
1696
+ [TestRoom f855857c31d0] Key: TestRoom:62f6e5dfc9fcb7097e300c764e57620b
1697
+ [TestRoom f855857c31d0] Ping watchdog
1698
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb7097e300c764e57620b:from_room: {type: "custom_started"}
1699
+ [TestRoom f855857c31d0] Started
1700
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb7097e300c764e57620b:from_room: {type: "room_opened"}
1701
+ [TestRoom f855857c31d0] TestRoom::Channel is streaming from TestRoom:62f6e5dfc9fcb7097e300c764e57620b:to_room
1702
+ [TestRoom f855857c31d0] TestRoom::Channel is transmitting the subscription confirmation
1703
+ [TestRoom f855857c31d0] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1704
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb7097e300c764e57620b:to_room: {type: "member_left", mtok: "96a157ff3e3f0e88ad5f0c4203a1b022"}
1705
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709ABC:to_room: {type: "member_joined", tags: [], mtok: "6e135651ad65ad5dd6786053d9999ae2"}
1706
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1707
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
1708
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1709
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1710
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1711
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1712
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1713
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1714
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1715
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1716
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1717
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1718
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1719
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1720
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1721
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1722
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1723
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1724
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1725
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1726
+ <internal:kernel>:168:in 'Kernel#loop'
1727
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1728
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1729
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1730
+ [TestRoom 3252d385a697] Initializing new TestRoom
1731
+ [TestRoom 3252d385a697] UUID: 3252d385a697
1732
+ [TestRoom 3252d385a697] Key: TestRoom:62f6e5dfc9fcb709ABC
1733
+ [TestRoom 3252d385a697] Ping watchdog
1734
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709ABC:from_room: {type: "custom_started"}
1735
+ [TestRoom 3252d385a697] Started
1736
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709ABC:from_room: {type: "room_opened"}
1737
+ [TestRoom 3252d385a697] TestRoom::Channel is streaming from TestRoom:62f6e5dfc9fcb709ABC:to_room
1738
+ [TestRoom 3252d385a697] TestRoom::Channel is transmitting the subscription confirmation
1739
+ [TestRoom 3252d385a697] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1740
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709ABC:to_room: {type: "member_left", mtok: "6e135651ad65ad5dd6786053d9999ae2"}
1741
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb70938944fa7e6dd10cc:to_room: {type: "member_joined", tags: [], mtok: "673b26beb67c165384cd95150da80775"}
1742
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1743
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
1744
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1745
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1746
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1747
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1748
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1749
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1750
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1751
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1752
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1753
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1754
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1755
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1756
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1757
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1758
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1759
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1760
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1761
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1762
+ <internal:kernel>:168:in 'Kernel#loop'
1763
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1764
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1765
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1766
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709a0c9785a1b41787f:to_room: {type: "member_joined", tags: [], mtok: "03f9c95a6d4292bbd801d063a9ed5984"}
1767
+ [TestRoom 5a8f6e58830b] Initializing new TestRoom
1768
+ [TestRoom 5a8f6e58830b] UUID: 5a8f6e58830b
1769
+ [TestRoom 5a8f6e58830b] Key: TestRoom:62f6e5dfc9fcb709a0c9785a1b41787f
1770
+ [TestRoom 5a8f6e58830b] Ping watchdog
1771
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709a0c9785a1b41787f:from_room: {type: "custom_started"}
1772
+ [TestRoom 5a8f6e58830b] Started
1773
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709a0c9785a1b41787f:from_room: {type: "room_opened"}
1774
+ [TestRoom 5a8f6e58830b] TestRoom::Channel is streaming from TestRoom:62f6e5dfc9fcb709a0c9785a1b41787f:to_room
1775
+ [TestRoom 5a8f6e58830b] TestRoom::Channel is transmitting the subscription confirmation
1776
+ [TestRoom 5a8f6e58830b] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1777
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709a0c9785a1b41787f:to_room: {type: "member_joined", tags: [], mtok: "74e10d27f70b2ea0ae9e85ac5b347703"}
1778
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1779
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
1780
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1781
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1782
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1783
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1784
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1785
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1786
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1787
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1788
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1789
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1790
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1791
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1792
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1793
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1794
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1795
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1796
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1797
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1798
+ <internal:kernel>:168:in 'Kernel#loop'
1799
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1800
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1801
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1802
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709a0c9785a1b41787f:to_room: {type: "member_left", mtok: "74e10d27f70b2ea0ae9e85ac5b347703"}
1803
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709A:to_room: {type: "member_joined", tags: [], mtok: "ac25e551df51b5b43b9ca0f7317f4cd7"}
1804
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1805
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
1806
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1807
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1808
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1809
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1810
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1811
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1812
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1813
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1814
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1815
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1816
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1817
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1818
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1819
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1820
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1821
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1822
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1823
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1824
+ <internal:kernel>:168:in 'Kernel#loop'
1825
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1826
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1827
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1828
+ [TestRoom beacb193c086] Initializing new TestRoom
1829
+ [TestRoom beacb193c086] UUID: beacb193c086
1830
+ [TestRoom beacb193c086] Key: TestRoom:62f6e5dfc9fcb709A
1831
+ [TestRoom beacb193c086] Ping watchdog
1832
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709A:from_room: {type: "custom_started"}
1833
+ [TestRoom beacb193c086] Started
1834
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709A:from_room: {type: "room_opened"}
1835
+ [TestRoom beacb193c086] TestRoom::Channel is streaming from TestRoom:62f6e5dfc9fcb709A:to_room
1836
+ [TestRoom beacb193c086] TestRoom::Channel is transmitting the subscription confirmation
1837
+ [TestRoom beacb193c086] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1838
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709B:to_room: {type: "member_joined", tags: [], mtok: "10b8523a149a4597b7eb49da77eb93ed"}
1839
+ [TestRoom bdfd7d7dec8b] Initializing new TestRoom
1840
+ [TestRoom bdfd7d7dec8b] UUID: bdfd7d7dec8b
1841
+ [TestRoom bdfd7d7dec8b] Key: TestRoom:62f6e5dfc9fcb709B
1842
+ [TestRoom bdfd7d7dec8b] Ping watchdog
1843
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709B:from_room: {type: "custom_started"}
1844
+ [TestRoom bdfd7d7dec8b] Started
1845
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709B:from_room: {type: "room_opened"}
1846
+ [TestRoom bdfd7d7dec8b] TestRoom::Channel is streaming from TestRoom:62f6e5dfc9fcb709B:to_room
1847
+ [TestRoom bdfd7d7dec8b] TestRoom::Channel is transmitting the subscription confirmation
1848
+ [TestRoom bdfd7d7dec8b] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1849
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709B:to_room: {type: "member_left", mtok: "10b8523a149a4597b7eb49da77eb93ed"}
1850
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709f4f073c67338cc1f:to_room: {type: "member_joined", tags: [], mtok: "a0764c08f309ac70ca15f93adfbfdcb2"}
1851
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1852
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
1853
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1854
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1855
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1856
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1857
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1858
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1859
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1860
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1861
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1862
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1863
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1864
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1865
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1866
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1867
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1868
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1869
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1870
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1871
+ <internal:kernel>:168:in 'Kernel#loop'
1872
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1873
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1874
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1875
+ [TestRoom 69e300ef5f6b] Initializing new TestRoom
1876
+ [TestRoom 69e300ef5f6b] UUID: 69e300ef5f6b
1877
+ [TestRoom 69e300ef5f6b] Key: TestRoom:62f6e5dfc9fcb709f4f073c67338cc1f
1878
+ [TestRoom 69e300ef5f6b] Ping watchdog
1879
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709f4f073c67338cc1f:from_room: {type: "custom_started"}
1880
+ [TestRoom 69e300ef5f6b] Started
1881
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709f4f073c67338cc1f:from_room: {type: "room_opened"}
1882
+ [TestRoom 69e300ef5f6b] TestRoom::Channel is streaming from TestRoom:62f6e5dfc9fcb709f4f073c67338cc1f:to_room
1883
+ [TestRoom 69e300ef5f6b] TestRoom::Channel is transmitting the subscription confirmation
1884
+ [TestRoom 69e300ef5f6b] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1885
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709f4f073c67338cc1f:to_room: {type: "member_left", mtok: "a0764c08f309ac70ca15f93adfbfdcb2"}
1886
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709e492dbf7442099ab:to_room: {type: "member_joined", tags: [], mtok: "c3ed1ce9e3590f94fb12c6370aeaf7f1"}
1887
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1888
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
1889
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1890
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1891
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1892
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1893
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1894
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1895
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1896
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1897
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1898
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1899
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1900
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1901
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1902
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1903
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1904
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1905
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1906
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1907
+ <internal:kernel>:168:in 'Kernel#loop'
1908
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1909
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1910
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1911
+ [TestRoom 25cab65507a9] Initializing new TestRoom
1912
+ [TestRoom 25cab65507a9] UUID: 25cab65507a9
1913
+ [TestRoom 25cab65507a9] Key: TestRoom:62f6e5dfc9fcb709e492dbf7442099ab
1914
+ [TestRoom 25cab65507a9] Ping watchdog
1915
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709e492dbf7442099ab:from_room: {type: "custom_started"}
1916
+ [TestRoom 25cab65507a9] Started
1917
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709e492dbf7442099ab:from_room: {type: "room_opened"}
1918
+ [TestRoom 25cab65507a9] TestRoom::Channel is streaming from TestRoom:62f6e5dfc9fcb709e492dbf7442099ab:to_room
1919
+ [TestRoom 25cab65507a9] TestRoom::Channel is transmitting the subscription confirmation
1920
+ [TestRoom 25cab65507a9] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1921
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709e492dbf7442099ab:to_room: "KILL"
1922
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1923
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
1924
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1925
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1926
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1927
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1928
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1929
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1930
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1931
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1932
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1933
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1934
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1935
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1936
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1937
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1938
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1939
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1940
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1941
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1942
+ <internal:kernel>:168:in 'Kernel#loop'
1943
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1944
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1945
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1946
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709bb759baec4fe4d50:to_room: {type: "member_joined", tags: [], mtok: "0db958fa5ce02fb629cc91894a139df1"}
1947
+ [TestRoom 8ae049945d8c] Initializing new TestRoom
1948
+ [TestRoom 8ae049945d8c] UUID: 8ae049945d8c
1949
+ [TestRoom 8ae049945d8c] Key: TestRoom:62f6e5dfc9fcb709bb759baec4fe4d50
1950
+ [TestRoom 8ae049945d8c] Ping watchdog
1951
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709bb759baec4fe4d50:from_room: {type: "custom_started"}
1952
+ [TestRoom 8ae049945d8c] Started
1953
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709bb759baec4fe4d50:from_room: {type: "room_opened"}
1954
+ [TestRoom 8ae049945d8c] TestRoom::Channel is streaming from TestRoom:62f6e5dfc9fcb709bb759baec4fe4d50:to_room
1955
+ [TestRoom 8ae049945d8c] TestRoom::Channel is transmitting the subscription confirmation
1956
+ [TestRoom 8ae049945d8c] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
1957
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709bb759baec4fe4d50:to_room: {type: "member_left", mtok: "0db958fa5ce02fb629cc91894a139df1"}
1958
+ [TestRoom 8ae049945d8c] Ping watchdog
1959
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
1960
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
1961
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
1962
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
1963
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
1964
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
1965
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1966
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1967
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
1968
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
1969
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
1970
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
1971
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
1972
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
1973
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
1974
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
1975
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
1976
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
1977
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
1978
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1979
+ <internal:kernel>:168:in 'Kernel#loop'
1980
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1981
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
1982
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
1983
+ [TestRoom 8ae049945d8c] Watchdog timeout for room TestRoom[62f6e5dfc9fcb709bb759baec4fe4d50], shutting down
1984
+ [TestRoom 8ae049945d8c] TestRoom::Channel stopped streaming from TestRoom:62f6e5dfc9fcb709bb759baec4fe4d50:to_room
1985
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709bb759baec4fe4d50:from_room: {type: "room_closed"}
1986
+ [TestRoom 8ae049945d8c] Shutting down
1987
+ [TestRoom 8ae049945d8c] Shutdown complete
1988
+ Shutting down CableRoom
1989
+ [TestRoom f855857c31d0] TestRoom::Channel stopped streaming from TestRoom:62f6e5dfc9fcb7097e300c764e57620b:to_room
1990
+ [TestRoom 3252d385a697] TestRoom::Channel stopped streaming from TestRoom:62f6e5dfc9fcb709ABC:to_room
1991
+ [TestRoom 5a8f6e58830b] TestRoom::Channel stopped streaming from TestRoom:62f6e5dfc9fcb709a0c9785a1b41787f:to_room
1992
+ [TestRoom beacb193c086] TestRoom::Channel stopped streaming from TestRoom:62f6e5dfc9fcb709A:to_room
1993
+ [TestRoom bdfd7d7dec8b] TestRoom::Channel stopped streaming from TestRoom:62f6e5dfc9fcb709B:to_room
1994
+ [TestRoom 69e300ef5f6b] TestRoom::Channel stopped streaming from TestRoom:62f6e5dfc9fcb709f4f073c67338cc1f:to_room
1995
+ [TestRoom 25cab65507a9] TestRoom::Channel stopped streaming from TestRoom:62f6e5dfc9fcb709e492dbf7442099ab:to_room
1996
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709ABC:from_room: {type: "room_closed"}
1997
+ [TestRoom 3252d385a697] Shutting down
1998
+ [TestRoom 3252d385a697] Shutdown complete
1999
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709a0c9785a1b41787f:from_room: {type: "room_closed"}
2000
+ [TestRoom 5a8f6e58830b] Shutting down
2001
+ [TestRoom 5a8f6e58830b] Shutdown complete
2002
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709A:from_room: {type: "room_closed"}
2003
+ [TestRoom beacb193c086] Shutting down
2004
+ [TestRoom beacb193c086] Shutdown complete
2005
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb7097e300c764e57620b:from_room: {type: "room_closed"}
2006
+ [TestRoom f855857c31d0] Shutting down
2007
+ [TestRoom f855857c31d0] Shutdown complete
2008
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709B:from_room: {type: "room_closed"}
2009
+ [TestRoom bdfd7d7dec8b] Shutting down
2010
+ [TestRoom bdfd7d7dec8b] Shutdown complete
2011
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709f4f073c67338cc1f:from_room: {type: "room_closed"}
2012
+ [TestRoom 69e300ef5f6b] Shutting down
2013
+ [TestRoom 69e300ef5f6b] Shutdown complete
2014
+ [ActionCable] Broadcasting to TestRoom:62f6e5dfc9fcb709e492dbf7442099ab:from_room: {type: "room_closed"}
2015
+ [TestRoom 25cab65507a9] Shutting down
2016
+ [TestRoom 25cab65507a9] Shutdown complete
2017
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d83b44e1c369b9f72f:to_room: {type: "member_joined", tags: [], mtok: "e896623da1627c2113d179b6325a6e08"}
2018
+ [TestRoom f18f2a899b3f] Initializing new TestRoom
2019
+ [TestRoom f18f2a899b3f] UUID: f18f2a899b3f
2020
+ [TestRoom f18f2a899b3f] Key: TestRoom:360a8f77d10057d83b44e1c369b9f72f
2021
+ [TestRoom f18f2a899b3f] Ping watchdog
2022
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d83b44e1c369b9f72f:from_room: {type: "custom_started"}
2023
+ [TestRoom f18f2a899b3f] Started
2024
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d83b44e1c369b9f72f:from_room: {type: "room_opened"}
2025
+ [TestRoom f18f2a899b3f] TestRoom::Channel is streaming from TestRoom:360a8f77d10057d83b44e1c369b9f72f:to_room
2026
+ [TestRoom f18f2a899b3f] TestRoom::Channel is transmitting the subscription confirmation
2027
+ [TestRoom f18f2a899b3f] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2028
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d83b44e1c369b9f72f:to_room: {type: "member_left", mtok: "e896623da1627c2113d179b6325a6e08"}
2029
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8ABC:to_room: {type: "member_joined", tags: [], mtok: "bf227358b2475faaf62d56fef6ec9771"}
2030
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2031
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
2032
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2033
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2034
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2035
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2036
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2037
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2038
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2039
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2040
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2041
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2042
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2043
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2044
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2045
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2046
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2047
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2048
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2049
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2050
+ <internal:kernel>:168:in 'Kernel#loop'
2051
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2052
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2053
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2054
+ [TestRoom 7f854e878333] Initializing new TestRoom
2055
+ [TestRoom 7f854e878333] UUID: 7f854e878333
2056
+ [TestRoom 7f854e878333] Key: TestRoom:360a8f77d10057d8ABC
2057
+ [TestRoom 7f854e878333] Ping watchdog
2058
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8ABC:from_room: {type: "custom_started"}
2059
+ [TestRoom 7f854e878333] Started
2060
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8ABC:from_room: {type: "room_opened"}
2061
+ [TestRoom 7f854e878333] TestRoom::Channel is streaming from TestRoom:360a8f77d10057d8ABC:to_room
2062
+ [TestRoom 7f854e878333] TestRoom::Channel is transmitting the subscription confirmation
2063
+ [TestRoom 7f854e878333] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2064
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8ABC:to_room: {type: "member_left", mtok: "bf227358b2475faaf62d56fef6ec9771"}
2065
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d83d38b427852cbb14:to_room: {type: "member_joined", tags: [], mtok: "eb79094289467ba46256dd0bfba35a11"}
2066
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2067
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
2068
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2069
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2070
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2071
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2072
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2073
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2074
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2075
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2076
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2077
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2078
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2079
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2080
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2081
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2082
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2083
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2084
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2085
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2086
+ <internal:kernel>:168:in 'Kernel#loop'
2087
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2088
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2089
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2090
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8011000fec9f1a751:to_room: {type: "member_joined", tags: [], mtok: "fd34d82eac948bbd37b5d8952291c59b"}
2091
+ [TestRoom 85c5fd8585b1] Initializing new TestRoom
2092
+ [TestRoom 85c5fd8585b1] UUID: 85c5fd8585b1
2093
+ [TestRoom 85c5fd8585b1] Key: TestRoom:360a8f77d10057d8011000fec9f1a751
2094
+ [TestRoom 85c5fd8585b1] Ping watchdog
2095
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8011000fec9f1a751:from_room: {type: "custom_started"}
2096
+ [TestRoom 85c5fd8585b1] Started
2097
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8011000fec9f1a751:from_room: {type: "room_opened"}
2098
+ [TestRoom 85c5fd8585b1] TestRoom::Channel is streaming from TestRoom:360a8f77d10057d8011000fec9f1a751:to_room
2099
+ [TestRoom 85c5fd8585b1] TestRoom::Channel is transmitting the subscription confirmation
2100
+ [TestRoom 85c5fd8585b1] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2101
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8011000fec9f1a751:to_room: {type: "member_joined", tags: [], mtok: "aedddcc084a009d068f3298fad7eb242"}
2102
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2103
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
2104
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2105
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2106
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2107
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2108
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2109
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2110
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2111
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2112
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2113
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2114
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2115
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2116
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2117
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2118
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2119
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2120
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2121
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2122
+ <internal:kernel>:168:in 'Kernel#loop'
2123
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2124
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2125
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2126
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8011000fec9f1a751:to_room: {type: "member_left", mtok: "aedddcc084a009d068f3298fad7eb242"}
2127
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8A:to_room: {type: "member_joined", tags: [], mtok: "ccf215dc8b045ebd0fb5697d8fd2a699"}
2128
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2129
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
2130
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2131
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2132
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2133
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2134
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2135
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2136
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2137
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2138
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2139
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2140
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2141
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2142
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2143
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2144
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2145
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2146
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2147
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2148
+ <internal:kernel>:168:in 'Kernel#loop'
2149
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2150
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2151
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2152
+ [TestRoom ab2dc879e27c] Initializing new TestRoom
2153
+ [TestRoom ab2dc879e27c] UUID: ab2dc879e27c
2154
+ [TestRoom ab2dc879e27c] Key: TestRoom:360a8f77d10057d8A
2155
+ [TestRoom ab2dc879e27c] Ping watchdog
2156
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8A:from_room: {type: "custom_started"}
2157
+ [TestRoom ab2dc879e27c] Started
2158
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8A:from_room: {type: "room_opened"}
2159
+ [TestRoom ab2dc879e27c] TestRoom::Channel is streaming from TestRoom:360a8f77d10057d8A:to_room
2160
+ [TestRoom ab2dc879e27c] TestRoom::Channel is transmitting the subscription confirmation
2161
+ [TestRoom ab2dc879e27c] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2162
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8B:to_room: {type: "member_joined", tags: [], mtok: "9280a013d00063443ff155e49500c131"}
2163
+ [TestRoom c96949b7c57a] Initializing new TestRoom
2164
+ [TestRoom c96949b7c57a] UUID: c96949b7c57a
2165
+ [TestRoom c96949b7c57a] Key: TestRoom:360a8f77d10057d8B
2166
+ [TestRoom c96949b7c57a] Ping watchdog
2167
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8B:from_room: {type: "custom_started"}
2168
+ [TestRoom c96949b7c57a] Started
2169
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8B:from_room: {type: "room_opened"}
2170
+ [TestRoom c96949b7c57a] TestRoom::Channel is streaming from TestRoom:360a8f77d10057d8B:to_room
2171
+ [TestRoom c96949b7c57a] TestRoom::Channel is transmitting the subscription confirmation
2172
+ [TestRoom c96949b7c57a] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2173
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8B:to_room: {type: "member_left", mtok: "9280a013d00063443ff155e49500c131"}
2174
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d863d5bfbe1f8cc6c9:to_room: {type: "member_joined", tags: [], mtok: "9dd828c948a05e14b1868e4a1c50cf46"}
2175
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2176
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
2177
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2178
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2179
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2180
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2181
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2182
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2183
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2184
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2185
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2186
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2187
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2188
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2189
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2190
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2191
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2192
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2193
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2194
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2195
+ <internal:kernel>:168:in 'Kernel#loop'
2196
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2197
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2198
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2199
+ [TestRoom 7909e15d04bb] Initializing new TestRoom
2200
+ [TestRoom 7909e15d04bb] UUID: 7909e15d04bb
2201
+ [TestRoom 7909e15d04bb] Key: TestRoom:360a8f77d10057d863d5bfbe1f8cc6c9
2202
+ [TestRoom 7909e15d04bb] Ping watchdog
2203
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d863d5bfbe1f8cc6c9:from_room: {type: "custom_started"}
2204
+ [TestRoom 7909e15d04bb] Started
2205
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d863d5bfbe1f8cc6c9:from_room: {type: "room_opened"}
2206
+ [TestRoom 7909e15d04bb] TestRoom::Channel is streaming from TestRoom:360a8f77d10057d863d5bfbe1f8cc6c9:to_room
2207
+ [TestRoom 7909e15d04bb] TestRoom::Channel is transmitting the subscription confirmation
2208
+ [TestRoom 7909e15d04bb] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2209
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d863d5bfbe1f8cc6c9:to_room: {type: "member_left", mtok: "9dd828c948a05e14b1868e4a1c50cf46"}
2210
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d85156eabad7ab8090:to_room: {type: "member_joined", tags: [], mtok: "6060f0549ebfcc790d2cfbabf436f18a"}
2211
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2212
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
2213
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2214
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2215
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2216
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2217
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2218
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2219
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2220
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2221
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2222
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2223
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2224
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2225
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2226
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2227
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2228
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2229
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2230
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2231
+ <internal:kernel>:168:in 'Kernel#loop'
2232
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2233
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2234
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2235
+ [TestRoom 2f8600b20f75] Initializing new TestRoom
2236
+ [TestRoom 2f8600b20f75] UUID: 2f8600b20f75
2237
+ [TestRoom 2f8600b20f75] Key: TestRoom:360a8f77d10057d85156eabad7ab8090
2238
+ [TestRoom 2f8600b20f75] Ping watchdog
2239
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d85156eabad7ab8090:from_room: {type: "custom_started"}
2240
+ [TestRoom 2f8600b20f75] Started
2241
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d85156eabad7ab8090:from_room: {type: "room_opened"}
2242
+ [TestRoom 2f8600b20f75] TestRoom::Channel is streaming from TestRoom:360a8f77d10057d85156eabad7ab8090:to_room
2243
+ [TestRoom 2f8600b20f75] TestRoom::Channel is transmitting the subscription confirmation
2244
+ [TestRoom 2f8600b20f75] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2245
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d85156eabad7ab8090:to_room: "KILL"
2246
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2247
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
2248
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2249
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2250
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2251
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2252
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2253
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2254
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2255
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2256
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2257
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2258
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2259
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2260
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2261
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2262
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2263
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2264
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2265
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2266
+ <internal:kernel>:168:in 'Kernel#loop'
2267
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2268
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2269
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2270
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d877067ac9b6a0f8d0:to_room: {type: "member_joined", tags: [], mtok: "8c88ea74a190a45e0593d2b8f4f8889e"}
2271
+ [TestRoom 1d280c30615a] Initializing new TestRoom
2272
+ [TestRoom 1d280c30615a] UUID: 1d280c30615a
2273
+ [TestRoom 1d280c30615a] Key: TestRoom:360a8f77d10057d877067ac9b6a0f8d0
2274
+ [TestRoom 1d280c30615a] Ping watchdog
2275
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d877067ac9b6a0f8d0:from_room: {type: "custom_started"}
2276
+ [TestRoom 1d280c30615a] Started
2277
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d877067ac9b6a0f8d0:from_room: {type: "room_opened"}
2278
+ [TestRoom 1d280c30615a] TestRoom::Channel is streaming from TestRoom:360a8f77d10057d877067ac9b6a0f8d0:to_room
2279
+ [TestRoom 1d280c30615a] TestRoom::Channel is transmitting the subscription confirmation
2280
+ [TestRoom 1d280c30615a] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2281
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d877067ac9b6a0f8d0:to_room: {type: "member_left", mtok: "8c88ea74a190a45e0593d2b8f4f8889e"}
2282
+ [TestRoom 1d280c30615a] Ping watchdog
2283
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2284
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:33:in 'block (3 levels) in <module:InputHandling>'
2285
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2286
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2287
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2288
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2289
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2290
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2291
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2292
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2293
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2294
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2295
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2296
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2297
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2298
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2299
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2300
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2301
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2302
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2303
+ <internal:kernel>:168:in 'Kernel#loop'
2304
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2305
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2306
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2307
+ [TestRoom 1d280c30615a] Watchdog timeout for room TestRoom[360a8f77d10057d877067ac9b6a0f8d0], shutting down
2308
+ [TestRoom 1d280c30615a] TestRoom::Channel stopped streaming from TestRoom:360a8f77d10057d877067ac9b6a0f8d0:to_room
2309
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d877067ac9b6a0f8d0:from_room: {type: "room_closed"}
2310
+ [TestRoom 1d280c30615a] Shutting down
2311
+ [TestRoom 1d280c30615a] Shutdown complete
2312
+ Shutting down CableRoom
2313
+ [TestRoom f18f2a899b3f] TestRoom::Channel stopped streaming from TestRoom:360a8f77d10057d83b44e1c369b9f72f:to_room
2314
+ [TestRoom 7f854e878333] TestRoom::Channel stopped streaming from TestRoom:360a8f77d10057d8ABC:to_room
2315
+ [TestRoom 85c5fd8585b1] TestRoom::Channel stopped streaming from TestRoom:360a8f77d10057d8011000fec9f1a751:to_room
2316
+ [TestRoom ab2dc879e27c] TestRoom::Channel stopped streaming from TestRoom:360a8f77d10057d8A:to_room
2317
+ [TestRoom c96949b7c57a] TestRoom::Channel stopped streaming from TestRoom:360a8f77d10057d8B:to_room
2318
+ [TestRoom 7909e15d04bb] TestRoom::Channel stopped streaming from TestRoom:360a8f77d10057d863d5bfbe1f8cc6c9:to_room
2319
+ [TestRoom 2f8600b20f75] TestRoom::Channel stopped streaming from TestRoom:360a8f77d10057d85156eabad7ab8090:to_room
2320
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8ABC:from_room: {type: "room_closed"}
2321
+ [TestRoom 7f854e878333] Shutting down
2322
+ [TestRoom 7f854e878333] Shutdown complete
2323
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8011000fec9f1a751:from_room: {type: "room_closed"}
2324
+ [TestRoom 85c5fd8585b1] Shutting down
2325
+ [TestRoom 85c5fd8585b1] Shutdown complete
2326
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8A:from_room: {type: "room_closed"}
2327
+ [TestRoom ab2dc879e27c] Shutting down
2328
+ [TestRoom ab2dc879e27c] Shutdown complete
2329
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d8B:from_room: {type: "room_closed"}
2330
+ [TestRoom c96949b7c57a] Shutting down
2331
+ [TestRoom c96949b7c57a] Shutdown complete
2332
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d863d5bfbe1f8cc6c9:from_room: {type: "room_closed"}
2333
+ [TestRoom 7909e15d04bb] Shutting down
2334
+ [TestRoom 7909e15d04bb] Shutdown complete
2335
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d85156eabad7ab8090:from_room: {type: "room_closed"}
2336
+ [TestRoom 2f8600b20f75] Shutting down
2337
+ [TestRoom 2f8600b20f75] Shutdown complete
2338
+ [ActionCable] Broadcasting to TestRoom:360a8f77d10057d83b44e1c369b9f72f:from_room: {type: "room_closed"}
2339
+ [TestRoom f18f2a899b3f] Shutting down
2340
+ [TestRoom f18f2a899b3f] Shutdown complete
2341
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b3bd4e5bef4250be9:to_room: {type: "member_joined", tags: [], mtok: "d32cdb689a21d34945fe39ed6e3288c4"}
2342
+ [TestRoom b72968a9c9e2] Initializing new TestRoom
2343
+ [TestRoom b72968a9c9e2] UUID: b72968a9c9e2
2344
+ [TestRoom b72968a9c9e2] Key: TestRoom:57c1f505c8c41c2b3bd4e5bef4250be9
2345
+ [TestRoom b72968a9c9e2] Ping watchdog
2346
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b3bd4e5bef4250be9:from_room: {type: "custom_started"}
2347
+ [TestRoom b72968a9c9e2] Started
2348
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b3bd4e5bef4250be9:from_room: {type: "room_opened"}
2349
+ [TestRoom b72968a9c9e2] TestRoom::Channel is streaming from TestRoom:57c1f505c8c41c2b3bd4e5bef4250be9:to_room
2350
+ [TestRoom b72968a9c9e2] TestRoom::Channel is transmitting the subscription confirmation
2351
+ [TestRoom b72968a9c9e2] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2352
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b3bd4e5bef4250be9:to_room: {type: "member_left", mtok: "d32cdb689a21d34945fe39ed6e3288c4"}
2353
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bABC:to_room: {type: "member_joined", tags: [], mtok: "a829edc8f7587fcb6d56afd236072391"}
2354
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2355
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
2356
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2357
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2358
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2359
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2360
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2361
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2362
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2363
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2364
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2365
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2366
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2367
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2368
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2369
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2370
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2371
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2372
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2373
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2374
+ <internal:kernel>:168:in 'Kernel#loop'
2375
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2376
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2377
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2378
+ [TestRoom e2ed909ac7dd] Initializing new TestRoom
2379
+ [TestRoom e2ed909ac7dd] UUID: e2ed909ac7dd
2380
+ [TestRoom e2ed909ac7dd] Key: TestRoom:57c1f505c8c41c2bABC
2381
+ [TestRoom e2ed909ac7dd] Ping watchdog
2382
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bABC:from_room: {type: "custom_started"}
2383
+ [TestRoom e2ed909ac7dd] Started
2384
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bABC:from_room: {type: "room_opened"}
2385
+ [TestRoom e2ed909ac7dd] TestRoom::Channel is streaming from TestRoom:57c1f505c8c41c2bABC:to_room
2386
+ [TestRoom e2ed909ac7dd] TestRoom::Channel is transmitting the subscription confirmation
2387
+ [TestRoom e2ed909ac7dd] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2388
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bABC:to_room: {type: "member_left", mtok: "a829edc8f7587fcb6d56afd236072391"}
2389
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2baa7a94ea5e2133fb:to_room: {type: "member_joined", tags: [], mtok: "8c0f8ab28d72572eb6b96c6b2b8aecac"}
2390
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2391
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
2392
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2393
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2394
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2395
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2396
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2397
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2398
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2399
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2400
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2401
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2402
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2403
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2404
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2405
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2406
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2407
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2408
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2409
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2410
+ <internal:kernel>:168:in 'Kernel#loop'
2411
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2412
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2413
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2414
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b447a2663168e81c0:to_room: {type: "member_joined", tags: [], mtok: "df2f1a232d78ecef3806add53a4dc591"}
2415
+ [TestRoom 0f52439497fb] Initializing new TestRoom
2416
+ [TestRoom 0f52439497fb] UUID: 0f52439497fb
2417
+ [TestRoom 0f52439497fb] Key: TestRoom:57c1f505c8c41c2b447a2663168e81c0
2418
+ [TestRoom 0f52439497fb] Ping watchdog
2419
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b447a2663168e81c0:from_room: {type: "custom_started"}
2420
+ [TestRoom 0f52439497fb] Started
2421
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b447a2663168e81c0:from_room: {type: "room_opened"}
2422
+ [TestRoom 0f52439497fb] TestRoom::Channel is streaming from TestRoom:57c1f505c8c41c2b447a2663168e81c0:to_room
2423
+ [TestRoom 0f52439497fb] TestRoom::Channel is transmitting the subscription confirmation
2424
+ [TestRoom 0f52439497fb] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2425
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b447a2663168e81c0:to_room: {type: "member_joined", tags: [], mtok: "3318193b70ea25c8f7a631de9f03fd35"}
2426
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2427
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
2428
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2429
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2430
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2431
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2432
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2433
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2434
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2435
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2436
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2437
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2438
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2439
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2440
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2441
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2442
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2443
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2444
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2445
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2446
+ <internal:kernel>:168:in 'Kernel#loop'
2447
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2448
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2449
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2450
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b447a2663168e81c0:to_room: {type: "member_left", mtok: "3318193b70ea25c8f7a631de9f03fd35"}
2451
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bA:to_room: {type: "member_joined", tags: [], mtok: "b16c41dc4b5a23cd53c21e184252e3b9"}
2452
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2453
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
2454
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2455
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2456
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2457
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2458
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2459
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2460
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2461
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2462
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2463
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2464
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2465
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2466
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2467
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2468
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2469
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2470
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2471
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2472
+ <internal:kernel>:168:in 'Kernel#loop'
2473
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2474
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2475
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2476
+ [TestRoom b9c281720db2] Initializing new TestRoom
2477
+ [TestRoom b9c281720db2] UUID: b9c281720db2
2478
+ [TestRoom b9c281720db2] Key: TestRoom:57c1f505c8c41c2bA
2479
+ [TestRoom b9c281720db2] Ping watchdog
2480
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bA:from_room: {type: "custom_started"}
2481
+ [TestRoom b9c281720db2] Started
2482
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bA:from_room: {type: "room_opened"}
2483
+ [TestRoom b9c281720db2] TestRoom::Channel is streaming from TestRoom:57c1f505c8c41c2bA:to_room
2484
+ [TestRoom b9c281720db2] TestRoom::Channel is transmitting the subscription confirmation
2485
+ [TestRoom b9c281720db2] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2486
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bB:to_room: {type: "member_joined", tags: [], mtok: "c7e679afcc8087ca7be31d9251201688"}
2487
+ [TestRoom 48cdd094a3e3] Initializing new TestRoom
2488
+ [TestRoom 48cdd094a3e3] UUID: 48cdd094a3e3
2489
+ [TestRoom 48cdd094a3e3] Key: TestRoom:57c1f505c8c41c2bB
2490
+ [TestRoom 48cdd094a3e3] Ping watchdog
2491
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bB:from_room: {type: "custom_started"}
2492
+ [TestRoom 48cdd094a3e3] Started
2493
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bB:from_room: {type: "room_opened"}
2494
+ [TestRoom 48cdd094a3e3] TestRoom::Channel is streaming from TestRoom:57c1f505c8c41c2bB:to_room
2495
+ [TestRoom 48cdd094a3e3] TestRoom::Channel is transmitting the subscription confirmation
2496
+ [TestRoom 48cdd094a3e3] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2497
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bB:to_room: {type: "member_left", mtok: "c7e679afcc8087ca7be31d9251201688"}
2498
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bd04e541c11f118cc:to_room: {type: "member_joined", tags: [], mtok: "13aaa150cd5775f32ef66379abd525a5"}
2499
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2500
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
2501
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2502
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2503
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2504
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2505
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2506
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2507
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2508
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2509
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2510
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2511
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2512
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2513
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2514
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2515
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2516
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2517
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2518
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2519
+ <internal:kernel>:168:in 'Kernel#loop'
2520
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2521
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2522
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2523
+ [TestRoom 91333f07f4ce] Initializing new TestRoom
2524
+ [TestRoom 91333f07f4ce] UUID: 91333f07f4ce
2525
+ [TestRoom 91333f07f4ce] Key: TestRoom:57c1f505c8c41c2bd04e541c11f118cc
2526
+ [TestRoom 91333f07f4ce] Ping watchdog
2527
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bd04e541c11f118cc:from_room: {type: "custom_started"}
2528
+ [TestRoom 91333f07f4ce] Started
2529
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bd04e541c11f118cc:from_room: {type: "room_opened"}
2530
+ [TestRoom 91333f07f4ce] TestRoom::Channel is streaming from TestRoom:57c1f505c8c41c2bd04e541c11f118cc:to_room
2531
+ [TestRoom 91333f07f4ce] TestRoom::Channel is transmitting the subscription confirmation
2532
+ [TestRoom 91333f07f4ce] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2533
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bd04e541c11f118cc:to_room: {type: "member_left", mtok: "13aaa150cd5775f32ef66379abd525a5"}
2534
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b3304f3b1e65078f5:to_room: {type: "member_joined", tags: [], mtok: "4dbe9793b4d991a0edefea82ba15a78e"}
2535
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2536
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
2537
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2538
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2539
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2540
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2541
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2542
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2543
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2544
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2545
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2546
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2547
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2548
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2549
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2550
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2551
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2552
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2553
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2554
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2555
+ <internal:kernel>:168:in 'Kernel#loop'
2556
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2557
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2558
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2559
+ [TestRoom 0e6656c70199] Initializing new TestRoom
2560
+ [TestRoom 0e6656c70199] UUID: 0e6656c70199
2561
+ [TestRoom 0e6656c70199] Key: TestRoom:57c1f505c8c41c2b3304f3b1e65078f5
2562
+ [TestRoom 0e6656c70199] Ping watchdog
2563
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b3304f3b1e65078f5:from_room: {type: "custom_started"}
2564
+ [TestRoom 0e6656c70199] Started
2565
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b3304f3b1e65078f5:from_room: {type: "room_opened"}
2566
+ [TestRoom 0e6656c70199] TestRoom::Channel is streaming from TestRoom:57c1f505c8c41c2b3304f3b1e65078f5:to_room
2567
+ [TestRoom 0e6656c70199] TestRoom::Channel is transmitting the subscription confirmation
2568
+ [TestRoom 0e6656c70199] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2569
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b3304f3b1e65078f5:to_room: "KILL"
2570
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2571
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
2572
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2573
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2574
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2575
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2576
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2577
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2578
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2579
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2580
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2581
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2582
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2583
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2584
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2585
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2586
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2587
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2588
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2589
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2590
+ <internal:kernel>:168:in 'Kernel#loop'
2591
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2592
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2593
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2594
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bcfc1b7d3267d9f40:to_room: {type: "member_joined", tags: [], mtok: "a747af534dfa6109d7577b3ffa14c991"}
2595
+ [TestRoom b615a5bb2421] Initializing new TestRoom
2596
+ [TestRoom b615a5bb2421] UUID: b615a5bb2421
2597
+ [TestRoom b615a5bb2421] Key: TestRoom:57c1f505c8c41c2bcfc1b7d3267d9f40
2598
+ [TestRoom b615a5bb2421] Ping watchdog
2599
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bcfc1b7d3267d9f40:from_room: {type: "custom_started"}
2600
+ [TestRoom b615a5bb2421] Started
2601
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bcfc1b7d3267d9f40:from_room: {type: "room_opened"}
2602
+ [TestRoom b615a5bb2421] TestRoom::Channel is streaming from TestRoom:57c1f505c8c41c2bcfc1b7d3267d9f40:to_room
2603
+ [TestRoom b615a5bb2421] TestRoom::Channel is transmitting the subscription confirmation
2604
+ [TestRoom b615a5bb2421] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2605
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bcfc1b7d3267d9f40:to_room: {type: "member_left", mtok: "a747af534dfa6109d7577b3ffa14c991"}
2606
+ [TestRoom b615a5bb2421] Ping watchdog
2607
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2608
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
2609
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2610
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2611
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2612
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2613
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2614
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2615
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2616
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2617
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2618
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2619
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2620
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2621
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2622
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2623
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2624
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2625
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2626
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2627
+ <internal:kernel>:168:in 'Kernel#loop'
2628
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2629
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2630
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2631
+ [TestRoom b615a5bb2421] Watchdog timeout for room TestRoom[57c1f505c8c41c2bcfc1b7d3267d9f40], shutting down
2632
+ [TestRoom b615a5bb2421] TestRoom::Channel stopped streaming from TestRoom:57c1f505c8c41c2bcfc1b7d3267d9f40:to_room
2633
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bcfc1b7d3267d9f40:from_room: {type: "room_closed"}
2634
+ [TestRoom b615a5bb2421] Shutting down
2635
+ [TestRoom b615a5bb2421] Shutdown complete
2636
+ Shutting down CableRoom
2637
+ [TestRoom b72968a9c9e2] TestRoom::Channel stopped streaming from TestRoom:57c1f505c8c41c2b3bd4e5bef4250be9:to_room
2638
+ [TestRoom e2ed909ac7dd] TestRoom::Channel stopped streaming from TestRoom:57c1f505c8c41c2bABC:to_room
2639
+ [TestRoom 0f52439497fb] TestRoom::Channel stopped streaming from TestRoom:57c1f505c8c41c2b447a2663168e81c0:to_room
2640
+ [TestRoom b9c281720db2] TestRoom::Channel stopped streaming from TestRoom:57c1f505c8c41c2bA:to_room
2641
+ [TestRoom 48cdd094a3e3] TestRoom::Channel stopped streaming from TestRoom:57c1f505c8c41c2bB:to_room
2642
+ [TestRoom 91333f07f4ce] TestRoom::Channel stopped streaming from TestRoom:57c1f505c8c41c2bd04e541c11f118cc:to_room
2643
+ [TestRoom 0e6656c70199] TestRoom::Channel stopped streaming from TestRoom:57c1f505c8c41c2b3304f3b1e65078f5:to_room
2644
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bABC:from_room: {type: "room_closed"}
2645
+ [TestRoom e2ed909ac7dd] Shutting down
2646
+ [TestRoom e2ed909ac7dd] Shutdown complete
2647
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b447a2663168e81c0:from_room: {type: "room_closed"}
2648
+ [TestRoom 0f52439497fb] Shutting down
2649
+ [TestRoom 0f52439497fb] Shutdown complete
2650
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bB:from_room: {type: "room_closed"}
2651
+ [TestRoom 48cdd094a3e3] Shutting down
2652
+ [TestRoom 48cdd094a3e3] Shutdown complete
2653
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b3bd4e5bef4250be9:from_room: {type: "room_closed"}
2654
+ [TestRoom b72968a9c9e2] Shutting down
2655
+ [TestRoom b72968a9c9e2] Shutdown complete
2656
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bd04e541c11f118cc:from_room: {type: "room_closed"}
2657
+ [TestRoom 91333f07f4ce] Shutting down
2658
+ [TestRoom 91333f07f4ce] Shutdown complete
2659
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2b3304f3b1e65078f5:from_room: {type: "room_closed"}
2660
+ [TestRoom 0e6656c70199] Shutting down
2661
+ [TestRoom 0e6656c70199] Shutdown complete
2662
+ [ActionCable] Broadcasting to TestRoom:57c1f505c8c41c2bA:from_room: {type: "room_closed"}
2663
+ [TestRoom b9c281720db2] Shutting down
2664
+ [TestRoom b9c281720db2] Shutdown complete
2665
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d1edb648f70b33e39:to_room: {type: "member_joined", tags: [], mtok: "05a090c31ffd96588d8683b151bea52e"}
2666
+ [TestRoom c02872543080] Initializing new TestRoom
2667
+ [TestRoom c02872543080] UUID: c02872543080
2668
+ [TestRoom c02872543080] Key: TestRoom:439e0a890ef4c28d1edb648f70b33e39
2669
+ [TestRoom c02872543080] Ping watchdog
2670
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d1edb648f70b33e39:from_room: {type: "custom_started"}
2671
+ [TestRoom c02872543080] Started
2672
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d1edb648f70b33e39:from_room: {type: "room_opened"}
2673
+ [TestRoom c02872543080] TestRoom::Channel is streaming from TestRoom:439e0a890ef4c28d1edb648f70b33e39:to_room
2674
+ [TestRoom c02872543080] TestRoom::Channel is transmitting the subscription confirmation
2675
+ [TestRoom c02872543080] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2676
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d1edb648f70b33e39:to_room: {type: "member_left", mtok: "05a090c31ffd96588d8683b151bea52e"}
2677
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dABC:to_room: {type: "member_joined", tags: [], mtok: "2c60efd8cbb82077243a0f66ae902f72"}
2678
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2679
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
2680
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2681
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2682
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2683
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2684
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2685
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2686
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2687
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2688
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2689
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2690
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2691
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2692
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2693
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2694
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2695
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2696
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2697
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2698
+ <internal:kernel>:168:in 'Kernel#loop'
2699
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2700
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2701
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2702
+ [TestRoom 04aa43caaeca] Initializing new TestRoom
2703
+ [TestRoom 04aa43caaeca] UUID: 04aa43caaeca
2704
+ [TestRoom 04aa43caaeca] Key: TestRoom:439e0a890ef4c28dABC
2705
+ [TestRoom 04aa43caaeca] Ping watchdog
2706
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dABC:from_room: {type: "custom_started"}
2707
+ [TestRoom 04aa43caaeca] Started
2708
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dABC:from_room: {type: "room_opened"}
2709
+ [TestRoom 04aa43caaeca] TestRoom::Channel is streaming from TestRoom:439e0a890ef4c28dABC:to_room
2710
+ [TestRoom 04aa43caaeca] TestRoom::Channel is transmitting the subscription confirmation
2711
+ [TestRoom 04aa43caaeca] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2712
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dABC:to_room: {type: "member_left", mtok: "2c60efd8cbb82077243a0f66ae902f72"}
2713
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28de9c64ece2624797b:to_room: {type: "member_joined", tags: [], mtok: "4f7505cf5666b77b65d3cbc71b472244"}
2714
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2715
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
2716
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2717
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2718
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2719
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2720
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2721
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2722
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2723
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2724
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2725
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2726
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2727
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2728
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2729
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2730
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2731
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2732
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2733
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2734
+ <internal:kernel>:168:in 'Kernel#loop'
2735
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2736
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2737
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2738
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d085bb3a68e3eb63d:to_room: {type: "member_joined", tags: [], mtok: "aedf34236d79f65a56b5e14d0534b4ad"}
2739
+ [TestRoom f6501c743ca7] Initializing new TestRoom
2740
+ [TestRoom f6501c743ca7] UUID: f6501c743ca7
2741
+ [TestRoom f6501c743ca7] Key: TestRoom:439e0a890ef4c28d085bb3a68e3eb63d
2742
+ [TestRoom f6501c743ca7] Ping watchdog
2743
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d085bb3a68e3eb63d:from_room: {type: "custom_started"}
2744
+ [TestRoom f6501c743ca7] Started
2745
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d085bb3a68e3eb63d:from_room: {type: "room_opened"}
2746
+ [TestRoom f6501c743ca7] TestRoom::Channel is streaming from TestRoom:439e0a890ef4c28d085bb3a68e3eb63d:to_room
2747
+ [TestRoom f6501c743ca7] TestRoom::Channel is transmitting the subscription confirmation
2748
+ [TestRoom f6501c743ca7] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2749
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d085bb3a68e3eb63d:to_room: {type: "member_joined", tags: [], mtok: "b8ef87fbe68d3667a4c23de9a03a187b"}
2750
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2751
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
2752
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2753
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2754
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2755
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2756
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2757
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2758
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2759
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2760
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2761
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2762
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2763
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2764
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2765
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2766
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2767
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2768
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2769
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2770
+ <internal:kernel>:168:in 'Kernel#loop'
2771
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2772
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2773
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2774
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d085bb3a68e3eb63d:to_room: {type: "member_left", mtok: "b8ef87fbe68d3667a4c23de9a03a187b"}
2775
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dA:to_room: {type: "member_joined", tags: [], mtok: "0984ab8aca8f1fc63d766df448f4d3d1"}
2776
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2777
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
2778
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2779
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2780
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2781
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2782
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2783
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2784
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2785
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2786
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2787
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2788
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2789
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2790
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2791
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2792
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2793
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2794
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2795
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2796
+ <internal:kernel>:168:in 'Kernel#loop'
2797
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2798
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2799
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2800
+ [TestRoom 4013e70e6c7d] Initializing new TestRoom
2801
+ [TestRoom 4013e70e6c7d] UUID: 4013e70e6c7d
2802
+ [TestRoom 4013e70e6c7d] Key: TestRoom:439e0a890ef4c28dA
2803
+ [TestRoom 4013e70e6c7d] Ping watchdog
2804
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dA:from_room: {type: "custom_started"}
2805
+ [TestRoom 4013e70e6c7d] Started
2806
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dA:from_room: {type: "room_opened"}
2807
+ [TestRoom 4013e70e6c7d] TestRoom::Channel is streaming from TestRoom:439e0a890ef4c28dA:to_room
2808
+ [TestRoom 4013e70e6c7d] TestRoom::Channel is transmitting the subscription confirmation
2809
+ [TestRoom 4013e70e6c7d] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2810
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dB:to_room: {type: "member_joined", tags: [], mtok: "43067dd02a7cb94646a6e2bf2ef6c779"}
2811
+ [TestRoom 40415af03189] Initializing new TestRoom
2812
+ [TestRoom 40415af03189] UUID: 40415af03189
2813
+ [TestRoom 40415af03189] Key: TestRoom:439e0a890ef4c28dB
2814
+ [TestRoom 40415af03189] Ping watchdog
2815
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dB:from_room: {type: "custom_started"}
2816
+ [TestRoom 40415af03189] Started
2817
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dB:from_room: {type: "room_opened"}
2818
+ [TestRoom 40415af03189] TestRoom::Channel is streaming from TestRoom:439e0a890ef4c28dB:to_room
2819
+ [TestRoom 40415af03189] TestRoom::Channel is transmitting the subscription confirmation
2820
+ [TestRoom 40415af03189] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2821
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dB:to_room: {type: "member_left", mtok: "43067dd02a7cb94646a6e2bf2ef6c779"}
2822
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d566f13b4951bc7ed:to_room: {type: "member_joined", tags: [], mtok: "086f9986e231146b6dfa4dc7e443cd9c"}
2823
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2824
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
2825
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2826
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2827
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2828
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2829
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2830
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2831
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2832
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2833
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2834
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2835
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2836
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2837
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2838
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2839
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2840
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2841
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2842
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2843
+ <internal:kernel>:168:in 'Kernel#loop'
2844
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2845
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2846
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2847
+ [TestRoom 9e5f58cdfce3] Initializing new TestRoom
2848
+ [TestRoom 9e5f58cdfce3] UUID: 9e5f58cdfce3
2849
+ [TestRoom 9e5f58cdfce3] Key: TestRoom:439e0a890ef4c28d566f13b4951bc7ed
2850
+ [TestRoom 9e5f58cdfce3] Ping watchdog
2851
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d566f13b4951bc7ed:from_room: {type: "custom_started"}
2852
+ [TestRoom 9e5f58cdfce3] Started
2853
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d566f13b4951bc7ed:from_room: {type: "room_opened"}
2854
+ [TestRoom 9e5f58cdfce3] TestRoom::Channel is streaming from TestRoom:439e0a890ef4c28d566f13b4951bc7ed:to_room
2855
+ [TestRoom 9e5f58cdfce3] TestRoom::Channel is transmitting the subscription confirmation
2856
+ [TestRoom 9e5f58cdfce3] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2857
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d566f13b4951bc7ed:to_room: {type: "member_left", mtok: "086f9986e231146b6dfa4dc7e443cd9c"}
2858
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d4c452071528a8c33:to_room: {type: "member_joined", tags: [], mtok: "07dc2321801428a94d9feb98d3d414b9"}
2859
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2860
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
2861
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2862
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2863
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2864
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2865
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2866
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2867
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2868
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2869
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2870
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2871
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2872
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2873
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2874
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2875
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2876
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2877
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2878
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2879
+ <internal:kernel>:168:in 'Kernel#loop'
2880
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2881
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2882
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2883
+ [TestRoom fe648ae0d378] Initializing new TestRoom
2884
+ [TestRoom fe648ae0d378] UUID: fe648ae0d378
2885
+ [TestRoom fe648ae0d378] Key: TestRoom:439e0a890ef4c28d4c452071528a8c33
2886
+ [TestRoom fe648ae0d378] Ping watchdog
2887
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d4c452071528a8c33:from_room: {type: "custom_started"}
2888
+ [TestRoom fe648ae0d378] Started
2889
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d4c452071528a8c33:from_room: {type: "room_opened"}
2890
+ [TestRoom fe648ae0d378] TestRoom::Channel is streaming from TestRoom:439e0a890ef4c28d4c452071528a8c33:to_room
2891
+ [TestRoom fe648ae0d378] TestRoom::Channel is transmitting the subscription confirmation
2892
+ [TestRoom fe648ae0d378] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2893
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d4c452071528a8c33:to_room: "KILL"
2894
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2895
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
2896
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2897
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2898
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2899
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2900
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2901
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2902
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2903
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2904
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2905
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2906
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2907
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2908
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2909
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2910
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2911
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2912
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2913
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2914
+ <internal:kernel>:168:in 'Kernel#loop'
2915
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2916
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2917
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2918
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d9a32554a6b6f39c2:to_room: {type: "member_joined", tags: [], mtok: "afc8e4826b9df2ef51deefc2fe28113a"}
2919
+ [TestRoom cc9ac787d20f] Initializing new TestRoom
2920
+ [TestRoom cc9ac787d20f] UUID: cc9ac787d20f
2921
+ [TestRoom cc9ac787d20f] Key: TestRoom:439e0a890ef4c28d9a32554a6b6f39c2
2922
+ [TestRoom cc9ac787d20f] Ping watchdog
2923
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d9a32554a6b6f39c2:from_room: {type: "custom_started"}
2924
+ [TestRoom cc9ac787d20f] Started
2925
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d9a32554a6b6f39c2:from_room: {type: "room_opened"}
2926
+ [TestRoom cc9ac787d20f] TestRoom::Channel is streaming from TestRoom:439e0a890ef4c28d9a32554a6b6f39c2:to_room
2927
+ [TestRoom cc9ac787d20f] TestRoom::Channel is transmitting the subscription confirmation
2928
+ [TestRoom cc9ac787d20f] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
2929
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d9a32554a6b6f39c2:to_room: {type: "member_left", mtok: "afc8e4826b9df2ef51deefc2fe28113a"}
2930
+ [TestRoom cc9ac787d20f] Ping watchdog
2931
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
2932
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:31:in 'block (3 levels) in <module:InputHandling>'
2933
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
2934
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
2935
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
2936
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
2937
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2938
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2939
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
2940
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
2941
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
2942
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
2943
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
2944
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
2945
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
2946
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
2947
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
2948
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
2949
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
2950
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2951
+ <internal:kernel>:168:in 'Kernel#loop'
2952
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2953
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
2954
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
2955
+ [TestRoom cc9ac787d20f] Watchdog timeout for room TestRoom[439e0a890ef4c28d9a32554a6b6f39c2], shutting down
2956
+ [TestRoom cc9ac787d20f] TestRoom::Channel stopped streaming from TestRoom:439e0a890ef4c28d9a32554a6b6f39c2:to_room
2957
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d9a32554a6b6f39c2:from_room: {type: "room_closed"}
2958
+ [TestRoom cc9ac787d20f] Shutting down
2959
+ [TestRoom cc9ac787d20f] Shutdown complete
2960
+ Shutting down CableRoom
2961
+ [TestRoom c02872543080] TestRoom::Channel stopped streaming from TestRoom:439e0a890ef4c28d1edb648f70b33e39:to_room
2962
+ [TestRoom 04aa43caaeca] TestRoom::Channel stopped streaming from TestRoom:439e0a890ef4c28dABC:to_room
2963
+ [TestRoom f6501c743ca7] TestRoom::Channel stopped streaming from TestRoom:439e0a890ef4c28d085bb3a68e3eb63d:to_room
2964
+ [TestRoom 4013e70e6c7d] TestRoom::Channel stopped streaming from TestRoom:439e0a890ef4c28dA:to_room
2965
+ [TestRoom 40415af03189] TestRoom::Channel stopped streaming from TestRoom:439e0a890ef4c28dB:to_room
2966
+ [TestRoom 9e5f58cdfce3] TestRoom::Channel stopped streaming from TestRoom:439e0a890ef4c28d566f13b4951bc7ed:to_room
2967
+ [TestRoom fe648ae0d378] TestRoom::Channel stopped streaming from TestRoom:439e0a890ef4c28d4c452071528a8c33:to_room
2968
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dABC:from_room: {type: "room_closed"}
2969
+ [TestRoom 04aa43caaeca] Shutting down
2970
+ [TestRoom 04aa43caaeca] Shutdown complete
2971
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d085bb3a68e3eb63d:from_room: {type: "room_closed"}
2972
+ [TestRoom f6501c743ca7] Shutting down
2973
+ [TestRoom f6501c743ca7] Shutdown complete
2974
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dA:from_room: {type: "room_closed"}
2975
+ [TestRoom 4013e70e6c7d] Shutting down
2976
+ [TestRoom 4013e70e6c7d] Shutdown complete
2977
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28dB:from_room: {type: "room_closed"}
2978
+ [TestRoom 40415af03189] Shutting down
2979
+ [TestRoom 40415af03189] Shutdown complete
2980
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d566f13b4951bc7ed:from_room: {type: "room_closed"}
2981
+ [TestRoom 9e5f58cdfce3] Shutting down
2982
+ [TestRoom 9e5f58cdfce3] Shutdown complete
2983
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d4c452071528a8c33:from_room: {type: "room_closed"}
2984
+ [TestRoom fe648ae0d378] Shutting down
2985
+ [TestRoom fe648ae0d378] Shutdown complete
2986
+ [ActionCable] Broadcasting to TestRoom:439e0a890ef4c28d1edb648f70b33e39:from_room: {type: "room_closed"}
2987
+ [TestRoom c02872543080] Shutting down
2988
+ [TestRoom c02872543080] Shutdown complete
2989
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e7343315fe0386cc369989:to_room: {type: "member_joined", tags: [], mtok: "137aea873f0924df91c4e47d3ef374d8"}
2990
+ [TestRoom 1b9761bdc760] Initializing new TestRoom
2991
+ [TestRoom 1b9761bdc760] UUID: 1b9761bdc760
2992
+ [TestRoom 1b9761bdc760] Key: TestRoom:b26c2fa807e7343315fe0386cc369989
2993
+ [TestRoom 1b9761bdc760] Ping watchdog
2994
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e7343315fe0386cc369989:from_room: {type: "custom_started"}
2995
+ [TestRoom 1b9761bdc760] Started
2996
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e7343315fe0386cc369989:from_room: {type: "room_opened"}
2997
+ [TestRoom 1b9761bdc760] TestRoom::Channel is streaming from TestRoom:b26c2fa807e7343315fe0386cc369989:to_room
2998
+ [TestRoom 1b9761bdc760] TestRoom::Channel is transmitting the subscription confirmation
2999
+ [TestRoom 1b9761bdc760] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3000
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e7343315fe0386cc369989:to_room: {type: "member_left", mtok: "137aea873f0924df91c4e47d3ef374d8"}
3001
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433ABC:to_room: {type: "member_joined", tags: [], mtok: "7542de7269d3af59ce2e99ef41c34d46"}
3002
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3003
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
3004
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3005
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3006
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3007
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3008
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3009
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3010
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3011
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3012
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3013
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3014
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3015
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3016
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3017
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3018
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3019
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3020
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3021
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3022
+ <internal:kernel>:168:in 'Kernel#loop'
3023
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3024
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3025
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3026
+ [TestRoom 6a53c2509c3a] Initializing new TestRoom
3027
+ [TestRoom 6a53c2509c3a] UUID: 6a53c2509c3a
3028
+ [TestRoom 6a53c2509c3a] Key: TestRoom:b26c2fa807e73433ABC
3029
+ [TestRoom 6a53c2509c3a] Ping watchdog
3030
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433ABC:from_room: {type: "custom_started"}
3031
+ [TestRoom 6a53c2509c3a] Started
3032
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433ABC:from_room: {type: "room_opened"}
3033
+ [TestRoom 6a53c2509c3a] TestRoom::Channel is streaming from TestRoom:b26c2fa807e73433ABC:to_room
3034
+ [TestRoom 6a53c2509c3a] TestRoom::Channel is transmitting the subscription confirmation
3035
+ [TestRoom 6a53c2509c3a] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3036
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433ABC:to_room: {type: "member_left", mtok: "7542de7269d3af59ce2e99ef41c34d46"}
3037
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433351b5d3c2ec3b413:to_room: {type: "member_joined", tags: [], mtok: "84582573294a6f96a1d454b67d8ec051"}
3038
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3039
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
3040
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3041
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3042
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3043
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3044
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3045
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3046
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3047
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3048
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3049
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3050
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3051
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3052
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3053
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3054
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3055
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3056
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3057
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3058
+ <internal:kernel>:168:in 'Kernel#loop'
3059
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3060
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3061
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3062
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734332d9ec6c120d7c029:to_room: {type: "member_joined", tags: [], mtok: "e29b279bd049bf52c6759687d99e3b64"}
3063
+ [TestRoom fd4c8f998f54] Initializing new TestRoom
3064
+ [TestRoom fd4c8f998f54] UUID: fd4c8f998f54
3065
+ [TestRoom fd4c8f998f54] Key: TestRoom:b26c2fa807e734332d9ec6c120d7c029
3066
+ [TestRoom fd4c8f998f54] Ping watchdog
3067
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734332d9ec6c120d7c029:from_room: {type: "custom_started"}
3068
+ [TestRoom fd4c8f998f54] Started
3069
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734332d9ec6c120d7c029:from_room: {type: "room_opened"}
3070
+ [TestRoom fd4c8f998f54] TestRoom::Channel is streaming from TestRoom:b26c2fa807e734332d9ec6c120d7c029:to_room
3071
+ [TestRoom fd4c8f998f54] TestRoom::Channel is transmitting the subscription confirmation
3072
+ [TestRoom fd4c8f998f54] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3073
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734332d9ec6c120d7c029:to_room: {type: "member_joined", tags: [], mtok: "2332e8e573cf7b635dff4320e959687c"}
3074
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3075
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
3076
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3077
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3078
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3079
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3080
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3081
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3082
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3083
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3084
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3085
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3086
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3087
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3088
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3089
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3090
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3091
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3092
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3093
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3094
+ <internal:kernel>:168:in 'Kernel#loop'
3095
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3096
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3097
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3098
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734332d9ec6c120d7c029:to_room: {type: "member_left", mtok: "2332e8e573cf7b635dff4320e959687c"}
3099
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433A:to_room: {type: "member_joined", tags: [], mtok: "f7f402a5bb00cdb6b68b831e09e6edd8"}
3100
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3101
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
3102
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3103
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3104
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3105
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3106
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3107
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3108
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3109
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3110
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3111
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3112
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3113
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3114
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3115
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3116
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3117
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3118
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3119
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3120
+ <internal:kernel>:168:in 'Kernel#loop'
3121
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3122
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3123
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3124
+ [TestRoom b9d748369620] Initializing new TestRoom
3125
+ [TestRoom b9d748369620] UUID: b9d748369620
3126
+ [TestRoom b9d748369620] Key: TestRoom:b26c2fa807e73433A
3127
+ [TestRoom b9d748369620] Ping watchdog
3128
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433A:from_room: {type: "custom_started"}
3129
+ [TestRoom b9d748369620] Started
3130
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433A:from_room: {type: "room_opened"}
3131
+ [TestRoom b9d748369620] TestRoom::Channel is streaming from TestRoom:b26c2fa807e73433A:to_room
3132
+ [TestRoom b9d748369620] TestRoom::Channel is transmitting the subscription confirmation
3133
+ [TestRoom b9d748369620] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3134
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433B:to_room: {type: "member_joined", tags: [], mtok: "a64dee0d39694155c37ea6f4b0e3fc81"}
3135
+ [TestRoom 7e6b6907b54a] Initializing new TestRoom
3136
+ [TestRoom 7e6b6907b54a] UUID: 7e6b6907b54a
3137
+ [TestRoom 7e6b6907b54a] Key: TestRoom:b26c2fa807e73433B
3138
+ [TestRoom 7e6b6907b54a] Ping watchdog
3139
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433B:from_room: {type: "custom_started"}
3140
+ [TestRoom 7e6b6907b54a] Started
3141
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433B:from_room: {type: "room_opened"}
3142
+ [TestRoom 7e6b6907b54a] TestRoom::Channel is streaming from TestRoom:b26c2fa807e73433B:to_room
3143
+ [TestRoom 7e6b6907b54a] TestRoom::Channel is transmitting the subscription confirmation
3144
+ [TestRoom 7e6b6907b54a] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3145
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433B:to_room: {type: "member_left", mtok: "a64dee0d39694155c37ea6f4b0e3fc81"}
3146
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734336b415f460c52ae5d:to_room: {type: "member_joined", tags: [], mtok: "b045f6165372532d459ff2cd6b9cf052"}
3147
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3148
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
3149
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3150
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3151
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3152
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3153
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3154
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3155
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3156
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3157
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3158
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3159
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3160
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3161
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3162
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3163
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3164
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3165
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3166
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3167
+ <internal:kernel>:168:in 'Kernel#loop'
3168
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3169
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3170
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3171
+ [TestRoom 3522980531de] Initializing new TestRoom
3172
+ [TestRoom 3522980531de] UUID: 3522980531de
3173
+ [TestRoom 3522980531de] Key: TestRoom:b26c2fa807e734336b415f460c52ae5d
3174
+ [TestRoom 3522980531de] Ping watchdog
3175
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734336b415f460c52ae5d:from_room: {type: "custom_started"}
3176
+ [TestRoom 3522980531de] Started
3177
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734336b415f460c52ae5d:from_room: {type: "room_opened"}
3178
+ [TestRoom 3522980531de] TestRoom::Channel is streaming from TestRoom:b26c2fa807e734336b415f460c52ae5d:to_room
3179
+ [TestRoom 3522980531de] TestRoom::Channel is transmitting the subscription confirmation
3180
+ [TestRoom 3522980531de] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3181
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734336b415f460c52ae5d:to_room: {type: "member_left", mtok: "b045f6165372532d459ff2cd6b9cf052"}
3182
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433307a64603ff71df8:to_room: {type: "member_joined", tags: [], mtok: "9e371d573a674c119c7ce851a56cc315"}
3183
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3184
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
3185
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3186
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3187
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3188
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3189
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3190
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3191
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3192
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3193
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3194
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3195
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3196
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3197
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3198
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3199
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3200
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3201
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3202
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3203
+ <internal:kernel>:168:in 'Kernel#loop'
3204
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3205
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3206
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3207
+ [TestRoom 750f192c57ea] Initializing new TestRoom
3208
+ [TestRoom 750f192c57ea] UUID: 750f192c57ea
3209
+ [TestRoom 750f192c57ea] Key: TestRoom:b26c2fa807e73433307a64603ff71df8
3210
+ [TestRoom 750f192c57ea] Ping watchdog
3211
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433307a64603ff71df8:from_room: {type: "custom_started"}
3212
+ [TestRoom 750f192c57ea] Started
3213
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433307a64603ff71df8:from_room: {type: "room_opened"}
3214
+ [TestRoom 750f192c57ea] TestRoom::Channel is streaming from TestRoom:b26c2fa807e73433307a64603ff71df8:to_room
3215
+ [TestRoom 750f192c57ea] TestRoom::Channel is transmitting the subscription confirmation
3216
+ [TestRoom 750f192c57ea] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3217
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433307a64603ff71df8:to_room: "KILL"
3218
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3219
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
3220
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3221
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3222
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3223
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3224
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3225
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3226
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3227
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3228
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3229
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3230
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3231
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3232
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3233
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3234
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3235
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3236
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3237
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3238
+ <internal:kernel>:168:in 'Kernel#loop'
3239
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3240
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3241
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3242
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433579697d563c750c9:to_room: {type: "member_joined", tags: [], mtok: "88475b25445f3b794b37000e979f8052"}
3243
+ [TestRoom fc0d37f57b17] Initializing new TestRoom
3244
+ [TestRoom fc0d37f57b17] UUID: fc0d37f57b17
3245
+ [TestRoom fc0d37f57b17] Key: TestRoom:b26c2fa807e73433579697d563c750c9
3246
+ [TestRoom fc0d37f57b17] Ping watchdog
3247
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433579697d563c750c9:from_room: {type: "custom_started"}
3248
+ [TestRoom fc0d37f57b17] Started
3249
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433579697d563c750c9:from_room: {type: "room_opened"}
3250
+ [TestRoom fc0d37f57b17] TestRoom::Channel is streaming from TestRoom:b26c2fa807e73433579697d563c750c9:to_room
3251
+ [TestRoom fc0d37f57b17] TestRoom::Channel is transmitting the subscription confirmation
3252
+ [TestRoom fc0d37f57b17] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3253
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433579697d563c750c9:to_room: {type: "member_left", mtok: "88475b25445f3b794b37000e979f8052"}
3254
+ [TestRoom fc0d37f57b17] Ping watchdog
3255
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3256
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:32:in 'block (3 levels) in <module:InputHandling>'
3257
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3258
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3259
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3260
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3261
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3262
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3263
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3264
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3265
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3266
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3267
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3268
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3269
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3270
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3271
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3272
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3273
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3274
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3275
+ <internal:kernel>:168:in 'Kernel#loop'
3276
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3277
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3278
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3279
+ [TestRoom fc0d37f57b17] Watchdog timeout for room TestRoom[b26c2fa807e73433579697d563c750c9], shutting down
3280
+ [TestRoom fc0d37f57b17] TestRoom::Channel stopped streaming from TestRoom:b26c2fa807e73433579697d563c750c9:to_room
3281
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433579697d563c750c9:from_room: {type: "room_closed"}
3282
+ [TestRoom fc0d37f57b17] Shutting down
3283
+ [TestRoom fc0d37f57b17] Shutdown complete
3284
+ Shutting down CableRoom
3285
+ [TestRoom 1b9761bdc760] TestRoom::Channel stopped streaming from TestRoom:b26c2fa807e7343315fe0386cc369989:to_room
3286
+ [TestRoom 6a53c2509c3a] TestRoom::Channel stopped streaming from TestRoom:b26c2fa807e73433ABC:to_room
3287
+ [TestRoom fd4c8f998f54] TestRoom::Channel stopped streaming from TestRoom:b26c2fa807e734332d9ec6c120d7c029:to_room
3288
+ [TestRoom b9d748369620] TestRoom::Channel stopped streaming from TestRoom:b26c2fa807e73433A:to_room
3289
+ [TestRoom 7e6b6907b54a] TestRoom::Channel stopped streaming from TestRoom:b26c2fa807e73433B:to_room
3290
+ [TestRoom 3522980531de] TestRoom::Channel stopped streaming from TestRoom:b26c2fa807e734336b415f460c52ae5d:to_room
3291
+ [TestRoom 750f192c57ea] TestRoom::Channel stopped streaming from TestRoom:b26c2fa807e73433307a64603ff71df8:to_room
3292
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433ABC:from_room: {type: "room_closed"}
3293
+ [TestRoom 6a53c2509c3a] Shutting down
3294
+ [TestRoom 6a53c2509c3a] Shutdown complete
3295
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734332d9ec6c120d7c029:from_room: {type: "room_closed"}
3296
+ [TestRoom fd4c8f998f54] Shutting down
3297
+ [TestRoom fd4c8f998f54] Shutdown complete
3298
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433A:from_room: {type: "room_closed"}
3299
+ [TestRoom b9d748369620] Shutting down
3300
+ [TestRoom b9d748369620] Shutdown complete
3301
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e7343315fe0386cc369989:from_room: {type: "room_closed"}
3302
+ [TestRoom 1b9761bdc760] Shutting down
3303
+ [TestRoom 1b9761bdc760] Shutdown complete
3304
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433B:from_room: {type: "room_closed"}
3305
+ [TestRoom 7e6b6907b54a] Shutting down
3306
+ [TestRoom 7e6b6907b54a] Shutdown complete
3307
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e734336b415f460c52ae5d:from_room: {type: "room_closed"}
3308
+ [TestRoom 3522980531de] Shutting down
3309
+ [TestRoom 3522980531de] Shutdown complete
3310
+ [ActionCable] Broadcasting to TestRoom:b26c2fa807e73433307a64603ff71df8:from_room: {type: "room_closed"}
3311
+ [TestRoom 750f192c57ea] Shutting down
3312
+ [TestRoom 750f192c57ea] Shutdown complete
3313
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2274c1e8062cbc466:to_room: {type: "member_joined", tags: [], mtok: "536239443a5bb2d420efc416b0409e0d"}
3314
+ [TestRoom 7172a0291d3f] Initializing new TestRoom
3315
+ [TestRoom 7172a0291d3f] UUID: 7172a0291d3f
3316
+ [TestRoom 7172a0291d3f] Key: TestRoom:f5976d703089b7c2274c1e8062cbc466
3317
+ [TestRoom 7172a0291d3f] Ping watchdog
3318
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2274c1e8062cbc466:from_room: {type: "custom_started"}
3319
+ [TestRoom 7172a0291d3f] Started
3320
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2274c1e8062cbc466:from_room: {type: "room_opened"}
3321
+ [TestRoom 7172a0291d3f] TestRoom::Channel is streaming from TestRoom:f5976d703089b7c2274c1e8062cbc466:to_room
3322
+ [TestRoom 7172a0291d3f] TestRoom::Channel is transmitting the subscription confirmation
3323
+ [TestRoom 7172a0291d3f] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3324
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2274c1e8062cbc466:to_room: {type: "member_left", mtok: "536239443a5bb2d420efc416b0409e0d"}
3325
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2ABC:to_room: {type: "member_joined", tags: [], mtok: "b1072e3c8677919957cfd71e944c4878"}
3326
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3327
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:36:in 'block (3 levels) in <module:InputHandling>'
3328
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3329
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3330
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3331
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3332
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3333
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3334
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3335
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3336
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3337
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3338
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3339
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3340
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3341
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3342
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3343
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3344
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3345
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3346
+ <internal:kernel>:168:in 'Kernel#loop'
3347
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3348
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3349
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3350
+ [TestRoom a345de059e82] Initializing new TestRoom
3351
+ [TestRoom a345de059e82] UUID: a345de059e82
3352
+ [TestRoom a345de059e82] Key: TestRoom:f5976d703089b7c2ABC
3353
+ [TestRoom a345de059e82] Ping watchdog
3354
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2ABC:from_room: {type: "custom_started"}
3355
+ [TestRoom a345de059e82] Started
3356
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2ABC:from_room: {type: "room_opened"}
3357
+ [TestRoom a345de059e82] TestRoom::Channel is streaming from TestRoom:f5976d703089b7c2ABC:to_room
3358
+ [TestRoom a345de059e82] TestRoom::Channel is transmitting the subscription confirmation
3359
+ [TestRoom a345de059e82] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3360
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2ABC:to_room: {type: "member_left", mtok: "b1072e3c8677919957cfd71e944c4878"}
3361
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c21716b16fd8e11e1d:to_room: {type: "member_joined", tags: [], mtok: "d671b72e219b6b598555b9136204d650"}
3362
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3363
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:36:in 'block (3 levels) in <module:InputHandling>'
3364
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3365
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3366
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3367
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3368
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3369
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3370
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3371
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3372
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3373
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3374
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3375
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3376
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3377
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3378
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3379
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3380
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3381
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3382
+ <internal:kernel>:168:in 'Kernel#loop'
3383
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3384
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3385
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3386
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c23a9de3f1ecc48506:to_room: {type: "member_joined", tags: [], mtok: "707282adb1a85b8871ba7fa503e15539"}
3387
+ [TestRoom 09950d61b4e6] Initializing new TestRoom
3388
+ [TestRoom 09950d61b4e6] UUID: 09950d61b4e6
3389
+ [TestRoom 09950d61b4e6] Key: TestRoom:f5976d703089b7c23a9de3f1ecc48506
3390
+ [TestRoom 09950d61b4e6] Ping watchdog
3391
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c23a9de3f1ecc48506:from_room: {type: "custom_started"}
3392
+ [TestRoom 09950d61b4e6] Started
3393
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c23a9de3f1ecc48506:from_room: {type: "room_opened"}
3394
+ [TestRoom 09950d61b4e6] TestRoom::Channel is streaming from TestRoom:f5976d703089b7c23a9de3f1ecc48506:to_room
3395
+ [TestRoom 09950d61b4e6] TestRoom::Channel is transmitting the subscription confirmation
3396
+ [TestRoom 09950d61b4e6] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3397
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c23a9de3f1ecc48506:to_room: {type: "member_joined", tags: [], mtok: "328aaf346e92ea9d6d3ab0e7cd386420"}
3398
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3399
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:36:in 'block (3 levels) in <module:InputHandling>'
3400
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3401
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3402
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3403
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3404
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3405
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3406
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3407
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3408
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3409
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3410
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3411
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3412
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3413
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3414
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3415
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3416
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3417
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3418
+ <internal:kernel>:168:in 'Kernel#loop'
3419
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3420
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3421
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3422
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c23a9de3f1ecc48506:to_room: {type: "member_left", mtok: "328aaf346e92ea9d6d3ab0e7cd386420"}
3423
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2A:to_room: {type: "member_joined", tags: [], mtok: "ebbb3d0a16412e9a009e561bd58d8131"}
3424
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3425
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:36:in 'block (3 levels) in <module:InputHandling>'
3426
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3427
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3428
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3429
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3430
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3431
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3432
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3433
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3434
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3435
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3436
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3437
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3438
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3439
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3440
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3441
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3442
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3443
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3444
+ <internal:kernel>:168:in 'Kernel#loop'
3445
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3446
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3447
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3448
+ [TestRoom 495a3f66566f] Initializing new TestRoom
3449
+ [TestRoom 495a3f66566f] UUID: 495a3f66566f
3450
+ [TestRoom 495a3f66566f] Key: TestRoom:f5976d703089b7c2A
3451
+ [TestRoom 495a3f66566f] Ping watchdog
3452
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2A:from_room: {type: "custom_started"}
3453
+ [TestRoom 495a3f66566f] Started
3454
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2A:from_room: {type: "room_opened"}
3455
+ [TestRoom 495a3f66566f] TestRoom::Channel is streaming from TestRoom:f5976d703089b7c2A:to_room
3456
+ [TestRoom 495a3f66566f] TestRoom::Channel is transmitting the subscription confirmation
3457
+ [TestRoom 495a3f66566f] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3458
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2B:to_room: {type: "member_joined", tags: [], mtok: "7803e5b26c66bc79c22a86bef4a809df"}
3459
+ [TestRoom cbe1971945a3] Initializing new TestRoom
3460
+ [TestRoom cbe1971945a3] UUID: cbe1971945a3
3461
+ [TestRoom cbe1971945a3] Key: TestRoom:f5976d703089b7c2B
3462
+ [TestRoom cbe1971945a3] Ping watchdog
3463
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2B:from_room: {type: "custom_started"}
3464
+ [TestRoom cbe1971945a3] Started
3465
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2B:from_room: {type: "room_opened"}
3466
+ [TestRoom cbe1971945a3] TestRoom::Channel is streaming from TestRoom:f5976d703089b7c2B:to_room
3467
+ [TestRoom cbe1971945a3] TestRoom::Channel is transmitting the subscription confirmation
3468
+ [TestRoom cbe1971945a3] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3469
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2B:to_room: {type: "member_left", mtok: "7803e5b26c66bc79c22a86bef4a809df"}
3470
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2557729eba6fa2fb6:to_room: {type: "member_joined", tags: [], mtok: "5cf0a75ff15d00c92730f2daf83eb94d"}
3471
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3472
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:36:in 'block (3 levels) in <module:InputHandling>'
3473
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3474
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3475
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3476
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3477
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3478
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3479
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3480
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3481
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3482
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3483
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3484
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3485
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3486
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3487
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3488
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3489
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3490
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3491
+ <internal:kernel>:168:in 'Kernel#loop'
3492
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3493
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3494
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3495
+ [TestRoom d5129039cdb5] Initializing new TestRoom
3496
+ [TestRoom d5129039cdb5] UUID: d5129039cdb5
3497
+ [TestRoom d5129039cdb5] Key: TestRoom:f5976d703089b7c2557729eba6fa2fb6
3498
+ [TestRoom d5129039cdb5] Ping watchdog
3499
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2557729eba6fa2fb6:from_room: {type: "custom_started"}
3500
+ [TestRoom d5129039cdb5] Started
3501
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2557729eba6fa2fb6:from_room: {type: "room_opened"}
3502
+ [TestRoom d5129039cdb5] TestRoom::Channel is streaming from TestRoom:f5976d703089b7c2557729eba6fa2fb6:to_room
3503
+ [TestRoom d5129039cdb5] TestRoom::Channel is transmitting the subscription confirmation
3504
+ [TestRoom d5129039cdb5] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3505
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2557729eba6fa2fb6:to_room: {type: "member_left", mtok: "5cf0a75ff15d00c92730f2daf83eb94d"}
3506
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2244a0c91a92b4988:to_room: {type: "member_joined", tags: [], mtok: "ab7a102c0a832d1b3f279870ecbc2ce3"}
3507
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3508
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:36:in 'block (3 levels) in <module:InputHandling>'
3509
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3510
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3511
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3512
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3513
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3514
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3515
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3516
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3517
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3518
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3519
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3520
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3521
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3522
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3523
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3524
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3525
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3526
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3527
+ <internal:kernel>:168:in 'Kernel#loop'
3528
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3529
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3530
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3531
+ [TestRoom 91128a18fbdc] Initializing new TestRoom
3532
+ [TestRoom 91128a18fbdc] UUID: 91128a18fbdc
3533
+ [TestRoom 91128a18fbdc] Key: TestRoom:f5976d703089b7c2244a0c91a92b4988
3534
+ [TestRoom 91128a18fbdc] Ping watchdog
3535
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2244a0c91a92b4988:from_room: {type: "custom_started"}
3536
+ [TestRoom 91128a18fbdc] Started
3537
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2244a0c91a92b4988:from_room: {type: "room_opened"}
3538
+ [TestRoom 91128a18fbdc] TestRoom::Channel is streaming from TestRoom:f5976d703089b7c2244a0c91a92b4988:to_room
3539
+ [TestRoom 91128a18fbdc] TestRoom::Channel is transmitting the subscription confirmation
3540
+ [TestRoom 91128a18fbdc] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3541
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2244a0c91a92b4988:to_room: "KILL"
3542
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3543
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:36:in 'block (3 levels) in <module:InputHandling>'
3544
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3545
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3546
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3547
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3548
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3549
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3550
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3551
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3552
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3553
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3554
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3555
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3556
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3557
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3558
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3559
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3560
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3561
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3562
+ <internal:kernel>:168:in 'Kernel#loop'
3563
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3564
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3565
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3566
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2075b1732b7e3eb3b:to_room: {type: "member_joined", tags: [], mtok: "03db048c6bf4b0e4c7ca6b25cc4ec5e1"}
3567
+ [TestRoom d527c65efb87] Initializing new TestRoom
3568
+ [TestRoom d527c65efb87] UUID: d527c65efb87
3569
+ [TestRoom d527c65efb87] Key: TestRoom:f5976d703089b7c2075b1732b7e3eb3b
3570
+ [TestRoom d527c65efb87] Ping watchdog
3571
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2075b1732b7e3eb3b:from_room: {type: "custom_started"}
3572
+ [TestRoom d527c65efb87] Started
3573
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2075b1732b7e3eb3b:from_room: {type: "room_opened"}
3574
+ [TestRoom d527c65efb87] TestRoom::Channel is streaming from TestRoom:f5976d703089b7c2075b1732b7e3eb3b:to_room
3575
+ [TestRoom d527c65efb87] TestRoom::Channel is transmitting the subscription confirmation
3576
+ [TestRoom d527c65efb87] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3577
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2075b1732b7e3eb3b:to_room: {type: "member_left", mtok: "03db048c6bf4b0e4c7ca6b25cc4ec5e1"}
3578
+ [TestRoom d527c65efb87] Ping watchdog
3579
+ There was an exception - NoMethodError(undefined method 'current_message=' for class TestRoom)
3580
+ /Users/eknapp/code/cable_room/lib/cable_room/room/input_handling.rb:36:in 'block (3 levels) in <module:InputHandling>'
3581
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/channel/streams.rb:198:in 'block in ActionCable::Channel::Streams#stream_decoder'
3582
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:60:in 'block in ActionCable::Server::Worker#invoke'
3583
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:120:in 'block in ActiveSupport::Callbacks#run_callbacks'
3584
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:94:in 'block in <class:ThreadPool>'
3585
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3586
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3587
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:81:in 'block (4 levels) in <class:Engine>'
3588
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/execution_wrapper.rb:91:in 'ActiveSupport::ExecutionWrapper.wrap'
3589
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/engine.rb:76:in 'block (3 levels) in <class:Engine>'
3590
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'BasicObject#instance_exec'
3591
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:129:in 'block in ActiveSupport::Callbacks#run_callbacks'
3592
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/activesupport-8.0.3/lib/active_support/callbacks.rb:140:in 'ActiveSupport::Callbacks#run_callbacks'
3593
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:43:in 'ActionCable::Server::Worker#work'
3594
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/actioncable-8.0.3/lib/action_cable/server/worker.rb:59:in 'ActionCable::Server::Worker#invoke'
3595
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_tracker.rb:109:in 'block in CableRoom::ChannelTracker::ThreadPool#async_invoke'
3596
+ /Users/eknapp/code/cable_room/lib/cable_room/channel_base.rb:175:in 'block (2 levels) in CableRoom::ChannelBase#schedule_work'
3597
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:359:in 'Concurrent::RubyThreadPoolExecutor::Worker#run_task'
3598
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:350:in 'block (3 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3599
+ <internal:kernel>:168:in 'Kernel#loop'
3600
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:341:in 'block (2 levels) in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3601
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'Kernel#catch'
3602
+ /Users/eknapp/.local/share/mise/installs/ruby/3.4.5/lib/ruby/gems/3.4.0/gems/concurrent-ruby-1.3.5/lib/concurrent-ruby/concurrent/executor/ruby_thread_pool_executor.rb:340:in 'block in Concurrent::RubyThreadPoolExecutor::Worker#create_worker'
3603
+ [TestRoom d527c65efb87] Watchdog timeout for room TestRoom[f5976d703089b7c2075b1732b7e3eb3b], shutting down
3604
+ [TestRoom d527c65efb87] TestRoom::Channel stopped streaming from TestRoom:f5976d703089b7c2075b1732b7e3eb3b:to_room
3605
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2075b1732b7e3eb3b:from_room: {type: "room_closed"}
3606
+ [TestRoom d527c65efb87] Shutting down
3607
+ [TestRoom d527c65efb87] Shutdown complete
3608
+ Shutting down CableRoom
3609
+ [TestRoom 7172a0291d3f] TestRoom::Channel stopped streaming from TestRoom:f5976d703089b7c2274c1e8062cbc466:to_room
3610
+ [TestRoom a345de059e82] TestRoom::Channel stopped streaming from TestRoom:f5976d703089b7c2ABC:to_room
3611
+ [TestRoom 09950d61b4e6] TestRoom::Channel stopped streaming from TestRoom:f5976d703089b7c23a9de3f1ecc48506:to_room
3612
+ [TestRoom 495a3f66566f] TestRoom::Channel stopped streaming from TestRoom:f5976d703089b7c2A:to_room
3613
+ [TestRoom cbe1971945a3] TestRoom::Channel stopped streaming from TestRoom:f5976d703089b7c2B:to_room
3614
+ [TestRoom d5129039cdb5] TestRoom::Channel stopped streaming from TestRoom:f5976d703089b7c2557729eba6fa2fb6:to_room
3615
+ [TestRoom 91128a18fbdc] TestRoom::Channel stopped streaming from TestRoom:f5976d703089b7c2244a0c91a92b4988:to_room
3616
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2ABC:from_room: {type: "room_closed"}
3617
+ [TestRoom a345de059e82] Shutting down
3618
+ [TestRoom a345de059e82] Shutdown complete
3619
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c23a9de3f1ecc48506:from_room: {type: "room_closed"}
3620
+ [TestRoom 09950d61b4e6] Shutting down
3621
+ [TestRoom 09950d61b4e6] Shutdown complete
3622
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2A:from_room: {type: "room_closed"}
3623
+ [TestRoom 495a3f66566f] Shutting down
3624
+ [TestRoom 495a3f66566f] Shutdown complete
3625
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2274c1e8062cbc466:from_room: {type: "room_closed"}
3626
+ [TestRoom 7172a0291d3f] Shutting down
3627
+ [TestRoom 7172a0291d3f] Shutdown complete
3628
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2557729eba6fa2fb6:from_room: {type: "room_closed"}
3629
+ [TestRoom d5129039cdb5] Shutting down
3630
+ [TestRoom d5129039cdb5] Shutdown complete
3631
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2244a0c91a92b4988:from_room: {type: "room_closed"}
3632
+ [TestRoom 91128a18fbdc] Shutting down
3633
+ [TestRoom 91128a18fbdc] Shutdown complete
3634
+ [ActionCable] Broadcasting to TestRoom:f5976d703089b7c2B:from_room: {type: "room_closed"}
3635
+ [TestRoom cbe1971945a3] Shutting down
3636
+ [TestRoom cbe1971945a3] Shutdown complete
3637
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd433bb16d1eed0e9d7e:to_room: {type: "port_connected", tags: [], mtok: "d18cc1aa020e3ef2d53382e17b61d36e"}
3638
+ [TestRoom 1d46ba0ca7be] Initializing new TestRoom
3639
+ [TestRoom 1d46ba0ca7be] UUID: 1d46ba0ca7be
3640
+ [TestRoom 1d46ba0ca7be] Key: TestRoom:fb20f57faa7cbd433bb16d1eed0e9d7e
3641
+ [TestRoom 1d46ba0ca7be] Ping watchdog
3642
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd433bb16d1eed0e9d7e:from_room: {type: "custom_started"}
3643
+ [TestRoom 1d46ba0ca7be] Started
3644
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd433bb16d1eed0e9d7e:from_room: {type: "room_opened"}
3645
+ [TestRoom 1d46ba0ca7be] TestRoom::Channel is streaming from TestRoom:fb20f57faa7cbd433bb16d1eed0e9d7e:to_room
3646
+ [TestRoom 1d46ba0ca7be] TestRoom::Channel is transmitting the subscription confirmation
3647
+ [TestRoom 1d46ba0ca7be] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3648
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd433bb16d1eed0e9d7e:to_room: {type: "port_disconnected", mtok: "d18cc1aa020e3ef2d53382e17b61d36e"}
3649
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43ABC:to_room: {type: "port_connected", tags: [], mtok: "dd71a331401ce085de2f972008dbb6cd"}
3650
+ [TestRoom 1d46ba0ca7be] Received message: {"type" => "port_disconnected", "mtok" => "d18cc1aa020e3ef2d53382e17b61d36e"}
3651
+ [TestRoom 946baa145726] Initializing new TestRoom
3652
+ [TestRoom 946baa145726] UUID: 946baa145726
3653
+ [TestRoom 946baa145726] Key: TestRoom:fb20f57faa7cbd43ABC
3654
+ [TestRoom 946baa145726] Ping watchdog
3655
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43ABC:from_room: {type: "custom_started"}
3656
+ [TestRoom 946baa145726] Started
3657
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43ABC:from_room: {type: "room_opened"}
3658
+ [TestRoom 946baa145726] TestRoom::Channel is streaming from TestRoom:fb20f57faa7cbd43ABC:to_room
3659
+ [TestRoom 946baa145726] TestRoom::Channel is transmitting the subscription confirmation
3660
+ [TestRoom 946baa145726] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3661
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43ABC:to_room: {type: "port_disconnected", mtok: "dd71a331401ce085de2f972008dbb6cd"}
3662
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd435d27026bc8505e99:to_room: {type: "port_connected", tags: [], mtok: "e1bd67cc9a2e05e7bf155ff4e410511e"}
3663
+ [TestRoom 946baa145726] Received message: {"type" => "port_disconnected", "mtok" => "dd71a331401ce085de2f972008dbb6cd"}
3664
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd4306dbbf70ae4e58b7:to_room: {type: "port_connected", tags: [], mtok: "138dbd104aa6df42ad782bdc9ad673c9"}
3665
+ [TestRoom c35dab418c5a] Initializing new TestRoom
3666
+ [TestRoom c35dab418c5a] UUID: c35dab418c5a
3667
+ [TestRoom c35dab418c5a] Key: TestRoom:fb20f57faa7cbd4306dbbf70ae4e58b7
3668
+ [TestRoom c35dab418c5a] Ping watchdog
3669
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd4306dbbf70ae4e58b7:from_room: {type: "custom_started"}
3670
+ [TestRoom c35dab418c5a] TestRoom::Channel is streaming from TestRoom:fb20f57faa7cbd4306dbbf70ae4e58b7:to_room
3671
+ [TestRoom c35dab418c5a] Started
3672
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd4306dbbf70ae4e58b7:from_room: {type: "room_opened"}
3673
+ [TestRoom c35dab418c5a] TestRoom::Channel is transmitting the subscription confirmation
3674
+ [TestRoom c35dab418c5a] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3675
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd4306dbbf70ae4e58b7:to_room: {type: "port_connected", tags: [], mtok: "9c027aa5a0652c938a120c198445de81"}
3676
+ [TestRoom c35dab418c5a] Received message: {"type" => "port_connected", "tags" => [], "mtok" => "9c027aa5a0652c938a120c198445de81"}
3677
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd4306dbbf70ae4e58b7:to_room: {type: "port_disconnected", mtok: "9c027aa5a0652c938a120c198445de81"}
3678
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43A:to_room: {type: "port_connected", tags: [], mtok: "816384a1d67f71e4bebad679a20ff3f5"}
3679
+ [TestRoom c35dab418c5a] Received message: {"type" => "port_disconnected", "mtok" => "9c027aa5a0652c938a120c198445de81"}
3680
+ [TestRoom 02056517af4f] Initializing new TestRoom
3681
+ [TestRoom 02056517af4f] UUID: 02056517af4f
3682
+ [TestRoom 02056517af4f] Key: TestRoom:fb20f57faa7cbd43A
3683
+ [TestRoom 02056517af4f] Ping watchdog
3684
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43A:from_room: {type: "custom_started"}
3685
+ [TestRoom 02056517af4f] Started
3686
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43A:from_room: {type: "room_opened"}
3687
+ [TestRoom 02056517af4f] TestRoom::Channel is streaming from TestRoom:fb20f57faa7cbd43A:to_room
3688
+ [TestRoom 02056517af4f] TestRoom::Channel is transmitting the subscription confirmation
3689
+ [TestRoom 02056517af4f] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3690
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43B:to_room: {type: "port_connected", tags: [], mtok: "21acc38f4b6e297bb42a6442504b8e3f"}
3691
+ [TestRoom 756a786d039f] Initializing new TestRoom
3692
+ [TestRoom 756a786d039f] UUID: 756a786d039f
3693
+ [TestRoom 756a786d039f] Key: TestRoom:fb20f57faa7cbd43B
3694
+ [TestRoom 756a786d039f] Ping watchdog
3695
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43B:from_room: {type: "custom_started"}
3696
+ [TestRoom 756a786d039f] Started
3697
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43B:from_room: {type: "room_opened"}
3698
+ [TestRoom 756a786d039f] TestRoom::Channel is streaming from TestRoom:fb20f57faa7cbd43B:to_room
3699
+ [TestRoom 756a786d039f] TestRoom::Channel is transmitting the subscription confirmation
3700
+ [TestRoom 756a786d039f] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3701
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43B:to_room: {type: "port_disconnected", mtok: "21acc38f4b6e297bb42a6442504b8e3f"}
3702
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43d9c11fade7aa603a:to_room: {type: "port_connected", tags: [], mtok: "e81ac06116129ab4173b643356991679"}
3703
+ [TestRoom 756a786d039f] Received message: {"type" => "port_disconnected", "mtok" => "21acc38f4b6e297bb42a6442504b8e3f"}
3704
+ [TestRoom d1f3ca2eb83d] Initializing new TestRoom
3705
+ [TestRoom d1f3ca2eb83d] UUID: d1f3ca2eb83d
3706
+ [TestRoom d1f3ca2eb83d] Key: TestRoom:fb20f57faa7cbd43d9c11fade7aa603a
3707
+ [TestRoom d1f3ca2eb83d] Ping watchdog
3708
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43d9c11fade7aa603a:from_room: {type: "custom_started"}
3709
+ [TestRoom d1f3ca2eb83d] Started
3710
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43d9c11fade7aa603a:from_room: {type: "room_opened"}
3711
+ [TestRoom d1f3ca2eb83d] TestRoom::Channel is streaming from TestRoom:fb20f57faa7cbd43d9c11fade7aa603a:to_room
3712
+ [TestRoom d1f3ca2eb83d] TestRoom::Channel is transmitting the subscription confirmation
3713
+ [TestRoom d1f3ca2eb83d] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3714
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43d9c11fade7aa603a:to_room: {type: "port_disconnected", mtok: "e81ac06116129ab4173b643356991679"}
3715
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd436bdbaad0ab15e30f:to_room: {type: "port_connected", tags: [], mtok: "d58d1e53520989febceb321d893fed04"}
3716
+ [TestRoom d1f3ca2eb83d] Received message: {"type" => "port_disconnected", "mtok" => "e81ac06116129ab4173b643356991679"}
3717
+ [TestRoom b193b22c5786] Initializing new TestRoom
3718
+ [TestRoom b193b22c5786] UUID: b193b22c5786
3719
+ [TestRoom b193b22c5786] Key: TestRoom:fb20f57faa7cbd436bdbaad0ab15e30f
3720
+ [TestRoom b193b22c5786] Ping watchdog
3721
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd436bdbaad0ab15e30f:from_room: {type: "custom_started"}
3722
+ [TestRoom b193b22c5786] Started
3723
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd436bdbaad0ab15e30f:from_room: {type: "room_opened"}
3724
+ [TestRoom b193b22c5786] TestRoom::Channel is streaming from TestRoom:fb20f57faa7cbd436bdbaad0ab15e30f:to_room
3725
+ [TestRoom b193b22c5786] TestRoom::Channel is transmitting the subscription confirmation
3726
+ [TestRoom b193b22c5786] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3727
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd436bdbaad0ab15e30f:to_room: "KILL"
3728
+ [TestRoom b193b22c5786] Received message: "KILL"
3729
+ [TestRoom b193b22c5786] TestRoom::Channel stopped streaming from TestRoom:fb20f57faa7cbd436bdbaad0ab15e30f:to_room
3730
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd436bdbaad0ab15e30f:from_room: {type: "room_closed"}
3731
+ [TestRoom b193b22c5786] Shutting down
3732
+ [TestRoom b193b22c5786] Shutdown complete
3733
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43801a3073e31c6eb4:to_room: {type: "port_connected", tags: [], mtok: "9d2e45dcf8d9e401583c73bc4c162bb3"}
3734
+ [TestRoom ef19b1adefe8] Initializing new TestRoom
3735
+ [TestRoom ef19b1adefe8] UUID: ef19b1adefe8
3736
+ [TestRoom ef19b1adefe8] Key: TestRoom:fb20f57faa7cbd43801a3073e31c6eb4
3737
+ [TestRoom ef19b1adefe8] Ping watchdog
3738
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43801a3073e31c6eb4:from_room: {type: "custom_started"}
3739
+ [TestRoom ef19b1adefe8] Started
3740
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43801a3073e31c6eb4:from_room: {type: "room_opened"}
3741
+ [TestRoom ef19b1adefe8] TestRoom::Channel is streaming from TestRoom:fb20f57faa7cbd43801a3073e31c6eb4:to_room
3742
+ [TestRoom ef19b1adefe8] TestRoom::Channel is transmitting the subscription confirmation
3743
+ [TestRoom ef19b1adefe8] Channel.transmit called, ignoring: [{identifier: "Room[]", type: "confirm_subscription"}]
3744
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43801a3073e31c6eb4:to_room: {type: "port_disconnected", mtok: "9d2e45dcf8d9e401583c73bc4c162bb3"}
3745
+ [TestRoom ef19b1adefe8] Ping watchdog
3746
+ [TestRoom ef19b1adefe8] Received message: {"type" => "port_disconnected", "mtok" => "9d2e45dcf8d9e401583c73bc4c162bb3"}
3747
+ [TestRoom ef19b1adefe8] Watchdog timeout for room TestRoom[fb20f57faa7cbd43801a3073e31c6eb4], shutting down
3748
+ [TestRoom ef19b1adefe8] TestRoom::Channel stopped streaming from TestRoom:fb20f57faa7cbd43801a3073e31c6eb4:to_room
3749
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43801a3073e31c6eb4:from_room: {type: "room_closed"}
3750
+ [TestRoom ef19b1adefe8] Shutting down
3751
+ [TestRoom ef19b1adefe8] Shutdown complete
3752
+ Shutting down CableRoom
3753
+ [TestRoom 1d46ba0ca7be] TestRoom::Channel stopped streaming from TestRoom:fb20f57faa7cbd433bb16d1eed0e9d7e:to_room
3754
+ [TestRoom 946baa145726] TestRoom::Channel stopped streaming from TestRoom:fb20f57faa7cbd43ABC:to_room
3755
+ [TestRoom c35dab418c5a] TestRoom::Channel stopped streaming from TestRoom:fb20f57faa7cbd4306dbbf70ae4e58b7:to_room
3756
+ [TestRoom 02056517af4f] TestRoom::Channel stopped streaming from TestRoom:fb20f57faa7cbd43A:to_room
3757
+ [TestRoom 756a786d039f] TestRoom::Channel stopped streaming from TestRoom:fb20f57faa7cbd43B:to_room
3758
+ [TestRoom d1f3ca2eb83d] TestRoom::Channel stopped streaming from TestRoom:fb20f57faa7cbd43d9c11fade7aa603a:to_room
3759
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd4306dbbf70ae4e58b7:from_room: {type: "room_closed"}
3760
+ [TestRoom c35dab418c5a] Shutting down
3761
+ [TestRoom c35dab418c5a] Shutdown complete
3762
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd433bb16d1eed0e9d7e:from_room: {type: "room_closed"}
3763
+ [TestRoom 1d46ba0ca7be] Shutting down
3764
+ [TestRoom 1d46ba0ca7be] Shutdown complete
3765
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43ABC:from_room: {type: "room_closed"}
3766
+ [TestRoom 946baa145726] Shutting down
3767
+ [TestRoom 946baa145726] Shutdown complete
3768
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43A:from_room: {type: "room_closed"}
3769
+ [TestRoom 02056517af4f] Shutting down
3770
+ [TestRoom 02056517af4f] Shutdown complete
3771
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43B:from_room: {type: "room_closed"}
3772
+ [TestRoom 756a786d039f] Shutting down
3773
+ [TestRoom 756a786d039f] Shutdown complete
3774
+ [ActionCable] Broadcasting to TestRoom:fb20f57faa7cbd43d9c11fade7aa603a:from_room: {type: "room_closed"}
3775
+ [TestRoom d1f3ca2eb83d] Shutting down
3776
+ [TestRoom d1f3ca2eb83d] Shutdown complete