npm: Upgrade to 1.1.37
.gitignore: Don't ignore node_modules (breaks npm)
2012.07.10 Version 0.6.20 (maintenance)

* npm: Upgrade to 1.1.37 (isaacs)

* benchmark: Backport improvements made in master (isaacs)

* build: always link with -lz (Trent Mick)

* core: use proper #include directives (Ben Noordhuis)

* cluster: don't silently drop messages when the write queue gets big (Bert Belder)

* windows: don't print error when GetConsoleTitleW returns an empty string (Bert Belder)
Blog post for v0.6.20
build: fix spurious mksnapshot crashes for good

A variety of gcc bugs made mksnapshot crash with either a segmentation fault
or a 'pure virtual method callled' run-time error.

After much wailing and gnashing of teeth I managed to deduce that the bugs
show up when:

  1. gcc 4.5.2 for i386-pc-solaris2.11 is used and -fstrict-aliasing is
     enabled, or

  2. gcc version 4.4.6 for x86_64-redhat-linux is used and
     -ffunction-sections -finline-functions at -O2 or higher is enabled

Therefore, disable -ffunction-sections and -fdata-sections unconditionally
and disable -fstrict-aliasing only on Solaris.

The -ffunction-sections and -fdata-sections switches were nonsense anyway
because we don't link with -Wl,--gc-sections.
tools: fix shebang in tools/doc/generate.js
Now working on 0.6.21
Merge remote-tracking branch 'ry/v0.8' into v0.8-merge

Conflicts:
	src/node_version.h
lint
npm: upgrade to 1.1.39

Fix #3616
Merge branch 'v0.6' into v0.8
build: disable unsafe optimizations

Compile at -O2 and disable optimizations that trigger gcc bugs.

Some people still reported mksnapshot crashes after commit b40f813 ("build: fix
spurious mksnapshot crashes for good" - so much for that).

Average performance of the -O2 binary is on par with the -O3 binary. Variance
on the http_simple bytes/8 benchmark appears to be slightly greater but small
enough that the possibly of it being noise cannot be excluded.

The new binary very slightly but consistently outperforms the -O3 binary (by
about 0.5%) on the mostly CPU-bound bytes/102400 benchmark. That could be an
artifact of the system I benchmarked it on, a Core 2 Duo with a puny 32 kB of
L1 instruction cache. The smaller binary seems to play nicer with the cache.
build: partially fix configure on ARM

V8 on ARM requires that armv7 is set. We don't have a good way to detect the
CPU model right now so we pick a default and hope that it works okay for the
majority of people.

Non-scientific sampling - the ARM hardware I have lying around the house -
suggests that ARMv5 and ARMv6 are still most common so armv7=0 it is.

This obviously needs to be revisited sometime in the future.
net: fix bogus errno reporting

_listen2() emits the error on the next tick. The errno value may have changed
by then.
net: fix net.Server.listen({fd:x}) error reporting

* don't assert when fd isn't an open file descriptor

* don't die with a ReferenceError when fd isn't a file descriptor
  you can listen() on

Fixes #3699.
Revert "events: don't delete the listeners array in removeListener()"

This reverts commit 928ea564d16da47e615ddac627e0b4d4a40d8196.

Keeping the original Array instance in-place essentially causes a memory leak
on EventEmitters that use an infinite number of event names (an incrementing
counter, for example), which isn't an unreasonable thing to want to do.

Fixes #3702.
build: fix add-on loading on freebsd

Link with -Wl,--export-dynamic, makes symbols from the node binary visible to
binary add-ons.

Fixes "undefined symbol: _ZN2v811HandleScopeC1Ev" errors when loading add-ons
on FreeBSD and likely other BSDs.

Fixes #3623.
npm: upgrade to 1.1.41
build: Move npm shebang logic into an npm script

This allows us to run npm's scripts/relocate.sh script whenever
necessary, if for example node has been 'make install'ed into one
folder, and then you wish to move it into another one.
Merge remote-tracking branch 'ry/v0.8'

Conflicts:
	deps/npm