Commit Graph

235 Commits

Author SHA1 Message Date
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
sebcrozet f7db63a18a Release v0.16.7 2018-10-30 07:57:06 +01:00
sebcrozet d35c29b589 Release v0.16.6 2018-10-27 16:39:50 +02:00
sebcrozet 9fa3e7a769 Implement CsMatrix: axpy_cs, transpose, Add and Mul. 2018-10-20 22:42:16 +02:00
sebcrozet 99c9607a4f Release v0.16.5 2018-10-13 13:19:46 +02:00
sebcrozet e73701b3a8 Release v0.16.4 2018-09-24 22:06:29 +02:00
sebcrozet bee63859c0 Setup functions signatures for the glm interface. 2018-09-23 17:10:49 +02:00
sebcrozet b9d23fe1c2 Release v0.16.3. 2018-09-22 16:19:43 +02:00
sebcrozet 4b6a69bb99 Release v0.16.2 2018-09-20 21:02:58 +02:00
sebcrozet 56cd7139e2 Update repository links. 2018-09-15 09:28:56 +02:00
sebcrozet f68f7f4f00 Release v0.16.1. 2018-09-13 09:21:21 +02:00
Luca Trevisani f9ea9f0795 Add keyword "math" and category "science" 2018-09-02 18:14:02 +02:00
sebcrozet 24eb7880f3 Release v0.16.0. 2018-07-20 16:35:57 +02:00
sebcrozet 3b19b6553e Update dependencies. 2018-07-20 16:33:59 +02:00
sebcrozet 3751602fb5 Release v0.15.3. 2018-06-09 17:45:23 +02:00
sebcrozet c0d1c512ae Add the stdweb feature to activate rand/stdweb. 2018-06-09 17:44:19 +02:00
sebcrozet 07c0e34e1a Release v0.15.2. 2018-06-09 00:40:41 +02:00
sebcrozet 27a415d47f Release v0.15.1. 2018-05-27 12:26:55 +02:00
sebcrozet c2d597e744 Release v0.15.0. 2018-05-26 22:26:06 +02:00
sebcrozet 9c7620e530 Remove all dependencies to git. 2018-05-26 22:07:57 +02:00
sebcrozet bc54e61031 alga dependency: point to the github repository. 2018-05-26 22:07:57 +02:00
sebcrozet d759db682c Make the alloc feature actually work. 2018-05-26 22:07:57 +02:00
sebcrozet a51744f86b Update to rand 0.5. 2018-05-26 22:07:57 +02:00
sebcrozet bd3b73f872 Enable alga/std when std is enabled. 2018-05-26 22:07:57 +02:00
sebcrozet 40e74e0186 Fix compilation with and without #![no_std]. 2018-05-26 22:07:57 +02:00
sebcrozet ca093fad29 Move core/* to base/* + add conditional compilation to dynamics matrices when no_std is enabled. 2018-05-26 22:07:57 +02:00
sebcrozet 118227d6b9 Release v0.14.4 2018-05-17 16:02:18 +02:00
Sébastien Crozet fd1cbf511c Release v0.14.3 2018-05-10 15:23:14 +02:00
Flier Lu 54c26fd639 disable `rustc-serialize` 2018-05-10 15:22:16 +02:00