171 lines
5.8 KiB
Markdown
171 lines
5.8 KiB
Markdown
# Change Log
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](http://keepachangelog.com/)
|
|
and this project adheres to [Semantic Versioning](http://semver.org/).
|
|
|
|
## [Unreleased]
|
|
|
|
## [0.8.4] - 2023-04-22
|
|
### Added
|
|
- Implement `PartialEq` for `Paint` and subtypes. Thanks to [@hecrj](https://github.com/hecrj)
|
|
|
|
### Changed
|
|
- MSRV bumped to 1.57, mainly because of the `png` crate.
|
|
|
|
### Fixed
|
|
- `ClipMask`s larger than 8191x8191 pixels.
|
|
Previously, the creation of a large mask via `ClipMask::set_path`
|
|
would have created an empty mask.
|
|
|
|
## [0.8.3] - 2023-02-05
|
|
### Fixed
|
|
- Performance regression, probably due to LLVM update in Rust.
|
|
Thanks to [@mostafa-khaled775](https://github.com/mostafa-khaled775)
|
|
- Big-endian targets support. Thanks to [@ids1024](https://github.com/ids1024)
|
|
|
|
## [0.8.2] - 2022-10-22
|
|
### Added
|
|
- `Pixmap::from_vec`.
|
|
|
|
### Fixed
|
|
- Increase Conic to Quad conversion precision. This allows us to produce nicer round caps.
|
|
Previously, they were not as round as needed.
|
|
|
|
## [0.8.1] - 2022-08-29
|
|
### Fixed
|
|
- Conditional compilation of `FasterMinMax` on fallback platforms.
|
|
Thanks to [@CryZe](https://github.com/CryZe)
|
|
|
|
## [0.8.0] - 2022-08-27
|
|
### Added
|
|
- AArch64 Neon SIMD support. Up to 3x faster on Apple M1.
|
|
Thanks to [@CryZe](https://github.com/CryZe)
|
|
|
|
### Changed
|
|
- `FiniteF32`, `NormalizedF32` and `NonZeroPositiveF32` types have been moved
|
|
to the `strict-num` crate.
|
|
- Rename `NormalizedF32::from_u8` into `NormalizedF32::new_u8`.
|
|
- Rename `NormalizedF32::new_bounded` into `NormalizedF32::new_clamped`.
|
|
- Use explicit SIMD intrinsic instead of relying on `safe_arch`.
|
|
- MSRV bumped to 1.51
|
|
|
|
## [0.7.0] - 2022-07-03
|
|
### Added
|
|
- `tiny-skia-path` dependency that can be used independently from `tiny-skia`.
|
|
It contains the `tiny-skia` Bezier path implementation, including stroking and dashing.
|
|
As well as all the geometry primitives (like `Point` and `Rect`).
|
|
|
|
### Changed
|
|
- When disabling the `std` feature, one have to enable `no-std-float` feature instead of `libm` now.
|
|
|
|
## [0.6.6] - 2022-06-23
|
|
### Fixed
|
|
- Panic in `Rect::round` and `Rect::round_out`.
|
|
Thanks to [@Wardenfar](https://github.com/Wardenfar)
|
|
|
|
## [0.6.5] - 2022-06-10
|
|
### Fixed
|
|
- Minimum `arrayref` version.
|
|
|
|
## [0.6.4] - 2022-06-04
|
|
### Fixed
|
|
- Panic during non-aliased hairline stroking at the bottom edge of an image.
|
|
|
|
## [0.6.3] - 2022-02-01
|
|
### Fixed
|
|
- SourceOver blend mode must not be optimized to Source when ClipPath is present.
|
|
|
|
## [0.6.2] - 2021-12-30
|
|
### Fixed
|
|
- `ClipMask::intersect_path` alpha multiplying.
|
|
|
|
## [0.6.1] - 2021-08-28
|
|
### Added
|
|
- Support rendering on pixmaps larger than 8191x8191 pixels.
|
|
From now, `Pixmap` is limited only by the amount of memory caller has.
|
|
- `Transform::map_points`
|
|
- `PathBuilder::push_oval`
|
|
|
|
## [0.6.0] - 2021-08-21
|
|
### Added
|
|
- WASM simd128 support. Thanks to [@CryZe](https://github.com/CryZe)
|
|
|
|
### Changed
|
|
- `Transform::post_scale` no longer requires `&mut self`.
|
|
- Update `png` crate.
|
|
|
|
## [0.5.1] - 2021-03-07
|
|
### Fixed
|
|
- Color memset optimizations should be ignored when clip mask is present.
|
|
- `ClipMask::intersect_path` logic.
|
|
|
|
## [0.5.0] - 2021-03-06
|
|
### Added
|
|
- `ClipMask::intersect_path`
|
|
- no_std support. Thanks to [@CryZe](https://github.com/CryZe)
|
|
|
|
### Changed
|
|
- Reduce `Transform` strictness. It's no longer guarantee to have only finite values,
|
|
therefore we don't have to check each operation.
|
|
|
|
### Removed
|
|
- `Canvas`. Call `Pixmap`/`PixmapMut` drawing methods directly.
|
|
|
|
## [0.4.2] - 2021-01-23
|
|
### Fixed
|
|
- Panic during path filling with anti-aliasing because of incorrect edges processing.
|
|
|
|
## [0.4.1] - 2021-01-19
|
|
### Fixed
|
|
- Endless loop during stroke dashing.
|
|
|
|
## [0.4.0] - 2021-01-02
|
|
### Changed
|
|
- Remove almost all `unsafe`. No performance changes.
|
|
|
|
## [0.3.0] - 2020-12-20
|
|
### Added
|
|
- `PixmapRef` and `PixmapMut`, that can be created from `Pixmap` or from raw data.
|
|
- `Canvas::set_clip_mask`, `Canvas::get_clip_mask`, `Canvas::take_clip_mask`.
|
|
|
|
### Changed
|
|
- `Canvas` no longer owns a `Pixmap`.
|
|
- `Canvas::draw_pixmap` and `Pattern::new` accept `PixmapRef` instead of `&Pixmap` now.
|
|
- Improve clipping performance.
|
|
- The internal `ClipMask` type become public.
|
|
|
|
### Fixed
|
|
- Panic when path is drawn slightly past the `Pixmap` bounds.
|
|
|
|
### Removed
|
|
- `Canvas::new`
|
|
|
|
## 0.2.0 - 2020-11-16
|
|
### Changed
|
|
- Port to Rust.
|
|
|
|
## 0.1.0 - 2020-07-04
|
|
### Added
|
|
- Bindings to a stripped down Skia fork.
|
|
|
|
[Unreleased]: https://github.com/RazrFalcon/tiny-skia/compare/v0.8.4...HEAD
|
|
[0.8.4]: https://github.com/RazrFalcon/tiny-skia/compare/v0.8.3...v0.8.4
|
|
[0.8.3]: https://github.com/RazrFalcon/tiny-skia/compare/v0.8.2...v0.8.3
|
|
[0.8.2]: https://github.com/RazrFalcon/tiny-skia/compare/v0.8.1...v0.8.2
|
|
[0.8.1]: https://github.com/RazrFalcon/tiny-skia/compare/v0.8.0...v0.8.1
|
|
[0.8.0]: https://github.com/RazrFalcon/tiny-skia/compare/v0.7.0...v0.8.0
|
|
[0.7.0]: https://github.com/RazrFalcon/tiny-skia/compare/v0.6.6...v0.7.0
|
|
[0.6.6]: https://github.com/RazrFalcon/tiny-skia/compare/v0.6.5...v0.6.6
|
|
[0.6.5]: https://github.com/RazrFalcon/tiny-skia/compare/v0.6.4...v0.6.5
|
|
[0.6.4]: https://github.com/RazrFalcon/tiny-skia/compare/v0.6.3...v0.6.4
|
|
[0.6.3]: https://github.com/RazrFalcon/tiny-skia/compare/v0.6.2...v0.6.3
|
|
[0.6.2]: https://github.com/RazrFalcon/tiny-skia/compare/v0.6.1...v0.6.2
|
|
[0.6.1]: https://github.com/RazrFalcon/tiny-skia/compare/v0.6.0...v0.6.1
|
|
[0.6.0]: https://github.com/RazrFalcon/tiny-skia/compare/v0.5.1...v0.6.0
|
|
[0.5.1]: https://github.com/RazrFalcon/tiny-skia/compare/v0.5.0...v0.5.1
|
|
[0.5.0]: https://github.com/RazrFalcon/tiny-skia/compare/v0.4.2...v0.5.0
|
|
[0.4.2]: https://github.com/RazrFalcon/tiny-skia/compare/v0.4.1...v0.4.2
|
|
[0.4.1]: https://github.com/RazrFalcon/tiny-skia/compare/v0.4.0...v0.4.1
|
|
[0.4.0]: https://github.com/RazrFalcon/tiny-skia/compare/v0.3.0...v0.4.0
|
|
[0.3.0]: https://github.com/RazrFalcon/tiny-skia/compare/v0.2.0...v0.3.0
|