Path to this page:
Subject: CVS commit: pkgsrc/devel/ruby-iniparse
From: Takahiro Kambe
Date: 2020-03-08 15:17:56
Message id: 20200308141756.ABAA1FB27@cvs.NetBSD.org
Log Message:
devel/ruby-iniparse: update to 1.5.0
Update ruby-iniparse to 1.5.0.
### 1.5.0
* OptionCollection no longer yields duplicate keys as an array, but instead \
yields each key in turn.
For example, given an INI file:
[test]
a = 1
a = 2
b = 3
IniParse would previously yield a single "a" key: an array \
containing two `Line`s:
doc['test'].map { |line| line }
# => [[<a = 1>, <a = 2>], <b = 3>]
Instead, each key/value pair will be yielded in turn:
doc['test'].map { |line| line }
# => [<a = 1>, <a = 2>, <b = 3>]
Directly accessing values via `[]` will still return an array of values as before:
doc['test']['a']
# => [1, 2]
* LineCollection#each may be called without a block, returning an Enumerator.
doc = IniParse.parse(<<~EOF)
[test]
a = x
b = y
EOF
doc[test].each
# => #<Enumerator: ...>
This allows for chaining as in the standard library:
doc['test'].map.with_index { |a, i| { index: i, value: a.value } }
# => [{ index: 0, value: 'x' }, { index: 1, value: 'y' }]
Files: