nonnative 1.53.0 → 1.56.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: 64af28e950a344ef821dbe75028136dc1d79a7fa6a6abfb388b4428e44e11d98
4
- data.tar.gz: 15e4681afc473711a5b78329680636b3adb082517bd5b0adb5da11e9d8c8a552
3
+ metadata.gz: c282877137dc63a9bfbf14ab857e666e084032e8c32a21b9c9c4241d159e67b2
4
+ data.tar.gz: 3b8b0e15d4e745af0fc8bc30317b448e1edea8bd294227d265ae348479ec8c16
5
5
  SHA512:
6
- metadata.gz: e5cb7c08078df70ca47d49941e29207594fbe1b118048e925c5c433265328f4e1792688f54a483d67ffc35745d46e7f1f6f7e94bcfbe632c18ba443e1bc0eae2
7
- data.tar.gz: b1d4715e7557ef4e949a92c01acfaca7bff28ed56d3eda5bb6fa05249a945bb4790673e0aa7076ba00e4e376dccabb8b24f7524ed2536d7643a4b84813302354
6
+ metadata.gz: 229fdd9c01f0538cd458a05ae58225c95defe944f8b5662aa0fc668a354fd4ca897cb1a2d40f97ca7a4c729b4ad52283b8c6ff88398e314a818c4b5bf411afcb
7
+ data.tar.gz: 0f2f5c89745c517ae6855818844d5eb2f685f9c0aef0b674c4a242ab3604233cdf0a48498290705aaaff36e1b0b5c6c27bd0eae4cff83ef91ee79682c20fa973
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- ruby-3.0.2
1
+ ruby-3.0.3
data/CHANGELOG.md CHANGED
@@ -2,6 +2,35 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
4
4
 
5
+ ## [1.56.0](https://github.com/alexfalkowski/nonnative/compare/v1.55.0...v1.56.0) (2022-03-28)
6
+
7
+
8
+ ### Features
9
+
10
+ * **process:** make sure we honour existing env variables ([#109](https://github.com/alexfalkowski/nonnative/issues/109)) ([b601974](https://github.com/alexfalkowski/nonnative/commit/b601974b50e8df7cc16dd0bd5c32a16f462b1053))
11
+
12
+ ## [1.55.0](https://github.com/alexfalkowski/nonnative/compare/v1.54.4...v1.55.0) (2022-03-25)
13
+
14
+
15
+ ### Features
16
+
17
+ * **observability:** add liveness and readiness ([#108](https://github.com/alexfalkowski/nonnative/issues/108)) ([526f43c](https://github.com/alexfalkowski/nonnative/commit/526f43cf0a21876418233abca558d8611acd10c7))
18
+
19
+ ### [1.54.4](https://github.com/alexfalkowski/nonnative/compare/v1.54.3...v1.54.4) (2022-03-20)
20
+
21
+ ### [1.54.3](https://github.com/alexfalkowski/nonnative/compare/v1.54.2...v1.54.3) (2022-03-05)
22
+
23
+ ### [1.54.2](https://github.com/alexfalkowski/nonnative/compare/v1.54.1...v1.54.2) (2022-03-04)
24
+
25
+ ### [1.54.1](https://github.com/alexfalkowski/nonnative/compare/v1.54.0...v1.54.1) (2021-10-14)
26
+
27
+ ## [1.54.0](https://github.com/alexfalkowski/nonnative/compare/v1.53.0...v1.54.0) (2021-10-11)
28
+
29
+
30
+ ### Features
31
+
32
+ * only add less than for memory ([#99](https://github.com/alexfalkowski/nonnative/issues/99)) ([fed4929](https://github.com/alexfalkowski/nonnative/commit/fed4929a157982adcfbefac9a79f593289234418))
33
+
5
34
  ## [1.53.0](https://github.com/alexfalkowski/nonnative/compare/v1.52.0...v1.53.0) (2021-10-11)
6
35
 
7
36
 
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- nonnative (1.53.0)
4
+ nonnative (1.56.0)
5
5
  concurrent-ruby (~> 1.0, >= 1.0.5)
6
6
  cucumber (>= 7, < 8)
7
7
  get_process_mem (~> 0.2.1)
@@ -18,133 +18,130 @@ GEM
18
18
  specs:
19
19
  ast (2.4.2)
20
20
  backport (1.2.0)
21
- benchmark (0.1.1)
21
+ benchmark (0.2.0)
22
22
  benchmark-malloc (0.2.0)
23
23
  benchmark-perf (0.6.0)
24
24
  benchmark-trend (0.4.0)
25
25
  builder (3.2.4)
26
- concurrent-ruby (1.1.9)
26
+ concurrent-ruby (1.1.10)
27
27
  coveralls (0.8.23)
28
28
  json (>= 1.8, < 3)
29
29
  simplecov (~> 0.16.1)
30
30
  term-ansicolor (~> 1.3)
31
31
  thor (>= 0.19.4, < 2.0)
32
32
  tins (~> 1.6)
33
- cucumber (7.0.0)
33
+ cucumber (7.1.0)
34
34
  builder (~> 3.2, >= 3.2.4)
35
- cucumber-core (~> 10.0, >= 10.0.1)
35
+ cucumber-core (~> 10.1, >= 10.1.0)
36
36
  cucumber-create-meta (~> 6.0, >= 6.0.1)
37
- cucumber-cucumber-expressions (~> 12.1, >= 12.1.1)
38
- cucumber-gherkin (~> 20.0, >= 20.0.1)
39
- cucumber-html-formatter (~> 16.0, >= 16.0.1)
40
- cucumber-messages (~> 17.0, >= 17.0.1)
41
- cucumber-wire (~> 6.0, >= 6.0.1)
37
+ cucumber-cucumber-expressions (~> 14.0, >= 14.0.0)
38
+ cucumber-gherkin (~> 22.0, >= 22.0.0)
39
+ cucumber-html-formatter (~> 17.0, >= 17.0.0)
40
+ cucumber-messages (~> 17.1, >= 17.1.1)
41
+ cucumber-wire (~> 6.2, >= 6.2.0)
42
42
  diff-lcs (~> 1.4, >= 1.4.4)
43
43
  mime-types (~> 3.3, >= 3.3.1)
44
44
  multi_test (~> 0.1, >= 0.1.2)
45
45
  sys-uname (~> 1.2, >= 1.2.2)
46
- cucumber-core (10.0.1)
47
- cucumber-gherkin (~> 20.0, >= 20.0.1)
48
- cucumber-messages (~> 17.0, >= 17.0.1)
49
- cucumber-tag-expressions (~> 3.0, >= 3.0.1)
50
- cucumber-create-meta (6.0.1)
51
- cucumber-messages (~> 17.0, >= 17.0.1)
46
+ cucumber-core (10.1.1)
47
+ cucumber-gherkin (~> 22.0, >= 22.0.0)
48
+ cucumber-messages (~> 17.1, >= 17.1.1)
49
+ cucumber-tag-expressions (~> 4.1, >= 4.1.0)
50
+ cucumber-create-meta (6.0.4)
51
+ cucumber-messages (~> 17.1, >= 17.1.1)
52
52
  sys-uname (~> 1.2, >= 1.2.2)
53
- cucumber-cucumber-expressions (12.1.3)
54
- cucumber-gherkin (20.0.1)
55
- cucumber-messages (~> 17.0, >= 17.0.1)
56
- cucumber-html-formatter (16.0.1)
57
- cucumber-messages (~> 17.0, >= 17.0.1)
53
+ cucumber-cucumber-expressions (14.0.0)
54
+ cucumber-gherkin (22.0.0)
55
+ cucumber-messages (~> 17.1, >= 17.1.1)
56
+ cucumber-html-formatter (17.0.0)
57
+ cucumber-messages (~> 17.1, >= 17.1.0)
58
58
  cucumber-messages (17.1.1)
59
- cucumber-tag-expressions (3.0.1)
60
- cucumber-wire (6.1.1)
61
- cucumber-core (~> 10.0, >= 10.0.1)
62
- cucumber-cucumber-expressions (~> 12.1, >= 12.1.2)
63
- cucumber-messages (~> 17.0, >= 17.0.1)
64
- diff-lcs (1.4.4)
59
+ cucumber-tag-expressions (4.1.0)
60
+ cucumber-wire (6.2.1)
61
+ cucumber-core (~> 10.1, >= 10.1.0)
62
+ cucumber-cucumber-expressions (~> 14.0, >= 14.0.0)
63
+ diff-lcs (1.5.0)
65
64
  docile (1.4.0)
66
65
  domain_name (0.5.20190701)
67
66
  unf (>= 0.0.5, < 1.0.0)
68
67
  e2mmap (0.1.0)
69
- ffi (1.15.4)
68
+ ffi (1.15.5)
70
69
  get_process_mem (0.2.7)
71
70
  ffi (~> 1.0)
72
- google-protobuf (3.18.1)
73
- googleapis-common-protos-types (1.2.0)
71
+ google-protobuf (3.19.4-x86_64-darwin)
72
+ googleapis-common-protos-types (1.3.0)
74
73
  google-protobuf (~> 3.14)
75
- grpc (1.41.0)
76
- google-protobuf (~> 3.17)
74
+ grpc (1.45.0-universal-darwin)
75
+ google-protobuf (~> 3.19)
77
76
  googleapis-common-protos-types (~> 1.0)
78
- grpc-tools (1.41.0)
77
+ grpc-tools (1.45.0)
79
78
  http-accept (1.7.0)
80
79
  http-cookie (1.0.4)
81
80
  domain_name (~> 0.5)
82
81
  jaro_winkler (1.5.4)
83
- json (2.5.1)
82
+ json (2.6.1)
84
83
  kramdown (2.3.1)
85
84
  rexml
86
85
  kramdown-parser-gfm (1.1.0)
87
86
  kramdown (~> 2.0)
88
- mime-types (3.3.1)
87
+ mime-types (3.4.1)
89
88
  mime-types-data (~> 3.2015)
90
- mime-types-data (3.2021.0901)
91
- mini_portile2 (2.6.1)
89
+ mime-types-data (3.2022.0105)
92
90
  multi_test (0.1.2)
93
91
  mustermann (1.1.1)
94
92
  ruby2_keywords (~> 0.0.1)
95
93
  netrc (0.11.0)
96
94
  nio4r (2.5.8)
97
- nokogiri (1.12.5)
98
- mini_portile2 (~> 2.6.1)
95
+ nokogiri (1.13.3-x86_64-darwin)
99
96
  racc (~> 1.4)
100
- parallel (1.21.0)
101
- parser (3.0.2.0)
97
+ parallel (1.22.0)
98
+ parser (3.1.1.0)
102
99
  ast (~> 2.4.1)
103
- puma (5.5.0)
100
+ puma (5.6.2)
104
101
  nio4r (~> 2.0)
105
- racc (1.5.2)
102
+ racc (1.6.0)
106
103
  rack (2.2.3)
107
- rack-protection (2.1.0)
104
+ rack-protection (2.2.0)
108
105
  rack
109
- rainbow (3.0.0)
110
- regexp_parser (2.1.1)
106
+ rainbow (3.1.1)
107
+ regexp_parser (2.2.1)
111
108
  rest-client (2.1.0)
112
109
  http-accept (>= 1.7.0, < 2.0)
113
110
  http-cookie (>= 1.0.2, < 2.0)
114
111
  mime-types (>= 1.16, < 4.0)
115
112
  netrc (~> 0.8)
116
- reverse_markdown (2.0.0)
113
+ reverse_markdown (2.1.1)
117
114
  nokogiri
118
115
  rexml (3.2.5)
119
- rspec (3.10.0)
120
- rspec-core (~> 3.10.0)
121
- rspec-expectations (~> 3.10.0)
122
- rspec-mocks (~> 3.10.0)
116
+ rspec (3.11.0)
117
+ rspec-core (~> 3.11.0)
118
+ rspec-expectations (~> 3.11.0)
119
+ rspec-mocks (~> 3.11.0)
123
120
  rspec-benchmark (0.6.0)
124
121
  benchmark-malloc (~> 0.2)
125
122
  benchmark-perf (~> 0.6)
126
123
  benchmark-trend (~> 0.4)
127
124
  rspec (>= 3.0)
128
- rspec-core (3.10.1)
129
- rspec-support (~> 3.10.0)
130
- rspec-expectations (3.10.1)
125
+ rspec-core (3.11.0)
126
+ rspec-support (~> 3.11.0)
127
+ rspec-expectations (3.11.0)
131
128
  diff-lcs (>= 1.2.0, < 2.0)
132
- rspec-support (~> 3.10.0)
133
- rspec-mocks (3.10.2)
129
+ rspec-support (~> 3.11.0)
130
+ rspec-mocks (3.11.0)
134
131
  diff-lcs (>= 1.2.0, < 2.0)
135
- rspec-support (~> 3.10.0)
136
- rspec-support (3.10.2)
137
- rubocop (1.22.1)
132
+ rspec-support (~> 3.11.0)
133
+ rspec-support (3.11.0)
134
+ rubocop (1.26.1)
138
135
  parallel (~> 1.10)
139
- parser (>= 3.0.0.0)
136
+ parser (>= 3.1.0.0)
140
137
  rainbow (>= 2.2.2, < 4.0)
141
138
  regexp_parser (>= 1.8, < 3.0)
142
139
  rexml
143
- rubocop-ast (>= 1.12.0, < 2.0)
140
+ rubocop-ast (>= 1.16.0, < 2.0)
144
141
  ruby-progressbar (~> 1.7)
145
142
  unicode-display_width (>= 1.4.0, < 3.0)
146
- rubocop-ast (1.12.0)
147
- parser (>= 3.0.1.1)
143
+ rubocop-ast (1.16.0)
144
+ parser (>= 3.1.1.0)
148
145
  ruby-progressbar (1.11.0)
149
146
  ruby2_keywords (0.0.5)
150
147
  simplecov (0.16.1)
@@ -152,12 +149,12 @@ GEM
152
149
  json (>= 1.8, < 3)
153
150
  simplecov-html (~> 0.10.0)
154
151
  simplecov-html (0.10.2)
155
- sinatra (2.1.0)
152
+ sinatra (2.2.0)
156
153
  mustermann (~> 1.0)
157
154
  rack (~> 2.2)
158
- rack-protection (= 2.1.0)
155
+ rack-protection (= 2.2.0)
159
156
  tilt (~> 2.0)
160
- solargraph (0.44.0)
157
+ solargraph (0.44.3)
161
158
  backport (~> 1.2)
162
159
  benchmark
163
160
  bundler (>= 1.17.2)
@@ -177,25 +174,27 @@ GEM
177
174
  ffi (~> 1.1)
178
175
  term-ansicolor (1.7.1)
179
176
  tins (~> 1.0)
180
- thor (1.1.0)
177
+ thor (1.2.1)
181
178
  tilt (2.0.10)
182
- tins (1.29.1)
179
+ tins (1.31.0)
183
180
  sync
184
181
  unf (0.1.4)
185
182
  unf_ext
186
- unf_ext (0.0.8)
183
+ unf_ext (0.0.8.1)
187
184
  unicode-display_width (2.1.0)
188
- yard (0.9.26)
185
+ webrick (1.7.0)
186
+ yard (0.9.27)
187
+ webrick (~> 1.7.0)
189
188
 
190
189
  PLATFORMS
191
- ruby
190
+ x86_64-darwin-21
192
191
 
193
192
  DEPENDENCIES
194
- bundler (~> 2.2, >= 2.2.17)
193
+ bundler (~> 2.3)
195
194
  coveralls (~> 0.8.23)
196
195
  nonnative!
197
- rubocop (~> 1.22, >= 1.22.1)
198
- solargraph (~> 0.44.0)
196
+ rubocop (~> 1.26)
197
+ solargraph (~> 0.44.3)
199
198
 
200
199
  BUNDLED WITH
201
- 2.2.22
200
+ 2.3.9
data/README.md CHANGED
@@ -121,7 +121,7 @@ end
121
121
  With cucumber you can also verify how much memory is used by the process:
122
122
 
123
123
  ```cucumber
124
- Then the process 'start_1' should consume '<=' '20mb' of memory
124
+ Then the process 'start_1' should consume less than '25mb' of memory
125
125
  ```
126
126
 
127
127
  ### Servers
@@ -30,22 +30,11 @@ Then('I should reset the proxy for service {string}') do |name|
30
30
  service.proxy.reset
31
31
  end
32
32
 
33
- Then('the process {string} should consume {string} {string} of memory') do |name, op, mem|
33
+ Then('the process {string} should consume less than {string} of memory') do |name, mem|
34
34
  process = Nonnative.pool.process_by_name(name)
35
35
  _, size, type = mem.split(/(\d+)/)
36
36
  actual = process.memory.send(type)
37
37
  size = size.to_i
38
38
 
39
- case op
40
- when '='
41
- expect(actual).to eq(size)
42
- when '<'
43
- expect(actual).to be < size
44
- when '<='
45
- expect(actual).to be <= size
46
- when '>'
47
- expect(actual).to be > size
48
- when '>='
49
- expect(actual).to be >= size
50
- end
39
+ expect(actual).to be < size
51
40
  end
@@ -6,6 +6,14 @@ module Nonnative
6
6
  get('health', { content_type: :json, accept: :json })
7
7
  end
8
8
 
9
+ def liveness
10
+ get('liveness', { content_type: :json, accept: :json })
11
+ end
12
+
13
+ def readiness
14
+ get('readiness', { content_type: :json, accept: :json })
15
+ end
16
+
9
17
  def metrics
10
18
  get('metrics')
11
19
  end
@@ -55,6 +55,10 @@ module Nonnative
55
55
  environment = service.environment || {}
56
56
  environment = environment.transform_keys(&:to_s).transform_values(&:to_s)
57
57
 
58
+ environment.each do |k, v|
59
+ environment[k] = ENV[k] || environment[v]
60
+ end
61
+
58
62
  spawn(environment, service.command, %i[out err] => [service.log, 'a'])
59
63
  end
60
64
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Nonnative
4
- VERSION = '1.53.0'
4
+ VERSION = '1.56.0'
5
5
  end
data/nonnative.gemspec CHANGED
@@ -22,6 +22,7 @@ Gem::Specification.new do |spec|
22
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
23
  spec.require_paths = ['lib']
24
24
  spec.required_ruby_version = ['>= 3.0.0', '< 4.0.0']
25
+ spec.metadata['rubygems_mfa_required'] = 'true'
25
26
 
26
27
  spec.add_dependency 'concurrent-ruby', '~> 1.0', '>= 1.0.5'
27
28
  spec.add_dependency 'cucumber', ['>= 7', '< 8']
@@ -34,8 +35,8 @@ Gem::Specification.new do |spec|
34
35
  spec.add_dependency 'rspec-expectations', '~> 3.9', '>= 3.9.2'
35
36
  spec.add_dependency 'sinatra', '~> 2.0', '>= 2.0.8.1'
36
37
 
37
- spec.add_development_dependency 'bundler', '~> 2.2', '>= 2.2.17'
38
+ spec.add_development_dependency 'bundler', '~> 2.3'
38
39
  spec.add_development_dependency 'coveralls', '~> 0.8.23'
39
- spec.add_development_dependency 'rubocop', '~> 1.22', '>= 1.22.1'
40
- spec.add_development_dependency 'solargraph', '~> 0.44.0'
40
+ spec.add_development_dependency 'rubocop', '~> 1.26'
41
+ spec.add_development_dependency 'solargraph', '~> 0.44.3'
41
42
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nonnative
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.53.0
4
+ version: 1.56.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alejandro Falkowski
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-10-11 00:00:00.000000000 Z
11
+ date: 2022-03-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: concurrent-ruby
@@ -192,20 +192,14 @@ dependencies:
192
192
  requirements:
193
193
  - - "~>"
194
194
  - !ruby/object:Gem::Version
195
- version: '2.2'
196
- - - ">="
197
- - !ruby/object:Gem::Version
198
- version: 2.2.17
195
+ version: '2.3'
199
196
  type: :development
200
197
  prerelease: false
201
198
  version_requirements: !ruby/object:Gem::Requirement
202
199
  requirements:
203
200
  - - "~>"
204
201
  - !ruby/object:Gem::Version
205
- version: '2.2'
206
- - - ">="
207
- - !ruby/object:Gem::Version
208
- version: 2.2.17
202
+ version: '2.3'
209
203
  - !ruby/object:Gem::Dependency
210
204
  name: coveralls
211
205
  requirement: !ruby/object:Gem::Requirement
@@ -226,34 +220,28 @@ dependencies:
226
220
  requirements:
227
221
  - - "~>"
228
222
  - !ruby/object:Gem::Version
229
- version: '1.22'
230
- - - ">="
231
- - !ruby/object:Gem::Version
232
- version: 1.22.1
223
+ version: '1.26'
233
224
  type: :development
234
225
  prerelease: false
235
226
  version_requirements: !ruby/object:Gem::Requirement
236
227
  requirements:
237
228
  - - "~>"
238
229
  - !ruby/object:Gem::Version
239
- version: '1.22'
240
- - - ">="
241
- - !ruby/object:Gem::Version
242
- version: 1.22.1
230
+ version: '1.26'
243
231
  - !ruby/object:Gem::Dependency
244
232
  name: solargraph
245
233
  requirement: !ruby/object:Gem::Requirement
246
234
  requirements:
247
235
  - - "~>"
248
236
  - !ruby/object:Gem::Version
249
- version: 0.44.0
237
+ version: 0.44.3
250
238
  type: :development
251
239
  prerelease: false
252
240
  version_requirements: !ruby/object:Gem::Requirement
253
241
  requirements:
254
242
  - - "~>"
255
243
  - !ruby/object:Gem::Version
256
- version: 0.44.0
244
+ version: 0.44.3
257
245
  description: Allows you to keep using the power of ruby to test other systems
258
246
  email:
259
247
  - alexrfalkowski@gmail.com
@@ -318,7 +306,8 @@ files:
318
306
  homepage: https://github.com/alexfalkowski/nonnative
319
307
  licenses:
320
308
  - Unlicense
321
- metadata: {}
309
+ metadata:
310
+ rubygems_mfa_required: 'true'
322
311
  post_install_message:
323
312
  rdoc_options: []
324
313
  require_paths:
@@ -337,7 +326,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
337
326
  - !ruby/object:Gem::Version
338
327
  version: '0'
339
328
  requirements: []
340
- rubygems_version: 3.2.22
329
+ rubygems_version: 3.2.32
341
330
  signing_key:
342
331
  specification_version: 4
343
332
  summary: Allows you to keep using the power of ruby to test other systems