Browse Source

Fix lint error and allow failure on latest nightly

pull/66/head
Ian Chamberlain 2 years ago
parent
commit
3511b6540f
No known key found for this signature in database
GPG Key ID: AE5484D09405AA60
  1. 21
      .github/workflows/ci.yml
  2. 24
      ctru-rs/Cargo.toml
  3. 2
      ctru-sys/src/bin/docstring-to-rustdoc.rs

21
.github/workflows/ci.yml

@ -14,6 +14,15 @@ env:
jobs: jobs:
lint: lint:
strategy:
matrix:
toolchain:
# Run against a "known good" nightly
- nightly-2022-07-18
# Check for breakage on latest nightly
- nightly
# But if latest nightly fails, allow the workflow to continue
continue-on-error: ${{ matrix.toolchain == 'nightly' }}
runs-on: ubuntu-latest runs-on: ubuntu-latest
container: devkitpro/devkitarm container: devkitpro/devkitarm
steps: steps:
@ -25,7 +34,7 @@ jobs:
with: with:
components: clippy, rustfmt, rust-src components: clippy, rustfmt, rust-src
profile: minimal profile: minimal
toolchain: nightly toolchain: ${{ matrix.toolchain }}
default: true default: true
- name: Install build tools for host - name: Install build tools for host
@ -39,20 +48,16 @@ jobs:
# once cargo-3ds gets published somewhere... # once cargo-3ds gets published somewhere...
args: >- args: >-
--git https://github.com/rust3ds/cargo-3ds --git https://github.com/rust3ds/cargo-3ds
--rev 913645665391ea715bc96910bda35f98a4536a6e --rev 7b70b6b26c4740b9a10ab85b832ee73c41142bbb
- name: Check formatting - name: Check formatting
run: cargo fmt --all --verbose -- --check run: cargo fmt --all --verbose -- --check
# For some reason, `cargo clippy` doesn't seem to work properly with
# -Zbuild-std (and thus with `cargo 3ds`). Maybe would be helped by
# https://github.com/rust3ds/cargo-3ds/pull/21 ?
- name: Cargo check - name: Cargo check
run: cargo 3ds check --color=always --workspace --verbose --all-targets run: cargo 3ds clippy --color=always --workspace --verbose --all-targets
env: env:
RUSTFLAGS: RUSTFLAGS:
--deny=warnings --deny=warnings
# TODO: it would be nice to actually build 3dsx for examples/tests, etc. # TODO: it would be nice to actually build 3dsx for examples/tests, etc.
# and run it somehow, but exactly how remains to be seen. Also, we probably # and run it somehow, but exactly how remains to be seen.
# need the std::thread PR to land before a lot of the examples are runnable.

24
ctru-rs/Cargo.toml

@ -36,5 +36,29 @@ default = ["romfs", "big-stack"]
romfs = [] romfs = []
big-stack = [] big-stack = []
# Temporary feature to disable some examples by default,
# until thread support is upstreamed
std-threads = []
[package.metadata.cargo-3ds] [package.metadata.cargo-3ds]
romfs_dir = "examples/romfs" romfs_dir = "examples/romfs"
[[example]]
name = "thread-basic"
required-features = ["std-threads"]
[[example]]
name = "thread-info"
required-features = ["std-threads"]
[[example]]
name = "thread-locals"
required-features = ["std-threads"]
[[example]]
name = "futures-basic"
required-features = ["std-threads"]
[[example]]
name = "futures-tokio"
required-features = ["std-threads"]

2
ctru-sys/src/bin/docstring-to-rustdoc.rs

@ -32,7 +32,7 @@ fn main() -> io::Result<()> {
.lines() .lines()
.map(|v| { .map(|v| {
// Only modify lines with the following structure: `` #[doc ... ] `` // Only modify lines with the following structure: `` #[doc ... ] ``
if v.trim_start().starts_with("#[doc") && v.trim_end().ends_with("]") { if v.trim_start().starts_with("#[doc") && v.trim_end().ends_with(']') {
v.replace("@brief", "") v.replace("@brief", "")
// Example: ``@param offset Offset of the RomFS...`` -> ``- offset Offset of the RomFS...`` // Example: ``@param offset Offset of the RomFS...`` -> ``- offset Offset of the RomFS...``
// Will improve in the future // Will improve in the future

Loading…
Cancel
Save