dry-configurable 0.11.4 → 0.11.5
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
- data/CHANGELOG.md +10 -0
- data/lib/dry/configurable/setting.rb +11 -1
- data/lib/dry/configurable/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f0faa56dea70f112144295394747175b526e116cdfd09d3ccfa047b85dd06b11
|
4
|
+
data.tar.gz: 48fc6304ef41ea05076765bbe8f7286e90ed69ee54b388650d3654b74b4ebfda
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9c6c284433350053c27e745a8bcb0a0c000c22d4fe684c39eeb20340d026b764f8d80ee155a30ba88af66f4e9ba1022e1572accfa5aff4657b463978534d964e
|
7
|
+
data.tar.gz: ed4d650fb3f2d7f92d05bad9575c452bf67138489a734e91ccc4fb6d9fa5932a6dee72430a84c7b2994b8d28bb42a6d7c4dda8e5b82e9ce51ac588a0888f1b2b
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,13 @@
|
|
1
|
+
## 0.11.5 2020-03-23
|
2
|
+
|
3
|
+
|
4
|
+
### Fixed
|
5
|
+
|
6
|
+
- When settings are copied or cloned, unevaluated values will no longer be copied. This prevents unintended crashes when settings have constructors expecting a certain type of value, but that value is yet to be provided (Fixed via #87) (@timriley)
|
7
|
+
|
8
|
+
|
9
|
+
[Compare v0.11.4...v0.11.5](https://github.com/dry-rb/dry-configurable/compare/v0.11.4...v0.11.5)
|
10
|
+
|
1
11
|
## 0.11.4 2020-03-16
|
2
12
|
|
3
13
|
|
@@ -62,11 +62,21 @@ module Dry
|
|
62
62
|
@options = options
|
63
63
|
end
|
64
64
|
|
65
|
+
# @api private
|
66
|
+
def input_defined?
|
67
|
+
!input.equal?(Undefined)
|
68
|
+
end
|
69
|
+
|
65
70
|
# @api private
|
66
71
|
def value
|
67
72
|
@value ||= evaluate
|
68
73
|
end
|
69
74
|
|
75
|
+
# @api private
|
76
|
+
def evaluated?
|
77
|
+
instance_variable_defined?(:@value)
|
78
|
+
end
|
79
|
+
|
70
80
|
# @api private
|
71
81
|
def nested(settings)
|
72
82
|
Nested.new(name, input: settings, **options)
|
@@ -107,7 +117,7 @@ module Dry
|
|
107
117
|
# @api private
|
108
118
|
def initialize_copy(source)
|
109
119
|
super
|
110
|
-
@value = source.value.dup if source.clonable_value?
|
120
|
+
@value = source.value.dup if source.input_defined? && source.clonable_value?
|
111
121
|
@options = source.options.dup
|
112
122
|
end
|
113
123
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dry-configurable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.11.
|
4
|
+
version: 0.11.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andy Holland
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-03-
|
11
|
+
date: 2020-03-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: concurrent-ruby
|