spud 0.2.5 → 0.2.6

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
- SHA256:
3
- metadata.gz: 28a274884358f6717d4e649d7ad01ea399317c89a02d2595576a15d35465b8de
4
- data.tar.gz: 1866b4fc335245a0a86fb21ad60c875596af2cc545399aa22db440d34e51bbf3
2
+ SHA1:
3
+ metadata.gz: ea40b0df03085beb5350590ed0336f4bbac760ff
4
+ data.tar.gz: 93427f8d7a3d1906d8f5ac082b54ee7a343afbec
5
5
  SHA512:
6
- metadata.gz: b44fd607406fe417224470905701c9f37fbb616ebc207df2ad041650f3368c5d6a15d5cf07778641d72d47f9c6af1b3fca7c774f09660bff679f44e50a946ea9
7
- data.tar.gz: e4e08a44cce308f92d7ff769ddf4f2ad4f75dfe8f4ca54643b4d84e9266cce9fbed191fd6e85710839440b8d85126b57dfaeadc881e17f412850f77432b46b51
6
+ metadata.gz: 9e5125c223b8e4733a018cbfc31239f6f9dc9a7b6912785f3167cebf67f07886f64106f64940e1f5fe50e7516d76b5c0dddbbfe4ed53d7b2edc837a08b193068
7
+ data.tar.gz: 052fb31ba933ffaf3520669830d37bf292f325c1d54072ce29642b20d3dac53d71f76ef9afb7eb5e6eb1ecd8d76da0a3dc7368c66b17b65cceaec387c1296a05
@@ -1,4 +1,5 @@
1
1
  # typed: true
2
+ require 'sorbet-runtime'
2
3
  require 'spud/error'
3
4
  require 'spud/help'
4
5
  require 'spud/lister'
@@ -58,7 +59,7 @@ module Spud
58
59
  rescue Error => error
59
60
  puts error.message
60
61
  raise error if debug?
61
- rescue SystemExit, Interrupt => error
62
+ rescue Interrupt => error
62
63
  puts "handled interrupt #{error}" if debug?
63
64
  rescue => error
64
65
  puts "fatal: #{error.message}"
@@ -1,7 +1,11 @@
1
1
  # typed: true
2
+ require 'sorbet-runtime'
3
+
2
4
  module Spud
3
5
  class Error < StandardError
4
- # @return [String]
6
+ extend T::Sig
7
+
8
+ sig {override.returns(String)}
5
9
  def message
6
10
  "spud: #{super}"
7
11
  end
@@ -1,10 +1,13 @@
1
1
  # typed: true
2
+ require 'sorbet-runtime'
2
3
  require 'stringio'
3
4
  require 'spud/version'
4
5
 
5
6
  module Spud
6
7
  module Help
7
- # @return [void]
8
+ extend T::Sig
9
+
10
+ sig {void}
8
11
  def self.print!
9
12
  puts <<~HELP
10
13
  spud #{VERSION}
@@ -1,4 +1,5 @@
1
1
  # typed: true
2
+ require 'sorbet-runtime'
2
3
 
3
4
  module Spud
4
5
  module TaskRunners
@@ -66,16 +66,17 @@ module Spud
66
66
  sig {override.params(ordered: T::Array[String], named: T::Hash[String, String]).returns(T.untyped)}
67
67
  def invoke(ordered, named)
68
68
  if up_to_date?
69
- puts "'#{name}' up to date"
70
- return nil
69
+ raise Error, "'#{name}' up to date"
71
70
  end
72
71
 
73
72
  check_required_args!(ordered)
74
73
 
75
- if args.any_named?
76
- T.unsafe(task_dsl).instance_exec(*ordered, **symbolize_keys(named), &@block)
77
- else
78
- T.unsafe(task_dsl).instance_exec(*ordered, &@block)
74
+ catch :halt do
75
+ if args.any_named?
76
+ T.unsafe(task_dsl).instance_exec(*ordered, **symbolize_keys(named), &@block)
77
+ else
78
+ T.unsafe(task_dsl).instance_exec(*ordered, &@block)
79
+ end
79
80
  end
80
81
  rescue ArgumentError => error
81
82
  raise Error, "invocation of '#{name}' with #{error.message}"
@@ -24,6 +24,11 @@ module Spud
24
24
  end
25
25
  end
26
26
 
27
+ sig {params(value: T.untyped).void}
28
+ def halt(value = nil)
29
+ value ? throw(:halt, value) : throw(:halt)
30
+ end
31
+
27
32
  sig {params(command: String).returns(Shell::Result)}
28
33
  def sh(command)
29
34
  puts command
@@ -1,4 +1,4 @@
1
1
  # typed: strict
2
2
  module Spud
3
- VERSION = '0.2.5'
3
+ VERSION = '0.2.6'
4
4
  end
@@ -53,7 +53,7 @@ module Spud
53
53
 
54
54
  sleep(0.1)
55
55
  end
56
- rescue SystemExit, Interrupt => error
56
+ rescue Interrupt => error
57
57
  puts "handled interrupt #{error}" if @driver.debug?
58
58
  end
59
59
 
metadata CHANGED
@@ -1,73 +1,73 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spud
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andrew Booth
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
  date: 2020-11-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: rspec
14
+ name: sorbet-runtime
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '3.0'
20
- type: :development
19
+ version: 0.5.6100
20
+ type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '3.0'
26
+ version: 0.5.6100
27
27
  - !ruby/object:Gem::Dependency
28
- name: pry
28
+ name: rspec
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 0.13.1
33
+ version: '3.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 0.13.1
40
+ version: '3.0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: byebug
42
+ name: pry
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '11.0'
47
+ version: 0.13.1
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '11.0'
54
+ version: 0.13.1
55
55
  - !ruby/object:Gem::Dependency
56
- name: sorbet
56
+ name: byebug
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 0.5.6100
61
+ version: '11.0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 0.5.6100
68
+ version: '11.0'
69
69
  - !ruby/object:Gem::Dependency
70
- name: sorbet-runtime
70
+ name: sorbet
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
@@ -80,7 +80,7 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: 0.5.6100
83
- description:
83
+ description:
84
84
  email: andrew@andrewbooth.xyz
85
85
  executables:
86
86
  - spud
@@ -115,13 +115,13 @@ homepage: https://github.com/broothie/spud#readme
115
115
  licenses:
116
116
  - MIT
117
117
  metadata: {}
118
- post_install_message:
118
+ post_install_message:
119
119
  rdoc_options: []
120
120
  require_paths:
121
121
  - lib
122
122
  required_ruby_version: !ruby/object:Gem::Requirement
123
123
  requirements:
124
- - - '='
124
+ - - ">="
125
125
  - !ruby/object:Gem::Version
126
126
  version: 2.3.0
127
127
  required_rubygems_version: !ruby/object:Gem::Requirement
@@ -130,8 +130,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
130
130
  - !ruby/object:Gem::Version
131
131
  version: '0'
132
132
  requirements: []
133
- rubygems_version: 3.1.3
134
- signing_key:
133
+ rubyforge_project:
134
+ rubygems_version: 2.5.1
135
+ signing_key:
135
136
  specification_version: 4
136
137
  summary: Spud is a task runner, in the form of a ruby DSL.
137
138
  test_files: []