Commit Graph

550 Commits (5629fd574a01f2d932409b4008593cbf7d77fa74)

Author SHA1 Message Date
Ryan 5629fd574a Add doc note about 'raws' encoding 2009-09-11 21:04:02 +02:00
Ryan d03c7e38e9 Just add the gernerated doc files. Make life easier. 2009-09-11 20:51:39 +02:00
Ryan d851bf9a66 Revert "Add xsl files to doc directory so people can build docs easily"
This reverts commit 412b4636c8.
2009-09-11 20:47:45 +02:00
Ryan 412b4636c8 Add xsl files to doc directory so people can build docs easily 2009-09-11 20:34:55 +02:00
Ryan 8c41adb628 Add node-repl 2009-09-11 20:32:24 +02:00
Ryan 1910c113cc Add '--' to seperate v8 args from program args 2009-09-11 20:05:22 +02:00
Ryan d6c9d31cb5 cpplint.py node.cc and node.h 2009-09-11 16:02:29 +02:00
Ryan 241950c1df Add isDirectory(), isFile(), isSocket(), ... methods to stats object.
Thanks to Felix Geisendörfer for the initial patch.
2009-09-11 13:41:47 +02:00
Ryan 3e4fc9f966 Add 'extern char **environ' so that the new ENV code compiles.
Problem appeared in dc39e82024.
2009-09-10 16:48:54 +02:00
Ryan dc39e82024 Add access to user environment via ENV 2009-09-10 14:07:35 +02:00
Ryan 68dda0a7d8 Man page generation. 2009-09-10 13:40:38 +02:00
Ryan 8e5d4f9a69 Remove debug agent. It shouldn't have been commited!
Appeared accidentally in 6dd850aa.
2009-09-10 12:41:18 +02:00
Ryan 2337630746 Move arg parsing to beginning of main()
For faster "./node -v"
2009-09-10 12:34:51 +02:00
Ryan d7e220cee1 Add a few fflush(stderr) calls to track down missing stacktraces. 2009-09-09 22:39:27 +02:00
Ryan fcff66bf29 Upgrade v8 to 1.3.10 2009-09-09 22:01:54 +02:00
Ryan efb2b703a6 Remove compiler warning with extra assert. 2009-09-09 18:06:58 +02:00
Ryan 393caeb4c9 Add Exception::Error where missing. 2009-09-09 17:35:59 +02:00
Ryan 8890070b88 Introduce "raws" encoding. Raw String.
This allows you to have binary data imported into your application via
strings instead of arrays of numbers! This needs testing before release.
2009-09-09 17:22:20 +02:00
Ryan 21a1b045f5 Byte stream to V8 decoding and encoding.
This does not (should not) change behavior.  Pulls those two functions
(encode/decode) out into node.cc.
2009-09-09 15:52:46 +02:00
Ryan 6dd850aa16 node.assert() was broken. 2009-09-08 14:59:43 +02:00
Ryan 063890b8da Internally use full paths when loading modules.
This completes shebang support begun in
6acac912dd.
2009-09-07 14:46:56 +02:00
Ryan 1a2696f10a Almost completely remove onExit and onLoad.
They were deprecated in 723c7d9f7c and
31265be4a6.

Still retaining error message.
2009-09-07 14:45:48 +02:00
Ryan 0407145c11 Exit the process on module load error. (temporary) 2009-09-07 14:13:32 +02:00
Ryan 86051ca5d2 Add note about sendBody buffering to docs 2009-09-07 12:56:10 +02:00
Ryan 94e627dc32 Add some links to the website 2009-09-07 12:54:08 +02:00
Ryan 2f46540d30 Create NODE_UNIXTIME macros 2009-09-07 12:53:44 +02:00
Ryan ba6c5e38d5 bump version 2009-09-05 14:47:56 +02:00
Ryan ea29e137b5 Hack for compiling on Snow Leopard.
I don't have access to this OS to fix the issue properly, so for the moment
I'm reverting back to 32bit build on Darwin. We changed to native 64bit in
8ddf930901.

Thanks to Johan Dahlberg and Tim Caswell for reporting and debugging this.
2009-09-05 14:40:12 +02:00
Ryan 485a9c1487 Small change to website index.html 2009-09-05 14:39:24 +02:00
Ryan 9dbd92476e Bugfix: Trap exceptions in URIParser.
A user was able to crash chat.tinyclouds.org by sending it a malformed URL!
Not good.
2009-09-04 17:42:00 +02:00
Ryan 734e86b9e5 bump version 2009-09-04 12:35:30 +02:00
Ryan 733ee426dc Fix slowness in debug run of test-tcp-many-clients
I'm not sure what is actually causing

  node_g test/mjsunit/test-tcp-many-clients.js

to run slowly, but I traced the problem to
afd9e714d3.
Somehow it has to do with promoting the compilation of src/util.js. That
change wasn't actually intended to be included in afd9e7 commit anyway, so
I'm reverting it here.
2009-09-04 12:15:21 +02:00
Ryan 2097b9d2e5 Upgrade evcom - disable EPIPE error output. 2009-09-04 11:46:56 +02:00
Ryan 1bd5277233 Add test-mkdir-rmdir.js 2009-09-04 11:46:31 +02:00
Ryan b6eed30379 Sort files in readdir test. 2009-09-03 21:59:31 +02:00
Ryan 3736bf9f49 Add node.fs.mkdir() 2009-09-03 21:57:15 +02:00
Ryan 9b3e2ae192 Add node.fs.readdir() 2009-09-03 21:32:27 +02:00
Ryan 747d6723aa Clean up eio wrappers. Create EIOPromise. 2009-09-03 21:32:21 +02:00
Ryan c13773a71f Clean up text on website. 2009-09-03 18:12:50 +02:00
Ryan 1645b8f8b0 Asyncly do getaddrinfo() on Apple. 2009-09-03 16:01:45 +02:00
Ryan 1df6d61208 Upgrade libeio, increase xthread stacksize to 64kb.
64kb seems to be the magic number for getaddrinfo() to work on Macintosh.
2009-09-03 15:59:48 +02:00
Ryan 342da69701 Add extension API documentation 2009-09-03 15:00:06 +02:00
Ryan aefbd57514 Add stack to promise.wait().
The problem was that if promise A was waiting and promise B was created and
then also told to wait (from some callback coming off the event loop), and
then promise A finished, promise B's wait would return. Promise A's wait
would not return until promise B was finished. This is incorrect.

To solve this issue properly, one probably needs to allocate separate
execution stacks. I use, instead, Poor Man's Coroutines. We continue to use
the main execution stack and force promises created most recently to return
first.

That is even if Promise A finishes first, neither wait() returns. Not until
Promise B finishes, will its wait() return. After that is complete, Promise
A's wait() will return.

This introduces the problem of growing the "wait stack" infinitely. Thus
I've added a strong warning to the documentation only to use this operation
sparingly. require() and include() seem to be the proper use case for such a
thing: they are called usually at program start up - they don't take too
long to finish and they won't be called so often.

Let's experiment with this stop-gap. If the infinite promise stack becomes a
problem for many, then I will remove promise.wait() entirely or perhaps only
use it for thread pool events.
2009-09-03 10:48:39 +02:00
Ryan 8ddf930901 Build natively on x64.
Had to add some waf hackery to override V8's architecture choice. They
probably have a reason for defaulting still to IA32, but all tests are
passing for me, and it makes it easier on users-and I think chrome is using
x64 builds too. So let's go for it!
2009-09-02 20:19:52 +02:00
Ryan 82d986db24 Add limits.h to src/node.cc for PATH_MAX 2009-09-02 20:18:57 +02:00
Ryan 97ce138621 Upgrade V8 to 1.3.9 2009-09-02 11:13:46 +02:00
Ryan 78bb53b009 Set module.loaded=true for dll modules. 2009-09-01 15:43:56 +02:00
Ryan ed9c3362ee Remove --lib option since there is no more libnode 2009-09-01 15:28:10 +02:00
Ryan 8152f9cff2 Revert static library build.
Not necessary to build dll modules after all.
2009-09-01 14:15:29 +02:00
Michael Carter 8ea6adcae6 Feature: add node.cwd() to access the current working directory. 2009-09-01 11:39:30 +02:00