key_tree 0.5.2 → 0.8.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.
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