childprocess 0.9.0 → 4.1.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 +5 -5
- data/.document +6 -6
- data/.gitignore +28 -28
- data/.rspec +1 -1
- data/.travis.yml +37 -44
- data/CHANGELOG.md +83 -49
- data/Gemfile +9 -15
- data/LICENSE +20 -20
- data/README.md +230 -196
- data/Rakefile +61 -61
- data/appveyor.yml +36 -60
- data/childprocess.gemspec +26 -30
- data/lib/childprocess/abstract_io.rb +36 -36
- data/lib/childprocess/abstract_process.rb +192 -192
- data/lib/childprocess/errors.rb +37 -26
- data/lib/childprocess/jruby/io.rb +16 -16
- data/lib/childprocess/jruby/process.rb +184 -159
- data/lib/childprocess/jruby/pump.rb +53 -53
- data/lib/childprocess/jruby.rb +56 -56
- data/lib/childprocess/tools/generator.rb +145 -145
- data/lib/childprocess/unix/fork_exec_process.rb +78 -70
- data/lib/childprocess/unix/io.rb +21 -21
- data/lib/childprocess/unix/lib.rb +186 -186
- data/lib/childprocess/unix/platform/arm64-macosx.rb +11 -0
- data/lib/childprocess/unix/platform/i386-linux.rb +12 -12
- data/lib/childprocess/unix/platform/i386-solaris.rb +11 -11
- data/lib/childprocess/unix/platform/x86_64-linux.rb +12 -12
- data/lib/childprocess/unix/platform/x86_64-macosx.rb +11 -11
- data/lib/childprocess/unix/posix_spawn_process.rb +134 -134
- data/lib/childprocess/unix/process.rb +90 -89
- data/lib/childprocess/unix.rb +9 -9
- data/lib/childprocess/version.rb +3 -3
- data/lib/childprocess/windows/handle.rb +91 -91
- data/lib/childprocess/windows/io.rb +25 -25
- data/lib/childprocess/windows/lib.rb +416 -416
- data/lib/childprocess/windows/process.rb +131 -130
- data/lib/childprocess/windows/process_builder.rb +178 -175
- data/lib/childprocess/windows/structs.rb +148 -148
- data/lib/childprocess/windows.rb +38 -33
- data/lib/childprocess.rb +210 -205
- data/spec/abstract_io_spec.rb +12 -12
- data/spec/childprocess_spec.rb +447 -422
- data/spec/get_env.ps1 +13 -0
- data/spec/io_spec.rb +228 -228
- data/spec/jruby_spec.rb +24 -24
- data/spec/pid_behavior.rb +12 -12
- data/spec/platform_detection_spec.rb +86 -86
- data/spec/spec_helper.rb +270 -261
- data/spec/unix_spec.rb +57 -57
- data/spec/windows_spec.rb +23 -23
- metadata +13 -43
data/spec/windows_spec.rb
CHANGED
@@ -1,23 +1,23 @@
|
|
1
|
-
require File.expand_path('../spec_helper', __FILE__)
|
2
|
-
require "pid_behavior"
|
3
|
-
|
4
|
-
if ChildProcess.windows?
|
5
|
-
describe ChildProcess::Windows::Process do
|
6
|
-
it_behaves_like "a platform that provides the child's pid"
|
7
|
-
end
|
8
|
-
|
9
|
-
describe ChildProcess::Windows::IO do
|
10
|
-
let(:io) { ChildProcess::Windows::IO.new }
|
11
|
-
|
12
|
-
it "raises an ArgumentError if given IO does not respond to :fileno" do
|
13
|
-
expect { io.stdout = nil }.to raise_error(ArgumentError, /must have :fileno or :to_io/)
|
14
|
-
end
|
15
|
-
|
16
|
-
it "raises an ArgumentError if the #to_io does not return an IO " do
|
17
|
-
fake_io = Object.new
|
18
|
-
def fake_io.to_io() StringIO.new end
|
19
|
-
|
20
|
-
expect { io.stdout = fake_io }.to raise_error(ArgumentError, /must have :fileno or :to_io/)
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
1
|
+
require File.expand_path('../spec_helper', __FILE__)
|
2
|
+
require "pid_behavior"
|
3
|
+
|
4
|
+
if ChildProcess.windows?
|
5
|
+
describe ChildProcess::Windows::Process do
|
6
|
+
it_behaves_like "a platform that provides the child's pid"
|
7
|
+
end
|
8
|
+
|
9
|
+
describe ChildProcess::Windows::IO do
|
10
|
+
let(:io) { ChildProcess::Windows::IO.new }
|
11
|
+
|
12
|
+
it "raises an ArgumentError if given IO does not respond to :fileno" do
|
13
|
+
expect { io.stdout = nil }.to raise_error(ArgumentError, /must have :fileno or :to_io/)
|
14
|
+
end
|
15
|
+
|
16
|
+
it "raises an ArgumentError if the #to_io does not return an IO " do
|
17
|
+
fake_io = Object.new
|
18
|
+
def fake_io.to_io() StringIO.new end
|
19
|
+
|
20
|
+
expect { io.stdout = fake_io }.to raise_error(ArgumentError, /must have :fileno or :to_io/)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
metadata
CHANGED
@@ -1,36 +1,17 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: childprocess
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 4.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jari Bakken
|
8
8
|
- Eric Kessler
|
9
|
-
|
9
|
+
- Shane da Silva
|
10
|
+
autorequire:
|
10
11
|
bindir: bin
|
11
12
|
cert_chain: []
|
12
|
-
date:
|
13
|
+
date: 2021-06-09 00:00:00.000000000 Z
|
13
14
|
dependencies:
|
14
|
-
- !ruby/object:Gem::Dependency
|
15
|
-
name: ffi
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
requirements:
|
18
|
-
- - "~>"
|
19
|
-
- !ruby/object:Gem::Version
|
20
|
-
version: '1.0'
|
21
|
-
- - ">="
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: 1.0.11
|
24
|
-
type: :runtime
|
25
|
-
prerelease: false
|
26
|
-
version_requirements: !ruby/object:Gem::Requirement
|
27
|
-
requirements:
|
28
|
-
- - "~>"
|
29
|
-
- !ruby/object:Gem::Version
|
30
|
-
version: '1.0'
|
31
|
-
- - ">="
|
32
|
-
- !ruby/object:Gem::Version
|
33
|
-
version: 1.0.11
|
34
15
|
- !ruby/object:Gem::Dependency
|
35
16
|
name: rspec
|
36
17
|
requirement: !ruby/object:Gem::Requirement
|
@@ -59,20 +40,6 @@ dependencies:
|
|
59
40
|
- - "~>"
|
60
41
|
- !ruby/object:Gem::Version
|
61
42
|
version: '0.0'
|
62
|
-
- !ruby/object:Gem::Dependency
|
63
|
-
name: rake
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - "<"
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '12.0'
|
69
|
-
type: :development
|
70
|
-
prerelease: false
|
71
|
-
version_requirements: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - "<"
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '12.0'
|
76
43
|
- !ruby/object:Gem::Dependency
|
77
44
|
name: coveralls
|
78
45
|
requirement: !ruby/object:Gem::Requirement
|
@@ -91,6 +58,7 @@ description: This gem aims at being a simple and reliable solution for controlli
|
|
91
58
|
external programs running in the background on any Ruby / OS combination.
|
92
59
|
email:
|
93
60
|
- morrow748@gmail.com
|
61
|
+
- shane@dasilva.io
|
94
62
|
executables: []
|
95
63
|
extensions: []
|
96
64
|
extra_rdoc_files: []
|
@@ -119,6 +87,7 @@ files:
|
|
119
87
|
- lib/childprocess/unix/fork_exec_process.rb
|
120
88
|
- lib/childprocess/unix/io.rb
|
121
89
|
- lib/childprocess/unix/lib.rb
|
90
|
+
- lib/childprocess/unix/platform/arm64-macosx.rb
|
122
91
|
- lib/childprocess/unix/platform/i386-linux.rb
|
123
92
|
- lib/childprocess/unix/platform/i386-solaris.rb
|
124
93
|
- lib/childprocess/unix/platform/x86_64-linux.rb
|
@@ -135,6 +104,7 @@ files:
|
|
135
104
|
- lib/childprocess/windows/structs.rb
|
136
105
|
- spec/abstract_io_spec.rb
|
137
106
|
- spec/childprocess_spec.rb
|
107
|
+
- spec/get_env.ps1
|
138
108
|
- spec/io_spec.rb
|
139
109
|
- spec/jruby_spec.rb
|
140
110
|
- spec/pid_behavior.rb
|
@@ -142,11 +112,11 @@ files:
|
|
142
112
|
- spec/spec_helper.rb
|
143
113
|
- spec/unix_spec.rb
|
144
114
|
- spec/windows_spec.rb
|
145
|
-
homepage:
|
115
|
+
homepage: https://github.com/enkessler/childprocess
|
146
116
|
licenses:
|
147
117
|
- MIT
|
148
118
|
metadata: {}
|
149
|
-
post_install_message:
|
119
|
+
post_install_message:
|
150
120
|
rdoc_options: []
|
151
121
|
require_paths:
|
152
122
|
- lib
|
@@ -154,22 +124,22 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
154
124
|
requirements:
|
155
125
|
- - ">="
|
156
126
|
- !ruby/object:Gem::Version
|
157
|
-
version:
|
127
|
+
version: 2.4.0
|
158
128
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
159
129
|
requirements:
|
160
130
|
- - ">="
|
161
131
|
- !ruby/object:Gem::Version
|
162
132
|
version: '0'
|
163
133
|
requirements: []
|
164
|
-
|
165
|
-
|
166
|
-
signing_key:
|
134
|
+
rubygems_version: 3.1.4
|
135
|
+
signing_key:
|
167
136
|
specification_version: 4
|
168
137
|
summary: A simple and reliable solution for controlling external programs running
|
169
138
|
in the background on any Ruby / OS combination.
|
170
139
|
test_files:
|
171
140
|
- spec/abstract_io_spec.rb
|
172
141
|
- spec/childprocess_spec.rb
|
142
|
+
- spec/get_env.ps1
|
173
143
|
- spec/io_spec.rb
|
174
144
|
- spec/jruby_spec.rb
|
175
145
|
- spec/pid_behavior.rb
|