Welcome to this week’s wrap up of the week in Node and libuv covering June 20 through June 26. The purpose of this blog is to recap a subset of the non-documentation related commits to Node.js, plus give a little color and commentary to the ongoing development of Node.
Node v0.10 branch highlights
string_bytes: properly detect 64bit
Revert “configure: fix cross-compilation host_arch_cc()”
You can view the complete Nodev0.10 commit history on GitHub.
Node master branch highlights
buffer: write strings directly from call
Punycode: update to v1.2.3
The Punycode module got updated to v1.2.3 in commit 24ba9fd, courtesy of Mathias Bynens. It fixes an overly inclusive surrogate pair check: it erroneously tagged low surrogates as high surrogates. For those interested in further reading, dig the UTF-16 Wikipedia article.
You can view the complete Node master commit history on GitHub.
libuv v0.10 branch highlights
windows: use WSAGetLastError(), not errno
Ben fixed a Windows-only bug in c8c775b where setsockopt() errors weren’t being reported properly. It is unlikely to have affected anyone but he back-ported it to the v0.8 branch anyway.
You can view the complete libuv v0.10 commit history on GitHub.
libuv master branch highlights
stream: add an API to make streams do blocking writes
Blocking writes? In Node? Yep, you heard right!
See issue #3584 for the rationale. In a nutshell, having stdio that is sometimes blocking, sometimes non-blocking is a world of pain for many people causing lost messages, etc. This new API makes it possible to have stdio always be blocking.
You can view the complete libuv master commit history on GitHub.