Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Sep 2, 2012
  1. Bump npm version -> 0.6.9

    There's no code changes included in the jump from 0.6.8, just a
    recompilation for Linux, per gh-88.
Commits on Jun 24, 2012
  1. Bump npm version -> 0.6.8

Commits on May 14, 2012
  1. Build fixes

    - Fix sunos
    - Reuse npm's node-gyp instead of pulling in our own copy
Commits on May 9, 2012
  1. Pure-JS test script

    This removes the last dependency on bash.
    Also fix a couple of issues with the npm package file.
  2. Port build to gyp + setup for binary distribution

    node-gyp powers building now, for all operating systems. Only Windows,
    Linux, and OS X were tested. arm support for Linux also was not tested.
    Also included is a wrapper module which pulls in a binary specific to
    your platform.
Commits on Apr 27, 2012
  1. Bump npm version -> 0.6.6

  2. @rlidwka

    gmake and freebsd support

    rlidwka authored committed
Commits on Mar 31, 2012
  1. Make a -march=native build by default

    It's like 3% faster on my system, maybe.
Commits on Mar 17, 2012
  1. Bump npm version -> 0.6.5

  2. @jpmoodlerooms

    fix for latest version of npm

    jpmoodlerooms authored committed
Commits on Jan 5, 2012
  1. Bump npm version -> 0.6.4

Commits on Oct 24, 2011
  1. SunOS build support

    Added the appropriate make configs for SunOS platforms, and fixed a tiny
    issue with the usage of `file` that SunOS wasn't happy with.
    Fixes gh-38
Commits on Oct 8, 2011
  1. Clean up messy makefiles

    There was still a lot of build cruft sitting around from the node 0.4.x
    branch which required the LD_PRELOAD hook. Since LD_PRELOAD is no longer
    needed there's no reason to build as a shared library.
    Fixes gh-37
Commits on Aug 28, 2011
  1. Fix build for node 0.5.4

    `node --vars` no longer does anything. It doesn't seem like this is
    coming back as there's radio silence on joyent/node#1536 and 0.5.5 has
    been tagged with the missing flag. This is just a build tweak to pull
    installation information from the `process` object inside of node.
Commits on Aug 13, 2011
  1. Documentation updates

    Update README to mention differences between node-fibers 0.5 and 0.6.
    Until node 0.5 becomes stable I'll have to maintain both versions.
    Also remove bin/node-fibers from the npm install package (but leave the
    empty wrapper for now)
  2. Compatibility with node-0.5.2

    This includes a greatly simplified coroutine implementation with no
    pthread hooks at all. This is compatible with the recent v8 changes
    which node pulled in, but unfortunately not compatiable with older v8
Commits on Aug 9, 2011
  1. Update package compatibility; broken on node-0.5.2

    In v8:r7575 (tagged at 3.2.10) v8 changed their internal mechanism for
    detecting context changes. Instead of using pthread_self() they are now
    using pthread_getspecific(). Ultimately this makes it considerably
    easier to build fibers into v8, but the current method is broken.
    Node updated v8 from 3.1.8 to 3.4.8 in e5564a3f (tagged at 0.5.2). Thus,
    this version of fibers only works on version of node <= 0.5.1.
Commits on Jul 27, 2011
  1. Bump npm version -> 0.5.0

Commits on May 3, 2011
  1. Bump npm version -> 0.2.6

Commits on Apr 12, 2011
  1. Bump npm version -> 0.2.5

Commits on Mar 28, 2011
  1. Bump npm version -> 0.2.4

Commits on Mar 11, 2011
  1. Bump npm version

Commits on Feb 24, 2011
  1. Improve discovery of coroutine shim

    The fiber-shim script couldn't find on npm installations
    with unexcepted configurations. This makes the script use
    require.resolve() internally which should improve compatibility.
    Closes gh-9
Commits on Feb 23, 2011
  1. Remove rogue GC debugging

    I left some GC debugging code in here which impacted performance.
Commits on Feb 22, 2011
  1. Bump npm version to 0.2.0

    Also includes some readme changes
Commits on Feb 20, 2011
  1. Workaround v8 bugs with small stacks

    v8 seems to have some issues when you try and use stack sizes smaller
    than it's used to.
    First is that if you attempt to set a stack limit that's smaller than
    the snapshot size (if enabled) it will crash your shit in a very hard to
    understand way. Unfortunately there's no way to actually know what that
    magic size is in advance, so I'm just using a secret v8 internal
    variable. This means that for most systems each coroutine will consume
    ~320kb of memory.
    Second issue is there's a bug on 64 bit platforms when your Javascript
    overflows the stack. It's probably pretty hard to hit this bug in
    regular code but it's still quite bad. There's a workaround that I'm
    using to get past that.
Commits on Feb 18, 2011
  1. Bump npm version

  2. Fix terrible bug in thread trampoline

    New threads created while the coroutine library is loaded have a pretty
    good chance of getting corrupted it seems. eio threading hasn't been
    put through too much scrutiny unfortunately, so I didn't catch this
    until now.
  3. Spaces -> Tabs

    I'm going through my biennial spaces and tabs identity crisis. Tabs,
    you've hurt me in the past.. I just hope that I've learned enough so
    that it won't happen again. I'm putting a lot of faith in you, please
    don't leave me cold and alone.
Commits on Feb 17, 2011
  1. Bump npm version

Commits on Feb 3, 2011
  1. Fix node v0.2.x compatibility

    require.resolve is a new feature. v0.3.x is going stable soon, after
    which support for v0.2.x will dwindle. This also fixes 32-bit building
    on some platforms.
    Closes gh-7
Commits on Jan 24, 2011
  1. Package tweaks

    Detect on load when the fibers library is older than node, which
    probably means your build is out date. Also fix it so that `npm rebuild
    fibers` works.
Commits on Jan 23, 2011
  1. npm package

    This fixes the build and adds an npm package. I had to add
    LD_LIBRARY_PATH to fiber-shim because it fails to load if
    is not in your current working directory. This also uses a better
    heuristic for determining if fiber-shim was used.
    Also the library is now just called `fibers` when used in the context of
Something went wrong with that request. Please try again.