85 lines
3.0 KiB
Markdown
85 lines
3.0 KiB
Markdown
# Changelog
|
|
## [Unreleased]
|
|
|
|
## [0.1.5] - 2024-09-22
|
|
|
|
### Bug fixes
|
|
* Fix Undefined Behavior in WebAssembly SIMD128 (#86) (thanks @CryZe)
|
|
* Documentation and clippy fixes (thanks @rtfeldman, @jqnatividad, @rhysd)
|
|
|
|
### Performance
|
|
* WASM: Don't use u8x16_bitmask for ASCII Check (#79) (thanks @CryZe)
|
|
|
|
## [0.1.4] - 2022-04-02
|
|
|
|
### New features
|
|
* WASM (wasm32) support
|
|
|
|
### Improvements
|
|
* Make aarch64 SIMD implementation work on Rust 1.59/1.60 with create feature `aarch64_neon`
|
|
* For Rust Nightly the aarch64 SIMD implementation is enabled out of the box.
|
|
* Starting with Rust 1.61 the aarch64 SIMD implementation is expected to be enabled out of the box as well.
|
|
|
|
### Performance
|
|
* Prefetch was disabled for aarch64 since the requisite intrinsics have not been stabilized.
|
|
|
|
## [0.1.3] - 2021-05-14
|
|
### New features
|
|
* Low-level streaming validation API in `simdutf8::basic::imp`
|
|
|
|
## [0.1.2] - 2021-05-09
|
|
### New features
|
|
* Aarch64 support (e.g. Apple Silicon, Raspberry Pi 4, ...) with nightly Rust and crate feature `aarch64_neon`
|
|
|
|
### Performance
|
|
* Another speedup on pure ASCII data
|
|
* Aligned reads have been removed as the performance was worse overall.
|
|
* Prefetch is used selectively on AVX 2, where it provides a slight benefit on some Intel CPUs.
|
|
|
|
[Comparison vs v0.1.1 on x86-64](https://user-images.githubusercontent.com/3736990/117568946-7a2fdb00-b0c3-11eb-936e-358850f0a9ad.png)
|
|
|
|
### Other
|
|
* Refactored SIMD integration to allow easy implementation for new architectures
|
|
* Full test coverage
|
|
* Thoroughly fuzz-tested
|
|
|
|
## [0.1.1] - 2021-04-26
|
|
### Performance
|
|
* Large speedup on small inputs from delegation to std lib
|
|
* Up to 50% better peak throughput on ASCII
|
|
* `#[inline]` main entry points for a small general speedup.
|
|
|
|
[Benchmark against v0.1.0](https://user-images.githubusercontent.com/3736990/116128298-12dc5900-a6c9-11eb-8c23-a117b3e57edb.png)
|
|
|
|
### Other
|
|
* Make both Utf8Error variants implement `std::error::Error`
|
|
* Make `basic::Utf8Error` implement `core::fmt::Display`
|
|
* Document Minimum Supported Rust Version (1.38.0).
|
|
* Reduce package size.
|
|
* Documentation updates
|
|
|
|
## [0.1.0] - 2021-04-21
|
|
- Documentation updates only.
|
|
|
|
0.1.x releases will have API compatibility.
|
|
|
|
## [0.0.3] - 2021-04-21
|
|
- Documentation update only.
|
|
|
|
## [0.0.2] - 2021-04-20
|
|
- Documentation update only.
|
|
|
|
## [0.0.1] - 2021-04-20
|
|
- Initial release.
|
|
|
|
[Unreleased]: https://github.com/rusticstuff/simdutf8/compare/v0.1.5...HEAD
|
|
[0.1.5]: https://github.com/rusticstuff/simdutf8/compare/v0.1.4...v0.1.5
|
|
[0.1.4]: https://github.com/rusticstuff/simdutf8/compare/v0.1.3...v0.1.4
|
|
[0.1.3]: https://github.com/rusticstuff/simdutf8/compare/v0.1.2...v0.1.3
|
|
[0.1.2]: https://github.com/rusticstuff/simdutf8/compare/v0.1.1...v0.1.2
|
|
[0.1.1]: https://github.com/rusticstuff/simdutf8/compare/v0.1.0...v0.1.1
|
|
[0.1.0]: https://github.com/rusticstuff/simdutf8/compare/v0.0.3...v0.1.0
|
|
[0.0.3]: https://github.com/rusticstuff/simdutf8/compare/v0.0.2...v0.0.3
|
|
[0.0.2]: https://github.com/rusticstuff/simdutf8/compare/v0.0.1...v0.0.2
|
|
[0.0.1]: https://github.com/rusticstuff/simdutf8/releases/tag/v0.0.1
|