From 37376debe54ccd2889174ebb8ffc3949e0bda298 Mon Sep 17 00:00:00 2001 From: Timothy J Fontaine Date: Thu, 13 Feb 2014 15:52:01 -0800 Subject: [PATCH] website: move website to joyent/node-website The website will no longer be living in the source repository instead it can be found at http://github.com/joyent/node-website --- Makefile | 35 +- doc/about/index.html | 147 --- doc/blog.html | 241 ---- doc/blog/README.md | 28 - ...-way-to-build-scalable-network-programs.md | 16 - .../Uncategorized/bnoordhuis-departure.md | 17 - .../Uncategorized/development-environment.md | 25 - .../evolving-the-node-js-brand.md | 34 - doc/blog/Uncategorized/growing-up.md | 12 - doc/blog/Uncategorized/jobs-nodejs-org.md | 14 - .../Uncategorized/ldapjs-a-reprise-of-ldap.md | 84 -- doc/blog/Uncategorized/libuv-status-report.md | 45 - .../node-meetup-this-thursday.md | 11 - .../node-office-hours-cut-short.md | 12 - doc/blog/Uncategorized/office-hours.md | 12 - ...o-windows-with-microsoft%e2%80%99s-help.md | 12 - doc/blog/Uncategorized/profiling-node-js.md | 60 - .../Uncategorized/some-new-node-projects.md | 13 - .../the-videos-from-node-meetup.md | 10 - .../tj-fontaine-new-node-lead.md | 54 - doc/blog/Uncategorized/trademark.md | 17 - doc/blog/Uncategorized/version-0-6.md | 23 - doc/blog/favicon.ico | Bin 1150 -> 0 bytes doc/blog/feature/streams2.md | 851 ------------- ...server-continuous-deployment-with-fleet.md | 89 -- .../service-logging-in-json-with-bunyan.md | 337 ------ doc/blog/nodejs-road-ahead.md | 52 - doc/blog/npm/2013-outage-postmortem.md | 82 -- ...ng-node-js-dependencies-with-shrinkwrap.md | 167 --- .../npm-1-0-global-vs-local-installation.md | 64 - doc/blog/npm/npm-1-0-link.md | 114 -- doc/blog/npm/npm-1-0-released.md | 36 - doc/blog/npm/npm-1-0-the-new-ls.md | 144 --- doc/blog/npm/peer-dependencies.md | 134 --- doc/blog/release/0.6.21.md | 43 - doc/blog/release/node-v0-4-10.md | 25 - doc/blog/release/node-v0-4-11.md | 39 - doc/blog/release/node-v0-4-12.md | 29 - doc/blog/release/node-v0-4-3.md | 33 - doc/blog/release/node-v0-4-4.md | 27 - doc/blog/release/node-v0-4-5.md | 29 - doc/blog/release/node-v0-4-6.md | 27 - doc/blog/release/node-v0-4-7.md | 23 - doc/blog/release/node-v0-4-8.md | 55 - doc/blog/release/node-v0-4-9.md | 30 - doc/blog/release/node-v0-5-0-unstable.md | 39 - doc/blog/release/node-v0-5-1.md | 30 - doc/blog/release/node-v0-5-10.md | 41 - doc/blog/release/node-v0-5-2.md | 27 - doc/blog/release/node-v0-5-3.md | 53 - doc/blog/release/node-v0-5-4.md | 36 - doc/blog/release/node-v0-5-5.md | 40 - doc/blog/release/node-v0-5-6.md | 49 - doc/blog/release/node-v0-5-7-unstable.md | 35 - doc/blog/release/node-v0-5-8.md | 26 - doc/blog/release/node-v0-5-9.md | 27 - doc/blog/release/node-v0-6-0.md | 80 -- doc/blog/release/node-v0-6-1.md | 33 - doc/blog/release/node-v0-6-10.md | 30 - doc/blog/release/node-v0-6-2.md | 27 - doc/blog/release/node-v0-6-3.md | 30 - doc/blog/release/node-v0-6-4.md | 31 - doc/blog/release/node-v0-6-5.md | 21 - doc/blog/release/node-v0-6-6.md | 32 - doc/blog/release/node-v0-6-7.md | 41 - doc/blog/release/node-v0-6-8.md | 31 - doc/blog/release/node-v0-6-9.md | 30 - doc/blog/release/node-v0-7-0-unstable.md | 29 - doc/blog/release/node-v0-7-1.md | 30 - doc/blog/release/node-v0-7-2-unstable.md | 32 - doc/blog/release/node-v0-7-3.md | 39 - doc/blog/release/node-v0.8.0.md | 384 ------ .../release/node-version-0-6-19-stable.md | 61 - .../release/node-version-0-7-9-unstable.md | 73 -- doc/blog/release/v0.10.0.md | 487 -------- doc/blog/release/v0.10.1.md | 82 -- doc/blog/release/v0.10.10.md | 63 - doc/blog/release/v0.10.11.md | 70 -- doc/blog/release/v0.10.12.md | 67 -- doc/blog/release/v0.10.13.md | 76 -- doc/blog/release/v0.10.14.md | 72 -- doc/blog/release/v0.10.15.md | 58 - doc/blog/release/v0.10.16.md | 74 -- doc/blog/release/v0.10.17.md | 92 -- doc/blog/release/v0.10.18.md | 62 - doc/blog/release/v0.10.19.md | 70 -- doc/blog/release/v0.10.2.md | 87 -- doc/blog/release/v0.10.20.md | 59 - doc/blog/release/v0.10.21.md | 71 -- doc/blog/release/v0.10.22.md | 74 -- doc/blog/release/v0.10.23.md | 86 -- doc/blog/release/v0.10.24.md | 68 -- doc/blog/release/v0.10.25.md | 72 -- doc/blog/release/v0.10.3.md | 77 -- doc/blog/release/v0.10.4.md | 85 -- doc/blog/release/v0.10.5.md | 73 -- doc/blog/release/v0.10.6.md | 65 - doc/blog/release/v0.10.7.md | 65 - doc/blog/release/v0.10.8.md | 75 -- doc/blog/release/v0.10.9.md | 67 -- doc/blog/release/v0.11.0.md | 86 -- doc/blog/release/v0.11.1.md | 75 -- doc/blog/release/v0.11.10.md | 106 -- doc/blog/release/v0.11.11.md | 106 -- doc/blog/release/v0.11.2.md | 87 -- doc/blog/release/v0.11.3.md | 101 -- doc/blog/release/v0.11.4.md | 88 -- doc/blog/release/v0.11.5.md | 88 -- doc/blog/release/v0.11.6.md | 110 -- doc/blog/release/v0.11.7.md | 92 -- doc/blog/release/v0.11.8.md | 96 -- doc/blog/release/v0.11.9.md | 92 -- doc/blog/release/v0.6.20.md | 51 - doc/blog/release/v0.8.1.md | 77 -- doc/blog/release/v0.8.10.md | 93 -- doc/blog/release/v0.8.11.md | 63 - doc/blog/release/v0.8.12.md | 73 -- doc/blog/release/v0.8.13.md | 75 -- doc/blog/release/v0.8.14.md | 80 -- doc/blog/release/v0.8.15.md | 71 -- doc/blog/release/v0.8.16.md | 65 - doc/blog/release/v0.8.17.md | 80 -- doc/blog/release/v0.8.18.md | 67 -- doc/blog/release/v0.8.19.md | 72 -- doc/blog/release/v0.8.2.md | 73 -- doc/blog/release/v0.8.20.md | 62 - doc/blog/release/v0.8.21.md | 86 -- doc/blog/release/v0.8.22.md | 62 - doc/blog/release/v0.8.23.md | 69 -- doc/blog/release/v0.8.24.md | 63 - doc/blog/release/v0.8.25.md | 59 - doc/blog/release/v0.8.26.md | 71 -- doc/blog/release/v0.8.3.md | 71 -- doc/blog/release/v0.8.4.md | 59 - doc/blog/release/v0.8.5.md | 77 -- doc/blog/release/v0.8.6.md | 85 -- doc/blog/release/v0.8.7.md | 75 -- doc/blog/release/v0.8.8.md | 77 -- doc/blog/release/v0.8.9.md | 97 -- doc/blog/release/v0.9.0.md | 61 - doc/blog/release/v0.9.1.md | 116 -- doc/blog/release/v0.9.10.md | 84 -- doc/blog/release/v0.9.11.md | 88 -- doc/blog/release/v0.9.12.md | 107 -- doc/blog/release/v0.9.2.md | 95 -- doc/blog/release/v0.9.3.md | 87 -- doc/blog/release/v0.9.4.md | 97 -- doc/blog/release/v0.9.5.md | 82 -- doc/blog/release/v0.9.6.md | 87 -- doc/blog/release/v0.9.7.md | 81 -- doc/blog/release/v0.9.8.md | 76 -- doc/blog/release/version-0-6-11-stable.md | 64 - doc/blog/release/version-0-6-12-stable.md | 66 -- doc/blog/release/version-0-6-13-stable.md | 50 - doc/blog/release/version-0-6-14-stable.md | 55 - doc/blog/release/version-0-6-15-stable.md | 53 - doc/blog/release/version-0-6-16-stable.md | 59 - doc/blog/release/version-0-6-17-stable.md | 47 - doc/blog/release/version-0-6-18-stable.md | 59 - doc/blog/release/version-0-7-10-unstable.md | 86 -- doc/blog/release/version-0-7-11-unstable.md | 80 -- doc/blog/release/version-0-7-12.md | 56 - doc/blog/release/version-0-7-4-unstable.md | 50 - doc/blog/release/version-0-7-5-unstable.md | 62 - doc/blog/release/version-0-7-6-unstable.md | 72 -- doc/blog/release/version-0-7-7-unstable.md | 71 -- doc/blog/release/version-0-7-8-unstable.md | 71 -- doc/blog/v0.9.9.md | 78 -- doc/blog/video/bert-belder-libuv-lxjs-2012.md | 13 - ...antrill-instrumenting-the-real-time-web.md | 42 - doc/blog/video/welcome-to-the-node-blog.md | 13 - .../http-server-pipeline-flood-dos.md | 37 - ...-vulnerability-please-upgrade-to-0-6-17.md | 45 - doc/cla.html | 193 --- doc/community/index.html | 263 ----- doc/download/index.html | 190 --- doc/favicon.ico | Bin 1150 -> 0 bytes doc/full-white-stripe.jpg | Bin 4383 -> 0 bytes doc/images/anchor.png | Bin 509 -> 0 bytes doc/images/close-downloads.png | Bin 1232 -> 0 bytes doc/images/community-icons.png | Bin 6901 -> 0 bytes doc/images/download-logo.png | Bin 7614 -> 0 bytes doc/images/ebay-logo.png | Bin 1206 -> 0 bytes doc/images/footer-logo-alt.png | Bin 2037 -> 0 bytes doc/images/footer-logo.png | Bin 2626 -> 0 bytes doc/images/forkme.png | Bin 5432 -> 0 bytes doc/images/home-icons.png | Bin 2107 -> 0 bytes doc/images/icons-interior.png | Bin 5177 -> 0 bytes doc/images/icons.png | Bin 2107 -> 0 bytes doc/images/joyent-logo_orange_nodeorg-01.png | Bin 2358 -> 0 bytes doc/images/linkedin-logo.png | Bin 1458 -> 0 bytes doc/images/logo-light.png | Bin 1448 -> 0 bytes doc/images/logo.png | Bin 5081 -> 0 bytes doc/images/logos/monitor.png | Bin 130547 -> 0 bytes doc/images/logos/node-favicon.png | Bin 212 -> 0 bytes doc/images/logos/nodejs-1024x768.png | Bin 493710 -> 0 bytes doc/images/logos/nodejs-1280x1024.png | Bin 817701 -> 0 bytes doc/images/logos/nodejs-1440x900.png | Bin 840815 -> 0 bytes doc/images/logos/nodejs-1920x1200.png | Bin 1626767 -> 0 bytes doc/images/logos/nodejs-2560x1440.png | Bin 2168213 -> 0 bytes doc/images/logos/nodejs-black.eps | Bin 587222 -> 0 bytes doc/images/logos/nodejs-black.png | Bin 2630 -> 0 bytes doc/images/logos/nodejs-dark.eps | Bin 674234 -> 0 bytes doc/images/logos/nodejs-dark.png | Bin 3501 -> 0 bytes doc/images/logos/nodejs-green.eps | Bin 669754 -> 0 bytes doc/images/logos/nodejs-green.png | Bin 3452 -> 0 bytes doc/images/logos/nodejs-light.eps | Bin 588530 -> 0 bytes doc/images/logos/nodejs.png | Bin 3026 -> 0 bytes doc/images/microsoft-logo.png | Bin 1670 -> 0 bytes doc/images/not-invented-here.png | Bin 203717 -> 0 bytes doc/images/platform-icon-generic.png | Bin 5526 -> 0 bytes doc/images/platform-icon-osx.png | Bin 4076 -> 0 bytes doc/images/platform-icon-win.png | Bin 6076 -> 0 bytes doc/images/platform-icons.png | Bin 3593 -> 0 bytes doc/images/ryan-speaker.jpg | Bin 11971 -> 0 bytes doc/images/sponsored.png | Bin 5285 -> 0 bytes doc/images/twitter-bird.png | Bin 351 -> 0 bytes doc/images/yahoo-logo.png | Bin 1679 -> 0 bytes doc/index.html | 199 ---- doc/logos/index.html | 93 -- doc/mac_osx_nodejs_installer_logo.png | Bin 23317 -> 0 bytes doc/node.1 | 448 ------- doc/pipe.css | 668 ----------- doc/robots.txt | 6 - doc/rss.xml | 45 - doc/thin-white-stripe.jpg | Bin 3316 -> 0 bytes doc/trademark-policy.pdf | Bin 111996 -> 0 bytes doc/v0.4_announcement.html | 98 -- tools/blog/README.md | 5 - tools/blog/generate.js | 270 ----- tools/blog/node_modules/ejs/.gitmodules | 0 tools/blog/node_modules/ejs/.npmignore | 4 - tools/blog/node_modules/ejs/History.md | 98 -- tools/blog/node_modules/ejs/Makefile | 23 - tools/blog/node_modules/ejs/Readme.md | 151 --- tools/blog/node_modules/ejs/benchmark.js | 14 - tools/blog/node_modules/ejs/ejs.js | 567 --------- tools/blog/node_modules/ejs/ejs.min.js | 2 - .../node_modules/ejs/examples/client.html | 24 - tools/blog/node_modules/ejs/examples/list.ejs | 7 - tools/blog/node_modules/ejs/examples/list.js | 14 - tools/blog/node_modules/ejs/index.js | 2 - tools/blog/node_modules/ejs/lib/ejs.js | 298 ----- tools/blog/node_modules/ejs/lib/filters.js | 198 ---- tools/blog/node_modules/ejs/lib/utils.js | 23 - tools/blog/node_modules/ejs/package.json | 23 - .../blog/node_modules/ejs/support/compile.js | 174 --- tools/blog/node_modules/ejs/test/ejs.test.js | 329 ------ .../node_modules/ejs/test/fixtures/user.ejs | 1 - tools/blog/node_modules/glob/.npmignore | 2 - tools/blog/node_modules/glob/.travis.yml | 4 - tools/blog/node_modules/glob/LICENCE | 25 - tools/blog/node_modules/glob/LICENSE | 27 - tools/blog/node_modules/glob/README.md | 233 ---- tools/blog/node_modules/glob/examples/g.js | 9 - .../node_modules/glob/examples/usr-local.js | 9 - tools/blog/node_modules/glob/glob.js | 601 ---------- .../glob/node_modules/graceful-fs/.npmignore | 1 - .../glob/node_modules/graceful-fs/LICENSE | 23 - .../glob/node_modules/graceful-fs/README.md | 5 - .../node_modules/graceful-fs/graceful-fs.js | 275 ----- .../node_modules/graceful-fs/package.json | 22 - .../node_modules/graceful-fs/test/open.js | 41 - .../glob/node_modules/inherits/README.md | 51 - .../glob/node_modules/inherits/inherits.js | 29 - .../glob/node_modules/inherits/package.json | 25 - .../glob/node_modules/minimatch/.travis.yml | 4 - .../glob/node_modules/minimatch/LICENSE | 23 - .../glob/node_modules/minimatch/README.md | 218 ---- .../glob/node_modules/minimatch/minimatch.js | 1052 ----------------- .../node_modules/lru-cache/.npmignore | 1 - .../minimatch/node_modules/lru-cache/AUTHORS | 5 - .../minimatch/node_modules/lru-cache/LICENSE | 23 - .../node_modules/lru-cache/README.md | 26 - .../node_modules/lru-cache/lib/lru-cache.js | 156 --- .../node_modules/lru-cache/package.json | 45 - .../node_modules/lru-cache/test/basic.js | 171 --- .../minimatch/node_modules/sigmund/LICENSE | 27 - .../minimatch/node_modules/sigmund/README.md | 53 - .../minimatch/node_modules/sigmund/bench.js | 283 ----- .../node_modules/sigmund/package.json | 38 - .../minimatch/node_modules/sigmund/sigmund.js | 39 - .../node_modules/sigmund/test/basic.js | 24 - .../glob/node_modules/minimatch/package.json | 36 - .../glob/node_modules/minimatch/test/basic.js | 273 ----- .../minimatch/test/brace-expand.js | 33 - .../node_modules/minimatch/test/caching.js | 14 - .../node_modules/minimatch/test/defaults.js | 274 ----- tools/blog/node_modules/glob/package.json | 35 - tools/blog/node_modules/glob/test/00-setup.js | 61 - .../node_modules/glob/test/bash-comparison.js | 119 -- tools/blog/node_modules/glob/test/cwd-test.js | 55 - tools/blog/node_modules/glob/test/mark.js | 63 - .../node_modules/glob/test/pause-resume.js | 98 -- .../node_modules/glob/test/root-nomount.js | 39 - tools/blog/node_modules/glob/test/root.js | 43 - .../blog/node_modules/glob/test/zz-cleanup.js | 11 - tools/blog/node_modules/marked/.npmignore | 2 - tools/blog/node_modules/marked/LICENSE | 19 - tools/blog/node_modules/marked/Makefile | 9 - tools/blog/node_modules/marked/README.md | 125 -- tools/blog/node_modules/marked/bin/marked | 127 -- tools/blog/node_modules/marked/index.js | 1 - tools/blog/node_modules/marked/lib/marked.js | 791 ------------- tools/blog/node_modules/marked/man/marked.1 | 49 - tools/blog/node_modules/marked/package.json | 40 - tools/blog/node_modules/mkdirp/.npmignore | 2 - tools/blog/node_modules/mkdirp/.travis.yml | 4 - tools/blog/node_modules/mkdirp/LICENSE | 21 - .../blog/node_modules/mkdirp/README.markdown | 61 - .../blog/node_modules/mkdirp/examples/pow.js | 6 - tools/blog/node_modules/mkdirp/index.js | 94 -- tools/blog/node_modules/mkdirp/package.json | 32 - tools/blog/node_modules/mkdirp/test/chmod.js | 38 - .../blog/node_modules/mkdirp/test/clobber.js | 37 - tools/blog/node_modules/mkdirp/test/mkdirp.js | 28 - tools/blog/node_modules/mkdirp/test/perm.js | 32 - .../node_modules/mkdirp/test/perm_sync.js | 39 - tools/blog/node_modules/mkdirp/test/race.js | 41 - tools/blog/node_modules/mkdirp/test/rel.js | 32 - tools/blog/node_modules/mkdirp/test/return.js | 25 - .../node_modules/mkdirp/test/return_sync.js | 24 - tools/blog/node_modules/mkdirp/test/root.js | 18 - tools/blog/node_modules/mkdirp/test/sync.js | 32 - tools/blog/node_modules/mkdirp/test/umask.js | 28 - .../node_modules/mkdirp/test/umask_sync.js | 32 - tools/blog/node_modules/semver/LICENSE | 23 - tools/blog/node_modules/semver/README.md | 119 -- tools/blog/node_modules/semver/bin/semver | 71 -- tools/blog/node_modules/semver/package.json | 26 - tools/blog/node_modules/semver/semver.js | 305 ----- tools/blog/node_modules/semver/test.js | 405 ------- tools/blog/templates/index.ejs | 1 - 333 files changed, 4 insertions(+), 24345 deletions(-) delete mode 100644 doc/about/index.html delete mode 100644 doc/blog.html delete mode 100644 doc/blog/README.md delete mode 100644 doc/blog/Uncategorized/an-easy-way-to-build-scalable-network-programs.md delete mode 100644 doc/blog/Uncategorized/bnoordhuis-departure.md delete mode 100644 doc/blog/Uncategorized/development-environment.md delete mode 100644 doc/blog/Uncategorized/evolving-the-node-js-brand.md delete mode 100644 doc/blog/Uncategorized/growing-up.md delete mode 100644 doc/blog/Uncategorized/jobs-nodejs-org.md delete mode 100644 doc/blog/Uncategorized/ldapjs-a-reprise-of-ldap.md delete mode 100644 doc/blog/Uncategorized/libuv-status-report.md delete mode 100644 doc/blog/Uncategorized/node-meetup-this-thursday.md delete mode 100644 doc/blog/Uncategorized/node-office-hours-cut-short.md delete mode 100644 doc/blog/Uncategorized/office-hours.md delete mode 100644 doc/blog/Uncategorized/porting-node-to-windows-with-microsoft%e2%80%99s-help.md delete mode 100644 doc/blog/Uncategorized/profiling-node-js.md delete mode 100644 doc/blog/Uncategorized/some-new-node-projects.md delete mode 100644 doc/blog/Uncategorized/the-videos-from-node-meetup.md delete mode 100644 doc/blog/Uncategorized/tj-fontaine-new-node-lead.md delete mode 100644 doc/blog/Uncategorized/trademark.md delete mode 100644 doc/blog/Uncategorized/version-0-6.md delete mode 100644 doc/blog/favicon.ico delete mode 100644 doc/blog/feature/streams2.md delete mode 100644 doc/blog/module/multi-server-continuous-deployment-with-fleet.md delete mode 100644 doc/blog/module/service-logging-in-json-with-bunyan.md delete mode 100644 doc/blog/nodejs-road-ahead.md delete mode 100644 doc/blog/npm/2013-outage-postmortem.md delete mode 100644 doc/blog/npm/managing-node-js-dependencies-with-shrinkwrap.md delete mode 100644 doc/blog/npm/npm-1-0-global-vs-local-installation.md delete mode 100644 doc/blog/npm/npm-1-0-link.md delete mode 100644 doc/blog/npm/npm-1-0-released.md delete mode 100644 doc/blog/npm/npm-1-0-the-new-ls.md delete mode 100644 doc/blog/npm/peer-dependencies.md delete mode 100644 doc/blog/release/0.6.21.md delete mode 100644 doc/blog/release/node-v0-4-10.md delete mode 100644 doc/blog/release/node-v0-4-11.md delete mode 100644 doc/blog/release/node-v0-4-12.md delete mode 100644 doc/blog/release/node-v0-4-3.md delete mode 100644 doc/blog/release/node-v0-4-4.md delete mode 100644 doc/blog/release/node-v0-4-5.md delete mode 100644 doc/blog/release/node-v0-4-6.md delete mode 100644 doc/blog/release/node-v0-4-7.md delete mode 100644 doc/blog/release/node-v0-4-8.md delete mode 100644 doc/blog/release/node-v0-4-9.md delete mode 100644 doc/blog/release/node-v0-5-0-unstable.md delete mode 100644 doc/blog/release/node-v0-5-1.md delete mode 100644 doc/blog/release/node-v0-5-10.md delete mode 100644 doc/blog/release/node-v0-5-2.md delete mode 100644 doc/blog/release/node-v0-5-3.md delete mode 100644 doc/blog/release/node-v0-5-4.md delete mode 100644 doc/blog/release/node-v0-5-5.md delete mode 100644 doc/blog/release/node-v0-5-6.md delete mode 100644 doc/blog/release/node-v0-5-7-unstable.md delete mode 100644 doc/blog/release/node-v0-5-8.md delete mode 100644 doc/blog/release/node-v0-5-9.md delete mode 100644 doc/blog/release/node-v0-6-0.md delete mode 100644 doc/blog/release/node-v0-6-1.md delete mode 100644 doc/blog/release/node-v0-6-10.md delete mode 100644 doc/blog/release/node-v0-6-2.md delete mode 100644 doc/blog/release/node-v0-6-3.md delete mode 100644 doc/blog/release/node-v0-6-4.md delete mode 100644 doc/blog/release/node-v0-6-5.md delete mode 100644 doc/blog/release/node-v0-6-6.md delete mode 100644 doc/blog/release/node-v0-6-7.md delete mode 100644 doc/blog/release/node-v0-6-8.md delete mode 100644 doc/blog/release/node-v0-6-9.md delete mode 100644 doc/blog/release/node-v0-7-0-unstable.md delete mode 100644 doc/blog/release/node-v0-7-1.md delete mode 100644 doc/blog/release/node-v0-7-2-unstable.md delete mode 100644 doc/blog/release/node-v0-7-3.md delete mode 100644 doc/blog/release/node-v0.8.0.md delete mode 100644 doc/blog/release/node-version-0-6-19-stable.md delete mode 100644 doc/blog/release/node-version-0-7-9-unstable.md delete mode 100644 doc/blog/release/v0.10.0.md delete mode 100644 doc/blog/release/v0.10.1.md delete mode 100644 doc/blog/release/v0.10.10.md delete mode 100644 doc/blog/release/v0.10.11.md delete mode 100644 doc/blog/release/v0.10.12.md delete mode 100644 doc/blog/release/v0.10.13.md delete mode 100644 doc/blog/release/v0.10.14.md delete mode 100644 doc/blog/release/v0.10.15.md delete mode 100644 doc/blog/release/v0.10.16.md delete mode 100644 doc/blog/release/v0.10.17.md delete mode 100644 doc/blog/release/v0.10.18.md delete mode 100644 doc/blog/release/v0.10.19.md delete mode 100644 doc/blog/release/v0.10.2.md delete mode 100644 doc/blog/release/v0.10.20.md delete mode 100644 doc/blog/release/v0.10.21.md delete mode 100644 doc/blog/release/v0.10.22.md delete mode 100644 doc/blog/release/v0.10.23.md delete mode 100644 doc/blog/release/v0.10.24.md delete mode 100644 doc/blog/release/v0.10.25.md delete mode 100644 doc/blog/release/v0.10.3.md delete mode 100644 doc/blog/release/v0.10.4.md delete mode 100644 doc/blog/release/v0.10.5.md delete mode 100644 doc/blog/release/v0.10.6.md delete mode 100644 doc/blog/release/v0.10.7.md delete mode 100644 doc/blog/release/v0.10.8.md delete mode 100644 doc/blog/release/v0.10.9.md delete mode 100644 doc/blog/release/v0.11.0.md delete mode 100644 doc/blog/release/v0.11.1.md delete mode 100644 doc/blog/release/v0.11.10.md delete mode 100644 doc/blog/release/v0.11.11.md delete mode 100644 doc/blog/release/v0.11.2.md delete mode 100644 doc/blog/release/v0.11.3.md delete mode 100644 doc/blog/release/v0.11.4.md delete mode 100644 doc/blog/release/v0.11.5.md delete mode 100644 doc/blog/release/v0.11.6.md delete mode 100644 doc/blog/release/v0.11.7.md delete mode 100644 doc/blog/release/v0.11.8.md delete mode 100644 doc/blog/release/v0.11.9.md delete mode 100644 doc/blog/release/v0.6.20.md delete mode 100644 doc/blog/release/v0.8.1.md delete mode 100644 doc/blog/release/v0.8.10.md delete mode 100644 doc/blog/release/v0.8.11.md delete mode 100644 doc/blog/release/v0.8.12.md delete mode 100644 doc/blog/release/v0.8.13.md delete mode 100644 doc/blog/release/v0.8.14.md delete mode 100644 doc/blog/release/v0.8.15.md delete mode 100644 doc/blog/release/v0.8.16.md delete mode 100644 doc/blog/release/v0.8.17.md delete mode 100644 doc/blog/release/v0.8.18.md delete mode 100644 doc/blog/release/v0.8.19.md delete mode 100644 doc/blog/release/v0.8.2.md delete mode 100644 doc/blog/release/v0.8.20.md delete mode 100644 doc/blog/release/v0.8.21.md delete mode 100644 doc/blog/release/v0.8.22.md delete mode 100644 doc/blog/release/v0.8.23.md delete mode 100644 doc/blog/release/v0.8.24.md delete mode 100644 doc/blog/release/v0.8.25.md delete mode 100644 doc/blog/release/v0.8.26.md delete mode 100644 doc/blog/release/v0.8.3.md delete mode 100644 doc/blog/release/v0.8.4.md delete mode 100644 doc/blog/release/v0.8.5.md delete mode 100644 doc/blog/release/v0.8.6.md delete mode 100644 doc/blog/release/v0.8.7.md delete mode 100644 doc/blog/release/v0.8.8.md delete mode 100644 doc/blog/release/v0.8.9.md delete mode 100644 doc/blog/release/v0.9.0.md delete mode 100644 doc/blog/release/v0.9.1.md delete mode 100644 doc/blog/release/v0.9.10.md delete mode 100644 doc/blog/release/v0.9.11.md delete mode 100644 doc/blog/release/v0.9.12.md delete mode 100644 doc/blog/release/v0.9.2.md delete mode 100644 doc/blog/release/v0.9.3.md delete mode 100644 doc/blog/release/v0.9.4.md delete mode 100644 doc/blog/release/v0.9.5.md delete mode 100644 doc/blog/release/v0.9.6.md delete mode 100644 doc/blog/release/v0.9.7.md delete mode 100644 doc/blog/release/v0.9.8.md delete mode 100644 doc/blog/release/version-0-6-11-stable.md delete mode 100644 doc/blog/release/version-0-6-12-stable.md delete mode 100644 doc/blog/release/version-0-6-13-stable.md delete mode 100644 doc/blog/release/version-0-6-14-stable.md delete mode 100644 doc/blog/release/version-0-6-15-stable.md delete mode 100644 doc/blog/release/version-0-6-16-stable.md delete mode 100644 doc/blog/release/version-0-6-17-stable.md delete mode 100644 doc/blog/release/version-0-6-18-stable.md delete mode 100644 doc/blog/release/version-0-7-10-unstable.md delete mode 100644 doc/blog/release/version-0-7-11-unstable.md delete mode 100644 doc/blog/release/version-0-7-12.md delete mode 100644 doc/blog/release/version-0-7-4-unstable.md delete mode 100644 doc/blog/release/version-0-7-5-unstable.md delete mode 100644 doc/blog/release/version-0-7-6-unstable.md delete mode 100644 doc/blog/release/version-0-7-7-unstable.md delete mode 100644 doc/blog/release/version-0-7-8-unstable.md delete mode 100644 doc/blog/v0.9.9.md delete mode 100644 doc/blog/video/bert-belder-libuv-lxjs-2012.md delete mode 100644 doc/blog/video/bryan-cantrill-instrumenting-the-real-time-web.md delete mode 100644 doc/blog/video/welcome-to-the-node-blog.md delete mode 100644 doc/blog/vulnerability/http-server-pipeline-flood-dos.md delete mode 100644 doc/blog/vulnerability/http-server-security-vulnerability-please-upgrade-to-0-6-17.md delete mode 100644 doc/cla.html delete mode 100644 doc/community/index.html delete mode 100644 doc/download/index.html delete mode 100644 doc/favicon.ico delete mode 100644 doc/full-white-stripe.jpg delete mode 100644 doc/images/anchor.png delete mode 100644 doc/images/close-downloads.png delete mode 100644 doc/images/community-icons.png delete mode 100644 doc/images/download-logo.png delete mode 100644 doc/images/ebay-logo.png delete mode 100644 doc/images/footer-logo-alt.png delete mode 100644 doc/images/footer-logo.png delete mode 100644 doc/images/forkme.png delete mode 100644 doc/images/home-icons.png delete mode 100644 doc/images/icons-interior.png delete mode 100644 doc/images/icons.png delete mode 100644 doc/images/joyent-logo_orange_nodeorg-01.png delete mode 100644 doc/images/linkedin-logo.png delete mode 100644 doc/images/logo-light.png delete mode 100644 doc/images/logo.png delete mode 100644 doc/images/logos/monitor.png delete mode 100644 doc/images/logos/node-favicon.png delete mode 100644 doc/images/logos/nodejs-1024x768.png delete mode 100644 doc/images/logos/nodejs-1280x1024.png delete mode 100644 doc/images/logos/nodejs-1440x900.png delete mode 100644 doc/images/logos/nodejs-1920x1200.png delete mode 100644 doc/images/logos/nodejs-2560x1440.png delete mode 100644 doc/images/logos/nodejs-black.eps delete mode 100644 doc/images/logos/nodejs-black.png delete mode 100644 doc/images/logos/nodejs-dark.eps delete mode 100644 doc/images/logos/nodejs-dark.png delete mode 100644 doc/images/logos/nodejs-green.eps delete mode 100644 doc/images/logos/nodejs-green.png delete mode 100644 doc/images/logos/nodejs-light.eps delete mode 100644 doc/images/logos/nodejs.png delete mode 100644 doc/images/microsoft-logo.png delete mode 100644 doc/images/not-invented-here.png delete mode 100644 doc/images/platform-icon-generic.png delete mode 100644 doc/images/platform-icon-osx.png delete mode 100644 doc/images/platform-icon-win.png delete mode 100644 doc/images/platform-icons.png delete mode 100644 doc/images/ryan-speaker.jpg delete mode 100644 doc/images/sponsored.png delete mode 100644 doc/images/twitter-bird.png delete mode 100644 doc/images/yahoo-logo.png delete mode 100644 doc/index.html delete mode 100644 doc/logos/index.html delete mode 100644 doc/mac_osx_nodejs_installer_logo.png delete mode 100644 doc/node.1 delete mode 100644 doc/pipe.css delete mode 100644 doc/robots.txt delete mode 100644 doc/rss.xml delete mode 100644 doc/thin-white-stripe.jpg delete mode 100644 doc/trademark-policy.pdf delete mode 100644 doc/v0.4_announcement.html delete mode 100644 tools/blog/README.md delete mode 100644 tools/blog/generate.js delete mode 100644 tools/blog/node_modules/ejs/.gitmodules delete mode 100644 tools/blog/node_modules/ejs/.npmignore delete mode 100644 tools/blog/node_modules/ejs/History.md delete mode 100644 tools/blog/node_modules/ejs/Makefile delete mode 100644 tools/blog/node_modules/ejs/Readme.md delete mode 100644 tools/blog/node_modules/ejs/benchmark.js delete mode 100644 tools/blog/node_modules/ejs/ejs.js delete mode 100644 tools/blog/node_modules/ejs/ejs.min.js delete mode 100644 tools/blog/node_modules/ejs/examples/client.html delete mode 100644 tools/blog/node_modules/ejs/examples/list.ejs delete mode 100644 tools/blog/node_modules/ejs/examples/list.js delete mode 100644 tools/blog/node_modules/ejs/index.js delete mode 100644 tools/blog/node_modules/ejs/lib/ejs.js delete mode 100644 tools/blog/node_modules/ejs/lib/filters.js delete mode 100644 tools/blog/node_modules/ejs/lib/utils.js delete mode 100644 tools/blog/node_modules/ejs/package.json delete mode 100644 tools/blog/node_modules/ejs/support/compile.js delete mode 100644 tools/blog/node_modules/ejs/test/ejs.test.js delete mode 100644 tools/blog/node_modules/ejs/test/fixtures/user.ejs delete mode 100644 tools/blog/node_modules/glob/.npmignore delete mode 100644 tools/blog/node_modules/glob/.travis.yml delete mode 100644 tools/blog/node_modules/glob/LICENCE delete mode 100644 tools/blog/node_modules/glob/LICENSE delete mode 100644 tools/blog/node_modules/glob/README.md delete mode 100644 tools/blog/node_modules/glob/examples/g.js delete mode 100644 tools/blog/node_modules/glob/examples/usr-local.js delete mode 100644 tools/blog/node_modules/glob/glob.js delete mode 100644 tools/blog/node_modules/glob/node_modules/graceful-fs/.npmignore delete mode 100644 tools/blog/node_modules/glob/node_modules/graceful-fs/LICENSE delete mode 100644 tools/blog/node_modules/glob/node_modules/graceful-fs/README.md delete mode 100644 tools/blog/node_modules/glob/node_modules/graceful-fs/graceful-fs.js delete mode 100644 tools/blog/node_modules/glob/node_modules/graceful-fs/package.json delete mode 100644 tools/blog/node_modules/glob/node_modules/graceful-fs/test/open.js delete mode 100644 tools/blog/node_modules/glob/node_modules/inherits/README.md delete mode 100644 tools/blog/node_modules/glob/node_modules/inherits/inherits.js delete mode 100644 tools/blog/node_modules/glob/node_modules/inherits/package.json delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/.travis.yml delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/LICENSE delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/README.md delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/minimatch.js delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/lru-cache/.npmignore delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/lru-cache/AUTHORS delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/lru-cache/LICENSE delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/lru-cache/README.md delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/lru-cache/lib/lru-cache.js delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/lru-cache/package.json delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/lru-cache/test/basic.js delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/sigmund/LICENSE delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/sigmund/README.md delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/sigmund/bench.js delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/sigmund/package.json delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/sigmund/sigmund.js delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/node_modules/sigmund/test/basic.js delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/package.json delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/test/basic.js delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/test/brace-expand.js delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/test/caching.js delete mode 100644 tools/blog/node_modules/glob/node_modules/minimatch/test/defaults.js delete mode 100644 tools/blog/node_modules/glob/package.json delete mode 100644 tools/blog/node_modules/glob/test/00-setup.js delete mode 100644 tools/blog/node_modules/glob/test/bash-comparison.js delete mode 100644 tools/blog/node_modules/glob/test/cwd-test.js delete mode 100644 tools/blog/node_modules/glob/test/mark.js delete mode 100644 tools/blog/node_modules/glob/test/pause-resume.js delete mode 100644 tools/blog/node_modules/glob/test/root-nomount.js delete mode 100644 tools/blog/node_modules/glob/test/root.js delete mode 100644 tools/blog/node_modules/glob/test/zz-cleanup.js delete mode 100644 tools/blog/node_modules/marked/.npmignore delete mode 100644 tools/blog/node_modules/marked/LICENSE delete mode 100644 tools/blog/node_modules/marked/Makefile delete mode 100644 tools/blog/node_modules/marked/README.md delete mode 100755 tools/blog/node_modules/marked/bin/marked delete mode 100644 tools/blog/node_modules/marked/index.js delete mode 100644 tools/blog/node_modules/marked/lib/marked.js delete mode 100644 tools/blog/node_modules/marked/man/marked.1 delete mode 100644 tools/blog/node_modules/marked/package.json delete mode 100644 tools/blog/node_modules/mkdirp/.npmignore delete mode 100644 tools/blog/node_modules/mkdirp/.travis.yml delete mode 100644 tools/blog/node_modules/mkdirp/LICENSE delete mode 100644 tools/blog/node_modules/mkdirp/README.markdown delete mode 100644 tools/blog/node_modules/mkdirp/examples/pow.js delete mode 100644 tools/blog/node_modules/mkdirp/index.js delete mode 100644 tools/blog/node_modules/mkdirp/package.json delete mode 100644 tools/blog/node_modules/mkdirp/test/chmod.js delete mode 100644 tools/blog/node_modules/mkdirp/test/clobber.js delete mode 100644 tools/blog/node_modules/mkdirp/test/mkdirp.js delete mode 100644 tools/blog/node_modules/mkdirp/test/perm.js delete mode 100644 tools/blog/node_modules/mkdirp/test/perm_sync.js delete mode 100644 tools/blog/node_modules/mkdirp/test/race.js delete mode 100644 tools/blog/node_modules/mkdirp/test/rel.js delete mode 100644 tools/blog/node_modules/mkdirp/test/return.js delete mode 100644 tools/blog/node_modules/mkdirp/test/return_sync.js delete mode 100644 tools/blog/node_modules/mkdirp/test/root.js delete mode 100644 tools/blog/node_modules/mkdirp/test/sync.js delete mode 100644 tools/blog/node_modules/mkdirp/test/umask.js delete mode 100644 tools/blog/node_modules/mkdirp/test/umask_sync.js delete mode 100644 tools/blog/node_modules/semver/LICENSE delete mode 100644 tools/blog/node_modules/semver/README.md delete mode 100755 tools/blog/node_modules/semver/bin/semver delete mode 100644 tools/blog/node_modules/semver/package.json delete mode 100644 tools/blog/node_modules/semver/semver.js delete mode 100644 tools/blog/node_modules/semver/test.js delete mode 100644 tools/blog/templates/index.ejs diff --git a/Makefile b/Makefile index 81770174203b56..374ca2a07e2f2e 100644 --- a/Makefile +++ b/Makefile @@ -129,36 +129,15 @@ apidoc_sources = $(wildcard doc/api/*.markdown) apidocs = $(addprefix out/,$(apidoc_sources:.markdown=.html)) \ $(addprefix out/,$(apidoc_sources:.markdown=.json)) -apidoc_dirs = out/doc out/doc/api/ out/doc/api/assets out/doc/about out/doc/community out/doc/download out/doc/logos out/doc/images +apidoc_dirs = out/doc out/doc/api/ out/doc/api/assets apiassets = $(subst api_assets,api/assets,$(addprefix out/,$(wildcard doc/api_assets/*))) -doc_images = $(addprefix out/,$(wildcard doc/images/* doc/*.jpg doc/*.png)) - website_files = \ - out/doc/index.html \ - out/doc/v0.4_announcement.html \ - out/doc/cla.html \ out/doc/sh_main.js \ - out/doc/sh_javascript.min.js \ - out/doc/sh_vim-dark.css \ - out/doc/sh.css \ - out/doc/favicon.ico \ - out/doc/pipe.css \ - out/doc/about/index.html \ - out/doc/community/index.html \ - out/doc/download/index.html \ - out/doc/logos/index.html \ - out/doc/changelog.html \ - $(doc_images) - -doc: $(apidoc_dirs) $(website_files) $(apiassets) $(apidocs) tools/doc/ blog node - -blogclean: - rm -rf out/blog - -blog: doc/blog out/Release/node tools/blog - out/Release/node tools/blog/generate.js doc/blog/ out/blog/ doc/blog.html doc/rss.xml + out/doc/sh_javascript.min.js + +doc: $(apidoc_dirs) $(website_files) $(apiassets) $(apidocs) tools/doc/ node $(apidoc_dirs): mkdir -p $@ @@ -169,9 +148,6 @@ out/doc/api/assets/%: doc/api_assets/% out/doc/api/assets/ out/doc/changelog.html: ChangeLog doc/changelog-head.html doc/changelog-foot.html tools/build-changelog.sh node bash tools/build-changelog.sh -out/doc/%.html: doc/%.html node - cat $< | sed -e 's|__VERSION__|'$(VERSION)'|g' > $@ - out/doc/%: doc/% cp -r $< $@ @@ -188,9 +164,6 @@ email.md: ChangeLog tools/email-footer.md blog.html: email.md cat $< | ./node tools/doc/node_modules/.bin/marked > $@ -blog-upload: blog - rsync -r out/blog/ node@nodejs.org:~/web/nodejs.org/blog/ - website-upload: doc rsync -r out/doc/ node@nodejs.org:~/web/nodejs.org/ ssh node@nodejs.org '\ diff --git a/doc/about/index.html b/doc/about/index.html deleted file mode 100644 index f1dea6b243f0b4..00000000000000 --- a/doc/about/index.html +++ /dev/null @@ -1,147 +0,0 @@ - - - - - - - - - - node.js - - -
- - - -
-
- - -
-

Node's goal is to provide an easy way to build scalable - network programs

- - -

In the "hello world" web server example - below, many client connections can be handled concurrently. - Node tells the operating system (through epoll, - kqueue, /dev/poll, or - select) that it should be notified when a new - connection is made, and then it goes to sleep. If someone new - connects, then it executes the callback. Each connection is - only a small heap allocation.

- -
-var http = require('http');
-http.createServer(function (req, res) {
-  res.writeHead(200, {'Content-Type': 'text/plain'});
-  res.end('Hello World\n');
-}).listen(1337, "127.0.0.1");
-console.log('Server running at http://127.0.0.1:1337/');
-

This is in contrast to today's more common concurrency - model where OS threads are employed. Thread-based networking - is relatively inefficient and very difficult to use. See: this and this. - Node will show much better memory efficiency under high-loads - than systems which allocate 2mb thread stacks for each - connection. Furthermore, users of Node are free from worries - of dead-locking the process—there are no locks. Almost no - function in Node directly performs I/O, so the process never - blocks. Because nothing blocks, less-than-expert programmers - are able to develop fast systems.

- -

Node is similar in design to and influenced by systems like - Ruby's Event - Machine or Python's Twisted. Node takes the - event model a bit further—it presents the event loop as a - language construct instead of as a library. In other systems - there is always a blocking call to start the event-loop. - Typically one defines behavior through callbacks at the - beginning of a script and at the end starts a server through a - blocking call like EventMachine::run(). In Node - there is no such start-the-event-loop call. Node simply enters - the event loop after executing the input script. Node exits - the event loop when there are no more callbacks to perform. - This behavior is like browser javascript—the event loop is - hidden from the user.

- -

HTTP is a first class protocol in Node. Node's HTTP library - has grown out of the author's experiences developing and - working with web servers. For example, streaming data through - most web frameworks is impossible. Node attempts to correct - these problems in its HTTP parser - and API. Coupled with Node's purely evented infrastructure, it - makes a good foundation for web libraries or frameworks.

- -

But what about multiple-processor concurrency? Aren't - threads necessary to scale programs to multi-core computers? - You can start new processes via child_process.fork() - these other processes will be scheduled in parallel. For load - balancing incoming connections across multiple processes use - the - cluster module.

- -

See also:

- -
-
- - - - - - - - - - - diff --git a/doc/blog.html b/doc/blog.html deleted file mode 100644 index f6d9cf805b179f..00000000000000 --- a/doc/blog.html +++ /dev/null @@ -1,241 +0,0 @@ - - - - - - - - - - <%= title || "Node.js Blog" %> - - - - -
- -
- -
-
- - - -
- -
-

<%- title %>

- <% if (typeof post !== 'undefined') { - // just one post on this page - %> -

<%- - post.date.toUTCString().replace(/ GMT$/, '') + ' UTC' + - (post.author ? ' - ' + post.author : '') + - (post.category ? ' - ' + - post.category + '' : '') - %>

- - <%- post.content %> - -

Please post feedback and comments on - the Node.JS - user mailing list.
- Please post bugs and feature requests on - the Node.JS - github repository.

- - <% - if (post.next || post.prev) { - if (post.prev) { - %>

← <%= - post.prev.title - %>

- <% - } - if (post.next) { - %>

<%= - post.next.title - %> →

- <% - } - } - } else { // not single post page - if (paginated && total > 1 ) { - if (page > 0) { - // add 1 to all of the displayed numbers, because - // humans are not zero-indexed like they ought to be. - %> -

- ← Page <%- page %> -

- <% - } - if (page < total - 1) { %> -

- Page <%- page + 2 %> → -

- <% - } - } - - posts.forEach(function(post) { - %> -
-

- -

<%- - post.date.toUTCString().replace(/ GMT$/, '') + ' UTC' + - (post.author ? ' - ' + post.author : '') + - (post.category ? ' - ' + - post.category + '' : '') - %>

- - <%- post.content %> -
- <% - }); - - if (paginated && total > 1 ) { - if (page > 0) { - // add 1 to all of the displayed numbers, because - // humans are not zero-indexed like they ought to be. - %> -

- ← Page <%- page %> -

- <% - } - if (page < total - 1) { %> -

- Page <%- page + 2 %> → -

- <% - } - } // pagination - } // not a single post - %> -
-
- - - - - - - - - diff --git a/doc/blog/README.md b/doc/blog/README.md deleted file mode 100644 index 24fba493440559..00000000000000 --- a/doc/blog/README.md +++ /dev/null @@ -1,28 +0,0 @@ -title: README.md -status: private - -# How This Blog Works - -Each `.md` file in this folder structure is a blog post. It has a -few headers and a markdown body. (HTML is allowed in the body as well.) - -The relevant headers are: - -1. title -2. author -3. status: Only posts with a status of "publish" are published. -4. category: The "release" category is treated a bit specially. -5. version: Only relevant for "release" category. -6. date -7. slug: The bit that goes on the url. Must be unique, will be - generated from the title and date if missing. - -Posts in the "release" category are only shown in the main lists when -they are the most recent release for that version family. The stable -branch supersedes its unstable counterpart, so the presence of a `0.8.2` -release notice will cause `0.7.10` to be hidden, but `0.6.19` would -be unaffected. - -The folder structure in the blog source does not matter. Organize files -here however makes sense. The metadata will be sorted out in the build -later. diff --git a/doc/blog/Uncategorized/an-easy-way-to-build-scalable-network-programs.md b/doc/blog/Uncategorized/an-easy-way-to-build-scalable-network-programs.md deleted file mode 100644 index dc0980b4b830d3..00000000000000 --- a/doc/blog/Uncategorized/an-easy-way-to-build-scalable-network-programs.md +++ /dev/null @@ -1,16 +0,0 @@ -title: An Easy Way to Build Scalable Network Programs -author: ryandahl -date: Tue Oct 04 2011 15:39:56 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: an-easy-way-to-build-scalable-network-programs - -Suppose you're writing a web server which does video encoding on each file upload. Video encoding is very much compute bound. Some recent blog posts suggest that Node.js would fail miserably at this. - -Using Node does not mean that you have to write a video encoding algorithm in JavaScript (a language without even 64 bit integers) and crunch away in the main server event loop. The suggested approach is to separate the I/O bound task of receiving uploads and serving downloads from the compute bound task of video encoding. In the case of video encoding this is accomplished by forking out to ffmpeg. Node provides advanced means of asynchronously controlling subprocesses for work like this. - -It has also been suggested that Node does not take advantage of multicore machines. Node has long supported load-balancing connections over multiple processes in just a few lines of code - in this way a Node server will use the available cores. In coming releases we'll make it even easier: just pass --balance on the command line and Node will manage the cluster of processes. - -Node has a clear purpose: provide an easy way to build scalable network programs. It is not a tool for every problem. Do not write a ray tracer with Node. Do not write a web browser with Node. Do however reach for Node if tasked with writing a DNS server, DHCP server, or even a video encoding server. - -By relying on the kernel to schedule and preempt computationally expensive tasks and to load balance incoming connections, Node appears less magical than server platforms that employ userland scheduling. So far, our focus on simplicity and transparency has paid off: the number of success stories from developers and corporations who are adopting the technology continues to grow. diff --git a/doc/blog/Uncategorized/bnoordhuis-departure.md b/doc/blog/Uncategorized/bnoordhuis-departure.md deleted file mode 100644 index e49baf7a675771..00000000000000 --- a/doc/blog/Uncategorized/bnoordhuis-departure.md +++ /dev/null @@ -1,17 +0,0 @@ -title: Ben Noordhuis's Departure -date: Tue Dec 3 14:13:57 PST 2013 -slug: bnoordhuis-departure - -As of this past weekend, Ben Noordhuis has decided to step away from -Node.js and libuv, and is no longer acting as a core committer. - -Ben has done a tremendous amount of great work in the past. We're sad -to lose the benefit of his continued hard work and expertise, and -extremely grateful for what he has added to Node.js and libuv over the -years. - -Many of you already have expressed your opinion regarding recent -drama, and I'd like to ask that you please respect our wishes to let -this issue rest, so that we can all focus on the road forward. - -Thanks. diff --git a/doc/blog/Uncategorized/development-environment.md b/doc/blog/Uncategorized/development-environment.md deleted file mode 100644 index e6015e04cd1822..00000000000000 --- a/doc/blog/Uncategorized/development-environment.md +++ /dev/null @@ -1,25 +0,0 @@ -title: Development Environment -author: ryandahl -date: Mon Apr 04 2011 20:16:27 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: development-environment - -If you're compiling a software package because you need a particular version (e.g. the latest), then it requires a little bit more maintenance than using a package manager like dpkg. Software that you compile yourself should *not* go into /usr, it should go into your home directory. This is part of being a software developer. - -One way of doing this is to install everything into $HOME/local/$PACKAGE. Here is how I install node on my machine:
./configure --prefix=$HOME/local/node-v0.4.5 && make install
- -To have my paths automatically set I put this inside my $HOME/.zshrc:
PATH="$HOME/local/bin:/opt/local/bin:/usr/bin:/sbin:/bin"
-LD_LIBRARY_PATH="/opt/local/lib:/usr/local/lib:/usr/lib"
-for i in $HOME/local/*; do
-  [ -d $i/bin ] && PATH="${i}/bin:${PATH}"
-  [ -d $i/sbin ] && PATH="${i}/sbin:${PATH}"
-  [ -d $i/include ] && CPATH="${i}/include:${CPATH}"
-  [ -d $i/lib ] && LD_LIBRARY_PATH="${i}/lib:${LD_LIBRARY_PATH}"
-  [ -d $i/lib/pkgconfig ] && PKG_CONFIG_PATH="${i}/lib/pkgconfig:${PKG_CONFIG_PATH}"
-  [ -d $i/share/man ] && MANPATH="${i}/share/man:${MANPATH}"
-done
- -Node is under sufficiently rapid development that everyone should be compiling it themselves. A corollary of this is that npm (which should be installed alongside Node) does not require root to install packages. - -CPAN and RubyGems have blurred the lines between development tools and system package managers. With npm we wish to draw a clear line: it is not a system package manager. It is not for installing firefox or ffmpeg or OpenSSL; it is for rapidly downloading, building, and setting up Node packages. npm is a development tool. When a program written in Node becomes sufficiently mature it should be distributed as a tarball, .deb, .rpm, or other package system. It should not be distributed to end users with npm. diff --git a/doc/blog/Uncategorized/evolving-the-node-js-brand.md b/doc/blog/Uncategorized/evolving-the-node-js-brand.md deleted file mode 100644 index e631a227027737..00000000000000 --- a/doc/blog/Uncategorized/evolving-the-node-js-brand.md +++ /dev/null @@ -1,34 +0,0 @@ -title: Evolving the Node.js Brand -author: Emily Tanaka-Delgado -date: Mon Jul 11 2011 12:02:45 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: evolving-the-node-js-brand - -To echo Node’s evolutionary nature, we have refreshed the identity to help mark an exciting time for developers, businesses and users who benefit from the pioneering technology. - -Building a brand - -We began exploring elements to express Node.js and jettisoned preconceived notions about what we thought Node should look like, and focused on what Node is: kinetic,connectedscalablemodularmechanical and organic. Working with designer Chris Glass, our explorations emphasized Node's dynamism and formed a visual language based on structure, relationships and interconnectedness. - - - -Inspired by process visualization, we discovered pattern, form, and by relief, the hex shape. The angled infrastructure encourages energy to move through the letterforms. - - - -This language can expand into the organic network topography of Node or distill down into a single hex connection point. - -This scaling represents the dynamic nature of Node in a simple, distinct manner. - - - -We look forward to exploring this visual language as the technology charges into a very promising future. - - - -We hope you'll have fun using it. - -To download the new logo, visit nodejs.org/logos. - - diff --git a/doc/blog/Uncategorized/growing-up.md b/doc/blog/Uncategorized/growing-up.md deleted file mode 100644 index 10e1d58d006616..00000000000000 --- a/doc/blog/Uncategorized/growing-up.md +++ /dev/null @@ -1,12 +0,0 @@ -title: Growing up -author: ryandahl -date: Thu Dec 15 2011 11:59:15 GMT-0800 (PST) -status: publish -category: Uncategorized -slug: growing-up - -This week Microsoft announced support for Node in Windows Azure, their cloud computing platform. For the Node core team and the community, this is an important milestone. We've worked hard over the past six months reworking Node's machinery to support IO completion ports and Visual Studio to provide a good native port to Windows. The overarching goal of the port was to expand our user base to the largest number of developers. Happily, this has paid off in the form of being a first class citizen on Azure. Many users who would have never used Node as a pure unix tool are now up and running on the Windows platform. More users translates into a deeper and better ecosystem of modules, which makes for a better experience for everyone. - -We also redesigned our website - something that we've put off for a long time because we felt that Node was too nascent to dedicate marketing to it. But now that we have binary distributions for Macintosh and Windows, have bundled npm, and are serving millions of users at various companies, we felt ready to indulge in a new website and share of a few of our success stories on the home page. - -Work is on-going. We continue to improve the software, making performance improvements and adding isolate support, but Node is growing up. diff --git a/doc/blog/Uncategorized/jobs-nodejs-org.md b/doc/blog/Uncategorized/jobs-nodejs-org.md deleted file mode 100644 index fe20efe911ab48..00000000000000 --- a/doc/blog/Uncategorized/jobs-nodejs-org.md +++ /dev/null @@ -1,14 +0,0 @@ -title: jobs.nodejs.org -author: ryandahl -date: Thu Mar 24 2011 23:05:22 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: jobs-nodejs-org - -We are starting an official jobs board for Node. There are two goals for this - -1. Promote the small emerging economy around this platform by having a central space for employers to find Node programmers. - -2. Make some money. We work hard to build this platform and taking a small tax for job posts seems a like reasonable "tip jar". - -jobs.nodejs.org diff --git a/doc/blog/Uncategorized/ldapjs-a-reprise-of-ldap.md b/doc/blog/Uncategorized/ldapjs-a-reprise-of-ldap.md deleted file mode 100644 index 7174e2b7cc6592..00000000000000 --- a/doc/blog/Uncategorized/ldapjs-a-reprise-of-ldap.md +++ /dev/null @@ -1,84 +0,0 @@ -title: ldapjs: A reprise of LDAP -author: mcavage -date: Thu Sep 08 2011 14:25:43 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: ldapjs-a-reprise-of-ldap - -This post has been about 10 years in the making. My first job out of college was at IBM working on the Tivoli Directory Server, and at the time I had a preconceived notion that working on anything related to Internet RFCs was about as hot as you could get. I spent a lot of time back then getting "down and dirty" with everything about LDAP: the protocol, performance, storage engines, indexing and querying, caching, customer use cases and patterns, general network server patterns, etc. Basically, I soaked up as much as I possibly could while I was there. On top of that, I listened to all the "gray beards" tell me about the history of LDAP, which was a bizarre marriage of telecommunications conglomerates and graduate students. The point of this blog post is to give you a crash course in LDAP, and explain what makes ldapjs different. Allow me to be the gray beard for a bit... -

What is LDAP and where did it come from?

- -Directory services were largely pioneered by the telecommunications companies (e.g., AT&T) to allow fast information retrieval of all the crap you'd expect would be in a telephone book and directory. That is, given a name, or an address, or an area code, or a number, or a foo support looking up customer records, billing information, routing information, etc. The efforts of several telcos came to exist in the X.500 standard(s). An X.500 directory is one of the most complicated beasts you can possibly imagine, but on a high note, there's -probably not a thing you can imagine in a directory service that wasn't thought of in there. It is literally the kitchen sink. Oh, and it doesn't run over IP (it's actually on the OSI model). - -Several years after X.500 had been deployed (at telcos, academic institutions, etc.), it became clear that the Internet was "for real." LDAP, the "Lightweight Directory Access Protocol," was invented to act purely as an IP-accessible gateway to an X.500 directory. - -At some point in the early 90's, a graduate student at the University of Michigan (with some help) cooked up the "grandfather" implementation of the LDAP protocol, which wasn't actually a "gateway," but rather a stand-alone implementation of LDAP. Said implementation, like many things at the time, was a process-per-connection concurrency model, and had "backends" (aka storage engine) for the file system and the Unix DB API. At some point the Berkeley Database (BDB) was put in, and still remains the de facto storage engine for most LDAP directories. - -Ok, so some a graduate student at UM wrote an LDAP server that wasn't a gateway. So what? Well, that UM code base turns out to be the thing that pretty much every vendor did a source license for. Those graduate students went off to Netscape later in the 90's, and largely dominated the market of LDAP middleware until Active Directory came along many years later (as far as I know, Active Directory is "from scratch", since while it's "almost" LDAP, it's different in a lot of ways). That Netscape code base was further bought and sold over the years to iPlanet, Sun Microsystems, and Red Hat (I'm probably missing somebody in that chain). It now lives in the Fedora umbrella as '389 Directory Server.' Probably the most popular fork of that code base now is OpenLDAP. - -IBM did the same thing, and the Directory Server I worked on was a fork of the UM code too, but it heavily diverged from the Netscape branches. The divergence was primarily due to: (1) backing to DB2 as opposed to BDB, and (2) needing to run on IBM's big iron like OS/400 and Z series mainframes. - -Macro point is that there have actually been very few "fresh" implementations of LDAP, and it gets a pretty bad reputation because at the end of the day you've got 20 years of "bolt-ons" to grad student code. Oh, and it was born out of ginormous telcos, so of course the protocol is overly complex. - -That said, while there certainly is some wacky stuff in the LDAP protocol itself, it really suffered from poor and buggy implementations more than the fact that LDAP itself was fundamentally flawed. As engine yard pointed out a few years back, you can think of LDAP as the original NoSQL store. -

LDAP: The Good Parts

- -So what's awesome about LDAP? Since it's a directory system it maintains a hierarchy of your data, which as an information management pattern aligns -with _a lot_ of use case (the quintessential example is white pages for people in your company, but subscriptions to SaaS applications, "host groups" -for tracking machines/instances, physical goods tracking, etc., all have use cases that fit that organization scheme). For example, presumably at your job -you have a "reporting chain." Let's say a given record in LDAP (I'll use myself as a guinea pig here) looks like: -
    firstName: Mark
-    lastName: Cavage
-    city: Seattle
-    uid: markc
-    state: Washington
-    mail: mcavagegmailcom
-    phone: (206) 555-1212
-    title: Software Engineer
-    department: 123456
-    objectclass: joyentPerson
-The record for me would live under the tree of engineers I report to (and as an example some other popular engineers under said vice president) would look like: -
                   uid=david
-                    /
-               uid=bryan
-            /      |      \
-      uid=markc  uid=ryah  uid=isaacs
-Ok, so we've got a tree. It's not tremendously different from your filesystem, but how do we find people? LDAP has a rich search filter syntax that makes a lot of sense for key/value data (far more than tacking Map Reduce jobs on does, imo), and all search queries take a "start point" in the tree. Here's an example: let's say I wanted to find all "Software Engineers" in the entire company, a filter would look like: -
     (title="Software Engineer")
-And I'd just start my search from 'uid=david' in the example above. Let's say I wanted to find all software engineers who worked in Seattle: -
     (&(title="Software Engineer")(city=Seattle))
-I could keep going, but the gist is that LDAP has "full" boolean predicate logic, wildcard filters, etc. It's really rich. - -Oh, and on top of the technical merits, better or worse, it's an established standard for both administrators and applications (i.e., most "shipped" intranet software has either a local user repository or the ability to leverage an LDAP server somewhere). So there's a lot of compelling reasons to look at leveraging LDAP. -

ldapjs: Why do I care?

- -As I said earlier, I spent a lot of time at IBM observing how customers used LDAP, and the real items I took away from that experience were: - - -For all the good parts of LDAP, those are really damned big failing points, and even I eventually abandoned LDAP for the greener pastures of NoSQL somewhere -along the way. But it always nagged at me that LDAP didn't get it's due because of a lot of implementation problems (to be clear, if I could, I'd change some -aspects of the protocol itself too, but that's a lot harder). - -Well, in the last year, I went to work for Joyent, and like everyone else, we have several use problems that are classic directory service problems. If you break down the list I outlined above: - - -So that's the crux of ldapjs right there. Giving you the ability to put LDAP back into your application while nailing those 4 fundamental problems that plague most existing LDAP deployments. - -The obvious question is how it turned out, and the answer is, honestly, better than I thought it would. When I set out to do this, I actually assumed I'd be shipping a much smaller percentage of the RFC than is there. There's actually about 95% of the core RFC implemented. I wasn't sure if the marriage of this protocol to node/JavaScript would work out, but if you've used express ever, this should be _really_ familiar. And I tried to make it as natural as possible to use "pure" JavaScript objects, rather than requiring the developer to understand ASN.1 (the binary wire protocol) or the LDAP RFC in detail (this one mostly worked out; ldap_modify is still kind of a PITA). - -Within 24 hours of releasing ldapjs on Twitter, there was an implementation of an address book that works with Thunderbird/Evolution, by the end of that weekend there was some slick integration with CouchDB, and ldapjs even got used in one of the node knockout apps. Off to a pretty good start! - -

The Road Ahead

- -Hopefully you've been motivated to learn a little bit more about LDAP and try out ldapjs. The best place to start is probably the guide. After that you'll probably need to pick up a book from back in the day. ldapjs itself is still in its infancy; there's quite a bit of room to add some slick client-side logic (e.g., connection pools, automatic reconnects), easy to use schema validation, backends, etc. By the time this post is live, there will be experimental dtrace support if you're running on Mac OS X or preferably Joyent's SmartOS (shameless plug). And that nagging percentage of the protocol I didn't do will get filled in over time I suspect. If you've got an interest in any of this, send me some pull requests, but most importantly, I just want to see LDAP not just be a skeleton in the closet and get used in places where you should be using it. So get out there and write you some LDAP. diff --git a/doc/blog/Uncategorized/libuv-status-report.md b/doc/blog/Uncategorized/libuv-status-report.md deleted file mode 100644 index 37c8227fe25096..00000000000000 --- a/doc/blog/Uncategorized/libuv-status-report.md +++ /dev/null @@ -1,45 +0,0 @@ -title: libuv status report -author: ryandahl -date: Fri Sep 23 2011 12:45:50 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: libuv-status-report - -We announced back in July that with Microsoft's support Joyent would be porting Node to Windows. This effort is ongoing but I thought it would be nice to make a status report post about the new platform library libuv which has resulted from porting Node to Windows. - -libuv's purpose is to abstract platform-dependent code in Node into one place where it can be tested for correctness and performance before bindings to V8 are added. Since Node is totally non-blocking, libuv turns out to be a rather useful library itself: a BSD-licensed, minimal, high-performance, cross-platform networking library. - -We attempt to not reinvent the wheel where possible. The entire Unix backend sits heavily on Marc Lehmann's beautiful libraries libev and libeio. For DNS we integrated with Daniel Stenberg's C-Ares. For cross-platform build-system support we're relying on Chrome's GYP meta-build system. - -The current implemented features are: - -The features we are working on still are - -For complete documentation see the header file: include/uv.h. There are a number of tests in the test directory which demonstrate the API. - -libuv supports Microsoft Windows operating systems since Windows XP SP2. It can be built with either Visual Studio or MinGW. Solaris 121 and later using GCC toolchain. Linux 2.6 or better using the GCC toolchain. Macinotsh Darwin using the GCC or XCode toolchain. It is known to work on the BSDs but we do not check the build regularly. - -In addition to Node v0.5, a number of projects have begun to use libuv: - -We hope to see more people contributing and using libuv in the future! diff --git a/doc/blog/Uncategorized/node-meetup-this-thursday.md b/doc/blog/Uncategorized/node-meetup-this-thursday.md deleted file mode 100644 index 6f38e99988cbac..00000000000000 --- a/doc/blog/Uncategorized/node-meetup-this-thursday.md +++ /dev/null @@ -1,11 +0,0 @@ -title: Node Meetup this Thursday -author: ryandahl -date: Tue Aug 02 2011 21:37:02 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: node-meetup-this-thursday - -http://nodejs.org/meetup/ -http://nodemeetup.eventbrite.com/ - -Three companies will describe their distributed Node applications. Sign up soon, space is limited! diff --git a/doc/blog/Uncategorized/node-office-hours-cut-short.md b/doc/blog/Uncategorized/node-office-hours-cut-short.md deleted file mode 100644 index 743394460cc211..00000000000000 --- a/doc/blog/Uncategorized/node-office-hours-cut-short.md +++ /dev/null @@ -1,12 +0,0 @@ -title: Node Office Hours Cut Short -author: ryandahl -date: Thu Apr 28 2011 09:04:35 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: node-office-hours-cut-short - -This week office hours are only from 4pm to 6pm. Isaac will be in the Joyent office in SF - everyone else is out of town. Sign up at http://nodeworkup.eventbrite.com/ if you would like to come. - -The week after, Thursday May 5th, we will all be at NodeConf in Portland. - -Normal office hours resume Thursday May 12th. diff --git a/doc/blog/Uncategorized/office-hours.md b/doc/blog/Uncategorized/office-hours.md deleted file mode 100644 index fc2769095f4be1..00000000000000 --- a/doc/blog/Uncategorized/office-hours.md +++ /dev/null @@ -1,12 +0,0 @@ -title: Office Hours -author: ryandahl -date: Wed Mar 23 2011 21:42:47 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: office-hours - -Starting next Thursday Isaac, Tom, and I will be holding weekly office hours at Joyent HQ in San Francisco. Office hours are meant to be subdued working time - there are no talks and no alcohol. Bring your bugs or just come and hack with us. - -Our building requires that everyone attending be on a list so you must sign up at Event Brite. - -We start at 4p and end promptly at 8p. diff --git a/doc/blog/Uncategorized/porting-node-to-windows-with-microsoft%e2%80%99s-help.md b/doc/blog/Uncategorized/porting-node-to-windows-with-microsoft%e2%80%99s-help.md deleted file mode 100644 index cea3e8802728ed..00000000000000 --- a/doc/blog/Uncategorized/porting-node-to-windows-with-microsoft%e2%80%99s-help.md +++ /dev/null @@ -1,12 +0,0 @@ -title: Porting Node to Windows With Microsoft’s Help -author: ryandahl -date: Thu Jun 23 2011 15:22:58 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: porting-node-to-windows-with-microsoft%e2%80%99s-help - -I'm pleased to announce that Microsoft is partnering with Joyent in formally contributing resources towards porting Node to Windows. As you may have heard in a talk we gave earlier this year, we have started the undertaking of a native port to Windows - targeting the high-performance IOCP API. - -This requires a rather large modification of the core structure, and we're very happy to have official guidance and engineering resources from Microsoft. Rackspace is also contributing Bert Belder's time to this undertaking. - -The result will be an official binary node.exe releases on nodejs.org, which will work on Windows Azure and other Windows versions as far back as Server 2003. diff --git a/doc/blog/Uncategorized/profiling-node-js.md b/doc/blog/Uncategorized/profiling-node-js.md deleted file mode 100644 index 6f041af3b9fa82..00000000000000 --- a/doc/blog/Uncategorized/profiling-node-js.md +++ /dev/null @@ -1,60 +0,0 @@ -title: Profiling Node.js -author: Dave Pacheco -date: Wed Apr 25 2012 13:48:58 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: profiling-node-js - -It's incredibly easy to visualize where your Node program spends its time using DTrace and node-stackvis (a Node port of Brendan Gregg's FlameGraph tool): - -
    -
  1. Run your Node.js program as usual.
  2. -
  3. In another terminal, run: -
    -$ dtrace -n 'profile-97/execname == "node" && arg1/{
    -    @[jstack(150, 8000)] = count(); } tick-60s { exit(0); }' > stacks.out
    - This will sample about 100 times per second for 60 seconds and emit results to stacks.out. Note that this will sample all running programs called "node". If you want a specific process, replace execname == "node" with pid == 12345 (the process id). -
  4. -
  5. Use the "stackvis" tool to transform this directly into a flame graph. First, install it: -
    $ npm install -g stackvis
    - then use stackvis to convert the DTrace output to a flamegraph: -
    $ stackvis dtrace flamegraph-svg < stacks.out > stacks.svg
    -
  6. -
  7. Open stacks.svg in your favorite browser.
  8. -
- -You'll be looking at something like this: - - - -This is a visualization of all of the profiled call stacks. This example is from the "hello world" HTTP server on the Node.js home page under load. Start at the bottom, where you have "main", which is present in most Node stacks because Node spends most on-CPU time in the main thread. Above each row, you have the functions called by the frame beneath it. As you move up, you'll see actual JavaScript function names. The boxes in each row are not in chronological order, but their width indicates how much time was spent there. When you hover over each box, you can see exactly what percentage of time is spent in each function. This lets you see at a glance where your program spends its time. - -That's the summary. There are a few prerequisites: - - - -There are a few other notes: - - - -For more on the underlying pieces, see my previous post on Node.js profiling and Brendan's post on Flame Graphs. - -
- -Dave Pacheco blogs at dtrace.org diff --git a/doc/blog/Uncategorized/some-new-node-projects.md b/doc/blog/Uncategorized/some-new-node-projects.md deleted file mode 100644 index 2590f547a0c071..00000000000000 --- a/doc/blog/Uncategorized/some-new-node-projects.md +++ /dev/null @@ -1,13 +0,0 @@ -title: Some New Node Projects -author: ryandahl -date: Mon Aug 29 2011 08:30:41 GMT-0700 (PDT) -status: publish -category: Uncategorized -slug: some-new-node-projects - -