IMO I think both APIs should be supported. I have lots of old native
modules that I have no desire to update to this new API.

In the docs, I'd rather both macros be explained so that the user can pick
the one that best suits their needs (and doesn't mention one being older
than the other).

On Wednesday, January 23, 2013, Ben Noordhuis wrote:

> In src/node.cc:
>
> > @@ -1869,7 +1869,11 @@ static gid_t gid_by_name(Handle<Value> value) {
> >    }
> >
> >    // Execute the C++ module
> > -  mod->register_func(target);
> > +  if (mod->register_func != NULL) {
> > +    mod->register_func(target->Get(String::New("exports"))->ToObject());
>
> Defense in depth. Stuff like this helps catching regressions.
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/joyent/node/pull/4634/files#r2741400>.
>
>