Skip to content
This repository has been archived by the owner on Oct 16, 2021. It is now read-only.

Migrating from v0.2 to v0.3

aaronblohowiak edited this page Jan 23, 2011 · 34 revisions

Many people are running code on the stable branch v0.2. Soon the unstable branch, v0.3, will become stable. You can help the community by documenting what API changes were made between the two.

C++ API

  • The internal node::Buffer class had dramatic changes early on in the v0.3. Any addons which used node:Buffer will require heavy rewrite. You might find this helpful. buffer.h

  • If you are using libraries that have C++ addons and were installed through npm, you may need to re-install them with npm in order for the addons to recompile against the new api. Then, they should start working again. An example of this would be isaac's "glob" module.

JavaScript API

  • sys module is now the util module (soft deprecation)

  • querystring.parse and querystring.stringify were made simpler. They no longer handle deep objects.

  • v0.3.6 introduced a new interface for making outbound http requests: http.request() and http.get(). Previously users had to construct a http.Client instance and issue client.request() calls. The old http.Client interface should be considered deprecated. That said, there is a legacy interface for http.Client accessible which runs on top of http.request() - you may find inconsistencies between v0.3.6+ http.Client and the http.Client before v0.3.6. These inconsistencies are considered bugs and should be reported.

  • The stdio module got renamed to tty

  • NEW: require.resolve

  • NEW: path.resolve

  • REMOVED: path.split, path.normalizeArray

Internal C++ API (inside of NODE_ROOT/src/*.cc)

Internal Javascript API (inside of NODE_ROOT/lib/*.js

Clone this wiki locally