Files
2nd/10_Wiki/Topics/eslint-config-prettier.md
T
2026-05-02 23:33:34 +09:00

4.2 KiB


id: P-Reinforce-AUTO-7BFB20 category: Unified confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - ESLint-config-Prettier"

eslint-config-prettier

📌 한 줄 통찰 (The Karpathy Summary)

eslint-config-prettier는 코드 스타일을 포맷팅하는 도구인 Prettier와 코드 품질을 검사하는 정적 분석 도구인 ESLint를 함께 사용할 때 발생하는 규칙 충돌을 해결하기 위해 사용하는 npm 패키지입니다 [1, 2]. 이 설정은 ESLint의 규칙 중 Prettier의 포맷팅과 겹치거나 충돌할 수 있는 스타일 관련 규칙들을 모두 꺼주는(off) 역할을 합니다 [1, 3]. 주로 로컬 IDE 및 CI 파이프라인 환경에서 개발 전용(dev-only) 의존성으로 설치되어 사용됩니다 [4, 5].

📖 구조화된 지식 (Synthesized Content)

주요 역할 및 작동 방식

  • ESLint의 규칙은 크게 코드 스타일 규칙과 코드 퀄리티 규칙으로 나뉩니다 [1]. ESLint를 코드 포맷터인 Prettier와 함께 사용할 경우, 이 '코드 스타일 규칙' 부분에서 두 도구 간의 역할이 겹치고 에러가 충돌하는 문제가 발생할 수 있습니다 [1, 6].
  • Prettier 측에서는 이러한 충돌을 해결하기 위해 세 가지 통합 방법을 제시하는데, 그중 여러 단점이 있는 다른 도구들을 제치고 eslint-config-prettier를 사용하는 방식을 가장 적극적으로 추천하고 있습니다 [7, 8].
  • 이 패키지는 ESLint 내에서 Prettier와 충돌하는 규칙들만 선택적으로 비활성화하여, 문법 오류 검출은 ESLint가 전담하고 코드 스타일 정렬은 Prettier가 전담하도록 역할을 명확히 분리해줍니다 [9, 10].

설정 및 적용 방법

  • 패키지 매니저(npm, yarn 등)를 통해 devDependencieseslint-config-prettier를 설치합니다 [5, 11].
  • ESLint 설정 파일(예: .eslintrc.js 또는 .eslintrc.json)의 extends 속성 배열에 "prettier"를 추가하여 적용합니다 [5, 12].
  • 가장 주의할 점은, eslint-config-prettier가 앞서 정의된 ESLint의 스타일 설정들을 덮어쓰고 무효화할 수 있도록 반드시 extends 배열의 가장 마지막에 작성해야 한다는 것입니다 [5, 11, 13].

공급망 공격 보안 이슈 (CVE-2025-54313)

  • 2025년 7월, 해당 패키지 관리자의 npm 토큰이 가짜 npmjs.com 로그인 페이지를 통해 피싱(phishing) 당하면서 대규모 공급망 공격에 노출되었습니다 [4, 14].
  • 공격자는 Windows 시스템을 표적으로 삼는 악성 DLL 페이로드(원격 코드 실행, RCE)를 설치 스크립트(install.js)에 포함시킨 4개의 악성 버전(8.10.1, 9.1.1, 10.1.6, 10.1.7)을 소스 코드 수정 없이 npm에 직접 게시했습니다 [4, 15].
  • 다행히 공격 대상이 Windows 환경에 한정되어 있었고 대다수의 CI 런너가 Linux를 사용하기 때문에 실제 피해 반경은 제한적이었습니다 [16, 17]. 관리자는 즉시 도난당한 토큰을 해지하고 악성 버전을 사용 중단(deprecated) 처리했으며, 안전한 새 버전(8.10.2+, 9.1.2+, 10.1.8+)을 배포하여 문제를 조치했습니다 [16, 18].

⚠️ 모순 및 업데이트 (Contradictions & RL Update)

  • 과거 데이터와의 충돌: 자동화 엔진에 의해 매핑된 지식으로, 추후 정밀 검증 필요.
  • 정책 변화: Programming & Language 분야의 자동 자산화 수행.

🔗 지식 연결 (Graph)

  • Related Topics: ESLint, Prettier, Supply Chain Attack
  • Projects/Contexts: JavaScript Development Environment, CVE-2025-54313
  • Contradictions/Notes: 소스들에 따르면 [[eslint-plugin-prettier|eslint-plugin-prettier]]prettier-eslint와 같은 대안 패키지도 존재하지만, 이들은 속도가 느려지거나 에디터에서 불필요한 빨간 밑줄을 너무 많이 발생시키는 단점이 있어 공식적으로 eslint-config-prettier의 단독 사용이 가장 권장됩니다 [7, 19].

Last updated: 2026-04-19