io.js 주간 뉴스 2015년 4월 3일

io.js 1.6.3 릴리스, 내부 모듈, 화해 진행

v1.6.3 릴리스

이번 주에는 io.js v1.6.3 릴리스가 있었습니다. GitHub에서 전체 변경사항을 볼 수 있습니다.

주요 변경 사항

  • fs: 특정 상황에서 fs.writeFileSync(), append 모드의 fs.writeFile()fs.writeFileSync()가 손상을 일으킬 수 있습니다. 이 이슈는 #1058에서 보고돼서 #1063에서 수정했습니다. (Olov Lassus)
  • iojs: 핵심 코드를 공개 API로 노출하지 않고 내부적으로만 JavaScript 모듈에 공유할 수 있도록 내부 모듈(internal modules) API를 도입했습니다. 이 기능은 핵심 코드에서만 사용합니다. #848 (Vladimir Kurchatkin)
  • timers: timers와 관련된 사소한 두 가지 문제를 수정했습니다.
    • Timer.close()는 이제 적절하게 멱등입니다. #1288 (Petka Antonov).
    • setTimeout()는 콜백에서 unref() 이후 딱 한 번만 콜백을 실행할 것입니다. #1231 (Roman Reiss).
    • NOTE: #1152처럼 timers 코드와 관련된 해결되지 않은 이슈들도 있습니다.
  • Windows: 윈도우에서 컴파일된 애드온을 위해 “지연 로딩 훅(delay-load hook)”을 추가해서 윈도우 사용자가 io.js의 애드온에서 경험할 수 있는 일부 문제를 줄일 것입니다. #1251 (Bert Belder)
  • V8: V8을 4.1.0.27로 업데이트해서 사소한 버그들이 수정되었습니다.
  • npm: npm을 2.7.4로 업그레이드했습니다. 자세한 내용은 npm CHANGELOG.md 를 참조하세요.

알려진 이슈

  • timers와 unref()에서 발생하는 일부 문제는 여전히 처리되어야 합니다. #1152를 참조하세요.
  • 원인을 아직 알 수 없는 미미한 메모리 누수가 있을 수 있습니다. 자세한 사항은 #1075를 참조하세요.
  • 대화형 셸에서 서러게이트 페어(Surrogate pair)가 터미널을 정지시킬 수 있습니다. #690
  • io.js를 정적 라이브러리로 빌드할 수 없습니다. #686
  • process.send()는 문서에서 설명된 바와는 다르게 동기적이지 않습니다. 이 회귀는 1.0.2에서 발생했습니다. #760에서 확인 가능하며 #774에서 수정하고 있습니다.
  • DNS 쿼리 중에 dns.setServers()를 호출하면 실패한 단언문 때문에 크래시가 발생할 수 있습니다. #894

커뮤니티 업데이트

다가오는 이벤트

  • NodeConf 입장권을 판매하고 있습니다. 6월 8일과 9일, 캘리포니아 오클랜드에서 열리며, NodeConf Adventure는 6월 11일~14일, 캘리포니아 Walker Creek Ranch에서 열립니다.
  • CascadiaJS 입장권을 판매하고 있습니다. 7월 8일~10일, 워싱턴주에서 열립니다.
  • NodeConf EU 입장권을 판매하고 있습니다. 9월 6일~9일, 아일랜드 워터퍼드에서 열립니다.
  • nodeSchool tokyo가 4월 12일 일본의 도쿄에서 개최될 예정입니다.