Skip to content

Commit 63c94b3

Browse files
committed
Version bump to v1.0.1
1 parent 8cfc351 commit 63c94b3

File tree

4 files changed

+82
-48
lines changed

4 files changed

+82
-48
lines changed

CHANGELOG.md

+77-44
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,27 @@
11
# Changelog
22

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+
316
## [v1.0.0](https://github.com/cabol/shards/tree/v1.0.0) (2020-10-28)
417

518
[Full Changelog](https://github.com/cabol/shards/compare/v0.6.2...v1.0.0)
619

720
**Implemented enhancements:**
821

922
- 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).
1125
- Use the metadata ETS table for storing the partitions TIDs, instead of
1226
building atoms in runtime for table names [#55](https://github.com/cabol/shards/issues/55).
1327
- Refactor shards to use TIDs instead of names (atoms) for handling the
@@ -27,7 +41,8 @@
2741

2842
**Closed issues:**
2943

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).
3146
- Migrate from pg2 to pg (OTP 23) [#47](https://github.com/cabol/shards/issues/47).
3247
- Support for `select_replace` [#45](https://github.com/cabol/shards/issues/45).
3348
- Fix `shards_dist` and `shards` specs to consider the case when `rpc` returns
@@ -43,149 +58,167 @@
4358

4459
**Closed issues:**
4560

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)
4762

4863
## [v0.6.1](https://github.com/cabol/shards/tree/v0.6.1) (2019-11-05)
4964

5065
[Full Changelog](https://github.com/cabol/shards/compare/v0.6.0...v0.6.1)
5166

5267
**Closed issues:**
5368

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)
5772

5873
## [v0.6.0](https://github.com/cabol/shards/tree/v0.6.0) (2018-09-02)
5974

6075
[Full Changelog](https://github.com/cabol/shards/compare/v0.5.1...v0.6.0)
6176

6277
**Implemented enhancements:**
6378

64-
- Improve documentation [\#39](https://github.com/cabol/shards/issues/39)
79+
- Improve documentation [#39](https://github.com/cabol/shards/issues/39)
6580

6681
## [v0.5.1](https://github.com/cabol/shards/tree/v0.5.1) (2018-06-26)
6782

6883
[Full Changelog](https://github.com/cabol/shards/compare/v0.5.0...v0.5.1)
6984

7085
**Closed issues:**
7186

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)
7489

7590
## [v0.5.0](https://github.com/cabol/shards/tree/v0.5.0) (2017-07-11)
7691

7792
[Full Changelog](https://github.com/cabol/shards/compare/v0.4.2...v0.5.0)
7893

7994
**Implemented enhancements:**
8095

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)
84102

85103
**Closed issues:**
86104

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)
89108

90109
**Merged pull requests:**
91110

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))
93113

94114
## [v0.4.2](https://github.com/cabol/shards/tree/v0.4.2) (2017-02-22)
95115

96116
[Full Changelog](https://github.com/cabol/shards/compare/v0.4.1...v0.4.2)
97117

98118
**Closed issues:**
99119

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)
102122

103123
## [v0.4.1](https://github.com/cabol/shards/tree/v0.4.1) (2017-02-13)
104124

105125
[Full Changelog](https://github.com/cabol/shards/compare/v0.4.0...v0.4.1)
106126

107127
**Implemented enhancements:**
108128

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)
111133

112134
**Closed issues:**
113135

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)
116139

117140
## [v0.4.0](https://github.com/cabol/shards/tree/v0.4.0) (2017-02-10)
118141

119142
[Full Changelog](https://github.com/cabol/shards/compare/v0.3.1...v0.4.0)
120143

121144
**Implemented enhancements:**
122145

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)
124148

125149
**Closed issues:**
126150

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)
128152

129153
## [v0.3.1](https://github.com/cabol/shards/tree/v0.3.1) (2016-09-08)
130154

131155
[Full Changelog](https://github.com/cabol/shards/compare/v0.3.0...v0.3.1)
132156

133157
**Implemented enhancements:**
134158

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)
136161

137162
## [v0.3.0](https://github.com/cabol/shards/tree/v0.3.0) (2016-08-02)
138163

139164
[Full Changelog](https://github.com/cabol/shards/compare/v0.2.0...v0.3.0)
140165

141166
**Implemented enhancements:**
142167

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)
146174

147175
**Closed issues:**
148176

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)
151181

152182
## [v0.2.0](https://github.com/cabol/shards/tree/v0.2.0) (2016-07-10)
153183

154184
[Full Changelog](https://github.com/cabol/shards/compare/v0.1.0...v0.2.0)
155185

156186
**Implemented enhancements:**
157187

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)
161193

162194
**Closed issues:**
163195

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)
166198

167199
**Merged pull requests:**
168200

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))
174206

175207
## [v0.1.0](https://github.com/cabol/shards/tree/v0.1.0) (2016-05-19)
176208

177209
[Full Changelog](https://github.com/cabol/shards/compare/765c5e9f6e350b46076d8a525ac0d18fba909e27...v0.1.0)
178210

179211
**Closed issues:**
180212

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)
182214

183215
**Merged pull requests:**
184216

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))
189222

190223

191224
\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*

README.md

+3-2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
[![Codecov](https://codecov.io/gh/cabol/shards/branch/master/graphs/badge.svg)](https://codecov.io/gh/cabol/shards/branch/master/graphs/badge.svg)
1111
[![Hex Version](https://img.shields.io/hexpm/v/shards.svg)](https://hex.pm/packages/shards)
1212
[![Docs](https://img.shields.io/badge/docs-hexpm-blue.svg)](https://hexdocs.pm/shards)
13+
[![License](https://img.shields.io/hexpm/l/shards.svg)](LICENSE)
1314

1415
Why might we need **Sharding/Partitioning** for the ETS tables? The main reason
1516
is to keep the lock contention under control enabling ETS tables to scale out
@@ -43,7 +44,7 @@ In your `rebar.config`:
4344

4445
```erlang
4546
{deps, [
46-
{shards, "1.0.0"}
47+
{shards, "1.0.1"}
4748
]}.
4849
```
4950

@@ -120,4 +121,4 @@ ensure all checks run successfully.
120121

121122
Copyright (c) 2016 Carlos Andres Bolaños R.A.
122123

123-
**Shards** source code is licensed under the [MIT License](LICENSE.md).
124+
**Shards** source code is licensed under the [MIT License](LICENSE).

guides/getting-started.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ In your `rebar.config`:
2929

3030
```erlang
3131
{deps, [
32-
{shards, "1.0.0"}
32+
{shards, "1.0.1"}
3333
]}.
3434
```
3535

src/shards.app.src

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{application, shards, [
22
{description, "Erlang/Elixir library for partitioned or sharded ETS tables."},
3-
{vsn, "1.0.0"},
3+
{vsn, "1.0.1"},
44
{registered, []},
55
{applications, [
66
kernel,

0 commit comments

Comments
 (0)