Welcome to this week’s wrap up of the week in Node and libuv. The purpose of this blog is to recap a subset of the non-documentation related commits to the latest branch of Node.js and libuv, plus give a little color and commentary to the ongoing development of Node. And in case you missed it, Node v0.10.1 (Stable) is out as of this morning!
What happened this week?
- Node: 36 commits by 14 authors and 41 files changed.
- libuv: 7 commits by 4 authors.
In the master branch Trevor Norris (trevnorris) and Ben Noordhuis (bnoordhuis) have been upgrading v8 to the latest version. If you recall, at the last-minute before the 0.10 release it was decided to go back to 3.15 because the latest one introduced some pretty serious performance regressions. Trevor and Ben are now trying to track down where that comes from. V8 3.17 is interesting because some APIs were changed so that it doesn’t need to access thread local storage (TLS) as often, which is relatively expensive.
For those of you who have already upgraded to 0.10, you may have encountered some pretty bad performance regressions in some crypto functions (like createHmac) which are currently being worked on by Ben.
Bert Belder (piscisaureus) is working on making the first standalone libuv release (you probably already knew that) so, look for a “stable” version of it next week. This should make life easier for other projects that also use libuv (like luvit, rust, julialang, pyuv) and for distro maintainers that like to package libraries separately.
- repl now uses the domains feature to not crash when an asynchronous function fails with an error.
- And something for the international developers, finally fixed was the issue that repl couldn’t really deal with some characters (e.g. Chinese) that take more space than a regular character.
This week’s Node commits
- core: Unwrap without aborting in handle fd getter
- core: Move UNWRAP_NO_ABORT to handle_wrap.h
- fs: Missing cb errors are deprecated, not a throw …
- http: Don’t hot-path end() for large buffers
- test: No need for kicking in streams2 test
- stream: Return self from readable.wrap
- deps: upgrade libuv to 7b66ea1
- net: improve arbitrary tcp socket support
- install: don’t install man page twice
- deps: upgrade libuv to b45a74f
- doc: fix broken links in blog footer
- net: handle ‘finish’ event only after ‘connect’
- tls: write pending data of opposite side …
- tls: always reset this.ssl.error after handling
This week’s libuv commits
- unix: fix uv_tcp_simultaneous_accepts() logic
- include: bump UV_VERSION_MINOR
- unix: improve uv_guess_handle() implementation
- build: rename OS to PLATFORM
This week’s blogs, tutorials, how-to’s and news: