Changelog
Synced from GitHub Releases.
-
v1.2.0 Toolchain refresh: Kotlin 2.3.20, Gradle 9.5.1, kbuild 1.2.1.
What's Changed
- chore: bump kbuild to 1.2.1 and gradle to 9.5.1 #7
Full Changelog: https://github.com/Eignex/kpermute/compare/v1.1.2...v1.2.0
-
v1.1.2 Patch release that fixes a broken publish in v1.1.1.
- fix: bump the com.eignex.kmp plugin to 1.1.4 to fix the broken release.
-
v1.1.1 Quality and tooling pass that splits interfaces into their own files, applies consistent formatting, and expands the set of published target platforms.
- refactor: move each public interface into its own source file.
- style: add an .editorconfig and apply project-wide formatting.
- ci: add a linter step to the GitHub Actions workflow.
- chore: update to the com.eignex.kmp plugin 1.1.1 and expand target platforms.
- ci: remove a redundant clean step from the release workflow.
-
v1.1.0 Restructures the project as a Kotlin Multiplatform library so the permutation APIs can be consumed beyond the JVM.
- build: migrate the build from JVM-only to Kotlin Multiplatform.
- docs: update the README and documentation links to reflect the KMP layout.
-
v1.0.1 Maintenance release that updates the toolchain, tidies the release pipeline, and renames the publishing org from eigenity to eignex.
- chore: update Kotlin and bump Gradle to 9.2.1.
- refactor: rename the group/publisher from eigenity to eignex.
- ci: simplify the release script and allow manual workflow runs.
- ci: fix credential and environment variable handling in the release workflow.
- docs: simplify README examples and refresh documentation.
-
v1.0.0 First public release of kpermute, a small Kotlin library that provides reversible bijective permutations over the full 32-bit Int range and the full 64-bit Long range, suitable for shuffling, ID obfuscation, and deterministic iteration without storing the permutation.
- feat: implement IntPermutation covering the full 2^32 range with encode/decode and an unchecked hot path.
- feat: add LongPermutation with a half-long variant, long utilities, and a factory method mirroring the int API.
- feat: add ArrayIntPermutation for small/degenerate sizes and shared range/list utilities.
- test: include extensive unit tests plus a statistical fuzzing test covering both int and long permutations.
- build: ship a Gradle build with signing, code coverage via Kover, and a GitHub Actions release workflow.