Merge pull request #2 from helix-editor/ghaci

Add a CI workflow
This commit is contained in:
Pascal Kuthe 2023-08-04 19:29:23 +02:00 committed by GitHub
commit e774ca23b8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 73 additions and 2 deletions

69
.github/workflows/ci.yml vendored Normal file
View File

@ -0,0 +1,69 @@
name: CI
on:
pull_request:
push:
branches:
- master
jobs:
check-msrv:
name: Check
strategy:
matrix:
toolchain:
- "1.65"
- stable
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v3
- name: Install toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: ${{ matrix.toolchain}}
- uses: Swatinem/rust-cache@v2
- name: Run cargo check
run: cargo check
test:
name: Test
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v3
- name: Install stable toolchain
uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
- name: Run cargo test
run: cargo test --workspace
lints:
name: Lints
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v3
- name: Install stable toolchain
uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy
- uses: Swatinem/rust-cache@v2
- name: Run cargo fmt
run: cargo fmt --all --check
- name: Run cargo clippy
run: cargo clippy --workspace --all-targets -- -D warnings
- name: Run cargo doc
run: cargo doc --no-deps --workspace --document-private-items
env:
RUSTDOCFLAGS: -D warnings

View File

@ -16,7 +16,7 @@ pub(crate) trait Char: Copy + Eq + Ord + fmt::Display {
fn normalize(self, config: &MatcherConfig) -> Self; fn normalize(self, config: &MatcherConfig) -> Self;
} }
/// repr tansparent wrapper around u8 with better formatting and PartialEq<char> implementation /// repr tansparent wrapper around u8 with better formatting and `PartialEq<char>` implementation
#[repr(transparent)] #[repr(transparent)]
#[derive(PartialEq, Eq, PartialOrd, Ord, Clone, Copy)] #[derive(PartialEq, Eq, PartialOrd, Ord, Clone, Copy)]
pub(crate) struct AsciiChar(pub u8); pub(crate) struct AsciiChar(pub u8);

View File

@ -171,6 +171,7 @@ impl<H: Char> MatcherDataView<'_, H> {
true true
} }
#[allow(clippy::too_many_arguments)]
fn score_row<const FIRST_ROW: bool, const INDICES: bool, N: Char>( fn score_row<const FIRST_ROW: bool, const INDICES: bool, N: Char>(
current_row: &mut [ScoreCell], current_row: &mut [ScoreCell],
matrix_cells: &mut [MatrixCell], matrix_cells: &mut [MatrixCell],

View File

@ -60,6 +60,7 @@ impl<C: Char> MatrixLayout<C> {
/// # Safety /// # Safety
/// ///
/// `ptr` must point at an allocated with MARTIX_ALLOC_LAYOUT /// `ptr` must point at an allocated with MARTIX_ALLOC_LAYOUT
#[allow(clippy::type_complexity)]
unsafe fn fieds_from_ptr( unsafe fn fieds_from_ptr(
&self, &self,
ptr: NonNull<u8>, ptr: NonNull<u8>,

View File

@ -1,4 +1,4 @@
//! Adapted from the `boxcar` crate at https://github.com/ibraheemdev/boxcar/blob/master/src/raw.rs //! Adapted from the `boxcar` crate at <https://github.com/ibraheemdev/boxcar/blob/master/src/raw.rs>
//! under MIT licenes: //! under MIT licenes:
//! //!
//! Copyright (c) 2022 Ibraheem Ahmed //! Copyright (c) 2022 Ibraheem Ahmed