Development/JavaScript,TypeScript

swc: failed to process input file

ANTEGRAL 2023. 1. 7. 19:57
반응형

발단

기존 tsc를 사용하다 swc로 마이그레이션 하는 작업에서 에러가 발생하였다.

failed to process input file

Caused by:
    0: failed to read swcrc file (src/talk/channel/talk-channel-session.ts)
    1: failed to deserialize .swcrc (json) file: unmatched data: 0:0
    2: data did not match any variant of untagged enum FileMatcher

 

당시 .swcrc는 다음과 같은 상태였다.

해결 방법

2번째 줄을 다음과 같이 변경한다.

exclude: ["node_modules", "dist"],

원인

다시 앞으로 돌아와서, 이 문제는 tsconfig.json에서 .swcrc"그대로" 마이그레이션 하는 과정에서 발생하였다.

필자는 exclude의 값을 그대로 swc에 적용하다가 문제가 발생 한 것이다.

가장 중요한 부분은.swcrctsconfig.json은 exclude의 와일드카드 지원이 서로 다르다.

**/*.spec.ts**/node_modules/*의 공통점은 Glob Patterns이다.


swc는 현재 글 작성일 (23/01/07) 기준으로 아직 Glob Patterns을 지원하지 않는다.
대신, swc는 regex를 사용하도록 안내하고 있다.

공식 문서 읽기를 생활화 하자.

반응형