Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Initial checkin of memory

  • Loading branch information...
commit 6935018ab1a9cd5e68859b55f4e426ad976c2dff 1 parent 510df41
Kevin Burke authored December 20, 2011

Showing 381 changed files with 38,616 additions and 0 deletions. Show diff stats Hide diff stats

  1. 1  .gitignore
  2. 129  app.js
  3. 1  node_modules/.bin/express
  4. 1  node_modules/.bin/jade
  5. 7  node_modules/express/.npmignore
  6. 764  node_modules/express/History.md
  7. 22  node_modules/express/LICENSE
  8. 29  node_modules/express/Makefile
  9. 145  node_modules/express/Readme.md
  10. 443  node_modules/express/bin/express
  11. 2  node_modules/express/index.js
  12. 79  node_modules/express/lib/express.js
  13. 583  node_modules/express/lib/http.js
  14. 52  node_modules/express/lib/https.js
  15. 321  node_modules/express/lib/request.js
  16. 460  node_modules/express/lib/response.js
  17. 53  node_modules/express/lib/router/collection.js
  18. 398  node_modules/express/lib/router/index.js
  19. 70  node_modules/express/lib/router/methods.js
  20. 88  node_modules/express/lib/router/route.js
  21. 152  node_modules/express/lib/utils.js
  22. 457  node_modules/express/lib/view.js
  23. 40  node_modules/express/lib/view/partial.js
  24. 210  node_modules/express/lib/view/view.js
  25. 11  node_modules/express/node_modules/connect/.npmignore
  26. 24  node_modules/express/node_modules/connect/LICENSE
  27. 2  node_modules/express/node_modules/connect/index.js
  28. 81  node_modules/express/node_modules/connect/lib/cache.js
  29. 106  node_modules/express/node_modules/connect/lib/connect.js
  30. 217  node_modules/express/node_modules/connect/lib/http.js
  31. 47  node_modules/express/node_modules/connect/lib/https.js
  32. 46  node_modules/express/node_modules/connect/lib/index.js
  33. 93  node_modules/express/node_modules/connect/lib/middleware/basicAuth.js
  34. 94  node_modules/express/node_modules/connect/lib/middleware/bodyParser.js
  35. 163  node_modules/express/node_modules/connect/lib/middleware/compiler.js
  36. 46  node_modules/express/node_modules/connect/lib/middleware/cookieParser.js
  37. 105  node_modules/express/node_modules/connect/lib/middleware/csrf.js
  38. 222  node_modules/express/node_modules/connect/lib/middleware/directory.js
  39. 100  node_modules/express/node_modules/connect/lib/middleware/errorHandler.js
  40. 76  node_modules/express/node_modules/connect/lib/middleware/favicon.js
  41. 82  node_modules/express/node_modules/connect/lib/middleware/limit.js
  42. 299  node_modules/express/node_modules/connect/lib/middleware/logger.js
  43. 38  node_modules/express/node_modules/connect/lib/middleware/methodOverride.js
  44. 100  node_modules/express/node_modules/connect/lib/middleware/profiler.js
  45. 40  node_modules/express/node_modules/connect/lib/middleware/query.js
  46. 34  node_modules/express/node_modules/connect/lib/middleware/responseTime.js
  47. 379  node_modules/express/node_modules/connect/lib/middleware/router.js
  48. 346  node_modules/express/node_modules/connect/lib/middleware/session.js
  49. 126  node_modules/express/node_modules/connect/lib/middleware/session/cookie.js
  50. 131  node_modules/express/node_modules/connect/lib/middleware/session/memory.js
  51. 137  node_modules/express/node_modules/connect/lib/middleware/session/session.js
  52. 87  node_modules/express/node_modules/connect/lib/middleware/session/store.js
  53. 225  node_modules/express/node_modules/connect/lib/middleware/static.js
  54. 175  node_modules/express/node_modules/connect/lib/middleware/staticCache.js
  55. 44  node_modules/express/node_modules/connect/lib/middleware/vhost.js
  56. 79  node_modules/express/node_modules/connect/lib/patch.js
  57. 75  node_modules/express/node_modules/connect/lib/public/directory.html
  58. 13  node_modules/express/node_modules/connect/lib/public/error.html
  59. BIN  node_modules/express/node_modules/connect/lib/public/favicon.ico
  60. BIN  node_modules/express/node_modules/connect/lib/public/icons/page.png
  61. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_add.png
  62. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_attach.png
  63. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_code.png
  64. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_copy.png
  65. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_delete.png
  66. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_edit.png
  67. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_error.png
  68. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_excel.png
  69. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_find.png
  70. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_gear.png
  71. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_go.png
  72. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_green.png
  73. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_key.png
  74. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_lightning.png
  75. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_link.png
  76. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_paintbrush.png
  77. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_paste.png
  78. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_red.png
  79. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_refresh.png
  80. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_save.png
  81. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white.png
  82. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_acrobat.png
  83. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_actionscript.png
  84. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_add.png
  85. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_c.png
  86. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_camera.png
  87. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_cd.png
  88. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_code.png
  89. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_code_red.png
  90. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_coldfusion.png
  91. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_compressed.png
  92. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_copy.png
  93. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_cplusplus.png
  94. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_csharp.png
  95. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_cup.png
  96. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_database.png
  97. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_delete.png
  98. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_dvd.png
  99. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_edit.png
  100. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_error.png
  101. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_excel.png
  102. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_find.png
  103. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_flash.png
  104. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_freehand.png
  105. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_gear.png
  106. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_get.png
  107. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_go.png
  108. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_h.png
  109. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_horizontal.png
  110. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_key.png
  111. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_lightning.png
  112. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_link.png
  113. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_magnify.png
  114. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_medal.png
  115. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_office.png
  116. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_paint.png
  117. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_paintbrush.png
  118. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_paste.png
  119. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_php.png
  120. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_picture.png
  121. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_powerpoint.png
  122. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_put.png
  123. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_ruby.png
  124. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_stack.png
  125. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_star.png
  126. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_swoosh.png
  127. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_text.png
  128. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_text_width.png
  129. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_tux.png
  130. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_vector.png
  131. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_visualstudio.png
  132. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_width.png
  133. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_word.png
  134. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_world.png
  135. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_wrench.png
  136. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_white_zip.png
  137. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_word.png
  138. BIN  node_modules/express/node_modules/connect/lib/public/icons/page_world.png
  139. 141  node_modules/express/node_modules/connect/lib/public/style.css
  140. 451  node_modules/express/node_modules/connect/lib/utils.js
  141. 24  node_modules/express/node_modules/connect/package.json
  142. 11  node_modules/express/node_modules/connect/test.js
  143. 19  node_modules/express/node_modules/mime/LICENSE
  144. 50  node_modules/express/node_modules/mime/README.md
  145. 92  node_modules/express/node_modules/mime/mime.js
  146. 22  node_modules/express/node_modules/mime/package.json
  147. 79  node_modules/express/node_modules/mime/test.js
  148. 1,479  node_modules/express/node_modules/mime/types/mime.types
  149. 43  node_modules/express/node_modules/mime/types/node.types
  150. 2  node_modules/express/node_modules/mkdirp/.gitignore
  151. 2  node_modules/express/node_modules/mkdirp/.gitignore.orig
  152. 5  node_modules/express/node_modules/mkdirp/.gitignore.rej
  153. 21  node_modules/express/node_modules/mkdirp/LICENSE
  154. 21  node_modules/express/node_modules/mkdirp/README.markdown
  155. 6  node_modules/express/node_modules/mkdirp/examples/pow.js
  156. 6  node_modules/express/node_modules/mkdirp/examples/pow.js.orig
  157. 19  node_modules/express/node_modules/mkdirp/examples/pow.js.rej
  158. 20  node_modules/express/node_modules/mkdirp/index.js
  159. 23  node_modules/express/node_modules/mkdirp/package.json
  160. 28  node_modules/express/node_modules/mkdirp/test/mkdirp.js
  161. 41  node_modules/express/node_modules/mkdirp/test/race.js
  162. 32  node_modules/express/node_modules/mkdirp/test/rel.js
  163. 1  node_modules/express/node_modules/qs/.gitignore
  164. 6  node_modules/express/node_modules/qs/.gitmodules
  165. 63  node_modules/express/node_modules/qs/History.md
  166. 5  node_modules/express/node_modules/qs/Makefile
  167. 47  node_modules/express/node_modules/qs/Readme.md
  168. 17  node_modules/express/node_modules/qs/benchmark.js
  169. 48  node_modules/express/node_modules/qs/examples.js
  170. 2  node_modules/express/node_modules/qs/index.js
  171. 262  node_modules/express/node_modules/qs/lib/querystring.js
  172. 16  node_modules/express/node_modules/qs/package.json
  173. 2  node_modules/express/node_modules/qs/test/mocha.opts
  174. 155  node_modules/express/node_modules/qs/test/parse.js
  175. 95  node_modules/express/node_modules/qs/test/stringify.js
  176. 39  node_modules/express/package.json
  177. 38  node_modules/express/testing/index.js
  178. 2,971  node_modules/express/testing/public/test.txt
  179. 1  node_modules/express/testing/views/page.html
  180. 3  node_modules/express/testing/views/page.jade
  181. 1  node_modules/express/testing/views/test.md
  182. 1  node_modules/express/testing/views/user/index.jade
  183. 1  node_modules/express/testing/views/user/list.jade
  184. 4  node_modules/jade/.gitignore
  185. 21  node_modules/jade/.gitmodules
  186. 4  node_modules/jade/.npmignore
  187. 4  node_modules/jade/.travis.yml
  188. 498  node_modules/jade/History.md
  189. 22  node_modules/jade/LICENSE
  190. 40  node_modules/jade/Makefile
  191. 1,006  node_modules/jade/Readme.md
  192. 125  node_modules/jade/bin/jade
  193. 8  node_modules/jade/examples/attributes.jade
  194. 11  node_modules/jade/examples/attributes.js
  195. 13  node_modules/jade/examples/code.jade
  196. 16  node_modules/jade/examples/code.js
  197. 5  node_modules/jade/examples/csrf.jade
  198. 42  node_modules/jade/examples/csrf.js
  199. 5  node_modules/jade/examples/dynamicscript.jade
  200. 20  node_modules/jade/examples/dynamicscript.js
  201. 3  node_modules/jade/examples/each.jade
  202. 16  node_modules/jade/examples/each.js
  203. 10  node_modules/jade/examples/extend-layout.jade
  204. 11  node_modules/jade/examples/extend.jade
  205. 18  node_modules/jade/examples/extend.js
  206. 29  node_modules/jade/examples/form.jade
  207. 18  node_modules/jade/examples/form.js
  208. 7  node_modules/jade/examples/includes.jade
  209. 11  node_modules/jade/examples/includes.js
  210. 2  node_modules/jade/examples/includes/foot.jade
  211. 6  node_modules/jade/examples/includes/head.jade
  212. 2  node_modules/jade/examples/includes/scripts.jade
  213. 5  node_modules/jade/examples/includes/style.css
  214. 11  node_modules/jade/examples/layout-debug.js
  215. 14  node_modules/jade/examples/layout.jade
  216. 11  node_modules/jade/examples/layout.js
  217. 16  node_modules/jade/examples/mixins.jade
  218. 16  node_modules/jade/examples/mixins.js
  219. 15  node_modules/jade/examples/mixins/dialog.jade
  220. 10  node_modules/jade/examples/mixins/profile.jade
  221. 9  node_modules/jade/examples/model.jade
  222. 124  node_modules/jade/examples/model.js
  223. 8  node_modules/jade/examples/nested-filters.jade
  224. 73  node_modules/jade/examples/nested-filters.js
  225. 3  node_modules/jade/examples/pet.jade
  226. 14  node_modules/jade/examples/rss.jade
  227. 17  node_modules/jade/examples/rss.js
  228. 36  node_modules/jade/examples/text.jade
  229. 11  node_modules/jade/examples/text.js
  230. 11  node_modules/jade/examples/whitespace.jade
  231. 11  node_modules/jade/examples/whitespace.js
  232. 2  node_modules/jade/index.js
  233. 3,112  node_modules/jade/jade.js
  234. 3  node_modules/jade/jade.min.js
  235. 501  node_modules/jade/lib/compiler.js
  236. 18  node_modules/jade/lib/doctypes.js
  237. 92  node_modules/jade/lib/filters.js
  238. 1  node_modules/jade/lib/index.js
  239. 28  node_modules/jade/lib/inline-tags.js
  240. 238  node_modules/jade/lib/jade.js
  241. 698  node_modules/jade/lib/lexer.js
  242. 33  node_modules/jade/lib/nodes/block-comment.js
  243. 96  node_modules/jade/lib/nodes/block.js
  244. 43  node_modules/jade/lib/nodes/case.js
  245. 35  node_modules/jade/lib/nodes/code.js
  246. 32  node_modules/jade/lib/nodes/comment.js
  247. 29  node_modules/jade/lib/nodes/doctype.js
  248. 35  node_modules/jade/lib/nodes/each.js
  249. 35  node_modules/jade/lib/nodes/filter.js
  250. 20  node_modules/jade/lib/nodes/index.js
  251. 31  node_modules/jade/lib/nodes/literal.js
  252. 34  node_modules/jade/lib/nodes/mixin.js
  253. 14  node_modules/jade/lib/nodes/node.js
  254. 80  node_modules/jade/lib/nodes/tag.js
  255. 42  node_modules/jade/lib/nodes/text.js
  256. 645  node_modules/jade/lib/parser.js
  257. 118  node_modules/jade/lib/runtime.js
  258. 18  node_modules/jade/lib/self-closing.js
  259. 49  node_modules/jade/lib/utils.js
  260. 23  node_modules/jade/package.json
  261. 123  node_modules/jade/runtime.js
  262. 1  node_modules/jade/runtime.min.js
  263. 62  node_modules/jade/support/benchmark.js
  264. 173  node_modules/jade/support/compile.js
  265. 4  node_modules/jade/support/foot.js
  266. 2  node_modules/jade/support/head.js
  267. 151  node_modules/jade/test/filters.test.js
  268. 5  node_modules/jade/test/fixtures/append-without-block/app-layout.jade
  269. 7  node_modules/jade/test/fixtures/append-without-block/layout.jade
  270. 6  node_modules/jade/test/fixtures/append-without-block/page.jade
  271. 5  node_modules/jade/test/fixtures/append/app-layout.jade
  272. 7  node_modules/jade/test/fixtures/append/layout.jade
  273. 9  node_modules/jade/test/fixtures/append/page.html
  274. 6  node_modules/jade/test/fixtures/append/page.jade
  275. 1  node_modules/jade/test/fixtures/case-blocks.html
  276. 10  node_modules/jade/test/fixtures/case-blocks.jade
  277. 1  node_modules/jade/test/fixtures/case.html
  278. 8  node_modules/jade/test/fixtures/case.jade
  279. 6  node_modules/jade/test/fixtures/conditional-comment.html
  280. 6  node_modules/jade/test/fixtures/conditional-comment.jade
  281. 3  node_modules/jade/test/fixtures/invalid.jade
  282. 3  node_modules/jade/test/fixtures/layout.jade
  283. 12  node_modules/jade/test/fixtures/mixins.html
  284. 10  node_modules/jade/test/fixtures/mixins.jade
  285. 11  node_modules/jade/test/fixtures/pet-page.jade
  286. 15  node_modules/jade/test/fixtures/pet.html
  287. 5  node_modules/jade/test/fixtures/pet.jade
  288. 5  node_modules/jade/test/fixtures/prepend-without-block/app-layout.jade
  289. 7  node_modules/jade/test/fixtures/prepend-without-block/layout.jade
  290. 9  node_modules/jade/test/fixtures/prepend-without-block/page.html
  291. 6  node_modules/jade/test/fixtures/prepend-without-block/page.jade
  292. 5  node_modules/jade/test/fixtures/prepend/app-layout.jade
  293. 7  node_modules/jade/test/fixtures/prepend/layout.jade
  294. 9  node_modules/jade/test/fixtures/prepend/page.html
  295. 6  node_modules/jade/test/fixtures/prepend/page.jade
  296. 2  node_modules/jade/test/fixtures/scripts.jade
  297. 15  node_modules/jade/test/fixtures/super-pet.html
  298. 5  node_modules/jade/test/fixtures/super-pet.jade
  299. 3  node_modules/jade/test/fixtures/test.css
  300. 8  node_modules/jade/test/fixtures/user-layout.jade
  301. 1  node_modules/jade/test/fixtures/user.jade
  302. 17  node_modules/jade/test/fixtures/users.html
  303. 11  node_modules/jade/test/fixtures/users.jade
  304. 1,033  node_modules/jade/test/jade.test.js
  305. 10  node_modules/socket.io/.gitignore
  306. 3  node_modules/socket.io/.npmignore
  307. 187  node_modules/socket.io/History.md
  308. 31  node_modules/socket.io/Makefile
  309. 343  node_modules/socket.io/Readme.md
  310. 64  node_modules/socket.io/benchmarks/decode.bench.js
  311. 90  node_modules/socket.io/benchmarks/encode.bench.js
  312. 55  node_modules/socket.io/benchmarks/runner.js
  313. 80  node_modules/socket.io/examples/chat/app.js
  314. 83  node_modules/socket.io/examples/chat/index.jade
  315. 11  node_modules/socket.io/examples/chat/package.json
  316. 96  node_modules/socket.io/examples/chat/public/stylesheets/mixins.styl
  317. 188  node_modules/socket.io/examples/chat/public/stylesheets/style.css
  318. 118  node_modules/socket.io/examples/chat/public/stylesheets/style.styl
  319. 74  node_modules/socket.io/examples/irc-output/app.js
  320. 28  node_modules/socket.io/examples/irc-output/index.jade
  321. 164  node_modules/socket.io/examples/irc-output/irc.js
  322. 10  node_modules/socket.io/examples/irc-output/package.json
  323. 69  node_modules/socket.io/examples/irc-output/public/stylesheets/style.styl
  324. 8  node_modules/socket.io/index.js
  325. 97  node_modules/socket.io/lib/logger.js
  326. 961  node_modules/socket.io/lib/manager.js
  327. 355  node_modules/socket.io/lib/namespace.js
  328. 249  node_modules/socket.io/lib/parser.js
  329. 136  node_modules/socket.io/lib/socket.io.js
  330. 362  node_modules/socket.io/lib/socket.js
  331. 395  node_modules/socket.io/lib/static.js
  332. 98  node_modules/socket.io/lib/store.js
  333. 143  node_modules/socket.io/lib/stores/memory.js
  334. 269  node_modules/socket.io/lib/stores/redis.js
  335. 534  node_modules/socket.io/lib/transport.js
  336. 106  node_modules/socket.io/lib/transports/flashsocket.js
  337. 82  node_modules/socket.io/lib/transports/htmlfile.js
  338. 135  node_modules/socket.io/lib/transports/http-polling.js
  339. 111  node_modules/socket.io/lib/transports/http.js
  340. 12  node_modules/socket.io/lib/transports/index.js
  341. 96  node_modules/socket.io/lib/transports/jsonp-polling.js
  342. 36  node_modules/socket.io/lib/transports/websocket.js
  343. 358  node_modules/socket.io/lib/transports/websocket/default.js
  344. 617  node_modules/socket.io/lib/transports/websocket/hybi-07-12.js
  345. 617  node_modules/socket.io/lib/transports/websocket/hybi-16.js
  346. 604  node_modules/socket.io/lib/transports/websocket/hybi-17.js
  347. 11  node_modules/socket.io/lib/transports/websocket/index.js
  348. 72  node_modules/socket.io/lib/transports/xhr-polling.js
  349. 50  node_modules/socket.io/lib/util.js
  350. 33  node_modules/socket.io/package.json
  351. 27  node_modules/socket.io/support/node-websocket-client/LICENSE
  352. 22  node_modules/socket.io/support/node-websocket-client/Makefile
  353. 41  node_modules/socket.io/support/node-websocket-client/README.md
  354. 12  node_modules/socket.io/support/node-websocket-client/examples/client-unix.js
  355. 10  node_modules/socket.io/support/node-websocket-client/examples/client.js
  356. 13  node_modules/socket.io/support/node-websocket-client/examples/server-unix.js
  357. 617  node_modules/socket.io/support/node-websocket-client/lib/websocket.js
  358. 22  node_modules/socket.io/support/node-websocket-client/package.json
  359. 68  node_modules/socket.io/support/node-websocket-client/test/test-basic.js
  360. 43  node_modules/socket.io/support/node-websocket-client/test/test-client-close.js
  361. 43  node_modules/socket.io/support/node-websocket-client/test/test-readonly-attrs.js
  362. 26  node_modules/socket.io/support/node-websocket-client/test/test-ready-state.js
  363. 41  node_modules/socket.io/support/node-websocket-client/test/test-server-close.js
  364. 63  node_modules/socket.io/support/node-websocket-client/test/test-unix-send-fd.js
  365. 46  node_modules/socket.io/support/node-websocket-client/test/test-unix-sockets.js
  366. 274  node_modules/socket.io/test/common.js
  367. 21  node_modules/socket.io/test/fixtures/cert.crt
  368. 27  node_modules/socket.io/test/fixtures/key.key
  369. 99  node_modules/socket.io/test/hybi-common.js
  370. 125  node_modules/socket.io/test/io.test.js
  371. 54  node_modules/socket.io/test/leaks/socket.leaktest.js
  372. 572  node_modules/socket.io/test/manager.test.js
  373. 286  node_modules/socket.io/test/namespace.test.js
  374. 356  node_modules/socket.io/test/parser.test.js
  375. 549  node_modules/socket.io/test/static.test.js
  376. 190  node_modules/socket.io/test/stores.memory.test.js
  377. 240  node_modules/socket.io/test/stores.redis.test.js
  378. 187  node_modules/socket.io/test/transports.flashsocket.test.js
  379. 458  node_modules/socket.io/test/transports.htmlfile.test.js
  380. 774  node_modules/socket.io/test/transports.jsonp-polling.test.js
1  .gitignore
... ...
@@ -0,0 +1 @@
  1
+.monitor
129  app.js
... ...
@@ -0,0 +1,129 @@
  1
+/**
  2
+ * Module dependencies.
  3
+ */
  4
+var express = require('express')
  5
+  , routes = require('./routes')
  6
+  , _ = require('./public/javascripts/underscore')._
  7
+  , Backbone = require('./public/javascripts/backbone')
  8
+  , Player = require("./public/javascripts/model/Player").Player
  9
+  , PlayerList = require("./public/javascripts/model/PlayerList").PlayerList
  10
+  , Deck = require("./public/javascripts/model/Deck").Deck;
  11
+
  12
+var app = module.exports = express.createServer();
  13
+
  14
+// Configuration
  15
+app.configure(function(){
  16
+  app.set('views', __dirname + '/views');
  17
+  app.set('view engine', 'jade');
  18
+  app.use(express.bodyParser());
  19
+  app.use(express.methodOverride());
  20
+  app.use(app.router);
  21
+  app.use(express.static(__dirname + '/public'));
  22
+});
  23
+
  24
+app.configure('development', function(){
  25
+  app.use(express.errorHandler({ dumpExceptions: true, showStack: true })); 
  26
+});
  27
+
  28
+app.configure('production', function(){
  29
+  app.use(express.errorHandler()); 
  30
+});
  31
+
  32
+// Routes
  33
+app.get('/', routes.index);
  34
+
  35
+// Game state
  36
+var games = new Backbone.Collection(),
  37
+    players = new PlayerList();
  38
+    
  39
+// Player "database". Remove when possible.
  40
+(function() {
  41
+    players.refresh([
  42
+        {id: 1, username: "Vasa", score: 0},
  43
+        {id: 2, username: "Kevin", score: 0}
  44
+    ]);
  45
+})();
  46
+
  47
+// Business Logic
  48
+var initializeGame = function(socket, playerId, gameId) {
  49
+    var game = games.get(gameId),
  50
+        player = players.get(playerId).clone(),
  51
+        participants;
  52
+    
  53
+    if (!game) {
  54
+        game = new Backbone.Model({
  55
+            id: gameId,
  56
+            players: new PlayerList(),
  57
+            deck: new Deck(generateCards())
  58
+        });
  59
+        
  60
+        games.add(game);
  61
+    }
  62
+    
  63
+    participants = game.get("players");
  64
+    if (participants.length < 2) {
  65
+        player.set({sessionId: socket.id, active: participants.length == 0});
  66
+        player.socket = socket;
  67
+        
  68
+        // Add player to the game
  69
+        participants.add(player);
  70
+        
  71
+        // Setup player removal for disconnect and add to game
  72
+        socket.removeFromGame = function() {
  73
+            participants.remove(player);
  74
+        };
  75
+        
  76
+        participants.bind("all", function(event, model) {
  77
+            if (_.include(["add", "remove"], event)) {
  78
+                socket.emit("player:" + event, {model: model});
  79
+            }
  80
+        });
  81
+
  82
+        socket.emit("initialized", {status: 200, game: game, you: player});
  83
+    } else {
  84
+        socket.emit("initialized", {status: 500, message: "Three's a crowd"});    
  85
+    }
  86
+}
  87
+
  88
+// Creates the "deck".  This can go away when we start using images for the cards.
  89
+var generateCards = function() {
  90
+    var cards = [];
  91
+    
  92
+    for(var j = 0; j < 2; j++) {
  93
+	    for(var i = 0; i < 8; i++) {
  94
+	        cards.push({id: i + 1 + (j == 1 ? 8 : 0), image: String.fromCharCode(i + 65), matched: false, flipped: false, weight: Math.floor(Math.random() * 16)});
  95
+	    }
  96
+    }
  97
+
  98
+    return cards;
  99
+};
  100
+
  101
+var passGameMessage = function(sender, evt, message) {
  102
+    var others = games.get(message.gameId).get("players").allBut(sender.id);
  103
+    
  104
+    if (others.length > 0) {
  105
+        _(others).chain().pluck("socket").invoke("emit", evt, message);
  106
+    }
  107
+};
  108
+
  109
+// Application initialization
  110
+app.listen(3000);
  111
+console.log("Express server listening on port %d in %s mode", app.address().port, app.settings.env);
  112
+
  113
+var io = require('socket.io').listen(app);
  114
+io.sockets.on('connection', function (socket) {
  115
+
  116
+	socket.on("initialize", function(data) {
  117
+		initializeGame(socket, data.playerId, data.gameId);
  118
+	});
  119
+
  120
+	socket.on("change:flipped", function(data) {
  121
+		passGameMessage(socket, "change:flipped", data);      	
  122
+	});
  123
+
  124
+	socket.on('disconnect', function(){
  125
+		if (socket.removeFromGame) {
  126
+			socket.removeFromGame();
  127
+		}
  128
+	});
  129
+});
1  node_modules/.bin/express
1  node_modules/.bin/jade
7  node_modules/express/.npmignore
... ...
@@ -0,0 +1,7 @@
  1
+.git*
  2
+docs/
  3
+examples/
  4
+support/
  5
+test/
  6
+testing.js
  7
+.DS_Store
764  node_modules/express/History.md
Source Rendered
... ...
@@ -0,0 +1,764 @@
  1
+
  2
+2.5.0 / 2011-10-24 
  3
+==================
  4
+
  5
+  * Added ./routes dir for generated app by default
  6
+  * Added npm install reminder to express(1) app gen
  7
+  * Added 0.5.x support
  8
+  * Removed `make test-cov` since it wont work with node 0.5.x
  9
+  * Fixed express(1) public dir for windows. Closes #866
  10
+
  11
+2.4.7 / 2011-10-05 
  12
+==================
  13
+
  14
+  * Added mkdirp to express(1). Closes #795
  15
+  * Added simple _json-config_ example
  16
+  * Added  shorthand for the parsed request's pathname via `req.path`
  17
+  * Changed connect dep to 1.7.x to fix npm issue...
  18
+  * Fixed `res.redirect()` __HEAD__ support. [reported by xerox]
  19
+  * Fixed `req.flash()`, only escape args
  20
+  * Fixed absolute path checking on windows. Closes #829 [reported by andrewpmckenzie]
  21
+
  22
+2.4.6 / 2011-08-22 
  23
+==================
  24
+
  25
+  * Fixed multiple param callback regression. Closes #824 [reported by TroyGoode]
  26
+
  27
+2.4.5 / 2011-08-19 
  28
+==================
  29
+
  30
+  * Added support for routes to handle errors. Closes #809
  31
+  * Added `app.routes.all()`. Closes #803
  32
+  * Added "basepath" setting to work in conjunction with reverse proxies etc.   
  33
+  * Refactored `Route` to use a single array of callbacks
  34
+  * Added support for multiple callbacks for `app.param()`. Closes #801
  35
+Closes #805
  36
+  * Changed: removed .call(self) for route callbacks
  37
+  * Dependency: `qs >= 0.3.1`
  38
+  * Fixed `res.redirect()` on windows due to `join()` usage. Closes #808
  39
+
  40
+2.4.4 / 2011-08-05 
  41
+==================
  42
+
  43
+  * Fixed `res.header()` intention of a set, even when `undefined`
  44
+  * Fixed `*`, value no longer required
  45
+  * Fixed `res.send(204)` support. Closes #771
  46
+
  47
+2.4.3 / 2011-07-14 
  48
+==================
  49
+
  50
+  * Added docs for `status` option special-case. Closes #739
  51
+  * Fixed `options.filename`, exposing the view path to template engines
  52
+
  53
+2.4.2. / 2011-07-06 
  54
+==================
  55
+
  56
+  * Revert "removed jsonp stripping" for XSS
  57
+
  58
+2.4.1 / 2011-07-06 
  59
+==================
  60
+
  61
+  * Added `res.json()` JSONP support. Closes #737
  62
+  * Added _extending-templates_ example. Closes #730
  63
+  * Added "strict routing" setting for trailing slashes
  64
+  * Added support for multiple envs in `app.configure()` calls. Closes #735
  65
+  * Changed: `res.send()` using `res.json()`
  66
+  * Changed: when cookie `path === null` don't default it
  67
+  * Changed; default cookie path to "home" setting. Closes #731
  68
+  * Removed _pids/logs_ creation from express(1)
  69
+
  70
+2.4.0 / 2011-06-28 
  71
+==================
  72
+
  73
+  * Added chainable `res.status(code)`
  74
+  * Added `res.json()`, an explicit version of `res.send(obj)`
  75
+  * Added simple web-service example
  76
+
  77
+2.3.12 / 2011-06-22 
  78
+==================
  79
+
  80
+  * \#express is now on freenode! come join!
  81
+  * Added `req.get(field, param)`
  82
+  * Added links to Japanese documentation, thanks @hideyukisaito!
  83
+  * Added; the `express(1)` generated app outputs the env
  84
+  * Added `content-negotiation` example
  85
+  * Dependency: connect >= 1.5.1 < 2.0.0
  86
+  * Fixed view layout bug. Closes #720
  87
+  * Fixed; ignore body on 304. Closes #701
  88
+
  89
+2.3.11 / 2011-06-04 
  90
+==================
  91
+
  92
+  * Added `npm test`
  93
+  * Removed generation of dummy test file from `express(1)`
  94
+  * Fixed; `express(1)` adds express as a dep
  95
+  * Fixed; prune on `prepublish`
  96
+
  97
+2.3.10 / 2011-05-27 
  98
+==================
  99
+
  100
+  * Added `req.route`, exposing the current route
  101
+  * Added _package.json_ generation support to `express(1)`
  102
+  * Fixed call to `app.param()` function for optional params. Closes #682
  103
+
  104
+2.3.9 / 2011-05-25 
  105
+==================
  106
+
  107
+  * Fixed bug-ish with `../' in `res.partial()` calls
  108
+
  109
+2.3.8 / 2011-05-24
  110
+==================
  111
+
  112
+  * Fixed `app.options()`
  113
+
  114
+2.3.7 / 2011-05-23
  115
+==================
  116
+
  117
+  * Added route `Collection`, ex: `app.get('/user/:id').remove();`
  118
+  * Added support for `app.param(fn)` to define param logic
  119
+  * Removed `app.param()` support for callback with return value
  120
+  * Removed module.parent check from express(1) generated app. Closes #670
  121
+  * Refactored router. Closes #639
  122
+
  123
+2.3.6 / 2011-05-20 
  124
+==================
  125
+
  126
+  * Changed; using devDependencies instead of git submodules
  127
+  * Fixed redis session example
  128
+  * Fixed markdown example
  129
+  * Fixed view caching, should not be enabled in development
  130
+
  131
+2.3.5 / 2011-05-20 
  132
+==================
  133
+
  134
+  * Added export `.view` as alias for `.View`
  135
+
  136
+2.3.4 / 2011-05-08 
  137
+==================
  138
+
  139
+  * Added `./examples/say`
  140
+  * Fixed `res.sendfile()` bug preventing the transfer of files with spaces
  141
+
  142
+2.3.3 / 2011-05-03 
  143
+==================
  144
+
  145
+  * Added "case sensitive routes" option.
  146
+  * Changed; split methods supported per rfc [slaskis]
  147
+  * Fixed route-specific middleware when using the same callback function several times
  148
+
  149
+2.3.2 / 2011-04-27 
  150
+==================
  151
+
  152
+  * Fixed view hints
  153
+
  154
+2.3.1 / 2011-04-26 
  155
+==================
  156
+
  157
+  * Added `app.match()` as `app.match.all()`
  158
+  * Added `app.lookup()` as `app.lookup.all()`
  159
+  * Added `app.remove()` for `app.remove.all()`
  160
+  * Added `app.remove.VERB()`
  161
+  * Fixed template caching collision issue. Closes #644
  162
+  * Moved router over from connect and started refactor
  163
+
  164
+2.3.0 / 2011-04-25 
  165
+==================
  166
+
  167
+  * Added options support to `res.clearCookie()`
  168
+  * Added `res.helpers()` as alias of `res.locals()`
  169
+  * Added; json defaults to UTF-8 with `res.send()`. Closes #632. [Daniel   * Dependency `connect >= 1.4.0`
  170
+  * Changed; auto set Content-Type in res.attachement [Aaron Heckmann]
  171
+  * Renamed "cache views" to "view cache". Closes #628
  172
+  * Fixed caching of views when using several apps. Closes #637
  173
+  * Fixed gotcha invoking `app.param()` callbacks once per route middleware. 
  174
+Closes #638
  175
+  * Fixed partial lookup precedence. Closes #631
  176
+Shaw]
  177
+
  178
+2.2.2 / 2011-04-12 
  179
+==================
  180
+
  181
+  * Added second callback support for `res.download()` connection errors
  182
+  * Fixed `filename` option passing to template engine
  183
+
  184
+2.2.1 / 2011-04-04 
  185
+==================
  186
+
  187
+  * Added `layout(path)` helper to change the layout within a view. Closes #610
  188
+  * Fixed `partial()` collection object support.
  189
+    Previously only anything with `.length` would work.
  190
+    When `.length` is present one must still be aware of holes,
  191
+    however now `{ collection: {foo: 'bar'}}` is valid, exposes
  192
+    `keyInCollection` and `keysInCollection`.
  193
+
  194
+  * Performance improved with better view caching
  195
+  * Removed `request` and `response` locals
  196
+  * Changed; errorHandler page title is now `Express` instead of `Connect`
  197
+
  198
+2.2.0 / 2011-03-30 
  199
+==================
  200
+
  201
+  * Added `app.lookup.VERB()`, ex `app.lookup.put('/user/:id')`. Closes #606
  202
+  * Added `app.match.VERB()`, ex `app.match.put('/user/12')`. Closes #606
  203
+  * Added `app.VERB(path)` as alias of `app.lookup.VERB()`.
  204
+  * Dependency `connect >= 1.2.0`
  205
+
  206
+2.1.1 / 2011-03-29 
  207
+==================
  208
+
  209
+  * Added; expose `err.view` object when failing to locate a view
  210
+  * Fixed `res.partial()` call `next(err)` when no callback is given [reported by aheckmann]
  211
+  * Fixed; `res.send(undefined)` responds with 204 [aheckmann]
  212
+
  213
+2.1.0 / 2011-03-24 
  214
+==================
  215
+
  216
+  * Added `<root>/_?<name>` partial lookup support. Closes #447
  217
+  * Added `request`, `response`, and `app` local variables
  218
+  * Added `settings` local variable, containing the app's settings
  219
+  * Added `req.flash()` exception if `req.session` is not available
  220
+  * Added `res.send(bool)` support (json response)
  221
+  * Fixed stylus example for latest version
  222
+  * Fixed; wrap try/catch around `res.render()`
  223
+
  224
+2.0.0 / 2011-03-17 
  225
+==================
  226
+
  227
+  * Fixed up index view path alternative.
  228
+  * Changed; `res.locals()` without object returns the locals
  229
+
  230
+2.0.0rc3 / 2011-03-17 
  231
+==================
  232
+
  233
+  * Added `res.locals(obj)` to compliment `res.local(key, val)`
  234
+  * Added `res.partial()` callback support
  235
+  * Fixed recursive error reporting issue in `res.render()`
  236
+
  237
+2.0.0rc2 / 2011-03-17 
  238
+==================
  239
+
  240
+  * Changed; `partial()` "locals" are now optional
  241
+  * Fixed `SlowBuffer` support. Closes #584 [reported by tyrda01]
  242
+  * Fixed .filename view engine option [reported by drudge]
  243
+  * Fixed blog example
  244
+  * Fixed `{req,res}.app` reference when mounting [Ben Weaver]
  245
+
  246
+2.0.0rc / 2011-03-14 
  247
+==================
  248
+
  249
+  * Fixed; expose `HTTPSServer` constructor
  250
+  * Fixed express(1) default test charset. Closes #579 [reported by secoif]
  251
+  * Fixed; default charset to utf-8 instead of utf8 for lame IE [reported by NickP]
  252
+
  253
+2.0.0beta3 / 2011-03-09 
  254
+==================
  255
+
  256
+  * Added support for `res.contentType()` literal
  257
+    The original `res.contentType('.json')`,
  258
+    `res.contentType('application/json')`, and `res.contentType('json')`
  259
+    will work now.
  260
+  * Added `res.render()` status option support back
  261
+  * Added charset option for `res.render()`
  262
+  * Added `.charset` support (via connect 1.0.4)
  263
+  * Added view resolution hints when in development and a lookup fails
  264
+  * Added layout lookup support relative to the page view.
  265
+    For example while rendering `./views/user/index.jade` if you create
  266
+    `./views/user/layout.jade` it will be used in favour of the root layout.
  267
+  * Fixed `res.redirect()`. RFC states absolute url [reported by unlink]
  268
+  * Fixed; default `res.send()` string charset to utf8
  269
+  * Removed `Partial` constructor (not currently used)
  270
+
  271
+2.0.0beta2 / 2011-03-07 
  272
+==================
  273
+
  274
+  * Added res.render() `.locals` support back to aid in migration process
  275
+  * Fixed flash example
  276
+
  277
+2.0.0beta / 2011-03-03 
  278
+==================
  279
+
  280
+  * Added HTTPS support
  281
+  * Added `res.cookie()` maxAge support
  282
+  * Added `req.header()` _Referrer_ / _Referer_ special-case, either works
  283
+  * Added mount support for `res.redirect()`, now respects the mount-point
  284
+  * Added `union()` util, taking place of `merge(clone())` combo
  285
+  * Added stylus support to express(1) generated app
  286
+  * Added secret to session middleware used in examples and generated app
  287
+  * Added `res.local(name, val)` for progressive view locals
  288
+  * Added default param support to `req.param(name, default)`
  289
+  * Added `app.disabled()` and `app.enabled()`
  290
+  * Added `app.register()` support for omitting leading ".", either works
  291
+  * Added `res.partial()`, using the same interface as `partial()` within a view. Closes #539
  292
+  * Added `app.param()` to map route params to async/sync logic
  293
+  * Added; aliased `app.helpers()` as `app.locals()`. Closes #481
  294
+  * Added extname with no leading "." support to `res.contentType()`
  295
+  * Added `cache views` setting, defaulting to enabled in "production" env
  296
+  * Added index file partial resolution, eg: partial('user') may try _views/user/index.jade_.
  297
+  * Added `req.accepts()` support for extensions
  298
+  * Changed; `res.download()` and `res.sendfile()` now utilize Connect's
  299
+    static file server `connect.static.send()`.
  300
+  * Changed; replaced `connect.utils.mime()` with npm _mime_ module
  301
+  * Changed; allow `req.query` to be pre-defined (via middleware or other parent
  302
+  * Changed view partial resolution, now relative to parent view
  303
+  * Changed view engine signature. no longer `engine.render(str, options, callback)`, now `engine.compile(str, options) -> Function`, the returned function accepts `fn(locals)`.
  304
+  * Fixed `req.param()` bug returning Array.prototype methods. Closes #552
  305
+  * Fixed; using `Stream#pipe()` instead of `sys.pump()` in `res.sendfile()`
  306
+  * Fixed; using _qs_ module instead of _querystring_
  307
+  * Fixed; strip unsafe chars from jsonp callbacks
  308
+  * Removed "stream threshold" setting
  309
+
  310
+1.0.8 / 2011-03-01 
  311
+==================
  312
+
  313
+  * Allow `req.query` to be pre-defined (via middleware or other parent app)
  314
+  * "connect": ">= 0.5.0 < 1.0.0". Closes #547
  315
+  * Removed the long deprecated __EXPRESS_ENV__ support
  316
+
  317
+1.0.7 / 2011-02-07 
  318
+==================
  319
+
  320
+  * Fixed `render()` setting inheritance.
  321
+    Mounted apps would not inherit "view engine"
  322
+
  323
+1.0.6 / 2011-02-07 
  324
+==================
  325
+
  326
+  * Fixed `view engine` setting bug when period is in dirname
  327
+
  328
+1.0.5 / 2011-02-05 
  329
+==================
  330
+
  331
+  * Added secret to generated app `session()` call
  332
+
  333
+1.0.4 / 2011-02-05 
  334
+==================
  335
+
  336
+  * Added `qs` dependency to _package.json_
  337
+  * Fixed namespaced `require()`s for latest connect support
  338
+
  339
+1.0.3 / 2011-01-13 
  340
+==================
  341
+
  342
+  * Remove unsafe characters from JSONP callback names [Ryan Grove]
  343
+
  344
+1.0.2 / 2011-01-10 
  345
+==================
  346
+
  347
+  * Removed nested require, using `connect.router`
  348
+
  349
+1.0.1 / 2010-12-29 
  350
+==================
  351
+
  352
+  * Fixed for middleware stacked via `createServer()`
  353
+    previously the `foo` middleware passed to `createServer(foo)`
  354
+    would not have access to Express methods such as `res.send()`
  355
+    or props like `req.query` etc.
  356
+
  357
+1.0.0 / 2010-11-16 
  358
+==================
  359
+
  360
+  * Added; deduce partial object names from the last segment.
  361
+    For example by default `partial('forum/post', postObject)` will
  362
+    give you the _post_ object, providing a meaningful default.
  363
+  * Added http status code string representation to `res.redirect()` body
  364
+  * Added; `res.redirect()` supporting _text/plain_ and _text/html_ via __Accept__.
  365
+  * Added `req.is()` to aid in content negotiation
  366
+  * Added partial local inheritance [suggested by masylum]. Closes #102
  367
+    providing access to parent template locals.
  368
+  * Added _-s, --session[s]_ flag to express(1) to add session related middleware
  369
+  * Added _--template_ flag to express(1) to specify the
  370
+    template engine to use.
  371
+  * Added _--css_ flag to express(1) to specify the 
  372
+    stylesheet engine to use (or just plain css by default).
  373
+  * Added `app.all()` support [thanks aheckmann]
  374
+  * Added partial direct object support.
  375
+    You may now `partial('user', user)` providing the "user" local,
  376
+    vs previously `partial('user', { object: user })`.
  377
+  * Added _route-separation_ example since many people question ways
  378
+    to do this with CommonJS modules. Also view the _blog_ example for
  379
+    an alternative.
  380
+  * Performance; caching view path derived partial object names
  381
+  * Fixed partial local inheritance precedence. [reported by Nick Poulden] Closes #454
  382
+  * Fixed jsonp support; _text/javascript_ as per mailinglist discussion
  383
+
  384
+1.0.0rc4 / 2010-10-14 
  385
+==================
  386
+
  387
+  * Added _NODE_ENV_ support, _EXPRESS_ENV_ is deprecated and will be removed in 1.0.0
  388
+  * Added route-middleware support (very helpful, see the [docs](http://expressjs.com/guide.html#Route-Middleware))
  389
+  * Added _jsonp callback_ setting to enable/disable jsonp autowrapping [Dav Glass]
  390
+  * Added callback query check on response.send to autowrap JSON objects for simple webservice implementations [Dav Glass]
  391
+  * Added `partial()` support for array-like collections. Closes #434
  392
+  * Added support for swappable querystring parsers
  393
+  * Added session usage docs. Closes #443
  394
+  * Added dynamic helper caching. Closes #439 [suggested by maritz]
  395
+  * Added authentication example
  396
+  * Added basic Range support to `res.sendfile()` (and `res.download()` etc)
  397
+  * Changed; `express(1)` generated app using 2 spaces instead of 4
  398
+  * Default env to "development" again [aheckmann]
  399
+  * Removed _context_ option is no more, use "scope"
  400
+  * Fixed; exposing _./support_ libs to examples so they can run without installs
  401
+  * Fixed mvc example
  402
+
  403
+1.0.0rc3 / 2010-09-20 
  404
+==================
  405
+
  406
+  * Added confirmation for `express(1)` app generation. Closes #391
  407
+  * Added extending of flash formatters via `app.flashFormatters`
  408
+  * Added flash formatter support. Closes #411
  409
+  * Added streaming support to `res.sendfile()` using `sys.pump()` when >= "stream threshold"
  410
+  * Added _stream threshold_ setting for `res.sendfile()`
  411
+  * Added `res.send()` __HEAD__ support
  412
+  * Added `res.clearCookie()`
  413
+  * Added `res.cookie()`
  414
+  * Added `res.render()` headers option
  415
+  * Added `res.redirect()` response bodies
  416
+  * Added `res.render()` status option support. Closes #425 [thanks aheckmann]
  417
+  * Fixed `res.sendfile()` responding with 403 on malicious path
  418
+  * Fixed `res.download()` bug; when an error occurs remove _Content-Disposition_
  419
+  * Fixed; mounted apps settings now inherit from parent app [aheckmann]
  420
+  * Fixed; stripping Content-Length / Content-Type when 204
  421
+  * Fixed `res.send()` 204. Closes #419
  422
+  * Fixed multiple _Set-Cookie_ headers via `res.header()`. Closes #402
  423
+  * Fixed bug messing with error handlers when `listenFD()` is called instead of `listen()`. [thanks guillermo]
  424
+
  425
+
  426
+1.0.0rc2 / 2010-08-17 
  427
+==================
  428
+
  429
+  * Added `app.register()` for template engine mapping. Closes #390
  430
+  * Added `res.render()` callback support as second argument (no options)
  431
+  * Added callback support to `res.download()`
  432
+  * Added callback support for `res.sendfile()`
  433
+  * Added support for middleware access via `express.middlewareName()` vs `connect.middlewareName()`
  434
+  * Added "partials" setting to docs
  435
+  * Added default expresso tests to `express(1)` generated app. Closes #384
  436
+  * Fixed `res.sendfile()` error handling, defer via `next()`
  437
+  * Fixed `res.render()` callback when a layout is used [thanks guillermo]
  438
+  * Fixed; `make install` creating ~/.node_libraries when not present
  439
+  * Fixed issue preventing error handlers from being defined anywhere. Closes #387 
  440
+
  441
+1.0.0rc / 2010-07-28
  442
+==================
  443
+
  444
+  * Added mounted hook. Closes #369
  445
+  * Added connect dependency to _package.json_
  446
+
  447
+  * Removed "reload views" setting and support code
  448
+    development env never caches, production always caches.
  449
+
  450
+  * Removed _param_ in route callbacks, signature is now
  451
+    simply (req, res, next), previously (req, res, params, next).
  452
+    Use _req.params_ for path captures, _req.query_ for GET params.
  453
+
  454
+  * Fixed "home" setting
  455
+  * Fixed middleware/router precedence issue. Closes #366
  456
+  * Fixed; _configure()_ callbacks called immediately. Closes #368
  457
+	
  458
+1.0.0beta2 / 2010-07-23
  459
+==================
  460
+
  461
+  * Added more examples
  462
+  * Added; exporting `Server` constructor
  463
+  * Added `Server#helpers()` for view locals
  464
+  * Added `Server#dynamicHelpers()` for dynamic view locals. Closes #349
  465
+  * Added support for absolute view paths
  466
+  * Added; _home_ setting defaults to `Server#route` for mounted apps. Closes #363
  467
+  * Added Guillermo Rauch to the contributor list
  468
+  * Added support for "as" for non-collection partials. Closes #341
  469
+  * Fixed _install.sh_, ensuring _~/.node_libraries_ exists. Closes #362 [thanks jf]
  470
+  * Fixed `res.render()` exceptions, now passed to `next()` when no callback is given [thanks guillermo]
  471
+  * Fixed instanceof `Array` checks, now `Array.isArray()`
  472
+  * Fixed express(1) expansion of public dirs. Closes #348
  473
+  * Fixed middleware precedence. Closes #345
  474
+  * Fixed view watcher, now async [thanks aheckmann]
  475
+
  476
+1.0.0beta / 2010-07-15
  477
+==================
  478
+
  479
+  * Re-write
  480
+    - much faster
  481
+    - much lighter
  482
+    - Check [ExpressJS.com](http://expressjs.com) for migration guide and updated docs
  483
+
  484
+0.14.0 / 2010-06-15
  485
+==================
  486
+
  487
+  * Utilize relative requires
  488
+  * Added Static bufferSize option [aheckmann]
  489
+  * Fixed caching of view and partial subdirectories [aheckmann]
  490
+  * Fixed mime.type() comments now that ".ext" is not supported
  491
+  * Updated haml submodule
  492
+  * Updated class submodule
  493
+  * Removed bin/express
  494
+
  495
+0.13.0 / 2010-06-01
  496
+==================
  497
+
  498
+  * Added node v0.1.97 compatibility
  499
+  * Added support for deleting cookies via Request#cookie('key', null)
  500
+  * Updated haml submodule
  501
+  * Fixed not-found page, now using using charset utf-8
  502
+  * Fixed show-exceptions page, now using using charset utf-8
  503
+  * Fixed view support due to fs.readFile Buffers
  504
+  * Changed; mime.type() no longer accepts ".type" due to node extname() changes
  505
+
  506
+0.12.0 / 2010-05-22
  507
+==================
  508
+
  509
+  * Added node v0.1.96 compatibility
  510
+  * Added view `helpers` export which act as additional local variables
  511
+  * Updated haml submodule
  512
+  * Changed ETag; removed inode, modified time only
  513
+  * Fixed LF to CRLF for setting multiple cookies
  514
+  * Fixed cookie complation; values are now urlencoded
  515
+  * Fixed cookies parsing; accepts quoted values and url escaped cookies
  516
+
  517
+0.11.0 / 2010-05-06
  518
+==================
  519
+
  520
+  * Added support for layouts using different engines
  521
+    - this.render('page.html.haml', { layout: 'super-cool-layout.html.ejs' })
  522
+    - this.render('page.html.haml', { layout: 'foo' }) // assumes 'foo.html.haml'
  523
+    - this.render('page.html.haml', { layout: false }) // no layout
  524
+  * Updated ext submodule
  525
+  * Updated haml submodule
  526
+  * Fixed EJS partial support by passing along the context. Issue #307
  527
+
  528
+0.10.1 / 2010-05-03
  529
+==================
  530
+
  531
+  * Fixed binary uploads.
  532
+
  533
+0.10.0 / 2010-04-30
  534
+==================
  535
+
  536
+  * Added charset support via Request#charset (automatically assigned to 'UTF-8' when respond()'s
  537
+    encoding is set to 'utf8' or 'utf-8'.
  538
+  * Added "encoding" option to Request#render(). Closes #299
  539
+  * Added "dump exceptions" setting, which is enabled by default.
  540
+  * Added simple ejs template engine support
  541
+  * Added error reponse support for text/plain, application/json. Closes #297
  542
+  * Added callback function param to Request#error()
  543
+  * Added Request#sendHead()
  544
+  * Added Request#stream()
  545
+  * Added support for Request#respond(304, null) for empty response bodies
  546
+  * Added ETag support to Request#sendfile()
  547
+  * Added options to Request#sendfile(), passed to fs.createReadStream()
  548
+  * Added filename arg to Request#download()
  549
+  * Performance enhanced due to pre-reversing plugins so that plugins.reverse() is not called on each request
  550
+  * Performance enhanced by preventing several calls to toLowerCase() in Router#match()
  551
+  * Changed; Request#sendfile() now streams
  552
+  * Changed; Renamed Request#halt() to Request#respond(). Closes #289
  553
+  * Changed; Using sys.inspect() instead of JSON.encode() for error output
  554
+  * Changed; run() returns the http.Server instance. Closes #298
  555
+  * Changed; Defaulting Server#host to null (INADDR_ANY)
  556
+  * Changed; Logger "common" format scale of 0.4f
  557
+  * Removed Logger "request" format
  558
+  * Fixed; Catching ENOENT in view caching, preventing error when "views/partials" is not found
  559
+  * Fixed several issues with http client
  560
+  * Fixed Logger Content-Length output
  561
+  * Fixed bug preventing Opera from retaining the generated session id. Closes #292
  562
+
  563
+0.9.0 / 2010-04-14
  564
+==================
  565
+
  566
+  * Added DSL level error() route support
  567
+  * Added DSL level notFound() route support
  568
+  * Added Request#error()
  569
+  * Added Request#notFound()
  570
+  * Added Request#render() callback function. Closes #258
  571
+  * Added "max upload size" setting
  572
+  * Added "magic" variables to collection partials (\_\_index\_\_, \_\_length\_\_, \_\_isFirst\_\_, \_\_isLast\_\_). Closes #254
  573
+  * Added [haml.js](http://github.com/visionmedia/haml.js) submodule; removed haml-js
  574
+  * Added callback function support to Request#halt() as 3rd/4th arg
  575
+  * Added preprocessing of route param wildcards using param(). Closes #251
  576
+  * Added view partial support (with collections etc)
  577
+  * Fixed bug preventing falsey params (such as ?page=0). Closes #286
  578
+  * Fixed setting of multiple cookies. Closes #199
  579
+  * Changed; view naming convention is now NAME.TYPE.ENGINE (for example page.html.haml)
  580
+  * Changed; session cookie is now httpOnly
  581
+  * Changed; Request is no longer global
  582
+  * Changed; Event is no longer global
  583
+  * Changed; "sys" module is no longer global
  584
+  * Changed; moved Request#download to Static plugin where it belongs
  585
+  * Changed; Request instance created before body parsing. Closes #262
  586
+  * Changed; Pre-caching views in memory when "cache view contents" is enabled. Closes #253
  587
+  * Changed; Pre-caching view partials in memory when "cache view partials" is enabled
  588
+  * Updated support to node --version 0.1.90
  589
+  * Updated dependencies
  590
+  * Removed set("session cookie") in favour of use(Session, { cookie: { ... }})
  591
+  * Removed utils.mixin(); use Object#mergeDeep()
  592
+  
  593
+0.8.0 / 2010-03-19
  594
+==================
  595
+
  596
+  * Added coffeescript example app. Closes #242
  597
+  * Changed; cache api now async friendly. Closes #240
  598
+  * Removed deprecated 'express/static' support. Use 'express/plugins/static'
  599
+
  600
+0.7.6 / 2010-03-19
  601
+==================
  602
+
  603
+  * Added Request#isXHR. Closes #229
  604
+  * Added `make install` (for the executable)
  605
+  * Added `express` executable for setting up simple app templates
  606
+  * Added "GET /public/*" to Static plugin, defaulting to <root>/public
  607
+  * Added Static plugin
  608
+  * Fixed; Request#render() only calls cache.get() once
  609
+  * Fixed; Namespacing View caches with "view:"
  610
+  * Fixed; Namespacing Static caches with "static:"
  611
+  * Fixed; Both example apps now use the Static plugin
  612
+  * Fixed set("views"). Closes #239
  613
+  * Fixed missing space for combined log format
  614
+  * Deprecated Request#sendfile() and 'express/static'
  615
+  * Removed Server#running
  616
+
  617
+0.7.5 / 2010-03-16
  618
+==================
  619
+
  620
+  * Added Request#flash() support without args, now returns all flashes
  621
+  * Updated ext submodule
  622
+
  623
+0.7.4 / 2010-03-16
  624
+==================
  625
+
  626
+  * Fixed session reaper
  627
+  * Changed; class.js replacing js-oo Class implementation (quite a bit faster, no browser cruft)
  628
+
  629
+0.7.3 / 2010-03-16
  630
+==================
  631
+
  632
+  * Added package.json
  633
+  * Fixed requiring of haml / sass due to kiwi removal
  634
+
  635
+0.7.2 / 2010-03-16
  636
+==================
  637
+
  638
+  * Fixed GIT submodules (HAH!)
  639
+
  640
+0.7.1 / 2010-03-16
  641
+==================
  642
+
  643
+  * Changed; Express now using submodules again until a PM is adopted
  644
+  * Changed; chat example using millisecond conversions from ext
  645
+
  646
+0.7.0 / 2010-03-15
  647
+==================
  648
+
  649
+  * Added Request#pass() support (finds the next matching route, or the given path)
  650
+  * Added Logger plugin (default "common" format replaces CommonLogger)
  651
+  * Removed Profiler plugin
  652
+  * Removed CommonLogger plugin
  653
+
  654
+0.6.0 / 2010-03-11
  655
+==================
  656
+
  657
+  * Added seed.yml for kiwi package management support
  658
+  * Added HTTP client query string support when method is GET. Closes #205
  659
+  
  660
+  * Added support for arbitrary view engines.
  661
+    For example "foo.engine.html" will now require('engine'),
  662
+    the exports from this module are cached after the first require().
  663
+    
  664
+  * Added async plugin support
  665
+  
  666
+  * Removed usage of RESTful route funcs as http client
  667
+    get() etc, use http.get() and friends
  668
+  
  669
+  * Removed custom exceptions
  670
+
  671
+0.5.0 / 2010-03-10
  672
+==================
  673
+
  674
+  * Added ext dependency (library of js extensions)
  675
+  * Removed extname() / basename() utils. Use path module
  676
+  * Removed toArray() util. Use arguments.values
  677
+  * Removed escapeRegexp() util. Use RegExp.escape()
  678
+  * Removed process.mixin() dependency. Use utils.mixin()
  679
+  * Removed Collection
  680
+  * Removed ElementCollection
  681
+  * Shameless self promotion of ebook "Advanced JavaScript" (http://dev-mag.com)  ;)
  682
+
  683
+0.4.0 / 2010-02-11
  684
+==================
  685
+
  686
+  * Added flash() example to sample upload app
  687
+  * Added high level restful http client module (express/http)
  688
+  * Changed; RESTful route functions double as HTTP clients. Closes #69
  689
+  * Changed; throwing error when routes are added at runtime
  690
+  * Changed; defaulting render() context to the current Request. Closes #197
  691
+  * Updated haml submodule
  692
+
  693
+0.3.0 / 2010-02-11
  694
+==================
  695
+
  696
+  * Updated haml / sass submodules. Closes #200
  697
+  * Added flash message support. Closes #64
  698
+  * Added accepts() now allows multiple args. fixes #117
  699
+  * Added support for plugins to halt. Closes #189
  700
+  * Added alternate layout support. Closes #119
  701
+  * Removed Route#run(). Closes #188
  702
+  * Fixed broken specs due to use(Cookie) missing
  703
+
  704
+0.2.1 / 2010-02-05
  705
+==================
  706
+
  707
+  * Added "plot" format option for Profiler (for gnuplot processing)
  708
+  * Added request number to Profiler plugin
  709
+  * Fixed binary encoding for multi-part file uploads, was previously defaulting to UTF8
  710
+  * Fixed issue with routes not firing when not files are present. Closes #184
  711
+  * Fixed process.Promise -> events.Promise
  712
+
  713
+0.2.0 / 2010-02-03
  714
+==================
  715
+
  716
+  * Added parseParam() support for name[] etc. (allows for file inputs with "multiple" attr) Closes #180
  717
+  * Added Both Cache and Session option "reapInterval" may be "reapEvery". Closes #174
  718
+  * Added expiration support to cache api with reaper. Closes #133
  719
+  * Added cache Store.Memory#reap()
  720
+  * Added Cache; cache api now uses first class Cache instances
  721
+  * Added abstract session Store. Closes #172
  722
+  * Changed; cache Memory.Store#get() utilizing Collection
  723
+  * Renamed MemoryStore -> Store.Memory
  724
+  * Fixed use() of the same plugin several time will always use latest options. Closes #176
  725
+
  726
+0.1.0 / 2010-02-03
  727
+==================
  728
+
  729
+  * Changed; Hooks (before / after) pass request as arg as well as evaluated in their context
  730
+  * Updated node support to 0.1.27 Closes #169
  731
+  * Updated dirname(__filename) -> __dirname
  732
+  * Updated libxmljs support to v0.2.0
  733
+  * Added session support with memory store / reaping
  734
+  * Added quick uid() helper
  735
+  * Added multi-part upload support
  736
+  * Added Sass.js support / submodule
  737
+  * Added production env caching view contents and static files
  738
+  * Added static file caching. Closes #136
  739
+  * Added cache plugin with memory stores
  740
+  * Added support to StaticFile so that it works with non-textual files.
  741
+  * Removed dirname() helper
  742
+  * Removed several globals (now their modules must be required)
  743
+
  744
+0.0.2 / 2010-01-10
  745
+==================
  746
+
  747
+  * Added view benchmarks; currently haml vs ejs
  748
+  * Added Request#attachment() specs. Closes #116
  749
+  * Added use of node's parseQuery() util. Closes #123
  750
+  * Added `make init` for submodules
  751
+  * Updated Haml
  752
+  * Updated sample chat app to show messages on load
  753
+  * Updated libxmljs parseString -> parseHtmlString
  754
+  * Fixed `make init` to work with older versions of git
  755
+  * Fixed specs can now run independant specs for those who cant build deps. Closes #127
  756
+  * Fixed issues introduced by the node url module changes. Closes 126.
  757
+  * Fixed two assertions failing due to Collection#keys() returning strings
  758
+  * Fixed faulty Collection#toArray() spec due to keys() returning strings
  759
+  * Fixed `make test` now builds libxmljs.node before testing
  760
+
  761
+0.0.1 / 2010-01-03
  762
+==================
  763
+
  764
+  * Initial release
22  node_modules/express/LICENSE
... ...
@@ -0,0 +1,22 @@
  1
+(The MIT License)
  2
+
  3
+Copyright (c) 2009-2011 TJ Holowaychuk <tj@vision-media.ca>
  4
+
  5
+Permission is hereby granted, free of charge, to any person obtaining
  6
+a copy of this software and associated documentation files (the
  7
+'Software'), to deal in the Software without restriction, including
  8
+without limitation the rights to use, copy, modify, merge, publish,
  9
+distribute, sublicense, and/or sell copies of the Software, and to
  10
+permit persons to whom the Software is furnished to do so, subject to
  11
+the following conditions:
  12
+
  13
+The above copyright notice and this permission notice shall be
  14
+included in all copies or substantial portions of the Software.
  15
+
  16
+THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
  17
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  18
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
  19
+IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
  20
+CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
  21
+TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  22
+SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29  node_modules/express/Makefile
... ...
@@ -0,0 +1,29 @@
  1
+
  2
+DOCS = $(shell find docs/*.md)
  3
+HTMLDOCS = $(DOCS:.md=.html)
  4
+TESTS = $(shell find test/*.test.js)
  5
+
  6
+test:
  7
+	@NODE_ENV=test ./node_modules/.bin/expresso $(TESTS)
  8
+
  9
+docs: $(HTMLDOCS)
  10
+	@ echo "... generating TOC"
  11
+	@./support/toc.js docs/guide.html
  12
+
  13
+%.html: %.md
  14
+	@echo "... $< -> $@"
  15
+	@markdown $< \
  16
+	  | cat docs/layout/head.html - docs/layout/foot.html \
  17
+	  > $@
  18
+
  19
+site:
  20
+	rm -fr /tmp/docs \
  21
+	  && cp -fr docs /tmp/docs \
  22
+	  && git checkout gh-pages \