Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 13 additions & 3 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -1,8 +1,18 @@
root = true

[*]
indent_style = space
indent_size = 4
charset = utf-8
trim_trailing_whitespace = true
end_of_line = lf
indent_size = 4
indent_style = space
insert_final_newline = true
trim_trailing_whitespace = true

[*.md]
indent_size = 2

[*.{yml,yaml}]
indent_size = 2

[LICENSE-*]
indent_size = unset
5 changes: 5 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -33,3 +33,8 @@ repos:
entry: sh -c "cargo fmt --all"
language: rust
pass_filenames: false

- repo: https://github.com/editorconfig-checker/editorconfig-checker.python
rev: 3.6.0
hooks:
- id: editorconfig-checker
23 changes: 8 additions & 15 deletions justfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/usr/bin/env just --justfile

# Define the name of the main crate based
# Define the name of the main crate based on the directory name
main_crate := file_name(justfile_directory())
# How to call the current just executable. Note that just_executable() may have `\` in Windows paths, so we need to quote it.
just := quote(just_executable())
Expand Down Expand Up @@ -31,10 +31,6 @@ build:
check:
cargo check --workspace --all-features --all-targets

# Quick compile for MSRV, without compiling benches
check-msrv:
cargo check --all-targets

# Generate code coverage report to upload to codecov.io
ci-coverage: env-info && \
(coverage '--codecov --output-path target/llvm-cov/codecov.info')
Expand All @@ -45,7 +41,8 @@ ci-coverage: env-info && \
ci-test: env-info test-fmt clippy check test test-doc && assert-git-is-clean

# Run minimal subset of tests to ensure compatibility with MSRV
ci-test-msrv: env-info check-msrv test-msrv
ci-test-msrv: env-info
cargo check --all-features --package {{main_crate}}
Comment on lines +44 to +45
Copy link

Copilot AI Dec 14, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The MSRV verification has been significantly simplified. The new implementation only checks compilation of the main crate library with all features, whereas the previous implementation checked all targets (including tests, benches, and examples via --all-targets) and ran tests across the workspace.

This means MSRV compatibility is no longer verified for:

  1. Test code, benchmarks, and examples (missing --all-targets)
  2. Runtime behavior (tests are no longer executed)

If this simplification is intentional, consider documenting the reasoning. Otherwise, consider restoring --all-targets at minimum, or test execution if runtime MSRV compatibility is important.

Copilot uses AI. Check for mistakes.

# Clean all build artifacts
clean:
Expand Down Expand Up @@ -123,10 +120,6 @@ test-doc: (docs '')
test-fmt: && (fmt-toml '--check' '--check-format')
cargo fmt --all -- --check

# Run all tests for MSRV
test-msrv:
cargo test --workspace

# Find unused dependencies. Uses `cargo-udeps`
udeps: (cargo-install 'cargo-udeps')
cargo +nightly udeps --workspace --all-features --all-targets
Expand All @@ -148,11 +141,11 @@ assert-cmd command:
[private]
assert-git-is-clean:
@if [ -n "$(git status --untracked-files --porcelain)" ]; then \
>&2 echo "ERROR: git repo is no longer clean. Make sure compilation and tests artifacts are in the .gitignore, and no repo files are modified." ;\
>&2 echo "######### git status ##########" ;\
git status ;\
git --no-pager diff ;\
exit 1 ;\
>&2 echo "ERROR: git repo is no longer clean. Make sure compilation and tests artifacts are in the .gitignore, and no repo files are modified." ;\
>&2 echo "######### git status ##########" ;\
git status ;\
git --no-pager diff ;\
exit 1 ;\
fi

# Check if a certain Cargo command is installed, and install it if needed
Expand Down