key_tree 0.5.2 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
data/.travis.yml DELETED
@@ -1,5 +0,0 @@
1
- sudo: false
2
- language: ruby
3
- rvm:
4
- - 2.5.0
5
- before_install: gem install bundler -v 1.16.0
data/RELEASE_NOTES.md DELETED
@@ -1,97 +0,0 @@
1
- # Release Notes
2
-
3
- ## v0.5.2 – 2018-05-19
4
-
5
- ### Bug fixes
6
-
7
- #### Conform to Hash#fetch API
8
- `Tree#fetch` confused its block argument with `#default_proc`, but they
9
- have different arguments, so that didn't work out well.
10
-
11
- * 0bd0a6e8 Use proper method to retreive values from trees
12
- * 14128a6a Conform to Hash#fetch API
13
-
14
- ## v0.5.1 – 2018-05-19
15
-
16
- ### New methods
17
-
18
- * `KeyTree::Tree#default_key?(key)`
19
- * `KeyTree::Tree#format(fmtstr)`
20
- * `KeyTree::Tree#to_h(string_keys: false)`
21
- * `KeyTree::Tree#to_json`
22
- * `KeyTree::Tree#to_yaml`
23
-
24
- ### Bug fixes
25
-
26
- #### Make forests aware of default values in trees
27
-
28
- Ensure that forests pick up default values from a tree.
29
-
30
- * ebd1cb06 Return trees and forests untouched
31
- * 3451a430 Propagate default_proc in fetch
32
- * e121a4c4 Consider trees to have a key if #default_key?
33
- * 50bc56ec Detect if a default_proc yields a key value
34
-
35
- ### New features
36
-
37
- #### Key tree content exporters
38
-
39
- Support for exporting the contents of a key tree to Hash, JSON, and YAML.
40
- Also includes a convenience string formatter, that fills format strings
41
- with values from a `Tree`.
42
-
43
- * 9b5f05f0 Make exported hash key format selectable
44
- * e3434d7e Add custom format method
45
- * fa6a9b16 Serialize the contents of a tree to json or yaml
46
- * 3fc6466b Convert a tree back into nested hashes
47
- * e5aecd8b Split symbols into key paths
48
-
49
- ## v0.5.0 – 2018-04-17
50
-
51
- ### Changed methods
52
-
53
- * `KeyTree.load(type, serialization, prefix: nil)`
54
- * `KeyTree::Forest#[key] { |key, original, incoming| }`
55
- * `KeyTree::Forest#fetch(key) { |key, original, incoming| }`
56
- * `KeyTree::Forest#flatten { |key, original, incoming| }`
57
- * `KeyTree::Tree#merge { |key, original, incoming| }`
58
- * `KeyTree::Tree#merge! { |key, original, incoming| }`
59
-
60
- ### New methods
61
-
62
- * `KeyTree::Loader.fallback(loader)`
63
-
64
- ### New features
65
-
66
- #### Merge value selection
67
- Improve merge related methods in `KeyTree::Tree`, and `KeyTree::Forest`
68
- to take a `Hash#merge` style block argument, to allow control of the result when a key i present on both sides of a merge operation.
69
-
70
- * 083b25c Add merge value selector to Forest#[]
71
- * e813e55 Add merge value selection to Forest#fetch
72
- * 581bc82 Add method to get list of trees with key
73
- * 0f66f03 Pass merge value selector via Forest#flatten
74
- * df9b80e Pass any merge selection block to super
75
-
76
- #### Key prefix for file loading
77
- When a key file has a name like `prefix@name.ext`, the `prefix` part will be prepended to all keys loaded from the file.
78
-
79
- * fbe333a Changed call syntax for KeyTree.load
80
- * 595902c Load keytree with prefix from files with @ in name
81
- * d23a7e1 Allow prepending a prefix when loading keys
82
-
83
- #### Fallback for KeyTree loaders
84
- Allow a fallback class for handling loading of file types where no loader is specified, e.g. to ignore all files with unrecognized extension for `KeyTree.load_all`.
85
-
86
- * a9d096c Add tree loader fallback
87
-
88
- ### Bug fixes
89
-
90
- #### Proper breadth first flattening
91
-
92
- * ff327f2 Use tree enumarator for Forest#key? and #prefix?
93
- * 74fa15d Rewrite Forest#[]
94
- * 177de08 Use tree enumerator in Forest#[]
95
- * d161fe1 Use tree enumerator in Forest#flatten
96
- * b0c94df Add breadth-first enumerator for trees
97
- * 3468f28 Remove forest vs tree sorting nonsense