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.
Ryan Dahl [Wed, 30 Dec 2009 01:34:22 +0000 (02:34 +0100)]
Upgrade V8 to 2.0.5.4
Ryan Dahl [Tue, 29 Dec 2009 19:31:56 +0000 (20:31 +0100)]
Better error message on bad ARGV[1]
Ryan Dahl [Tue, 29 Dec 2009 19:20:51 +0000 (20:20 +0100)]
Simplify exception reporting
Ryan Dahl [Tue, 29 Dec 2009 19:14:58 +0000 (20:14 +0100)]
Stack trace for asserts shouldn't include assert module
Ryan Dahl [Tue, 29 Dec 2009 18:37:40 +0000 (19:37 +0100)]
Fix assert.js code style
Ryan Dahl [Sun, 27 Dec 2009 21:07:06 +0000 (22:07 +0100)]
Bugfix: libeio race condition
Process at most 10 pending responses from the thread pool in one go.
10 was chosen arbitrarily.
Test and report by Felix Geisendörfer <felix@debuggable.com>
Michaeljohn Clement [Wed, 23 Dec 2009 20:48:14 +0000 (15:48 -0500)]
don't chunk responses to HTTP/1.0 clients, even if they send Connection: Keep-Alive (e.g. wget)
Ryan Dahl [Tue, 22 Dec 2009 22:11:54 +0000 (23:11 +0100)]
fix whitespace
Ryan Dahl [Tue, 22 Dec 2009 19:31:45 +0000 (20:31 +0100)]
bump version
Felix Geisendörfer [Sun, 20 Dec 2009 19:27:06 +0000 (20:27 +0100)]
Do not pause request for multipart parsing
This is actually undesireable as it takes away control from the user who
may want to pause/resume to throttle the upload stream, or synchronize
it with disk flushing.
I actually ran into memory issues when trying to stream huge files to
disc as the file module was building up a huge action buffer. This can
now easily be avoided like this:
part.addListener('body', function(chunk) {
req.pause();
file.write(chunk).addCallback(function() {
req.resume();
});
}
Jonas Pfenniger [Tue, 22 Dec 2009 13:52:40 +0000 (14:52 +0100)]
posix.cat not using call() correctly
'this' will point to "arguments" and the arguments of the callback itself
will not be set.
Ryan Dahl [Tue, 22 Dec 2009 16:50:23 +0000 (17:50 +0100)]
export path.normalizeArray for the uri module
isaacs [Tue, 22 Dec 2009 15:24:32 +0000 (16:24 +0100)]
Fix require("../blah") issues
Added some more tests, and refactored the uri and path modules to use the
same normalization logic, so that nothing is relying on flaky regexps.
http://groups.google.com/group/nodejs/browse_thread/thread/
34779f8c10098c5e
http://groups.google.com/group/nodejs/browse_thread/thread/
1aa0146b92582679#msg_9822c03998cb4064
Ryan Dahl [Sat, 19 Dec 2009 00:24:59 +0000 (01:24 +0100)]
bump version
Ryan Dahl [Sat, 19 Dec 2009 00:04:19 +0000 (01:04 +0100)]
Revert "Upgrade V8 to 2.0.5"
This reverts commit
20b945df706b2b9fcbc1a84230372d288d497544.
Broken on Hagen's Macintosh. Don't have time to investigate.
Ryan Dahl [Fri, 18 Dec 2009 23:45:01 +0000 (00:45 +0100)]
Fix test-readdir.js
Was broken because I added "throws_error.js" to the fixtures directory.
Problem appeared in
bfa36136dac787793bc5106da57cccbb8db1ce14.
isaacs [Thu, 17 Dec 2009 22:06:56 +0000 (14:06 -0800)]
Remove two debug statements that are a bit much.
isaacs [Wed, 16 Dec 2009 23:18:27 +0000 (15:18 -0800)]
Bugfix: child modules get wrong id with "index.js"
Fix for bug brought up by nua in irc, where child modules get the wrong id
when loaded from a parent module with an id of index.js or index.addon.
isaacs [Wed, 16 Dec 2009 22:15:24 +0000 (14:15 -0800)]
Inadvertently introduced a bug in how single-dot path parts are handled.
isaacs [Wed, 16 Dec 2009 21:08:14 +0000 (13:08 -0800)]
Bugfix: require("../foo")
If you have a circular require chain in which one or more of the modules are
referenced with a ".." relative path, like require("../foo"), node blows up.
This patch un-blows-up that case. There still seem to be issues with
circularity, but this solves one of the more obnoxious ones.
Ryan Dahl [Fri, 18 Dec 2009 22:58:04 +0000 (23:58 +0100)]
require() should throw error if module does.
Reported by Kris Zyp
http://groups.google.com/group/nodejs/browse_thread/thread/
1feab0309bd5402b
isaacs [Sun, 13 Dec 2009 00:29:12 +0000 (16:29 -0800)]
Update to fix failing test. Rewrite of the resolveObject function, and some tweaks to format.
isaacs [Fri, 11 Dec 2009 23:46:32 +0000 (15:46 -0800)]
Use the new uri parser.
isaacs [Fri, 11 Dec 2009 23:46:10 +0000 (15:46 -0800)]
Add credits, and a "decode" function.
isaacs [Fri, 11 Dec 2009 23:25:35 +0000 (15:25 -0800)]
Pull in the uri.js from Narwhal and create tests, stripping out the cruft from a previous code-surgery.
visionmedia [Fri, 18 Dec 2009 02:27:48 +0000 (18:27 -0800)]
Replaced several Array.prototype.slice.call() calls with Array.prototype.unshift.call()
Acts in pretty much the same manor just a bit more elegant
Joshaven Potter [Wed, 16 Dec 2009 22:33:33 +0000 (17:33 -0500)]
syntax fixes in src/node.js
Micheil Smith [Fri, 18 Dec 2009 15:17:10 +0000 (16:17 +0100)]
Documentation for the assert module
Ryan Dahl [Fri, 18 Dec 2009 14:45:53 +0000 (15:45 +0100)]
Fix kqueue check (broke it in last commit)
Rasmus Andersson [Tue, 15 Dec 2009 22:37:49 +0000 (23:37 +0100)]
note about why execinfo detection fails on Darwin even though it exists
Ryan Dahl [Fri, 18 Dec 2009 14:36:25 +0000 (15:36 +0100)]
Fix check for epoll_ctl(). Was broken on Linux
Rasmus Andersson [Tue, 15 Dec 2009 21:46:38 +0000 (22:46 +0100)]
detect nanosleep on OS X and do not look for functions in libraries we know dows not exist
Rasmus Andersson [Tue, 15 Dec 2009 21:32:50 +0000 (22:32 +0100)]
fix kqueue feature detection on Mac OS X 10.6
Ryan Dahl [Fri, 18 Dec 2009 14:05:04 +0000 (15:05 +0100)]
Upgrade V8 to 2.0.5
Ryan McGrath [Fri, 18 Dec 2009 06:08:10 +0000 (01:08 -0500)]
Added in API documentation concerning the (seemingly undocumented) process.chdir() method, complementary to process.cwd()
Ryan Dahl [Wed, 9 Dec 2009 14:59:53 +0000 (15:59 +0100)]
add missing semicolon
Simon Cornelius P. Umacob [Wed, 9 Dec 2009 12:36:12 +0000 (20:36 +0800)]
Use conf.fatal() instead of fatal() in order to abort the configure script
Ryan Dahl [Wed, 9 Dec 2009 13:27:33 +0000 (14:27 +0100)]
Upgrade waf to 1.5.10
Ryan Dahl [Wed, 9 Dec 2009 09:32:19 +0000 (10:32 +0100)]
Fix posix.statSync()
Ryan Dahl [Wed, 9 Dec 2009 08:02:21 +0000 (09:02 +0100)]
Statically define symbols
~7% improvement in hello world HTTP response bench.
Ryan Dahl [Wed, 9 Dec 2009 06:44:44 +0000 (07:44 +0100)]
Remove accidentally committed files.
Ryan Dahl [Tue, 8 Dec 2009 06:20:51 +0000 (07:20 +0100)]
fix typo
Ryan Dahl [Tue, 8 Dec 2009 05:54:26 +0000 (06:54 +0100)]
Fix ARGV[0] weirdness
Johan Dahlberg [Sat, 5 Dec 2009 12:33:15 +0000 (13:33 +0100)]
Added superCtor to ctor.super_ instead superCtor.prototype.
This way let's us do deep comparison between object instances.
I have a suggestion for the sys.inherits function. Today it's impossible to
deep comparison between instance and class.
Take this snippet for example:
function ClassA() {}
function ClassB() {}
sys.inherits(ClassB, ClassA);
var instance = new ClassB();
The instance variable inherits from ClassA but we can't check it (which is
useful sometimes). You can compare the instance against ClassB
(instance.constructor == ClassB) but we can't compare it deeper
(instance.constructor.super == ClassA). The committed change simply assign
super to the super constructor instead of the super prototype.
I can't see any problem with this fix. You can still get the super constructor
by calling super_.prototype.
visionmedia [Tue, 8 Dec 2009 00:18:43 +0000 (16:18 -0800)]
Export STATUS_CODES
Express (my framework) uses them as a default
response body when non is present. Others
might use them for something as well.
Beats duplicating the list :D
Ryan Dahl [Mon, 7 Dec 2009 17:03:06 +0000 (18:03 +0100)]
Give default encodings for posix.read and posix.write
Ryan Dahl [Mon, 7 Dec 2009 16:55:19 +0000 (17:55 +0100)]
Attach/Detach -> Ref/Unref
Ryan Dahl [Mon, 7 Dec 2009 14:21:12 +0000 (15:21 +0100)]
offload method look up to http-parser
Xavier Shay [Mon, 7 Dec 2009 04:44:41 +0000 (15:44 +1100)]
sys.inspect prints out special chars correctly (\n, \u0001, etc...)
Ryan Dahl [Sun, 6 Dec 2009 22:58:16 +0000 (23:58 +0100)]
Upgrade http-parser; supports webdav extension methods now
Felix Geisendörfer [Sun, 6 Dec 2009 18:02:55 +0000 (19:02 +0100)]
Make process.mixin copy over undefined values
This is not a bug in process.mixin, but I think it is undesirable
behavior. Right now process.mixin will not copy over keys with undefined
values. To me that is an unexpected filtering that should not happen
unless specifically called for.
Felix Geisendörfer [Sun, 6 Dec 2009 17:57:20 +0000 (18:57 +0100)]
Two bug fixes for process.mixin
Bug #1 occurred when trying to use process.mixin on a function and
produced a fatal exception.
Bug #2 occurred when trying to do a deep merge with an object containing
one or more objects with a nodeType property. In those cases the deep
copy for this part of the object was not performed and a shallow one was
performed instead.
Both of these bugs were artifacts of the jQuery.extend port.
Christopher Lenz [Wed, 2 Dec 2009 22:25:56 +0000 (23:25 +0100)]
Add http.Client.prototype.request()
Change the http.Client API so that it provides a single request() method
taking an optional parameter to specify the HTTP method (defaulting to
"GET"), instead of the five methods get(), head(), post(), del() and put().
Ryan Dahl [Sun, 6 Dec 2009 16:53:52 +0000 (17:53 +0100)]
bump version
Xavier Shay [Tue, 1 Dec 2009 10:20:14 +0000 (21:20 +1100)]
sys.inspect is totally more awesome now
- No longer relies on JSON.stringify, so it can output nulls and functions
- Handles circular references better
- Has tests
Ryan Dahl [Sun, 6 Dec 2009 10:36:22 +0000 (11:36 +0100)]
Implement promises entirely in JS
Ryan Dahl [Sun, 6 Dec 2009 09:50:03 +0000 (10:50 +0100)]
Refactor node_file.cc to not use Promises.
At the same time implement synchronous wrappers of the POSIX functions.
These will be undocumented until we settle on an API. Works like this
// returns promise as before
posix.mkdir("test").addCallback(function () {
sys.puts("done");
});
// returns undefined, executed synchronously.
posix.mkdirSync("test");
sys.puts("done");
This refactoring is a step towards allowing promises to be implemented
purely in javascript.
Ryan Dahl [Sun, 6 Dec 2009 08:23:38 +0000 (09:23 +0100)]
Don't use promises internally in DNS module
Ryan Dahl [Sun, 6 Dec 2009 06:35:26 +0000 (07:35 +0100)]
Use --jobs=1 with WAF
Some people were reporting waf erroring with
thread.error: can't start new thread
this seems to fix that problem.
Ryan Dahl [Sat, 5 Dec 2009 17:25:07 +0000 (18:25 +0100)]
Clean up context creation