Skip to content

Commit bee8aa0

Browse files
authored
docs: allow musl-specific test skips (#536)
## Motivation An upcoming Vitest browser-mode test uses `@playwright/browser-chromium`, which does not support Linux musl. The current cross-platform testing guidance prohibits every platform-specific test skip, leaving no documented exception for this unavailable dependency. Clarify that this test may be skipped on musl while keeping the broader macOS, Linux, and Windows testing expectations unchanged. The exception remains limited to musl targets where an essential dependency or required platform capability is unavailable and documented.
1 parent 7840fe8 commit bee8aa0

2 files changed

Lines changed: 3 additions & 3 deletions

File tree

CLAUDE.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ The test suite has no known pre-existing failures or flaky tests. If a test fail
6767

6868
### Cross-Platform Testing
6969

70-
**CRITICAL**: This project must work on both Unix (macOS/Linux) and Windows. Skipping tests on either platform is **UNACCEPTABLE**.
70+
**CRITICAL**: This project must work on both Unix (macOS/Linux) and Windows. Skipping tests on either platform is **UNACCEPTABLE**, except on musl targets when an essential dependency or required platform capability is unavailable. Document the unavailable requirement and keep the skip scoped to musl.
7171

7272
- Use `#[cfg(unix)]` and `#[cfg(windows)]` for platform-specific code within tests
7373
- Both platforms must execute the test and verify the feature works correctly
@@ -146,7 +146,7 @@ Enforced by `.clippy.toml`:
146146

147147
### Cross-Platform Requirements
148148

149-
All code must work on both Unix and Windows without platform skipping:
149+
All code must work on both Unix and Windows without platform skipping. The only exception is for tests on musl targets when an essential dependency or required platform capability is unavailable; document the reason and scope the skip to musl.
150150

151151
- Use `#[cfg(unix)]` / `#[cfg(windows)]` for platform-specific implementations
152152
- Platform differences should be handled gracefully, not skipped

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ See `playground/README.md` for the full task list and dependency structure.
7878

7979
## Cross-Platform Development
8080

81-
This project must work on macOS, Linux, and Windows. Skipping tests on any platform is not acceptable.
81+
This project must work on macOS, Linux, and Windows. Skipping tests on any platform is not acceptable, except on musl targets when an essential dependency or required platform capability is unavailable. Document the unavailable requirement and keep the skip scoped to musl.
8282

8383
- Use `#[cfg(unix)]` / `#[cfg(windows)]` for platform-specific code
8484
- Use cross-platform libraries where possible (e.g., `terminal_size` instead of raw ioctl/ConPTY)

0 commit comments

Comments
 (0)