rubypitaya 3.0.1 → 3.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (28) hide show
  1. checksums.yaml +4 -4
  2. data/lib/rubypitaya/app-template/Gemfile +3 -2
  3. data/lib/rubypitaya/app-template/Gemfile.lock +2 -2
  4. data/lib/rubypitaya/app-template/Makefile +1 -1
  5. data/lib/rubypitaya/app-template/app/app_initializer.rb +3 -1
  6. data/lib/rubypitaya/app-template/app/handlers/player_handler.rb +9 -3
  7. data/lib/rubypitaya/app-template/app/setup/rubypitaya.yml +1 -0
  8. data/lib/rubypitaya/app-template/docker/prod/Dockerfile +12 -3
  9. data/lib/rubypitaya/app-template/docker-compose.yml +4 -4
  10. data/lib/rubypitaya/app-template/helm/templates/deployments/rubypitaya.yaml +2 -0
  11. data/lib/rubypitaya/app-template/helm/templates/statefulsets/etcd.yaml +1 -1
  12. data/lib/rubypitaya/app-template/helm/templates/statefulsets/nats.yaml +1 -1
  13. data/lib/rubypitaya/app-template/helm/values.yaml +1 -0
  14. data/lib/rubypitaya/app-template/kubernetes/statefulset-etcd.yaml +1 -1
  15. data/lib/rubypitaya/app-template/kubernetes/statefulset-nats.yaml +1 -1
  16. data/lib/rubypitaya/app-template/kubernetes/statefulset-postgres.yaml +1 -1
  17. data/lib/rubypitaya/core/database_connector.rb +2 -1
  18. data/lib/rubypitaya/core/handler_base.rb +6 -5
  19. data/lib/rubypitaya/core/handler_router.rb +7 -2
  20. data/lib/rubypitaya/core/http_base.rb +20 -0
  21. data/lib/rubypitaya/core/http_routes.rb +1 -1
  22. data/lib/rubypitaya/core/instance_holder.rb +1 -1
  23. data/lib/rubypitaya/core/main.rb +5 -7
  24. data/lib/rubypitaya/core/spec-helpers/handler_spec_helper.rb +2 -1
  25. data/lib/rubypitaya/core/spec-helpers/setup_spec_helper.rb +4 -0
  26. data/lib/rubypitaya/core/templates/template_migration.rb.erb +4 -1
  27. data/lib/rubypitaya/version.rb +1 -1
  28. metadata +28 -27
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d50d6d5ffeeab38f9d623c33970eb87e4e89ad64e385f4fe57a8d414342e969a
4
- data.tar.gz: 7fb8db293deae83dd0de428a825588b9ca6418eab26a220ab983ac6b1737ab69
3
+ metadata.gz: '0308a5654cdfbb6aa96c6c680a27af78ca4a7ed6ca4830afdf352587e930967d'
4
+ data.tar.gz: bdaeef1f2af9594c8b0a39c8b954d2008c84383d8fa4a318637224e30c2507d1
5
5
  SHA512:
6
- metadata.gz: 88510c87137b193a0f4f1f2a12ad7fd7c2c9acb1be8d2aaeee7545b8f1832b380b4e57a4e9d072deef7e526cc87dfd86461584933fc4e9e0d5f466c520408831
7
- data.tar.gz: 341555828f6ed7c3996210cf64bc21cc36e756940b1f506cf81f62aaecbc0aadb18fe07fb9cc6c525d3455c4d45ff22e82efa257e6eee63d41b59b502a85c2c9
6
+ metadata.gz: 6e9f17d2cdb1e12dd2a1e37f693506e81054a7f91a313db0ae5873fd8423f3ff461782906db78f2a2494452a638eb26a464f6b186a81602c9023c501f61b265a
7
+ data.tar.gz: eda610ea2ca327de2f2fcf47f49ba8225d0e7500745ec3d3a7247f7371a6634cd1e4694734d2ba4da6c14243d05fe6df661d55bb9679a7dcf944d3221e7cd687
@@ -1,11 +1,12 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- gem 'rubypitaya', '3.0.1'
3
+ gem 'rubypitaya', '3.0.2'
4
4
 
5
5
  group :development do
6
6
  gem 'pry', '0.14.1'
7
- gem 'bundler', '2.2.22'
8
7
  gem 'rspec', '3.10.0'
9
8
  gem 'listen', '3.7.0'
9
+ gem 'bundler', '2.2.22'
10
10
  gem 'cucumber', '7.0.0'
11
+ gem 'sinatra-contrib', '2.1.0'
11
12
  end
@@ -103,7 +103,7 @@ GEM
103
103
  rspec-support (~> 3.10.0)
104
104
  rspec-support (3.10.2)
105
105
  ruby2_keywords (0.0.5)
106
- rubypitaya (3.0.1)
106
+ rubypitaya (3.0.2)
107
107
  activerecord (= 6.1.4.1)
108
108
  etcdv3 (= 0.11.4)
109
109
  google-protobuf (= 3.18.0)
@@ -144,7 +144,7 @@ DEPENDENCIES
144
144
  listen (= 3.7.0)
145
145
  pry (= 0.14.1)
146
146
  rspec (= 3.10.0)
147
- rubypitaya (= 3.0.1)
147
+ rubypitaya (= 3.0.2)
148
148
 
149
149
  BUNDLED WITH
150
150
  2.2.22
@@ -36,7 +36,7 @@ test-rspec:
36
36
 
37
37
  ## Run cucumber tests. FILE=something.feature
38
38
  test-cucumber:
39
- @docker-compose run --service-ports --rm rubypitaya bundle exec cucumber $(FILE)
39
+ @docker-compose run --service-ports --rm rubypitaya bundle exec cucumber --publish-quiet $(FILE)
40
40
 
41
41
  ## Update gems dependencies on Gemfile.lock
42
42
  update-dependencies:
@@ -5,9 +5,11 @@ class AppInitializer < RubyPitaya::InitializerBase
5
5
  # attributes:
6
6
  # - redis
7
7
  # - link: https://github.com/redis/redis-rb/
8
+ #
8
9
  # - mongo
9
10
  # - class: Mongo::Client
10
11
  # - link: https://docs.mongodb.com/ruby-driver/current/tutorials/quick-start/
12
+ #
11
13
  # - config
12
14
  # - class: RubyPitaya::Config
13
15
  # - link: https://gitlab.com/LucianoPC/ruby-pitaya/-/blob/master/lib/rubypitaya/core/config.rb
@@ -30,7 +32,7 @@ class AppInitializer < RubyPitaya::InitializerBase
30
32
  def run(initializer_content)
31
33
  playerBll = PlayerBLL.new
32
34
 
33
- PlayerHandler.bll.add_instance(:player, playerBll)
35
+ PlayerHandler.objects.add(:bll, playerBll)
34
36
  end
35
37
 
36
38
  def self.path
@@ -2,11 +2,11 @@ class PlayerHandler < RubyPitaya::HandlerBase
2
2
 
3
3
  # class: HandlerBase
4
4
  # attributes:
5
- # - @bll
5
+ # - @objects
6
6
  # - class: InstanceHolder
7
7
  # - methods:
8
8
  # - [](key)
9
- # - info: get bll by key
9
+ # - info: get object by key
10
10
  #
11
11
  # - @redis
12
12
  # - link: https://github.com/redis/redis-rb/
@@ -51,7 +51,7 @@ class PlayerHandler < RubyPitaya::HandlerBase
51
51
  user_id = @params[:userId]
52
52
 
53
53
  player = Player.find_by_user_id(user_id)
54
- player = @bll[:player].create_new_player(@setup, @config) if player.nil?
54
+ player = bll.create_new_player(@setup, @config) if player.nil?
55
55
 
56
56
  @session.uid = player.user_id
57
57
 
@@ -80,4 +80,10 @@ class PlayerHandler < RubyPitaya::HandlerBase
80
80
  data: player.to_hash,
81
81
  }
82
82
  end
83
+
84
+ private
85
+
86
+ def bll
87
+ @bll ||= @objects[:bll]
88
+ end
83
89
  end
@@ -1,6 +1,7 @@
1
1
  server:
2
2
  name: 'rubypitaya'
3
3
  environment: development
4
+ cheats: true
4
5
 
5
6
  nats:
6
7
  url: 'nats://nats:4222'
@@ -15,6 +15,18 @@ RUN bundle config --global jobs 4 && \
15
15
  bundle config --global without "development test" && \
16
16
  bundle install
17
17
 
18
+ RUN rm -rf /usr/local/bundle/cache && \
19
+ rm -rf /usr/local/bundle/build_info && \
20
+ rm -rf /usr/local/bundle/doc && \
21
+ rm -rf /usr/local/bundle/doc && \
22
+ find /usr/local/bundle/gems/grpc-*/src/ruby/lib/grpc/2.4/ -name "*.so" -delete && \
23
+ find /usr/local/bundle/gems/grpc-*/src/ruby/lib/grpc/2.5/ -name "*.so" -delete && \
24
+ find /usr/local/bundle/gems/grpc-*/src/ruby/lib/grpc/2.6/ -name "*.so" -delete && \
25
+ find /usr/local/bundle/gems/grpc-*/src/ruby/lib/grpc/2.7/ -name "*.so" -delete && \
26
+ find /usr/local/bundle/gems/ -name "*.c" -delete && \
27
+ find /usr/local/bundle/gems/ -name "*.o" -delete && \
28
+ find /usr/local/bundle/gems/ -name "spec" -exec rm -rv {} +
29
+
18
30
  # RUN curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
19
31
 
20
32
  FROM ruby:3.0.2-slim
@@ -29,9 +41,6 @@ RUN apt update && \
29
41
  && rm -rf /var/lib/apt/lists/*
30
42
 
31
43
  COPY --from=builder /usr/local/bundle /usr/local/bundle
32
- RUN rm -rf /usr/local/bundle/cache
33
- RUN rm -rf /usr/local/bundle/build_info
34
- RUN rm -rf /usr/local/bundle/doc
35
44
 
36
45
  # COPY --from=builder /kubectl /usr/local/bin/kubectl
37
46
  # RUN chmod +x /usr/local/bin/kubectl
@@ -1,12 +1,12 @@
1
1
  version: '3'
2
2
  services:
3
3
  nats:
4
- image: 'nats:2.1.4'
4
+ image: 'nats:2.6.2-alpine'
5
5
  ports:
6
6
  - '4222:4222'
7
7
 
8
8
  etcd:
9
- image: 'appcelerator/etcd:3.0.15'
9
+ image: 'appcelerator/etcd:3.3.3'
10
10
  ports:
11
11
  - '2379:2379'
12
12
  - '2380:2380'
@@ -17,7 +17,7 @@ services:
17
17
  - '9001:6379'
18
18
 
19
19
  db:
20
- image: 'postgres:9.6.17'
20
+ image: 'postgres:14.0-alpine'
21
21
  volumes:
22
22
  - 'postgres:/var/lib/postgresql/data'
23
23
  environment:
@@ -27,7 +27,7 @@ services:
27
27
  - '9100:5432'
28
28
 
29
29
  mongo:
30
- image: mongo:5.0.0
30
+ image: mongo:5.0.3
31
31
  restart: always
32
32
  ports:
33
33
  - 27017:27017
@@ -27,6 +27,8 @@ spec:
27
27
  env:
28
28
  - name: RUBYPITAYA_SERVER_ENVIRONMENT
29
29
  value: {{ .Values.rubypitaya.server.environment | quote }}
30
+ - name: RUBYPITAYA_SERVER_CHEATS
31
+ value: {{ .Values.rubypitaya.server.cheats | quote }}
30
32
  - name: RUBYPITAYA_NATS_URL
31
33
  value: "nats://nats.{{ .Values.namespace }}.svc.cluster.local:4222"
32
34
  - name: RUBYPITAYA_ETCD_URL
@@ -20,7 +20,7 @@ spec:
20
20
  spec:
21
21
  containers:
22
22
  - name: etcd
23
- image: appcelerator/etcd:3.0.15
23
+ image: appcelerator/etcd:3.3.3
24
24
  ports:
25
25
  - containerPort: 2379
26
26
  name: etcd-2379
@@ -20,7 +20,7 @@ spec:
20
20
  spec:
21
21
  containers:
22
22
  - name: nats
23
- image: nats:2.1.4
23
+ image: nats:2.6.2-alpine
24
24
  ports:
25
25
  - containerPort: 4222
26
26
  name: nats
@@ -9,6 +9,7 @@ connector:
9
9
  rubypitaya:
10
10
  server:
11
11
  environment: production
12
+ cheats: true
12
13
  image:
13
14
  repository: [metagame-repository-link]
14
15
  tag: latest
@@ -17,7 +17,7 @@ spec:
17
17
  spec:
18
18
  containers:
19
19
  - name: etcd
20
- image: appcelerator/etcd:3.0.15
20
+ image: appcelerator/etcd:3.3.3
21
21
  ports:
22
22
  - containerPort: 2379
23
23
  name: etcd-2379
@@ -17,7 +17,7 @@ spec:
17
17
  spec:
18
18
  containers:
19
19
  - name: nats
20
- image: nats:2.1.4
20
+ image: nats:2.6.2-alpine
21
21
  ports:
22
22
  - containerPort: 4222
23
23
  name: nats
@@ -17,7 +17,7 @@ spec:
17
17
  spec:
18
18
  containers:
19
19
  - name: postgres
20
- image: postgres:9.6.17
20
+ image: postgres:14.0-alpine
21
21
  env:
22
22
  - name: POSTGRES_USER
23
23
  value: "postgres"
@@ -5,8 +5,9 @@ module RubyPitaya
5
5
 
6
6
  class DatabaseConnector
7
7
 
8
- def initialize(database_config)
8
+ def initialize(database_config, logger = nil)
9
9
  @database_config = database_config
10
+ @logger ||= ActiveSupport::Logger.new(STDOUT)
10
11
  end
11
12
 
12
13
  def connect
@@ -5,9 +5,9 @@ module RubyPitaya
5
5
  class HandlerBase
6
6
 
7
7
  class_attribute :non_authenticated_routes, default: []
8
- class_attribute :handler_bll, default: nil, instance_reader: false, instance_writer: false, instance_accessor: false, instance_predicate: false
8
+ class_attribute :handler_objects, default: nil, instance_reader: false, instance_writer: false, instance_accessor: false, instance_predicate: false
9
9
 
10
- attr_reader :bll, :log, :redis, :setup, :config, :params, :session, :postman
10
+ attr_reader :objects, :log, :redis, :setup, :config, :params, :session, :postman
11
11
 
12
12
  def initialize
13
13
  @log = nil
@@ -18,7 +18,7 @@ module RubyPitaya
18
18
  @session = nil
19
19
  @postman = nil
20
20
 
21
- @bll = self.class.bll
21
+ @objects = self.class.objects
22
22
  end
23
23
 
24
24
  def set_attributes(log, redis, mongo, setup, config, params, session, postman)
@@ -32,8 +32,9 @@ module RubyPitaya
32
32
  @postman = postman
33
33
  end
34
34
 
35
- def self.bll
36
- self.handler_bll ||= InstanceHolder.new
35
+ def self.objects
36
+ self.handler_objects ||= InstanceHolder.new
37
+ return self.handler_objects
37
38
  end
38
39
 
39
40
  def self.non_authenticated_actions(*action_names)
@@ -8,7 +8,9 @@ module RubyPitaya
8
8
 
9
9
  INVALID_ACTION_NAMES = ['initialize', 'set_attributes']
10
10
 
11
- def initialize()
11
+ def initialize(is_cheats_enabled)
12
+ @is_cheats_enabled = is_cheats_enabled
13
+
12
14
  routes_path = Path::ROUTES_FILE_PATH
13
15
  handler_folder_paths = Path::Plugins::HANDLERS_FOLDER_PATHS + [Path::HANDLERS_FOLDER_PATH]
14
16
 
@@ -35,7 +37,10 @@ module RubyPitaya
35
37
  end
36
38
 
37
39
  def import_handler_files(handler_folder_path)
38
- Gem.find_files("#{handler_folder_path}/*.rb").each { |path| require path }
40
+ handler_files = Gem.find_files("#{handler_folder_path}/*.rb")
41
+ handler_files = handler_files.select { |a| !a[/.+_cheats.rb/] && !a[/.+_cheat.rb/] } unless @is_cheats_enabled
42
+
43
+ handler_files.each { |path| require path }
39
44
  end
40
45
 
41
46
  def import_handler_classes
@@ -0,0 +1,20 @@
1
+ require 'rubypitaya/core/instance_holder'
2
+
3
+ module RubyPitaya
4
+
5
+ class HttpBase
6
+
7
+ class_attribute :handler_objects, default: nil, instance_reader: false, instance_writer: false, instance_accessor: false, instance_predicate: false
8
+
9
+ attr_reader :objects
10
+
11
+ def initialize
12
+ @objects = self.class.objects
13
+ end
14
+
15
+ def self.objects
16
+ self.handler_objects ||= InstanceHolder.new
17
+ return self.handler_objects
18
+ end
19
+ end
20
+ end
@@ -23,12 +23,12 @@ module RubyPitaya
23
23
  before do
24
24
  content_type :json
25
25
 
26
- @bll = settings.bll
27
26
  @log = settings.log
28
27
  @mongo = settings.mongo
29
28
  @setup = settings.setup
30
29
  @redis = settings.redis
31
30
  @config = settings.config
31
+ @objects = settings.objects
32
32
  @session = nil
33
33
  @postman = nil
34
34
 
@@ -6,7 +6,7 @@ module RubyPitaya
6
6
  @instances = {}
7
7
  end
8
8
 
9
- def add_instance(key, instance)
9
+ def add(key, instance)
10
10
  @instances[key] = instance
11
11
  end
12
12
 
@@ -28,8 +28,6 @@ module RubyPitaya
28
28
 
29
29
  class Main
30
30
 
31
- attr_reader :redis_connector, :config, :bll
32
-
33
31
  def initialize
34
32
  @setup = Setup.new
35
33
  @environment_name = @setup.fetch('rubypitaya.server.environment', 'development')
@@ -69,7 +67,7 @@ module RubyPitaya
69
67
  @redis_connector.connect
70
68
 
71
69
  @database_config = DatabaseConfig.new
72
- @database_connector = DatabaseConnector.new(@database_config)
70
+ @database_connector = DatabaseConnector.new(@database_config, @log)
73
71
  @database_connector.connect
74
72
 
75
73
  @mongo_address = @setup['rubypitaya.mongo.url']
@@ -85,7 +83,7 @@ module RubyPitaya
85
83
  @config = Config.new
86
84
  @config.auto_reload if @is_development_environment
87
85
 
88
- @bll = InstanceHolder.new
86
+ @objects = InstanceHolder.new
89
87
 
90
88
  @initializer_content = InitializerContent.new(@log,
91
89
  @redis_connector.redis,
@@ -95,7 +93,8 @@ module RubyPitaya
95
93
  @initializer_broadcast = InitializerBroadcast.new
96
94
  @initializer_broadcast.run(@initializer_content)
97
95
 
98
- @handler_router = HandlerRouter.new()
96
+ @is_cheats_enabled = @setup.fetch('rubypitaya.server.cheats', false)
97
+ @handler_router = HandlerRouter.new(@is_cheats_enabled)
99
98
 
100
99
  run_http
101
100
  run_server
@@ -104,12 +103,12 @@ module RubyPitaya
104
103
  private
105
104
 
106
105
  def run_http
107
- HttpRoutes.set :bll, @bll
108
106
  HttpRoutes.set :log, @log
109
107
  HttpRoutes.set :redis, @redis_connector.redis
110
108
  HttpRoutes.set :mongo, @mongo_connector.mongo
111
109
  HttpRoutes.set :setup, @setup
112
110
  HttpRoutes.set :config, @config
111
+ HttpRoutes.set :objects, @objects
113
112
  HttpRoutes.set :views, [Path::HTTP_VIEWS_PATH] + Path::Plugins::HTTP_VIEWS_PATHS
114
113
 
115
114
  HttpRoutes.auto_reload if @is_development_environment
@@ -173,7 +172,6 @@ module RubyPitaya
173
172
  @session.update(session_id, session_uid, session_data, metadata,
174
173
  frontend_id)
175
174
 
176
- # TODO: Validate if handler and action names are not nil
177
175
  handler_name, action_name = message_route.scan(/\A\w+\.(\w+)\.(\w+)\z/)[0]
178
176
 
179
177
  @log.info "request -> route: #{message_route}"
@@ -23,7 +23,8 @@ module RubyPitaya
23
23
  initialize_redis
24
24
  initialize_mongo
25
25
 
26
- @@handler_router ||= HandlerRouter.new()
26
+ is_cheats_enabled = @@setup.fetch('rubypitaya.server.cheats', false)
27
+ @@handler_router ||= HandlerRouter.new(is_cheats_enabled)
27
28
 
28
29
 
29
30
  @@initializer_content = InitializerContent.new(@@log,
@@ -24,6 +24,10 @@ module RubyPitaya
24
24
  @setup_mock = merge_recursively(@setup_mock, add_hash)
25
25
  end
26
26
 
27
+ def fetch(*args)
28
+ @setup_mock.fetch(*args)
29
+ end
30
+
27
31
  private
28
32
 
29
33
  def undig(*keys, value)
@@ -2,11 +2,14 @@ require 'active_record'
2
2
 
3
3
  class <%= class_name %> < ActiveRecord::Migration[6.1]
4
4
 
5
- enable_extension 'pgcrypto'
5
+ enable_extension 'pgcrypto' unless extension_enabled?('pgcrypto')
6
+
7
+ # Migration suported types reference: https://guides.rubyonrails.org/v3.2/migrations.html#supported-types
6
8
 
7
9
  def change
8
10
  create_table :[table-name-here-in-plural], id: :uuid do |t|
9
11
  # t.belongs_to :user, type: :uuid, foreing_key: true
12
+ # t.belongs_to :user, type: :uuid, foreing_key: true, index: { unique: true }
10
13
  t.timestamps null: false
11
14
  end
12
15
  end
@@ -1,3 +1,3 @@
1
1
  module RubyPitaya
2
- VERSION = '3.0.1'
2
+ VERSION = '3.0.2'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubypitaya
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 3.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Luciano Prestes Cavalcanti
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-24 00:00:00.000000000 Z
11
+ date: 2021-11-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: pg
@@ -58,28 +58,28 @@ dependencies:
58
58
  requirements:
59
59
  - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: 2.15.0
61
+ version: 2.16.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - '='
67
67
  - !ruby/object:Gem::Version
68
- version: 2.15.0
68
+ version: 2.16.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: redis
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - '='
74
74
  - !ruby/object:Gem::Version
75
- version: 4.4.0
75
+ version: 4.5.1
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - '='
81
81
  - !ruby/object:Gem::Version
82
- version: 4.4.0
82
+ version: 4.5.1
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: etcdv3
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -156,98 +156,98 @@ dependencies:
156
156
  requirements:
157
157
  - - '='
158
158
  - !ruby/object:Gem::Version
159
- version: 3.18.0
159
+ version: 3.18.1
160
160
  type: :runtime
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - '='
165
165
  - !ruby/object:Gem::Version
166
- version: 3.18.0
166
+ version: 3.18.1
167
167
  - !ruby/object:Gem::Dependency
168
- name: sinatra-contrib
168
+ name: pry
169
169
  requirement: !ruby/object:Gem::Requirement
170
170
  requirements:
171
171
  - - '='
172
172
  - !ruby/object:Gem::Version
173
- version: 2.1.0
174
- type: :runtime
173
+ version: 0.14.1
174
+ type: :development
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - '='
179
179
  - !ruby/object:Gem::Version
180
- version: 2.1.0
180
+ version: 0.14.1
181
181
  - !ruby/object:Gem::Dependency
182
- name: pry
182
+ name: rspec
183
183
  requirement: !ruby/object:Gem::Requirement
184
184
  requirements:
185
185
  - - '='
186
186
  - !ruby/object:Gem::Version
187
- version: 0.14.1
187
+ version: 3.10.0
188
188
  type: :development
189
189
  prerelease: false
190
190
  version_requirements: !ruby/object:Gem::Requirement
191
191
  requirements:
192
192
  - - '='
193
193
  - !ruby/object:Gem::Version
194
- version: 0.14.1
194
+ version: 3.10.0
195
195
  - !ruby/object:Gem::Dependency
196
- name: bundler
196
+ name: listen
197
197
  requirement: !ruby/object:Gem::Requirement
198
198
  requirements:
199
199
  - - '='
200
200
  - !ruby/object:Gem::Version
201
- version: 2.2.22
201
+ version: 3.7.0
202
202
  type: :development
203
203
  prerelease: false
204
204
  version_requirements: !ruby/object:Gem::Requirement
205
205
  requirements:
206
206
  - - '='
207
207
  - !ruby/object:Gem::Version
208
- version: 2.2.22
208
+ version: 3.7.0
209
209
  - !ruby/object:Gem::Dependency
210
- name: rspec
210
+ name: bundler
211
211
  requirement: !ruby/object:Gem::Requirement
212
212
  requirements:
213
213
  - - '='
214
214
  - !ruby/object:Gem::Version
215
- version: 3.10.0
215
+ version: 2.2.22
216
216
  type: :development
217
217
  prerelease: false
218
218
  version_requirements: !ruby/object:Gem::Requirement
219
219
  requirements:
220
220
  - - '='
221
221
  - !ruby/object:Gem::Version
222
- version: 3.10.0
222
+ version: 2.2.22
223
223
  - !ruby/object:Gem::Dependency
224
- name: listen
224
+ name: cucumber
225
225
  requirement: !ruby/object:Gem::Requirement
226
226
  requirements:
227
227
  - - '='
228
228
  - !ruby/object:Gem::Version
229
- version: 3.7.0
229
+ version: 7.0.0
230
230
  type: :development
231
231
  prerelease: false
232
232
  version_requirements: !ruby/object:Gem::Requirement
233
233
  requirements:
234
234
  - - '='
235
235
  - !ruby/object:Gem::Version
236
- version: 3.7.0
236
+ version: 7.0.0
237
237
  - !ruby/object:Gem::Dependency
238
- name: cucumber
238
+ name: sinatra-contrib
239
239
  requirement: !ruby/object:Gem::Requirement
240
240
  requirements:
241
241
  - - '='
242
242
  - !ruby/object:Gem::Version
243
- version: 7.0.0
243
+ version: 2.1.0
244
244
  type: :development
245
245
  prerelease: false
246
246
  version_requirements: !ruby/object:Gem::Requirement
247
247
  requirements:
248
248
  - - '='
249
249
  - !ruby/object:Gem::Version
250
- version: 7.0.0
250
+ version: 2.1.0
251
251
  description: RubyPitaya is an application to create servers using the pitaya protocol.
252
252
  email:
253
253
  - lucianopcbr@gmail.com
@@ -342,6 +342,7 @@ files:
342
342
  - "./lib/rubypitaya/core/handler_base.rb"
343
343
  - "./lib/rubypitaya/core/handler_router.rb"
344
344
  - "./lib/rubypitaya/core/helpers/setup_helper.rb"
345
+ - "./lib/rubypitaya/core/http_base.rb"
345
346
  - "./lib/rubypitaya/core/http_routes.rb"
346
347
  - "./lib/rubypitaya/core/initializer_base.rb"
347
348
  - "./lib/rubypitaya/core/initializer_broadcast.rb"