run-command 0.4 → 0.7

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: a97d559632d69814b3d64b79c0dab60d63bab697dcd39c74c53e546d7c0a2570
4
- data.tar.gz: a62840eddfbc10e49930576852813d72724b45371738e1f56ea07b785d634bff
3
+ metadata.gz: cfa294bdb1a09bcd92aee67eee58e2ca3c73f96a86d7132e0571841e2323dce1
4
+ data.tar.gz: 4ec519564182fe9bf1b1a7ccffc7c22523915278a45fdcd18d9515ccc3e163d6
5
5
  SHA512:
6
- metadata.gz: 44649150f3cd9f2f7ba7a3e1d6ec4d6ac198ab3601ebca29c070107c209a171949464ea52f50107ae93e22cbc70954e6c67d2b274cb63244d9e29f05a104083e
7
- data.tar.gz: 8b2f7156eff5e19ba84ce7a85edce15edc82735c4bcee71e2f2eb1f7b1f3704adeaf8d61af1ffae9b1fe941e959ed35cf16f932feaf3deeda30a035d7fed4d4d
6
+ metadata.gz: 10920bd58b6a2fea2c1fe4519833cf00ae20e2696301015fb1bf0711247586cbf8b519567cc8995ca7e276991a80896ef90b10cacea16c6d6b96875de297c564
7
+ data.tar.gz: f0a4720ce1706cd741423c791f17dfd096ccef5432c161c052df4240060692e9c45bb28f5814c0a3327b7e44e7dff3bf41342f4bb26b9e283e3805ceb827d6af
data/.gitignore CHANGED
@@ -1,2 +1,3 @@
1
1
  .DS_Store
2
- *.gem
2
+ *.gem
3
+ Gemfile.lock
data/Rakefile CHANGED
@@ -1,9 +1,3 @@
1
- require 'bundler/gem_tasks'
2
- Bundler.require
3
- require 'rake/testtask'
4
-
5
- Rake::TestTask.new do |t|
6
- t.test_files = FileList['test/test.rb']
7
- end
1
+ require 'simple-rake-tasks'
8
2
 
9
3
  task :default => :test
data/lib/run-command.rb CHANGED
@@ -5,13 +5,14 @@ module Kernel
5
5
  class RunCommandFailed < Exception; end
6
6
 
7
7
  def run_command(*args, **options)
8
- command = args.shift
9
8
  args = args.flatten.compact.map(&:to_s)
9
+ command = args.shift
10
10
  env = options.delete(:env) || {}
11
11
  verbose = options.delete(:verbose) || false
12
12
  pretend = options.delete(:pretend) || false
13
13
  argv0 = options.delete(:argv0)
14
14
  input = options.delete(:input)
15
+ interactive = options.delete(:interactive)
15
16
  if verbose
16
17
  warn "$ %s%s" % [
17
18
  env.empty? ? nil : env.map { |kv| kv.join('=') }.join(' ') + ' ',
@@ -19,10 +20,15 @@ module Kernel
19
20
  ]
20
21
  end
21
22
  unless pretend
22
- output = IO.popen(env, [argv0 ? [command, argv0] : command, *args], 'r+', options) do |io|
23
- io.write(input.to_s) if input
24
- io.close_write
25
- io.read
23
+ if interactive
24
+ system(env, *command, exception: true)
25
+ output = nil
26
+ else
27
+ output = IO.popen(env, [argv0 ? [command, argv0] : command, *args], 'r+', options) do |io|
28
+ io.write(input.to_s) if input
29
+ io.close_write
30
+ io.read
31
+ end
26
32
  end
27
33
  raise RunCommandFailed, "Command #{command.to_s.inspect} failed: #{$?}" if $? != 0
28
34
  output
data/run-command.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  Gem::Specification.new do |s|
2
2
  s.name = 'run-command'
3
- s.version = '0.4'
3
+ s.version = '0.7'
4
4
  s.summary = 'A friendlier system().'
5
5
  s.author = 'John Labovitz'
6
6
  s.email = 'johnl@johnlabovitz.com'
@@ -14,8 +14,8 @@ Gem::Specification.new do |s|
14
14
  s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
15
15
  s.require_path = 'lib'
16
16
 
17
- s.add_development_dependency 'bundler', '~> 2.2'
18
- s.add_development_dependency 'minitest', '~> 5.14'
17
+ s.add_development_dependency 'minitest', '~> 5.26'
19
18
  s.add_development_dependency 'minitest-power_assert', '~> 0.3'
20
- s.add_development_dependency 'rake', '~> 13.0'
19
+ s.add_development_dependency 'rake', '~> 13'
20
+ s.add_development_dependency 'simple-rake-tasks', '~> 0.1'
21
21
  end
@@ -3,7 +3,7 @@ require 'minitest/power_assert'
3
3
 
4
4
  require 'run-command'
5
5
 
6
- class Test < MiniTest::Test
6
+ class Test < Minitest::Test
7
7
 
8
8
  def test_simple
9
9
  assert_output {
metadata CHANGED
@@ -1,71 +1,70 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: run-command
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.4'
4
+ version: '0.7'
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Labovitz
8
- autorequire:
9
8
  bindir: bin
10
9
  cert_chain: []
11
- date: 2021-06-16 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
- name: bundler
13
+ name: minitest
15
14
  requirement: !ruby/object:Gem::Requirement
16
15
  requirements:
17
16
  - - "~>"
18
17
  - !ruby/object:Gem::Version
19
- version: '2.2'
18
+ version: '5.26'
20
19
  type: :development
21
20
  prerelease: false
22
21
  version_requirements: !ruby/object:Gem::Requirement
23
22
  requirements:
24
23
  - - "~>"
25
24
  - !ruby/object:Gem::Version
26
- version: '2.2'
25
+ version: '5.26'
27
26
  - !ruby/object:Gem::Dependency
28
- name: minitest
27
+ name: minitest-power_assert
29
28
  requirement: !ruby/object:Gem::Requirement
30
29
  requirements:
31
30
  - - "~>"
32
31
  - !ruby/object:Gem::Version
33
- version: '5.14'
32
+ version: '0.3'
34
33
  type: :development
35
34
  prerelease: false
36
35
  version_requirements: !ruby/object:Gem::Requirement
37
36
  requirements:
38
37
  - - "~>"
39
38
  - !ruby/object:Gem::Version
40
- version: '5.14'
39
+ version: '0.3'
41
40
  - !ruby/object:Gem::Dependency
42
- name: minitest-power_assert
41
+ name: rake
43
42
  requirement: !ruby/object:Gem::Requirement
44
43
  requirements:
45
44
  - - "~>"
46
45
  - !ruby/object:Gem::Version
47
- version: '0.3'
46
+ version: '13'
48
47
  type: :development
49
48
  prerelease: false
50
49
  version_requirements: !ruby/object:Gem::Requirement
51
50
  requirements:
52
51
  - - "~>"
53
52
  - !ruby/object:Gem::Version
54
- version: '0.3'
53
+ version: '13'
55
54
  - !ruby/object:Gem::Dependency
56
- name: rake
55
+ name: simple-rake-tasks
57
56
  requirement: !ruby/object:Gem::Requirement
58
57
  requirements:
59
58
  - - "~>"
60
59
  - !ruby/object:Gem::Version
61
- version: '13.0'
60
+ version: '0.1'
62
61
  type: :development
63
62
  prerelease: false
64
63
  version_requirements: !ruby/object:Gem::Requirement
65
64
  requirements:
66
65
  - - "~>"
67
66
  - !ruby/object:Gem::Version
68
- version: '13.0'
67
+ version: '0.1'
69
68
  description: "\n A friendlier system().\n "
70
69
  email: johnl@johnlabovitz.com
71
70
  executables: []
@@ -73,18 +72,15 @@ extensions: []
73
72
  extra_rdoc_files: []
74
73
  files:
75
74
  - ".gitignore"
76
- - Gemfile
77
- - Gemfile.lock
78
75
  - README.md
79
76
  - Rakefile
80
77
  - lib/run-command.rb
81
78
  - run-command.gemspec
82
- - test/test.rb
79
+ - test/main_test.rb
83
80
  homepage: http://github.com/jslabovitz/run-command
84
81
  licenses:
85
82
  - MIT
86
83
  metadata: {}
87
- post_install_message:
88
84
  rdoc_options: []
89
85
  require_paths:
90
86
  - lib
@@ -99,9 +95,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
95
  - !ruby/object:Gem::Version
100
96
  version: '0'
101
97
  requirements: []
102
- rubygems_version: 3.2.20
103
- signing_key:
98
+ rubygems_version: 3.7.2
104
99
  specification_version: 4
105
100
  summary: A friendlier system().
106
101
  test_files:
107
- - test/test.rb
102
+ - test/main_test.rb
data/Gemfile DELETED
@@ -1,3 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- gemspec
data/Gemfile.lock DELETED
@@ -1,27 +0,0 @@
1
- PATH
2
- remote: .
3
- specs:
4
- run-command (0.4)
5
-
6
- GEM
7
- remote: https://rubygems.org/
8
- specs:
9
- minitest (5.14.4)
10
- minitest-power_assert (0.3.1)
11
- minitest
12
- power_assert (>= 1.1)
13
- power_assert (2.0.0)
14
- rake (13.0.3)
15
-
16
- PLATFORMS
17
- arm64-darwin-20
18
-
19
- DEPENDENCIES
20
- bundler (~> 2.2)
21
- minitest (~> 5.14)
22
- minitest-power_assert (~> 0.3)
23
- rake (~> 13.0)
24
- run-command!
25
-
26
- BUNDLED WITH
27
- 2.2.20