hocon 1.2.6 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/hocon/impl/config_impl.rb +18 -0
- data/lib/hocon/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b72330472361da172c31cf054a458eb71e6bc004
|
4
|
+
data.tar.gz: bd22529837380ddb9c7b63ec84992d072d8a037a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: bc23b613936d932858284d1e42d3c5467434f83ddcf4795af10223ed79644dad1351ea08159058c3ad9742d95b2c9ec317388b9c9653e5f68b5e7757935c44a6
|
7
|
+
data.tar.gz: 473ba874f373c765dddea6e7529a458e52d043b3b35cc191dc43aa04ad6a99a792fd5ba664e4812be3d5b1f5a1e9463ca2b1a3c85e1e5599f3450be8438d0cc8
|
data/CHANGELOG.md
CHANGED
@@ -237,9 +237,27 @@ class Hocon::Impl::ConfigImpl
|
|
237
237
|
def self.load_env_variables
|
238
238
|
env = ENV
|
239
239
|
m = {}
|
240
|
+
lists = {}
|
240
241
|
env.each do |key, value|
|
241
242
|
m[key] = Hocon::Impl::ConfigString::Quoted.new(
|
242
243
|
Hocon::Impl::SimpleConfigOrigin.new_simple("env var #{key}"), value)
|
244
|
+
# find env var arrays specified like FOO.0, FOO.1
|
245
|
+
if key =~ /^(.*)\.(\d+)$/
|
246
|
+
name, index = $1, Integer($2)
|
247
|
+
# values are added unordered
|
248
|
+
(lists[name] ||= {})[index] = value
|
249
|
+
end
|
250
|
+
end
|
251
|
+
|
252
|
+
lists.each do |key, values|
|
253
|
+
origin = Hocon::Impl::SimpleConfigOrigin.new_simple("env var list #{key}")
|
254
|
+
m[key] = Hocon::Impl::SimpleConfigList.new(
|
255
|
+
origin,
|
256
|
+
# out of order env vars FOO.1, FOO.0 are sorted here
|
257
|
+
values.sort.map do |v|
|
258
|
+
Hocon::Impl::ConfigString::Quoted.new(origin, v[1])
|
259
|
+
end
|
260
|
+
)
|
243
261
|
end
|
244
262
|
|
245
263
|
Hocon::Impl::SimpleConfigObject.new(
|
data/lib/hocon/version.rb
CHANGED