angular/angular
Angular 22.2.1 출시, 템플릿 최적화 및 보안 개선
원제 angular/angular v22.2.1
v22.2.1
Key Point
이 버전은 보안(데이터 URL 필터링, 프로토콜 상대 경로 차단), 성능(불필요한 객체 복사 제거), 개발자 경험(명확한 에러 메시지, 디버그 정보 추가) 등 여러 영역에서 개선되었으며, 특히 template 최적화와 라우팅 안정성이 강화되었다.
핵심 요약
- Angular 22.2.1이 릴리스되었으며 여러 모듈에 걸친 개선사항이 포함되었다.
- common 모듈에서 srcset 최적화 비활성화 시 [srcset] 바인딩이 통과되도록 수정했다.
- compiler 모듈은 생성 함수에 명시적 반환 타입을 추가하고 템플릿 파이프라인에서 괄호를 잘못 제거하는 문제를 해결했다.
- compiler-cli에서 extendedConfigCache 지원을 추가하여 읽기 구성 기능을 개선했다.
- core 모듈은 afterRenderEffect 블록에 debugName을 추가하고, 위험한 data: URL과 vbscript: URL을 sanitizer에서 필터링하며, 비실행 MIME 타입에 대해 data: URL 허용 목록을 확장했다.
- NG0600 에러 메시지에 signal과 component 이름을 포함시키고 HMR 이후 에러 바운더리 폴백을 렌더링하도록 개선했다.
- http 모듈에서 httpResource의 reportProgress를 reportDownloadProgress로 포워드하도록 수정했다.
- platform-server 모듈에서 resolveUrl 함수에 프로토콜 상대 경로를 거부하는 기능을 추가했다.
- router 모듈은 URL 크기 객체를 모든 라우트 스냅샷에 복사하는 것을 제거하고 프로토콜 상대 URL 직렬화 시 폴백을 추가했다.
- 라우터에서 리다이렉트 함수의 절대 리다이렉트를 제한하고, 프로덕션 빌드에서 중복 outlets를 거부하며, outlets이 라우트와 일치하도록 요구한 후 자식 세그먼트를 처리하도록 변경했다.
- 라우터 활성화 시 초기 blocking resource 입력을 동기적으로 설정하고 RouterLink에서 UrlTree 인스턴스를 보유하지 않도록 개선했다.
릴리스 노트 보기 ↗github.com