chore: sharp를 빌드 승인에서 제외 (prebuilt만 사용)#90
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
배경
sharp는 네이티브 바이너리를
@img/sharp-*prebuilt 패키지(optionalDependencies)로 배포하며, libvips까지 통째로 번들돼 있다. 따라서 install 스크립트를 실행하지 않아도require('sharp')가 정상 동작한다. 그런데onlyBuiltDependencies에 등록돼 있어 매pnpm install마다 install 스크립트가 실행됐고, brew로 libvips를 설치한 개발자 머신에서는 source-build fallback이node-addon-api부재로 실패해pnpm install전체가 ELIFECYCLE로 죽는 문제가 있었다. 이번 PR은 sharp를onlyBuiltDependencies에서ignoredBuiltDependencies로 이동해 이 문제를 근본 제거한다.변경 내용
pnpm-workspace.yaml:sharp를onlyBuiltDependencies→ignoredBuiltDependencies로 이동 (단순 삭제가 아니라 이동 — 다음pnpm approve-builds때 다시 묻지 않도록 명시)검증
pnpm install:Failed/ELIFECYCLE/source-build 메시지 없이 깨끗하게 완료node -e "require('sharp')":sharp OK 8.17.3정상 로드 확인git status --short:pnpm-workspace.yaml만 변경, lockfile 불변 확인이 작업은 apps-in-toss-community 조직 전체에서 sharp 빌드 승인을 제거하는 동일 수정의 일부다 (8개 repo 대상).