Commit Graph

263 Commits

Author SHA1 Message Date
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
sebcrozet 08f31837a8 Update to alga 0.8. 2019-02-03 15:52:15 +01:00
sebcrozet fc24db8ff3 Merge branch 'master-public' into sparse
# Conflicts:
#	Cargo.toml
#	examples/matrix_construction.rs
#	nalgebra-glm/src/constructors.rs
#	nalgebra-glm/src/ext/matrix_clip_space.rs
#	nalgebra-glm/src/ext/matrix_transform.rs
#	nalgebra-glm/src/ext/mod.rs
#	nalgebra-glm/src/ext/quaternion_common.rs
#	nalgebra-glm/src/gtx/quaternion.rs
#	nalgebra-glm/src/gtx/rotate_vector.rs
#	nalgebra-glm/src/lib.rs
#	nalgebra-glm/src/traits.rs
#	nalgebra-lapack/src/cholesky.rs
#	nalgebra-lapack/src/eigen.rs
#	nalgebra-lapack/src/hessenberg.rs
#	nalgebra-lapack/src/lu.rs
#	nalgebra-lapack/src/qr.rs
#	nalgebra-lapack/src/schur.rs
#	nalgebra-lapack/src/svd.rs
#	nalgebra-lapack/src/symmetric_eigen.rs
#	rustfmt.toml
#	src/base/array_storage.rs
#	src/base/blas.rs
#	src/base/cg.rs
#	src/base/default_allocator.rs
#	src/base/edition.rs
#	src/base/iter.rs
#	src/base/matrix.rs
#	src/base/swizzle.rs
#	src/base/vec_storage.rs
#	src/geometry/mod.rs
#	src/geometry/point_construction.rs
#	src/geometry/quaternion.rs
#	src/geometry/similarity.rs
#	src/geometry/translation.rs
#	src/geometry/unit_complex_construction.rs
#	src/linalg/bidiagonal.rs
#	src/linalg/cholesky.rs
#	src/linalg/full_piv_lu.rs
#	src/linalg/hessenberg.rs
#	src/linalg/lu.rs
#	src/linalg/permutation_sequence.rs
#	src/linalg/qr.rs
#	src/linalg/schur.rs
#	src/linalg/svd.rs
#	src/linalg/symmetric_eigen.rs
#	src/linalg/symmetric_tridiagonal.rs
#	tests/geometry/point.rs
#	tests/geometry/quaternion.rs
#	tests/lib.rs
#	tests/linalg/eigen.rs
#	tests/linalg/svd.rs
2019-02-03 12:53:41 +01:00
Sébastien Crozet 564246ec1c
Merge pull request #507 from burtonageo/update_deps_2
Update dependencies, and fix tests from fallout
2018-12-29 14:33:53 +01:00
sebcrozet 9108c8e655 Release nalgebra v0.16.13. 2018-12-29 13:29:03 +01:00
sebcrozet cae2be5cad Add .min and .max. 2018-12-22 18:03:32 +01:00
George Burton 9c37c51203 Update dependencies, and fix tests from fallout 2018-12-18 14:44:53 +00:00
sebcrozet 1f2ef4bb44 Release v0.16.12. 2018-12-04 22:05:09 +01:00
sebcrozet a56aad76bd Release v0.16.11 2018-11-23 07:02:27 +01:00
sebcrozet 6ed1a1be1e Release v0.16.10 2018-11-10 13:53:52 +01:00
sebcrozet 22bd50f4d2 Release v0.16.9 2018-11-08 06:44:05 +01:00
sebcrozet ed07b78b97 Add matrixmarket parser. 2018-11-06 18:31:04 +01:00
sebcrozet 7eeba7dfd3 Release 0.16.8 2018-11-01 11:09:57 +01:00