Ryan Dahl
92292c8394
Rename a few remaining fs.cat calls.
2010-02-17 14:00:53 -08:00
Ryan Dahl
5013bf1781
API: OutgoingMessage.prototype.finish() renamed to close()
2010-02-17 11:10:10 -08:00
Tim Caswell
6115df6338
File API tweaks
...
- Rename fs.cat to fs.readFile
- Move file.write to fs.writeFile
- Allow strings for the flag argument to fs.open
("r", "r+", "w", "w+", "a", "a+")
- Remove the unused 'File' module / class
2010-02-16 23:55:53 -08:00
Ryan Dahl
ae85d9af97
API: Make request/response object closer to stream interface
...
- sendBody() renamed to write()
- 'body' event renamed to 'data'
- 'complete' event renamed to 'end'
2010-02-16 22:16:29 -08:00
isaacs
46a47d2799
Add some puts() to test-multipart.js to show what it's doing.
2010-02-16 21:18:02 -08:00
Ryan Dahl
23cf502db7
API: connection.send() renamed to connection.write()
2010-02-16 13:18:42 -08:00
Jonas Pfenniger
80ace36e4c
Added failing test: promise.wait() after promise.emitXXX()
2010-02-15 17:22:13 -08:00
Yuichiro MASUI
1793ee1c80
Fixed: promise late chain
2010-02-15 17:12:40 -08:00
Mark Hansen
98e61db216
sys.inspect(Date) now shows the date value
2010-02-15 17:08:22 -08:00
Ryan Dahl
b82ef28d9d
Rename 'posix' module to 'fs'
2010-02-12 01:04:14 -08:00
Ryan Dahl
bc17d94a0a
API: tcp events 'receive' to 'data', 'eof' to 'end'
...
No deprecation messages. Not sure how...
2010-02-12 00:25:19 -08:00
Felix Geisendörfer
211e82e8d9
Simple test case for require.async()
...
This is to make sure this doesn't break after implementing the new
truly sync require() function.
2010-02-11 21:45:03 -08:00
Felix Geisendörfer
6c94b8e4e4
Implemented posix.catSync()
2010-02-11 21:11:16 -08:00
Ryan Dahl
1b42276851
Small clean up to test-timers.js
2010-02-11 15:51:46 -08:00
Felix Geisendörfer
b02b54e003
Fix: Module cache did not propagate
...
This patch makes sure nested modules are available in their parents
cache. The module simplification broke this behavior.
See:
http://groups.google.com/group/nodejs/browse_thread/thread/e875132469547d2
b73f61a137
2010-02-11 11:23:19 -08:00
Ryan Dahl
dc01587c6c
Merge branch 'master' into net2
2010-02-10 14:05:29 -08:00
Michael Stillwell
9f6f19df1b
Add test: modifying event listeners during callback.
2010-02-09 14:47:37 -08:00
Tim Caswell
e33c66654a
Rewrite sys.inspect to be more reliable and handle crazy edge cases.
2010-02-09 08:57:38 -08:00
isaacs
3adcdfc2e1
A rewrite of multipart library.
...
1. Support streaming in the simple case. Put huge warnings around the
buffering API.
2. Support nested multipart messages.
3. Support various kinds of multipart messages, including all the various
absurdities of multipart email messages.
4. Error out on various invalid types of data that might come through.
5. Gracefully several edge cases that occur when the chunk size is smaller
than the boundary length, or cuts into the \r\n, etc.
6. Provide both positive and negative tests.
2010-02-08 14:03:06 -08:00
Ryan Dahl
ae1fc497bb
Fix stdout flush issue
...
http://github.com/ry/node/issues#issue/53
2010-02-07 21:56:36 -08:00
Ryan Dahl
a695065305
Add failing test for stdout flush on exit
2010-02-07 18:05:58 -08:00
Ryan Dahl
96f42745ff
Merge branch 'master' into net2
2010-02-05 19:00:26 -08:00
Ryan Dahl
fe85062046
Bugfix: blocked pumping in stdio coupling
...
This should fix the test in c05b5d8
by Mikeal Rogers.
2010-02-05 17:14:14 -08:00
Mikeal Rogers
c05b5d8b59
Adding test for bug in stdio.
...
http://groups.google.com/group/nodejs/browse_thread/thread/10fda8eaf7276642/e5d5147f2b666abd
2010-02-05 10:58:00 -08:00
Felix Geisendörfer
b73f61a137
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
431662d25c
http://romeda.org/blog/2010/01/hot-code-loading-in-nodejs.html
http://thread.gmane.org/gmane.comp.lang.javascript.nodejs/1994
2010-02-04 14:08:39 -08:00
Ryan Dahl
173a8c9842
Disable dns and fs-sendfile tests.
2010-02-03 10:05:24 -08:00
Ryan Dahl
0b07f32819
Merge branch 'master' into net2
2010-02-03 10:00:39 -08:00
Ryan Dahl
33509bdbe5
eof -> end
2010-02-01 18:19:14 -08:00
Felix Geisendörfer
ac2abe5b1e
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.
2010-01-29 18:04:48 -08:00
Ryan Dahl
785531691b
Add buffer.unpack
2010-01-29 09:57:47 -08:00
Ryan Dahl
49451c1dab
Merge branch 'master' into net2
2010-01-29 00:58:43 -08:00
Ryan Dahl
4347906b7f
Fix require() in test-buffer.js
2010-01-27 18:45:07 -08:00
Ryan Dahl
bf803f478b
Reimplment Buffers
2010-01-27 15:40:09 -08:00
Ryan Dahl
30b0522157
Bugfix: HTTP client automatically reconnecting
...
Test case by tlynn.
2010-01-27 09:34:45 -08:00
Blaine Cook
cd6397cc45
Add support for MX, TXT, and SRV records in DNS module.
2010-01-25 09:03:27 -08:00
Felix Geisendörfer
c86c614cac
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>
2010-01-24 14:20:17 -08:00
Ryan Dahl
dda1d681f7
Provide buffer in HTTPParser callbacks.
2010-01-24 14:12:15 -08:00
Ryan Dahl
42ee16978e
Implement new http-parser binding using Buffer
2010-01-24 11:21:45 -08:00
David Sklar
6f738d6e7a
Adjust passing-FDs test to wait until socket is really writeable
2010-01-22 14:37:30 -08:00
Felix Geisendörfer
a76c7a89ce
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.
2010-01-22 10:10:15 -08:00
Ryan Dahl
653bf580bf
Merge branch 'develop' into net2
...
Conflicts:
src/node.cc
2010-01-20 15:24:38 -08:00
Ryan Dahl
faefb3f5a4
test-http-eof-on-connect missing require('./common')
2010-01-20 10:06:44 -08:00
Felix Geisendörfer
bfd3144861
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.
2010-01-19 14:29:57 -08:00
Felix Geisendörfer
f64371fccb
Support late callback binding for Promises
...
Listeners attached with addCallback / addErrback will now be executed
right away if the promise has already fired.
2010-01-19 14:29:49 -08:00
Felix Geisendörfer
f2274840a9
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.
2010-01-19 14:29:38 -08:00
Micheil Smith
6e3d12f617
Allow optional params to setTimeout, setInterval
2010-01-18 10:41:03 -08:00
Ryan Dahl
8abeffa9ea
Add process.nextTick()
...
This is a replacement for the common hack:
setTimeout(cb, 0);
It's much more efficient.
2010-01-18 10:32:36 -08:00
Ryan Dahl
aeb7d6d168
Add process.IdleWatcher
...
With priorities. Will be used for process.nextLoop().
2010-01-18 10:12:04 -08:00
Ryan Dahl
70293a43c9
API: Move Promise and EventEmitter into 'events' module
2010-01-15 12:46:08 -08:00
Ryan Dahl
02e52ef8e9
Merge branch 'master' into net2
2010-01-12 16:59:14 -08:00
Ben Williamson
a3631a383b
Added regression test for issue #44
2010-01-11 16:43:23 -08:00
David Sklar
a876df6c71
Initial take on passing FDs between processes
2010-01-09 01:28:19 -08:00
isaacs
988174a629
Add tests for path module.
2010-01-09 00:31:51 -08:00
Ryan Dahl
53413598b6
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>
2010-01-08 22:20:23 -08:00
Benjamin Thomas
947c577c0d
Fix bug in the url module's url_parse method if 'parseQueryString' is true
2010-01-06 02:12:11 -08:00
Ryan Dahl
f80cc69c23
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:
3f39772834
http://lists.schmorp.de/pipermail/libev/2010q1/000855.html
http://groups.google.com/group/nodejs/browse_thread/thread/9f8db11c792a68bb/a89705f68971f53c
2010-01-06 01:27:31 -08:00
Felix Geisendörfer
7d947f8723
Clean up multipart test case
2010-01-05 20:15:03 -08:00
Felix Geisendörfer
f86c1783b7
Handle bad requests in simplified parser API
2010-01-05 22:37:51 +01:00
Felix Geisendörfer
aa73ed973c
Added test case for the simple multipart API
...
So far this didn't have any test coverage.
2010-01-05 22:28:03 +01:00
Felix Geisendörfer
d9a81374b2
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.
2010-01-05 22:23:56 +01:00
Ryan Dahl
04dd2d51be
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.
2010-01-04 23:26:58 -08:00
isaacs
2b3d9e4ad0
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
2010-01-04 21:22:46 -08:00
isaacs
7ff04c1f86
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.
2010-01-04 21:03:54 -08:00
Tim Caswell
fd184ee2fa
Rename "Dynamic Property" to "Getter/Setter" in sys.inspect.
2010-01-03 21:15:21 -08:00
Tim Caswell
6c68a9679b
Fix inspect to not trigger dynamic properties
...
but to display them as special. Add unit tests to match
2010-01-02 18:18:01 -08:00
Tim Caswell
732c6f2036
Fix inspect for the special case of an Object that inherits from Array, but has other properties.
2009-12-31 09:57:29 -08:00
Ryan Dahl
20eec646b3
[net2] add unix server to ping-pong test
2009-12-30 11:51:43 -08:00
Ryan Dahl
a8ede8dd9e
[net2] port ping pong test
2009-12-30 10:58:46 -08:00
Ryan Dahl
e2569c402f
Add some tests to test-buffer.js
2009-12-29 21:12:28 +01:00
Ryan Dahl
630bb7a012
Rename blob to buffer.
2009-12-29 21:12:28 +01:00
Ryan Dahl
dd35637603
Fix assert.js code style
2009-12-29 20:10:59 +01:00
Ryan Dahl
0d7e88a429
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>
2009-12-29 19:11:04 +01:00
Michaeljohn Clement
3d24e119e0
don't chunk responses to HTTP/1.0 clients, even if they send Connection: Keep-Alive (e.g. wget)
2009-12-23 22:24:29 +01:00
isaacs
4dcdfaf929
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
2009-12-22 17:22:12 +01:00
Ryan Dahl
0981e7f663
Fix test-readdir.js
...
Was broken because I added "throws_error.js" to the fixtures directory.
Problem appeared in bfa36136da
.
2009-12-19 00:45:01 +01:00
Ryan Dahl
bfa36136da
require() should throw error if module does.
...
Reported by Kris Zyp
http://groups.google.com/group/nodejs/browse_thread/thread/1feab0309bd5402b
2009-12-18 23:58:04 +01:00
isaacs
4526308560
Update to fix failing test. Rewrite of the resolveObject function, and some tweaks to format.
2009-12-18 19:02:27 +01:00
isaacs
2f9722cca0
Pull in the uri.js from Narwhal and create tests, stripping out the cruft from a previous code-surgery.
2009-12-18 18:56:59 +01:00
Ryan Dahl
89a3fa93a0
add missing semicolon
2009-12-09 15:59:53 +01:00
Xavier Shay
756544fd28
sys.inspect prints out special chars correctly (\n, \u0001, etc...)
2009-12-07 10:05:18 +01:00
Felix Geisendörfer
876b6d2183
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.
2009-12-06 19:21:20 +01:00
Felix Geisendörfer
f080de5380
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.
2009-12-06 19:21:06 +01:00
Christopher Lenz
f8ba9c3bc9
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().
2009-12-06 18:36:32 +01:00
Xavier Shay
34c02357ff
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
2009-12-06 12:19:23 +01:00
Ryan Dahl
8141448fe5
Don't use promises internally in DNS module
2009-12-06 09:26:09 +01:00
Ryan Dahl
c5d82380f4
Bugfix: Don't use chunked encoding for 1.0 requests.
...
http://groups.google.com/group/nodejs/browse_thread/thread/b2edb76691b1848c
2009-12-05 08:37:46 +01:00
Karl Guertin
4f679fd8d0
Dependency free assert module with unit tests
2009-12-05 01:05:16 +01:00
Felix Geisendörfer
530328f12b
CommonJS testing for node.js
...
Refactored test suite to use the assert module for testing rather than
mjsunit.
2009-12-05 01:05:16 +01:00
Michaeljohn Clement
485823f3e4
fixed HTTP duplicated header bug
...
added test case for HTTP duplicated header bug on keepalive
2009-12-05 00:56:22 +01:00
Rhys Jones
5b1a535cd8
Add HTTP client TLS support
2009-11-30 16:51:20 +01:00
choonkeat
44d5f212fe
Stat::Callback has 2 arguments for callback: current stat info and previous stat info
...
http://groups.google.com/group/nodejs/msg/f8e51a8e0c74bd85
2009-11-28 15:13:12 +01:00
Friedemann Altrock
0433d828cf
add process.umask()
2009-11-22 19:52:52 +01:00
Friedemann Altrock
2d54d664ff
Promises should not be able to be canceled more than once.
2009-11-22 19:18:24 +01:00
Felix Geisendörfer
27fcae738a
Reduce multipart memory footprint
...
Multipart parts kept the first chunk of data after their headers in
memory, even so that was no longer needed.
2009-11-22 15:09:55 +01:00
Rhys Jones
b6dda61249
Initial TLS support
2009-11-22 04:03:53 +01:00
Felix Geisendörfer
528c449901
Multipart improvements
...
Multipart parts now have a name and filename property. Those are the
same as:
part.headers['content-disposition'].name
part.headers['content-disposition'].filename
This patch also updates and improves the docs for the multipart module.
2009-11-21 17:16:06 +01:00
Ryan Dahl
0b441462ab
Speed up test-wait-ordering.js
2009-11-18 15:55:02 +01:00
Ryan Dahl
6cb0e0e5f5
Test runner should only run test-*.js
2009-11-17 15:05:10 +01:00
Ryan Dahl
6e6562e551
Fix stat handler test for macintosh
2009-11-17 15:05:01 +01:00
Ryan Dahl
8d2f9e83a4
Add process.watchFile() process.unwatchFile()
...
This is an interface to libev's ev_stat watcher.
2009-11-17 14:07:48 +01:00