configurability 2.1.2 → 2.2.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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/History.rdoc +5 -0
- data/Rakefile +17 -0
- data/bin/configurability +0 -0
- data/lib/configurability.rb +11 -2
- data/lib/configurability/config.rb +8 -1
- metadata +38 -24
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e20c53d95f82bf536b091f4076ecb2500e86f50a
|
4
|
+
data.tar.gz: 88cd57ee350ff322fa6aab8681c8c1568348c4ed
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7977fc61c2a3cd943e8cc762b5b94751b55cb267bd8be482001acea0736cf318fc2d9c3f12df1811741e597c1f63ebf6c299c6a88b338373657a94b38158dce8
|
7
|
+
data.tar.gz: 659341e2d540ed698d704537b60b28d213430b0ad962dec659b30f55e3a001b682ebb8afe919ebb99fa68306783bd89c8594bd941910481cf9ab0c376cd8a8ba
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/History.rdoc
CHANGED
@@ -1,3 +1,8 @@
|
|
1
|
+
== v2.2.0 [2014-05-19] Michael Granger <ged@FaerieMUD.org>
|
2
|
+
|
3
|
+
- Add a .default_config method to objects with Configurability.
|
4
|
+
|
5
|
+
|
1
6
|
== v2.1.2 [2014-01-20] Michael Granger <ged@FaerieMUD.org>
|
2
7
|
|
3
8
|
Symbolify keys of defaults for Configurability::Config.new (fixes #3).
|
data/Rakefile
CHANGED
@@ -6,6 +6,7 @@ rescue LoadError
|
|
6
6
|
abort "This Rakefile requires 'hoe' (gem install hoe)"
|
7
7
|
end
|
8
8
|
|
9
|
+
GEMSPEC = 'configurability.gemspec'
|
9
10
|
|
10
11
|
Hoe.plugin :mercurial
|
11
12
|
Hoe.plugin :signing
|
@@ -29,6 +30,7 @@ hoespec = Hoe.spec 'configurability' do |spec|
|
|
29
30
|
spec.dependency 'hoe-deveiate', '~> 0.3', :developer
|
30
31
|
spec.dependency 'simplecov', '~> 0.5', :developer
|
31
32
|
spec.dependency 'hoe-bundler', '~> 1.2', :developer
|
33
|
+
spec.dependency 'rspec', '3.0.0.beta2', :developer
|
32
34
|
|
33
35
|
spec.require_ruby_version( '>= 1.9.2' )
|
34
36
|
|
@@ -48,3 +50,18 @@ task :coverage do
|
|
48
50
|
Rake::Task[:spec].invoke
|
49
51
|
end
|
50
52
|
|
53
|
+
|
54
|
+
task :gemspec => GEMSPEC
|
55
|
+
file GEMSPEC => __FILE__
|
56
|
+
task GEMSPEC do |task|
|
57
|
+
spec = $hoespec.spec
|
58
|
+
spec.files.delete( '.gemtest' )
|
59
|
+
spec.version = "#{spec.version}.pre#{Time.now.strftime("%Y%m%d%H%M%S")}"
|
60
|
+
File.open( task.name, 'w' ) do |fh|
|
61
|
+
fh.write( spec.to_ruby )
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
65
|
+
CLOBBER.include( GEMSPEC.to_s )
|
66
|
+
task :default => :gemspec
|
67
|
+
|
data/bin/configurability
CHANGED
File without changes
|
data/lib/configurability.rb
CHANGED
@@ -18,10 +18,10 @@ module Configurability
|
|
18
18
|
|
19
19
|
|
20
20
|
# Library version constant
|
21
|
-
VERSION = '2.
|
21
|
+
VERSION = '2.2.0'
|
22
22
|
|
23
23
|
# Version-control revision constant
|
24
|
-
REVISION = %q$Revision:
|
24
|
+
REVISION = %q$Revision: 7ecaadfcf254 $
|
25
25
|
|
26
26
|
require 'configurability/deferredconfig'
|
27
27
|
|
@@ -243,6 +243,15 @@ module Configurability
|
|
243
243
|
end
|
244
244
|
end
|
245
245
|
|
246
|
+
|
247
|
+
### Return a Configurability::Config object that contains the configuration
|
248
|
+
### defaults for the receiver.
|
249
|
+
def default_config
|
250
|
+
default_values = self.defaults or return Configurability::Config.new( {} )
|
251
|
+
return Configurability::Config::Struct.new( default_values )
|
252
|
+
end
|
253
|
+
|
254
|
+
|
246
255
|
### Inject Configurability support into Loggability to avoid circular dependency
|
247
256
|
### load issues.
|
248
257
|
Loggability.extend( self )
|
@@ -244,11 +244,18 @@ class Configurability::Config
|
|
244
244
|
def make_configstruct_from_source( source, defaults=nil )
|
245
245
|
defaults ||= {}
|
246
246
|
mergefunc = Configurability::Config.method( :merge_complex_hashes )
|
247
|
-
hash =
|
247
|
+
hash = nil
|
248
|
+
|
249
|
+
if source.is_a?( Hash )
|
250
|
+
hash = source
|
251
|
+
else
|
252
|
+
hash = if defined?( SafeYAML ) then
|
248
253
|
YAML.load( source, :safe => true )
|
249
254
|
else
|
250
255
|
YAML.load( source )
|
251
256
|
end
|
257
|
+
end
|
258
|
+
|
252
259
|
ihash = symbolify_keys( untaint_hash(hash) )
|
253
260
|
idefaults = symbolify_keys( defaults )
|
254
261
|
mergedhash = idefaults.merge( ihash, &mergefunc )
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: configurability
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Granger
|
@@ -12,7 +12,7 @@ cert_chain:
|
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
13
|
MIIDbDCCAlSgAwIBAgIBATANBgkqhkiG9w0BAQUFADA+MQwwCgYDVQQDDANnZWQx
|
14
14
|
GTAXBgoJkiaJk/IsZAEZFglGYWVyaWVNVUQxEzARBgoJkiaJk/IsZAEZFgNvcmcw
|
15
|
-
|
15
|
+
HhcNMTQwMzE5MDQzNTI2WhcNMTUwMzE5MDQzNTI2WjA+MQwwCgYDVQQDDANnZWQx
|
16
16
|
GTAXBgoJkiaJk/IsZAEZFglGYWVyaWVNVUQxEzARBgoJkiaJk/IsZAEZFgNvcmcw
|
17
17
|
ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDb92mkyYwuGBg1oRxt2tkH
|
18
18
|
+Uo3LAsaL/APBfSLzy8o3+B3AUHKCjMUaVeBoZdWtMHB75X3VQlvXfZMyBxj59Vo
|
@@ -23,14 +23,14 @@ cert_chain:
|
|
23
23
|
AgMBAAGjdTBzMAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQWBBSZ0hCV
|
24
24
|
qoHr122fGKelqffzEQBhszAcBgNVHREEFTATgRFnZWRARmFlcmllTVVELm9yZzAc
|
25
25
|
BgNVHRIEFTATgRFnZWRARmFlcmllTVVELm9yZzANBgkqhkiG9w0BAQUFAAOCAQEA
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
26
|
+
TuL1Bzl6TBs1YEzEubFHb9XAPgehWzzUudjDKzTRd+uyZmxnomBqTCQjT5ucNRph
|
27
|
+
3jZ6bhLNooLQxTjIuHodeGcEMHZdt4Yi7SyPmw5Nry12z6wrDp+5aGps3HsE5WsQ
|
28
|
+
Zq2EuyEOc96g31uoIvjNdieKs+1kE+K+dJDjtw+wTH2i63P7r6N/NfPPXpxsFquo
|
29
|
+
wcYRRrHdR7GhdJeT+V8Q8Bi5bglCUGdx+8scMgkkePc98k9osQHypbACmzO+Bqkv
|
30
|
+
c7ZKPJcWBv0sm81+FCZXNACn2f9jfF8OQinxVs0O052KbGuEQaaiGIYeuuwQE2q6
|
31
|
+
ggcrPfcYeTwWlfZPu2LrBg==
|
32
32
|
-----END CERTIFICATE-----
|
33
|
-
date: 2014-
|
33
|
+
date: 2014-05-19 00:00:00.000000000 Z
|
34
34
|
dependencies:
|
35
35
|
- !ruby/object:Gem::Dependency
|
36
36
|
name: loggability
|
@@ -52,56 +52,56 @@ dependencies:
|
|
52
52
|
requirements:
|
53
53
|
- - ~>
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: 1.4
|
55
|
+
version: '1.4'
|
56
56
|
type: :development
|
57
57
|
prerelease: false
|
58
58
|
version_requirements: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
60
|
- - ~>
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version: 1.4
|
62
|
+
version: '1.4'
|
63
63
|
- !ruby/object:Gem::Dependency
|
64
|
-
name: hoe-
|
64
|
+
name: hoe-deveiate
|
65
65
|
requirement: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
67
|
- - ~>
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version: 0.
|
69
|
+
version: '0.5'
|
70
70
|
type: :development
|
71
71
|
prerelease: false
|
72
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: 0.
|
76
|
+
version: '0.5'
|
77
77
|
- !ruby/object:Gem::Dependency
|
78
|
-
name:
|
78
|
+
name: hoe-highline
|
79
79
|
requirement: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
81
|
- - ~>
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: '
|
83
|
+
version: '0.2'
|
84
84
|
type: :development
|
85
85
|
prerelease: false
|
86
86
|
version_requirements: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
88
|
- - ~>
|
89
89
|
- !ruby/object:Gem::Version
|
90
|
-
version: '
|
90
|
+
version: '0.2'
|
91
91
|
- !ruby/object:Gem::Dependency
|
92
|
-
name:
|
92
|
+
name: rdoc
|
93
93
|
requirement: !ruby/object:Gem::Requirement
|
94
94
|
requirements:
|
95
95
|
- - ~>
|
96
96
|
- !ruby/object:Gem::Version
|
97
|
-
version: '0
|
97
|
+
version: '4.0'
|
98
98
|
type: :development
|
99
99
|
prerelease: false
|
100
100
|
version_requirements: !ruby/object:Gem::Requirement
|
101
101
|
requirements:
|
102
102
|
- - ~>
|
103
103
|
- !ruby/object:Gem::Version
|
104
|
-
version: '0
|
104
|
+
version: '4.0'
|
105
105
|
- !ruby/object:Gem::Dependency
|
106
106
|
name: simplecov
|
107
107
|
requirement: !ruby/object:Gem::Requirement
|
@@ -130,20 +130,34 @@ dependencies:
|
|
130
130
|
- - ~>
|
131
131
|
- !ruby/object:Gem::Version
|
132
132
|
version: '1.2'
|
133
|
+
- !ruby/object:Gem::Dependency
|
134
|
+
name: rspec
|
135
|
+
requirement: !ruby/object:Gem::Requirement
|
136
|
+
requirements:
|
137
|
+
- - '='
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
version: 3.0.0.beta2
|
140
|
+
type: :development
|
141
|
+
prerelease: false
|
142
|
+
version_requirements: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - '='
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: 3.0.0.beta2
|
133
147
|
- !ruby/object:Gem::Dependency
|
134
148
|
name: hoe
|
135
149
|
requirement: !ruby/object:Gem::Requirement
|
136
150
|
requirements:
|
137
151
|
- - ~>
|
138
152
|
- !ruby/object:Gem::Version
|
139
|
-
version: '3.
|
153
|
+
version: '3.12'
|
140
154
|
type: :development
|
141
155
|
prerelease: false
|
142
156
|
version_requirements: !ruby/object:Gem::Requirement
|
143
157
|
requirements:
|
144
158
|
- - ~>
|
145
159
|
- !ruby/object:Gem::Version
|
146
|
-
version: '3.
|
160
|
+
version: '3.12'
|
147
161
|
description: |-
|
148
162
|
Configurability is a unified, unintrusive, assume-nothing configuration system
|
149
163
|
for Ruby. It lets you keep the configuration for multiple objects in a single
|
@@ -199,8 +213,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
199
213
|
- !ruby/object:Gem::Version
|
200
214
|
version: '0'
|
201
215
|
requirements: []
|
202
|
-
rubyforge_project:
|
203
|
-
rubygems_version: 2.2.
|
216
|
+
rubyforge_project:
|
217
|
+
rubygems_version: 2.2.2
|
204
218
|
signing_key:
|
205
219
|
specification_version: 4
|
206
220
|
summary: Configurability is a unified, unintrusive, assume-nothing configuration system
|
metadata.gz.sig
CHANGED
Binary file
|