Skip to content

Commit e0e2be8

Browse files
Jondolfsebcrozet
andauthored
Disable default features for glam (#1510)
* Disable default features for Glam * Revert taplo formatting * Bump rustc version * Add `std` conditionally for Glam * Fix trybuild errors for 1.81.0 * Update changelog * Try to fix `no_std` error * Revert `alloc::format` import The intended approach is to use `serde-serialize-no-std` if serde is needed in `no_std` environments. * Revert "Fix trybuild errors for 1.81.0" This reverts commit 98b3422. * Revert "Bump rustc version" This reverts commit 46012e8. * chore: consolidate changelog --------- Co-authored-by: Sébastien Crozet <sebcrozet@dimforge.com>
1 parent 9598744 commit e0e2be8

File tree

2 files changed

+38
-35
lines changed

2 files changed

+38
-35
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ This project adheres to [Semantic Versioning](https://semver.org/).
1818
- Renamed associated const `DimName::USIZE` to `DimName::DIM`.
1919
- Moved to Rust 2024 edition.
2020
- Several methods are now `const` whenever possible. See details in [#1522](https://github.com/dimforge/nalgebra/pull/1522).
21+
- Features for conversion from/to types from `glam` (such as `convert-glam029`) no longer enable default features for
22+
`glam`, allowing use in `no_std` environments.
2123

2224
### Fixed
2325

Cargo.toml

Lines changed: 36 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,22 @@ std = [
3131
"num-rational/std",
3232
"approx/std",
3333
"simba/std",
34+
"glam014?/std",
35+
"glam015?/std",
36+
"glam016?/std",
37+
"glam017?/std",
38+
"glam018?/std",
39+
"glam019?/std",
40+
"glam020?/std",
41+
"glam021?/std",
42+
"glam022?/std",
43+
"glam023?/std",
44+
"glam024?/std",
45+
"glam025?/std",
46+
"glam027?/std",
47+
"glam028?/std",
48+
"glam029?/std",
49+
"glam030?/std",
3450
]
3551
sparse = []
3652
debug = ["approx/num-complex", "rand"]
@@ -75,13 +91,7 @@ rkyv-serialize = ["rkyv-serialize-no-std", "rkyv/std", "rkyv/validation"]
7591
## To use rand in a #[no-std] environment, enable the
7692
## `rand-no-std` feature instead of `rand`.
7793
rand-no-std = ["rand-package"]
78-
rand = [
79-
"rand-no-std",
80-
"rand-package/std",
81-
"rand-package/std_rng",
82-
"rand-package/thread_rng",
83-
"rand_distr",
84-
]
94+
rand = ["rand-no-std", "rand-package/std", "rand-package/std_rng", "rand-package/thread_rng", "rand_distr"]
8595

8696
# Tests
8797
arbitrary = ["quickcheck"]
@@ -101,9 +111,7 @@ simba = { version = "0.9", default-features = false }
101111
alga = { version = "0.9", default-features = false, optional = true }
102112
rand_distr = { version = "0.5", default-features = false, optional = true }
103113
matrixmultiply = { version = "0.3", optional = true }
104-
serde = { version = "1.0", default-features = false, features = [
105-
"derive",
106-
], optional = true }
114+
serde = { version = "1.0", default-features = false, features = ["derive"], optional = true }
107115
# TODO: once rkyv is updated to 0.8, we could consider removing the `allow(unsafe_op_in_unsafe_fn)`.
108116
rkyv = { version = "0.7.41", default-features = false, optional = true }
109117
mint = { version = "0.5", optional = true }
@@ -112,25 +120,23 @@ pest = { version = "2", optional = true }
112120
pest_derive = { version = "2", optional = true }
113121
bytemuck = { version = "1.5", optional = true }
114122
matrixcompare-core = { version = "0.1", optional = true }
115-
proptest = { version = "1", optional = true, default-features = false, features = [
116-
"std",
117-
] }
118-
glam014 = { package = "glam", version = "0.14", optional = true }
119-
glam015 = { package = "glam", version = "0.15", optional = true }
120-
glam016 = { package = "glam", version = "0.16", optional = true }
121-
glam017 = { package = "glam", version = "0.17", optional = true }
122-
glam018 = { package = "glam", version = "0.18", optional = true }
123-
glam019 = { package = "glam", version = "0.19", optional = true }
124-
glam020 = { package = "glam", version = "0.20", optional = true }
125-
glam021 = { package = "glam", version = "0.21", optional = true }
126-
glam022 = { package = "glam", version = "0.22", optional = true }
127-
glam023 = { package = "glam", version = "0.23", optional = true }
128-
glam024 = { package = "glam", version = "0.24", optional = true }
129-
glam025 = { package = "glam", version = "0.25", optional = true }
130-
glam027 = { package = "glam", version = "0.27", optional = true }
131-
glam028 = { package = "glam", version = "0.28", optional = true }
132-
glam029 = { package = "glam", version = "0.29", optional = true }
133-
glam030 = { package = "glam", version = "0.30", optional = true }
123+
proptest = { version = "1", optional = true, default-features = false, features = ["std"] }
124+
glam014 = { package = "glam", version = "0.14", optional = true, default-features = false }
125+
glam015 = { package = "glam", version = "0.15", optional = true, default-features = false }
126+
glam016 = { package = "glam", version = "0.16", optional = true, default-features = false }
127+
glam017 = { package = "glam", version = "0.17", optional = true, default-features = false }
128+
glam018 = { package = "glam", version = "0.18", optional = true, default-features = false }
129+
glam019 = { package = "glam", version = "0.19", optional = true, default-features = false }
130+
glam020 = { package = "glam", version = "0.20", optional = true, default-features = false }
131+
glam021 = { package = "glam", version = "0.21", optional = true, default-features = false }
132+
glam022 = { package = "glam", version = "0.22", optional = true, default-features = false }
133+
glam023 = { package = "glam", version = "0.23", optional = true, default-features = false }
134+
glam024 = { package = "glam", version = "0.24", optional = true, default-features = false }
135+
glam025 = { package = "glam", version = "0.25", optional = true, default-features = false }
136+
glam027 = { package = "glam", version = "0.27", optional = true, default-features = false }
137+
glam028 = { package = "glam", version = "0.28", optional = true, default-features = false }
138+
glam029 = { package = "glam", version = "0.29", optional = true, default-features = false }
139+
glam030 = { package = "glam", version = "0.30", optional = true, default-features = false }
134140
rayon = { version = "1.6", optional = true }
135141
defmt = { version = "1.0.1", optional = true }
136142

@@ -151,12 +157,7 @@ trybuild = "1.0.90"
151157
cool_asserts = "2.0.3"
152158

153159
[workspace]
154-
members = [
155-
"nalgebra-lapack",
156-
"nalgebra-glm",
157-
"nalgebra-sparse",
158-
"nalgebra-macros",
159-
]
160+
members = ["nalgebra-lapack", "nalgebra-glm", "nalgebra-sparse", "nalgebra-macros"]
160161
resolver = "2"
161162

162163
[[example]]

0 commit comments

Comments
 (0)