Releases: itchyny/base58-go
Releases · itchyny/base58-go
Release v0.2.2
- Update Go requirement to 1.22
- Remove dependency on go-flags to reduce executable size
- Use posix style flag on Windows
Release v0.2.1
- Bump up dependencies
- Improve zsh completion
Release v0.2.0
This release changes the library implementation largely. Previously this
library was implemented using big integers, but it costs both time and memory.
From this release, I re-implemented all the logic without big integers for
performance improvement. I have tested carefully, very carefully, including
fuzzing for hours, not to introduce any regression. However, I don't want it to
happen, but there might be some unexpected changes. Make sure to report issues
as soon as you find any regression.
Here's performance comparison against v0.1.0.
name old time/op new time/op delta
Encode-8 12.5µs ± 0% 3.9µs ± 1% -68.67% (p=0.001 n=7+7)
Decode-8 11.2µs ± 1% 4.5µs ± 1% -59.47% (p=0.001 n=7+7)
name old alloc/op new alloc/op delta
Encode-8 3.70kB ± 0% 2.30kB ± 0% -37.66% (p=0.001 n=7+7)
Decode-8 3.89kB ± 0% 2.54kB ± 0% -34.57% (p=0.001 n=7+7)
name old allocs/op new allocs/op delta
Encode-8 201 ± 0% 129 ± 0% -35.82% (p=0.001 n=7+7)
Decode-8 303 ± 0% 135 ± 0% -55.45% (p=0.001 n=7+7)
Also I added EncodeUint64
and DecodeUint64
.
Use these methods if you want to convert between encoded bytes and uint64
.
Release v0.1.0
bump up version to 0.1.0