Skip to content

Releases: azam/ulidj

2.0.0

30 May 21:17
0ef67e2

Choose a tag to compare

What's Changed

🏁 Release

⚠️ Breaking Changes

  • Updated target JDK from 1.7 to 11
    • v1.x will stay on JDK 1.7 with backports of relevant feature updates and bug fixes from v2.x whenever feasible
    • v1.x main branch will be main-v1 and development branch will be develop-v1

🆕 Enhancements

  • Implemented timestamp generation from java.time.Clock; current methods will still use System.currentTimeMillis()
  • Added methods with java.time.Clock parameters
    • ULID.random(Clock)
    • ULID.randomBinary(Clock)
    • ULID.randomULID(Clock)
    • ULID.random(Clock,Random)
    • ULID.randomBinary(Clock,Random)
    • ULID.randomULID(Clock,Random)
    • MonotonicULID(Clock)
    • MonotonicULID(Clock,Random)
  • Added module-info.java
  • Updated to Junit 5
  • Updated tests to match Junit 5

📝 Others

  • Updated Maven plugins to match target JDK
  • Updated Github actions to match target JDK

Full Changelog: 1.1.0...2.0.0

1.1.0

24 May 19:48
345f919

Choose a tag to compare

What's Changed

🏁 Release

⚠️ Breaking Changes

  • ULID and MonotonicULID are now final classes
  • These methods now check for ULID validity and throws IllegalArgumentException if not valid
    • ULID.generate(long,byte[])
    • ULID.generateBinary(long,byte[])
    • ULID.getTimestamp(CharSequence)
    • ULID.getTimestampBinary(byte[])
    • ULID.getEntropy(CharSequence)
    • ULID.getEntropyBinary(byte[])
    • ULID.toBinary(CharSequence)
    • ULID.fromBinary(byte[])

🆕 Enhancements

  • Immutable, sortable ULID instance, instantiable from the following methods
    • ULID.randomULID()
    • ULID.randomULID(Random)
    • ULID.parseULID(CharSequence)
    • ULID.parseULID(byte[])
    • ULID.generateULID(long,byte[])
    • MonotonicULID.randomULID()
  • Static method on MonotonicULID to generate ULID values from a default singleton MonotonicULID instance
    • MonotonicULID.random()
    • MonotonicULID.randomBinary()
    • MonotonicULID.randomULID()
  • These methods now uses a static lazily instantiated instance of java.security.SecureRandom for performance
    • ULID.random()
    • ULID.randomBinary()
    • new MonotonicULID()

🕷 Fixes

  • Fix MonotonicULID last entropy increment being persisted on entropy overflow

📝 Others

  • Remove dependabot by @azam in #23
  • Added JaCoCo
  • Added Maven site generation
  • Updated documentation
  • Added gh-pages for Maven site generation and benchmark results link

Full Changelog: 1.0.5...1.1.0

Release 1.0.5

06 May 10:25
8f24558

Choose a tag to compare

What's Changed

🏁 Release

📝 Others

  • Update Github Actions
  • Change compiler source and target on JDK higher than 17 for tests
  • Delegate source parameter for javadoc to maven.compiler.source
  • Add tests as JDK 11, 17 and 21
  • Update Maven plugins. Update junit version. Fix wrong values.
  • Add devcontainer
  • Fix javadoc warnings
  • Add jmh benchmark

Full Changelog: 1.0.4...1.0.5

Release 1.0.4

14 Apr 04:43
1490a73

Choose a tag to compare

What's Changed

🏁 Release

🆕 Enhancements

  • Implement ULID binary representation by @azam in #11

Full Changelog: 1.0.3...1.0.4

Release 1.0.3

14 Apr 00:23
e93d1e0

Choose a tag to compare

What's Changed

🏁 Release

🆕 Enhancements

  • Implement monotonic ULID by @azam in #9

Full Changelog: 1.0.2...1.0.3

Release 1.0.2

13 Apr 21:21
aac9049

Choose a tag to compare

What's Changed

🛠️ Dependencies

📝 Others

New Contributors

Full Changelog: 1.0.1...1.0.2

1.0.0

07 Jan 17:08

Choose a tag to compare

Be, and it is