|
1 | 1 | # Changelog
|
2 | 2 |
|
| 3 | +## [v1.0.1](https://github.com/cabol/shards/tree/v1.0.1) (2020-11-07) |
| 4 | + |
| 5 | +[Full Changelog](https://github.com/cabol/shards/compare/v1.0.0...v1.0.1) |
| 6 | + |
| 7 | +**Fixed bugs:** |
| 8 | + |
| 9 | +- Paginated select/match raises `badarg` when used with large data |
| 10 | + [#59](https://github.com/cabol/shards/issues/59). |
| 11 | + |
| 12 | +**Implemented enhancements:** |
| 13 | + |
| 14 | +- Added property tests for base read/write commands. |
| 15 | + |
3 | 16 | ## [v1.0.0](https://github.com/cabol/shards/tree/v1.0.0) (2020-10-28)
|
4 | 17 |
|
5 | 18 | [Full Changelog](https://github.com/cabol/shards/compare/v0.6.2...v1.0.0)
|
6 | 19 |
|
7 | 20 | **Implemented enhancements:**
|
8 | 21 |
|
9 | 22 | - Make `shards` just a library to work locally and move `shards_dist` to a
|
10 |
| - [separate project/repo](https://github.com/cabol/shards_dist) [#52](https://github.com/cabol/shards/issues/52). |
| 23 | + [separate project/repo](https://github.com/cabol/shards_dist) |
| 24 | + [#52](https://github.com/cabol/shards/issues/52). |
11 | 25 | - Use the metadata ETS table for storing the partitions TIDs, instead of
|
12 | 26 | building atoms in runtime for table names [#55](https://github.com/cabol/shards/issues/55).
|
13 | 27 | - Refactor shards to use TIDs instead of names (atoms) for handling the
|
|
27 | 41 |
|
28 | 42 | **Closed issues:**
|
29 | 43 |
|
30 |
| -- Shards `0.6.2` doesn't compile on OTP 23.0.3 on OS X 10.15 [#48](https://github.com/cabol/shards/issues/48). |
| 44 | +- Shards `0.6.2` doesn't compile on OTP 23.0.3 on OS X 10.15 |
| 45 | + [#48](https://github.com/cabol/shards/issues/48). |
31 | 46 | - Migrate from pg2 to pg (OTP 23) [#47](https://github.com/cabol/shards/issues/47).
|
32 | 47 | - Support for `select_replace` [#45](https://github.com/cabol/shards/issues/45).
|
33 | 48 | - Fix `shards_dist` and `shards` specs to consider the case when `rpc` returns
|
|
43 | 58 |
|
44 | 59 | **Closed issues:**
|
45 | 60 |
|
46 |
| -- Rollback when `insert\_new` fails [\#46](https://github.com/cabol/shards/issues/46) |
| 61 | +- Rollback when `insert_new` fails [#46](https://github.com/cabol/shards/issues/46) |
47 | 62 |
|
48 | 63 | ## [v0.6.1](https://github.com/cabol/shards/tree/v0.6.1) (2019-11-05)
|
49 | 64 |
|
50 | 65 | [Full Changelog](https://github.com/cabol/shards/compare/v0.6.0...v0.6.1)
|
51 | 66 |
|
52 | 67 | **Closed issues:**
|
53 | 68 |
|
54 |
| -- Missing support for keypos [\#44](https://github.com/cabol/shards/issues/44) |
55 |
| -- update\_counter spec is not the same as ETS. [\#42](https://github.com/cabol/shards/issues/42) |
56 |
| -- Failed to start shard\_sup [\#41](https://github.com/cabol/shards/issues/41) |
| 69 | +- Missing support for keypos [#44](https://github.com/cabol/shards/issues/44) |
| 70 | +- `update_counter` spec is not the same as ETS. [#42](https://github.com/cabol/shards/issues/42) |
| 71 | +- Failed to start `shard_sup` [#41](https://github.com/cabol/shards/issues/41) |
57 | 72 |
|
58 | 73 | ## [v0.6.0](https://github.com/cabol/shards/tree/v0.6.0) (2018-09-02)
|
59 | 74 |
|
60 | 75 | [Full Changelog](https://github.com/cabol/shards/compare/v0.5.1...v0.6.0)
|
61 | 76 |
|
62 | 77 | **Implemented enhancements:**
|
63 | 78 |
|
64 |
| -- Improve documentation [\#39](https://github.com/cabol/shards/issues/39) |
| 79 | +- Improve documentation [#39](https://github.com/cabol/shards/issues/39) |
65 | 80 |
|
66 | 81 | ## [v0.5.1](https://github.com/cabol/shards/tree/v0.5.1) (2018-06-26)
|
67 | 82 |
|
68 | 83 | [Full Changelog](https://github.com/cabol/shards/compare/v0.5.0...v0.5.1)
|
69 | 84 |
|
70 | 85 | **Closed issues:**
|
71 | 86 |
|
72 |
| -- Issues on Erlang v21 [\#40](https://github.com/cabol/shards/issues/40) |
73 |
| -- Improve test coverage \(ideally 100%\) [\#38](https://github.com/cabol/shards/issues/38) |
| 87 | +- Issues on Erlang v21 [#40](https://github.com/cabol/shards/issues/40) |
| 88 | +- Improve test coverage \(ideally 100%\) [#38](https://github.com/cabol/shards/issues/38) |
74 | 89 |
|
75 | 90 | ## [v0.5.0](https://github.com/cabol/shards/tree/v0.5.0) (2017-07-11)
|
76 | 91 |
|
77 | 92 | [Full Changelog](https://github.com/cabol/shards/compare/v0.4.2...v0.5.0)
|
78 | 93 |
|
79 | 94 | **Implemented enhancements:**
|
80 | 95 |
|
81 |
| -- Improve `shards\_local:info/1,2` to be compliant with ETS functions [\#37](https://github.com/cabol/shards/issues/37) |
82 |
| -- Improve `file2tab` and `tab2file` in `shards\_local` to be compliant with ETS functions [\#36](https://github.com/cabol/shards/issues/36) |
83 |
| -- Improve `shards\_local` fix \#4 – `ordered\_set` support. [\#25](https://github.com/cabol/shards/issues/25) |
| 96 | +- Improve `shards_local:info/1,2` to be compliant with ETS functions |
| 97 | + [#37](https://github.com/cabol/shards/issues/37) |
| 98 | +- Improve `file2tab` and `tab2file` in `shards_local` to be compliant with ETS |
| 99 | + functions [#36](https://github.com/cabol/shards/issues/36) |
| 100 | +- Improve `shards_local` fix \#4 – `ordered_set` support. |
| 101 | + [#25](https://github.com/cabol/shards/issues/25) |
84 | 102 |
|
85 | 103 | **Closed issues:**
|
86 | 104 |
|
87 |
| -- Allows to register `shards\_sup` with custom name \(given as parameter\) [\#34](https://github.com/cabol/shards/issues/34) |
88 |
| -- file2tab,tab2file not working [\#33](https://github.com/cabol/shards/issues/33) |
| 105 | +- Allows to register `shards_sup` with custom name (given as parameter) |
| 106 | + [#34](https://github.com/cabol/shards/issues/34) |
| 107 | +- `file2tab`, `tab2file` not working [#33](https://github.com/cabol/shards/issues/33) |
89 | 108 |
|
90 | 109 | **Merged pull requests:**
|
91 | 110 |
|
92 |
| -- Improve README grammar [\#35](https://github.com/cabol/shards/pull/35) ([casidiablo](https://github.com/casidiablo)) |
| 111 | +- Improve README grammar [#35](https://github.com/cabol/shards/pull/35) |
| 112 | + ([casidiablo](https://github.com/casidiablo)) |
93 | 113 |
|
94 | 114 | ## [v0.4.2](https://github.com/cabol/shards/tree/v0.4.2) (2017-02-22)
|
95 | 115 |
|
96 | 116 | [Full Changelog](https://github.com/cabol/shards/compare/v0.4.1...v0.4.2)
|
97 | 117 |
|
98 | 118 | **Closed issues:**
|
99 | 119 |
|
100 |
| -- Implement `ets:rename/2` [\#32](https://github.com/cabol/shards/issues/32) |
101 |
| -- Fulfil ETS API for `shards\_local` [\#1](https://github.com/cabol/shards/issues/1) |
| 120 | +- Implement `ets:rename/2` [#32](https://github.com/cabol/shards/issues/32) |
| 121 | +- Fulfil ETS API for `shards_local` [#1](https://github.com/cabol/shards/issues/1) |
102 | 122 |
|
103 | 123 | ## [v0.4.1](https://github.com/cabol/shards/tree/v0.4.1) (2017-02-13)
|
104 | 124 |
|
105 | 125 | [Full Changelog](https://github.com/cabol/shards/compare/v0.4.0...v0.4.1)
|
106 | 126 |
|
107 | 127 | **Implemented enhancements:**
|
108 | 128 |
|
109 |
| -- Automatically distributed table setup when `shards:new/2` is called with opt `{nodes, \[node\(\)\]}` [\#28](https://github.com/cabol/shards/issues/28) |
110 |
| -- Implement `select/match` pagination ops for `shards\_dist` [\#16](https://github.com/cabol/shards/issues/16) |
| 129 | +- Automatically distributed table setup when `shards:new/2` is called with |
| 130 | + opt `{nodes, \[node\(\)\]}` [#28](https://github.com/cabol/shards/issues/28) |
| 131 | +- Implement `select/match` pagination ops for `shards_dist` |
| 132 | + [#16](https://github.com/cabol/shards/issues/16) |
111 | 133 |
|
112 | 134 | **Closed issues:**
|
113 | 135 |
|
114 |
| -- Implement `update\_counter` and `update\_element` in `shards\_dist` [\#31](https://github.com/cabol/shards/issues/31) |
115 |
| -- LRU Feature may be [\#29](https://github.com/cabol/shards/issues/29) |
| 136 | +- Implement `update_counter` and `update_element` in `shards_dist` |
| 137 | + [#31](https://github.com/cabol/shards/issues/31) |
| 138 | +- LRU Feature may be [#29](https://github.com/cabol/shards/issues/29) |
116 | 139 |
|
117 | 140 | ## [v0.4.0](https://github.com/cabol/shards/tree/v0.4.0) (2017-02-10)
|
118 | 141 |
|
119 | 142 | [Full Changelog](https://github.com/cabol/shards/compare/v0.3.1...v0.4.0)
|
120 | 143 |
|
121 | 144 | **Implemented enhancements:**
|
122 | 145 |
|
123 |
| -- Allow to create the `state` passing the rest of its attributes [\#30](https://github.com/cabol/shards/issues/30) |
| 146 | +- Allow to create the `state` passing the rest of its attributes |
| 147 | + [#30](https://github.com/cabol/shards/issues/30) |
124 | 148 |
|
125 | 149 | **Closed issues:**
|
126 | 150 |
|
127 |
| -- Add performance and scalability tests [\#2](https://github.com/cabol/shards/issues/2) |
| 151 | +- Add performance and scalability tests [#2](https://github.com/cabol/shards/issues/2) |
128 | 152 |
|
129 | 153 | ## [v0.3.1](https://github.com/cabol/shards/tree/v0.3.1) (2016-09-08)
|
130 | 154 |
|
131 | 155 | [Full Changelog](https://github.com/cabol/shards/compare/v0.3.0...v0.3.1)
|
132 | 156 |
|
133 | 157 | **Implemented enhancements:**
|
134 | 158 |
|
135 |
| -- Modify `shards:new/2` function to return only the table name in case of success [\#27](https://github.com/cabol/shards/issues/27) |
| 159 | +- Modify `shards:new/2` function to return only the table name in case of |
| 160 | + success [#27](https://github.com/cabol/shards/issues/27) |
136 | 161 |
|
137 | 162 | ## [v0.3.0](https://github.com/cabol/shards/tree/v0.3.0) (2016-08-02)
|
138 | 163 |
|
139 | 164 | [Full Changelog](https://github.com/cabol/shards/compare/v0.2.0...v0.3.0)
|
140 | 165 |
|
141 | 166 | **Implemented enhancements:**
|
142 | 167 |
|
143 |
| -- Allow to call `shards\_local` without the state – using a default state. [\#23](https://github.com/cabol/shards/issues/23) |
144 |
| -- Unify `pick\_shard\_fun` and `pick\_node\_fun` in a single spec [\#22](https://github.com/cabol/shards/issues/22) |
145 |
| -- Separate `shards` from specific consistent hashing implementation. [\#21](https://github.com/cabol/shards/issues/21) |
| 168 | +- Allow to call `shards_local` without the state – using a default state. |
| 169 | + [#23](https://github.com/cabol/shards/issues/23) |
| 170 | +- Unify `pick_shard_fun` and `pick_node_fun` in a single spec |
| 171 | + [#22](https://github.com/cabol/shards/issues/22) |
| 172 | +- Separate `shards` from specific consistent hashing implementation. |
| 173 | + [#21](https://github.com/cabol/shards/issues/21) |
146 | 174 |
|
147 | 175 | **Closed issues:**
|
148 | 176 |
|
149 |
| -- Remove `auto\_eject\_nodes` property from `state` – it isn't being used [\#24](https://github.com/cabol/shards/issues/24) |
150 |
| -- Fix `shards` to work well with `ordered\_set` tables. [\#4](https://github.com/cabol/shards/issues/4) |
| 177 | +- Remove `auto_eject_nodes` property from `state` – it isn't being used |
| 178 | + [#24](https://github.com/cabol/shards/issues/24) |
| 179 | +- Fix `shards` to work well with `ordered_set` tables. |
| 180 | + [#4](https://github.com/cabol/shards/issues/4) |
151 | 181 |
|
152 | 182 | ## [v0.2.0](https://github.com/cabol/shards/tree/v0.2.0) (2016-07-10)
|
153 | 183 |
|
154 | 184 | [Full Changelog](https://github.com/cabol/shards/compare/v0.1.0...v0.2.0)
|
155 | 185 |
|
156 | 186 | **Implemented enhancements:**
|
157 | 187 |
|
158 |
| -- Modify `shards\_local` to avoid additional table types, handle a flag `sharded` instead. [\#10](https://github.com/cabol/shards/issues/10) |
159 |
| -- Make distribution function \(pick none/shard\) configurable. [\#9](https://github.com/cabol/shards/issues/9) |
160 |
| -- Implement sharding at global level. [\#3](https://github.com/cabol/shards/issues/3) |
| 188 | +- Modify `shards_local` to avoid additional table types, handle a flag |
| 189 | + `sharded` instead. [#10](https://github.com/cabol/shards/issues/10) |
| 190 | +- Make distribution function \(pick none/shard\) configurable. |
| 191 | + [#9](https://github.com/cabol/shards/issues/9) |
| 192 | +- Implement sharding at global level. [#3](https://github.com/cabol/shards/issues/3) |
161 | 193 |
|
162 | 194 | **Closed issues:**
|
163 | 195 |
|
164 |
| -- OTP \< 18 not supported [\#13](https://github.com/cabol/shards/issues/13) |
165 |
| -- rebar2 compatibility [\#12](https://github.com/cabol/shards/issues/12) |
| 196 | +- OTP \< 18 not supported [#13](https://github.com/cabol/shards/issues/13) |
| 197 | +- rebar2 compatibility [#12](https://github.com/cabol/shards/issues/12) |
166 | 198 |
|
167 | 199 | **Merged pull requests:**
|
168 | 200 |
|
169 |
| -- General fixes and refactoring. [\#19](https://github.com/cabol/shards/pull/19) ([cabol](https://github.com/cabol)) |
170 |
| -- v0.2.0 [\#18](https://github.com/cabol/shards/pull/18) ([cabol](https://github.com/cabol)) |
171 |
| -- Preparing v0.2.0. [\#17](https://github.com/cabol/shards/pull/17) ([cabol](https://github.com/cabol)) |
172 |
| -- V0.1.1 [\#15](https://github.com/cabol/shards/pull/15) ([cabol](https://github.com/cabol)) |
173 |
| -- Enhancements and fix issue \#13. [\#14](https://github.com/cabol/shards/pull/14) ([cabol](https://github.com/cabol)) |
| 201 | +- General fixes and refactoring. [#19](https://github.com/cabol/shards/pull/19) ([cabol](https://github.com/cabol)) |
| 202 | +- v0.2.0 [#18](https://github.com/cabol/shards/pull/18) ([cabol](https://github.com/cabol)) |
| 203 | +- Preparing v0.2.0. [#17](https://github.com/cabol/shards/pull/17) ([cabol](https://github.com/cabol)) |
| 204 | +- v0.1.1 [#15](https://github.com/cabol/shards/pull/15) ([cabol](https://github.com/cabol)) |
| 205 | +- Enhancements and fix issue \#13. [#14](https://github.com/cabol/shards/pull/14) ([cabol](https://github.com/cabol)) |
174 | 206 |
|
175 | 207 | ## [v0.1.0](https://github.com/cabol/shards/tree/v0.1.0) (2016-05-19)
|
176 | 208 |
|
177 | 209 | [Full Changelog](https://github.com/cabol/shards/compare/765c5e9f6e350b46076d8a525ac0d18fba909e27...v0.1.0)
|
178 | 210 |
|
179 | 211 | **Closed issues:**
|
180 | 212 |
|
181 |
| -- Operation of the shards:info/2 does not match [\#8](https://github.com/cabol/shards/issues/8) |
| 213 | +- Operation of the shards:info/2 does not match [#8](https://github.com/cabol/shards/issues/8) |
182 | 214 |
|
183 | 215 | **Merged pull requests:**
|
184 | 216 |
|
185 |
| -- Fix README. [\#7](https://github.com/cabol/shards/pull/7) ([cabol](https://github.com/cabol)) |
186 |
| -- Refactor shards\_local to handle 'state' and avoid to call ETS control table. [\#6](https://github.com/cabol/shards/pull/6) ([cabol](https://github.com/cabol)) |
187 |
| -- Implemented distributed shards. [\#5](https://github.com/cabol/shards/pull/5) ([cabol](https://github.com/cabol)) |
188 |
| - |
| 217 | +- Fix README. [#7](https://github.com/cabol/shards/pull/7) ([cabol](https://github.com/cabol)) |
| 218 | +- Refactor shards_local to handle 'state' and avoid to call ETS control table. |
| 219 | + [#6](https://github.com/cabol/shards/pull/6) ([cabol](https://github.com/cabol)) |
| 220 | +- Implemented distributed shards. [#5](https://github.com/cabol/shards/pull/5) |
| 221 | + ([cabol](https://github.com/cabol)) |
189 | 222 |
|
190 | 223 |
|
191 | 224 | \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
|
0 commit comments