Changes in 2.10.1 (May 11, 2025)
- No functional changes, slightly improved performance.

Changes in 2.10.0 (April 12, 2025)
- Improved performance, with noticeable gains on ARM architecture.
- Fixed compiler warnings and addressed undefined behavior.

Changes in 2.9.1 (March 19, 2025)
- No functional changes, resolved compiler warnings & undefined behavior.

Changes in 2.9.0 (March 16, 2025)
- Support for generalized suffix array (GSA) construction.
- Support for longest common prefix array (LCP) construction for generalized suffix array (GSA).

Changes in 2.8.7 (January 16, 2025)
- Restore the input array after suffix array construction (libsais64 & libsais16x64).

Changes in 2.8.6 (November 18, 2024)
- Fixed out-of-bound memory access issue for large inputs.

Changes in 2.8.5 (July 31, 2024)
- Miscellaneous changes to reduce compiler warnings about implicit functions.

Changes in 2.8.4 (June 13, 2024)
- Additional OpenMP acceleration (libsais16 & libsais16x64).

Changes in 2.8.3 (June 11, 2024)
- Implemented suffix array construction of a long 16-bit array (libsais16x64).

Changes in 2.8.2 (May 27, 2024)
- Implemented suffix array construction of a long 64-bit array (libsais64).

Changes in 2.8.1 (April 5, 2024)
- Fixed out-of-bound memory access issue for large inputs (libsais64).

Changes in 2.8.0 (March 3, 2024)
- Implemented permuted longest common prefix array (PLCP) construction of an integer array.
- Fixed compilation error when compiling the library with OpenMP enabled.

Changes in 2.7.5 (February 26, 2024)
- Improved performance of suffix array and burrows wheeler transform construction on degenerate inputs.

Changes in 2.7.4 (February 23, 2024)
- Resolved strict aliasing violation resulted in invalid code generation by Intel compiler.

Changes in 2.7.3 (April 21, 2023)
- CMake script for library build and integration with other projects.

Changes in 2.7.2 (April 18, 2023)
- Fixed out-of-bound memory access issue for large inputs (libsais64).

Changes in 2.7.1 (June 19, 2022)
- Improved cache coherence for ARMv8 architecture.

Changes in 2.7.0 (April 12, 2022)
- Support for longest common prefix array (LCP) construction.

Changes in 2.6.5 (January 1, 2022)
- Exposed functions to construct suffix array of a given integer array.
- Improved detection of various compiler intrinsics.
- Capped free space parameter to avoid crashing due to 32-bit integer overflow.

Changes in 2.6.0 (October 21, 2021)
- libsais16 for 16-bit inputs.

Changes in 2.5.0 (October 15, 2021)
- Support for optional symbol frequency tables.

Changes in 2.4.0 (July 14, 2021)
- Reverse Burrows-Wheeler transform.

Changes in 2.3.0 (June 23, 2021)
- Burrows-Wheeler transform with auxiliary indexes.

Changes in 2.2.0 (April 27, 2021)
- libsais64 for inputs larger than 2GB.

Changes in 2.1.0 (April 19, 2021)
- Additional OpenMP acceleration.

Changes in 2.0.0 (April 4, 2021)
- OpenMP acceleration.

Changes in 1.0.0 (February 23, 2021)
- Initial Release.
