Commit Graph

275 Commits

Author SHA1 Message Date
Sébastien Crozet
bd9e0fb72c Add support for conversion with glam 0.16 and 0.17 2021-08-08 17:41:10 +02:00
Sébastien Crozet
31c64a0aaa Use simba 0.6 2021-08-08 12:31:23 +02:00
Sébastien Crozet
d609a2f174 Address unsoundness in the resizing API. 2021-08-03 17:02:42 +02:00
Jeff Petkau
7dd12e8e7a
Include "rand" in feature list for docs.rs
Random support was gated by the "rand" feature in version 0.25.1, but not added to the docs.rs list, causing the gated functions to disappear from docs.
2021-07-26 10:13:58 -07:00
Crozet Sébastien
ca1297acfb Release v0.28.0 2021-07-11 17:42:45 +02:00
Crozet Sébastien
d7288bfd28 Release v0.27.1 2021-06-04 11:08:54 +02:00
Crozet Sébastien
dfc8ad3d6a Release v0.27.0 2021-06-02 15:15:17 +02:00
Crozet Sébastien
47a4f52e8d Replace unchecked glam conversion by TryFrom or checks 2021-06-01 10:48:24 +02:00
Crozet Sébastien
4af979c55b Support multiple version of the optional glam conversion 2021-06-01 10:27:32 +02:00
David Koloski
38dd3345e0 Switch to distributive implementations 2021-05-09 12:24:03 -04:00
David Koloski
b48b104d57 Add rkyv implementations for a few types 2021-05-09 12:23:16 -04:00
Sébastien Crozet
511a51592f
Merge pull request #866 from vks/improve-bench
Improvements to benchmarks
2021-05-09 16:59:23 +02:00
Sébastien Crozet
23ac85e896
Merge pull request #886 from Andlon/matrix-macro
Matrix macro
2021-05-09 16:52:04 +02:00
Andreas Longva
b85335bd9c Update matrixcompare version to 0.3.0
Fixes some warnings produced by earlier versions since Rust 1.51.
See https://github.com/Andlon/matrixcompare/pull/5 for more details.

Note that we only update dev-dependencies, so there is no API breakage.
2021-05-07 09:23:46 +02:00
Andreas Longva
0bde07f95c Document that feature needs to be enabled, and require macros feature for tests 2021-05-03 13:52:34 +02:00
Andreas Longva
eeab4db69a Add nalgebra/macros feature and re-export matrix macros from nalgebra 2021-05-03 13:52:34 +02:00
Andreas Longva
e97692255b Initial hacked together prototype without syn 2021-05-03 13:52:34 +02:00
Vinzent Steinberg
35b96344ba Fix criterion warning 2021-04-29 20:26:21 -03:00
Vinzent Steinberg
209b476301 Mark rand as required for benchmark 2021-04-29 20:25:25 -03:00
Vinzent Steinberg
c5a44ec66f Update criterion 2021-04-29 20:25:25 -03:00
Crozet Sébastien
58bea21d74 Release v0.26.2 2021-04-27 14:26:09 +02:00
Crozet Sébastien
3ec57016b9 Release v0.26.1 2021-04-12 17:52:59 +02:00
Crozet Sébastien
c5c6c139ab Release v0.26.0 2021-04-12 16:15:08 +02:00
Crozet Sébastien
9aa3c1e449 Add comment about the serde-serialize-no-std feature. 2021-04-12 14:36:55 +02:00
Crozet Sébastien
95b021dbfb Don't enable serde by default.
Don't enable `serde/std` by default.
Add a `serde-serialize-no-std` feature to enable serde without its default features.
2021-04-12 12:14:16 +02:00
Crozet Sébastien
24d546d3b6 Rename generic parameter N -> T 2021-04-11 13:57:54 +02:00
Crozet Sébastien
d17088398a Replace generic-array with a regular array based on min-const-generics. 2021-04-11 13:53:45 +02:00
Sébastien Crozet
f7daf31b0f
Merge pull request #862 from vks/better-error
Better error message when running `cargo test`
2021-04-11 13:41:29 +02:00
Vinzent Steinberg
9103a8b763 Use the new Cargo resolver from Rust 1.50
This should make it possible to add the dev-dependency on criterion
without breaking `no_std` builds.
2021-04-10 01:43:52 -03:00
Vinzent Steinberg
df33dec457 Make "compare" a required feature for the matrixcompare example
This avoids distracting error messages when running `cargo test` and
gives a better error when trying to run the example without the required
feature.
2021-04-10 00:52:54 -03:00
Crozet Sébastien
f8173bd668 Release v0.25.4 2021-04-01 12:16:54 +02:00
Crozet Sébastien
4e5b32a3fa Don't enable the serde/alloc feature when alloc is enabled.
It looks like serde still pulls std when only `alloc` is selected.
2021-04-01 11:53:19 +02:00
Crozet Sébastien
2602f48452 Fix compilation when only the serde-serialize feature of nalgebra is enabled. 2021-04-01 11:40:27 +02:00
Crozet Sébastien
d16411c6db Release v0.25.3 2021-04-01 11:39:45 +02:00
Crozet Sébastien
9ce8402ef3 Release v0.25.2 2021-03-06 14:05:38 +01:00
Crozet Sébastien
729a8fd7f2 Add conversion from/to glam types + move glam/alga/mint impls to a "third_party" module. 2021-03-06 12:20:38 +01:00
Crozet Sébastien
f282d02db1 Release v0.25.1 2021-03-02 14:25:10 +01:00
Crozet Sébastien
c32172b6b9 Make the rand dependency optional. 2021-03-02 12:25:12 +01:00
Crozet Sébastien
5b9b94c610 Release v0.25.0 2021-03-01 14:25:29 +01:00
Crozet Sébastien
e27ff8ce4e Fix wasm compilation. 2021-03-01 10:02:22 +01:00
Crozet Sébastien
6cfd2bca14 Use proptest for all nalgebra tests. 2021-02-28 17:52:14 +01:00
Sébastien Crozet
21cc428480
Merge pull request #803 from aweinstock314/no_unsound_assume_init
Propagate `mem::MaybeUninit` through the return types of `Allocator::…
2021-02-25 15:46:49 +01:00
Sébastien Crozet
69e2ad6a44
Merge pull request #831 from iMplode-nZ/dev
Added bytemuck implementations for static storages.
2021-02-25 15:46:28 +01:00
Avi Weinstock
36a3ac814f Propagate mem::MaybeUninit through the return types of Allocator::allocate_uninitialized and Matrix::new_uninitialized_generic.
Most call sites still invoke UB through `assume_init`. Said call sites instead invoke `unimplemented!()` if the `no_unsound_assume_init` feature is enabled, to make it easier to gradually fix them.

Progress towards #556.
2021-02-25 13:42:23 +01:00
Sébastien Crozet
adc82845d1
Merge pull request #823 from Andlon/sparse-rework
Sparse rework: nalgebra-sparse
2021-02-25 12:58:28 +01:00
Crozet Sébastien
4e4eeb2641 Don't pin the proptest version when running tests: this breaks all no-std builds.
This is extremely unfortunate, but we cannot pin the version of proptest because of the Cargo bug #4866 will cause a breakage of #[no-std] builds.
2021-02-25 11:00:48 +01:00
Crozet Sébastien
424897f55b Fix no-std cargo category. 2021-02-22 14:27:31 +01:00
iMplode nZ
c667b1f9c8 Added bytemuck implementations for static storages. 2021-02-10 20:12:24 -08:00
Crozet Sébastien
d45e6eafab Release v0.24.1 2021-01-29 13:57:19 +01:00
Crozet Sébastien
7d5cc4912d Update cargo badge and categories. 2021-01-29 13:33:37 +01:00
Andreas Longva
1dbccfeb7c Initial COO implementation 2021-01-26 10:11:24 +01:00
Andreas Longva
5dfe06897f Rename nalgebra/proptest to /proptest-support
This gives us some freedom in the future, in case we need
additional dependencies for the proptest integration.
2021-01-26 09:49:01 +01:00
Andreas Longva
561501a08f Upgrade nalgebra matrixcompare version to 0.2.0 (dev-dep) 2021-01-26 08:57:47 +01:00
Andreas Longva
f909638bf4 Designate exhaustive matrix proptest as slow-tests
The slow-tests feature flag is intended to be used for tests
that take substantially more time to run than other unit tests.
2021-01-26 08:57:47 +01:00
Andreas Longva
cbef37ed9c Fix proptest functionality test
The previous test claimed to verify that all possible outputs
are sampled, but it didn't. This commits fixes this issue
by actually computing all possible combinations.
However, to accomplish this we needed to add itertools as a test
dependency. Otherwise we'd have to implement our own way of
generating the Cartesian product of an arbitrary number
of sets.
2021-01-26 08:57:47 +01:00
Andreas Longva
f9ea2b4471 Initial proptest implementation for nalgebra
This introduces functionality for creating strategies for matrices and
vectors, as well as an implementation of Arbitrary.

Strategies for the geometric types (Point3, Quaternion etc.) are not
currently part of this contribution.

The current strategy implementation for matrices has some limitations
that lead to suboptimal shrinking behavior. This is documented in the
module-level docs, with some additional comments in the code.
2021-01-26 08:57:47 +01:00
Crozet Sébastien
b695aaa807 Release v0.24.0 2020-12-30 15:11:23 +01:00
Crozet Sébastien
dda1ae75e6 Release v0.23.2 2020-12-01 16:24:50 +01:00
Crozet Sébastien
c0f4ee6db9 Release v0.23.1 2020-11-19 16:28:06 +01:00
chemicstry
61848fcfb8 Make serde no_std compatible 2020-10-29 01:05:12 +02:00
Crozet Sébastien
1c8435c910 Release v0.23.0 2020-10-26 09:40:49 +01:00
Crozet Sébastien
a473a3365c Bump dependencies. 2020-10-25 15:05:20 +01:00
Crozet Sébastien
07dc799bbd Release v0.22.1 2020-10-13 10:28:30 +02:00
Sébastien Crozet
d635001898 Release v0.22.0 2020-08-25 21:15:56 +02:00
Sébastien Crozet
a6962dfadc Bump the simba dependency version. 2020-08-25 20:46:35 +02:00
Sébastien Crozet
46d1cf2231 Add a libm and libm-force feature to transitively enable the corresponding simba feature. 2020-08-25 20:46:35 +02:00
sebcrozet
7c69cbf326 Don't depend on serde_derive explicitly. 2020-08-25 20:46:04 +02:00
Sébastien Crozet
d81a895a87 Switch license to Apache v2.0 + update sponsor link. 2020-08-19 19:48:16 +02:00
Andreas Longva
d13b3de4e4 Use matrixcompare 0.1.3 for tests (fixes no-std test issues) 2020-07-17 09:54:30 +02:00
Andreas Longva
f6730dac1f Basic matrixcompare functionality 2020-06-29 18:50:19 +02:00
sebcrozet
2198b0e6b4 Release v0.21.1 2020-06-07 10:29:10 +02:00
sebcrozet
b87920bb8d Release nalgebra v0.21.0 2020-04-05 23:19:10 +02:00
sebcrozet
50ade7e870 Re comment the criterion dependency. 2020-04-05 18:15:36 +02:00
sebcrozet
c5dad7f960 Re-add all the alga trait impls behind a feature. 2020-04-05 17:53:27 +02:00
sebcrozet
26595049c9 Depend on the crates.io version of simba. 2020-03-23 09:59:26 +01:00
sebcrozet
f8cd26cfa9 Replace alga by simba. 2020-03-21 12:16:46 +01:00
Sébastien Crozet
fb69a42878 Release v0.20.0. 2020-03-02 14:34:46 +01:00
Avi Weinstock
8404839233 Import IsaacRng from rand_isaac instead of rand.
The rand crate removed IsaacRng in the 0.5 -> 0.6 transition, so the benchmarks that use it haven't compiled since 9c37c51203.
2020-03-02 12:45:36 +01:00
sebcrozet
549d0dd2dd Release nalgebra 0.19.0. 2019-10-28 14:15:03 +01:00
sebcrozet
0cc1bac816 Bump dependencies. 2019-10-28 14:15:03 +01:00
Edoardo Morandi
d0d1172d4b Rand 0.6 -> 0.7
* Bumped rand version to 0.7
 * Added dependency to rand_distr
 * Bumped quickcheck version to 0.9 (because of rand)
 * Bumped rand_xorshift version to 0.2
2019-10-28 14:15:03 +01:00
sebcrozet
d35779d3f2 Release v0.18.2 2019-10-28 14:15:03 +01:00
sebcrozet
f302edc0dc Release v0.18.1 2019-08-27 22:05:28 +02:00
Jake Shadle
4fa4a6b854 HTTPS All The Things (#608)
* Use https for all links where it is valid

* Fix random links to external sites
2019-08-27 22:05:28 +02:00
Bruce Mitchener
9feb28926a Fix typo. (#600) 2019-08-27 22:05:28 +02:00
Jack Wrenn
2e273ad6c5 prevent constructing MatrixSliceMutMN for which disjoint indices may alias the same linear index
Fixes #486.
2019-08-27 22:05:28 +02:00
sebcrozet
b5b81a0ba9 Bump version numbers. 2019-03-31 15:25:54 +02:00
sebcrozet
86fa4bee52 Remove the criterion dependency and add comment to re-add it to run benchmarks.
We are forced to remove the dependency because of the Cargo bug https://github.com/rust-lang/cargo/issues/4866 that would break compilation for #[no-std].

In practice, this means benchmarks will not compile any more unless we manually uncomment the criterion dependency.
2019-03-31 13:32:09 +02:00
sebcrozet
55873cae37 Fix compilation with no-std. 2019-03-31 12:06:26 +02:00
sebcrozet
ba40e8eb55 Fix merge errors due to the switch to rust 2018. 2019-03-31 10:53:31 +02:00
sebcrozet
38ef0cbf7b Merge branch 'dev' into complex
# Conflicts:
#	src/base/ops.rs
#	src/geometry/isometry.rs
#	src/geometry/quaternion.rs
#	src/geometry/quaternion_construction.rs
#	src/geometry/rotation.rs
#	src/geometry/similarity.rs
#	src/geometry/transform.rs
#	src/geometry/translation.rs
#	src/geometry/unit_complex.rs
2019-03-31 10:48:59 +02:00
sebcrozet
f9995f1fcc Fix tests. 2019-03-31 09:12:54 +02:00
sebcrozet
6d76249d74 Start switching benchmarks to criterion. 2019-03-23 18:01:04 +01:00
sebcrozet
3cbe60523a 2018 edition. 2019-03-23 14:33:47 +01:00
Adam Nemecek
edb08cd900 quaternion trigonometry 2019-03-04 08:36:46 -08:00
sebcrozet
77f048b6b9 WIP use Complex instead of Real whenever possible on the linalg module. 2019-03-02 19:33:49 +01:00
sebcrozet
9d08fdcc21 Release v0.17.2 2019-02-18 22:43:05 +01:00
sebcrozet
df0407ef44 Release v0.17.1 2019-02-17 18:24:05 +01:00
Igor Gnatenko
9061c98687 Exclude CI files (#548) 2019-02-17 18:22:29 +01:00
sebcrozet
fac709b0c0 Release nalgebra v0.17 and nalgebra-glm v0.3. 2019-02-03 17:03:12 +01:00