Ryan Dahl [Tue, 27 Oct 2009 17:50:41 +0000 (18:50 +0100)]
Link libev and libeio as a normal .o instead of as .a
Using WAF "staticlib" to compile libev tends to confuse it with a system
version. Thanks to mr.binary42 for helping debug.
Ryan Dahl [Tue, 27 Oct 2009 17:11:07 +0000 (18:11 +0100)]
Add symlinks in root directory to executables after build.
Ryan Dahl [Tue, 27 Oct 2009 11:05:38 +0000 (12:05 +0100)]
Enable large file support.
Ryan Dahl [Tue, 27 Oct 2009 10:46:58 +0000 (11:46 +0100)]
Prefix all source files with node_
Ryan Dahl [Tue, 27 Oct 2009 10:08:50 +0000 (11:08 +0100)]
Remove unused macro
Ryan Dahl [Mon, 26 Oct 2009 22:07:37 +0000 (23:07 +0100)]
Change HTTP back to a 1.1 client.
This was modified in
b893859c34f05db5c45f416949ebc0eee665cca6 even though it
wasn't really required. Some users are experiencing problems after changing
to 1.0 - once those are identified the client will returned to 1.0.
Ryan Dahl [Mon, 26 Oct 2009 21:27:52 +0000 (22:27 +0100)]
Correctly guess x64 architecture
Previously was dependent on how python was compiled, and this was causing
build errors for some Macintosh Snow Leopard users. The solution is to use
a functionality already in WAF which looks at the output of
echo | gcc -E -dM -
Ryan Dahl [Sun, 25 Oct 2009 21:51:10 +0000 (22:51 +0100)]
Rename node.libraryPaths to require.paths
to be more inline with CommonJS.
Ryan Dahl [Fri, 16 Oct 2009 20:53:44 +0000 (22:53 +0200)]
Add work-around for configure --debug with Python 2.4.3
This is the error that was encountered:
: make
Waf: Entering directory `/dcs/06/csugds/node/ry-node-cfe5876/build'
Traceback (most recent call last):
File "tools/waf-light", line 148, in ?
Scripting.prepare(t, cwd, VERSION, wafdir)
File "/dcs/06/csugds/node/ry-node-cfe5876/tools/wafadmin/Scripting.py", line 142, in prepare
prepare_impl(t, cwd, ver, wafdir)
File "/dcs/06/csugds/node/ry-node-cfe5876/tools/wafadmin/Scripting.py", line 132, in prepare_impl
main()
File "/dcs/06/csugds/node/ry-node-cfe5876/tools/wafadmin/Scripting.py", line 185, in main
fun(ctx)
File "/dcs/06/csugds/node/ry-node-cfe5876/tools/wafadmin/Scripting.py", line 382, in build
return build_impl(bld)
File "/dcs/06/csugds/node/ry-node-cfe5876/tools/wafadmin/Scripting.py", line 395, in build_impl
bld.add_subdirs([os.path.split(Utils.g_module.root_path)[0]])
File "/dcs/06/csugds/node/ry-node-cfe5876/tools/wafadmin/Build.py", line 924, in add_subdirs
self.recurse(dirs, 'build')
File "/dcs/06/csugds/node/ry-node-cfe5876/tools/wafadmin/Utils.py", line 599, in recurse
f(self)
File "<string>", line 312, in build
File "/dcs/06/csugds/node/ry-node-cfe5876/tools/wafadmin/TaskGen.py", line 297, in clone
setattr(newobj, x, copy.copy(getattr(self, x)))
File "/usr/lib/python2.4/copy.py", line 108, in copy
return _reconstruct(x, rv, 0)
File "/usr/lib/python2.4/copy.py", line 336, in _reconstruct
y = callable(*args)
File "/usr/lib/python2.4/copy_reg.py", line 92, in __newobj__
return cls.__new__(cls, *args)
TypeError: function() takes at least 2 arguments (0 given)
make: *** [all] Error 1
Ryan Dahl [Fri, 16 Oct 2009 15:59:54 +0000 (17:59 +0200)]
Add v8 patch to fix mac x64 build.
http://codereview.chromium.org/284012
Ryan Dahl [Fri, 16 Oct 2009 12:05:12 +0000 (14:05 +0200)]
Upgrade v8 to 1.3.16
and apply my V8 patch for debugging.
Ryan Dahl [Fri, 16 Oct 2009 11:46:16 +0000 (13:46 +0200)]
Improve webpage
- add google-analytics
- add example to front-page
Ryan Dahl [Thu, 15 Oct 2009 17:18:18 +0000 (19:18 +0200)]
Upgrade http parser, change node as needed.
The latest version of http-parser is a bit more stringent EOF semantics.
Ryan Dahl [Thu, 15 Oct 2009 13:45:04 +0000 (15:45 +0200)]
Accept string representations of signals in node.kill and child.kill
Brandon Beacher [Wed, 14 Oct 2009 21:56:12 +0000 (17:56 -0400)]
Added external interface for signal handlers.
Also process.pid and node.kill().
Ryan Dahl [Wed, 14 Oct 2009 17:28:51 +0000 (19:28 +0200)]
Upgrade http_parser, allows quotes in URI
http_parser needs to be upgraded to latest code. Currently running off the
v0.2 branch, which is missing the latest fixes.
Connor Dunn [Wed, 14 Oct 2009 16:50:51 +0000 (18:50 +0200)]
Add node.fs.sendfile()
Ryan Dahl [Wed, 14 Oct 2009 15:07:50 +0000 (17:07 +0200)]
Add connection.fd getter.
Tim Caswell [Tue, 13 Oct 2009 18:08:53 +0000 (13:08 -0500)]
Fix the link to the new Contribute section
Felix Geisendörfer [Tue, 13 Oct 2009 17:45:13 +0000 (19:45 +0200)]
New section about contributing for the homepage
Timothy Caswell [Tue, 22 Sep 2009 15:48:29 +0000 (10:48 -0500)]
Clean up many of the reccommendations from jslint in the file.js library
Timothy Caswell [Tue, 22 Sep 2009 15:58:14 +0000 (10:58 -0500)]
Cleanup node.fs.cat to follow the newer style to match the code of file.writeFile
Ryan Dahl [Tue, 13 Oct 2009 11:26:00 +0000 (13:26 +0200)]
utils.js links to sys.js instead of other way around
Felix Geisendörfer [Mon, 12 Oct 2009 20:13:58 +0000 (22:13 +0200)]
Fix for confusing deprecation message
Ryan Dahl [Mon, 12 Oct 2009 19:09:18 +0000 (21:09 +0200)]
Bugfix: 'data' event for stdio should emit a string
Was emitting a single element array where array[0] was the input.
Felix Geisendörfer [Mon, 12 Oct 2009 15:03:16 +0000 (17:03 +0200)]
Documentation for Promise.timeout() and Promise.cancel()
Ryan Dahl [Mon, 12 Oct 2009 14:46:18 +0000 (16:46 +0200)]
Add some code comments to net.cc
Felix Geisendörfer [Mon, 12 Oct 2009 14:09:15 +0000 (16:09 +0200)]
Implemented Promise.timeout() and Promise.cancel()
Ryan Dahl [Mon, 12 Oct 2009 14:01:22 +0000 (16:01 +0200)]
Use bundle flags for osx in node-waf
Ryan Dahl [Sat, 10 Oct 2009 09:58:36 +0000 (11:58 +0200)]
Fix tabs in changelog
Ryan Dahl [Fri, 9 Oct 2009 16:10:59 +0000 (18:10 +0200)]
bump version
Ryan Dahl [Fri, 9 Oct 2009 15:49:29 +0000 (17:49 +0200)]
ACTUALLY remove node_version.h from node.h
Ryan Dahl [Fri, 9 Oct 2009 15:47:04 +0000 (17:47 +0200)]
Internalize node_version.h.
With the more detailed node.version changing (every commit), having
node_version.h exposed to all modules required a complete recompile each
time a commit was made.
People can use the javascript interface to get the version.
Ryan Dahl [Fri, 9 Oct 2009 15:15:47 +0000 (17:15 +0200)]
Add comments to node.cc
Ryan Dahl [Fri, 9 Oct 2009 14:16:27 +0000 (16:16 +0200)]
'git-describe' to 'git describe'
Ryan Dahl [Fri, 9 Oct 2009 13:00:12 +0000 (15:00 +0200)]
Put git revision into version string
Ryan Dahl [Fri, 9 Oct 2009 12:53:53 +0000 (14:53 +0200)]
Clean up README.
Ryan Dahl [Fri, 9 Oct 2009 12:21:41 +0000 (14:21 +0200)]
Kill -Werror in V8 for GCC 4.4.1 users.
http://code.google.com/p/v8/issues/detail?id=413
Ryan Dahl [Fri, 9 Oct 2009 12:18:10 +0000 (14:18 +0200)]
Update docs to use sys.js and not so much mixin().
Ryan Dahl [Fri, 9 Oct 2009 12:09:42 +0000 (14:09 +0200)]
symlink sys.js to utils.js
Ryan Dahl [Fri, 9 Oct 2009 11:30:27 +0000 (13:30 +0200)]
Raise helpful error when include() is called.
Ryan Dahl [Fri, 9 Oct 2009 11:25:04 +0000 (13:25 +0200)]
Enable debugging.
Use the --debug command line flag to enable.
It appears that d8 sucks. Luckily it can be rewritten rather easily with the
repl and tcp client libraries.
Node's CL option parsing is getting rather unwieldy - needs refactor.
Ryan Dahl [Fri, 9 Oct 2009 10:49:48 +0000 (12:49 +0200)]
More updates to wscripts v8 building.
This allows me to hack on V8 without recompiling the whole thing.
Ryan Dahl [Thu, 8 Oct 2009 22:34:39 +0000 (00:34 +0200)]
Fix wscript for python 2.4
Ryan Dahl [Thu, 8 Oct 2009 21:20:14 +0000 (23:20 +0200)]
Improve build for V8
Users following HEAD should 'make distclean' and reconfigure after this
update.
Ryan Dahl [Wed, 7 Oct 2009 23:30:26 +0000 (01:30 +0200)]
Use /bin/sh from exec()
Felix Geisendörfer [Wed, 7 Oct 2009 15:21:39 +0000 (17:21 +0200)]
Removed getHeader() function thanks to f623f
Ryan Dahl [Wed, 7 Oct 2009 14:56:19 +0000 (16:56 +0200)]
Normalize HTTP headers.
"Content-Length" becomes "content-length".
Ryan Dahl [Wed, 7 Oct 2009 14:02:34 +0000 (16:02 +0200)]
Upgrade v8 to 1.3.15
Ryan Dahl [Wed, 7 Oct 2009 14:01:03 +0000 (16:01 +0200)]
Fix --v8-options command line argument.
Ryan Dahl [Wed, 7 Oct 2009 13:39:39 +0000 (15:39 +0200)]
Fix test-signal-handler.js on macintosh - pause before exit.
Ryan Dahl [Wed, 7 Oct 2009 10:56:55 +0000 (12:56 +0200)]
Fix build.
- Add -f flag to rm on make clean.
- Use old jsmin - the new one seems to be broken.
Ryan Dahl [Wed, 7 Oct 2009 10:43:21 +0000 (12:43 +0200)]
Fix 'make distclean'
Ryan Dahl [Wed, 7 Oct 2009 09:53:03 +0000 (11:53 +0200)]
Upgrade v8 to 1.3.14
Ryan Dahl [Wed, 7 Oct 2009 08:24:50 +0000 (10:24 +0200)]
Update benchmarks with new createChildProcess API
Felix Geisendörfer [Tue, 6 Oct 2009 19:38:35 +0000 (21:38 +0200)]
Multipart test now uses a fixture instead of CURL
Felix Geisendörfer [Tue, 6 Oct 2009 18:53:05 +0000 (20:53 +0200)]
Fixed bad indention in multipart.js
Ryan Dahl [Tue, 6 Oct 2009 23:35:21 +0000 (01:35 +0200)]
ev_unref() the signal handlers.
That means even if they are Attached(), libev will still exit if there is
nothing else to do.
Brandon Beacher [Tue, 6 Oct 2009 00:56:33 +0000 (20:56 -0400)]
Added signal handler.
To be used internally. Needs an exposed interface.
Ryan Dahl [Tue, 6 Oct 2009 23:04:27 +0000 (01:04 +0200)]
Do not use /bin/sh to create child processes.
Instead directly call execvp(). This change is needed for the
soon-to-be-added signal handlers because the /bin/sh parent process does not
pass all signals to it's children, particularly SIGUSR1 on Linux.
The parameters of createChildProcess had to be changed slightly.
utils.exec() also has a changed implementation. A bug involving quoted
arguments was knowingly introduced into utils.exec(). Will fix later.
Ryan Dahl [Tue, 6 Oct 2009 14:28:52 +0000 (16:28 +0200)]
Only arguments before -- should be passed to V8.
Ryan Dahl [Tue, 6 Oct 2009 08:45:18 +0000 (10:45 +0200)]
Also accept 'utf-8' to specify utf8 encodings.
Ryan Dahl [Mon, 5 Oct 2009 22:43:56 +0000 (00:43 +0200)]
Simplify 'make distclean' by just doing 'rm -rf build'
Ryan Dahl [Mon, 5 Oct 2009 19:01:30 +0000 (21:01 +0200)]
Add __module to reference current node.Module object.
Ryan Dahl [Mon, 5 Oct 2009 18:35:48 +0000 (20:35 +0200)]
Add require.async().
Ryan Dahl [Mon, 5 Oct 2009 18:35:05 +0000 (20:35 +0200)]
Remove target argument from node.Module#newChild.
Ryan Dahl [Mon, 5 Oct 2009 18:29:59 +0000 (20:29 +0200)]
Remove old references to node.loadingModules
Ryan Dahl [Mon, 5 Oct 2009 17:15:38 +0000 (19:15 +0200)]
Remove include() from website.
Ryan Dahl [Mon, 5 Oct 2009 13:46:31 +0000 (15:46 +0200)]
Remove include() add node.mixin()
include() should not be used by libraries because it will pollute the global
namespace. To discourage this behavior and bring Node more in-line with
the current CommonJS module system, include() is removed.
Small scripts like unit tests often times do want to pollute the global
namespace for ease. To avoid the boiler plate code of
var x = require("/x.js");
var foo = x.foo;
var bar = x.bar;
The function node.mixin() is stolen from jQuery's jQuery.extend. So that it
can be written:
node.mixin(require("/x.js"));
Reference:
http://docs.jquery.com/Utilities/jQuery.extend
http://groups.google.com/group/nodejs/browse_thread/thread/
f9ac83e5c11e7e87
Ryan Dahl [Mon, 5 Oct 2009 12:51:41 +0000 (14:51 +0200)]
Parse queryString into req.uri.params
Ryan Dahl [Mon, 5 Oct 2009 11:16:56 +0000 (13:16 +0200)]
Fix typo
Ryan Dahl [Mon, 5 Oct 2009 11:04:21 +0000 (13:04 +0200)]
Remove node.pc
Ryan Dahl [Sun, 4 Oct 2009 10:17:50 +0000 (12:17 +0200)]
Don't use parseUri for HTTP server
The big parseUri RE was showing up often in profiles - this is simpler and
yields better performance by taking advantage of the C http parser.
Ryan Dahl [Sun, 4 Oct 2009 09:50:53 +0000 (11:50 +0200)]
Modify node_addon configure api
Ryan Dahl [Sun, 4 Oct 2009 09:14:39 +0000 (11:14 +0200)]
Update addon documentation
Ryan Dahl [Sun, 4 Oct 2009 08:33:39 +0000 (10:33 +0200)]
Add node-waf to help with building addons.
Ryan Dahl [Sat, 3 Oct 2009 20:43:54 +0000 (22:43 +0200)]
Add Makefiles which were forgotten.
Ryan Dahl [Sat, 3 Oct 2009 20:42:03 +0000 (22:42 +0200)]
Improve "make dist" remove generated doc from repo.
Ryan Dahl [Sat, 3 Oct 2009 19:46:59 +0000 (21:46 +0200)]
Don't unnecessarily output the makefile from the configure script.
Ryan Dahl [Sat, 3 Oct 2009 17:08:05 +0000 (19:08 +0200)]
Install wafadmin into $PREFIX/lib/node/wafadmin
This is in preparation for a special node_waf script for building external
modules.
Also change system library path to $PREFIX/lib/node/libraries
Felix Geisendörfer [Sat, 3 Oct 2009 14:40:06 +0000 (16:40 +0200)]
Documentation for Multipart parser
Also added multipart.parse as a convenience function
Ryan Dahl [Sat, 3 Oct 2009 13:08:03 +0000 (15:08 +0200)]
SetClassName on internal classes.
Ryan Dahl [Sat, 3 Oct 2009 12:45:35 +0000 (14:45 +0200)]
Replace DEFINE_SIMPLE_CALLBACK macros with explicit functions
Ryan Dahl [Fri, 2 Oct 2009 15:05:42 +0000 (17:05 +0200)]
Use waf-light instead of waf
This way there won't be strange tools/.waf-12343 directories hanging about.
All that waf needs to run is inside the tools/wafadmin directory.
Ryan Dahl [Fri, 2 Oct 2009 14:24:49 +0000 (16:24 +0200)]
chat.tinyclouds.org -> chat.nodejs.org
Ryan Dahl [Fri, 2 Oct 2009 12:10:40 +0000 (14:10 +0200)]
Add note about symbol visibility in V8 to wscript
Ryan Dahl [Wed, 30 Sep 2009 21:21:25 +0000 (23:21 +0200)]
bump version
Ryan Dahl [Wed, 30 Sep 2009 09:54:14 +0000 (11:54 +0200)]
Add a third argument to http.cat to specify req headers.
isaacs [Tue, 29 Sep 2009 23:38:07 +0000 (16:38 -0700)]
Pass the Host header in http.cat calls, if it was specified in the URL passed to http.cat.
Ryan Dahl [Tue, 29 Sep 2009 17:28:54 +0000 (19:28 +0200)]
Bugfix: require() and include() should work in callbacks.
Removing requireAsync and includeAsync from global scope for now as a
temporary fix. Reported by Yuffster.
Ryan Dahl [Tue, 29 Sep 2009 16:06:36 +0000 (18:06 +0200)]
Clean up some text in documentation.
Ryan Dahl [Tue, 29 Sep 2009 16:06:14 +0000 (18:06 +0200)]
Camel-case all http events
Ryan Dahl [Mon, 28 Sep 2009 20:39:00 +0000 (22:39 +0200)]
Copy Python's shutil.copytree into wscript.
It's broken in Python 2.4.4. One gets this message when trying to run
configure:
[...]
Checking for SYS_clock_gettime : ok
Checking for library rt : ok
Checking for function clock_gettime : ok
Checking for function nanosleep : ok
Checking for function ceil : ok
---- deps/udns ----
Traceback (most recent call last):
File "/path/to/node/tools/waf", line 148, in ?
Scripting.prepare(t, cwd, VERSION, wafdir)
File "/path/to/node/tools/.waf-1.5.8-
3e327cd9534c48e6762f56fdb1332663/wafadmin/Scripting.py", line 102, in prepare
prepare_impl(t,cwd,ver,wafdir)
File "/path/to/node/tools/.waf-1.5.8-
3e327cd9534c48e6762f56fdb1332663/wafadmin/Scripting.py", line 95, in prepare_impl
main()
File "/path/to/node/tools/.waf-1.5.8-
3e327cd9534c48e6762f56fdb1332663/wafadmin/Scripting.py", line 130, in main
fun(ctx)
File "/path/to/node/tools/.waf-1.5.8-
3e327cd9534c48e6762f56fdb1332663/wafadmin/Scripting.py", line 168, in configure
conf.sub_config([''])
File "/path/to/node/tools/.waf-1.5.8-
3e327cd9534c48e6762f56fdb1332663/wafadmin/Configure.py", line 100, in sub_config
self.recurse(k,name='configure')
File "/path/to/node/tools/.waf-1.5.8-
3e327cd9534c48e6762f56fdb1332663/wafadmin/Utils.py", line 391, in recurse
f(self)
File "<string>", line 82, in configure
File "<string>", line 48, in conf_subproject
File "/usr/lib/python2.4/shutil.py", line 111, in copytree
os.mkdir(dst)
OSError: [Errno 2] No such file or directory: '/sites/rabidlabs.net/sandboxes/m/public_html/projects/0909.node/node/build/default/deps/udns'
The problem is probably this:
http://mail.python.org/pipermail/python-bugs-list/2005-January/027118.html
As a solution I am copying 2.6's version of the function in.
Ryan Dahl [Mon, 28 Sep 2009 20:16:43 +0000 (22:16 +0200)]
Add doc for node.compile()
Ryan Dahl [Mon, 28 Sep 2009 17:44:40 +0000 (19:44 +0200)]
Update module loading docs
Ryan Dahl [Mon, 28 Sep 2009 16:10:25 +0000 (18:10 +0200)]
Add warning when coroutine stack size grows too large.
For the moment too large is 10.
Ryan Dahl [Mon, 28 Sep 2009 16:03:43 +0000 (18:03 +0200)]
docs: Reference node.libraryPaths in helpers section.
Ryan Dahl [Mon, 28 Sep 2009 15:37:34 +0000 (17:37 +0200)]
Clean up some things in the repl, add docs.
Ryan Dahl [Mon, 28 Sep 2009 15:12:28 +0000 (17:12 +0200)]
Error message on bad module load.
Ryan Dahl [Mon, 28 Sep 2009 14:50:19 +0000 (16:50 +0200)]
API: Move node.exit() to process.exit().