Ryan Dahl [Mon, 8 Feb 2010 05:59:56 +0000 (21:59 -0800)]
Add handlescope and flush to process.reallyExit()
Ryan Dahl [Mon, 8 Feb 2010 05:56:36 +0000 (21:56 -0800)]
Fix stdout flush issue
http://github.com/ry/node/issues#issue/53
Ryan Dahl [Mon, 8 Feb 2010 02:05:58 +0000 (18:05 -0800)]
Add failing test for stdout flush on exit
Ryan Dahl [Mon, 8 Feb 2010 01:18:28 +0000 (17:18 -0800)]
Add posix.truncate()
Ryan Dahl [Mon, 8 Feb 2010 00:51:20 +0000 (16:51 -0800)]
Throw errors from server.listen()
Matt Brubeck [Wed, 13 Jan 2010 17:38:27 +0000 (09:38 -0800)]
Fix the documentation of dns error handling.
These are actually passed as Error objects, not separate "code" and "message"
parameters.
Ryan Dahl [Sat, 6 Feb 2010 01:14:14 +0000 (17:14 -0800)]
Bugfix: blocked pumping in stdio coupling
This should fix the test in c05b5d8 by Mikeal Rogers.
Mikeal Rogers [Thu, 7 Jan 2010 08:41:59 +0000 (00:41 -0800)]
Adding test for bug in stdio.
http://groups.google.com/group/nodejs/browse_thread/thread/
10fda8eaf7276642/
e5d5147f2b666abd
Felix Geisendörfer [Thu, 4 Feb 2010 21:28:04 +0000 (22:28 +0100)]
Simplified module system
createModule got removed as it was unnecessary and caused issues by
doing its own cache checks independent of loadModule. Internal modules
are now the only globally cached modules, all other modules are only
cached by inheriting their parent modules cache.
Credits: Module specific cache and a few other diffs by Blaine Cook
http://github.com/blaine/node/commit/
431662d25c0db3096deb5f679ca73b1dd6bb8ae5
http://romeda.org/blog/2010/01/hot-code-loading-in-nodejs.html
http://thread.gmane.org/gmane.comp.lang.javascript.nodejs/1994
Ryan Dahl [Wed, 3 Feb 2010 20:57:05 +0000 (12:57 -0800)]
Revert "Adding output of Platform information into the test runner"
Broken on at least one platform http://pastie.org/808217
This reverts commit
704f394c6671af5b981900fc3666f1b97ef580a9.
Ryan Dahl [Wed, 3 Feb 2010 20:14:51 +0000 (12:14 -0800)]
bump version
Ryan Dahl [Wed, 3 Feb 2010 20:19:08 +0000 (12:19 -0800)]
Downcase process.ARGV/ENV to process.argv/env
Aaron Heckmann [Sun, 31 Jan 2010 04:41:22 +0000 (23:41 -0500)]
look for -1 instead of false returned from string.indexOf
Ryan Dahl [Wed, 3 Feb 2010 18:05:24 +0000 (10:05 -0800)]
Disable dns and fs-sendfile tests.
Ryan Dahl [Wed, 3 Feb 2010 17:06:03 +0000 (09:06 -0800)]
Upgrade V8 to 2.1.0
Ryan Dahl [Wed, 3 Feb 2010 02:40:26 +0000 (18:40 -0800)]
Remove some HandleScopes from HTTP
for a %2.5 improvement in hello world HTTP score.
Ryan Dahl [Wed, 3 Feb 2010 00:40:54 +0000 (16:40 -0800)]
Upgrade http-parser
Fixes, among other things, a header overflow attack.
Ryan Dahl [Tue, 2 Feb 2010 19:04:20 +0000 (11:04 -0800)]
Callbacks from process.fs always start with error object
Ryan Dahl [Sun, 31 Jan 2010 19:13:30 +0000 (11:13 -0800)]
Remove __wrap__s
Ryan Dahl [Sun, 31 Jan 2010 07:22:34 +0000 (23:22 -0800)]
Reorganize the start-up process
- assign 'GLOBAL' (and now 'global') inside src/node.js
- position for eventually allowing replacements to src/node.js for people
like Kris Kowal who want the nice libev and libeio bindings but not
necessarily node's choices of modules or promises.
Jonas Pfenniger [Sun, 31 Jan 2010 04:58:24 +0000 (20:58 -0800)]
Was using the old node object to get the int from the constant.
Micheil Smith [Sat, 30 Jan 2010 07:11:43 +0000 (18:11 +1100)]
Adding output of Platform information into the test runner
Felix Geisendörfer [Thu, 28 Jan 2010 16:16:18 +0000 (17:16 +0100)]
Bugfix: Handle Content-Type headers with charset
Some HTTP clients include a charset parameter in the Content-Type, e.g:
multipart/form-data; charset=utf-8; boundary=0xKhTmLbOuNdArY
This patch makes the multipart parser more forgiving towards unexpected
information included in the Content-Type header.
Ryan Dahl [Thu, 28 Jan 2010 02:23:35 +0000 (18:23 -0800)]
ObjectWrap fixed - buffers working!
Hot bug fix from net2 branch.
Standa Opichal [Tue, 26 Jan 2010 19:48:51 +0000 (20:48 +0100)]
Adding OS X .dmg build scripts.
Simply place this into the root of your nodejs git working copy and
run ./tools/osx-dist.sh. It will create an dist-osx folder which will
comprise of the resulting .dmg file (install path is
/usr/local/nodejs with symlinks added to /usr/local/bin) along with
other files used during its construction.
$ ls -1 dist-osx/
nodejs-v0.1.26-11-gcd6397c
nodejs-v0.1.26-11-gcd6397c.dmg
nodejs-v0.1.26-11-gcd6397c.pkg
nodejs-v0.1.26-11-gcd6397c.plist
The resulting installed package is going to be visible using the
OS X 'pkgutil --packages' command. You can even safely uninstall
sudoing 'pkgutil --unlink org.nodejs.NodeJS-...' and subsequently
let the system forget about the package being ever seen by
'pkgutil --forget org.nodejs.NodeJS-...'.
Here is the current package ID I have installed:
$ pkgutil --pkgs | grep node
org.nodejs.NodeJS-v0.1.26-11-gcd6397c
Use this patch freely without hesitation.
Signed-off-by: Standa Opichal <opichals@gmail.com>
Ryan Dahl [Wed, 27 Jan 2010 18:00:46 +0000 (10:00 -0800)]
Forgot to include fix from HTTP client bug (30b0522)
Ryan Dahl [Wed, 27 Jan 2010 17:34:45 +0000 (09:34 -0800)]
Bugfix: HTTP client automatically reconnecting
Test case by tlynn.
Blaine Cook [Thu, 7 Jan 2010 01:28:15 +0000 (01:28 +0000)]
Add support for MX, TXT, and SRV records in DNS module.
Ryan Dahl [Sun, 24 Jan 2010 22:39:32 +0000 (14:39 -0800)]
Make assert.AssertionError instance of Error
cloudhead [Fri, 22 Jan 2010 22:31:58 +0000 (17:31 -0500)]
removed inline require call for querystring
Felix Geisendörfer [Sun, 24 Jan 2010 22:10:25 +0000 (23:10 +0100)]
Bug Fix: Late promise promise callbacks firing
Late promise bindings would fire regardless of the outcome of the
promise.
Test case by: Jonas "zimbatm" Pfenniger <jonas@pfenniger.name>
Joseph Pecoraro [Sun, 24 Jan 2010 07:44:27 +0000 (02:44 -0500)]
Fix minor issues in the documentation.
Felix Geisendörfer [Sat, 16 Jan 2010 12:51:57 +0000 (13:51 +0100)]
Implemented __dirname
It seems that the current __filename module global is mainly used to
determine the directory the current module is in. To make that
easier, this patch adds support for a __dirname module global
directly.
Ryan Dahl [Thu, 21 Jan 2010 00:33:20 +0000 (16:33 -0800)]
credit Erich in ChangeLog
Jonas Pfenniger [Wed, 20 Jan 2010 22:21:44 +0000 (23:21 +0100)]
FIX: Promise timeout should not addErrback
Because now, we expect the exception to be thrown if no errback
is given, we can't let timeout() add an errback silently.
Jonas Pfenniger [Wed, 20 Jan 2010 21:04:00 +0000 (22:04 +0100)]
FIX: EventEmitter call in Promise
Jonas Pfenniger [Wed, 20 Jan 2010 20:39:10 +0000 (21:39 +0100)]
Factorized deprecation messages
Ryan Dahl [Wed, 20 Jan 2010 21:48:35 +0000 (13:48 -0800)]
Fix author in ChangeLog
Ryan Dahl [Wed, 20 Jan 2010 19:28:32 +0000 (11:28 -0800)]
bump version
Ryan Dahl [Wed, 20 Jan 2010 19:12:25 +0000 (19:12 +0000)]
getmem() for solaris
Ryan Dahl [Wed, 20 Jan 2010 18:06:44 +0000 (10:06 -0800)]
test-http-eof-on-connect missing require('./common')
Ryan Dahl [Wed, 20 Jan 2010 17:39:03 +0000 (09:39 -0800)]
Remove -Werror from V8
Felix Geisendörfer [Wed, 20 Jan 2010 12:38:37 +0000 (13:38 +0100)]
Treat 'typeof Error' promise errors properly
Instead of JSON encoding them, just rethrow promise errors since that
produces much cleaner error messages.
Ryan Dahl [Tue, 19 Jan 2010 23:38:20 +0000 (23:38 +0000)]
Initial Solaris support
Ryan Dahl [Tue, 19 Jan 2010 23:45:36 +0000 (15:45 -0800)]
Upgrade V8 to 2.0.6.1
Felix Geisendörfer [Tue, 19 Jan 2010 21:27:55 +0000 (22:27 +0100)]
Make unhandled Promise errors throw an exception
A promise will throw an exception unless an error handler is attached in the
same "tick" that the error is emitted. This is to avoid silent promise
failures.
Felix Geisendörfer [Tue, 19 Jan 2010 20:58:26 +0000 (21:58 +0100)]
Support late callback binding for Promises
Listeners attached with addCallback / addErrback will now be executed
right away if the promise has already fired.
Felix Geisendörfer [Tue, 19 Jan 2010 20:09:14 +0000 (21:09 +0100)]
Fixed misnamed Promise property
Felix Geisendörfer [Tue, 19 Jan 2010 20:02:48 +0000 (21:02 +0100)]
Removed Promise.cancel()
The current implementation was bad and nobody is using it. Has a chance
of getting re-implemented by somebody who has an actual need for it.
Michaeljohn Clement [Tue, 19 Jan 2010 20:20:26 +0000 (15:20 -0500)]
set default encoding in sendBody
Micheil Smith [Mon, 18 Jan 2010 17:51:50 +0000 (04:51 +1100)]
Allow optional params to setTimeout, setInterval
Ryan Dahl [Mon, 18 Jan 2010 18:27:27 +0000 (10:27 -0800)]
Add process.nextTick()
This is a replacement for the common hack:
setTimeout(cb, 0);
It's much more efficient.
Ryan Dahl [Mon, 18 Jan 2010 18:12:04 +0000 (10:12 -0800)]
Add process.IdleWatcher
With priorities. Will be used for process.nextLoop().
Joseph Pecoraro [Sun, 17 Jan 2010 01:10:46 +0000 (20:10 -0500)]
Updated out of date LICENSE file.
Joseph Pecoraro [Mon, 18 Jan 2010 17:04:49 +0000 (12:04 -0500)]
Fixed typo in comments.
Ryan Dahl [Fri, 15 Jan 2010 20:46:08 +0000 (12:46 -0800)]
API: Move Promise and EventEmitter into 'events' module
Ryan Dahl [Fri, 15 Jan 2010 18:45:04 +0000 (10:45 -0800)]
Hack to display more useful SyntaxError exceptions.
For some reason v8 doesn't include the frame with the syntax error in the
stack trace - so have to special case it.
Vanilla Hsu [Wed, 13 Jan 2010 03:23:21 +0000 (11:23 +0800)]
use SUN_LEN to calculate length of unix address @ FreeBSD.
Ryan Dahl [Tue, 12 Jan 2010 09:09:50 +0000 (01:09 -0800)]
Make sure GNUTLS is first on uselib
Why? Because I have two versions of GnuTLS installed - one is old 2.0.X in
/usr and one is new 2.5.X in ~/local/gnutls. waf correctly finds that the
newer version, but because GNUTLS was behind other libraries in the
node.uselib -L/usr/lib was before -L/home/ryan/local/gnutls/lib in the
actual gcc command - hence getting link errors. WAF SUCKS, really.
I wish someone would invent a good build system that could avoid such
problems.
Ben Williamson [Mon, 11 Jan 2010 06:04:40 +0000 (17:04 +1100)]
Added regression test for issue #44
Ryan Dahl [Tue, 12 Jan 2010 00:43:10 +0000 (16:43 -0800)]
Error out when no compiler found
Ryan Dahl [Mon, 11 Jan 2010 07:00:58 +0000 (23:00 -0800)]
Update http benchmark script to new url api.
Ryan Dahl [Mon, 11 Jan 2010 06:27:48 +0000 (22:27 -0800)]
Lazy initialize symbols for HTTP.
Ben Williamson [Mon, 11 Jan 2010 06:06:05 +0000 (17:06 +1100)]
Fix issue #44, eof on connect to http.
eof_symbol wasn't initialized until the first packet arrived.
In this case no packets arrive before the client closes the socket - eof.
Ryan Dahl [Sat, 9 Jan 2010 10:11:54 +0000 (02:11 -0800)]
bump version
Ryan Dahl [Sat, 9 Jan 2010 09:52:49 +0000 (01:52 -0800)]
Upgrade http-parser
isaacs [Fri, 8 Jan 2010 20:47:01 +0000 (12:47 -0800)]
Documentation for path module changes.
isaacs [Fri, 8 Jan 2010 20:46:50 +0000 (12:46 -0800)]
Add tests for path module.
isaacs [Fri, 8 Jan 2010 20:46:13 +0000 (12:46 -0800)]
Rename path.filename() to path.basename()
Also make normalizeArray a bit more proper wrt handling dots when keepBlanks
is enabled. Fix indentation.
Benjamin Thomas [Fri, 8 Jan 2010 07:03:23 +0000 (07:03 +0000)]
Added extname function to path module that returns the extension.
Ryan Dahl [Sat, 9 Jan 2010 06:18:18 +0000 (22:18 -0800)]
Fix another problem with the EIO interface
Should call eio_poll() when given a done_poll signal as well.
Bug report and test case by Kris Zyp <kriszyp@gmail.com>
Ryan Dahl [Fri, 8 Jan 2010 02:36:28 +0000 (18:36 -0800)]
Upgrade http-parser
Fixes \n problem that psanford <pms.mail@gmail.com> reported.
Vanilla Hsu [Thu, 7 Jan 2010 07:37:27 +0000 (23:37 -0800)]
getmem for freebsd
Ryan Dahl [Thu, 7 Jan 2010 01:12:22 +0000 (17:12 -0800)]
Update node-waf version to 1.5.10 - to match tools/wafadmin
Benjamin Thomas [Wed, 6 Jan 2010 03:03:14 +0000 (03:03 +0000)]
Fix bug in the url module's url_parse method if 'parseQueryString' is true
Ryan Dahl [Wed, 6 Jan 2010 09:47:56 +0000 (01:47 -0800)]
libeio bugfix part 4
Oops. Last commit broke a few tests. Should work now!
Ryan Dahl [Wed, 6 Jan 2010 09:17:58 +0000 (10:17 +0100)]
libeio bugfix part 3
Finally (hopefully) fix the issue that Felix reported. It's only appearing
on macintosh (test/mjsunit/test-eio-race3.js)
The trick/hack is to call eio_poll() again before reentering the event loop.
Additionally this commit implements a more complex method of calling
eio_poll(), occasionally dropping to an ev_idle watcher.
See also:
3f3977283419fe81e09aa23b91e59de959a84abd
http://lists.schmorp.de/pipermail/libev/2010q1/000855.html
http://groups.google.com/group/nodejs/browse_thread/thread/
9f8db11c792a68bb/
a89705f68971f53c
Ryan Dahl [Wed, 6 Jan 2010 05:09:02 +0000 (21:09 -0800)]
libeio bugfix part 2
Reverts the change to deps/libeio/eio.c added in
04dd2d51be03c01d9ab259fe40e436730778bd01
It wasn't a bug, I was just using eio incorrectly.
See http://lists.schmorp.de/pipermail/libev/2010q1/000855.html
Felix Geisendörfer [Tue, 5 Jan 2010 21:50:00 +0000 (22:50 +0100)]
Updated docs for multipart errors
Felix Geisendörfer [Tue, 5 Jan 2010 21:44:09 +0000 (22:44 +0100)]
Clean up multipart test case
Felix Geisendörfer [Tue, 5 Jan 2010 21:37:51 +0000 (22:37 +0100)]
Handle bad requests in simplified parser API
Felix Geisendörfer [Tue, 5 Jan 2010 21:28:03 +0000 (22:28 +0100)]
Added test case for the simple multipart API
So far this didn't have any test coverage.
Felix Geisendörfer [Tue, 5 Jan 2010 21:22:18 +0000 (22:22 +0100)]
Throw exception for invalid multipart streams
When using the multipart parser with an regular http request, the
parser did not complain and just never finished.
elliottcable [Tue, 5 Jan 2010 08:00:41 +0000 (23:00 -0900)]
Providing the option for a repl-printer other than sys.p
Ryan Dahl [Tue, 5 Jan 2010 07:26:58 +0000 (23:26 -0800)]
libeio bugfix: want_poll should be called if breaking on maxreq
Reported by shansen and hassox
http://github.com/ry/node/issues#issue/38
Will send upstream.
Ryan Dahl [Tue, 5 Jan 2010 06:52:48 +0000 (22:52 -0800)]
Upgrade libev to 3.9
Ryan Dahl [Tue, 5 Jan 2010 06:46:32 +0000 (22:46 -0800)]
Upgrade libeio to latest CVS
Charles Lehner [Mon, 4 Jan 2010 00:45:17 +0000 (19:45 -0500)]
Fixed clearTimeout to check if timer is a Timer
visionmedia [Mon, 4 Jan 2010 16:10:53 +0000 (08:10 -0800)]
Moved help msg to node-repl
isaacs [Tue, 5 Jan 2010 05:07:50 +0000 (21:07 -0800)]
Use "url" module instead of "uri" module in http.js.
Deprecate the URI module and remove tests for it.
- Rename "uri" to "url".
- Use the "url" module instead of the "uri" module.
- Remove the url parsing from http.js
- Update http.cat with the changed field names.
- Update tests for changes to http.js
- Update documentation for changes in http.js
isaacs [Mon, 4 Jan 2010 07:14:12 +0000 (23:14 -0800)]
Add URL and QueryString modules, and tests for each.
Also, make a slight change from original on url-module to put the
spacePattern into the function. On closer inspection, it turns out that the
nonlocal-var cost is higher than the compiling-a-regexp cost.
Also, documentation.
isaacs [Mon, 4 Jan 2010 07:34:46 +0000 (23:34 -0800)]
Documentation for path module
isaacs [Mon, 4 Jan 2010 07:24:25 +0000 (23:24 -0800)]
Improve path module slightly:
1. Provide a switch to tell it to not remove empty path parts when
normalizing.
2. Correct the handling of some edge cases when you have lots of dots and
empty bits, such as paths like "././/./..//." and so on.
Tim Caswell [Sun, 3 Jan 2010 20:04:35 +0000 (14:04 -0600)]
Rename "Dynamic Property" to "Getter/Setter" in sys.inspect.
Tim Caswell [Sun, 3 Jan 2010 00:25:09 +0000 (18:25 -0600)]
Fix inspect to not trigger dynamic properties
but to display them as special. Add unit tests to match
Tim Caswell [Thu, 31 Dec 2009 17:41:35 +0000 (11:41 -0600)]
Fix inspect for the special case of an Object that inherits from Array, but has other properties.
Ryan Dahl [Thu, 31 Dec 2009 08:30:53 +0000 (00:30 -0800)]
bump version
Ryan Dahl [Thu, 31 Dec 2009 06:16:10 +0000 (22:16 -0800)]
Bugfix: Don't segfault on unknown http method
Reported by Chakrit Wichian.
Ryan Dahl [Fri, 9 Oct 2009 12:21:41 +0000 (14:21 +0200)]
Kill -Werror in V8 for GCC 4.4.1 users.
http://code.google.com/p/v8/issues/detail?id=413
Ryan Dahl [Wed, 30 Dec 2009 01:45:15 +0000 (02:45 +0100)]
'make distclean' should not call 'waf clean'
Because if configure hasn't been run, then an error is reported.