wwtd 1.3.0 → 1.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 61da2cf51ba1d01d93f74f8979a6114f74863592
4
- data.tar.gz: ead0ba73395bb7f8180aece8665dbbbcbc5536a8
2
+ SHA256:
3
+ metadata.gz: 3f879eb786d4c99eaab557a1f69617b6b40b87ecd5c57f350b7385b3ac6884da
4
+ data.tar.gz: 4a6b5ddb9aebb3c2d4acc275cf540518b72045ea933b96f680d868b7f843dfb9
5
5
  SHA512:
6
- metadata.gz: 07e972cabce7d8256374fd796f148c10cc827a7def79fc20079377ee6b844db1ebdaae4d504038253e7f7b15cee446b223e01cfdc8d84636a1f9fa99566246d5
7
- data.tar.gz: d07e181e39e27b68816b2b3e8bcac1580b50abc3c64f2877fd7f01ff3f0f848400a0bf4e91ff314571b782ebfbea7f0165e3ffaec03cc5be3936477e7b130252
6
+ metadata.gz: 2a7816bb69d5ee736ad46d06142087919c8c3b5ed136d8a3029c55e44917c83e919f7aaee8713bdc0cf456c1205ee76f90d40824956a624cdf1df3ab40d87b6a
7
+ data.tar.gz: 84da9fad28b046493fcd983cc2fa3f424068842db008ddd724c2d949d3d7fb5ae240108c31f6d4d7c2ec10d3e9cf83fe2d10b1ae88d52a0bb51921b35ef652e0
@@ -117,7 +117,9 @@ module WWTD
117
117
 
118
118
  if matrix_config = config.delete("matrix")
119
119
  if exclude = matrix_config["exclude"]
120
- matrix -= exclude
120
+ exclude.each do |exclude_cell|
121
+ matrix.delete_if { |cell| matrix_match?(cell, exclude_cell) }
122
+ end
121
123
  end
122
124
  if include = matrix_config["include"]
123
125
  if matrix == [{}]
@@ -130,6 +132,10 @@ module WWTD
130
132
  matrix.map! { |c| config.merge(c) }
131
133
  end
132
134
 
135
+ def matrix_match?(cell, exclude)
136
+ cell.values_at(*exclude.keys) == exclude.values
137
+ end
138
+
133
139
  def with_clean_env(&block)
134
140
  if defined?(Bundler)
135
141
  Bundler.with_clean_env(&block)
@@ -48,13 +48,10 @@ module WWTD
48
48
  end
49
49
  end
50
50
 
51
- SCRIPT_SECTIONS.each do |section|
52
- if env_and_command = env_and_command_for_section(section)
53
- return unless sh(*env_and_command)
54
- end
51
+ SCRIPT_SECTIONS.all? do |section|
52
+ env_and_command = env_and_command_for_section(section)
53
+ !env_and_command || sh(*env_and_command)
55
54
  end
56
-
57
- true
58
55
  end
59
56
 
60
57
  def wants_bundle?
@@ -1,3 +1,3 @@
1
1
  module WWTD
2
- VERSION = "1.3.0"
2
+ VERSION = "1.4.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wwtd
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Grosser
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-20 00:00:00.000000000 Z
11
+ date: 2019-08-18 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description:
14
14
  email: michael@grosser.it
@@ -43,8 +43,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
43
43
  - !ruby/object:Gem::Version
44
44
  version: '0'
45
45
  requirements: []
46
- rubyforge_project:
47
- rubygems_version: 2.4.5.1
46
+ rubygems_version: 3.0.3
48
47
  signing_key:
49
48
  specification_version: 4
50
49
  summary: Travis simulator so you do not need to wait for the build