Skip to content

Releases: muyo/sno

1.2.1

12 Nov 01:59
a543713
Compare
Choose a tag to compare

Fixes

  • Go 1.17: ostime / runtime.walltime linking error (#4)

1.2.0

25 Apr 19:02
Compare
Choose a tag to compare

Fixes

  • Invalid CPUID calls on amd64 causing runtime detection of SSE2 to incorrectly fail (#1, #3)

Changes

  • MaxPartition (const uint16) is now public (f983e7d);

Performance

  • Small reduction in the memory size of Generators (816e22c)
  • Minor speedups in generation due to a refactor of internal time sourcing (9e60f16, 0b6f5dc and others)
  • Minor speedups in JSON encoding (13589aa) and decoding in general (22a9c84)

1.1.0

30 Mar 12:02
Compare
Choose a tag to compare

Fixes

  • Encoding on non-amd64 architectures (2fb605d)

Changes

  • Removed dependency on crypto/rand (d122e96)
    It may have been misleading, given there is nothing cryptographically secure about snos. Generators created without a Snapshot, eg. without being given a Partition, now receive a Partition monotonically increasing from a time based seed created at init time. This allows for the creation of 65355 generators guaranteed to not have colliding Partitions during the lifetime of the process, when they are not manually given.

    This does not affect Generators created from Snapshots where the Partitions are managed by the user.

    The change additionally results in reduced binary sizes.

Performance

  • ID generation is now slightly faster using compiler optimized stores and other minor changes (178e318, 6653737)
  • ID.Time() and ID.Timestamp() are now slightly faster using compiler optimized loads (588bb00)

1.0.0

28 Feb 02:59
Compare
Choose a tag to compare
v1.0.0