자바스크립트 개발자 여러분, 이제 정말로 .eslintrc를 지울 때가 왔습니다.
2026년 2월, ESLint v10.0.0과 Node.js v25.6.1이 동시에 터뜨린 ‘더블 업데이트’는 단순한 버전 업그레이드가 아닙니다.
구성 방식, 런타임 파서, 빌드 도구 호환성까지 직격으로 바꾸는 변화들이라, 지금 당장 대응하지 않으면 CI가 깨지고 monorepo가 혼란에 빠질 수 있습니다.
아래에서 핵심만 콕 집어 실무 관점으로 정리했습니다.
🧹 ESLint 10.0.0 – eslintrc 완전 제거 & Flat Config 전면화
ESLint v10.0.0에서 가장 큰 변화는 eslintrc 시스템의 완전 제거입니다.
.eslintrc.*,.eslintignore파일 모두 무시ESLINT_USE_FLAT_CONFIG환경 변수,--no-eslintrc,--env,--ignore-path등 관련 CLI 플래그 삭제/* eslint-env */주석은 이제 에러로 처리loadESLint(),Linter생성자 등 eslintrc 전용 API 전부 제거
대신 eslint.config.js/ts (Flat Config)만 유효하며, 설정 파일 탐색 방식이 크게 바뀌었습니다.
“각 린트 대상 파일의 디렉터리부터 위로 탐색” → monorepo에서 패키지별
eslint.config.js를 자연스럽게 적용할 수 있게 됨
추가 개선점
- JSX 참조 추적 정확도 대폭 향상 (no-unused-vars, no-undef false positive/negative 해결)
- 타입 정의 기본 포함, RuleTester API 강화 등 개발자 경험 대폭 업그레이드
실무 마이그레이션 체크리스트
npx @eslint/migrate-config .eslintrc.json으로 자동 변환- 플러그인/파서는
import로 불러와 객체 형태로 등록 ignores: ["**/*.test.js"]형태로 ignore 관리- monorepo라면 각 패키지 루트에
eslint.config.js두고filesglob으로 세밀 제어
⚙️ Node.js 25.6.1 (Current) – cjs-module-lexer → merve 교체 & npm 11.9.0
Node.js 25.6.1은 비교적 작은 패치지만, 내부적으로 매우 중요한 교체가 들어갔습니다.
주요 변경
- CommonJS 모듈 구문 분석 엔진 cjs-module-lexer → merve (Yagiz Nizipli 제작, C++ 기반 초고속 lexer)
- npm 11.9.0 기본 탑재
- HTTP 헤더 파싱에 slab allocation 도입 → 고부하 서버 환경에서 메모리 할당 패턴 최적화
- DNS, structured clone, UTF-8 문자열 처리 등 저수준 성능 개선 다수
실무에서 체감되는 부분은 monorepo 및 대규모 프로젝트의 시작 시간 단축과 CJS/ESM 경계에서의 안정성 향상입니다.
📌 실무자들을 위한 즉시 적용 팁
-
오늘 당장 할 일
- 로컬/ CI 환경에서
node --version확인 → 25.6.1로 업그레이드 테스트 - ESLint 10 설치 후
eslint --print-config some-file.js로 Flat Config 적용 여부 검증
- 로컬/ CI 환경에서
-
monorepo 전략
- 루트에 공유 설정 모듈 (
eslint-config-company) 만들기 - 각 패키지에
eslint.config.js로extends: ["../eslint-config-company"]+filesoverride
- 루트에 공유 설정 모듈 (
-
테스트 전략
- CommonJS 의존성 많은 레거시 코드가 있는지 확인
- HTTP 서버가 있는 프로젝트라면 헤더 파싱 관련 부하 테스트 진행
-
롤백 대비
- ESLint는 9.x LTS 계속 유지 중 → 급한 팀은 9.x로 고정 가능
지금 바로 업그레이드하세요.
.eslintrc를 영원히 지우고, Flat Config와 merve 파서의 세상을 경험할 때입니다.
📂 공식 정보 출처 (Verified Reference Library)
본 리포트 작성에 사용된 모든 공식 발표 및 핵심 보도 자료입니다.
[1] ESLint v10.0.0 Released • [Official Blog] https://eslint.org/blog/2026/02/eslint-v10.0.0-released/ • [Migration Guide] https://eslint.org/docs/latest/use/migrate-to-10.0.0
[2] Node.js v25.6.1 (Current) • [Official Release Blog] https://nodejs.org/en/blog/release/v25.6.1
[3] merve (새 CJS lexer) • [GitHub] https://github.com/nodejs/merve
[4] ESLint Configuration Migration Guide • [Docs] https://eslint.org/docs/latest/use/configure/migration-guide
[5] ESLint GitHub Releases • [GitHub] https://github.com/eslint/eslint/releases/tag/v10.0.0