not merge

https://github.com/typescript-eslint/typescript-eslint/pull/10744

typescript 의 isTypeAssignableTo 의 동작에 대해 배웠다.

구현하면 새로운 에러케이스 생기고 수정하면 또 생기고 반복이라 엄청 오래걸리고 비효율적으로 구현했다.

다음에 이런 경우가 있다면 처음부터 어떤 에러케이스들 있는지 확실히 파악하고 시작해야 겠다고 생각했다.

개인적으로는 merge 가 힘들것 같다 .Union 에서 재귀로 모든 Property 를 비교하는데 규모가 큰 라이브러리에서 성능문제가 생길것 같다.

다른 typescript api 를 기다리거나 기능을 축소하는게 좋아보인다.

merge

https://github.com/typescript-eslint/typescript-eslint/pull/10019

버튼이 코드 텍스트와 겹치는 문제가 있었다. 처음에는 무조건 padding을 추가해 버튼을 아래로 내렸는데, 한 줄짜리 코드에도 적용돼 버튼 위치가 어색해 보였다. 그래서 maintainer가 제안한 대로, 글자 수가 일정 이상일 때만 버튼을 내리도록 휴리스틱을 적용해 수정했다.

https://github.com/typescript-eslint/typescript-eslint/pull/10374

React Testing Library나 E2E 테스트만 해오다가, 이번에 처음으로 코드 커버리지 테스트를 해봤는데 생각보다 쉽게 적용되진 않았다. 특히, assert가 반드시 필요한 경우가 있었다.

https://github.com/typescript-eslint/typescript-eslint/pull/10523

고쳤지만 다른 에러를 유발했다 (못 고쳤다.)

타입스크립트의 widening and narrowing 이 어떻게 동작하는지 자세하게 알 수 있었다.

https://shively-sanders.com/manual/Widening-and-Narrowing-in-Typescript.html