-
Notifications
You must be signed in to change notification settings - Fork 58
Add no_std
support
#265
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
CrazyboyQCD
wants to merge
33
commits into
Traverse-Research:main
Choose a base branch
from
CrazyboyQCD:no-std-support
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Add no_std
support
#265
Changes from all commits
Commits
Show all changes
33 commits
Select commit
Hold shift + click to select a range
fbc57a3
add `default-feature = false` to some deps, `std` feature and `hashbr…
CrazyboyQCD 8f853b0
add `no_std` feature compile error
CrazyboyQCD e3ca7fb
remove `std::backtrace::Backtrace` in `no_std`
CrazyboyQCD eb9e04c
replace `std::*` with `core::*` or `alloc::*`
CrazyboyQCD 48be63c
add clippy lints for `no_std` maintenance
CrazyboyQCD 4d7b668
revert formatting of `Cargo.toml`
CrazyboyQCD 3cee15f
fix typos in deps
CrazyboyQCD 51e8723
add non_exhaustive for `AllocatorDebugSettings` for backward compatible
CrazyboyQCD a4d3463
reorder imports and mods
CrazyboyQCD d1caf98
format backtrace ahead by feature instead of duplicated log statements
CrazyboyQCD 4c45a01
reorder mod in allocator module
CrazyboyQCD f2a6bfb
make `std` feature conflict with `hashbrown` in compile error and gat…
CrazyboyQCD d59fe26
restore trailing comma
CrazyboyQCD 3e00364
remove empty line and reorder import
CrazyboyQCD 457411a
simplify memory leak logging
CrazyboyQCD 578ada0
prefer using `hashbrown`'s collections when `std` and `hashbrown` are…
CrazyboyQCD 39abe59
update `CI` for `std` environment
CrazyboyQCD 742a2ce
document the `hashbrown` feature in `Cargo.toml`
CrazyboyQCD 694b6ff
update `CI` with `no_std`
CrazyboyQCD 3e453ed
emit compile error when none of `std` and `hashbrown` is enabled
CrazyboyQCD 541e814
CI: Simplify and complete `matrix` setup
MarijnS95 4123593
update missed `std` usages
CrazyboyQCD 3d962a4
keep style of compile error the same
CrazyboyQCD 66dbf08
add todo related with storing of `format_args!` outside `format!`
CrazyboyQCD 10d0742
update missed `std` usages
CrazyboyQCD 0ab0c88
fix lint
CrazyboyQCD e896fab
update `CI`
CrazyboyQCD 8bdedba
fix lint
CrazyboyQCD c4da9ba
add `no_std` content in `README`
CrazyboyQCD d73de57
fix `CI`
CrazyboyQCD d27a627
Merge branch 'main' into no-std-support
CrazyboyQCD b0b38a9
update `release.toml`
CrazyboyQCD f93b1da
update `README`
CrazyboyQCD File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,41 +7,48 @@ jobs: | |
name: Check MSRV (1.71.0) | ||
strategy: | ||
matrix: | ||
include: | ||
target: | ||
- os: ubuntu-latest | ||
features: vulkan | ||
backend: vulkan | ||
- os: windows-latest | ||
features: vulkan,d3d12 | ||
backend: vulkan,d3d12 | ||
- os: macos-latest | ||
features: vulkan,metal | ||
runs-on: ${{ matrix.os }} | ||
backend: vulkan,metal | ||
features: | ||
- hashbrown | ||
- std | ||
- hashbrown,std | ||
runs-on: ${{ matrix.target.os }} | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: dtolnay/rust-toolchain@nightly | ||
- name: Generate lockfile with minimal dependency versions | ||
run: cargo +nightly generate-lockfile -Zminimal-versions | ||
- uses: dtolnay/[email protected] | ||
# Note that examples are extempt from the MSRV check, so that they can use newer Rust features | ||
- run: cargo check --workspace --features ${{ matrix.features }} --no-default-features | ||
- run: cargo check --workspace --features ${{ matrix.target.backend }},${{ matrix.features }} --no-default-features | ||
|
||
test: | ||
name: Test Suite | ||
strategy: | ||
matrix: | ||
include: | ||
target: | ||
- os: ubuntu-latest | ||
features: vulkan,visualizer | ||
backend: vulkan | ||
- os: windows-latest | ||
features: vulkan,visualizer,d3d12,public-winapi | ||
backend: vulkan,d3d12 | ||
- os: macos-latest | ||
features: vulkan,visualizer,metal | ||
runs-on: ${{ matrix.os }} | ||
backend: vulkan,metal | ||
features: | ||
- std | ||
- hashbrown,std | ||
runs-on: ${{ matrix.target.os }} | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Cargo test all targets | ||
run: cargo test --workspace --all-targets --features ${{ matrix.features }} --no-default-features | ||
run: cargo test --workspace --all-targets --features visualizer,${{ matrix.target.backend }},${{ matrix.features }} --no-default-features | ||
- name: Cargo test docs | ||
run: cargo test --workspace --doc --features ${{ matrix.features }} --no-default-features | ||
run: cargo test --workspace --doc --features visualizer,${{ matrix.target.backend }},${{ matrix.features }} --no-default-features | ||
|
||
fmt: | ||
name: Rustfmt | ||
|
@@ -55,18 +62,21 @@ jobs: | |
name: Clippy | ||
strategy: | ||
matrix: | ||
include: | ||
target: | ||
- os: ubuntu-latest | ||
features: vulkan,visualizer | ||
backend: vulkan | ||
- os: windows-latest | ||
features: vulkan,visualizer,d3d12,public-winapi | ||
backend: vulkan,d3d12 | ||
- os: macos-latest | ||
features: vulkan,visualizer,metal | ||
runs-on: ${{ matrix.os }} | ||
backend: vulkan,metal | ||
features: | ||
- std | ||
- hashbrown,std | ||
runs-on: ${{ matrix.target.os }} | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Cargo clippy | ||
run: cargo clippy --workspace --all-targets --features ${{ matrix.features }} --no-default-features -- -D warnings | ||
run: cargo clippy --workspace --all-targets --features visualizer,${{ matrix.target.backend }},${{ matrix.features }} --no-default-features -- -D warnings | ||
|
||
doc: | ||
name: Build documentation | ||
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just noting explicitly that it seems we're no longer going to test
public-winapi
in the CI, meaning I should push on with removing this legacy in #256.