complex_config 0.19.0 → 0.19.3

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: 4ff2b361ee9d3b06983e6ccdcc847a1ca17dd7b41cdf7bc45fc83bc0261b318c
4
- data.tar.gz: a658135bbc6e28aaef43ec7ba14ec70e8cde6bcdf1a897ddae0c26abd1a5f0fb
3
+ metadata.gz: b4a1562a55eb1a93435d27f476d78745853d6cd92f9f2f509bb6f0222625e218
4
+ data.tar.gz: cd505065b7d309a0d3fb0309d3e77fae65044b711632c8c0abe04fd0a74d14ea
5
5
  SHA512:
6
- metadata.gz: 750968741f4e6744525b091cd101d8e3344ded32f538e98a99f450c553de9b36e7f18d7275c1efacc4319634b85f78549107c1daa05eb24b560464043b0b02e0
7
- data.tar.gz: 2f6a955ac2ee470429390784b2e886655556ac0c06a3a6d440357a295b62d155c4f8ce6622834a2724671cab5e9a4c28c74f46e05631523bb12fa84c0c96d1d0
6
+ metadata.gz: bc0ec49f9ad9e50e010a1aa3632fd96a6efd436b6c0cd7f7d441248e0361f5f16dfaea68507a6218ceef145912034155362370a94b363832bab247152f205e0d
7
+ data.tar.gz: 01a5162d15b3e2c02a3454fc190de89b1fc1ddd25c3bc5e83532542c41e7dc2df0bb612bf03a87a9b7327c362079e0e58da75ab63652b0da6af722d3b72049a9
data/.all_images.yml ADDED
@@ -0,0 +1,17 @@
1
+ dockerfile: |-
2
+ RUN apk add --no-cache build-base git
3
+ RUN gem update --system
4
+ RUN gem install gem_hadar bundler
5
+ script: &script |-
6
+ echo -e "\e[1m"
7
+ ruby -v
8
+ echo -e "\e[0m"
9
+ bundle
10
+ rake test
11
+
12
+ images:
13
+ ruby:3.1-alpine: *script
14
+ ruby:3.0-alpine: *script
15
+ ruby:2.7-alpine: *script
16
+ ruby:2.6-alpine: *script
17
+ ruby:2.5-alpine: *script
data/README.md CHANGED
@@ -142,86 +142,6 @@ Here is the `ComplexConfig::Plugins::MONEY` plugin for example:
142
142
  end
143
143
  end
144
144
 
145
- ## Changes
146
-
147
- * 2019-03-18 Release 0.17.0
148
- * Improve error message for missing encryption key
149
- * 2019-03-14 Release 0.16.0
150
- * Enable `- trim_mode` for ERB in yml files
151
- * Allow `to_json` calls on settings
152
- * 2019-03-14 Release 0.15.1
153
- * Fix shared feature for empy top level settings
154
- * 2018-12-07 Release 0.15.0
155
- * Allow inplace recrypt for encrypted files
156
- * 2018-07-06 Release 0.14.0
157
- * Better support for rails encryption
158
- * Adds `complex_config` executable.
159
- * 2018-02-23 Release 0.13.3
160
- Change evaluation order of key sources
161
- * 2018-02-23 Release 0.13.2
162
- Refactor key sources
163
- * 2018-02-09 Release 0.13.1
164
- Improve error reporting for encrypted files (missing key)
165
- * 2018-01-26 Release 0.13.0
166
- Improve `write_config` interface and more tests
167
- * 2017-11-17 Release 0.12.2
168
- Output string keys on top level configs, Rails don't like it otherwise.
169
- * 2017-11-17 Release 0.12.1
170
- Do not output newlines when writing encrypted configs, Rails don't like it.
171
- * 2017-11-16 Release 0.12.0
172
- * Supports writing of configurations (encrypted or unencrypted)
173
- * 2017-11-16 Release 0.11.3
174
- * Small bugfix
175
- * 2017-10-30 Release 0.11.2
176
- * Small bugfix
177
- * 2017-10-27 Release 0.11.1
178
- * Small bugfix
179
- * 2017-10-27 Release 0.11.0
180
- * Support encrypted config files a la rails
181
- * 2017-02-02 Release 0.10.0
182
- * `cc.foo?`/`complex_config.foo?` returns config or nil (when not existant)
183
- * 2017-01-23 Release 0.9.2
184
- * Improve performance for proxy objects
185
- * 2016-11-22 Release 0.9.1
186
- * Fix travis builds
187
- * 2016-11-22 Release 0.9.0
188
- * Extract ComplexConfig::Provider::Shortcuts into its own module
189
- * 2016-07-21 Release 0.8.0
190
- * `ComplexConfig::Settings` can be replaced with `replace_attributes` which
191
- allows for easier testing by calling:
192
- `cc.foo.replace_attributes(new: 'settings')`.
193
- * 2016-07-15 Release 0.7.0
194
- * Slim down `ComplexConfig::Settings` interface to avoid clashes with methods
195
- mixed into `Object` class or `Enumerable#instance_methods`
196
- * 2016-07-15 Release 0.6.0
197
- * Depend on mize gem for caching.
198
- * 2016-06-23 Release 0.5.2
199
- * Resolve index access via the plugin code path, so foo.bar and foo[:bar]
200
- have the same result for a plugin key.
201
- * 2015-11-19 Release 0.5.0
202
- * Support rails reloading behaviour.
203
- * Allow configuration via ComplexConfig.configure(&block) method.
204
- * 2015-11-17 Release 0.4.0
205
- * Add root object for configuration, e. g. cc.name instead of cc(name).
206
- * 2015-11-03 Release 0.3.1
207
- * Add missing dependency to tins.
208
- * 2015-11-03 Release 0.3.0
209
- * Add nicer default output for settings.
210
- * 2015-03-24 Release 0.2.3
211
- * Fix typo in load error case of money.
212
- * 2015-02-25 Release 0.2.2
213
- * Fix an issue with path interpolation.
214
- * 2015-01-28 Release 0.2.1
215
- * Turn monetize into a runtime dependency for the plugin.
216
- * 2015-01-27 Release 0.2.0
217
- * Fix for attributes named like Enumerable methods
218
- * Make tests run on JRuby
219
- * 2015-01-01 Release 0.1.1
220
- * Some small fixes for handling of arrays
221
- * 2014-12-15 Release 0.1.0
222
- * Freeze configuration by default.
223
- * 2014-12-12 Release 0.0.0
224
-
225
145
  ## Download
226
146
 
227
147
  The homepage of this library is located at
data/Rakefile CHANGED
@@ -13,6 +13,8 @@ GemHadar do
13
13
  test_dir 'spec'
14
14
  ignore '.*.sw[pon]', 'pkg', 'Gemfile.lock', 'coverage', '.rvmrc',
15
15
  '.AppleDouble', '.DS_Store', '.byebug_history', 'errors.lst', 'tags'
16
+ package_ignore '.all_images', '.utilsrc', '.rspec', '.tool-versions',
17
+ '.gitignore'
16
18
 
17
19
  readme 'README.md'
18
20
  title "#{name.camelize} -- configuration library"
@@ -25,6 +27,7 @@ GemHadar do
25
27
  development_dependency 'simplecov'
26
28
  development_dependency 'rspec'
27
29
  development_dependency 'monetize'
30
+ development_dependency 'utils'
28
31
  end
29
32
 
30
33
  task :default => :spec
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.19.0
1
+ 0.19.3
@@ -1,23 +1,23 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: complex_config 0.19.0 ruby lib
2
+ # stub: complex_config 0.19.3 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "complex_config".freeze
6
- s.version = "0.19.0"
6
+ s.version = "0.19.3"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib".freeze]
10
10
  s.authors = ["Florian Frank".freeze]
11
- s.date = "2021-01-05"
11
+ s.date = "2022-05-19"
12
12
  s.description = "This library allows you to access configuration files via a simple interface".freeze
13
13
  s.email = "flori@ping.de".freeze
14
14
  s.executables = ["complex_config".freeze]
15
15
  s.extra_rdoc_files = ["README.md".freeze, "lib/complex_config.rb".freeze, "lib/complex_config/config.rb".freeze, "lib/complex_config/encryption.rb".freeze, "lib/complex_config/errors.rb".freeze, "lib/complex_config/key_source.rb".freeze, "lib/complex_config/plugins.rb".freeze, "lib/complex_config/plugins/enable.rb".freeze, "lib/complex_config/plugins/money.rb".freeze, "lib/complex_config/plugins/uri.rb".freeze, "lib/complex_config/provider.rb".freeze, "lib/complex_config/provider/shortcuts.rb".freeze, "lib/complex_config/proxy.rb".freeze, "lib/complex_config/railtie.rb".freeze, "lib/complex_config/rude.rb".freeze, "lib/complex_config/settings.rb".freeze, "lib/complex_config/shortcuts.rb".freeze, "lib/complex_config/version.rb".freeze]
16
- s.files = [".gitignore".freeze, ".rspec".freeze, ".travis.yml".freeze, ".utilsrc".freeze, "COPYING".freeze, "Gemfile".freeze, "README.md".freeze, "Rakefile".freeze, "VERSION".freeze, "bin/complex_config".freeze, "complex_config.gemspec".freeze, "config/products.yml".freeze, "lib/complex_config.rb".freeze, "lib/complex_config/config.rb".freeze, "lib/complex_config/encryption.rb".freeze, "lib/complex_config/errors.rb".freeze, "lib/complex_config/key_source.rb".freeze, "lib/complex_config/plugins.rb".freeze, "lib/complex_config/plugins/enable.rb".freeze, "lib/complex_config/plugins/money.rb".freeze, "lib/complex_config/plugins/uri.rb".freeze, "lib/complex_config/provider.rb".freeze, "lib/complex_config/provider/shortcuts.rb".freeze, "lib/complex_config/proxy.rb".freeze, "lib/complex_config/railtie.rb".freeze, "lib/complex_config/rude.rb".freeze, "lib/complex_config/settings.rb".freeze, "lib/complex_config/shortcuts.rb".freeze, "lib/complex_config/version.rb".freeze, "spec/complex_config/config_spec.rb".freeze, "spec/complex_config/encryption_spec.rb".freeze, "spec/complex_config/key_source_spec.rb".freeze, "spec/complex_config/plugins_spec.rb".freeze, "spec/complex_config/provider_spec.rb".freeze, "spec/complex_config/settings_spec.rb".freeze, "spec/complex_config/shortcuts_spec.rb".freeze, "spec/config/broken_config.yml".freeze, "spec/config/config.yml".freeze, "spec/config/master.key".freeze, "spec/config/with-key-file.yml.enc".freeze, "spec/config/with-key-file.yml.key".freeze, "spec/config/without-key-file.yml.enc".freeze, "spec/spec_helper.rb".freeze]
16
+ s.files = [".all_images.yml".freeze, "COPYING".freeze, "Gemfile".freeze, "README.md".freeze, "Rakefile".freeze, "VERSION".freeze, "bin/complex_config".freeze, "complex_config.gemspec".freeze, "config/products.yml".freeze, "lib/complex_config.rb".freeze, "lib/complex_config/config.rb".freeze, "lib/complex_config/encryption.rb".freeze, "lib/complex_config/errors.rb".freeze, "lib/complex_config/key_source.rb".freeze, "lib/complex_config/plugins.rb".freeze, "lib/complex_config/plugins/enable.rb".freeze, "lib/complex_config/plugins/money.rb".freeze, "lib/complex_config/plugins/uri.rb".freeze, "lib/complex_config/provider.rb".freeze, "lib/complex_config/provider/shortcuts.rb".freeze, "lib/complex_config/proxy.rb".freeze, "lib/complex_config/railtie.rb".freeze, "lib/complex_config/rude.rb".freeze, "lib/complex_config/settings.rb".freeze, "lib/complex_config/shortcuts.rb".freeze, "lib/complex_config/version.rb".freeze, "spec/complex_config/config_spec.rb".freeze, "spec/complex_config/encryption_spec.rb".freeze, "spec/complex_config/key_source_spec.rb".freeze, "spec/complex_config/plugins_spec.rb".freeze, "spec/complex_config/provider_spec.rb".freeze, "spec/complex_config/settings_spec.rb".freeze, "spec/complex_config/shortcuts_spec.rb".freeze, "spec/config/broken_config.yml".freeze, "spec/config/config.yml".freeze, "spec/config/config_with_alias.yml".freeze, "spec/config/master.key".freeze, "spec/config/with-key-file.yml.enc".freeze, "spec/config/with-key-file.yml.key".freeze, "spec/config/without-key-file.yml.enc".freeze, "spec/spec_helper.rb".freeze]
17
17
  s.homepage = "https://github.com/flori/complex_config".freeze
18
18
  s.licenses = ["Apache-2.0".freeze]
19
19
  s.rdoc_options = ["--title".freeze, "ComplexConfig -- configuration library".freeze, "--main".freeze, "README.md".freeze]
20
- s.rubygems_version = "3.2.3".freeze
20
+ s.rubygems_version = "3.3.13".freeze
21
21
  s.summary = "configuration library".freeze
22
22
  s.test_files = ["spec/complex_config/config_spec.rb".freeze, "spec/complex_config/encryption_spec.rb".freeze, "spec/complex_config/key_source_spec.rb".freeze, "spec/complex_config/plugins_spec.rb".freeze, "spec/complex_config/provider_spec.rb".freeze, "spec/complex_config/settings_spec.rb".freeze, "spec/complex_config/shortcuts_spec.rb".freeze, "spec/spec_helper.rb".freeze]
23
23
 
@@ -26,20 +26,22 @@ Gem::Specification.new do |s|
26
26
  end
27
27
 
28
28
  if s.respond_to? :add_runtime_dependency then
29
- s.add_development_dependency(%q<gem_hadar>.freeze, ["~> 1.11.0"])
29
+ s.add_development_dependency(%q<gem_hadar>.freeze, ["~> 1.12.0"])
30
30
  s.add_development_dependency(%q<rake>.freeze, [">= 0"])
31
31
  s.add_development_dependency(%q<simplecov>.freeze, [">= 0"])
32
32
  s.add_development_dependency(%q<rspec>.freeze, [">= 0"])
33
33
  s.add_development_dependency(%q<monetize>.freeze, [">= 0"])
34
+ s.add_development_dependency(%q<utils>.freeze, [">= 0"])
34
35
  s.add_runtime_dependency(%q<json>.freeze, [">= 0"])
35
36
  s.add_runtime_dependency(%q<tins>.freeze, [">= 0"])
36
37
  s.add_runtime_dependency(%q<mize>.freeze, ["~> 0.3", ">= 0.3.4"])
37
38
  else
38
- s.add_dependency(%q<gem_hadar>.freeze, ["~> 1.11.0"])
39
+ s.add_dependency(%q<gem_hadar>.freeze, ["~> 1.12.0"])
39
40
  s.add_dependency(%q<rake>.freeze, [">= 0"])
40
41
  s.add_dependency(%q<simplecov>.freeze, [">= 0"])
41
42
  s.add_dependency(%q<rspec>.freeze, [">= 0"])
42
43
  s.add_dependency(%q<monetize>.freeze, [">= 0"])
44
+ s.add_dependency(%q<utils>.freeze, [">= 0"])
43
45
  s.add_dependency(%q<json>.freeze, [">= 0"])
44
46
  s.add_dependency(%q<tins>.freeze, [">= 0"])
45
47
  s.add_dependency(%q<mize>.freeze, ["~> 0.3", ">= 0.3.4"])
@@ -1,5 +1,4 @@
1
1
  begin
2
- require 'forwardable' # XXX monetize forgets to require this
3
2
  require 'monetize'
4
3
  rescue LoadError
5
4
  if $DEBUG
@@ -99,7 +99,12 @@ class ComplexConfig::Provider
99
99
  "configuration file #{pathname.to_s.inspect} is missing"
100
100
  end
101
101
  results = datas.map { |d| evaluate(pathname, d) }
102
- hashes = results.map { |r| ::YAML.load(r, pathname) }
102
+ hashes =
103
+ if ::Psych::VERSION < "4"
104
+ results.map { |r| ::YAML.load(r, pathname) }
105
+ else
106
+ results.map { |r| ::YAML.load(r, filename: pathname, aliases: true) }
107
+ end
103
108
  settings = ComplexConfig::Settings.build(name, hashes.shift)
104
109
  hashes.each { |h| settings.attributes_update(h) }
105
110
  if shared = settings.shared?
@@ -169,10 +174,18 @@ class ComplexConfig::Provider
169
174
  self
170
175
  end
171
176
 
172
- def evaluate(pathname, data)
173
- erb = ::ERB.new(data, nil, '-')
174
- erb.filename = pathname.to_s
175
- erb.result
177
+ if RUBY_VERSION >= "3"
178
+ def evaluate(pathname, data)
179
+ erb = ::ERB.new(data, trim_mode: '-')
180
+ erb.filename = pathname.to_s
181
+ erb.result
182
+ end
183
+ else
184
+ def evaluate(pathname, data)
185
+ erb = ::ERB.new(data, nil, '-')
186
+ erb.filename = pathname.to_s
187
+ erb.result
188
+ end
176
189
  end
177
190
 
178
191
  def env
@@ -118,8 +118,8 @@ class ComplexConfig::Settings < BasicObject
118
118
  to_h.to_yaml
119
119
  end
120
120
 
121
- def to_json
122
- to_h.to_json
121
+ def to_json(*a)
122
+ to_h.to_json(*a)
123
123
  end
124
124
 
125
125
  def size
@@ -1,6 +1,6 @@
1
1
  module ComplexConfig
2
2
  # ComplexConfig version
3
- VERSION = '0.19.0'
3
+ VERSION = '0.19.3'
4
4
  VERSION_ARRAY = VERSION.split('.').map(&:to_i) # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
@@ -18,7 +18,7 @@ RSpec.describe ComplexConfig::Encryption do
18
18
  end
19
19
 
20
20
  it 'can encrypt' do
21
- expect(enc.encrypt(value)).to match /\A.+--.+--.+==\z/
21
+ expect(enc.encrypt(value)).to match(/\A.+--.+--.+==\z/)
22
22
  end
23
23
 
24
24
  it 'can decrypt' do
@@ -269,6 +269,18 @@ RSpec.describe ComplexConfig::Provider do
269
269
  end
270
270
  end
271
271
 
272
+ context 'handling configuration files with aliases (considered unsafe)' do
273
+ before do
274
+ described_class.config_dir = Pathname.new(__FILE__) + '../../config'
275
+ end
276
+
277
+ it 'reads yaml files with aliases just fine' do
278
+ expect(
279
+ described_class.config(asset('config_with_alias.yml')).specific.extended
280
+ ).to be true
281
+ end
282
+ end
283
+
272
284
  context 'evaluating configuration files with ERB' do
273
285
  it 'evaluates a config file correctly' do
274
286
  expect(
@@ -122,6 +122,10 @@ EOT
122
122
  EOT
123
123
  end
124
124
 
125
+ it 'can be converted into JSON' do
126
+ expect(settings.to_json).to eq '{"foo":{"bar":{"baz":true},"qux":"quux"}}'
127
+ end
128
+
125
129
  it 'raises exception if expected attribute is missing' do
126
130
  expect { settings.nix }.to raise_error(ComplexConfig::AttributeMissing)
127
131
  end
@@ -0,0 +1,6 @@
1
+ common: &common
2
+ extended: true
3
+
4
+ specific:
5
+ <<: *common
6
+ foo: true
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: complex_config
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.0
4
+ version: 0.19.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Frank
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-01-05 00:00:00.000000000 Z
11
+ date: 2022-05-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gem_hadar
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.11.0
19
+ version: 1.12.0
20
20
  type: :development
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: 1.11.0
26
+ version: 1.12.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: rake
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -80,6 +80,20 @@ dependencies:
80
80
  - - ">="
81
81
  - !ruby/object:Gem::Version
82
82
  version: '0'
83
+ - !ruby/object:Gem::Dependency
84
+ name: utils
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ type: :development
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: json
85
99
  requirement: !ruby/object:Gem::Requirement
@@ -153,10 +167,7 @@ extra_rdoc_files:
153
167
  - lib/complex_config/shortcuts.rb
154
168
  - lib/complex_config/version.rb
155
169
  files:
156
- - ".gitignore"
157
- - ".rspec"
158
- - ".travis.yml"
159
- - ".utilsrc"
170
+ - ".all_images.yml"
160
171
  - COPYING
161
172
  - Gemfile
162
173
  - README.md
@@ -191,6 +202,7 @@ files:
191
202
  - spec/complex_config/shortcuts_spec.rb
192
203
  - spec/config/broken_config.yml
193
204
  - spec/config/config.yml
205
+ - spec/config/config_with_alias.yml
194
206
  - spec/config/master.key
195
207
  - spec/config/with-key-file.yml.enc
196
208
  - spec/config/with-key-file.yml.key
@@ -219,7 +231,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
219
231
  - !ruby/object:Gem::Version
220
232
  version: '0'
221
233
  requirements: []
222
- rubygems_version: 3.2.3
234
+ rubygems_version: 3.3.13
223
235
  signing_key:
224
236
  specification_version: 4
225
237
  summary: configuration library
data/.gitignore DELETED
@@ -1,10 +0,0 @@
1
- .*.sw[pon]
2
- .AppleDouble
3
- .DS_Store
4
- .byebug_history
5
- .rvmrc
6
- Gemfile.lock
7
- coverage
8
- errors.lst
9
- pkg
10
- tags
data/.rspec DELETED
@@ -1 +0,0 @@
1
- --color
data/.travis.yml DELETED
@@ -1,15 +0,0 @@
1
- rvm:
2
- - 2.1
3
- - 2.2
4
- - 2.3
5
- - 2.4
6
- - 2.5
7
- - 2.6
8
- - 2.7
9
- - ruby-head
10
- - jruby-head
11
- sudo: false
12
- matrix:
13
- allow_failures:
14
- - rvm: ruby-head
15
- - rvm: jruby-head
data/.utilsrc DELETED
@@ -1,26 +0,0 @@
1
- # vim: set ft=ruby:
2
-
3
- search do
4
- prune_dirs /\A(\.svn|\.git|CVS|tmp|tags|coverage|pkg)\z/
5
- skip_files /(\A\.|\.sw[pon]\z|\.(log|fnm|jpg|jpeg|png|pdf|svg)\z|tags|~\z)/i
6
- end
7
-
8
- discover do
9
- prune_dirs /\A(\.svn|\.git|CVS|tmp|tags|coverage|pkg)\z/
10
- skip_files /(\A\.|\.sw[pon]\z|\.log\z|~\z)/
11
- binary false
12
- end
13
-
14
- strip_spaces do
15
- prune_dirs /\A(\..*|CVS|pkg)\z/
16
- skip_files /(\A\.|\.sw[pon]\z|\.log\z|~\z)/
17
- end
18
-
19
- probe do
20
- test_framework :rspec
21
- #include_dirs 'features'
22
- end
23
-
24
- ssh_tunnel do
25
- terminal_multiplexer :tmux
26
- end