anyt 0.8.0 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3d56c7de8b5d8ad2df54f756ad961cfe05d6d12e961b3c9bcca2d68084fd5413
4
- data.tar.gz: 9a39e7cdd7d5f72d6cdb427765a3320c76e1201dba20bc75c958a764b78f4c21
3
+ metadata.gz: 6e638c537e69dc1a664f30c53781c04706c8e08c317badda109e877984742863
4
+ data.tar.gz: 850d0dd0c56839c8c92e418516d520a044e6d6d1e835a23d73a0590541e15d48
5
5
  SHA512:
6
- metadata.gz: 6b0ce87b22d20082ce0d9848e7ba01d64bc35375f5970a3efe04fd28ea79c72bda22887bb5d69b7588946d02cbaf7105ca65fd2ea08bc07cf791c081abddc439
7
- data.tar.gz: 5b6f1d8f4057601fc3fc394b18ae60db944c59f4f10dc305a038759be2da8cdab76fe88dab71a3698d6804e077f481f8ab16ed808610e314f475ca542411b0c1
6
+ metadata.gz: 2ea1aaea3191e20871dc74547a2bea9239202f0bc6ce1392c9a1f180e6ae0a3512b79ee40fe1c8f5cbf9076a7b53767f7c83136cd0798a127e62589094420e21
7
+ data.tar.gz: df2c10e408e26b02cf60d697d675ea2716368d0f3e23b722d6b97bbd982d3159af6d787fad0e0abec7a303b1cc0a08920d90b3fe845ac4c3e657badd138ba558
@@ -27,7 +27,7 @@ Gem::Specification.new do |spec|
27
27
  spec.add_dependency "minitest-reporters", "~> 1.1.0"
28
28
  spec.add_dependency "rails", "~> 5.0"
29
29
  spec.add_dependency "anycable-rails", "~> 0.6.0"
30
- spec.add_dependency "redis", "~> 3.0"
30
+ spec.add_dependency "redis", "~> 4.0"
31
31
  spec.add_dependency "websocket", "~> 1.2.4"
32
32
  spec.add_dependency "websocket-client-simple", "~> 0.3.0"
33
33
  spec.add_dependency "concurrent-ruby", "~> 1.0.0"
@@ -7,7 +7,7 @@ module Anyt
7
7
  class Config < Anyway::Config
8
8
  attr_config :command,
9
9
  :only_tests,
10
- target_url: "ws://localhost:9292/",
10
+ target_url: "ws://localhost:9292/cable",
11
11
  wait_command: 2
12
12
 
13
13
  def filter_tests?
@@ -1,10 +1,29 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "rails"
4
- require "action_cable"
4
+ require "action_controller/railtie"
5
+ require "action_cable/engine"
6
+
5
7
  require "redis"
8
+ require "anycable-rails"
9
+
6
10
  require "action_dispatch/middleware/cookies"
7
11
 
12
+ class TestApp < Rails::Application
13
+ secrets.secret_token = "secret_token"
14
+ secrets.secret_key_base = "secret_key_base"
15
+
16
+ config.logger = Logger.new(STDOUT)
17
+ config.log_level = :fatal
18
+ config.eager_load = true
19
+
20
+ initializer "routes" do
21
+ Rails.application.routes.draw do
22
+ mount ActionCable.server => "/cable"
23
+ end
24
+ end
25
+ end
26
+
8
27
  module ApplicationCable
9
28
  class Connection < ActionCable::Connection::Base
10
29
  delegate :params, to: :request
@@ -7,4 +7,6 @@ require_relative "../tests"
7
7
  # Load channels from tests
8
8
  Anyt::Tests.load_all_tests
9
9
 
10
- run ActionCable.server
10
+ Rails.application.initialize!
11
+
12
+ run Rails.application
@@ -1,9 +1,10 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- module Anyt # :nodoc:
4
- require "anyt/dummy/application"
5
- require "anycable"
3
+ require "anyt/dummy/application"
4
+ require "anycable-rails"
5
+ require "redis"
6
6
 
7
+ module Anyt # :nodoc:
7
8
  # Runs AnyCable RPC server in the background
8
9
  module RPC
9
10
  using AsyncHelpers
@@ -11,21 +12,31 @@ module Anyt # :nodoc:
11
12
  class << self
12
13
  attr_accessor :running
13
14
 
15
+ # rubocop: disable Metrics/AbcSize,Metrics/MethodLength
14
16
  def start
17
+ ActionCable.server.config.cable = { "adapter" => "any_cable" }
18
+ Rails.application.initialize!
19
+
15
20
  AnyCable.logger.debug "Starting RPC server ..."
16
21
 
17
- @thread = Thread.new { AnyCable::Server.start }
18
- @thread.abort_on_exception = true
22
+ AnyCable.server_callbacks.each(&:call)
19
23
 
20
- wait(2) { AnyCable::Server.running? }
24
+ @server = AnyCable::Server.new(
25
+ host: AnyCable.config.rpc_host,
26
+ **AnyCable.config.to_grpc_params,
27
+ interceptors: AnyCable.middleware.to_a
28
+ )
29
+
30
+ AnyCable.middleware.freeze
31
+
32
+ @server.start
21
33
 
22
34
  AnyCable.logger.debug "RPC server started"
23
35
  end
36
+ # rubocop: enable Metrics/AbcSize,Metrics/MethodLength
24
37
 
25
38
  def stop
26
- return unless AnyCable::Server.running?
27
-
28
- AnyCable::Server.grpc_server.stop
39
+ @server.stop
29
40
  end
30
41
  end
31
42
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Anyt
4
- VERSION = "0.8.0"
4
+ VERSION = "0.8.1"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: anyt
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - palkan
@@ -86,14 +86,14 @@ dependencies:
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '3.0'
89
+ version: '4.0'
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '3.0'
96
+ version: '4.0'
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: websocket
99
99
  requirement: !ruby/object:Gem::Requirement