Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Commits on Jul 6, 2013
  1. @bnoordhuis

    lib, src: upgrade after v8 api change

    bnoordhuis authored
    This is a big commit that touches just about every file in the src/
    directory. The V8 API has changed in significant ways. The most
    important changes are:
    * Binding functions take a const v8::FunctionCallbackInfo<T>& argument
      rather than a const v8::Arguments& argument.
    * Binding functions return void rather than v8::Handle<v8::Value>. The
      return value is returned with the args.GetReturnValue().Set() family
      of functions.
    * v8::Persistent<T> no longer derives from v8::Handle<T> and no longer
      allows you to directly dereference the object that the persistent
      handle points to. This means that the common pattern of caching
      oft-used JS values in a persistent handle no longer quite works,
      you first need to reconstruct a v8::Local<T> from the persistent
      handle with the Local<T>::New(isolate, persistent) factory method.
    A handful of (internal) convenience classes and functions have been
    added to make dealing with the new API a little easier.
    The most visible one is node::Cached<T>, which wraps a v8::Persistent<T>
    with some template sugar. It can hold arbitrary types but so far it's
    exclusively used for v8::Strings (which was by far the most commonly
    cached handle type.)
Commits on Jun 11, 2013
  1. @bnoordhuis

    src: upgrade after v8 api change

    bnoordhuis authored
    The prototype of v8::Persistent<T>::MakeWeak() has changed. Update the
    code in src/ to follow suit.
Commits on Jun 7, 2013
  1. @bnoordhuis

    src: unexport node_isolate

    bnoordhuis authored
    Commit 0bba590 accidentally (or maybe erroneously) added node_isolate
    to src/node.h and src/node_object_wrap.h.
    Undo that, said variable is not for public consumption. Add-on authors
    should use v8::Isolate::GetCurrent() instead.
    I missed that while reviewing. Mea culpa.
    Fixes #5639.
Commits on Apr 12, 2013
  1. @indutny

    Merge branch 'v0.10'

    indutny authored
Commits on Apr 10, 2013
  1. @trevnorris @bnoordhuis

    src: add node_isolate to remaining scopes

    trevnorris authored bnoordhuis committed
  2. @bnoordhuis

    src: don't SetInternalField() in ObjectWrap dtor

    bnoordhuis authored
    Call SetPointerInInternalField(0, NULL) rather than
    SetInternalField(0, Undefined()).
    Fixes the following spurious NULL pointer dereference in debug builds:
      #0  0x03ad2821 in v8::internal::FixedArrayBase::length ()
      #1  0x03ad1dfc in v8::internal::FixedArray::get ()
      #2  0x03ae05dd in v8::internal::Context::global_object ()
      #3  0x03b6b87d in v8::internal::Context::builtins ()
      #4  0x03ae1871 in v8::internal::Isolate::js_builtins_object ()
      #5  0x03ab4fab in v8::CallV8HeapFunction ()
      #6  0x03ab4d4a in v8::Value::Equals ()
      #7  0x03b4f38b in CheckEqualsHelper ()
      #8  0x03ac0f4b in v8::Object::SetInternalField ()
      #9  0x06a99ddd in node::ObjectWrap::~ObjectWrap ()
      #10 0x06a8b051 in node::Buffer::~Buffer ()
      #11 0x06a8afbb in node::Buffer::~Buffer ()
      #12 0x06a8af5e in node::Buffer::~Buffer ()
      #13 0x06a9e569 in node::ObjectWrap::WeakCallback ()
Commits on Mar 20, 2013
  1. @trevnorris @bnoordhuis

    bindings: update api

    trevnorris authored bnoordhuis committed
    All compile time warnings about using deprecated APIs have been
    suppressed by updating node's API. Though there are still many function
    calls that can accept Isolate, and still need to be updated.
    node_isolate had to be added as an extern variable in node.h and
    Also a couple small fixes for Error handling.
    Before v8 3.16.6 the error stack message was lazily written when it was
    needed, which allowed you to change the message after instantiation.
    Then the stack would be written with the new message the first time it
    was accessed. Though that has changed. Now it creates the stack message
    on instantiation. So setting a different message afterwards won't be
    This is not a complete fix for the problem. Getting error without any
    message isn't very useful.
Commits on Feb 25, 2013
  1. @bnoordhuis
Commits on Jan 4, 2013
  1. @indutny

    object_wrap: add missing HandleScope

    indutny authored
    by Sven Panne's suggestion, see [0] for details.
Commits on Jan 2, 2013
  1. @indutny

    bindings: update to new v8 apis

    indutny authored
    GetPointerFromInternalField() is deprecated now, we should use
Commits on Aug 20, 2012
  1. @piscisaureus

    unix: don't explicitly instantiate v8::Persistent<x> templates

    piscisaureus authored
    These explicit instantiations were added to make MSVC happy. It turns
    out that some older versions of gcc and llvm now complain about duplicate
    symbols, so we instantiate these templates only when MSVC is used.
Commits on Aug 16, 2012
  1. @piscisaureus
Commits on Mar 9, 2012
  1. @bnoordhuis
Commits on Nov 17, 2011
  1. @ry

    Fixes #2140. Fix illumos build.

    ry authored
Commits on Nov 16, 2011
  1. @piscisaureus
Commits on Sep 5, 2011
  1. @ry
Commits on Mar 15, 2011
  1. @ry

    Update copyright headers

    ry authored
Commits on Oct 4, 2010
  1. @ry
Commits on Sep 13, 2010
  1. @ry

    Fix style in node_object_wrap.h

    ry authored
Commits on Sep 9, 2010
  1. @ry

    Use SetPointerInInternalField

    ry authored
Commits on Jun 4, 2010
  1. @ry
Commits on May 24, 2010
  1. @ry
Commits on Jan 28, 2010
  1. @ry

    ObjectWrap fixed - buffers working!

    ry authored
    Hot bug fix from net2 branch.
Commits on Dec 7, 2009
  1. @ry

    Attach/Detach -> Ref/Unref

    ry authored
Commits on Oct 27, 2009
  1. @ry

    Prefix all source files with node_

    ry authored
Something went wrong with that request. Please try again.