rake-namespace_group 0.0.3 → 0.0.4

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
  SHA1:
3
- metadata.gz: 801f922f9a72303042a9b6bd4bf3fa430b273d12
4
- data.tar.gz: 19ccd9c74b7a707ea98ff4bacfd1542b0f5d4026
3
+ metadata.gz: 7959e434504822230b49bc78c3c2cdb5c9233021
4
+ data.tar.gz: 1676ba9342c01a21f9422490712a95b460695531
5
5
  SHA512:
6
- metadata.gz: 39ca59090c16a53fc36cbbd8d971559902ffc90ee3e8b02f63a9c2e0420d7692c72115b0c18a47c430982a823ac42a60eaa8439c4a1ea4af07b1e1c3a7d7c286
7
- data.tar.gz: 6be5b24c26273766b484aa0960c47ed96b2e01fa228ade4f243be27c87df7c2a4844f78d1059ff96c9b8d7a24966bfbfaad766fe544c47c317a64b5a55326c3d
6
+ metadata.gz: fbfe13fa985273acf5f93e546ba1bcb80f6b8c129432d99dbfe98a9345be5f57cbb465cc11263bea0a235ca1f6d6cb3b4ee9f48189a741f259144463c5653872
7
+ data.tar.gz: 681f86b5e00553740b63907be2d119fa9878e41a123cac6dd8922ec36432a10add3022350fd192bb67ea351ff93306065c81e47d0cc2ee1494880659f8945016
@@ -27,6 +27,10 @@ module Rake
27
27
  options = { :arguments => options }
28
28
  end
29
29
 
30
+ options[:arguments] ||= []
31
+ options[:all] ||= false
32
+ options[:keep_going] ||= true
33
+
30
34
  ns_name = options[:namespace] || name
31
35
  ns = namespace(ns_name) do
32
36
  if block_given?
@@ -38,7 +42,7 @@ module Rake
38
42
  scope = ns.scope
39
43
 
40
44
  desc options[:desc] || "Execute all tasks in group #{ns_name}"
41
- task ns_name, (options[:arguments] || []) do |_self, args|
45
+ task ns_name, options[:arguments] do |_self, args|
42
46
  tasklist = Rake.application.tasks_in_scope(scope)
43
47
  exception_list = GroupedError.new(ns_name)
44
48
  tasklist.each do |task|
@@ -1,19 +1,36 @@
1
1
  class GroupedError < Exception
2
2
  attr_reader :exceptions
3
3
 
4
- def initialize(message)
4
+ def initialize(message=nil)
5
5
  @exceptions = {}
6
+ @message = message
6
7
  end
7
8
 
8
9
  def add_exception(task, exception)
9
10
  @exceptions[task.name.to_s] = { :task => task, :exception => exception }
10
11
  end
11
12
 
12
- def print
13
- exceptions.each do |name, ex|
14
- puts "[Task: #{name}]: Exception[#{ex[:exception].class}] #{ex[:exception].message}"
15
- print ex[:exception].backtrace
13
+ def message
14
+ @message || "failed tasks: #{@exceptions.keys.inspect}"
15
+ end
16
+
17
+ def backtrace
18
+ backtrace = []
19
+ exceptions.each do |e,v|
20
+ backtrace << "[#{e}] #{v[:exception].message}"
21
+ if v[:exception].is_a?(GroupedError)
22
+ backtrace << v[:exception].backtrace
23
+ end
24
+ end
25
+ backtrace.flatten
26
+ end
27
+
28
+ def trace
29
+ backtrace = []
30
+ exceptions.each do |e,v|
31
+ backtrace << v[:exception].backtrace.collect {|x| "[#{e}] #{x}" }
16
32
  end
33
+ backtrace.flatten
17
34
  end
18
35
 
19
36
  def has_exceptions?
@@ -1,5 +1,5 @@
1
1
  module Rake
2
2
  module NamespaceGroup
3
- VERSION = "0.0.3"
3
+ VERSION = "0.0.4"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rake-namespace_group
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jan Vansteenkiste
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-14 00:00:00.000000000 Z
11
+ date: 2015-02-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake