Skip to content

Linter

새로운 규칙 추가하기

Oxlint에 새로운 규칙을 추가하는 방법은 규칙 추가 가이드를 참고하세요.

개발

./test.ts 파일을 생성한 후 다음 명령어를 실행하세요:

bash
just watch "cargo run --bin oxlint -- test.ts"

또는 특정 규칙에 대해 테스트하고 필터링할 수 있습니다:

bash
just watch "cargo test -p oxc_linter -- rule-name"

전체 코드베이스에서 oxlint 테스트하기

예를 들어, 큰 자바스크립트/타입스크립트 프로젝트에서 변경 사항을 테스트하려면 oxlint CLI를 빌드하고 해당 코드베이스에 대해 실행할 수 있습니다.

bash
# oxc 리포지토리 내에서 oxlint CLI를 빌드합니다
just oxlint-node
# 그리고 테스트하고자 하는 코드베이스 디렉터리에서 다음 명령어를 실행합니다:
node <path-to-oxc-repo>/apps/oxlint/dist/cli.js
# 또한 플래그를 전달할 수 있습니다. 예를 들어 -D는 특정 규칙을 활성화하고, --disable-x-plugin은 기본 플러그인을 비활성화합니다:
node <path-to-oxc-repo>/apps/oxlint/dist/cli.js -D rulename --disable-unicorn-plugin --disable-oxc-plugin --disable-typescript-plugin

스냅샷 테스트

cargo insta는 스냅샷 테스트에 사용됩니다.

cargo test -p oxc_linter를 실행하고 Tester::new(RULE::NAME, pass, fail).test_and_snapshot() 함수가 호출된 후, 새로운 rule.snap.new 파일이 생성됩니다.

모든 스냅샷 변경 사항을 승인하려면 cargo insta accept를 사용하세요.

규칙 카테고리

  • 정확성 - 명백히 잘못되거나 무의미한 코드
  • 의심스러움 - 대부분 잘못되거나 무의미할 가능성이 높은 코드
  • 기민함 - 매우 엄격하거나 때때로 오류 경보가 발생하는 규칙
  • 성능 - 더 빠르게 실행될 수 있는 코드
  • 스타일 - 더 자연스럽고 일반적인 방식으로 작성되어야 하는 코드
  • 제한 - 활성화하기 전에 각각의 경우에 따라 신중히 고려해야 할 규칙
  • 신생 - 아직 개발 중인 새 규칙