Ryan Dahl
b9106b0ecd
Use AF_INET sockets instead of always AF_INET6
...
You can get AF_INET6 still, it's just not the only choice.
2010-04-02 13:20:56 -07:00
Ryan Dahl
fdae14070c
Move buffer constants at the top of net.js
...
Remove some cruft.
2010-04-01 16:46:37 -07:00
Ryan Dahl
e232cf3100
Hack to support UTF8 writes again!
2010-04-01 16:24:36 -07:00
Ryan Dahl
3197cf291d
Better flushing
...
Lost Utf8 support. Waiting for http://codereview.chromium.org/1539013
2010-04-01 15:53:48 -07:00
Tim Caswell
7af9cb9e80
Don't put an extra comma after bases in inspect.
...
{ [Function] { [Function]
, more: true => more: true
, more2: true , more2: true
, more3: true , more3: true
, more3: true , more4: true
, more3: true , more5: true
} }
2010-04-01 08:58:19 -07:00
Johan Dahlberg
18de108e4c
Bugfix: watchFile, unwatch, watch causes error
...
Fixed bug that caused application to cast a "TypeError: Cannot call method
'addListener' of undefined" when first watching a file, unwatching and then
watching same file again.
2010-03-31 10:38:25 -07:00
Herbert Vojcik
da16128bf6
missing return after forceClose
2010-03-31 08:13:03 -07:00
Ryan Dahl
d1b78c3f5d
More efficient Stream.write
2010-03-27 14:07:43 -07:00
Ryan Dahl
bb00fef3cd
Change Buffer.toString to conform to CommonJS Binary/F
...
Also add Buffer.inspect
2010-03-26 08:36:08 -07:00
Ryan Dahl
7ed80451ca
Increase pool.used before making 'data' event
2010-03-26 08:35:12 -07:00
Ryan Dahl
6740dd48b3
Change Buffer toString() output
2010-03-25 09:50:49 -07:00
Ryan Dahl
3546106c43
Add req.connection and res.connection
2010-03-24 07:21:00 -07:00
Ryan Dahl
6f21ac1282
Don't free http parser for the client!
...
Fixes test-http-client-race.js, test-http.js
2010-03-23 21:41:42 -07:00
Ryan Dahl
5c6f063ef2
snake to camel in HTTP
2010-03-23 21:31:44 -07:00
Ryan Dahl
70ffdf5db9
Fix HTTP keep-alive
2010-03-23 21:10:01 -07:00
Ryan Dahl
8e9ec4abea
Fix idle timeouts
...
Remove process.now because it doesn't provide enough precision.
2010-03-23 20:54:19 -07:00
Ryan Dahl
3238944c7a
Don't use sys.puts for debug in net.js
2010-03-23 18:10:13 -07:00
isaacs
6e603ccbe2
Fix debug statement that was using puts instead of debug()
2010-03-23 08:54:05 -07:00
Ryan Dahl
c66a0a739f
recvBuffer -> pool
2010-03-19 23:09:16 -07:00
Ryan Dahl
04001fb591
Don't deprecate readyState, yet
2010-03-19 21:51:07 -07:00
Ryan Dahl
ebe2721cbf
Don't use sys.debug, it gets preprocessed out
...
Problem introduced in b29f78772e
2010-03-19 21:50:11 -07:00
Ryan Dahl
139c91e892
Support old 'binary' encoding in net.js
2010-03-19 21:25:29 -07:00
Ryan Dahl
663269f687
old tcp module is now tcp_old
2010-03-19 21:22:11 -07:00
Ryan Dahl
025116f8d0
Move Buffer into own module
2010-03-19 20:58:24 -07:00
Ryan Dahl
ac684f3583
Add legacy 'binary' encoding/decoding methods to Buffer
2010-03-19 20:33:09 -07:00
Ryan Dahl
b80f6e9ed1
http2 now default
2010-03-19 19:52:09 -07:00
Ryan Dahl
776c3e2b29
Add note about Buffer abstraction
2010-03-19 12:08:57 -07:00
Ryan Dahl
3a993d8897
Buffer.utf8ByteLength -> Buffer.byteLength
2010-03-19 12:02:59 -07:00
Ryan Dahl
3e969f0f74
Random net.js clean ups
2010-03-19 11:46:35 -07:00
Ryan Dahl
f8c3b6009d
Remove send fd functionality
...
It was broken anyway. It will go into its own class later.
2010-03-19 11:34:26 -07:00
Ryan Dahl
90295d9fce
[net2] inline write on empty write buffer for performance
2010-03-19 02:24:16 -07:00
Ryan Dahl
1762abcece
http2 now passes all tests
2010-03-18 15:49:42 -07:00
Ryan Dahl
916e057fea
Add 'opening' readyState
2010-03-18 14:33:42 -07:00
Ryan Dahl
6db43f4c29
net2 HTTPClient work
2010-03-18 13:21:52 -07:00
Ryan Dahl
1332cafb7c
s/Socket/Stream/g
2010-03-17 16:31:24 -07:00
Ryan Dahl
b865f9e9c8
Merge branch 'master' into net2
2010-03-17 16:24:43 -07:00
Ryan Dahl
04c06b9149
child process now use net.Socket
2010-03-17 14:00:17 -07:00
Krishna Rajendran
3847add943
Fix calls to dns bindings in dns.js
2010-03-16 10:29:16 -07:00
Ryan Dahl
953fa3a5f5
Move net2 bindings out of process
2010-03-15 16:44:50 -07:00
Ryan Dahl
fdf46a65c9
Use streams for stdout and stdin
2010-03-15 15:11:40 -07:00
Ryan Dahl
cbfd4da818
Merge branch 'master' into net2
...
Conflicts:
src/node.cc
2010-03-15 14:34:01 -07:00
Ryan Dahl
6befc72f82
Add missing lib/events.js
2010-03-15 14:25:06 -07:00
Ryan Dahl
627fb5adbb
Load c++ modules on demand
2010-03-15 14:24:15 -07:00
Ryan Dahl
5c712a7da5
Lazy load fs.readFile
2010-03-15 10:41:58 -07:00
Ryan Dahl
4ccdc501d4
Include lib/ directory in node executable. Compile on demand.
...
Instead of installing the files in /usr/lib/node/libraries and loading them
from the file system, the files are built-in to the node executable.
However, they are only compiled on demand.
The reasoning is:
1. Allow for more complex internal javascript. In particular,
process.stdout and process.stdin can be js implemented streams.
2. Ease system installs. Loading from disk each time is unnecessary
overhead. Note that there is no "system" path for modules anymore. Only
$HOME/.node_libraries.
2010-03-15 08:04:35 -07:00
Jed Schmidt
004faf3846
Added check to make sure writeHead() is called before write(), to prevent silent failure.
2010-03-13 22:27:51 -08:00
Ryan Dahl
96f08cf05c
Work on net2 http client
2010-03-12 18:39:02 -08:00
Ryan Dahl
aa6eaae0aa
Simplify Socket constructor
2010-03-12 13:06:05 -08:00
Ryan Dahl
28211519b6
Merge branch 'master' into HEAD
...
Conflicts:
lib/fs.js
wscript
2010-03-12 12:42:15 -08:00
Ryan Dahl
3adf7a3dcf
TCP timeout opt-in instead of opt-out
...
For speed, idle connections are super cheap.
2010-03-12 12:39:37 -08:00
Ryan Dahl
b94af8d6b1
Only print readyState deprication message once
2010-03-12 12:34:25 -08:00
Ryan Dahl
6bd11f147a
Fix undefined reference in fs.js
2010-03-11 14:32:10 -08:00
Ryan Dahl
6d9227b79a
Make relative ref to sys in fs module.
2010-03-11 12:48:47 -08:00
Ryan Dahl
ca862d75de
[net2] Add Socket.setTimeout
...
Still seeing crashes and performance problems.
2010-03-11 12:43:32 -08:00
Ryan Dahl
03f2bfe51f
Make relative ref to sys in fs module.
2010-03-11 12:37:37 -08:00
isaacs
976983960d
More ini parser features.
...
Update the ini parser to support some more whitespace cases, turn lines
without an equal sign into a "flag" that's just true if set, and support
comments.
2010-03-10 21:44:59 -08:00
Ryan Dahl
0918bb2070
Adjust a few more tests to work with net2
2010-03-09 18:37:23 -08:00
Ryan Dahl
c1a0ade7e7
Further net2 compatibilities
2010-03-09 16:27:49 -08:00
Ryan Dahl
b07f2e25f4
Update http2 for new stream API
2010-03-09 12:00:06 -08:00
Ryan Dahl
264a67aed2
Update net.js for new stream API
2010-03-09 11:59:42 -08:00
Ryan Dahl
faffee0c62
Merge branch 'master' into net2
2010-03-09 10:45:06 -08:00
Ryan Dahl
00333d59d6
process.inherits -> sys.inherits
2010-03-09 10:33:19 -08:00
isaacs
a38aa02f9f
Remove process.mixin dependency from fs
2010-03-08 17:57:08 -08:00
Ryan Dahl
8c4561d2a0
Merge branch 'master' into net2
2010-03-08 11:14:11 -08:00
Felix Geisendörfer
39472709f0
fs.createWriteStream throws fs undefined error
...
The improved test suite now catches this bug, so hopefully thing like
this will not happen again.
See: http://github.com/ry/node/issues#issue/75
2010-03-08 10:22:19 -08:00
Felix Geisendörfer
9a9f08b1bc
Add callbacks to stream methods
...
Allows for more fine graining, especially finding out about an individual
chunk of data being flushed in a write stream rather than the whole queue.
This commit also fixes a bug causing forceClose to fail on a readStream that
did not finish opening yet.
2010-03-08 09:05:56 -08:00
Ryan Dahl
681733d905
Merge branch 'master' into net2
2010-03-05 20:51:26 -08:00
Ryan Dahl
b9cd3363ef
Bugfix in querystring
2010-03-05 17:07:02 -08:00
Rob Ellis
5c78c45fa3
Added Parse INI to Node, tests
2010-03-05 16:17:57 -08:00
Ryan Dahl
5217eda1ae
Merge remote branch 'felixge/file2'
2010-03-05 11:11:23 -08:00
Felix Geisendörfer
dbf9e466bc
Documentation for FileWriteStream
2010-03-05 20:04:19 +01:00
Felix Geisendörfer
78c61000c2
Properly handle read errors
...
Also set readable to false if the initial fs.open call failed.
2010-03-05 19:53:59 +01:00
Felix Geisendörfer
145fac2b56
Use sys inherits
...
Also use events.EventEmitter instead of process.EventEmitter.
2010-03-05 19:24:20 +01:00
Felix Geisendörfer
0fcc94525a
Renamed fileReadStream -> createReadStream
...
Did the same for fileWriteStream as well.
2010-03-05 18:56:25 +01:00
Felix Geisendörfer
48562fa938
Updated file streams
...
Read streams now only support forceClose()
Write streams support close() and forceClose()
2010-03-05 18:43:29 +01:00
Felix Geisendörfer
b4fba5fe8e
Simplify buffering
...
There is no way more than one read event would be buffered.
2010-03-05 18:43:29 +01:00
Felix Geisendörfer
f6e00759ef
Initial read stream implementation
2010-03-05 18:43:28 +01:00
Felix Geisendörfer
9415ca909e
Use process.mixin instead of sys.mixin
...
The process namespace has not been cleaned up yet, so mixin is still
attached to process.
2010-03-05 18:42:32 +01:00
Ryan Dahl
d1500cee6e
Store connection in OutgoingMessage
2010-03-03 13:06:19 -08:00
Ryan Dahl
9d4d232eaa
Factor out a http.Client._reconnect() function
2010-03-03 12:49:06 -08:00
Ryan Dahl
64d0e328e8
Remove unused EventEmitter object
2010-03-03 12:41:31 -08:00
Rasmus Andersson
5c602b750a
Rewrote realpath implementation solving all known failing tests (also added a bunch of new test cases)
2010-03-02 17:35:34 -08:00
Ryan Dahl
9be3df0828
Add sys.log()
2010-03-02 17:35:01 -08:00
Felix Geisendörfer
18a70ffda1
Tweaks
...
- Add 'writeable' property
- Renamed pump->flush
- Use sys.mixin instead of process.mixin
2010-03-02 23:29:54 +01:00
Felix Geisendörfer
61785afb3d
Initial write stream implementation
2010-03-02 23:29:54 +01:00
Ryan Dahl
7bd3280cc2
process.inherits -> sys.inherits in net.js
2010-03-02 10:59:19 -08: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
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
b021a845f7
Move process.inherits to sys
2010-03-01 11:39:35 -08:00
Ryan Dahl
30b700ee22
Move watchFile into fs module
2010-03-01 10:42:37 -08:00
Ryan Dahl
810882c1ad
Move 'fs' module out of src/node.js into its own file
2010-03-01 10:14:49 -08:00
Ryan Dahl
16e32c8fd9
Allow for net reconnects
2010-02-26 12:13:49 -08:00
Ryan Dahl
c6cc386819
Merge branch 'master' into net2
2010-02-26 11:34:24 -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
a97fdf5c39
Merge branch 'master' into net2
2010-02-22 14:22:20 -08:00
Ryan Dahl
b8dee2eb20
camel case variables in url module
2010-02-22 06:49:14 -08:00
Ryan Dahl
12d78cd1df
Rename sendHeader to writeHeader; allow reasonPhrase
2010-02-21 16:53:49 -08:00
Ryan Dahl
c094dda53c
Move errors for readPause and readResume
2010-02-21 16:01:12 -08:00
Ryan Dahl
5fbc750db7
multipart no longer depends on Promise
2010-02-20 19:17:58 -08:00
Ryan Dahl
de7016eac5
sys.exec() no longer uses Promise
2010-02-19 16:55:46 -08:00
Ryan Dahl
c04b679e12
'dns' no longer uses Promise
2010-02-19 16:41:08 -08:00
Ryan Dahl
d0f2d465aa
http.cat no longer uses Promise
2010-02-19 16:26:48 -08:00
Ryan Dahl
07423f3a87
Merge branch 'master' into net2
2010-02-17 15:46:30 -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
Ryan Dahl
23cf502db7
API: connection.send() renamed to connection.write()
2010-02-16 13:18:42 -08:00
Mark Hansen
98e61db216
sys.inspect(Date) now shows the date value
2010-02-15 17:08:22 -08:00
visionmedia
9c6263bff8
Added multiple arg support for sys.puts(), print(), etc.
2010-02-12 10:43:07 -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
Ryan Dahl
dc01587c6c
Merge branch 'master' into net2
2010-02-10 14:05:29 -08:00
Tim Caswell
3aca908db3
Document the changes to sys.inspect's API.
...
It now takes an optional showHidden argument that shows hidden/non-enumerable properties of objects.
Also cleanup the lib/sys.js file a bit.
2010-02-09 09:20:15 -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
b6edae5671
Expose errno exception creation
2010-02-08 07:36:40 -08:00
Ryan Dahl
979f5889d5
Optimize: Use callbacks instead of events in net2
2010-02-05 20:14:48 -08:00
Ryan Dahl
d979a7993e
Wrap syscalls with try-catch
2010-02-05 19:47:16 -08:00
Ryan Dahl
96f42745ff
Merge branch 'master' into net2
2010-02-05 19:00:26 -08:00
Aaron Heckmann
8f52142116
look for -1 instead of false returned from string.indexOf
2010-02-03 10:13:15 -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
Ryan Dahl
4f56d8ae24
Rename Buffer.utf8Length to Buffer.utf8ByteLength
2010-02-01 13:10:37 -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
49451c1dab
Merge branch 'master' into net2
2010-01-29 00:58:43 -08:00
Ryan Dahl
344243db92
Simplify send buffer logic
2010-01-28 19:13:13 -08:00
Ryan Dahl
aadce8e1a9
Optimize, clean up net2 net.js and http2.js
2010-01-28 14:31:57 -08:00
Ryan Dahl
c328f3e6c6
Add new http server library
2010-01-28 11:17:21 -08:00
Ryan Dahl
1bb52947e0
Forgot to include fix from HTTP client bug ( 30b0522
)
2010-01-27 10:00:46 -08:00
Ryan Dahl
824a2fd1c6
Clean up a few bugs in net.js
2010-01-26 18:36:24 -08:00
Ryan Dahl
741e3fa91b
HTTP works somewhat on net2 now
...
However it's not working very well: Hitting a 'hello world' server with many
requests (ab -t 60 -c 10) will cause it to crash with the following error.
Obtained 3 stack frames.
./node(_Z11print_tracev+0x1c) [0x80d1b3c]
./node(_ZN4node6Parser7ExecuteERKN2v89ArgumentsE+0x69) [0x80d3759]
./node [0x811f44b]
TypeError: Already parsing a buffer
at Socket.<anonymous> (/home/ryan/projects/node/lib/http2.js:393:20)
at IOWatcher.callback (/home/ryan/projects/node/lib/net.js:81:12)
at node.js:985:9
at node.js:989:1
2010-01-25 17:55:08 -08:00
Blaine Cook
cd6397cc45
Add support for MX, TXT, and SRV records in DNS module.
2010-01-25 09:03:27 -08:00
Ryan Dahl
c420c89dbd
Make assert.AssertionError instance of Error
2010-01-24 14:39:32 -08:00
cloudhead
3669c75f4d
removed inline require call for querystring
2010-01-24 14:25:31 -08:00
Ryan Dahl
653bf580bf
Merge branch 'develop' into net2
...
Conflicts:
src/node.cc
2010-01-20 15:24:38 -08:00
Michaeljohn Clement
4e16e386fe
set default encoding in sendBody
2010-01-19 12:43:19 -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
70293a43c9
API: Move Promise and EventEmitter into 'events' module
2010-01-15 12:46:08 -08:00
Ryan Dahl
df59f06734
recvMsg shouldn't return array for efficiency.
2010-01-13 08:41:04 -08:00
Ryan Dahl
02e52ef8e9
Merge branch 'master' into net2
2010-01-12 16:59:14 -08:00
David Sklar
a876df6c71
Initial take on passing FDs between processes
2010-01-09 01:28:19 -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
Felix Geisendörfer
f86c1783b7
Handle bad requests in simplified parser API
2010-01-05 22:37:51 +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
elliottcable
52f088b966
Providing the option for a repl-printer other than sys.p
2010-01-05 00:14:03 -08:00
visionmedia
a650138ebf
Moved help msg to node-repl
2010-01-04 22:06:18 -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
8d0f756158
[net2] delete unix sockfile on server start and shutdown
2009-12-30 11:32:07 -08:00
Ryan Dahl
a8ede8dd9e
[net2] port ping pong test
2009-12-30 10:58:46 -08:00
Ryan Dahl
0d31e9875f
[net2] socket.setNoDelay
2009-12-30 10:43:47 -08:00
David Sklar
de9bfdea8e
[net2] toRead() for non-linux (SIOCINQ -> FIONREAD)
2009-12-30 10:06:40 -08:00
Ryan Dahl
402755b14a
Add socket.address()
2009-12-30 00:57:55 -08:00
Ryan Dahl
2582560f91
[net2] Do hostname lookups in connect and listen
2009-12-30 00:53:14 -08:00
Ryan Dahl
07333a4ab0
[net2] Set FD_CLOEXEC on created socket fds.
2009-12-29 21:12:32 +01:00
Ryan Dahl
48ccbb9afa
[net2] lower-case socket.type
2009-12-29 21:12:32 +01:00
Ryan Dahl
25700e65ee
[net2] Better EOF marking, rename events
2009-12-29 21:12:32 +01:00
Ryan Dahl
153b755936
Change IOWatcher constructor to have no arguments
2009-12-29 21:12:32 +01:00
Ryan Dahl
6e5abf4551
implement getaddrinfo
2009-12-29 21:12:31 +01:00
Ryan Dahl
0618f02f6f
Implement half-closed streams
2009-12-29 21:12:31 +01:00
Ryan Dahl
b23ed4a98c
Rename new streaming code to 'net'
2009-12-29 21:12:31 +01:00
Ryan Dahl
0accebe583
Stack trace for asserts shouldn't include assert module
2009-12-29 20:15:05 +01:00
Ryan Dahl
dd35637603
Fix assert.js code style
2009-12-29 20:10:59 +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
Felix Geisendörfer
5de04dafc6
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();
});
}
2009-12-22 19:28:30 +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
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
f65b36eec1
Use the new uri parser.
2009-12-18 19:02:16 +01:00
isaacs
4a615ddd9c
Add credits, and a "decode" function.
2009-12-18 18:59:02 +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
visionmedia
501b4a54be
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
2009-12-08 05:35:56 +01:00
Xavier Shay
756544fd28
sys.inspect prints out special chars correctly (\n, \u0001, etc...)
2009-12-07 10:05:18 +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
4d818f1fd3
Implement promises entirely in JS
2009-12-06 11:36:22 +01:00
Ryan Dahl
3414eab2f3
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.
2009-12-06 10:50:03 +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
Ryan Dahl
7538e70767
Expose versionMajor versionMinor to http messages
2009-12-05 07:55:24 +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
jed
a9ea21feb4
fixed check on header type, to check member instead of object.
2009-11-30 10:14:09 +01:00
Friedemann Altrock
1107a1bd1e
sys.puts should not kill the process when giving it undefined
2009-11-28 20:56:47 +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
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
7719ce33db
New http-parser
...
No longer based on Ragel, but hand-written.
Had to add HTTPConnection.resetParser() because the parser is stricter and
will error out when you try to give it a message after the previous had
"Connection: close". The HTTP client was doing that. Thus we reset the
parser manually after each new connection.
2009-11-21 16:27:02 +01:00
Ryan Dahl
1eba0cadc1
Revert "Normalize HTTP headers."
...
This reverts commit f623fd7658
.
But only the changes made in lib/ they were falsely detecting outgoing
headers.
2009-11-21 15:52:12 +01:00
Onne
9d39e18c6d
fixes lib/file.js write, it doesnt allways emit errors or success
2009-11-19 19:12:42 +01:00
Felix Geisendörfer
6e9e61b9df
Format JSON for inspecting objects
...
This patch enables formatting for inspecting JSON objects. Example:
p({foo: "bar", deep: {foo: "bar"}})
becomes:
{
"foo": "bar",
"deep": {
"foo": "bar"
}
}
2009-11-16 12:40:58 +01:00