nonnative 1.27.0 → 1.34.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: '0384f1153315ed00bbf2c15405150a102b5fa7c7fac9548eac6ee2c03e6e821e'
4
- data.tar.gz: d09d8785d1f1a0a81806f3b6740e1b835125884bc1e7b2f192ae8bb8586d8acd
3
+ metadata.gz: 796ba4a8f59903f33fd52ecc0657c9dd741ecb79002d9d0397a8b6b578de3323
4
+ data.tar.gz: f0a7a0ae04ad4afb063e630ba6a79573105cd2ac4b2bf73e9126e461bf1a71d6
5
5
  SHA512:
6
- metadata.gz: b6cf1fad64114a39e7c00090a1dedd00d5c7c4f80344668ef5234e68836c6055a9b5aa839dd6639882effc16d03e142a5ba0db6f18154d05617906ae4492f877
7
- data.tar.gz: 8050865795030f35bb222314905bb4ae981efce1ee21bcad13a9ead4a6d992163439e8b3900aea566d1244cc2438e3a42f711a909a41b55b849e1379af423cb1
6
+ metadata.gz: d56caea50dbc0451c2708626b48b444781f2b79ff290b1d64b42a6401d384179c4ad62641706d213615feda86e780d410bd069914c437343b9c39803db2f2d39
7
+ data.tar.gz: 4f0ad200212c58805e3e4d74900773520ad99156772344578ec3daa80aeb690808f682d240433dfc521502235e3984c84d893a875444f0a5ea6eefb5dcf710f2
@@ -5,11 +5,7 @@ orbs:
5
5
  jobs:
6
6
  build:
7
7
  docker:
8
- - image: circleci/ruby:2.7
9
- environment:
10
- BUNDLE_JOBS: "3"
11
- BUNDLE_PATH: vendor/bundle
12
- BUNDLE_RETRY: "3"
8
+ - image: alexfalkowski/ruby:2.7
13
9
  steps:
14
10
  - checkout
15
11
  - restore_cache:
@@ -30,9 +26,21 @@ jobs:
30
26
  - store_artifacts:
31
27
  path: features/logs
32
28
  - sonarcloud/scan
29
+ release:
30
+ docker:
31
+ - image: alexfalkowski/release:1.0
32
+ steps:
33
+ - checkout
34
+ - run: release.sh
33
35
 
34
36
  workflows:
35
37
  nonnative:
36
38
  jobs:
37
39
  - build:
38
40
  context: SonarCloud
41
+ - release:
42
+ requires:
43
+ - build
44
+ filters:
45
+ branches:
46
+ only: master
@@ -1 +1 @@
1
- report: --format junit --out reports --format html --out reports/index.html --format pretty
1
+ report: --format junit --out reports --format html --out reports/index.html --format pretty --publish-quiet
@@ -1,6 +1,7 @@
1
1
  AllCops:
2
- TargetRubyVersion: 2.6
2
+ TargetRubyVersion: 2.7
3
3
  DisplayCopNames: true
4
+ NewCops: enable
4
5
 
5
6
  Layout/LineLength:
6
7
  Max: 120
@@ -17,71 +18,5 @@ Metrics/AbcSize:
17
18
  Style/Documentation:
18
19
  Enabled: false
19
20
 
20
- Lint/RaiseException:
21
- Enabled: true
22
-
23
- Style/HashEachMethods:
24
- Enabled: true
25
-
26
- Style/HashTransformKeys:
27
- Enabled: true
28
-
29
- Style/HashTransformValues:
30
- Enabled: true
31
-
32
- Lint/StructNewOverride:
33
- Enabled: true
34
-
35
- Layout/SpaceAroundMethodCallOperator:
36
- Enabled: true
37
-
38
- Style/ExponentialNotation:
39
- Enabled: true
40
-
41
- Layout/EmptyLinesAroundAttributeAccessor:
42
- Enabled: true
43
-
44
- Style/SlicingWithRange:
45
- Enabled: true
46
-
47
- Lint/DeprecatedOpenSSLConstant:
48
- Enabled: true
49
-
50
- Lint/MixedRegexpCaptureTypes:
51
- Enabled: true
52
-
53
- Style/RedundantRegexpCharacterClass:
54
- Enabled: true
55
-
56
- Style/RedundantRegexpEscape:
57
- Enabled: true
58
-
59
- Style/RedundantFetchBlock:
60
- Enabled: true
61
-
62
- Style/AccessorGrouping:
63
- Enabled: true
64
-
65
- Style/BisectedAttrAccessor:
66
- Enabled: true
67
-
68
- Style/RedundantAssignment:
69
- Enabled: true
70
-
71
- Lint/DuplicateElsifCondition:
72
- Enabled: true
73
-
74
- Style/ArrayCoercion:
75
- Enabled: true
76
-
77
- Style/CaseLikeIf:
78
- Enabled: true
79
-
80
- Style/HashAsLastArrayItem:
81
- Enabled: true
82
-
83
- Style/HashLikeCase:
84
- Enabled: true
85
-
86
- Style/RedundantFileExtensionInRequire:
87
- Enabled: true
21
+ Lint/HashCompareByIdentity:
22
+ Enabled: false
@@ -0,0 +1,117 @@
1
+ # Changelog
2
+
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
+
5
+ ## [1.33.0](https://github.com/alexfalkowski/nonnative/compare/v1.32.0...v1.33.0) (2020-10-30)
6
+
7
+
8
+ ### Features
9
+
10
+ * bump to version 1.33.0 ([538ebf5](https://github.com/alexfalkowski/nonnative/commit/538ebf54c9d49ac3227f9c0a14ce9074d961c42d))
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+ * make sure we don't run ci again ([bf40e54](https://github.com/alexfalkowski/nonnative/commit/bf40e5471d7701040e64c035e652df534db7e783))
16
+
17
+ ## [1.32.0](https://github.com/alexfalkowski/nonnative/compare/v1.31.0...v1.32.0) (2020-10-30)
18
+
19
+
20
+ ### Features
21
+
22
+ * update deps ([a18e739](https://github.com/alexfalkowski/nonnative/commit/a18e739285cab1e75b2c4bb2da573e4b437d05b5))
23
+
24
+ ## 1.31.0 (2020-10-30)
25
+
26
+
27
+ ### Features
28
+
29
+ * abort on exception for threads ([16c236a](https://github.com/alexfalkowski/nonnative/commit/16c236afbd4e434d19d26166bf515def56907369))
30
+ * add ability to create chaos ([5c74b1f](https://github.com/alexfalkowski/nonnative/commit/5c74b1fc732017a658bd5e86ba8d1d849028bfa7))
31
+ * add ability to override strategy ([668f61b](https://github.com/alexfalkowski/nonnative/commit/668f61b3d802958bd2d948ba47f54df7ad4725f4))
32
+ * add chaos proxy ([84f6be8](https://github.com/alexfalkowski/nonnative/commit/84f6be83e5d00a582cf6458e34a1f1c169fe81b8))
33
+ * add concurrent-ruby ([0ba97ae](https://github.com/alexfalkowski/nonnative/commit/0ba97ae9c5d471564d9098e50864565208e941b3))
34
+ * add delay to proxy ([9004d56](https://github.com/alexfalkowski/nonnative/commit/9004d5643d38e530124077f777b7fec494aa5a10))
35
+ * add logging to servers ([a6c16a7](https://github.com/alexfalkowski/nonnative/commit/a6c16a7c43ec52b8a6a4766e92fdfe0179bc9b4b))
36
+ * add name property ([7804c22](https://github.com/alexfalkowski/nonnative/commit/7804c22e1e46bc7031628fd99fbb0e1382b9b438))
37
+ * add no proxy ([b819f6c](https://github.com/alexfalkowski/nonnative/commit/b819f6cf10ec86c52e7429e6948369905e079d38))
38
+ * add proxy logs ([66e0acd](https://github.com/alexfalkowski/nonnative/commit/66e0acd4aa01ae9b7335f6df4ff6d4f3c89239ac))
39
+ * add random-port (0.5.1) ([0cb80f0](https://github.com/alexfalkowski/nonnative/commit/0cb80f0a05189fa9aab4ce5ea01d83f02dfe78f7))
40
+ * add running go command ([4c45a19](https://github.com/alexfalkowski/nonnative/commit/4c45a19c9acfa157c67e2bdd1fd470558fa2f80f))
41
+ * add timeout ([dbe4d9b](https://github.com/alexfalkowski/nonnative/commit/dbe4d9b7e7f4d5ecdaa89a60a5b135ccefecc43d))
42
+ * grpc-tools (1.32.0) ([e2ea2fe](https://github.com/alexfalkowski/nonnative/commit/e2ea2fea8cda36cc97e11d75d7b29a12302ce5b5))
43
+ * invalid data ([f83d35f](https://github.com/alexfalkowski/nonnative/commit/f83d35ffc7374d182d8c3e4b513b460d38121c83))
44
+ * loosen grc dep ([11e8de4](https://github.com/alexfalkowski/nonnative/commit/11e8de4228417483c26213f40caee351dbbdf861))
45
+ * loosen grc dep ([498a6d5](https://github.com/alexfalkowski/nonnative/commit/498a6d56c9e157f15ebe77d57cd0477abdc8ec34))
46
+ * move to use predefined port ([439971f](https://github.com/alexfalkowski/nonnative/commit/439971fa0388380701e80bce18d7bf61f07f9bc7))
47
+ * pass options to socket pair ([7ebb938](https://github.com/alexfalkowski/nonnative/commit/7ebb9389c4cab8639f19bf234d65359fbfdef342))
48
+ * process start and stop in order ([589abe9](https://github.com/alexfalkowski/nonnative/commit/589abe9bee0743dc38a57aef5f73871eb277ec28))
49
+ * remove timeout ([d3dc376](https://github.com/alexfalkowski/nonnative/commit/d3dc376522aefd4856e15bba84309a5e77641db6))
50
+ * rename proxy ([5b87699](https://github.com/alexfalkowski/nonnative/commit/5b87699c622e9db7fed865ea75d8ee294c996b5e))
51
+ * socket pair ([d50112e](https://github.com/alexfalkowski/nonnative/commit/d50112e72f4a3f1af93ba2bc4274282c06690048))
52
+ * store connections in concurrent hash ([6731d95](https://github.com/alexfalkowski/nonnative/commit/6731d9523c933a6598ce07b3d65e9678d188c0ad))
53
+ * update cucumber (4.1.0) ([c38ea01](https://github.com/alexfalkowski/nonnative/commit/c38ea015dad051e494a1aa90b7452193735cad79))
54
+ * update deps ([7c9b11f](https://github.com/alexfalkowski/nonnative/commit/7c9b11fb35c9655f2d8b161498e134ab903c82c9))
55
+ * update grpc (1.30.1) ([98b7262](https://github.com/alexfalkowski/nonnative/commit/98b7262d76d30a0097db138e6236a43c296ce207))
56
+ * update puma ([36ff809](https://github.com/alexfalkowski/nonnative/commit/36ff809264c712240f50db24971f6045faaceac3))
57
+ * update to ruby-2.7.1 ([192ed03](https://github.com/alexfalkowski/nonnative/commit/192ed03c9d929e7fdadc80ab7b48b4a8081daed1))
58
+ * use puma ([2bfbb0f](https://github.com/alexfalkowski/nonnative/commit/2bfbb0f15d7e20647e72332aa3830c9144a1148d))
59
+ * use request ([c757b8b](https://github.com/alexfalkowski/nonnative/commit/c757b8b1d4f513451b08dd0408256244c7a29f7f))
60
+ * **command:** wait for pid ([5bf9a34](https://github.com/alexfalkowski/nonnative/commit/5bf9a34ab96b10365e894dd66b260c2aa902f19b))
61
+ * **grpc:** wait for server ([ba90600](https://github.com/alexfalkowski/nonnative/commit/ba906008ed7a8d72f8ee8f5f37eddf541be97a8a))
62
+ * **http:** add put and delete ([54b7b9a](https://github.com/alexfalkowski/nonnative/commit/54b7b9a906e0e80556c058ec85386cf4997d6a1b))
63
+ * **http:** wait for server to start ([10e0f37](https://github.com/alexfalkowski/nonnative/commit/10e0f37e0da9e0896365c771a8886dc0eb94906b))
64
+ * **process:** allow to pass different signal ([6b80e69](https://github.com/alexfalkowski/nonnative/commit/6b80e690f97e3f16a315a271dca5476647ce4177))
65
+ * add grpc (~> 1.28) ([6cabe9e](https://github.com/alexfalkowski/nonnative/commit/6cabe9e6e6107405459be0cdf93afc9fae742d6e))
66
+ * add overridable waiting ([be78cf4](https://github.com/alexfalkowski/nonnative/commit/be78cf47f2cb338cd98dff5ccfd5af3b41321428))
67
+ * **grpc:** use run instead of run_till_terminated ([f0609af](https://github.com/alexfalkowski/nonnative/commit/f0609afe3878a8d4e5eaef77457b7a868bc234e8))
68
+ * add ability to use configuration file ([f3d9c92](https://github.com/alexfalkowski/nonnative/commit/f3d9c923385ad338d42ec924ea60c16dcc1a6ed7))
69
+ * add puma (4.3.3) ([1b3b01c](https://github.com/alexfalkowski/nonnative/commit/1b3b01c17cb3b634e17a68e8e88404ff66fa6be5))
70
+ * add sinatra (2.0.8.1) ([2f27876](https://github.com/alexfalkowski/nonnative/commit/2f2787648deb641dbd78875433f0928e3b754cdd))
71
+ * add starting servers ([47955d3](https://github.com/alexfalkowski/nonnative/commit/47955d327d251ae0df99c6f99bbe4f5e8fa1acb9))
72
+ * add the ability to see the type that has issues ([d119ccc](https://github.com/alexfalkowski/nonnative/commit/d119ccc0f9575740b4a14c5bf5f1912c3db11692))
73
+ * enable rubocop cops ([00266e5](https://github.com/alexfalkowski/nonnative/commit/00266e52cb20d058ebccc5f09f4787d1f6899400))
74
+ * lock cucumber ([a4817a8](https://github.com/alexfalkowski/nonnative/commit/a4817a8d57edb23ebb93610c86f5539ef79af243))
75
+ * lock rspec-benchmark ([03d9b62](https://github.com/alexfalkowski/nonnative/commit/03d9b627314d859cef9b002e1d903f22bad9efad))
76
+ * lock semantic_logger ([e340785](https://github.com/alexfalkowski/nonnative/commit/e340785fa1e97c991196e1ee1168dac3e4973cb3))
77
+ * make sure we don't do things serially ([d265aac](https://github.com/alexfalkowski/nonnative/commit/d265aaca9f798ab004ee125a55e0406f9b2f7739))
78
+ * remove logger ([b2ae52b](https://github.com/alexfalkowski/nonnative/commit/b2ae52b20ce0cf65f431ceaa315b353ed41fcc80))
79
+ * remove logs ([787e490](https://github.com/alexfalkowski/nonnative/commit/787e490b71884c8dcd0920778b88fd94d520dfab))
80
+ * remove structure ([79604f6](https://github.com/alexfalkowski/nonnative/commit/79604f631990a01f48da066014b52742e0bc71d0))
81
+ * remove writting to STDOUT ([be1f668](https://github.com/alexfalkowski/nonnative/commit/be1f668278a74f5c3a33538dbeda77ac9b93d316))
82
+ * rename to configuration process ([aac5b4c](https://github.com/alexfalkowski/nonnative/commit/aac5b4c435ea1fb3942a0c752f573ff2ca5026b6))
83
+ * rename to process pool ([9e4391e](https://github.com/alexfalkowski/nonnative/commit/9e4391e94fc32d69cdf651eff8995bac91f965fd))
84
+ * start multiple processes ([5a9c8ba](https://github.com/alexfalkowski/nonnative/commit/5a9c8baf22537dc246fc73eab3d1a645bc51f4be))
85
+ * start nonnative with a long start up time server will error ([6770f66](https://github.com/alexfalkowski/nonnative/commit/6770f6657ccb724c311a43e77b03595943504fef))
86
+ * stop nonnative with a long stopping time server will error ([3040227](https://github.com/alexfalkowski/nonnative/commit/3040227113c50aa9a7e84bf44bd03a3c0a6142be))
87
+ * successfully starting of grpc servers programatically ([cc92276](https://github.com/alexfalkowski/nonnative/commit/cc9227620ecb8133277871967eb835f67943ccad))
88
+ * successfully starting of HTTP servers programatically ([93373f1](https://github.com/alexfalkowski/nonnative/commit/93373f1b85d50328b54ee49236f55acd2c5c0180))
89
+ * successfully starting of HTTP servers programatically and getting health ([be9ae06](https://github.com/alexfalkowski/nonnative/commit/be9ae06952e83af666f654a9782b596673709c87))
90
+ * successfully starting of HTTP servers programatically and getting metrics ([4536904](https://github.com/alexfalkowski/nonnative/commit/45369041a8d95e240b5533d2132b60fa4d31278f))
91
+ * successfully starting of HTTP servers programatically with not found message ([111d81d](https://github.com/alexfalkowski/nonnative/commit/111d81da298a7203c08fa5725e2310736b613fb9))
92
+ * update rspec-expectations (3.9.2) ([1f656a9](https://github.com/alexfalkowski/nonnative/commit/1f656a975e2fd6b1af830ca38f24d978a105d0e0))
93
+ * update rubocop (0.82.0) ([48e462d](https://github.com/alexfalkowski/nonnative/commit/48e462d980f858102a45367fc420b7c66596a22f))
94
+ * update solargraph (0.39.7) ([8caff98](https://github.com/alexfalkowski/nonnative/commit/8caff98e5fea79c7123cc49f573ef2122ef14b33))
95
+ * use 0.0.0.0 ([1e77298](https://github.com/alexfalkowski/nonnative/commit/1e77298620666578472220c0e02c5121a4d9838f))
96
+ * use better naming. ([228c9ed](https://github.com/alexfalkowski/nonnative/commit/228c9ed9607c30834f0f5dfa46114a2ed84b67a3))
97
+ * use ruby 2.6.6 ([fdb61da](https://github.com/alexfalkowski/nonnative/commit/fdb61da719e6cf3d35db7d8af6acea19481a8ff9))
98
+
99
+
100
+ ### Bug Fixes
101
+
102
+ * add comments ([cb93b23](https://github.com/alexfalkowski/nonnative/commit/cb93b23a3c8ae463b656fb4a43e2b7dab83db2f5))
103
+ * add small sleeps as prcesses and severs take time to start. ([1e3d363](https://github.com/alexfalkowski/nonnative/commit/1e3d36302c0fc0c58f7b2239db39876acf4ec2fc))
104
+ * ignore exceptions ([4076cf2](https://github.com/alexfalkowski/nonnative/commit/4076cf2019924b89f2766edbafed603d08c63cc6))
105
+ * only raise an error after we have finished start or stop ([b7b0b17](https://github.com/alexfalkowski/nonnative/commit/b7b0b17cc4cac53abcb052a76afc29312b0b971b))
106
+ * pass service like in command ([43a961b](https://github.com/alexfalkowski/nonnative/commit/43a961b7bfa5e954371d14553009969f89af87a4))
107
+ * register at exit first ([7dad865](https://github.com/alexfalkowski/nonnative/commit/7dad865a29117b830c7717d167e14f88c9d6f2af))
108
+ * remove rescue ([230ae39](https://github.com/alexfalkowski/nonnative/commit/230ae395406552bbe7610a9c37322573c2d6f92b))
109
+ * remove thwait ([62cf089](https://github.com/alexfalkowski/nonnative/commit/62cf089e3b10bae8290d8cfbb2b8c4e4c50aef1f))
110
+ * remove unused vriables ([0d38d8a](https://github.com/alexfalkowski/nonnative/commit/0d38d8a12d108370682e2f7cad5f5a4f62e5835f))
111
+ * start servers first ([9a483f0](https://github.com/alexfalkowski/nonnative/commit/9a483f02709b4b954205dc66bf7ea7fa20110a37))
112
+ * stop servers first ([a736496](https://github.com/alexfalkowski/nonnative/commit/a73649666010820697539c621fb9a7e8677008a7))
113
+ * sync state ([75ab8e8](https://github.com/alexfalkowski/nonnative/commit/75ab8e8a9ea421aac8e970a3b7b1c2c1c556b425))
114
+ * **chaos:** ignore ECONNRESET ([c5ff8df](https://github.com/alexfalkowski/nonnative/commit/c5ff8dfcb3af8dbe8fb9fb5a6f04dd2308eadbaa))
115
+ * **grpc:** make servers consistent ([ece8404](https://github.com/alexfalkowski/nonnative/commit/ece8404d0a56ded351df317f3dacaac054f67f0a))
116
+ * **grpc:** pass timout to wait ([0a18218](https://github.com/alexfalkowski/nonnative/commit/0a18218ff675a4bf76d39ac2c547a87955013e42))
117
+ * **http:** allow to run multiple servers ([6e640de](https://github.com/alexfalkowski/nonnative/commit/6e640ded9312d89de125f0b2bb9a34c982163a41))
@@ -1,11 +1,11 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- nonnative (1.27.0)
4
+ nonnative (1.34.0)
5
5
  concurrent-ruby (~> 1.0, >= 1.0.5)
6
- cucumber (>= 4, < 5)
6
+ cucumber (>= 5, < 6)
7
7
  grpc (>= 1, < 2)
8
- puma (~> 4.3, >= 4.3.3)
8
+ puma (~> 5.0)
9
9
  rest-client (~> 2.1)
10
10
  rspec-benchmark (~> 0.6.0)
11
11
  rspec-expectations (~> 3.9, >= 3.9.2)
@@ -14,138 +14,128 @@ PATH
14
14
  GEM
15
15
  remote: https://rubygems.org/
16
16
  specs:
17
- activesupport (6.0.3.2)
17
+ activesupport (6.0.3.4)
18
18
  concurrent-ruby (~> 1.0, >= 1.0.2)
19
19
  i18n (>= 0.7, < 2)
20
20
  minitest (~> 5.1)
21
21
  tzinfo (~> 1.1)
22
22
  zeitwerk (~> 2.2, >= 2.2.2)
23
23
  ast (2.4.1)
24
- backport (1.1.2)
25
- benchmark (0.1.0)
26
24
  benchmark-malloc (0.2.0)
27
25
  benchmark-perf (0.6.0)
28
26
  benchmark-trend (0.4.0)
29
27
  builder (3.2.4)
30
- concurrent-ruby (1.1.6)
31
- cucumber (4.1.0)
32
- builder (~> 3.2, >= 3.2.3)
33
- cucumber-core (~> 7.1, >= 7.1.0)
34
- cucumber-create-meta (~> 1.0.0, >= 1.0.0)
35
- cucumber-cucumber-expressions (~> 10.1, >= 10.1.0)
36
- cucumber-gherkin (~> 14.0, >= 14.0.1)
37
- cucumber-html-formatter (~> 7.0, >= 7.0.0)
38
- cucumber-messages (~> 12.2, >= 12.2.0)
39
- cucumber-wire (~> 3.1, >= 3.1.0)
40
- diff-lcs (~> 1.3, >= 1.3, < 1.4)
28
+ concurrent-ruby (1.1.7)
29
+ cucumber (5.2.0)
30
+ builder (~> 3.2, >= 3.2.4)
31
+ cucumber-core (~> 8.0, >= 8.0.1)
32
+ cucumber-create-meta (~> 2.0, >= 2.0.2)
33
+ cucumber-cucumber-expressions (~> 10.3, >= 10.3.0)
34
+ cucumber-gherkin (~> 15.0, >= 15.0.2)
35
+ cucumber-html-formatter (~> 9.0, >= 9.0.0)
36
+ cucumber-messages (~> 13.1, >= 13.1.0)
37
+ cucumber-wire (~> 4.0, >= 4.0.1)
38
+ diff-lcs (~> 1.4, >= 1.4.4)
41
39
  multi_test (~> 0.1, >= 0.1.2)
42
- sys-uname (~> 1.0, >= 1.0.2)
43
- cucumber-core (7.1.0)
44
- cucumber-gherkin (~> 14.0, >= 14.0.1)
45
- cucumber-messages (~> 12.2, >= 12.2.0)
40
+ sys-uname (~> 1.2, >= 1.2.1)
41
+ cucumber-core (8.0.1)
42
+ cucumber-gherkin (~> 15.0, >= 15.0.2)
43
+ cucumber-messages (~> 13.0, >= 13.0.1)
46
44
  cucumber-tag-expressions (~> 2.0, >= 2.0.4)
47
- cucumber-create-meta (1.0.0)
48
- cucumber-messages (~> 12.2, >= 12.2.0)
45
+ cucumber-create-meta (2.0.4)
46
+ cucumber-messages (~> 13.1, >= 13.1.0)
49
47
  sys-uname (~> 1.2, >= 1.2.1)
50
- cucumber-cucumber-expressions (10.2.1)
51
- cucumber-gherkin (14.0.1)
52
- cucumber-messages (~> 12.2, >= 12.2.0)
53
- cucumber-html-formatter (7.0.0)
54
- cucumber-messages (~> 12.2, >= 12.2.0)
55
- cucumber-messages (12.2.0)
48
+ cucumber-cucumber-expressions (10.3.0)
49
+ cucumber-gherkin (15.0.2)
50
+ cucumber-messages (~> 13.0, >= 13.0.1)
51
+ cucumber-html-formatter (9.0.0)
52
+ cucumber-messages (~> 13.0, >= 13.0.1)
53
+ cucumber-messages (13.1.0)
56
54
  protobuf-cucumber (~> 3.10, >= 3.10.8)
57
55
  cucumber-tag-expressions (2.0.4)
58
- cucumber-wire (3.1.0)
59
- cucumber-core (~> 7.1, >= 7.1.0)
60
- cucumber-cucumber-expressions (~> 10.1, >= 10.1.0)
61
- cucumber-messages (~> 12.2, >= 12.2.0)
62
- diff-lcs (1.3)
56
+ cucumber-wire (4.0.1)
57
+ cucumber-core (~> 8.0, >= 8.0.1)
58
+ cucumber-cucumber-expressions (~> 10.3, >= 10.3.0)
59
+ cucumber-messages (~> 13.0, >= 13.0.1)
60
+ diff-lcs (1.4.4)
63
61
  docile (1.3.2)
64
62
  domain_name (0.5.20190701)
65
63
  unf (>= 0.0.5, < 1.0.0)
66
- e2mmap (0.1.0)
67
64
  ffi (1.13.1)
68
- google-protobuf (3.12.2)
65
+ google-protobuf (3.13.0)
69
66
  googleapis-common-protos-types (1.0.5)
70
67
  google-protobuf (~> 3.11)
71
- grpc (1.30.1)
72
- google-protobuf (~> 3.12)
68
+ grpc (1.32.0)
69
+ google-protobuf (~> 3.13)
73
70
  googleapis-common-protos-types (~> 1.0)
74
- grpc-tools (1.30.1)
71
+ grpc-tools (1.32.0)
75
72
  http-accept (1.7.0)
76
73
  http-cookie (1.0.3)
77
74
  domain_name (~> 0.5)
78
- i18n (1.8.4)
75
+ i18n (1.8.5)
79
76
  concurrent-ruby (~> 1.0)
80
- jaro_winkler (1.5.4)
81
- json (2.3.0)
82
- maruku (0.7.3)
77
+ json (2.3.1)
83
78
  middleware (0.1.0)
84
79
  mime-types (3.3.1)
85
80
  mime-types-data (~> 3.2015)
86
81
  mime-types-data (3.2020.0512)
87
- mini_portile2 (2.4.0)
88
- minitest (5.14.1)
82
+ minitest (5.14.2)
89
83
  multi_test (0.1.2)
90
84
  mustermann (1.1.1)
91
85
  ruby2_keywords (~> 0.0.1)
92
86
  netrc (0.11.0)
93
- nio4r (2.5.2)
94
- nokogiri (1.10.10)
95
- mini_portile2 (~> 2.4.0)
87
+ nio4r (2.5.4)
96
88
  parallel (1.19.2)
97
- parser (2.7.1.4)
89
+ parser (2.7.2.0)
98
90
  ast (~> 2.4.1)
99
91
  protobuf-cucumber (3.10.8)
100
92
  activesupport (>= 3.2)
101
93
  middleware
102
94
  thor
103
95
  thread_safe
104
- puma (4.3.5)
96
+ puma (5.0.4)
105
97
  nio4r (~> 2.0)
106
98
  rack (2.2.3)
107
- rack-protection (2.0.8.1)
99
+ rack-protection (2.1.0)
108
100
  rack
109
101
  rainbow (3.0.0)
110
102
  rake (13.0.1)
111
- regexp_parser (1.7.1)
103
+ regexp_parser (1.8.2)
112
104
  rest-client (2.1.0)
113
105
  http-accept (>= 1.7.0, < 2.0)
114
106
  http-cookie (>= 1.0.2, < 2.0)
115
107
  mime-types (>= 1.16, < 4.0)
116
108
  netrc (~> 0.8)
117
- reverse_markdown (2.0.0)
118
- nokogiri
119
109
  rexml (3.2.4)
120
- rspec (3.9.0)
121
- rspec-core (~> 3.9.0)
122
- rspec-expectations (~> 3.9.0)
123
- rspec-mocks (~> 3.9.0)
110
+ rspec (3.10.0)
111
+ rspec-core (~> 3.10.0)
112
+ rspec-expectations (~> 3.10.0)
113
+ rspec-mocks (~> 3.10.0)
124
114
  rspec-benchmark (0.6.0)
125
115
  benchmark-malloc (~> 0.2)
126
116
  benchmark-perf (~> 0.6)
127
117
  benchmark-trend (~> 0.4)
128
118
  rspec (>= 3.0)
129
- rspec-core (3.9.2)
130
- rspec-support (~> 3.9.3)
131
- rspec-expectations (3.9.2)
119
+ rspec-core (3.10.0)
120
+ rspec-support (~> 3.10.0)
121
+ rspec-expectations (3.10.0)
132
122
  diff-lcs (>= 1.2.0, < 2.0)
133
- rspec-support (~> 3.9.0)
134
- rspec-mocks (3.9.1)
123
+ rspec-support (~> 3.10.0)
124
+ rspec-mocks (3.10.0)
135
125
  diff-lcs (>= 1.2.0, < 2.0)
136
- rspec-support (~> 3.9.0)
137
- rspec-support (3.9.3)
138
- rubocop (0.88.0)
126
+ rspec-support (~> 3.10.0)
127
+ rspec-support (3.10.0)
128
+ rubocop (1.0.0)
139
129
  parallel (~> 1.10)
140
- parser (>= 2.7.1.1)
130
+ parser (>= 2.7.1.5)
141
131
  rainbow (>= 2.2.2, < 4.0)
142
- regexp_parser (>= 1.7)
132
+ regexp_parser (>= 1.8)
143
133
  rexml
144
- rubocop-ast (>= 0.1.0, < 1.0)
134
+ rubocop-ast (>= 0.6.0)
145
135
  ruby-progressbar (~> 1.7)
146
136
  unicode-display_width (>= 1.4.0, < 2.0)
147
- rubocop-ast (0.2.0)
148
- parser (>= 2.7.0.1)
137
+ rubocop-ast (1.0.0)
138
+ parser (>= 2.7.1.5)
149
139
  ruby-progressbar (1.10.1)
150
140
  ruby2_keywords (0.0.2)
151
141
  simplecov (0.17.1)
@@ -153,27 +143,13 @@ GEM
153
143
  json (>= 1.8, < 3)
154
144
  simplecov-html (~> 0.10.0)
155
145
  simplecov-html (0.10.2)
156
- sinatra (2.0.8.1)
146
+ sinatra (2.1.0)
157
147
  mustermann (~> 1.0)
158
- rack (~> 2.0)
159
- rack-protection (= 2.0.8.1)
160
- tilt (~> 2.0)
161
- solargraph (0.39.12)
162
- backport (~> 1.1)
163
- benchmark
164
- bundler (>= 1.17.2)
165
- e2mmap
166
- jaro_winkler (~> 1.5)
167
- maruku (~> 0.7, >= 0.7.3)
168
- nokogiri (~> 1.9, >= 1.9.1)
169
- parser (~> 2.3)
170
- reverse_markdown (>= 1.0.5, < 3)
171
- rubocop (~> 0.52)
172
- thor (~> 1.0)
148
+ rack (~> 2.2)
149
+ rack-protection (= 2.1.0)
173
150
  tilt (~> 2.0)
174
- yard (~> 0.9, >= 0.9.24)
175
- sys-uname (1.2.1)
176
- ffi (>= 1.0.0)
151
+ sys-uname (1.2.2)
152
+ ffi (~> 1.1)
177
153
  thor (1.0.1)
178
154
  thread_safe (0.3.6)
179
155
  tilt (2.0.10)
@@ -183,8 +159,7 @@ GEM
183
159
  unf_ext
184
160
  unf_ext (0.0.7.7)
185
161
  unicode-display_width (1.7.0)
186
- yard (0.9.25)
187
- zeitwerk (2.4.0)
162
+ zeitwerk (2.4.1)
188
163
 
189
164
  PLATFORMS
190
165
  ruby
@@ -194,9 +169,8 @@ DEPENDENCIES
194
169
  grpc-tools (>= 1, < 2)
195
170
  nonnative!
196
171
  rake (~> 13.0, >= 13.0.1)
197
- rubocop (~> 0.88)
172
+ rubocop (~> 1.0)
198
173
  simplecov (~> 0.17.1)
199
- solargraph (~> 0.39.11)
200
174
 
201
175
  BUNDLED WITH
202
176
  2.1.4
data/Makefile CHANGED
@@ -13,7 +13,7 @@ analysis:
13
13
  bundle exec rubocop
14
14
 
15
15
  cleanup-analysis:
16
- bundle exec rubocop -a
16
+ bundle exec rubocop -A
17
17
 
18
18
  cleanup-logs:
19
19
  rm -rf features/logs/*.log
data/README.md CHANGED
@@ -37,10 +37,19 @@ Configure nonnative with the following:
37
37
  - A timeout value.
38
38
  - Port to verify.
39
39
  - The class for servers.
40
- - The file you want STDOUT to be logged to for processes.
40
+ - The log for servers/processes
41
41
  - The strategy for processes/servers.
42
- * Startup will start the process once.
43
- * Before will hook into cucumbers Before and After.
42
+
43
+ ### Strategy
44
+
45
+ The strategy can be one of the following values:
46
+ - startup - will start the process once.
47
+ - before - will hook into cucumbers Before and After.
48
+ - manual - do this manually
49
+
50
+ This can be overridden by the following environment variables:
51
+ - NONNATIVE_STRATEGY - Set this to override what is set in the config.
52
+ - NONNATIVE_TIMEOUT - Set this (in seconds, e.g 5) to override what is set in the config.
44
53
 
45
54
  ### Processes
46
55
 
@@ -50,12 +59,12 @@ Setup it up programmatically:
50
59
  require 'nonnative'
51
60
 
52
61
  Nonnative.configure do |config|
53
- config.strategy = :startup or :before or :manual
62
+ config.strategy = :startup
54
63
 
55
64
  config.process do |d|
56
65
  d.name = 'start_1'
57
66
  d.command = 'features/support/bin/start 12_321'
58
- d.timeout = 0.5
67
+ d.timeout = config.strategy.timeout
59
68
  d.port = 12_321
60
69
  d.log = 'features/logs/12_321.log'
61
70
  d.signal = 'INT' # Possible values are described in Signal.list.keys
@@ -364,3 +373,39 @@ server = Nonnative.pool.server_by_name(name)
364
373
  server.proxy.close_all # To use close_all.
365
374
  server.proxy.reset # To reset it back to a good state.
366
375
  ```
376
+
377
+
378
+ ### Go
379
+
380
+ As we love using go as a language for services we have added support to start binaries with defined parameters. This expects that you build your services in the format of `command sub_command --params`
381
+
382
+ To get this to work you will need to create a `main_test.go` file with these contents:
383
+
384
+ ```go
385
+ // +build features
386
+
387
+ package main
388
+
389
+ import (
390
+ "testing"
391
+ )
392
+
393
+ // TestFeatures is a hack that allows us to figure out what the coverage is during
394
+ // integration tests. I would not recommend that you use a binary built using
395
+ // this hack outside of a test suite.
396
+ func TestFeatures(t *testing.T) {
397
+ main()
398
+ }
399
+ ```
400
+
401
+ Then to compile this binary you will need to do the following:
402
+
403
+ ```sh
404
+ go test -mod vendor -c -tags features -covermode=count -o your_binary -coverpkg=./... github.com/your_location
405
+ ```
406
+
407
+ Then to get an executable you do the following:
408
+
409
+ ```ruby
410
+ Nonnative::GoCommand.new('your_binary', 'reports').executable('sub_command', '--config config.yaml')
411
+ ```
@@ -3,6 +3,7 @@
3
3
  require 'socket'
4
4
  require 'timeout'
5
5
  require 'yaml'
6
+ require 'open3'
6
7
 
7
8
  require 'grpc'
8
9
  require 'sinatra'
@@ -28,7 +29,6 @@ require 'nonnative/server'
28
29
  require 'nonnative/http_client'
29
30
  require 'nonnative/http_server'
30
31
  require 'nonnative/grpc_server'
31
- require 'nonnative/grpc_server'
32
32
  require 'nonnative/observability'
33
33
  require 'nonnative/proxy_factory'
34
34
  require 'nonnative/proxy'
@@ -39,6 +39,8 @@ require 'nonnative/close_all_socket_pair'
39
39
  require 'nonnative/delay_socket_pair'
40
40
  require 'nonnative/invalid_data_socket_pair'
41
41
  require 'nonnative/socket_pair_factory'
42
+ require 'nonnative/strategy'
43
+ require 'nonnative/go_command'
42
44
 
43
45
  module Nonnative
44
46
  class << self
@@ -40,28 +40,35 @@ module Nonnative
40
40
  s.port = fd['port']
41
41
  s.log = fd['log']
42
42
 
43
- proxy = fd['proxy']
44
-
45
- if proxy
46
- s.proxy = {
47
- type: proxy['type'],
48
- port: proxy['port'],
49
- log: proxy['log'],
50
- options: proxy['options']
51
- }
52
- end
43
+ proxy s, fd['proxy']
53
44
  end
54
45
  end
55
46
  end
47
+
48
+ def proxy(server, proxy)
49
+ return unless proxy
50
+
51
+ server.proxy = {
52
+ type: proxy['type'],
53
+ port: proxy['port'],
54
+ log: proxy['log'],
55
+ options: proxy['options']
56
+ }
57
+ end
56
58
  end
57
59
 
58
60
  def initialize
59
- self.strategy = :before
60
- self.processes = []
61
- self.servers = []
61
+ @strategy = Strategy.new
62
+ @processes = []
63
+ @servers = []
62
64
  end
63
65
 
64
- attr_accessor :strategy, :processes, :servers
66
+ attr_accessor :processes, :servers
67
+ attr_reader :strategy
68
+
69
+ def strategy=(value)
70
+ @strategy = Strategy.new(value)
71
+ end
65
72
 
66
73
  def process
67
74
  process = Nonnative::ConfigurationProcess.new
@@ -3,7 +3,7 @@
3
3
  module Nonnative
4
4
  class DelaySocketPair < SocketPair
5
5
  def read(socket)
6
- duration = proxy.options.dig(:delay) || 2
6
+ duration = proxy.options[:delay] || 2
7
7
  sleep duration
8
8
 
9
9
  super socket
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Nonnative
4
+ class GoCommand
5
+ def initialize(main, output)
6
+ @main = main
7
+ @output = output
8
+ end
9
+
10
+ def executable(cmd, *params)
11
+ params = params.join(' ')
12
+ "#{main} #{flags(cmd, params).join(' ')} #{cmd} #{params}"
13
+ end
14
+
15
+ def execute(cmd, *params)
16
+ Open3.popen3(executable(cmd, params)) do |_stdin, stdout, stderr, wait_thr|
17
+ return stdout.read, stderr.read, wait_thr.value
18
+ end
19
+ end
20
+
21
+ private
22
+
23
+ attr_reader :main, :output
24
+
25
+ def flags(cmd, params)
26
+ m = File.basename(main, File.extname(main))
27
+ p = params.gsub(/\W/, '')
28
+ path = "#{output}/#{m}-#{cmd}-#{p}"
29
+
30
+ [
31
+ "-test.cpuprofile=#{path}-cpu.prof",
32
+ "-test.memprofile=#{path}-mem.prof",
33
+ "-test.blockprofile=#{path}-block.prof",
34
+ "-test.mutexprofile=#{path}-mutex.prof",
35
+ "-test.coverprofile=#{path}.cov",
36
+ "-test.trace=#{path}-trace.out"
37
+ ]
38
+ end
39
+ end
40
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Nonnative
4
+ class Strategy
5
+ def initialize(strategy = 'before', timeout = 5)
6
+ @strategy = strategy
7
+ @timeout = timeout
8
+ end
9
+
10
+ def timeout
11
+ (env_timeout || @timeout).to_i
12
+ end
13
+
14
+ def to_s
15
+ (env_strategy || @strategy).to_s
16
+ end
17
+
18
+ private
19
+
20
+ def env_strategy
21
+ @env_strategy ||= ENV['NONNATIVE_STRATEGY']
22
+ end
23
+
24
+ def env_timeout
25
+ @env_timeout ||= ENV['NONNATIVE_TIMEOUT']
26
+ end
27
+ end
28
+ end
@@ -6,10 +6,8 @@ module Nonnative
6
6
  @time = time
7
7
  end
8
8
 
9
- def perform
10
- ::Timeout.timeout(time) do
11
- yield
12
- end
9
+ def perform(&block)
10
+ ::Timeout.timeout(time, &block)
13
11
  rescue ::Timeout::Error
14
12
  false
15
13
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Nonnative
4
- VERSION = '1.27.0'
4
+ VERSION = '1.34.0'
5
5
  end
@@ -2,6 +2,7 @@
2
2
 
3
3
  lib = File.expand_path('lib', __dir__)
4
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
5
+
5
6
  require 'nonnative/version'
6
7
 
7
8
  Gem::Specification.new do |spec|
@@ -14,20 +15,18 @@ Gem::Specification.new do |spec|
14
15
  spec.description = spec.summary
15
16
  spec.homepage = 'https://github.com/alexfalkowski/nonnative'
16
17
  spec.license = 'Unlicense'
17
-
18
- # Specify which files should be added to the gem when it is released.
19
- # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
20
18
  spec.files = Dir.chdir(File.expand_path(__dir__)) do
21
19
  `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
22
20
  end
23
21
  spec.bindir = 'exe'
24
22
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
25
23
  spec.require_paths = ['lib']
24
+ spec.required_ruby_version = ['>= 2.7.0', '< 2.8.0']
26
25
 
27
26
  spec.add_dependency 'concurrent-ruby', '~> 1.0', '>= 1.0.5'
28
- spec.add_dependency 'cucumber', ['>= 4', '< 5']
27
+ spec.add_dependency 'cucumber', ['>= 5', '< 6']
29
28
  spec.add_dependency 'grpc', ['>= 1', '< 2']
30
- spec.add_dependency 'puma', '~> 4.3', '>= 4.3.3'
29
+ spec.add_dependency 'puma', '~> 5.0'
31
30
  spec.add_dependency 'rest-client', '~> 2.1'
32
31
  spec.add_dependency 'rspec-benchmark', '~> 0.6.0'
33
32
  spec.add_dependency 'rspec-expectations', '~> 3.9', '>= 3.9.2'
@@ -36,7 +35,6 @@ Gem::Specification.new do |spec|
36
35
  spec.add_development_dependency 'bundler', '~> 2.1', '>= 2.1.4'
37
36
  spec.add_development_dependency 'grpc-tools', ['>= 1', '< 2']
38
37
  spec.add_development_dependency 'rake', '~> 13.0', '>= 13.0.1'
39
- spec.add_development_dependency 'rubocop', '~> 0.88'
38
+ spec.add_development_dependency 'rubocop', '~> 1.0'
40
39
  spec.add_development_dependency 'simplecov', '~> 0.17.1'
41
- spec.add_development_dependency 'solargraph', '~> 0.39.11'
42
40
  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.27.0
4
+ version: 1.34.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Falkowski
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-07-21 00:00:00.000000000 Z
11
+ date: 2020-10-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: concurrent-ruby
@@ -36,20 +36,20 @@ dependencies:
36
36
  requirements:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: '4'
39
+ version: '5'
40
40
  - - "<"
41
41
  - !ruby/object:Gem::Version
42
- version: '5'
42
+ version: '6'
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - ">="
48
48
  - !ruby/object:Gem::Version
49
- version: '4'
49
+ version: '5'
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
- version: '5'
52
+ version: '6'
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: grpc
55
55
  requirement: !ruby/object:Gem::Requirement
@@ -76,20 +76,14 @@ dependencies:
76
76
  requirements:
77
77
  - - "~>"
78
78
  - !ruby/object:Gem::Version
79
- version: '4.3'
80
- - - ">="
81
- - !ruby/object:Gem::Version
82
- version: 4.3.3
79
+ version: '5.0'
83
80
  type: :runtime
84
81
  prerelease: false
85
82
  version_requirements: !ruby/object:Gem::Requirement
86
83
  requirements:
87
84
  - - "~>"
88
85
  - !ruby/object:Gem::Version
89
- version: '4.3'
90
- - - ">="
91
- - !ruby/object:Gem::Version
92
- version: 4.3.3
86
+ version: '5.0'
93
87
  - !ruby/object:Gem::Dependency
94
88
  name: rest-client
95
89
  requirement: !ruby/object:Gem::Requirement
@@ -224,14 +218,14 @@ dependencies:
224
218
  requirements:
225
219
  - - "~>"
226
220
  - !ruby/object:Gem::Version
227
- version: '0.88'
221
+ version: '1.0'
228
222
  type: :development
229
223
  prerelease: false
230
224
  version_requirements: !ruby/object:Gem::Requirement
231
225
  requirements:
232
226
  - - "~>"
233
227
  - !ruby/object:Gem::Version
234
- version: '0.88'
228
+ version: '1.0'
235
229
  - !ruby/object:Gem::Dependency
236
230
  name: simplecov
237
231
  requirement: !ruby/object:Gem::Requirement
@@ -246,20 +240,6 @@ dependencies:
246
240
  - - "~>"
247
241
  - !ruby/object:Gem::Version
248
242
  version: 0.17.1
249
- - !ruby/object:Gem::Dependency
250
- name: solargraph
251
- requirement: !ruby/object:Gem::Requirement
252
- requirements:
253
- - - "~>"
254
- - !ruby/object:Gem::Version
255
- version: 0.39.11
256
- type: :development
257
- prerelease: false
258
- version_requirements: !ruby/object:Gem::Requirement
259
- requirements:
260
- - - "~>"
261
- - !ruby/object:Gem::Version
262
- version: 0.39.11
263
243
  description: Allows you to keep using the power of ruby to test other systems
264
244
  email:
265
245
  - alexrfalkowski@gmail.com
@@ -273,12 +253,12 @@ files:
273
253
  - ".gitignore"
274
254
  - ".rubocop.yml"
275
255
  - ".ruby-version"
256
+ - CHANGELOG.md
276
257
  - Gemfile
277
258
  - Gemfile.lock
278
259
  - LICENSE
279
260
  - Makefile
280
261
  - README.md
281
- - Rakefile
282
262
  - bin/console
283
263
  - bin/setup
284
264
  - lib/nonnative.rb
@@ -292,6 +272,7 @@ files:
292
272
  - lib/nonnative/delay_socket_pair.rb
293
273
  - lib/nonnative/error.rb
294
274
  - lib/nonnative/fault_injection_proxy.rb
275
+ - lib/nonnative/go_command.rb
295
276
  - lib/nonnative/grpc_server.rb
296
277
  - lib/nonnative/http_client.rb
297
278
  - lib/nonnative/http_server.rb
@@ -310,6 +291,7 @@ files:
310
291
  - lib/nonnative/start_error.rb
311
292
  - lib/nonnative/startup.rb
312
293
  - lib/nonnative/stop_error.rb
294
+ - lib/nonnative/strategy.rb
313
295
  - lib/nonnative/timeout.rb
314
296
  - lib/nonnative/version.rb
315
297
  - nonnative.gemspec
@@ -326,7 +308,10 @@ required_ruby_version: !ruby/object:Gem::Requirement
326
308
  requirements:
327
309
  - - ">="
328
310
  - !ruby/object:Gem::Version
329
- version: '0'
311
+ version: 2.7.0
312
+ - - "<"
313
+ - !ruby/object:Gem::Version
314
+ version: 2.8.0
330
315
  required_rubygems_version: !ruby/object:Gem::Requirement
331
316
  requirements:
332
317
  - - ">="
data/Rakefile DELETED
@@ -1,4 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'bundler/gem_tasks'
4
- task default: :spec