process_helper 0.0.4.pre.beta.4 → 0.0.4.pre.beta.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: dac1e6b00a41e6783110d9a9fc96da71fd5ab61c
4
- data.tar.gz: 8831f8d4596d34ea1142074170147baf080bfaeb
3
+ metadata.gz: d2f03bf56af641f1950bc970aa466dbe9e02b651
4
+ data.tar.gz: 48875777e0c764098effc5e4441c55b794caf6d0
5
5
  SHA512:
6
- metadata.gz: 540109394d1a586ba812d347769e39b65481ce4ac616cc78100a383db5c318ff214599c0cdf107d5edff6bb183b657154285793468f7d3a0ce4055383106bd1c
7
- data.tar.gz: ab5b802c207e303928e984ef64de2cef779b4f46f68fb52de72d6946dad814b8bd6e06ae54c30c84c55f447a877a32ed7d6e0b4993470db5c1760bd65e427030
6
+ metadata.gz: 76c9dba3252d1b036d19c70ca73ab51ace44edaf1d05a58b71176dcad4f52af937413703aa88333ea8b03fc95aae6ceb83dffa1120dc143672c95f51f524c611
7
+ data.tar.gz: 4d39a694b203397a324fadc02cdce6267235f827efcef00bae5e3c6105aee4747f0fba65a39e33035b7bca99e9abaed9dc96469c9984e95bca48c17e1cc89d89
data/README.md CHANGED
@@ -49,7 +49,7 @@ However, `process_helper` was created because none of them made it *easy* to run
49
49
  * [`:pseudo_terminal` (short form `:pty`)](#pseudo_terminal-short-form-pty)
50
50
  * [`:puts_output` (short form `:out`)](#puts_output-short-form-out)
51
51
  * [`:timeout` (short form `:kill`)](#timeout-short-form-kill)
52
- * [`:trace` (short form `:t`)](#trace-short-form-t)
52
+ * [`:log_cmd` (short form `:log`)](#log_cmd-short-form-log)
53
53
  * [Warnings if failure output will be suppressed based on options](#warnings-if-failure-output-will-be-suppressed-based-on-options)
54
54
  * [Version](#version)
55
55
  * [Contributing](#contributing)
@@ -214,7 +214,7 @@ Valid value is a float, e.g. `1.5`. Default value is nil/undefined.
214
214
 
215
215
  See [https://www.pivotaltracker.com/story/show/93303096](https://www.pivotaltracker.com/story/show/93303096) for more details.
216
216
 
217
- ### `:trace` (short form `:t`)
217
+ ### `:log_cmd` (short form `:log`)
218
218
 
219
219
  Valid value is a boolean. Default value is false.
220
220
 
@@ -3,10 +3,14 @@ require 'pty'
3
3
  require 'timeout'
4
4
  require 'stringio'
5
5
 
6
- # Makes it easier to spawn ruby sub-processes with proper capturing of stdout and stderr streams.
6
+ # Makes it easy to spawn Ruby sub-processes with guaranteed exit status handling,
7
+ # capturing and/or suppressing combined STDOUT and STDERR streams,
8
+ # providing STDIN input, timeouts, and running via a pseudo terminal.
9
+ #
10
+ # Full documentation at https://github.com/thewoolleyman/process_helper
7
11
  module ProcessHelper
8
12
  # Don't forget to keep version in sync with gemspec
9
- VERSION = '0.0.4.pre.beta.4'.freeze
13
+ VERSION = '0.0.4.pre.beta.5'.freeze
10
14
 
11
15
  # rubocop:disable Style/ModuleFunction
12
16
  extend self
@@ -16,7 +20,7 @@ module ProcessHelper
16
20
  fail ProcessHelper::EmptyCommandError, 'command must not be empty' if cmd.empty?
17
21
  options = options.dup
18
22
  options_processing(options)
19
- puts cmd if options[:trace]
23
+ puts cmd if options[:log_cmd]
20
24
  output, process_status =
21
25
  if options[:pseudo_terminal]
22
26
  process_with_pseudo_terminal(cmd, options)
@@ -176,7 +180,7 @@ module ProcessHelper
176
180
  options[:pseudo_terminal] = false if options[:pseudo_terminal].nil?
177
181
  options[:expected_exit_status] = [0] if options[:expected_exit_status].nil?
178
182
  options[:input] = StringIO.new(options[:input].to_s) unless options[:input].is_a?(StringIO)
179
- options[:trace] = false if options[:trace].nil?
183
+ options[:log_cmd] = false if options[:log_cmd].nil?
180
184
  end
181
185
 
182
186
  def valid_option_pairs
@@ -187,7 +191,7 @@ module ProcessHelper
187
191
  %w(pseudo_terminal pty),
188
192
  %w(puts_output out),
189
193
  %w(timeout kill),
190
- %w(trace t),
194
+ %w(log_cmd log),
191
195
  ]
192
196
  pairs.each do |pair|
193
197
  pair.each_with_index do |opt, index|
@@ -233,7 +237,7 @@ module ProcessHelper
233
237
  validate_boolean(pair, value) if option.to_s == 'include_output_in_exception'
234
238
  validate_boolean(pair, value) if option.to_s == 'pseudo_terminal'
235
239
  validate_puts_output(pair, value) if option.to_s == 'puts_output'
236
- validate_boolean(pair, value) if option.to_s == 'trace'
240
+ validate_boolean(pair, value) if option.to_s == 'log_cmd'
237
241
  end
238
242
  end
239
243
  end
@@ -3,7 +3,7 @@
3
3
  Gem::Specification.new do |spec|
4
4
  spec.name = 'process_helper'
5
5
  # Don't forget to keep version in sync with ProcessHelper::Version
6
- spec.version = '0.0.4.pre.beta.4'
6
+ spec.version = '0.0.4.pre.beta.5'
7
7
  spec.authors = ['Chad Woolley', 'Glenn Oppegard']
8
8
  spec.email = ['oppegard@gmail.com', 'thewoolleyman@gmail.com']
9
9
  spec.summary = "Makes it easier to spawn ruby sub-processes with proper capturing /
@@ -1,22 +1,22 @@
1
1
  require_relative 'spec_helper'
2
2
 
3
- RSpec.describe 'trace handling' do
3
+ RSpec.describe 'log command handling' do
4
4
  attr_reader :clazz
5
5
 
6
6
  before do
7
7
  @clazz = Clazz.new
8
8
  end
9
9
 
10
- it 'prints command if trace is true' do
10
+ it 'prints command if log_cmd is true' do
11
11
  expect do
12
- clazz.process('echo stdout > /dev/stdout', puts_output: :always, trace: true)
12
+ clazz.process('echo stdout > /dev/stdout', puts_output: :always, log_cmd: true)
13
13
  end.to output("echo stdout > /dev/stdout\nstdout\n").to_stdout
14
14
  .and(not_output.to_stderr)
15
15
  end
16
16
 
17
- it 'does not print command if trace is false' do
17
+ it 'does not print command if log_cmd is false' do
18
18
  expect do
19
- clazz.process('echo stdout > /dev/stdout', puts_output: :always, trace: false)
19
+ clazz.process('echo stdout > /dev/stdout', puts_output: :always, log_cmd: false)
20
20
  end.to output("stdout\n").to_stdout
21
21
  .and(not_output.to_stderr)
22
22
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: process_helper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4.pre.beta.4
4
+ version: 0.0.4.pre.beta.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chad Woolley
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-01-27 00:00:00.000000000 Z
12
+ date: 2017-02-02 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -145,6 +145,7 @@ files:
145
145
  - ruby-lint.yml
146
146
  - spec/error_handling_spec.rb
147
147
  - spec/input_handling_spec.rb
148
+ - spec/log_cmd_handling_spec.rb
148
149
  - spec/module_visibility_spec.rb
149
150
  - spec/options/expected_exit_status_spec.rb
150
151
  - spec/options/include_output_in_exception_spec.rb
@@ -155,7 +156,6 @@ files:
155
156
  - spec/spec_helper.rb
156
157
  - spec/static_analysis_spec.rb
157
158
  - spec/timeout_handling_spec.rb
158
- - spec/trace_handling_spec.rb
159
159
  homepage: https://github.com/thewoolleyman/process_helper
160
160
  licenses:
161
161
  - Unlicense
@@ -184,6 +184,7 @@ summary: Makes it easier to spawn ruby sub-processes with proper capturing / of
184
184
  test_files:
185
185
  - spec/error_handling_spec.rb
186
186
  - spec/input_handling_spec.rb
187
+ - spec/log_cmd_handling_spec.rb
187
188
  - spec/module_visibility_spec.rb
188
189
  - spec/options/expected_exit_status_spec.rb
189
190
  - spec/options/include_output_in_exception_spec.rb
@@ -194,4 +195,3 @@ test_files:
194
195
  - spec/spec_helper.rb
195
196
  - spec/static_analysis_spec.rb
196
197
  - spec/timeout_handling_spec.rb
197
- - spec/trace_handling_spec.rb