Skip to content

Release notes

Yoan edited this page Apr 1, 2020 · 35 revisions

0.10.0

The minor version was increased from 0.9 because this version introduces minor breaking changes, due to updated dependencies, and minor changes to the API. Please note that this is to be expected from a crate which major version is 0.

Moved to Rust 2018 edition

cargo fix is great!
Also fixed warnings about deprecated use of mem::uninitialized().

True no_std support

A new no_std target was added to the Travis CI script as well, to test for regressions.

To compile on no_std, specify the vek dependency in Cargo.toml like so :

[dependencies]
vek = { version = "0.10.0", default-features = false, features = ["libm"] }

Updated all dependencies

In particular, the approx crate, with new traits, which is a breaking change.

Various robustness improvements

Added Clamp::clamped_minus1_1(), and used it before calling .acos() on a value.

Improved is_normalized(), courtesy of @Imberflur, see PR #48.
Also added a is_magnitude_close_to() helper method.

Some methods now return arrays instead of tuples

The best example is CubicBezier::unit_circle() which returned 4 curves approximating a circle.
Returning a tuple is convenient for deconstructing the result, but makes less sense than an array because what we're really returning is a collection of curves, something one could easily iterate on, and arrays are simply a better fit.

Previous versions

There are no release notes for the previous versions, sorry!

Clone this wiki locally