Bun 지원이 이제 제한되고 폐기 예정으로 전환됨

5 days ago 9
  • 이 이슈는 아직 Open 상태이며, 다음 yt-dlp 및/또는 ejs 릴리스부터 Bun 지원 범위를 1.2.11 이상 1.3.14 이하로 제한하고 지원 자체도 폐기 예정으로 전환함
  • yt-dlp는 Bun을 ejs 호환 JavaScript 런타임으로 계속 쓰되, 유지 부담이 커지면 Bun 지원을 완전히 제거할 권리를 남겨둠
  • 최소 지원 버전은 기존 1.0.31에서 1.2.11로 올라가며, 1.2.0 이전 Bun으로 ejs 패키지를 빌드하면 ejs 잠금 파일이 무시되어 최근 npm 공급망 공격을 고려할 때 보안상 큰 우려가 된다고 봄
  • 1.2.0이 아니라 1.2.11을 하한으로 잡은 이유는 1.2.11 이전 Bun에서는 ejs 테스트 스위트를 실행할 수 없기 때문임
  • 상한은 1.3.14로 정해졌으며, 이 버전이 원래 Zig 코드베이스에서 빌드된 마지막 릴리스라는 점이 근거로 제시됨
  • Bun이 최근 Claude를 사용해 Rust로 재작성됐고 개발 방향이 “완전히 vibe-coded”되는 쪽으로 보인다는 점이 향후 유지보수 부담과 신뢰 문제로 제기됨
  • 한 댓글은 Deno도 “vibe coded”되고 있다고 반박했지만, 관리자는 Claude를 사용하는 것Claude에 완전히 의존하는 것 사이에는 큰 차이가 있다고 답함
  • 1.3.4부터 1.3.14까지도 Anthropic 인수 이후 “vibe coding” 영향을 받았을 수 있으니 지원에서 제외해야 하는 것 아니냐는 질문에는, 관리자가 검토하겠다고 답함
  • 일부 사용자는 실제 문제가 발생하기 전부터 최신 Bun 실행을 막는 것은 근거 없는 선제 제한이며, 경고나 플래그를 두고 계속 실행할 수 있게 해야 한다고 반대함
  • 다른 댓글은 --js-runtimes에 Bun 바이너리 경로를 직접 넘길 수 있으므로, 최신 Bun은 평소대로 쓰고 yt-dlp 전용으로 정적 Bun 1.3.14를 지정하는 우회가 가능하다고 설명함
  • 관련 공지로 Node v20·v21 지원 중단 이슈와 Deno 최소 지원 버전을 v2.3.0으로 올리는 이슈가 함께 연결됐고, EJS 위키 문서는 아직 이번 변경을 반영하지 않았다고 안내됨
  • 관리자는 Hacker News 유입 댓글을 의식해, 댓글을 달기 전 실제로 yt-dlp에서 Bun을 쓰는 문제에 관심이 있는지 먼저 생각해 달라는 고정 댓글을 남김
Read Entire Article