Bun 0.8.1 버전이 출시되어 이전 버전의 문제가 수정되었습니다.

롤빵 v0.8.1 릴리스. 이 릴리스는 0.8.0 다음 ​​날에 제공되며 몇 가지 기존 문제와 버그를 수정하는 데 중점을 둡니다.

우선, 새 버전은 매우 중요한 문제를 해결합니다. 잘못된 버전 이름을 처리하면 bun install충돌이 발생합니다. 이는 사용자가 "^0.0.2rc1"와 같은 잘못된 버전 식별자를 입력하면 시스템 작동이 중지됨을 의미합니다. bun installBun v0.8.1에서 개발자 팀은 이러한 유형의 입력에서 더 이상 충돌이 발생하지 않도록 이를 수정했습니다 . 사용자 입장에서 이는 의심할 여지없이 작업의 안정성과 신뢰성을 높이고 전반적인 사용자 경험을 향상시킵니다.

또한, 또 다른 심각한 문제도 수정되었습니다. 원래 패키저는 런타임 시 실패할 것으로 알고 있는 try/catch블록 내 호출을 자동으로 인라인 처리했는데, 이는 선택적 종속성을 사용하는 코드를 패키징할 때 유용했습니다. require()그러나 이 기능은 실수로 활성화되어 경우에 따라 런타임 오류가 발생할 수 있습니다. 이제 이 문제가 수정되어 코드의 효율성과 안정성이 크게 향상되었습니다.

또한 Bun v0.8.1은 node:http프록시 URL의 버그, bun install오래된 스크립트 처리 문제 package.json, bun --inspect소스 맵의 버그를 포함하여 여러 가지 다른 버그도 수정합니다. 이러한 개선 사항은 모두 Bun의 전반적인 성능과 사용자 경험을 개선하는 데 도움이 됩니다.

새로운 기능 도입 측면에서 v0.8.1 버전에는 Unix 도메인 소켓에 대한 지원이 추가되었습니다. 이 새로운 기능을 사용하면 네트워크 호스트/포트 대신 파일 시스템의 파일에 대한 소켓을 가리킬 수 있습니다. 이는 일부 컨테이너 또는 프록시 환경과 같이 동일한 시스템에서만 액세스할 수 있는 서버를 실행할 때 유용합니다. 이러한 방식으로 데이터 전송의 효율성과 보안을 효과적으로 향상시킬 수 있습니다.

const server = Bun.serve({
  unix: "/tmp/my-socket.sock", // <-- new option
  fetch(req){
    console.log(req.url);
    return new Response("Hello world!");
  }
});

console.log(`Listening on unix:///tmp/my-socket.sock!`);

성능 최적화는 이번 업데이트의 또 다른 중요한 내용입니다. v0.8.0에는 성능 저하 문제가 있으며, 이벤트 루프 스케줄링이 제대로 작동하지 않아 요청 본문을 읽을 때 마이크로태스크 대기열을 제때에 처리하지 못하는 문제가 발생합니다. 하지만 v0.8.1에서는 이 문제가 수정되었습니다. 테스트 결과에 따르면 새 버전은 v0.8.0보다 요청을 2.8배 빠르게 처리하여 사용자에게 눈에 띄는 속도 향상을 제공합니다.

Bun v0.8.1 버전에서는 메모리 관리도 개선되었습니다. 원래는 해당 크기를 가비지 수집기에 보고하지 않았으므로 Headers가비지 수집기가 충분히 크면 예상대로 실행되지 않을 수 있습니다 . Bun은 이제 가비지 수집기의 크기를 보고 하고 각 호출은 가비지 수집기에 사용된 메모리를 보고합니다. 이 변경 사항은 메모리 리소스를 더 잘 관리하고 과도한 메모리 사용으로 인해 Bun의 운영 효율성에 영향을 미치는 것을 방지하는 데 도움이 됩니다.BlobHeadersBlobHeadersBlobfetch()

마지막으로 Bun 1.0이 9월 7일에 출시될 예정이라는 점을 언급할 가치가 있습니다. 이 새로운 주요 버전은 더 많은 기능 개선과 업데이트를 제공할 예정입니다. 함께 출시되기를 기대하겠습니다!

추천

출처www.oschina.net/news/255433/bun-v0-8-1