63 Commits

Author SHA1 Message Date
Bruce Marriner
c3f5528809 Check more, Check against Go 11.x/12.x 2019-04-10 01:06:02 +00:00
Bruce Marriner
1d51515945 An attempt at catching race issues 2019-04-10 01:02:19 +00:00
Bruce
68117e6bbe
Merge pull request #13 from NineRec/patch-1
Update error log for wrong node id.
2018-04-11 20:05:44 -05:00
龚尚
c64f7c8e01
Int64 to string. 2018-04-07 14:51:49 +08:00
龚尚
4ca43961f4
Update error log for wrong node id.
When custom NodeBits was set, the node number may bigger than 1023.
2018-04-07 14:46:40 +08:00
Bruce Marriner
f613937295 Document Custom Format options 2018-03-19 21:20:30 +00:00
Bruce Marriner
a685984f2e Allow custom NodeBits and StepBits to be set.
You can now set the snowflake.NodeBits or snowflake.StepBits to
custom values.  Please keep in mind you have a total of 22 bits
available to use between these two values.  Setting these to
inappropriate values may break things.  So take care to understand
what you're doing here.

This is not the best way of doing this but it does not break
API compatibility with existing users of this package. I will
release a version 2 of this package which will implement this
feature better.
2018-03-19 21:07:06 +00:00
Bruce
07b209d699
Merge pull request #10 from freman/master
Use constants for bits, for easier changing
2018-03-19 15:35:01 -05:00
Bruce Marriner
be5fa11f4f Lets try a code block 2018-03-19 19:39:52 +00:00
Bruce Marriner
6ed9a16198 Added a visual reference of snowflake format 2018-03-19 19:39:03 +00:00
Bruce Marriner
0516e7e5cf Added Base32 and ParseBase32 methods.
These methods are nearly identical to the base58 methods, except that
these use the z-base-32 character set.
2018-03-12 20:56:32 +00:00
Bruce Marriner
7d434bc4d8 Move things around. 2018-02-01 02:42:33 +00:00
Bruce Marriner
18b124e694 Added more details on ID format 2018-02-01 02:30:24 +00:00
Bruce Marriner
812a8db720 Hide node Mutex 2018-02-01 01:25:24 +00:00
Shannon Wynter
3a07db85c1 Use constants for bits, for easier changing 2017-10-01 22:07:22 +10:00
Bruce
1c0147d077 Merge pull request #8 from mixer/fix-decode-panic
Fix panic during UnmarshalJSON
2017-06-29 22:27:14 -05:00
Connor Peet
d3bf1ae440
Fix panic during UnmarshalJSON 2017-06-16 09:02:47 -07:00
Bruce Marriner
02cc386c18 Add Status 2017-02-21 10:07:16 -06:00
Bruce Marriner
734cbe306e Added Base58 encoder/decoder 2017-02-21 09:58:29 -06:00
Bruce Marriner
34b33bf22a Merge branch 'master' of https://github.com/bwmarrin/snowflake 2016-12-04 08:16:30 -06:00
Bruce Marriner
d80550bec3 Fixed readme example. 2016-12-04 08:16:12 -06:00
Bruce
3107b1dd8c Merge pull request #4 from WatchBeam/intbytes
Add a method to encode the snowflake as a byte slice
2016-08-12 13:28:05 -05:00
Connor Peet
95d961a628
Add a method to encode the snowflake as a byte slice 2016-07-26 11:35:39 -07:00
Bruce
cd8e42350a Merge pull request #2 from zeroZshadow/master
Fix UnmarshalJSON benchmark & Optimize MarshalJSON a little more
2016-06-10 21:24:27 -05:00
zeroZshadow
8abf09e1ce Allocate the maximum in 1 go for marshaling 2016-06-11 04:20:04 +02:00
zeroZshadow
bb0fb2c0f5 Fix UnmarshalJSON benchmark
Optimize MarshalJSON a little more
2016-06-11 03:48:54 +02:00
Bruce Marriner
c676f9e9ea Correct node error. It's 0-1023! 2016-06-10 18:54:48 -05:00
Bruce Marriner
00c61c48d0 Use nodeShift instead of 12. 2016-06-10 18:51:24 -05:00
Bruce Marriner
94a47d42a7 Don't defer.
This dropped (on my system) the Generate benchmark from about
285-330ns/op down to 244ns/op.  Yay!
2016-06-10 18:20:30 -05:00
Bruce
82eab22d0d Merge pull request #1 from zeroZshadow/master
Added tests, optimized MarshalJSON, removed unused error from Generate
2016-06-10 17:59:15 -05:00
zeroZshadow
7c362b8bf3 oops, left some experiment stuff in 2016-06-10 20:35:59 +02:00
zeroZshadow
d8933e1ea5 Added tests for MarshalJSON and UnmarshalJSON
Reduced allocation of MarshalJSON from 65 to 40 B/op
2016-06-10 20:33:36 +02:00
Bruce Marriner
348dc1e55f Lint. 2016-06-04 15:52:39 -05:00
Bruce Marriner
db0acce1d0 Linting, Optimizations, Cleanup, More Benchmarks. 2016-06-04 15:50:03 -05:00
Bruce Marriner
0fdfe21511 Removed http.Handler interface
Including this added 60KB to the compiled library which I do not think
is worth it just to include a helper function consisting of about 4
lines of code.
2016-06-01 16:58:13 -05:00
Bruce Marriner
bdcd2f75e6 Added http.Handler interface 2016-06-01 16:49:10 -05:00
Bruce Marriner
97d16a5921 Fixed package name in test file 2016-06-01 16:15:57 -05:00
Bruce Marriner
bf4c51fc2b Rename to snowflake 2016-06-01 16:12:53 -05:00
Bruce Marriner
7e351e0315 Shorten package comment 2016-06-01 16:07:43 -05:00
Bruce Marriner
62c0e8458e readme's are hard work. 2016-06-01 16:03:53 -05:00
Bruce Marriner
f2e8d92661 Fix badge 2016-06-01 15:58:14 -05:00
Bruce Marriner
229dec8980 Mention Discord Gophers 2016-06-01 15:56:22 -05:00
Bruce Marriner
2934ce581c Update readme. 2016-06-01 15:52:49 -05:00
Bruce Marriner
9d4cff4177 Remove fmt.Println 2016-06-01 15:51:35 -05:00
Bruce Marriner
8f788319b3 Update readme 2016-06-01 15:51:05 -05:00
Bruce Marriner
e2267e8327 Mention JSON Marshal/Unmarshal 2016-06-01 15:34:17 -05:00
Bruce Marriner
315fd24dfb Add Performance section 2016-06-01 15:33:04 -05:00
Bruce Marriner
8b60f34eef Clean up example usage 2016-06-01 15:17:09 -05:00
Bruce Marriner
b61ac3cab6 Add working example 2016-06-01 15:15:24 -05:00
Bruce Marriner
3f3735b65d Fix link, maybe. 2016-06-01 15:06:16 -05:00