Skip to content
Commits on May 9, 2012
  1. @felixge @isaacs

    Fix exception output for module load exceptions

    felixge committed with isaacs
    So instead of:
            throw e; // process.nextTick error, or 'error' event on first tick
    You will now see:
    throw new Error('bar');
    This is a sub-set of isaacs patch here:
    The difference is that this patch purely adresses the exception output,
    but does not try to make any behavior changes / improvements.
  2. @felixge @isaacs

    Fix process.nextTick throw call sites

    felixge committed with isaacs
    This patch now reports the proper throw call site for exceptions
    triggered within process.nextTick. So instead of this:
            throw e; // process.nextTick error, or 'error' event on first tick
    You will now see:
      throw new Error('My Error');
    From my testing this patch causes no performance regressions, but does
    greatly simplify processing the nextTickQueue.
Commits on Dec 18, 2011
  1. @felixge
Commits on Nov 22, 2011
  1. @felixge

    Get test-http-response-no-headers.js to pass

    felixge committed
    Main fix was in 3abebf which added HTTP/0.9 support to http parser.
    Changed test because HTTP 1.1 mandates keep-alive when no headers are
    Fixes #1711
Commits on Jul 26, 2011
  1. @felixge

    Fix test-net-stream.js

    felixge committed
    I broke this in 09ee293.
  2. @felixge
Commits on May 24, 2011
  1. @felixge @ry

    Remove 'connect' event from server side sockets

    felixge committed with ry
    Sockets emitted by the 'connection' event are always connected, having
    them emit the 'connect' event makes no sense. It only confused people,
    as it's not clear if you have to listen to 'connect' or not.
    That try..catch block was also very scary. It would silently swallow
    exceptions in 'connect' listeners and destroy the socket. Makes no
    Fixes #1047.
  2. @felixge @ry

    Fix error handling bug in stream.pipe()

    felixge committed with ry
    Problem: Since stream.pipe() is registering it's own error handlers on
    the source and destination stream, it needs to replicate the
    EventEmitter 'error' emitting semantics of throwing an error if there
    are no other listeners. However, there was a off-by-one error because
    the check for remaining listeners was done after cleanup() which means
    the pipe's own listener was no longer included.
    This would cause 'error' events on either the dest or the source to
    throw if there was one other error listener, and while swallowing
    the 'error' event if there was no other listener.
    Solution: I added a test demonstrating the two issues and fixed the
    problem by correcting the off-by-one error.
    Fixes #1095.
Commits on May 14, 2011
  1. @felixge @ry

    Update http.ServerRequest docs

    felixge committed with ry
    The documentation for 'end' was wrong, and 'close' now has an `err`
  2. @felixge @ry

    Error argument for http.ServerRequest 'close'

    felixge committed with ry
    Problem: It was not possible to detect the reason for a premature
    connection termination in http requests.
    This patch provides a new `err` argument to the 'close' event which
    can be inspected to differentiate between a timeout and a client
    actively terminating the connection.
    Also contains tests for this new behavior for http and https.
  3. @felixge @ry

    Make https 'timeout' events bubble up

    felixge committed with ry
    Also adds a test case for it.
Commits on Apr 14, 2011
  1. @felixge @ry

    Feature: WriteStream#bytesWritten property

    felixge committed with ry
    Implemented a new property for writable file streams that keeps track
    of the bytes written (not queued). This helps when you are piping
    another stream to a file, and would like to know how big the file is
    without having to issue another stat call.
    closes #930
  2. @felixge @ry

    Fix: Multiple pipes to the same stream were broken

    felixge committed with ry
    When creating multiple .pipe()s to the same destination stream, the
    first source to end would close the destination, breaking all remaining
    pipes. This patch fixes the problem by keeping track of all open
    pipes, so that we only call end on destinations that have no more
    sources piping to them.
    closes #929
Commits on Apr 13, 2011
  1. @felixge @ry

    Allow omission of end option for range reads

    felixge committed with ry
    Problem: Sometimes it is useful to read a file from a certain position
    to it's end. The current implementation was already perfectly capable
    of this, but decided to throw an error when the user tried to omit
    the end option. The only way to do this, was to pass {end: Infinity}.
    Solution: Automatically assume {end: Infinity} when omitted, and remove
    the previous exception thrown. Also updated the docs.
    closes #801.
Commits on Apr 12, 2011
  1. @felixge @ry

    Allow to remove all EventEmitter listeners at once

    felixge committed with ry
    This patch adds support for calling EventEmitter#removeAllListeners
    with no parameters in order to remove all listeners as once.
    See discussion:!topic/nodejs-dev/Mcyal1ThTHY
    Closes GH-889.
Commits on Mar 14, 2011
  1. @felixge @ry

    Crypto update should only accept strings / buffers

    felixge committed with ry
    I have seen a lot of people trying to pass objects to crypto's update
    functions, assuming that it would somehow serialize the object before
    In reality, the object was converted to '[object Object]' which was
    then hashed, without any error message showing.
    This patch modifies the DecodeBytes function (used exclusively by
    crypto at this point) to complain when receiving anything but a
    string or buffer.
    Overall this should be a less-suprising, more robust behavior.
Commits on Feb 28, 2011
  1. @felixge @ry

    Expose errno with a string for dns/cares

    felixge committed with ry
    This is to mirror the behavior introduced in
    Closes GH-727.
Commits on Feb 25, 2011
  1. @felixge @ry

    Do not cache modules that throw exceptions

    felixge committed with ry
    If a module throws an exception on load, it should not be cached.
    This patch shows the problem in a test case and also fixes it.
    Closes GH-707
    Closes GH-710
Commits on Feb 24, 2011
  1. @felixge @ry

    Fix ReadStream bufferSize docs

    felixge committed with ry
    The default is 64kb buffer, not 4kb.
    Closes GH-702.
  2. @felixge @ry

    Document existence of `fd` property for ReadStream

    felixge committed with ry
    Closes GH-194.
    Closes GH-701.
  3. @felixge @ry
Commits on Feb 15, 2011
  1. @felixge @ry

    Refactor parameter handling

    felixge committed with ry
    * Removes an unnecessary variable
    * Avoids having two variables with the same name
    * Avoids re-declaring an existing parameter
    * Removes an unnecessary ternary operator
    * Avoid an inline short-circuit expression for greater clarity.
  2. @felixge @ry

    Correct API documentation

    felixge committed with ry
    The fact that the mode parameter is optional for and
    fs.openSync was not documented.
  3. @felixge @ry

    Fix: callback did not fire

    felixge committed with ry
    Problem: Omitting the mode parameter causes the provided callback
    parameter to never fire. This was originally fixed in 6078c37 and
    later broken in 5f2e909.
    Solution: Overwriting the value of a parameter also overwrites the
    reference in the arguments object. This patch works arround this
    fact by not touching the mode parameter until a reference to the
    callback has been established.
Commits on Jan 24, 2011
  1. @felixge @ry

    Restructure src/node.js startup code

    felixge committed with ry
    This patch introduces a logical structure and sequence for the
    bootstrap code found src/node.js.
Commits on Jan 23, 2011
  1. @felixge @ry

    Move commonjs module system into lib/module.js

    felixge committed with ry
    This de-couples NativeModule from the module system and completes the
    main objective of this refactoring.
Commits on Jan 16, 2011
  1. @felixge @ry

    Fix test-require-cache-without-stat.js

    felixge committed with ry
    This path adds an additional cache to the module system for caching the
    location of previously required modules. Since it is embedded in the
    loop that iterates over all require.paths, this patch also handles the
    case where require.paths is being modified.
    The patch also cleans up some code around it.
  2. @felixge @ry
Commits on Jan 13, 2011
  1. @felixge @ry

    Fix NODE_PATH, was broken after cleanup

    felixge committed with ry
  2. @felixge @ry

    Always init module paths

    felixge committed with ry
    The previous cleanup patch broke module loading in the the REPL by
    not initializing require.paths.
Commits on Jan 12, 2011
  1. @felixge @ry

    Cleanup node module system code

    felixge committed with ry
Commits on Dec 14, 2010
  1. @felixge @ry

    Prefer require.cache over native module cache

    felixge committed with ry
    This patch changes node's module loading behavior so that the
    require.cache is always the first place to consider when loading a
    The motivation for this change is to help people who are writing
    focused tests for their node.js applications, and need a mechanism
    to inject test doubles to replace native node.js modules.
Commits on Oct 11, 2010
  1. @felixge @ry

    Stress test for http upload timeouts

    felixge committed with ry
    This was meant to find a bug in setTimeout, but there doesn't seem to be
    one. So this test can no help to prevent future regressions.
Commits on Sep 9, 2010
  1. @felixge @ry
  2. @felixge @ry
Something went wrong with that request. Please try again.