In this release, we are using the new version 0.2 of simba. One major change of that version is that the
use of libm is now opt-in when building targetting no-std environment. If you are using floating-point
operations with nalgebra in a no-std environment, you will need to enable the new libm feature
of nalgebra for your code to compile again.
Added
The libm feature that enables libm when building for no-std environment.
The libm-force feature that enables libm even when building for a not no-std environment.
Cholesky::new_unchecked which build a Cholesky decomposition without checking that its input is
positive-definite. It can be use with SIMD types.
The Default trait is now implemented for matrices, and quaternions. They are all filled with zeros,
except for UnitQuaternion which is initialized with the identity.
Matrix exponential matrix.exp().
The Vector::ith(i, x) that builds a vector filled with zeros except for the i-th component set to x.
[0.21.0]
In this release, we are no longer relying on traits from the alga crate for our generic code.
Instead, we use traits from the new simba crate which are both
simpler, and allow for significant optimizations like AoSoA SIMD.
It is now possible to use SIMD types like simba::f32x4 as scalar types for nalgebra's matrices and
geometric types.
Modified
Use of traits like alga::general::{RealField, ComplexField} have now been replaced by
simba::scalar::{RealField, ComplexField}.
The implementation of traits from the alga crate (and well as the dependency to alga_) are now
omitted unless the alga cargo feature is activated.
Removed
The Neg unary operator is no longer implemented for UnitComplex and UnitQuaternion. This caused
hard-to-track errors when we mistakenly write, e.g., -q * v instead of -(q * v).
The na::convert_unchecked is no longer marked as unsafe.
[0.20.0]
Added
cholesky.rank_one_update(...) which performs a rank-one update on the cholesky decomposition of a matrix.
From<&Matrix> is now implemented for matrix slices.
.try_set_magnitude(...) which sets the magnitude of a vector, while keeping its direction.
Implementations of From and Into for the conversion between matrix slices and standard (&[N]&mut [N]) slices.
Modified
We started some major changes in order to allow non-Copy types to be used as scalar types inside of matrices/vectors.
[0.19.0]
Added
.remove_rows_at and remove_columns_at which removes a set of rows or columns (specified by indices) from a matrix.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
- `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language
- `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language
- `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language
- `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language
- `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme
Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com):
- Update frequency (including time of day and day of week)
- Pull request limits (per update run and/or open at any time)
- Out-of-range updates (receive only lockfile updates, if desired)
- Security updates (receive only security updates, if desired)
Updates the requirements on nalgebra to permit the latest version.
Changelog
Sourced from nalgebra's changelog.
Commits
d635001
Release v0.22.0fe4e77c
Merge pull request #761 from dimforge/rapierb96181f
CI: don't eanble --all-features when running the tests.a8f73cb
Run cargo fmt.a6962df
Bump the simba dependency version.46d1cf2
Add a libm and libm-force feature to transitively enable the corresponding si...7c69cbf
Don't depend on serde_derive explicitly.6300d34
Add the ::ith constructor for vectors.d81a895
Switch license to Apache v2.0 + update sponsor link.2ab82be
Merge pull request #631 from Andlon/matrixcompareDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) - `@dependabot use these labels` will set the current labels as the default for future PRs for this repo and language - `@dependabot use these reviewers` will set the current reviewers as the default for future PRs for this repo and language - `@dependabot use these assignees` will set the current assignees as the default for future PRs for this repo and language - `@dependabot use this milestone` will set the current milestone as the default for future PRs for this repo and language - `@dependabot badge me` will comment on this PR with code to add a "Dependabot enabled" badge to your readme Additionally, you can set the following in your Dependabot [dashboard](https://app.dependabot.com): - Update frequency (including time of day and day of week) - Pull request limits (per update run and/or open at any time) - Out-of-range updates (receive only lockfile updates, if desired) - Security updates (receive only security updates, if desired)