Ryan
82cb1b5acb
API: Remove buffered file object (node.File)
With the addition of non-libeio stdio (17c6a67f15
)
this class is no longer being used internally. It has proved buggy and isn't
full-featured enough to be very useful. Since it's implemented entirely in
javascript it will be easy for someone to extra into their own library if
needed.
16 years ago
Ryan
8658999c7d
Refactor node.Process to take advantage of evcom_reader/writer.
16 years ago
Ryan
17c6a67f15
Introduce node.stdio
Remove old stdout, stderr, stdin objects.
16 years ago
Ryan
316e2833f0
Use flat object instead of array-of-arrays for HTTP headers.
E.G. { "Content-Length": 10, "Content-Type": "text/html" } instead of
[["Content-Length", 10], ["Content-Type", "text/html"]].
The main reason for this change is object-creation efficiency.
This still needs testing and some further changes (like when receiving
multiple header lines with the same field-name, they are concatenated with a
comma but some headers ("Content-Length") should not be concatenated ; the
new header line should replace the old value).
Various thoughts on this subject:
http://groups.google.com/group/nodejs/browse_thread/thread/9a67bb32706d9efc#
http://four.livejournal.com/979640.html
http://mail.gnome.org/archives/libsoup-list/2009-March/msg00015.html
16 years ago
Ryan
9c97b1db30
bump version
16 years ago
Ryan
a8813fcdf5
evcom upgrade - ignore sigpipe. remove error output.
16 years ago
Ryan
a73998d6f4
bump version
16 years ago
Kevin van Zonneveld
8489bdbaeb
Buggy connections could crash node.js. Now check connection before sending data every time
http://groups.google.com/group/nodejs/browse_thread/thread/16abfa87c32408f3
We have our node.js server monitored by monit, however it seems monit is pretty
agressive / quick about closing its connection and thus we've gotten into a
loop of errors like this:
at #<a ServerResponse>.flush
at #<a ServerResponse>.sendBody
at [object Object].json
at [object Object].[anonymous]
at [object Object].[anonymous]
at [object Object].[anonymous]
http.js:353: Socket is not open for writing
connection.send(out, out.encoding);
^
Below is a patch that basically cause flushMessageQueue to check the connection
state for each item in the queue rather than just a single time in the
beginning.
16 years ago
Ryan
f7f11352b7
Don't Close TCP Connection/Server on destruction.
If the connection is open when the destructor is called it's a bug! Don't
want to try to compensate for bugs.
16 years ago
Ryan
368ea93bfe
Upgrade evcom - fix API issues.
16 years ago
Ryan
b590a45849
Return the EventEmitter from addListener for chaining.
http://groups.google.com/group/nodejs/browse_thread/thread/13708eacedb40b36
16 years ago
Abe Fettig
53b3d6be35
Bugfix: stdin fd (0) being ignored by node.File.
In the case of stdin options.fd is 0, which is considered false, therefore fd
gets set to null intead of 0.
http://groups.google.com/group/nodejs/msg/80849f6aa0b0eaa0
16 years ago
Ryan
7aaab320b3
API: tcp.Connection "disconnect" event renamed to "close".
More semantic, since the event will be emitted on connection error,
when the connection was ever established.
16 years ago
Ryan
0f888ed6de
bump version
16 years ago
Ryan
af40ae6b8f
Remove debugging messages in HTTP client
16 years ago
Ryan
3b0408ec1c
Sync evcom after refactor; fix binding issues
16 years ago
Ryan
0638a3a3ab
Add IncomingMessage.prototype.pause() and resume().
16 years ago
Ryan
94e8721771
Add connection.readPause() and connection.readResume()
16 years ago
Ryan
7d60998ee1
Upgrade evcom
Made API changes in evcom and had to make minor change src/net.cc to comply.
16 years ago
Ryan
ed8c43d2f3
Bugfix: Negative ints in HTTP's on_body and node.fs.read()
Similar to the error fixed in
9d3ed1bb92
.
Reported by Felix Geisendörfer.
16 years ago
Ryan
75fc21537a
Bugfix: response.setBodyEncoding("ascii") not working.
This is same error that was fixed in 216fb3b9b2
.
Reported by Felix Geisendörfer.
16 years ago
Ryan
78024fa689
Remove extra ev_timer_stop() in src/dns.cc
16 years ago
Ryan
7464d42310
bump version
16 years ago
Ryan
b849d50288
Remove unused symbols.
16 years ago
Ryan
216fb3b9b2
Bugfix: node.http.ServerRequest.setBodyEncoding('ascii') not working
Pointed out by Felix Geisendörfer.
http://groups.google.com/group/nodejs/browse_thread/thread/d061fe62eba6d3b3#
16 years ago
Ryan
9b3baf3d50
Bugfix: node.encodeUtf8 was broken. (Connor Dunn)
http://groups.google.com/group/nodejs/browse_thread/thread/5ad0660a0959d885#
16 years ago
Ryan
396ed96b2d
Upgrade evcom - fix accepting too many connections issue
16 years ago
Ryan
6acac912dd
Initial support for shebang.
There are some issues with loading modules from shebang-executed scripts
that will still need to be addressed, but this works for simple single
script situations.
16 years ago
Ryan
11df252cb9
Add simple command line switches
16 years ago
Ryan
1bf9be6b37
Add node.version
16 years ago
Ryan
207bd3c764
Add header to src/dns.cc to compile on FreeBSD.
16 years ago
Ryan
4f46c47773
node.fs.File was not passing args to promise callbacks.
Reported by Jacob Rus.
16 years ago
Ryan
9d3ed1bb92
Bugfix: negative integers in raw encoding stream.
Add test. Reported by Tim Caswell.
16 years ago
Ryan
e25afc35bd
Hack to fix module line numbers in stack traces.
This code is going to be refactored with the introduction of the "process"
object. This is just temporary.
16 years ago
Ryan
b27f8ba06d
Default to chunked for client requests without C-Length.
Also add test. Reported by Felix Geisendörfer.
16 years ago
Ryan
5373c6869a
node.tcp.Server's backlog option is now an argument to listen()
16 years ago
Ryan
41d89f611f
Add DNS API.
Missing functional tests. I'm not sure how to do tests because I don't want
to rely on the fact that users have an internet connection.
16 years ago
Ryan
0fb0af3a6c
Rename evnet to evcom.
16 years ago
Ryan
842eaf446d
Move EventEmitter.prototype.emit() completely into C++.
This shows a healthy speed up.
16 years ago
Ryan
4aac515202
Remove unused 'using namespace std' lines.
16 years ago
Ryan
b3e828991b
Remove unused symbols from http.cc.
16 years ago
Ryan
854538d094
Missing HandleScope in GetMethod(). Thanks Brian.
16 years ago
Ryan
50c0d16208
Fix memory leak. It was only a missing HandleScope in Emit()!
This change also tries to optimize Emit by looping through the listeners in
C++. The javascript version of this function is still there and being used,
but only by javascript code. Not an ideal solution - there should only be
one implementation - however for now it seems to help.
This doesn't solve all of the memory leaks that we're experiencing, there
seems to be another subtle problem.
16 years ago
Ryan
78aaf8df67
Remove unused static object.
16 years ago
Ryan
646829262f
Fix evnet_buf size calculation for V8::AdjustAmountOfExternalAllocatedMemory().
16 years ago
Ryan
dd1750f573
Clean up little errors in events.js
16 years ago
Ryan
0462b5d1ec
ObjectWrap: MakeWeak again after each Weak callback.
16 years ago
Ryan
b1588e78d9
Fix utf8 scripts, add test. Thanks Urban.
16 years ago
Ryan
e8a5d3d311
remove the callback from node.cat, node.fs.cat
16 years ago
Ryan
b07dc31e1b
root_module should be a local variable
16 years ago