nonnative 1.85.1 → 1.86.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 370acc5de7d851686a126f10fd1ba96137d3065957fb0073ce34994971721d3d
4
- data.tar.gz: 894ab159c74027083e80fc56fc5f63f06057f5584546a658dee0b084df5585b2
3
+ metadata.gz: 81b070f7067278bcc745ef685d26cb856196efcaff35255baa850ac41448f0dc
4
+ data.tar.gz: bf16cd6415717885eb38d3b60fd9e5da08a981571e9f67e7928fcda8e9e35ffb
5
5
  SHA512:
6
- metadata.gz: 3e45f3fd1aeb50a89be7f782d942fc0b720596d210d29823a889b35291dcfd3e8ce1e28a69050d56b76e048aa1b1353163bfe9fe92b4ab57a9eeeaa7a07cf6af
7
- data.tar.gz: a6ab1ba44dcc594a371316091351c8de38ec05d3f15b73eba254c700742e11037f696978952e09e7b42c99fb0ce6202d08a90c90b2049b666b35d22d2155087d
6
+ metadata.gz: aa19604dfec804d43a98f23f54020c35eef9fc6f1633b01437703ccec275df4ddedf8710737fd6f2edc69cfc1e28fdfc6da0499d8856686c7cd1c43def45982d
7
+ data.tar.gz: 8521adce4f1ac505d2ab958fa9359f7fd459e78a674bc4008b11ce682275ac9f47a9578988fae484137d4ce6a8621dbd7ee8940bdad19da5ed4980c5154baa0a
data/CHANGELOG.md CHANGED
@@ -6,6 +6,10 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
 
7
7
  ## Unreleased
8
8
 
9
+ ## [v1.86.0](https://github.com/alexfalkowski/nonnative/releases/tag/v1.86.0) - 2025-01-25
10
+
11
+ - [`9f3be69`](https://github.com/alexfalkowski/nonnative/commit/9f3be69130570a6842d6559c929fe6cb480dd1df) feat(http_server): use webrick (#490)
12
+
9
13
  ## [v1.85.1](https://github.com/alexfalkowski/nonnative/releases/tag/v1.85.1) - 2025-01-25
10
14
 
11
15
  - [`14b648f`](https://github.com/alexfalkowski/nonnative/commit/14b648f96addc49163e14a22ae904f2fafec79ca) fix(socket_pair): handle nil from recv (#488)
data/Gemfile.lock CHANGED
@@ -1,18 +1,19 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- nonnative (1.85.1)
4
+ nonnative (1.86.0)
5
5
  concurrent-ruby (>= 1, < 2)
6
6
  config (>= 5, < 6)
7
7
  cucumber (>= 7, < 10)
8
8
  get_process_mem (>= 1, < 2)
9
9
  grpc (>= 1, < 2)
10
- puma (>= 6, < 7)
10
+ rackup (>= 2, < 3)
11
11
  rest-client (>= 2, < 3)
12
12
  rspec-benchmark (>= 0, < 1)
13
13
  rspec-expectations (>= 3, < 4)
14
14
  rspec-wait (>= 1, < 2)
15
15
  sinatra (>= 4, < 5)
16
+ webrick (>= 1, < 2)
16
17
 
17
18
  GEM
18
19
  remote: https://rubygems.org/
@@ -98,15 +99,12 @@ GEM
98
99
  mustermann (3.0.3)
99
100
  ruby2_keywords (~> 0.0.1)
100
101
  netrc (0.11.0)
101
- nio4r (2.7.4)
102
102
  ostruct (0.6.1)
103
103
  parallel (1.26.3)
104
104
  parser (3.3.7.0)
105
105
  ast (~> 2.4.1)
106
106
  racc
107
107
  prism (1.3.0)
108
- puma (6.5.0)
109
- nio4r (~> 2.0)
110
108
  racc (1.8.1)
111
109
  rack (3.1.8)
112
110
  rack-protection (4.1.1)
@@ -116,6 +114,8 @@ GEM
116
114
  rack-session (2.1.0)
117
115
  base64 (>= 0.1.0)
118
116
  rack (>= 3.0.0)
117
+ rackup (2.2.1)
118
+ rack (>= 3)
119
119
  rainbow (3.1.1)
120
120
  rake (13.2.1)
121
121
  rbs (3.8.1)
@@ -189,6 +189,7 @@ GEM
189
189
  unicode-display_width (3.1.4)
190
190
  unicode-emoji (~> 4.0, >= 4.0.4)
191
191
  unicode-emoji (4.0.4)
192
+ webrick (1.9.1)
192
193
 
193
194
  PLATFORMS
194
195
  arm64-darwin-22
@@ -3,12 +3,7 @@
3
3
  module Nonnative
4
4
  class HTTPServer < Nonnative::Server
5
5
  def initialize(service)
6
- log = File.open(service.log, 'a')
7
- options = {
8
- log_writer: Puma::LogWriter.new(log, log),
9
- force_shutdown_after: service.timeout
10
- }
11
- @server = Puma::Server.new(app, Puma::Events.new, options)
6
+ @server = ::Rackup::Handler.get('webrick')
12
7
 
13
8
  super
14
9
  end
@@ -16,24 +11,18 @@ module Nonnative
16
11
  protected
17
12
 
18
13
  def perform_start
19
- server.add_tcp_listener proxy.host, proxy.port
20
- server.run(false)
14
+ file = File.open(service.log, 'a')
15
+ logs = [
16
+ [Logger.new(file), WEBrick::AccessLog::COMBINED_LOG_FORMAT]
17
+ ]
18
+
19
+ server.run(app, Host: proxy.host, Port: proxy.port,
20
+ Logger: WEBrick::Log.new(file),
21
+ AccessLog: logs)
21
22
  end
22
23
 
23
24
  def perform_stop
24
- server.graceful_shutdown
25
- end
26
-
27
- def wait_start
28
- timeout.perform do
29
- super while server.running == 0
30
- end
31
- end
32
-
33
- def wait_stop
34
- timeout.perform do
35
- super while server.running != 0
36
- end
25
+ server.shutdown
37
26
  end
38
27
 
39
28
  private
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Nonnative
4
- VERSION = '1.85.1'
4
+ VERSION = '1.86.0'
5
5
  end
data/lib/nonnative.rb CHANGED
@@ -8,9 +8,8 @@ require 'securerandom'
8
8
 
9
9
  require 'grpc'
10
10
  require 'sinatra'
11
+ require 'rackup'
11
12
  require 'rest-client'
12
- require 'puma'
13
- require 'puma/server'
14
13
  require 'concurrent'
15
14
  require 'config'
16
15
  require 'cucumber'
@@ -18,6 +17,7 @@ require 'get_process_mem'
18
17
  require 'rspec-benchmark'
19
18
  require 'rspec/expectations'
20
19
  require 'rspec/wait'
20
+ require 'webrick'
21
21
 
22
22
  require 'nonnative/version'
23
23
  require 'nonnative/error'
data/nonnative.gemspec CHANGED
@@ -29,10 +29,11 @@ Gem::Specification.new do |spec|
29
29
  spec.add_dependency 'cucumber', '>= 7', '< 10'
30
30
  spec.add_dependency 'get_process_mem', '>= 1', '< 2'
31
31
  spec.add_dependency 'grpc', '>= 1', '< 2'
32
- spec.add_dependency 'puma', '>= 6', '< 7'
32
+ spec.add_dependency 'rackup', '>= 2', '< 3'
33
33
  spec.add_dependency 'rest-client', '>= 2', '< 3'
34
34
  spec.add_dependency 'rspec-benchmark', '>= 0', '< 1'
35
35
  spec.add_dependency 'rspec-expectations', '>= 3', '< 4'
36
36
  spec.add_dependency 'rspec-wait', '>= 1', '< 2'
37
37
  spec.add_dependency 'sinatra', '>= 4', '< 5'
38
+ spec.add_dependency 'webrick', '>= 1', '< 2'
38
39
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nonnative
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.85.1
4
+ version: 1.86.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alejandro Falkowski
@@ -110,25 +110,25 @@ dependencies:
110
110
  - !ruby/object:Gem::Version
111
111
  version: '2'
112
112
  - !ruby/object:Gem::Dependency
113
- name: puma
113
+ name: rackup
114
114
  requirement: !ruby/object:Gem::Requirement
115
115
  requirements:
116
116
  - - ">="
117
117
  - !ruby/object:Gem::Version
118
- version: '6'
118
+ version: '2'
119
119
  - - "<"
120
120
  - !ruby/object:Gem::Version
121
- version: '7'
121
+ version: '3'
122
122
  type: :runtime
123
123
  prerelease: false
124
124
  version_requirements: !ruby/object:Gem::Requirement
125
125
  requirements:
126
126
  - - ">="
127
127
  - !ruby/object:Gem::Version
128
- version: '6'
128
+ version: '2'
129
129
  - - "<"
130
130
  - !ruby/object:Gem::Version
131
- version: '7'
131
+ version: '3'
132
132
  - !ruby/object:Gem::Dependency
133
133
  name: rest-client
134
134
  requirement: !ruby/object:Gem::Requirement
@@ -229,6 +229,26 @@ dependencies:
229
229
  - - "<"
230
230
  - !ruby/object:Gem::Version
231
231
  version: '5'
232
+ - !ruby/object:Gem::Dependency
233
+ name: webrick
234
+ requirement: !ruby/object:Gem::Requirement
235
+ requirements:
236
+ - - ">="
237
+ - !ruby/object:Gem::Version
238
+ version: '1'
239
+ - - "<"
240
+ - !ruby/object:Gem::Version
241
+ version: '2'
242
+ type: :runtime
243
+ prerelease: false
244
+ version_requirements: !ruby/object:Gem::Requirement
245
+ requirements:
246
+ - - ">="
247
+ - !ruby/object:Gem::Version
248
+ version: '1'
249
+ - - "<"
250
+ - !ruby/object:Gem::Version
251
+ version: '2'
232
252
  description: Allows you to keep using the power of ruby to test other systems
233
253
  email:
234
254
  - alexrfalkowski@gmail.com