Ryan Dahl
7881b59f6b
Merge branch 'master' into net2
2010-03-02 13:20:07 -08:00
Ryan Dahl
776b099d75
Disable ipv6 test on solaris
2010-03-02 21:10:05 +00:00
Ryan Dahl
d9e3b466a7
Merge branch 'master' into net2
2010-03-02 10:44:25 -08:00
Rasmus Andersson
20d5963fae
Added fs.realpath and fs.realpathSync (pure javascript versions)
2010-03-01 19:14:24 -08:00
Felix Geisendörfer
55ab9b4541
Bug fix for deep process.mixin array handling
...
process.mixin was throwing an exception when trying to do a deep copy
of an object that included an array.
This bug was introduced in: 3bb7ad6fea
2010-03-01 14:13:57 -08:00
Benjamin Thomas
6034701f57
Stop sys.inspect from adding extra new lines for deep objects that are elements in an array.
...
A couple other small fixes:
If the keys of an object were all numeric they should be quoted. This
way, you can now hypothetically copy and paste the output into your code
(if the object doesn't contain any circular objects, deeply nested
objects, Dates, RegExps or functions. I think).
If a nested object isn't being recursed into, output "[Object]" as
opposed to "[object Object]".
If an object is longer than the max width but it is one line no matter
what, then don't put the closing brace on a new line.
Fix some formatting issues to try and match Node's style guidelines.
2010-03-01 13:34:46 -08:00
Ryan Dahl
30b700ee22
Move watchFile into fs module
2010-03-01 10:42:37 -08:00
arlolra
724ccf10df
Tests on common port.
2010-02-26 12:20:10 -08:00
Ryan Dahl
71d237e6a0
Move net2 tests into test/simple
2010-02-26 12:13:33 -08:00
Ryan Dahl
c6cc386819
Merge branch 'master' into net2
2010-02-26 11:34:24 -08:00
arlolra
3497da370b
Decoupled readdir test.
2010-02-25 18:49:10 -08:00
Benjamin Thomas
de1521413e
Make the output of sys.inspect a lot more compact.
...
See:
http://groups.google.com/group/nodejs/browse_thread/thread/ac060521e27fef65
By default now, sys.inspect doesn't recurse more than two times. Pass
in null as the third parameter to make it recurse indefinitely.
2010-02-25 18:23:11 -08:00
Benjamin Thomas
a2714be8b5
Add optional third argument sys.inpect to indicate how many times you want it to recurse
2010-02-25 13:17:05 -08:00
Benjamin Thomas
b1b84960ce
Rename writeHeader to writeHead
2010-02-25 13:01:21 -08:00
Ryan Dahl
b08f2af344
Update common.js path for new test layout
2010-02-25 12:01:23 -08:00
arlolra
04fac19822
Split tests.
2010-02-25 11:41:11 -08:00
Rasmus Andersson
b57d946184
added fs.link, fs.symlink, fs.readlink
...
including sync versions and complete tests
2010-02-22 19:23:06 -08:00
Ryan Dahl
a97fdf5c39
Merge branch 'master' into net2
2010-02-22 14:22:20 -08:00
Ryan Dahl
05ae932a0e
Implement fs.readdirSync()
2010-02-21 23:06:08 -08:00
Benjamin Thomas
49cd1bbf84
Fix bug in process.mixin where deep copies would not work at all.
...
Before, doing this:
var sys = require("sys");
var obj = {
one: 1,
two: 2,
three: {
value: 3
}
};
sys.p(process.mixin(true, {}, obj));
Would output this:
{
"two": 2,
"three": {
"one": 1,
"two": 2,
"three": {
"value": 3
},
"value": 3
},
"one": 1
}
When it should have outputed this:
{
"one": 1,
"two": 2,
"three": {
"value": 3
}
}
2010-02-21 22:51:23 -08:00
Ryan Dahl
4c8889bba2
Revert "Add fs.readdirSync()"
...
Doesn't work on Linux.
This reverts commit 05d6da6c4a
.
2010-02-21 21:53:35 -08:00
isaacs
9acc8a686a
Expose fs.lstat
2010-02-21 21:43:45 -08:00
Ryan Dahl
12d78cd1df
Rename sendHeader to writeHeader; allow reasonPhrase
2010-02-21 16:53:49 -08:00
Micheil Smith
05d6da6c4a
Add fs.readdirSync()
2010-02-21 16:32:20 -08:00
Ryan Dahl
a0c48eecab
Rename readPause and readResume to pause/resume
2010-02-20 22:38:42 -08:00
Ryan Dahl
0485cc41d5
Remove promises
2010-02-20 19:49:00 -08:00
Ryan Dahl
7a51184420
Multipart test no longer depend on Promise
2010-02-20 19:44:47 -08:00
Ryan Dahl
fcda5e8dfa
If ab isn't installed skip keep-alive test
2010-02-19 18:54:25 -08:00
Rasmus Andersson
860fcf23f4
skipping TLS test if node was not compiled with TLS
2010-02-19 18:35:35 -08:00
Ryan Dahl
de7016eac5
sys.exec() no longer uses Promise
2010-02-19 16:55:46 -08:00
Ryan Dahl
d0f2d465aa
http.cat no longer uses Promise
2010-02-19 16:26:48 -08:00
Ryan Dahl
ef55324f1a
Do not use Promise in 'fs' module
2010-02-19 16:02:30 -08:00
Ryan Dahl
764783560e
Remove Promise.prototype.wait()
...
I don't want users to have to think about coroutine safety.
http://thread.gmane.org/gmane.comp.lang.javascript.nodejs/2468/focus=2603
2010-02-19 10:19:46 -08:00
Ryan Dahl
860d008d54
Truly synchronous require()
...
This is to reduce our dependency on wait(). For some reason this patch
affects the timer test:
% ./node test/mjsunit/test-timers.js
diff: 989
diff: 989
diff: 1989
diff: 2989
Previously it showed:
% ./node test/mjsunit/test-timers.js
diff: 1000
diff: 1000
diff: 2000
diff: 3000
I'm not sure what caused this change, and it's rather disturbing. However I
want to remove wait() as soon as possible and so am pushing this patch
through.
The module loading code is becoming increasingly ugly - this patch has not
helped. A refactor needs to be done soon.
2010-02-19 10:06:49 -08:00
Rasmus Andersson
3bb7ad6fea
fixed process.mixin to properly copy getters/setters
2010-02-18 10:17:13 -08:00
Micheil Smith
bcc032e43a
Adding interface between node and libeio for Chmod.
2010-02-18 10:13:57 -08:00
Ryan Dahl
c2e58c9dee
Remove a few wait() calls in the tests
2010-02-17 21:28:31 -08:00
Ryan Dahl
07423f3a87
Merge branch 'master' into net2
2010-02-17 15:46:30 -08:00
Ryan Dahl
0314a10e10
Clean up and rename test-stat-handler
2010-02-17 14:30:50 -08:00
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