Compare commits

...

2780 Commits

Author SHA1 Message Date
TJ Holowaychuk
26802a689c fix package.json conflict 2013-07-04 13:39:36 -07:00
TJ Holowaychuk
37239fb67f Release 3.3.3 2013-07-04 07:37:17 -07:00
TJ Holowaychuk
018dc40b32 update connect 2013-07-04 07:36:57 -07:00
TJ Holowaychuk
52440955e6 Release 3.3.2 2013-07-03 11:25:54 -07:00
TJ Holowaychuk
c2f3d6ce2b update connect 2013-07-03 11:25:15 -07:00
TJ Holowaychuk
be858f5d07 update send 2013-07-03 11:24:31 -07:00
TJ Holowaychuk
1f14734f91 Merge pull request #1664 from paulmillr/topics/update-deps
Update commander and mkdirp dependencies.
2013-07-01 11:14:15 -07:00
Paul Miller
6d1d694dbb Update commander and mkdirp dependencies. 2013-06-28 19:15:32 +03:00
TJ Holowaychuk
ba5c48aa86 remove .version export 2013-06-27 08:38:53 -07:00
TJ Holowaychuk
320d7807a9 Release 3.3.1 2013-06-27 08:32:37 -07:00
TJ Holowaychuk
6650a312b7 update connect 2013-06-27 08:32:20 -07:00
TJ Holowaychuk
832c3b3744 Release 3.3.0 2013-06-26 10:07:34 -07:00
TJ Holowaychuk
76691bfd6b update connect 2013-06-26 10:05:40 -07:00
TJ Holowaychuk
29fe5ea785 Merge pull request #1657 from ralphtheninja/master
use send 0.1.1 to get rid of npm warning during install
2013-06-26 09:54:24 -07:00
Lars-Magnus Skog
52a820113f use send 0.1.1 to get rid of npm warning 2013-06-23 00:49:20 +02:00
TJ Holowaychuk
aec3428489 Merge pull request #1650 from printercu/master
move .app to req's & res's prototypes
2013-06-11 12:39:59 -07:00
TJ Holowaychuk
a10f695b6f pin jade dev dep so tests do not break 2013-06-11 12:24:17 -07:00
Max Melentiev
a3c9eacaf1 move .app to req's & res's prototypes 2013-06-11 19:42:30 +04:00
TJ Holowaychuk
19d685b152 return actual booleans from req.accept* functions 2013-06-06 13:47:18 -07:00
TJ Holowaychuk
8ab44081d4 add support for multiple X-Forwarded-Proto values. Closes #1646 2013-06-05 12:05:45 -07:00
TJ Holowaychuk
0431d22822 add req.secure tests 2013-06-05 11:59:47 -07:00
TJ Holowaychuk
138d74aefa remove charset from json responses. Closes #1631 2013-06-05 11:51:59 -07:00
TJ Holowaychuk
28562b2cf8 Merge pull request #1643 from jonjenkins/master
Fixed issue with callback querystring failure
2013-06-03 14:52:49 -07:00
TJ Holowaychuk
e0afda444f Release 3.2.6 2013-06-02 17:15:39 -07:00
TJ Holowaychuk
5a4cac58af update connect 2013-06-02 17:15:14 -07:00
TJ Holowaychuk
545dca6c4d Merge pull request #1642 from jade-bot/master
Update jade files [bot-update#1]
2013-06-02 16:04:50 -07:00
TJ Holowaychuk
e59a882389 Merge pull request #1634 from joshlangner/patch-1
added some additional explanation for clarity
2013-06-02 15:58:25 -07:00
TJ Holowaychuk
ccd9828535 Merge pull request #1630 from EvanHahn/patch-1
Remove dead link from readme's "More Information"
2013-06-02 15:50:45 -07:00
TJ Holowaychuk
41f0d32355 Merge pull request #1622 from saintedlama/master
Fixes indentation for css engines when using express to scaffold an application
2013-06-02 15:47:36 -07:00
Jenkins
2f19b4fefc Corrected callback crashing app when array 2013-05-26 21:35:52 -05:00
jade-bot
cd31cecfd1 Update to maintain compatability with the latest version of jade 2013-05-26 14:51:34 -07:00
TJ Holowaychuk
2fe46b3905 Release 3.2.5 2013-05-21 21:01:24 -07:00
TJ Holowaychuk
24974f1f8f update connect 2013-05-21 20:56:08 -07:00
joshlangner
fd73bd006e added some additional explanation for clarity 2013-05-19 22:47:04 -04:00
Evan Hahn
7388c2c223 Remove dead link from readme's "More Information" 2013-05-17 11:37:21 -06:00
TJ Holowaychuk
e2210b0b92 Merge pull request #1625 from ForbesLindesay/patch-1
Throw a meaningful error when there is no default engine
2013-05-15 08:27:47 -07:00
Forbes Lindesay
30919be2a0 Throw a meaningful error when there is no default engine 2013-05-15 12:39:06 +01:00
TJ Holowaychuk
10b21b41f7 Revert "fix infinite loop when res.send(status) is undefined. Closes #1623"
This reverts commit 28b8a3b5f7.
2013-05-13 13:23:23 -07:00
TJ Holowaychuk
28b8a3b5f7 fix infinite loop when res.send(status) is undefined. Closes #1623 2013-05-13 13:22:31 -07:00
saintelama
8b2f1bba95 fix indentation for css engine support 2013-05-12 23:43:52 +02:00
TJ Holowaychuk
c805d80a9b Merge pull request #1592 from bartsqueezy/eb1bbb9
Removing dependency which is no longer supported
2013-05-11 15:36:39 -07:00
TJ Holowaychuk
d876778d22 Merge pull request #1597 from Cauldrath/cookie_version
Version bump for node-cookie
2013-05-11 15:35:30 -07:00
TJ Holowaychuk
412e571600 Merge pull request #1618 from pwmckenna/patch-1
Flush messages exposed to locals *after* the view has the chance to proces...
2013-05-11 15:26:22 -07:00
TJ Holowaychuk
3296ed9cb3 change generation of ETags with res.send() to GET requests only. Closes #1619
if for some reason this is not ideal for your use-case please let me know and comment in the issue
2013-05-10 14:43:59 -07:00
Patrick Williams
91835e6816 Flush messages exposed to locals after the view has the chance to process them. 2013-05-10 09:05:37 -06:00
TJ Holowaychuk
f976625281 Release 3.2.4 2013-05-09 09:17:48 -07:00
TJ Holowaychuk
028d9d8a0c Merge pull request #1598 from colynb/patch-1
the file is hosts not vhosts
2013-05-09 09:12:54 -07:00
TJ Holowaychuk
8559c0e2a4 fix req.subdomains when no Host is present 2013-05-09 09:10:52 -07:00
TJ Holowaychuk
06ead58240 fix req.host when no Host is present, return undefined 2013-05-09 09:06:11 -07:00
TJ Holowaychuk
28ca1b5221 add req.host tests 2013-05-09 09:03:52 -07:00
TJ Holowaychuk
6d872e6693 remove qs dep 2013-05-07 07:58:54 -07:00
TJ Holowaychuk
0b09c8981f Release 3.2.3 2013-05-07 07:55:06 -07:00
TJ Holowaychuk
a1d5676ecb update connect / qs 2013-05-07 07:54:48 -07:00
TJ Holowaychuk
f862ad29f5 Release 3.2.2 2013-05-03 12:54:52 -07:00
TJ Holowaychuk
15496da8fd remove ./client.js 2013-05-03 12:54:28 -07:00
TJ Holowaychuk
802fb1632c update qs 2013-05-03 12:53:50 -07:00
colynb
69453ff889 the file is hosts not vhosts 2013-05-01 16:27:29 -07:00
Benjamin Hanes
28752cc3c0 Version bump for node-cookie 2013-05-01 15:25:14 -04:00
TJ Holowaychuk
9f06d9b03f Release 3.2.1 2013-04-29 19:17:08 -07:00
TJ Holowaychuk
3fb7c4e1db update connect 2013-04-29 19:16:33 -07:00
Steve Bartnesky
5fa685b602 removing github-flavored-markdown as a dependency as it is no longer supported. switch to use marked instead 2013-04-29 09:12:29 -05:00
Steve Bartnesky
eb1bbb92c0 removing github-flavored-markdown as a dependency as it is no longer supported. switch to use marked instead 2013-04-29 08:59:52 -05:00
TJ Holowaychuk
d0e49f1a8a update qs and remove all ~ semver crap 2013-04-26 13:12:33 -07:00
TJ Holowaychuk
ea2664a4b8 Merge branch 'master' of github.com:visionmedia/express 2013-04-25 16:29:50 -07:00
TJ Holowaychuk
da6524bd06 Merge pull request #1589 from hacksparrow/master
Signed cookies can now accept numbers as values, like unsigned cookies
2013-04-25 16:29:39 -07:00
TJ Holowaychuk
a231406931 Merge branch 'master' of github.com:visionmedia/express 2013-04-25 16:26:44 -07:00
Hack Sparrow
6d39ed8ef7 Accept number as value of Signed Cookie 2013-04-23 22:53:35 +05:30
TJ Holowaychuk
f2563f4dde Merge pull request #1586 from yields/master
removed some spaces from bin/express
2013-04-21 18:18:19 -07:00
Amir Abu Shareb
3df265b36a remove spaces when a session is enabled. 2013-04-21 15:41:42 +03:00
TJ Holowaychuk
e382e6adc7 update supertest dev dep 2013-04-16 06:49:56 -07:00
TJ Holowaychuk
91c71d6c2e add app.VERB() paths array deprecation warning 2013-04-15 15:18:28 -07:00
TJ Holowaychuk
0d40c65b7f Release 3.2.0 2013-04-15 12:34:41 -07:00
TJ Holowaychuk
58f2057ba7 revert cookie signature change causing session race conditions 2013-04-15 12:33:12 -07:00
TJ Holowaychuk
37179109db Revert "fix res.cookie() tests"
This reverts commit ed273448b9.
2013-04-15 12:29:42 -07:00
TJ Holowaychuk
579857cfaa fix example port 2013-04-13 10:14:23 -07:00
Caridy Patino
0b4e2df480 add "view" constructor setting to override view behaviour 2013-04-13 09:53:50 -07:00
TJ Holowaychuk
49cc1a70b1 Merge pull request #1571 from jlubawy/master
Change to crypto.pbkdf2 in Node v0.10 broke auth example
2013-04-13 09:35:11 -07:00
TJ Holowaychuk
f8a33d137a refactor 2013-04-13 09:16:15 -07:00
TJ Holowaychuk
2db135dfc7 Merge pull request #1566 from daguej/v8-context-fix
Possible fix for #1557
2013-04-13 09:14:41 -07:00
TJ Holowaychuk
99bc628ad1 fix long list params test 2013-04-13 09:07:48 -07:00
TJ Holowaychuk
5ba6c301d7 Merge pull request #1578 from Notificare/master
Correct sorting of long list of accept header
2013-04-13 09:06:09 -07:00
silentjohnny
88273a59f8 Added originalIndex to parseQuality to correctly sort long lists (v8 does unstable quicksort for length > 10) 2013-04-13 12:36:35 +02:00
TJ Holowaychuk
2e53cb72ec add req.acceptsEncoding(name) 2013-04-12 12:56:50 -07:00
TJ Holowaychuk
3b1597d79e add req.acceptedEncodings 2013-04-12 12:55:53 -07:00
TJ Holowaychuk
776ee26bc3 Release 3.1.2 2013-04-12 12:14:02 -07:00
TJ Holowaychuk
ed273448b9 fix res.cookie() tests 2013-04-12 12:13:12 -07:00
TJ Holowaychuk
4bb91b3f67 update connect 2013-04-12 12:10:48 -07:00
TJ Holowaychuk
c5f866098e update cookie-signature 2013-04-12 12:07:43 -07:00
TJ Holowaychuk
6cfd01be6b Merge branch 'master' of github.com:visionmedia/express 2013-04-11 08:42:05 -07:00
TJ Holowaychuk
53b8e25731 ocd 2013-04-11 08:36:52 -07:00
Pavel Brylov
9e684d45bc add support for custom Accept parameters 2013-04-11 08:34:10 -07:00
TJ Holowaychuk
09d9201787 Merge pull request #1575 from jsmarkus/patch-1
Changed URL of russian docs in Readme.md
2013-04-09 15:47:31 -07:00
Mark
a732d6d471 Changed URL of russian docs in Readme.md 2013-04-09 21:18:50 +03:00
Josh Lubawy
ee9d50c128 Modified hash to return base64 encoded strings. 2013-04-04 23:26:27 -07:00
TJ Holowaychuk
d1bafa0685 docs 2013-04-03 15:11:58 -07:00
TJ Holowaychuk
2604be5491 Merge branch 'master' of github.com:visionmedia/express 2013-04-03 08:26:23 -07:00
TJ Holowaychuk
c52d9cdfbe add --check-leaks for mocha 2013-04-03 08:14:11 -07:00
TJ Holowaychuk
aab6b7e721 Merge pull request #1567 from guybrush/fixTravis
fix .travis.yml
2013-04-02 14:42:06 -07:00
Patrick Pfeiffer
d13cea46d5 fix .travis.yml 2013-04-02 16:16:30 +02:00
TJ Holowaychuk
82731dae6e Merge pull request #1503 from shesek/settings-inheritance
Inherit settings from parent application using [[Prototype]]
2013-04-01 14:29:20 -07:00
TJ Holowaychuk
476fba3e8b Release 3.1.1 2013-04-01 11:25:58 -07:00
TJ Holowaychuk
a566624f2d refactor 2013-04-01 11:22:16 -07:00
TJ Holowaychuk
c6d7352f5c Merge branch 'master' of github.com:visionmedia/express 2013-04-01 11:19:02 -07:00
TJ Holowaychuk
771573be30 Merge pull request #1516 from PatternConsulting/master
Fix Dotted Relative Redirects in Applications Mounted on Nested Paths
2013-04-01 11:18:50 -07:00
TJ Holowaychuk
b7afa4f0f4 Merge pull request #1523 from thomseddon/fix-whitespace
Remove some superfluous trailing whitespace
2013-04-01 11:14:07 -07:00
TJ Holowaychuk
4a1fa58704 refactor req.host 2013-04-01 11:09:23 -07:00
TJ Holowaychuk
6654b7162c Merge branch 'master' of github.com:visionmedia/express 2013-04-01 11:07:05 -07:00
TJ Holowaychuk
f26a3cc806 Merge pull request #1564 from cdauth/master
Consider X-Forwarded-Host if proxy is trusted
2013-04-01 11:06:39 -07:00
Josh Dague
57e48c4767 Possible fix for #1557, allows routes to be created using literal regexes across V8 contexts. Removes all uses of instanceof. 2013-04-01 14:03:32 -04:00
TJ Holowaychuk
66d9a4ad43 Merge branch 'master' of github.com:visionmedia/express 2013-04-01 11:02:56 -07:00
TJ Holowaychuk
78d9c98187 update connect 2013-04-01 11:02:29 -07:00
Candid Dauth
b686ec1182 Considering X-Forwarded-Host header if proxy is trusted 2013-03-31 01:28:34 +01:00
TJ Holowaychuk
158f452b50 Merge pull request #1534 from lennym/patch-1
Made quotes consistent in generated app.js
2013-03-13 15:43:18 -07:00
TJ Holowaychuk
916acd1dd3 replace 0.6.x travis with 0.10.x 2013-03-12 17:26:24 -07:00
TJ Holowaychuk
b4f612474b Merge pull request #1540 from fern4lvarez/master
Use End-of-line Node constant
2013-03-12 17:24:36 -07:00
fern4lvarez
9a884aa9ee Use End-of-line Node constant 2013-03-12 14:02:31 +01:00
TJ Holowaychuk
db5636199e Merge pull request #1502 from qjcg/app-template-noconfigure
Remove legacy app.configure() method from app template.
2013-03-11 08:59:24 -07:00
Leonard Martin
8211562cf6 Made quotes consistent
One-off use of double quotes aggravated my OCD.
2013-03-07 11:12:22 +00:00
TJ Holowaychuk
9df93d6dec Merge pull request #1533 from shesek/old-viewcallbacks
Removed old references to viewCallbacks
2013-03-06 14:31:45 -08:00
Nadav Ivgi
1e251af8d3 Removed old references to viewCallbacks
Was part of the deprecated locals.use() functionallity
2013-03-07 00:12:50 +02:00
Thom Seddon
eed0f598a0 Remove some superfluous trailing whitespace 2013-03-01 07:47:30 +00:00
TJ Holowaychuk
ec4d4a792a Merge pull request #1519 from yawnt/master
Fix explicit .js on project creation
2013-02-28 12:16:27 -08:00
yawnt
84e745f67c [fix] add .js, fixes haibu compatibility 2013-02-26 18:19:06 +01:00
Michael Ahlers
97edb23dba See comments. 2013-02-24 18:54:17 -05:00
Michael Ahlers
856782c81c Never mind. 2013-02-24 18:47:43 -05:00
Michael Ahlers
a7266392f9 Although unrelated to #1516, this broken test case is causing headaches. (This is a reasonable fix in any case.) 2013-02-24 18:43:19 -05:00
Michael Ahlers
04b0c44bdf Test cases document this. 2013-02-24 18:05:11 -05:00
Michael Ahlers
99c9eecde5 When in Rome… 2013-02-24 18:03:29 -05:00
Michael Ahlers
4d65bbf612 Test cases for pull-request #1516. 2013-02-24 18:01:50 -05:00
Michael Ahlers
956aa0cfff This works as expected, and has limited scope. 2013-02-24 13:40:51 -05:00
Michael Ahlers
d874476f0b Proposal to allow relative redirects for applications that have been mounted at multiple paths. 2013-02-24 13:10:49 -05:00
TJ Holowaychuk
30f9805539 Merge pull request #1513 from killmenot/master
minor typo issue
2013-02-22 08:35:39 -08:00
Alexey Kucherenko
46536dee39 fixed typo 2013-02-22 15:52:42 +04:00
TJ Holowaychuk
24087d94df link to runnable 2013-02-20 09:18:42 -08:00
TJ Holowaychuk
d02df2ebd5 update connect 2013-02-19 15:50:23 -08:00
TJ Holowaychuk
16ba1f62a3 Merge branch 'master' of github.com:visionmedia/express 2013-02-13 10:56:35 -08:00
TJ Holowaychuk
684dd1a3c6 update mkdirp 2013-02-13 10:56:22 -08:00
TJ Holowaychuk
8bcdcfeedd update buffer-crc32 2013-02-13 10:55:55 -08:00
TJ Holowaychuk
3bc372aa33 Merge pull request #1505 from gravis/patch-1
Update Readme.md
2013-02-13 10:54:35 -08:00
Philippe Lafoucrière
fc1c024041 Update Readme.md
Add dependancies status badge.
The badge looks bigger than Travis, because it's using a more recent version:
https://github.com/olivierlacan/shields/
2013-02-13 15:28:31 +01:00
TJ Holowaychuk
89427228d1 typo 2013-02-08 08:42:47 -08:00
Nadav Ivgi
420225f370 inherit settings from parent application using [[Prototype]] 2013-02-08 12:58:07 +02:00
John Gosset
44a3fa6359 Remove legacy app.configure() method from app template. 2013-02-07 11:14:06 -05:00
TJ Holowaychuk
d853c833f0 Release 3.1.0 2013-01-25 20:28:58 -08:00
TJ Holowaychuk
03a796c460 Merge pull request #1478 from ericf/settings-view-engine-test
Add test for "view engine" setting with leading ".".
2013-01-24 08:33:24 -08:00
Eric Ferraiuolo
75e47f2883 Add test for "view engine" setting with leading ".". 2013-01-24 00:55:55 -05:00
TJ Holowaychuk
a4b2e48dfe refactor res.set() array support 2013-01-23 20:31:25 -08:00
TJ Holowaychuk
57cda1578d Merge pull request #1477 from gmethvin/set_array
Allow setting an array of header values in the response
2013-01-23 20:29:17 -08:00
TJ Holowaychuk
6b1d7a94ff Merge branch 'integrate' 2013-01-23 20:21:43 -08:00
TJ Holowaychuk
49abd7bec1 merge 2013-01-23 20:21:36 -08:00
TJ Holowaychuk
0ebebd80fe Merge pull request #1466 from ericf/settings-view-engine
Add full extname support to the "view engine" setting; e.g., ".jade".
2013-01-23 20:17:42 -08:00
TJ Holowaychuk
d157d47c6e add node 0.8.x to travis.yml 2013-01-23 20:16:34 -08:00
TJ Holowaychuk
e3ac2c5b02 change req.subdomain styling back 2013-01-23 20:11:14 -08:00
TJ Holowaychuk
cd54faa4af move "subdomain offset" defaulting to config 2013-01-23 20:10:29 -08:00
TJ Holowaychuk
5beb1c4e30 Merge pull request #1475 from gmethvin/subdomain_offset
Add subdomain offset setting
2013-01-23 20:09:25 -08:00
Greg Methvin
4031aaa591 Allow setting an array of header values in the response
Make setting multiple header values using an array work as expected.
If the header value is an array, coerce the values to strings instead
of the entire array.

Fixes #1419.
2013-01-22 18:32:22 -08:00
Greg Methvin
ba00e23630 Add subdomain offset setting
Add a setting "subdomain offset" for the app, which can be used to
change the behavior of req.subdomains. This is useful when our "base"
domain contains more than two parts, e.g. example.co.uk, and also
when we are running locally with domains like xxx.local.

The default behavior is still to return all but the last two parts.
2013-01-20 19:27:58 -08:00
TJ Holowaychuk
8beb1f21ef change prev commit to use app.enabled() 2013-01-18 14:38:50 -08:00
TJ Holowaychuk
fa8eec449b use app.get() for x-powered-by setting
see: http://stackoverflow.com/questions/14285050/broke-up-express-app-into-submodules-now-my-custom-x-powered-by-does-not-wor
2013-01-18 14:36:52 -08:00
TJ Holowaychuk
ab75fa048e refactor vhost example 2013-01-14 09:51:56 +01:00
TJ Holowaychuk
bb29da5980 refactor vhost example 2013-01-13 11:32:53 -08:00
Julian Gruber
a4d7b75129 implemented res.location 2013-01-13 16:07:11 +01:00
Eric Ferraiuolo
0fdceb3de3 Add full extname support to the "view engine" setting; e.g., ".jade".
This allows View to support a `defaultEngine` (a.k.a. an app's
"view engine" setting) which contains a ".", for example:

```
app.engine('.jade', jadeEngine);
app.set('view engine', '.jade');
```

This brings View's handling of template filename extensions to parity
with `app.engine()`.

This allows an app's "view engine" setting to be a full extension name,
including the ".".
2013-01-10 21:41:24 -05:00
TJ Holowaychuk
480d0064e1 Merge pull request #1462 from gmethvin/colon_auth
Allow colons in passwords for req.auth
2013-01-09 12:47:29 -08:00
Greg Methvin
17bf04d1ef Allow colons in passwords for req.auth
Passwords in basic auth can contain colons (as per RFC2617), while
usernames cannot, so assume everything after the colon is a password.
This makes req.auth return the correct value if the user uses a colon
in his password.
2013-01-06 03:02:40 -05:00
TJ Holowaychuk
3ab30210a2 Release 3.0.6 2013-01-04 18:52:04 -08:00
TJ Holowaychuk
14fcfdee7e update connect 2013-01-04 18:37:21 -08:00
TJ Holowaychuk
d4e56c1fa2 Merge pull request #1458 from gmethvin/cookie_options
Don't mangle the options object in res.cookie
2013-01-03 12:25:57 -08:00
Greg Methvin
39ee6f8e79 Don't mangle the options object in res.cookie
Make a copy of the cookie options before mutating it to pass to
cookie.serialize. This prevents unexpected things from happening when
we try to use the same options object multiple times.

Also add a test to verify that the options object does not change
after a request is made.
2013-01-03 02:00:15 -05:00
TJ Holowaychuk
8d21f1e45c change router callback check error message
to read:

Error: .get() requires callback functions but got a [object String]
2012-12-29 08:52:33 -07:00
TJ Holowaychuk
618484a4fe Merge pull request #1454 from shtylman/router-http-methods
add http verbs methods to Router
2012-12-28 09:30:20 -08:00
Guillermo Rauch
64a234958a fix jsonp whitespace escape. Closes #1132 2012-12-28 10:24:55 -07:00
Roman Shtylman
e4907ce8e8 add http verbs methods to Router
By having the method verbs available on the router, users can set up
disjoint routers and organized paths easier.

It is now possible to have a .js file export the router.middleware and
attach these paths using an `app.use('/path', middleware)` call. This
means that any routes written in the separate file do not need to have a
full path hardcoded as they can be mounted by the application anywhere.

This is already possible using `router.route(verb, args)` however is
needlessly verbose without this patch.
2012-12-25 16:43:56 -05:00
TJ Holowaychuk
33eaa8329c Release 3.0.5 2012-12-19 13:46:16 -08:00
TJ Holowaychuk
3c4fd57e51 Merge pull request #1451 from aweeks/fix-304-must-not-contain-body
Explicitly remove Transfer-Encoding header from 204 and 304 responses
2012-12-19 13:34:16 -08:00
Alex Weeks
a1e42ac33f Explicitly remove Transfer-Encoding header from 204 and 304 responses
Per RFC 2616 §10.3.6 & §10.2.5 (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html) "The [204/304] response MUST NOT contain a message-body, and thus is always terminated by the first empty line after the header fields."
2012-12-19 10:53:17 -08:00
Thorsten Lorenz
ce7d7bfd8d add throwing when a non-function is passed to a route 2012-12-14 15:06:17 -08:00
TJ Holowaychuk
9bd86cdddc Revert "add 'etag' option"
This reverts commit 6f6eec7d8d.
2012-12-06 15:15:49 -08:00
TJ Holowaychuk
0117464ac2 Release 3.0.4 2012-12-05 17:10:59 -08:00
Max Riveiro
6f6eec7d8d add 'etag' option 2012-12-05 16:49:09 -08:00
TJ Holowaychuk
a4e93c0fb8 update connect 2012-12-05 16:35:44 -08:00
TJ Holowaychuk
e2ad0d3d6e merge 2012-11-21 08:46:36 -08:00
TJ Holowaychuk
763be5e631 Merge pull request #1426 from piscis/master
change crc generator because of license issue
2012-11-21 08:45:42 -08:00
TJ Holowaychuk
c8526932f3 Merge branch 'master' of github.com:visionmedia/express 2012-11-21 08:43:13 -08:00
TJ Holowaychuk
5cf29a3d29 Merge pull request #1425 from gmethvin/encode_text_redirect
Escape URLs in text/plain res.redirect response
2012-11-21 08:42:33 -08:00
Alexander Pirsig
18a3cc03ee use buffer-crc32 module for ETag CRC generator 2012-11-21 12:44:07 +01:00
Greg Methvin
ea5e254c7d Escape URLs in text/plain res.redirect response
Escape the URL printed by res.redirect using URL encoding. This
prevents some browsers (primarily old versions of IE) from attempting
to sniff the Content-Type and evaluate it as HTML, which causes a
cross-site scripting vulnerability.
2012-11-21 02:22:37 -05:00
TJ Holowaychuk
060653bd4c Merge branch 'master' of github.com:visionmedia/express 2012-11-20 14:25:30 -08:00
TJ Holowaychuk
b709009bc9 Release 3.0.3 2012-11-13 09:14:13 -08:00
TJ Holowaychuk
b80d7ec257 update connect 2012-11-13 09:12:47 -08:00
TJ Holowaychuk
ff0384e610 update cookie module 2012-11-13 09:12:32 -08:00
TJ Holowaychuk
ab9c275bde fix cookie max-age
the cookie module we depend on never used to
set this value, however now it does :)
2012-11-13 09:08:37 -08:00
TJ Holowaychuk
c70db96b06 Update examples/cors/index.js 2012-11-08 13:52:20 -08:00
TJ Holowaychuk
1c616e29e2 Merge branch 'master' of github.com:visionmedia/express 2012-11-08 09:20:29 -08:00
TJ Holowaychuk
cb7518435f Merge pull request #1406 from DmitryBochkarev/patch-1
remove connect.static.send import from response.js
2012-11-08 09:20:20 -08:00
TJ Holowaychuk
79f81c0a25 Merge pull request #1408 from Laboratory/master
delete unused variables
2012-11-08 09:20:08 -08:00
TJ Holowaychuk
72b9e48331 Release 3.0.2 2012-11-08 09:15:59 -08:00
TJ Holowaychuk
eba6aa1767 fix .version 2012-11-08 09:15:24 -08:00
Vitaly
534fbdb307 delete unused variables 2012-11-08 17:07:08 +04:00
Dmitry Bochkarev
6b309a4457 remove connect.static.send import from response.js 2012-11-08 12:43:38 +05:00
TJ Holowaychuk
af5e38c31a Update Readme.md 2012-11-05 09:10:34 -08:00
TJ Holowaychuk
4283f38698 add OPTIONS to cors example. Closes #1398 2012-11-04 13:21:55 -08:00
TJ Holowaychuk
2d49c0d1f3 Merge branch 'master' of github.com:visionmedia/express 2012-11-04 12:28:53 -08:00
TJ Holowaychuk
a7ca3817db fix route chaining regression. Closes #1397 2012-11-04 12:28:35 -08:00
TJ Holowaychuk
1f044547ee Release 3.0.1 2012-11-01 17:27:53 -07:00
TJ Holowaychuk
612fc47044 update connect 2012-11-01 17:27:33 -07:00
TJ Holowaychuk
8959ff155b Merge pull request #1388 from shtylman/unused-variables
remove unused variables
2012-10-27 13:10:14 -07:00
Roman Shtylman
dadf57cc8b remove unused variables
Tests and examples with unused variables are unchanged.
2012-10-27 16:04:00 -04:00
TJ Holowaychuk
764b6c61d9 Merge pull request #1387 from valllabh/patch-1
Update Readme.md
2012-10-26 06:44:53 -07:00
vallabh
582dadf787 Update Readme.md
Text alignment in Contributors list
2012-10-26 12:24:01 +05:30
TJ Holowaychuk
12d97169d7 Release 3.0.0 2012-10-23 15:29:20 -07:00
TJ Holowaychuk
c29cfa823d change res.redirect() to utilize a pathname-relative Location again. Closes #1382
nginx does not seem to set Host correctly,
though Location should be relative as per RFC
myself nor anyone else can report a client
that does not handle relative correctly so
this will be fine until then
2012-10-23 14:08:18 -07:00
TJ Holowaychuk
e183a9694e add make clean 2012-10-19 11:47:36 -07:00
TJ Holowaychuk
d6cb449011 add "Basic" check to req.auth 2012-10-19 11:46:46 -07:00
TJ Holowaychuk
7bf4ad30fc add req.auth test coverage 2012-10-19 11:44:44 -07:00
TJ Holowaychuk
b3936b96e5 add cb && cb(payload) to res.jsonp(). Closes #1374 2012-10-16 11:57:37 -07:00
TJ Holowaychuk
44d0625e91 fix view-locals example. Closes #1370
this was from 2x, doesnt need to be there at all
2012-10-15 16:07:56 -07:00
TJ Holowaychuk
c492cde048 Merge branch 'examples' 2012-10-09 19:31:56 -07:00
TJ Holowaychuk
c2fa6cc94d fix route-separation example 2012-10-09 19:31:52 -07:00
TJ Holowaychuk
464608025b refactor ejs example some more 2012-10-09 19:26:55 -07:00
TJ Holowaychuk
d653d2308b refactor ejs example 2012-10-09 19:26:17 -07:00
TJ Holowaychuk
a52b1f121c add EJS title example to auth 2012-10-09 19:21:50 -07:00
TJ Holowaychuk
9edd8be520 remove user footer info from auth example
looks a little weird
2012-10-09 19:20:30 -07:00
TJ Holowaychuk
aa1d47600a fix auth example acceptance tests 2012-10-09 19:19:54 -07:00
sakateka
be7ec8b40e improved ejs Example 2012-10-09 19:16:54 -07:00
sakateka
8e12dd9c17 Checked all the examples 2012-10-09 19:16:54 -07:00
TJ Holowaychuk
fee0f0dce0 Merge branch 'error-handling-routes' 2012-10-09 19:09:21 -07:00
TJ Holowaychuk
0dd80e7b50 refactor routes.error tests 2012-10-09 19:09:12 -07:00
TJ Holowaychuk
78d5b72081 rename a test file 2012-10-09 19:06:23 -07:00
Sean Soong
e0df865401 make application routing callback behave the same as middleware, fix logic and add test code 2012-10-09 19:05:30 -07:00
Sean Soong
2abcbed67a make application routing callback behave the same as middleware 2012-10-09 19:05:30 -07:00
TJ Holowaychuk
02b9d0b2e6 fix express.mime reference, should be connect.mime 2012-10-09 18:59:44 -07:00
TJ Holowaychuk
927e181db7 update connect 2012-10-09 18:56:47 -07:00
TJ Holowaychuk
dc411b3175 Merge pull request #1364 from isaacs/patch-1
package.json: Remove publishConfig field
2012-10-09 08:43:37 -07:00
Isaac Z. Schlueter
1e870f0f0d package.json: Remove publishConfig field
Fixes #1359
2012-10-09 08:14:36 -07:00
TJ Holowaychuk
3cd01598a5 Merge pull request #1355 from lihanli/view-cache-test
set the NODE_ENV to development for the development view cache test
2012-10-06 15:25:07 -07:00
lihan
3b6d683b7f set the NODE_ENV to development for the development view cache test 2012-10-06 17:58:17 -04:00
TJ Holowaychuk
eeef763f6d Merge branch 'master' of github.com:visionmedia/express 2012-10-06 09:58:27 -07:00
TJ Holowaychuk
76d3ec583d move default of "views" out so multiple cwd() calls are not made 2012-10-06 09:58:17 -07:00
TJ Holowaychuk
077d8b9247 Merge pull request #1354 from sakateka/master
examples/auth/app.js
2012-10-05 09:17:18 -07:00
sakateka
92840b9f68 Fixed: notify of a successful auth. 2012-10-05 12:23:11 +04:00
TJ Holowaychuk
bf60d5a041 update connect 2012-09-27 12:39:26 -07:00
TJ Holowaychuk
56ffab045e add backwards compat for res.redirect() status. Closes #1336 2012-09-26 09:07:22 -07:00
TJ Holowaychuk
496ee401d7 Merge branch 'master' of github.com:visionmedia/express 2012-09-26 09:04:35 -07:00
TJ Holowaychuk
f0d5b3b368 remove non-primitive string support for res.send()
kinda silly.. valueOf() before if you happen to use
boxed strings, otherwise it is unfair that dont support
other boxed primitives all over, and quite frankly no one does
2012-09-26 09:04:26 -07:00
TJ Holowaychuk
88072a56ea refactor 2012-09-26 09:01:55 -07:00
TJ Holowaychuk
0d3a637389 add support for res.json() to retain previously defined Content-Types. Closes #1349 2012-09-26 09:00:52 -07:00
TJ Holowaychuk
dc44f3c226 Update Readme.md 2012-09-25 13:55:57 -07:00
TJ Holowaychuk
1029b0b97f adjust locals tests 2012-09-25 08:45:09 -07:00
TJ Holowaychuk
84f8228b8c update send 2012-09-19 11:37:46 -07:00
TJ Holowaychuk
968e8f0121 Release 3.0.0rc5 2012-09-18 11:48:20 -07:00
TJ Holowaychuk
9eb1da4568 update connect 2012-09-18 11:44:50 -07:00
TJ Holowaychuk
315e79e9f0 add redis search example 2012-09-18 09:31:12 -07:00
TJ Holowaychuk
363d0d4f41 Merge branch 'master' of github.com:visionmedia/express 2012-09-13 09:52:46 -07:00
TJ Holowaychuk
5ac631a270 add "x-powered-by" setting 2012-09-13 09:52:35 -07:00
TJ Holowaychuk
75fc882001 Merge pull request #1319 from pyrotechnick/patch-1
typo
2012-09-04 12:50:46 -07:00
Nicholas Kinsey
d7cb213eeb Update lib/application.js
typo: http -> https
2012-09-05 05:20:37 +10:00
TJ Holowaychuk
568e0d297a add "application/octet-stream" redirect Accept test case. Closes #1317 2012-09-03 16:17:49 -07:00
TJ Holowaychuk
8edf358739 refactor res.format(), dont pass "default" to req.accepts() 2012-09-03 16:16:46 -07:00
TJ Holowaychuk
40be3ed05d update connect dep 2012-09-03 14:49:46 -07:00
TJ Holowaychuk
2c174d6b3b add app.router to static-files example 2012-09-03 08:54:39 -07:00
TJ Holowaychuk
60ee465bf7 add static-files example
point people here if they have
problems with serving static files
2012-09-03 08:52:53 -07:00
TJ Holowaychuk
51210d6b95 Release 3.0.0rc4 2012-08-30 22:13:38 -07:00
TJ Holowaychuk
a6caa267bd add res.jsonp(). Closes #1307
this also removes the jsonp
2012-08-30 09:29:43 -07:00
TJ Holowaychuk
cdb3e9dc0d fix etag quoting. Closes #1310 2012-08-30 08:49:48 -07:00
TJ Holowaychuk
f2f09767fb add etag util 2012-08-30 08:27:57 -07:00
TJ Holowaychuk
eec31d7126 fix acceptance tests 2012-08-29 10:47:29 -07:00
TJ Holowaychuk
3c5ad753b6 add "verbose errors" option to error-pages example 2012-08-29 10:46:52 -07:00
TJ Holowaychuk
dd338b5567 Merge pull request #1309 from nickjj/patch-1
fix error-pages 404 status
2012-08-29 10:42:42 -07:00
nickjj
1b15af713c fix error-pages 404 status 2012-08-29 14:31:13 -03:00
TJ Holowaychuk
89c5affc3b fix jsonp callback char restrictions 2012-08-28 18:11:49 -07:00
TJ Holowaychuk
2bba69f633 remove old OPTIONS default response
relatively useless since its so non-informative,
let me know if anyone has an objection to this,
i think its best to define these for your API
2012-08-28 17:24:52 -07:00
TJ Holowaychuk
4403f136b7 add another route example to express(1) so people are not so confused 2012-08-28 16:18:00 -07:00
TJ Holowaychuk
f7c1c638bb add some comments to error-pages example 2012-08-28 10:28:58 -07:00
TJ Holowaychuk
f2d7bbe0e9 change jsonp callback default to false. Closes #1304 2012-08-28 09:08:41 -07:00
TJ Holowaychuk
87468cffce update connect dep 2012-08-21 19:09:18 -07:00
TJ Holowaychuk
3f7e3a714e drop to assert() for less crazy error message 2012-08-16 10:14:05 -07:00
TJ Holowaychuk
38a9caf159 update send 2012-08-16 10:08:55 -07:00
TJ Holowaychuk
500c8ab4b3 docs 2012-08-14 04:14:37 -07:00
TJ Holowaychuk
c4ad97d555 add redis online user activity tracking example 2012-08-14 04:13:55 -07:00
TJ Holowaychuk
b96401ac83 Release 3.0.0rc3 2012-08-13 20:23:59 -07:00
TJ Holowaychuk
32a5c9cba5 Merge pull request #1286 from tnydwrds/fix-signed-cookie-prefix
Fix signed cookie prefix
2012-08-13 20:21:36 -07:00
Tony Edwards
0217e6ce96 Fix signed cookie prefix
Update res.cookie to prefix signed cookies with 's:'
2012-08-13 20:01:17 -07:00
TJ Holowaychuk
6bebe0837f refactor res.render() to prevent clobbering "locals" 2012-08-11 15:04:54 -07:00
TJ Holowaychuk
ff1c6f0cfa rename multipart app.js to index.js 2012-08-09 20:08:03 -07:00
TJ Holowaychuk
8ac3e80bf0 Merge branch 'master' of github.com:visionmedia/express 2012-08-09 10:15:27 -07:00
TJ Holowaychuk
3923ec89f7 remove route-loading example
using vm for this is lame
2012-08-09 10:15:12 -07:00
TJ Holowaychuk
fd8ca32ab2 Merge pull request #1273 from ritch/patch-1
Removed extraneous require('http')
2012-08-09 08:46:23 -07:00
Ritchie Martori
ba2f66d765 Removed extraneous require('http') 2012-08-08 17:51:04 -07:00
TJ Holowaychuk
056c840a06 update connect dep 2012-08-07 09:10:40 -07:00
TJ Holowaychuk
20e8f08cb2 Release 3.0.0rc2 2012-08-03 13:32:53 -07:00
TJ Holowaychuk
bac0c64633 escape res.redirect() link 2012-08-02 19:41:37 -07:00
TJ Holowaychuk
48923055eb docs 2012-08-01 13:18:30 -07:00
TJ Holowaychuk
0f20a5e06a add CORS example 2012-08-01 13:17:46 -07:00
TJ Holowaychuk
56bfb9249f Merge branch 'master' of github.com:visionmedia/express 2012-07-31 20:51:07 -07:00
TJ Holowaychuk
5ed1544cab remove generated docs 2012-07-31 20:50:52 -07:00
TJ Holowaychuk
e5c7be9364 Merge pull request #1250 from silvinci/1249-mvc-boot.js-fix-rc
Fixed double inclusion of methods in mvc example
2012-07-26 12:53:06 -07:00
Jan Buschtöns
73ce9d028c Line 40 removed. Fixed! 2012-07-26 21:46:22 +02:00
TJ Holowaychuk
75debbe5bc update connect dep 2012-07-25 09:26:20 -07:00
TJ Holowaychuk
5f33d89ea5 fix vhost example 2012-07-24 15:41:12 -07:00
TJ Holowaychuk
42fd29efe8 deprecate .createServer() & remove old stale examples 2012-07-24 15:40:05 -07:00
TJ Holowaychuk
2d91eac811 Release 3.0.0rc1 2012-07-24 13:32:49 -07:00
TJ Holowaychuk
a50f02e87d update cookie dep 2012-07-24 13:30:44 -07:00
TJ Holowaychuk
214f913b0c merge 2012-07-24 13:28:13 -07:00
TJ Holowaychuk
1021c86300 update connect dep 2012-07-24 13:25:50 -07:00
TJ Holowaychuk
386516815a Merge branch 'master' of github.com:visionmedia/express 2012-07-24 09:57:00 -07:00
TJ Holowaychuk
d5e5647bba fix express(1) -h flag, use -H for hogan. Closes #1245 2012-07-24 09:56:48 -07:00
TJ Holowaychuk
a861ea7eaf Merge pull request #1243 from saintedlama/master
Fixes path joining in app stub generator on win32 systems
2012-07-24 08:46:11 -07:00
TJ Holowaychuk
cb844132e6 Merge pull request #1244 from RubenVerborgh/master
EventEmitter memory leak with successful sendfile
2012-07-24 08:36:53 -07:00
Ruben Verborgh
8050308706 Remove socket error handler if file was sent successfully. 2012-07-24 11:57:02 +02:00
Christoph Walcher
e79f72bf88 Fixes path joining in win32 systems 2012-07-24 07:18:16 +02:00
TJ Holowaychuk
07b6c9f563 update connect dep 2012-07-23 11:35:54 -07:00
TJ Holowaychuk
8f4e61a474 fix res.render docs 2012-07-20 17:22:21 -07:00
TJ Holowaychuk
54d37c60f5 add more examples to view-locals 2012-07-18 10:41:07 -07:00
TJ Holowaychuk
a93d375acc add res.redirect("//foo.com") support 2012-07-18 09:29:11 -07:00
TJ Holowaychuk
d66f0e5eb9 change res.redirect() to use scheme-relative urls 2012-07-18 09:07:21 -07:00
TJ Holowaychuk
e84db12783 update send dep 2012-07-16 19:27:53 -07:00
TJ Holowaychuk
1ad2ecefe8 Release 3.0.0beta7 2012-07-16 09:25:03 -07:00
TJ Holowaychuk
08b68ec8cd udpate connect dep 2012-07-16 09:23:40 -07:00
TJ Holowaychuk
48be9233d8 add res.download() content-disposition on error removal test 2012-07-13 09:24:09 -07:00
TJ Holowaychuk
a512d9b47d Release 3.0.0beta6 2012-07-13 09:19:24 -07:00
TJ Holowaychuk
62234cc106 clean up package.json 2012-07-13 09:00:26 -07:00
TJ Holowaychuk
ab61837885 change res.sendfile() to use send() module 2012-07-13 08:58:40 -07:00
TJ Holowaychuk
7a5041bf9c keywords 2012-07-12 12:51:29 -07:00
TJ Holowaychuk
4d219135b2 update connect dep 2012-07-12 12:03:21 -07:00
TJ Holowaychuk
26eeb64640 add err.view property for view errors. Closes #1226 2012-07-11 08:45:37 -07:00
riadh
5426eb0b62 add "jsonp callback name" setting 2012-07-06 08:53:31 -07:00
TJ Holowaychuk
b9e32ec2c4 styling 2012-07-06 08:15:28 -07:00
TJ Holowaychuk
32b8613708 fix matchRequest tests 2012-07-06 08:14:53 -07:00
TJ Holowaychuk
90eddb3439 dont .toLowerCase() twice 2012-07-06 08:12:47 -07:00
TJ Holowaychuk
accd6180c1 rename matchReq -> matchRequest 2012-07-06 08:12:33 -07:00
TJ Holowaychuk
e770b674ff Merge pull request #1212 from riadhchtara/Issue944
issue#944 : Changing Router#match() signature
2012-07-06 08:08:11 -07:00
TJ Holowaychuk
4f7c4d1051 remove app.locals.use and res.locals.use
there are a few reasons for this:

  a) less API, simpler implementation ...
  b) difficult to inherit cleanly from subapps
  c) effectively the same as parallelized middleware (use connect-parallel for example)

lastly this api in a sense promotes some obscure uses since
they may be scattered throughout rather than explicitly
given to specific routes or used globally as middleware etc
2012-07-05 18:46:19 -07:00
TJ Holowaychuk
78845e7d23 fix app.locals.use() when mounting apps 2012-07-05 18:31:02 -07:00
TJ Holowaychuk
93f1cecc92 update connect dep 2012-07-05 09:43:24 -07:00
riadh
8ccd89f6ad Update Issue944 2012-07-05 13:32:33 +03:00
riadh
0a210cce7a fix to test 2012-07-04 18:51:48 +02:00
riadhchtara
f110248462 Issue 944:
Changing Router#match() signature from (req[, i]) to (method, url[, i]), and making it public
2012-07-04 13:19:40 +02:00
TJ Holowaychuk
96e4014a70 Replace res.send() with res.send = require("response-send") 2012-07-03 21:09:17 -07:00
TJ Holowaychuk
2173d00829 whitespace ocd 2012-07-03 13:57:40 -07:00
riadh
3827f5ef8b tests for issues 1115 fix for utils 2012-07-03 13:56:21 -07:00
riadh
73bed61afa * immediately after :param would become not greedy 2012-07-03 13:56:21 -07:00
TJ Holowaychuk
ee89ff5026 Release 3.0.0beta5 2012-07-03 10:20:19 -07:00
TJ Holowaychuk
8df9e745d5 Merge branch 'master' of github.com:visionmedia/express 2012-07-03 09:39:52 -07:00
TJ Holowaychuk
c76e954504 upgrade connect dep 2012-07-03 09:30:53 -07:00
TJ Holowaychuk
136f054614 Merge pull request #1202 from strk/make_check
Add "make check" support.
2012-07-02 11:41:09 -07:00
Sandro Santilli
e9a4b4f8ff Add "make check" support.
This is to follow GNU coding stadards. See:
www.gnu.org/prep/standards/html_node/Standard-Targets.html
2012-07-02 15:45:33 +02:00
TJ Holowaychuk
5415c98ff9 add route-map tests 2012-06-30 12:18:32 -07:00
TJ Holowaychuk
39efa452fc Added route-map example 2012-06-29 09:01:06 -07:00
TJ Holowaychuk
bddcdee3fe docs 2012-06-27 13:58:35 -07:00
TJ Holowaychuk
2e8d44b444 docs 2012-06-27 13:36:12 -07:00
TJ Holowaychuk
70d68419b0 Added res.json(obj, status) support back for BC 2012-06-27 13:34:53 -07:00
TJ Holowaychuk
26fab2a27d update auth example to utilize cores pbkdf2 2012-06-27 13:20:39 -07:00
TJ Holowaychuk
0f5560eebd updated tests to use "supertest" 2012-06-26 17:14:07 -07:00
TJ Holowaychuk
170dcc2907 Added "methods" dep 2012-06-26 11:38:55 -07:00
TJ Holowaychuk
18d6c78ef4 fixed a test race condition 2012-06-25 12:42:51 -07:00
TJ Holowaychuk
1248f0338b Release 3.0.0beta4 2012-06-25 12:08:22 -07:00
TJ Holowaychuk
b400814d00 Added req.auth
tests to come
2012-06-22 16:25:31 -07:00
TJ Holowaychuk
a934929bb3 update connect dep 2012-06-22 10:48:07 -07:00
TJ Holowaychuk
140efb574c Revert "Added + support to the router"
This reverts commit 6aaa7dc26d.
2012-06-22 08:20:23 -07:00
TJ Holowaychuk
3c0c96114f Added res.send(body, status) support back for backwards compat 2012-06-21 16:37:26 -07:00
TJ Holowaychuk
362c96c8c1 refactor res.redirect() relative check 2012-06-21 08:25:43 -07:00
TJ Holowaychuk
5db3d0f9fc Merge branch 'master' of github.com:visionmedia/express 2012-06-18 09:37:37 -07:00
TJ Holowaychuk
80c814c393 Merge pull request #1182 from langpavel/patch-1
Refactoring: no need for add 'del' and 'all' to methods
2012-06-18 09:37:25 -07:00
TJ Holowaychuk
bf66465937 Merge pull request #1183 from nullfirm/master
Re: [express] add hogan.js template engine for express@3.0 (#1176)
2012-06-17 21:36:24 -07:00
Min-su Ok
72eea7e6cd modify from --hjs to --hogan. 2012-06-18 13:17:51 +09:00
TJ Holowaychuk
8f4cd13c89 docs 2012-06-17 19:00:41 -07:00
Pavel Lang
6556cefc71 Refactoring: no need for add 'del' and 'all' to methods 2012-06-18 04:55:25 +03:00
TJ Holowaychuk
7bfb58920a docs 2012-06-17 18:08:35 -07:00
TJ Holowaychuk
2e324ccf5f docs 2012-06-17 18:08:14 -07:00
TJ Holowaychuk
1a10ee76b3 update range-parser dep 2012-06-17 18:06:04 -07:00
TJ Holowaychuk
619e6349f6 ws 2012-06-17 17:48:52 -07:00
TJ Holowaychuk
b1ff68548f add inline range example 2012-06-17 17:41:28 -07:00
TJ Holowaychuk
376b6c3bad add note about inclusive ranges 2012-06-17 17:37:42 -07:00
TJ Holowaychuk
f4c8a59b17 Added req.range(size) 2012-06-17 17:33:05 -07:00
TJ Holowaychuk
e6129d8ba5 Added res.links(obj) 2012-06-17 16:34:42 -07:00
TJ Holowaychuk
d2baf11b8a docs 2012-06-17 13:21:13 -07:00
TJ Holowaychuk
82b5b12ca7 Added .default() support to res.format() 2012-06-17 13:15:55 -07:00
TJ Holowaychuk
c145ab9b81 Update mkdirp 2012-06-15 16:15:16 -07:00
TJ Holowaychuk
c10223b803 GET / HEAD only for req.fresh 2012-06-15 16:09:32 -07:00
TJ Holowaychuk
1e09b54ad2 update fresh 2012-06-15 16:07:27 -07:00
TJ Holowaychuk
d073e0aeb5 Added 2xx / 304 check to req.fresh 2012-06-15 16:03:20 -07:00
TJ Holowaychuk
ce7293de13 misc 2012-06-15 15:44:44 -07:00
TJ Holowaychuk
108e66c24b Fixed res.send() freshness check, respect res.statusCode 2012-06-15 15:42:46 -07:00
TJ Holowaychuk
f90401b8c0 Release 3.0.0beta3 2012-06-15 11:40:49 -07:00
TJ Holowaychuk
a32e705d49 Merge branch 'master' of github.com:visionmedia/express 2012-06-15 11:39:04 -07:00
TJ Holowaychuk
640cf4ca21 Changed: res.send() always checks freshness 2012-06-15 11:38:51 -07:00
TJ Holowaychuk
442e782692 Merge pull request #1176 from nullfirm/master
add hogan.js template engine for express@3.0
2012-06-15 09:01:01 -07:00
Min-su Ok
0a874ad8b3 add hogan.js template engine for express@3.0 2012-06-14 18:44:53 +09:00
Min-su Ok
18083f0c13 add hogan.js template engine for express@3.0 2012-06-14 18:44:46 +09:00
TJ Holowaychuk
f25aaf11e9 Added another example to content-negotiation 2012-06-13 17:32:44 -07:00
TJ Holowaychuk
9b09257b28 upgrade connect 2012-06-11 09:53:15 -07:00
TJ Holowaychuk
f895516a2c Added fresh dep 2012-06-10 12:21:03 -07:00
TJ Holowaychuk
76aa718b75 update markdown docs 2012-06-08 14:11:52 -07:00
TJ Holowaychuk
0acee67339 Merge branch 'master' of github.com:visionmedia/express 2012-06-08 09:47:56 -07:00
TJ Holowaychuk
4475e335ef mime export test 2012-06-08 09:47:45 -07:00
TJ Holowaychuk
895673141d Fixed: expose connects mime module. Cloases #1165 2012-06-08 09:47:13 -07:00
TJ Holowaychuk
e4cd99ae1c Merge pull request #1164 from danneu/patch-2
Removed extra "of" in `res.set` comment.
2012-06-07 08:52:04 -07:00
Dan Neumann
c39a398d83 Removed extra "of" in res.set comment. 2012-06-07 00:17:45 -05:00
TJ Holowaychuk
2787bd5bf0 Release 3.0.0beta2 2012-06-06 14:46:52 -07:00
TJ Holowaychuk
6aaa7dc26d Added + support to the router 2012-06-06 14:38:22 -07:00
TJ Holowaychuk
ebf60d2340 coerce res.cookie values to strings 2012-06-06 12:34:51 -07:00
TJ Holowaychuk
02d43846f6 fixing cookies for connect 2.3.1 2012-06-06 12:25:14 -07:00
TJ Holowaychuk
8930cd563c update connect dep 2012-06-06 12:00:35 -07:00
TJ Holowaychuk
2b90cd7d51 Added req.host 2012-06-05 19:24:49 -07:00
TJ Holowaychuk
d5fde6a4b9 added test to illustrate req.params as an array 2012-06-05 19:02:28 -07:00
TJ Holowaychuk
99b2e0fa08 refactored req.param() 2012-06-05 18:59:26 -07:00
TJ Holowaychuk
ebcb1ca90e Changed req.param() to check route first
body / query-string taking precedence is a little sketchy
but you should use this method sparingly, think of it
as PHPs $_REQUEST
2012-06-05 18:51:42 -07:00
TJ Holowaychuk
1763b073f9 docs 2012-06-04 09:48:19 -07:00
TJ Holowaychuk
908e467548 docs 2012-06-02 20:04:51 -07:00
TJ Holowaychuk
3c6ad5350b Release 3.0.0beta1 2012-06-01 12:27:19 -07:00
TJ Holowaychuk
0ff3aa4b20 update deps 2012-06-01 12:24:17 -07:00
TJ Holowaychuk
fd42b5c42c mention res.format() callback 2012-06-01 09:15:35 -07:00
TJ Holowaychuk
1311f2ac25 Fixed res.redirect() 406. Closes #1154 2012-06-01 09:14:27 -07:00
TJ Holowaychuk
82a9817061 Release 3.0.0alpha5 2012-05-30 16:48:22 -07:00
TJ Holowaychuk
685eec0149 assertion for req.get() => undefined. Closes #1152 2012-05-30 14:25:43 -07:00
TJ Holowaychuk
910dae16ab misc refactor 2012-05-29 18:51:08 -07:00
TJ Holowaychuk
fd53197b46 Added req.ip tests 2012-05-29 18:46:37 -07:00
TJ Holowaychuk
d84d0b69ef Added req.ip 2012-05-29 18:46:07 -07:00
TJ Holowaychuk
b694ba27be Changed: dont reverse req.ips
parse them as-is. im impartial about
the ordering but this spares some CPU. if you
prefer the other way let me know
2012-05-29 18:41:00 -07:00
TJ Holowaychuk
e3cbac2d77 Fixed setting check for req.ips 2012-05-29 18:36:46 -07:00
TJ Holowaychuk
bbaa295ee2 Merge branch 'master' of github.com:visionmedia/express 2012-05-27 11:53:06 -07:00
TJ Holowaychuk
1150a88001 Added { signed: true } option to res.cookie() 2012-05-27 11:51:32 -07:00
TJ Holowaychuk
58cfd60000 moved executable css middleware lower 2012-05-21 20:40:49 -03:00
TJ Holowaychuk
fcf268742d update commander 2012-05-16 21:34:29 -03:00
TJ Holowaychuk
30d71c8f8f ocd 2012-05-14 08:49:37 -07:00
TJ Holowaychuk
c3f9398b12 Merge pull request #1135 from adrianolaru/jade-default-doctype
Changed jade default doctype to html5
2012-05-12 06:32:38 -07:00
Adrian Olaru
f1ac6ab764 changed jade default doctype to html5 2012-05-12 16:19:02 +03:00
TJ Holowaychuk
d6ca5f71bc Added test for res.sendfile() express.static() options 2012-05-10 18:00:41 -07:00
TJ Holowaychuk
cdca9cf88f Added res.download() body test 2012-05-10 17:15:50 -07:00
TJ Holowaychuk
5840b42f4a Added res.download() tests 2012-05-10 17:11:43 -07:00
TJ Holowaychuk
a5be68b5b2 refactored res.get() tests 2012-05-10 13:59:27 -07:00
TJ Holowaychuk
9fda13bc25 Added url rewriting test 2012-05-10 13:13:03 -07:00
TJ Holowaychuk
125dd7a594 Prepared release 3.0.0alpha4 2012-05-09 15:18:21 -07:00
TJ Holowaychuk
df2584cc3b Added: allow [] in jsonp callback. Closes #1128 2012-05-09 09:39:52 -07:00
TJ Holowaychuk
4de95c0e7b connect 2.2.2 2012-05-07 13:58:17 -07:00
TJ Holowaychuk
9ed1f2a446 Removed blog example
need a better one
2012-05-07 12:52:56 -07:00
TJ Holowaychuk
833a4873a4 misc refactor of blog example 2012-05-07 12:44:03 -07:00
TJ Holowaychuk
6ca1807372 Merge branch 'master' of github.com:visionmedia/express 2012-05-07 12:01:19 -07:00
TJ Holowaychuk
9da3e9ccc7 Merge pull request #1127 from benatkin/template-port-from-env
get port from env in template (fix for #1118)
2012-05-07 11:59:32 -07:00
Ben Atkin
5f65c36171 use get() with single argument to read setting vars 2012-05-07 12:51:41 -06:00
Ben Atkin
d64bb2f886 use process.env.PORT. fix for #1118 2012-05-06 23:49:06 -06:00
TJ Holowaychuk
fc179c8fc3 Prepared release 3.0.0alpha3 2012-05-04 17:19:27 -07:00
TJ Holowaychuk
8235af47fe Merge pull request #1124 from pyrotechnick/patch-1
path.existsSync is deprecated. It is now called `fs.existsSync`.
2012-05-04 08:59:10 -07:00
Nicholas Kinsey
908f3da3da path.existsSync is deprecated. It is now called fs.existsSync. 2012-05-05 00:32:53 +10:00
TJ Holowaychuk
64aac199de any engine 2012-05-03 17:33:09 -07:00
TJ Holowaychuk
503c45840f ws 2012-05-03 09:35:27 -07:00
TJ Holowaychuk
6f102ff40f Added view-locals example 2012-05-03 09:35:14 -07:00
TJ Holowaychuk
6e26a8d366 fixed two res.locals.use() tests 2012-05-03 08:45:07 -07:00
TJ Holowaychuk
d9aea70ccc removed file heading comments 2012-05-03 08:43:42 -07:00
TJ Holowaychuk
dd33ef2eb6 Added res.locals.use(). Closes #1120 2012-05-03 08:42:18 -07:00
TJ Holowaychuk
f3a32f2e29 Changed: moved static() in generated apps below router 2012-05-02 19:05:47 -07:00
TJ Holowaychuk
1a3e40d818 Changed: res.send() only set ETag when not previously set 2012-05-02 16:20:35 -07:00
TJ Holowaychuk
18cdb3d845 Added public app.routes. Closes #887
keep things simple for now :)
2012-05-02 16:19:41 -07:00
TJ Holowaychuk
0fca62c037 misc refactoring 2012-05-02 15:59:48 -07:00
TJ Holowaychuk
e9cd82b72d more * tests 2012-05-02 15:52:26 -07:00
TJ Holowaychuk
4d9ad21047 refactored * routing test 2012-05-02 15:49:38 -07:00
TJ Holowaychuk
1cc2dc7150 debug() originalUrl in router 2012-05-01 16:25:10 -07:00
TJ Holowaychuk
3dc88b2c0c refine express(1) generated stylus middleware 2012-04-30 17:54:16 -07:00
TJ Holowaychuk
53f1ffb4e7 ocd 2012-04-30 14:51:04 -07:00
TJ Holowaychuk
579a1be7c8 Added res.send() If-None-Match test 2012-04-28 20:02:38 -07:00
TJ Holowaychuk
c0a68fcd0d Added Buffer ETag support to res.send() 2012-04-28 20:00:30 -07:00
TJ Holowaychuk
b79853e9bd updated crc with buffer patch 2012-04-28 19:50:36 -07:00
TJ Holowaychuk
f86838ceab connect 2.2.1 dep 2012-04-28 10:20:00 -07:00
TJ Holowaychuk
809e0b8c92 merged 2012-04-27 10:46:27 -07:00
TJ Holowaychuk
a58e3deac2 Added conditional-GET support to res.send() 2012-04-27 10:44:39 -07:00
TJ Holowaychuk
430699c082 more benchmarks 2012-04-26 22:11:35 -07:00
TJ Holowaychuk
b04233981f more benchmarks 2012-04-26 22:09:14 -07:00
TJ Holowaychuk
de10194f33 build status image 2012-04-26 18:46:00 -07:00
TJ Holowaychuk
7c2e1ad0ed .contentType -> .type() in core 2012-04-26 14:32:28 -07:00
TJ Holowaychuk
67ddb429e3 Added: coerce res.set() values to strings
if you use res.get() this can bite you in the ass
if you set an etag to a number for example :)
good times
2012-04-26 13:52:37 -07:00
TJ Holowaychuk
a169cc7119 render bench 2012-04-26 12:36:26 -07:00
TJ Holowaychuk
9719b58575 error/index.js 2012-04-26 04:57:28 -07:00
TJ Holowaychuk
13c18fa363 clean up error example 2012-04-26 04:56:23 -07:00
TJ Holowaychuk
c17ad6ef65 error-pages/index.js 2012-04-26 04:55:24 -07:00
TJ Holowaychuk
2c14d0c966 clean up weird whitespace in error-pages acceptance tests 2012-04-26 04:55:06 -07:00
TJ Holowaychuk
2cd1783613 fixed hello-world 2012-04-26 04:53:56 -07:00
TJ Holowaychuk
06db11cd61 removed old form example 2012-04-26 04:51:48 -07:00
TJ Holowaychuk
125421ec45 removed old github example 2012-04-26 04:51:25 -07:00
TJ Holowaychuk
cc84f40d61 misc 2012-04-26 04:46:37 -07:00
TJ Holowaychuk
c130918135 more mvc acceptance tests 2012-04-26 04:42:22 -07:00
TJ Holowaychuk
babeb4633e make test now runs unit / acceptance tests 2012-04-26 04:41:06 -07:00
TJ Holowaychuk
30167356f2 less verbose example apps when testing 2012-04-26 04:40:04 -07:00
TJ Holowaychuk
441b309959 Fixed req/res proto inheritance 2012-04-26 04:38:33 -07:00
TJ Holowaychuk
b7b032f8e0 test for updating mvc user 2012-04-26 04:34:37 -07:00
TJ Holowaychuk
50f43462ae logger for mvc 2012-04-26 04:32:25 -07:00
TJ Holowaychuk
bd2a972dba fixed mvc example 404 2012-04-26 04:28:29 -07:00
TJ Holowaychuk
3c162ae030 implement "before" middleware for mvc example 2012-04-26 04:23:21 -07:00
TJ Holowaychuk
3c12757d9e more tests 2012-04-26 04:10:57 -07:00
TJ Holowaychuk
fa746cc027 added 404 and 5xx pages to mvc example 2012-04-26 04:08:58 -07:00
TJ Holowaychuk
1e85178c73 started mvc acceptance tests 2012-04-26 04:02:14 -07:00
TJ Holowaychuk
d0bc0ad2ca Added new mvc example 2012-04-26 03:53:49 -07:00
TJ Holowaychuk
c33f1bac08 mounted hw bench 2012-04-26 03:24:42 -07:00
TJ Holowaychuk
58d522d824 restore req/res proto 2012-04-26 03:22:44 -07:00
TJ Holowaychuk
858e4dccdc ws 2012-04-26 03:12:17 -07:00
TJ Holowaychuk
c2054077f4 Release 3.0.0alpha2 2012-04-26 03:10:07 -07:00
TJ Holowaychuk
754dd320ff .npmignore lib-cov 2012-04-26 02:58:29 -07:00
TJ Holowaychuk
a376980a69 update headers 2012-04-25 21:49:43 -07:00
TJ Holowaychuk
cf7d710bc1 refactored res.sendfile() 2012-04-25 21:48:19 -07:00
TJ Holowaychuk
8f8740028c Fixed: use app.get() for all core settings 2012-04-25 21:40:53 -07:00
TJ Holowaychuk
b0e03eb8a8 make expressInit() middleware self-aware 2012-04-25 21:37:10 -07:00
TJ Holowaychuk
929dc703ca unused var 2012-04-25 21:36:30 -07:00
TJ Holowaychuk
18a6bbfd80 docs 2012-04-25 17:59:02 -07:00
TJ Holowaychuk
73092c9898 Perf: memoize parsed urls 2012-04-25 16:12:40 -07:00
TJ Holowaychuk
b739126707 Merge branch 'master' of github.com:visionmedia/express 2012-04-25 16:08:52 -07:00
TJ Holowaychuk
c39cf1ef84 connect 2.2.0 dep 2012-04-25 16:07:43 -07:00
TJ Holowaychuk
861f6baa66 added some middleware to support/app.js 2012-04-25 15:00:49 -07:00
TJ Holowaychuk
25fe426266 more benchmarks 2012-04-25 14:54:21 -07:00
TJ Holowaychuk
85fc586ee5 added make benchmark back 2012-04-25 14:51:45 -07:00
TJ Holowaychuk
2a951e961b Merge pull request #1106 from benedmunds/master
Fixed reference to this.body.length in Post validation error when the body length is less than 10 characters
2012-04-25 10:49:58 -07:00
TJ Holowaychuk
42aeab500b Fixed redis session example 2012-04-25 10:30:56 -07:00
TJ Holowaychuk
808a8a314a Fixed session example. Closes #1105 2012-04-25 10:29:15 -07:00
TJ Holowaychuk
b809041894 refactored res.send() 2012-04-25 09:38:59 -07:00
TJ Holowaychuk
1ddf0c8a42 Merge pull request #1100 from coolony/master
Make string object behave like string literals with res.send
2012-04-25 09:38:19 -07:00
Ben Edmunds
d8caf209e3 Fixed reference to this.body.length in Post validation error when the body length is less than 10 characters. 2012-04-24 15:05:17 -04:00
Pierre Matri
22668555ad Fixed req.send tests for string objects 2012-04-22 14:06:13 +02:00
Pierre Matri
0f585931a4 Make string object behave like string literals with res.send 2012-04-22 13:49:50 +02:00
TJ Holowaychuk
d03386571d alpha install docs 2012-04-19 19:03:25 -07:00
TJ Holowaychuk
72948068e2 try npm publishConfig 2012-04-19 18:51:46 -07:00
TJ Holowaychuk
97808383ed Added client-side data exposing example 2012-04-19 16:03:22 -07:00
TJ Holowaychuk
de6f30042f re-generate docs 2012-04-18 17:42:17 -07:00
TJ Holowaychuk
b5cee82604 doc typo 2012-04-18 17:42:13 -07:00
TJ Holowaychuk
fab3e91973 app.engine() docs 2012-04-18 17:23:54 -07:00
TJ Holowaychuk
c937c797c2 Added docs/express.md makefile target 2012-04-18 17:18:22 -07:00
TJ Holowaychuk
0ddc40ad7f Merge branch 'master' of github.com:visionmedia/express 2012-04-17 20:39:06 -07:00
TJ Holowaychuk
e3f6faa350 removed layout-control example
no longer applies
2012-04-17 20:38:52 -07:00
TJ Holowaychuk
cc69d50c60 remove mvc example
too large to actually be helpful... and annoying
to maintain :)
2012-04-17 20:37:55 -07:00
TJ Holowaychuk
b55eb5acf5 removed format acceptance tests 2012-04-17 20:26:28 -07:00
TJ Holowaychuk
ebabce9982 Fixed route-loading example 2012-04-17 20:26:09 -07:00
TJ Holowaychuk
037d3490ca removed format example 2012-04-17 20:21:05 -07:00
TJ Holowaychuk
ba7bcbb0d6 Fixed cookie-sessions example 2012-04-17 20:20:39 -07:00
TJ Holowaychuk
79ce6eda6f Fixed multipart acceptance test 2012-04-17 20:18:33 -07:00
TJ Holowaychuk
9f7c9cfc4c added grey.png test fixture 2012-04-17 20:16:58 -07:00
TJ Holowaychuk
5dcc4f46db Fixed jade example 2012-04-17 20:15:17 -07:00
TJ Holowaychuk
2f54201774 Merge pull request #1081 from brianloveswords/fix-readme
Add protocol to fix link being interpreted as relative in README.md.
2012-04-16 10:07:13 -07:00
Brian J Brennan
e8eef64601 Add protocol to fix link being interpreted as relative in README.md. 2012-04-16 12:43:51 -04:00
TJ Holowaychuk
27b1b5e3b3 docs 2012-04-16 08:53:16 -07:00
TJ Holowaychuk
5fa2f89542 Added res.header() and req.header() aliases for BC 2012-04-16 08:31:30 -07:00
TJ Holowaychuk
c998b91c09 refactoring 2012-04-15 22:14:52 -07:00
TJ Holowaychuk
5be2395170 Fixed generated express dep. Closes #1078 2012-04-15 22:13:51 -07:00
TJ Holowaychuk
b4cd6bb8f0 removed old route reflection methods 2012-04-15 21:01:33 -07:00
TJ Holowaychuk
7e81cad0bf Added new dox API docs 2012-04-15 21:01:17 -07:00
TJ Holowaychuk
856f3b3be6 removed old docs 2012-04-15 19:42:55 -07:00
TJ Holowaychuk
785ac87846 Added express.createServer() for BC 2012-04-15 19:02:57 -07:00
TJ Holowaychuk
75c29bd42a removed createServer() in readme 2012-04-15 13:25:58 -07:00
TJ Holowaychuk
221a46a396 require express in readme...
some people come to express before anything
else i guess
2012-04-15 11:57:38 -07:00
TJ Holowaychuk
abe5cc7184 populate changelog 2012-04-15 11:40:31 -07:00
TJ Holowaychuk
12ada75cad updated history.md from 2x branch 2012-04-15 11:24:08 -07:00
TJ Holowaychuk
5a74d94558 require package.json for .version in express(1) 2012-04-15 11:23:16 -07:00
TJ Holowaychuk
d1d3f310e9 Release 3.0.0alpha1 2012-04-15 11:21:40 -07:00
TJ Holowaychuk
089a83363f Changed: enable "jsonp callback" as a default 2012-04-15 11:20:25 -07:00
TJ Holowaychuk
c28e6db428 update mkdirp dep 2012-04-15 11:18:38 -07:00
TJ Holowaychuk
05253272cb clarify ejs example 2012-04-13 09:16:16 -07:00
TJ Holowaychuk
12e087820c Added: res.format() sets Vary: Accept 2012-04-12 20:11:15 -07:00
TJ Holowaychuk
8dc001567b removed res.cache()
too specific
2012-04-12 19:46:53 -07:00
TJ Holowaychuk
9af3256f72 added jsonp test 2012-04-11 20:27:21 -07:00
TJ Holowaychuk
cdd333a2e0 connect 2.1.2 dep 2012-04-11 14:35:28 -07:00
TJ Holowaychuk
aa4ec8f3e2 fixed glob example 2012-04-11 13:56:08 -07:00
TJ Holowaychuk
5ea78cf259 ocd 2012-04-11 13:50:41 -07:00
TJ Holowaychuk
600eaea2d1 fixed acceptance tests 2012-04-11 12:49:18 -07:00
TJ Holowaychuk
81b15833f7 connect 2.1.1 dep 2012-04-11 12:03:00 -07:00
TJ Holowaychuk
9abc221559 connect 2.1.0 dep 2012-04-11 11:17:29 -07:00
TJ Holowaychuk
7048be2830 refactoring auth example 2012-04-11 11:17:12 -07:00
TJ Holowaychuk
91eb27513a docs 2012-04-11 10:08:12 -07:00
TJ Holowaychuk
04f0682439 removed old benchmark target from Makefile 2012-04-11 09:57:43 -07:00
TJ Holowaychuk
36bab5408d removed old doc gen stuff from Makefile 2012-04-11 09:57:12 -07:00
TJ Holowaychuk
c483dab4b8 ocd 2012-04-11 09:44:49 -07:00
TJ Holowaychuk
f1d759f279 Merge pull request #1073 from Zoramite/lessMiddleware
Adding support back in for less CSS.
2012-04-11 08:32:45 -07:00
Randy Merrill
4c1afb2984 Making the default case for the dependencies be more dynamic. 2012-04-11 06:54:14 -07:00
Randy Merrill
db9b2bfbe1 Adding support back in for less CSS. 2012-04-11 06:50:45 -07:00
TJ Holowaychuk
377677cf30 Merge branch 'master' of github.com:visionmedia/express 2012-04-10 12:19:51 -07:00
TJ Holowaychuk
24a4e95ffe Changed to allow extname or type/subtype only. Closes #1072 2012-04-10 12:19:34 -07:00
TJ Holowaychuk
8fdd9e967a Merge pull request #1069 from Benjen/patch-1
Updated example usage of res.locals() as it contained an error.
2012-04-05 08:54:16 -07:00
Benjen
acfa6a692e Updated example usage of res.locals() as it contained an error. 2012-04-05 23:37:56 +08:00
TJ Holowaychuk
67ca22b6e4 throw when callback is not given to app.engine() 2012-04-04 12:30:25 -07:00
TJ Holowaychuk
ba413ee98d added another res.redirect() example 2012-04-04 08:43:12 -07:00
TJ Holowaychuk
acc0e934cb ocd 2012-04-02 20:13:50 -07:00
TJ Holowaychuk
1d485840fd ocd 2012-04-02 20:13:31 -07:00
TJ Holowaychuk
dcb147608a ocd 2012-04-02 20:01:13 -07:00
TJ Holowaychuk
ddf24d1fd6 fixed markdown example 2012-04-02 20:00:53 -07:00
TJ Holowaychuk
886d7e6903 Merge pull request #1066 from cpedros/patch-1
Unused require of fs module
2012-04-02 16:00:38 -07:00
TJ Holowaychuk
2079ccbf42 updated signed cookie tests 2012-04-02 16:00:23 -07:00
TJ Holowaychuk
5ec88b0f6c typo 2012-04-02 15:56:58 -07:00
TJ Holowaychuk
b0bcd27124 removed req.signedCookie tests, this is connect 2012-04-02 15:56:40 -07:00
TJ Holowaychuk
4dfee21e91 removed req.cookies tests, this is connect 2012-04-02 15:56:21 -07:00
TJ Holowaychuk
18fa2c9c7d removed debug() for .use()
connect does this now
2012-04-02 15:54:19 -07:00
TJ Holowaychuk
04d43d60b7 added nicer error messages for failed view lookup. Closes #1065 2012-04-02 15:47:10 -07:00
Pero Pejovic
419731ec41 Unused require of fs module 2012-04-02 15:44:06 -07:00
TJ Holowaychuk
082ba88084 tabs -> spaces 2012-04-02 15:41:04 -07:00
TJ Holowaychuk
09a8474521 router: moved params logic to Router#match() 2012-04-02 15:39:20 -07:00
TJ Holowaychuk
6d323d3ff7 added param decoding test 2012-04-02 15:15:05 -07:00
TJ Holowaychuk
c4e003518a Merge branch 'master' of github.com:visionmedia/express 2012-04-02 15:09:51 -07:00
TJ Holowaychuk
9e251d14af Removed Collection 2012-04-02 15:09:39 -07:00
TJ Holowaychuk
9abba7d69a ocd 2012-04-02 15:07:41 -07:00
TJ Holowaychuk
0377540e2d utils: added pathRegexp() 2012-04-02 15:07:25 -07:00
TJ Holowaychuk
e6a15f66fc Merge pull request #1064 from ahizzle/master
(trivial) Give express init middleware function an explicit name
2012-03-30 15:19:14 -07:00
Andy Hiew
1787fd1b52 Trivial: Give the middleware init function an explicit name.
Middleware stack printout before:
    NODE> app.stack
    [ { route: '', handle: [Function: query] },
      { route: '', handle: [Function] },
      { route: '', handle: [Function: favicon] },
      { route: '', handle: [Function: logger] },

    Middleware stack printout after:
    NODE> app.stack
    [ { route: '', handle: [Function: query] },
      { route: '', handle: [Function: expressInit] },
      { route: '', handle: [Function: favicon] },
      { route: '', handle: [Function: logger] },
2012-03-30 16:05:11 -06:00
TJ Holowaychuk
54c3d5c113 reverse req.ips array 2012-03-29 16:39:32 -07:00
TJ Holowaychuk
6d0f9a37a2 req.ipds doesnt need "trust proxy"
not really anyway, if you use this
you better trust it :)
2012-03-29 16:36:36 -07:00
TJ Holowaychuk
60dac4d2ff Merge branch 'master' of github.com:visionmedia/express 2012-03-29 16:27:16 -07:00
TJ Holowaychuk
dd468fbe9a Added req.ips 2012-03-29 16:26:59 -07:00
TJ Holowaychuk
04ecf04832 Added X-Forwarded-Proto support to req.secure 2012-03-29 16:17:44 -07:00
TJ Holowaychuk
6d45616a7a Merge pull request #1062 from shtylman/06d2016ee
remove unused variable
2012-03-29 08:58:48 -07:00
Roman Shtylman
06d2016ee7 remove unused variable from Router.route 2012-03-28 22:43:49 -04:00
TJ Holowaychuk
984bfadcdd Merge pull request #1057 from Skookum/master
Update Connect Version
2012-03-27 08:34:29 -07:00
Jim Snodgrass
f79f3f8b22 update connect version 2012-03-27 12:11:48 -03:00
TJ Holowaychuk
ba570a9842 typo 2012-03-24 11:42:26 -07:00
TJ Holowaychuk
365a98d00f docs 2012-03-24 11:39:47 -07:00
TJ Holowaychuk
4e2677fe2c docs 2012-03-24 11:37:26 -07:00
TJ Holowaychuk
d6d16b7899 Added req.accepts() comma-delimited string support 2012-03-24 11:36:52 -07:00
TJ Holowaychuk
86a9e0803a refactored utils.accepts() 2012-03-24 11:32:28 -07:00
TJ Holowaychuk
fdf96922b5 added res.json() array test to illustrate that it works 2012-03-24 11:13:53 -07:00
TJ Holowaychuk
d396761f76 refactored cookie-sessions example 2012-03-23 18:22:30 -07:00
TJ Holowaychuk
711519361c fixed content-negotiation example 2012-03-23 18:11:12 -07:00
TJ Holowaychuk
e4827b8d89 more docs for req.accepts(arr) 2012-03-23 18:03:19 -07:00
TJ Holowaychuk
7ec7cb94f9 Merge branch 'master' of github.com:visionmedia/express 2012-03-23 17:59:08 -07:00
TJ Holowaychuk
298899d02c Added array support. Closes #1053 2012-03-23 17:58:41 -07:00
TJ Holowaychuk
43b35a4ae0 Added array support. Closes #1053 2012-03-23 17:58:15 -07:00
TJ Holowaychuk
a7a8dcd617 Added note to express(1) for running the app 2012-02-29 16:11:39 -08:00
TJ Holowaychuk
bdf0b26a12 Added node app for npm scripts.start Closes #1032 2012-02-29 16:10:35 -08:00
TJ Holowaychuk
73e87b6a2e connect 2.0 dep 2012-02-27 19:31:27 -08:00
TJ Holowaychuk
ac3d002cb2 added "view cache" in production test 2012-02-26 11:56:49 -08:00
TJ Holowaychuk
ada2d0c627 added app.param() array test 2012-02-26 11:52:23 -08:00
TJ Holowaychuk
286d3a1ff8 added another app.param() test 2012-02-26 11:50:32 -08:00
TJ Holowaychuk
937f01a225 added app.param() tests 2012-02-26 11:46:44 -08:00
TJ Holowaychuk
c9559e03da ignore coverage.html 2012-02-23 21:35:17 -08:00
TJ Holowaychuk
d115798d5b ocd 2012-02-23 21:34:48 -08:00
TJ Holowaychuk
b6ee5fafd0 Added mocha test coverage support 2012-02-23 20:49:50 -08:00
TJ Holowaychuk
533b31237c optimize res.format() 2012-02-23 10:59:54 -08:00
TJ Holowaychuk
812a470122 docs 2012-02-23 10:58:57 -08:00
TJ Holowaychuk
eb3105ef25 Added extname support to res.format(). Closes #1024 2012-02-23 10:58:06 -08:00
TJ Holowaychuk
ffcaa04d2c renamed res.respondTo() to res.format()
since you are not really responding with it,
its basically as switch
2012-02-22 19:59:52 -08:00
TJ Holowaychuk
a47660ba67 refactored res.redirect() with respondTo() 2012-02-22 19:58:36 -08:00
TJ Holowaychuk
e2291184dc changed DEBUG express:routes to express:router 2012-02-22 19:29:24 -08:00
TJ Holowaychuk
4e332452b7 Added req.subdomains 2012-02-22 16:36:13 -08:00
TJ Holowaychuk
e2f43df5e9 refactored app.render() 2012-02-22 09:04:59 -08:00
TJ Holowaychuk
141929cd6e typo 2012-02-21 10:23:20 -08:00
TJ Holowaychuk
ec03968bd4 added test for respondTo() callback args 2012-02-21 09:30:05 -08:00
TJ Holowaychuk
a21435cb05 updated content-negotiation example 2012-02-18 17:37:47 -08:00
TJ Holowaychuk
bdfa6d1fe7 Added: res.respondTo() defaults the content-type 2012-02-18 17:23:02 -08:00
TJ Holowaychuk
b565e258cb Added res.respondTo(obj) 2012-02-18 17:13:40 -08:00
TJ Holowaychuk
892b605ab5 shorten --force desc 2012-02-18 15:35:07 -08:00
TJ Holowaychuk
4d99352526 Merge pull request #1016 from tstrimple/master
Added the ability to force the install of express scaffolding to a non-empty directory.
2012-02-18 15:34:34 -08:00
tstrimple
cbf0eaa429 "Add the ability to force install express to non-empty directory." 2012-02-18 23:00:56 +00:00
TJ Holowaychuk
80e16c8ca3 tweak multipart example 2012-02-18 14:14:09 -08:00
TJ Holowaychuk
0ae024afa8 Merge branch 'integration' 2012-02-18 14:06:45 -08:00
TJ Holowaychuk
73caacbd42 mounting sucks, removing this example 2012-02-18 14:06:41 -08:00
TJ Holowaychuk
b667bda8f2 y u no space? 2012-02-18 14:06:22 -08:00
TJ Holowaychuk
463e38cf67 y u no space? 2012-02-18 14:05:57 -08:00
TJ Holowaychuk
83c8d65e3d styling 2012-02-18 14:05:05 -08:00
TJ Holowaychuk
9548e7d1e2 removed hello world acceptance tests 2012-02-18 14:04:25 -08:00
TJ Holowaychuk
ee290d82d1 fixing acceptance tests 2012-02-18 14:04:11 -08:00
TJ Holowaychuk
b75bb003bd fixed markdown example 2012-02-18 13:54:36 -08:00
TJ Holowaychuk
6c2194fdb4 smaller hello world 2012-02-18 13:52:31 -08:00
TJ Holowaychuk
da61d8b639 fixed github example 2012-02-18 13:52:02 -08:00
TJ Holowaychuk
863ba199f6 stack is always shown 2012-02-18 13:49:08 -08:00
TJ Holowaychuk
161ebb354f removed old flash example 2012-02-18 13:48:32 -08:00
TJ Holowaychuk
1516ebf7f9 misc 2012-02-18 13:46:22 -08:00
TJ Holowaychuk
2820f2227d fixing downloads example 2012-02-18 13:45:44 -08:00
TJ Holowaychuk
a078f5f5c1 docs 2012-02-18 13:41:44 -08:00
TJ Holowaychuk
d0a83053d3 fixed up blog example messages 2012-02-18 13:41:10 -08:00
TJ Holowaychuk
b6bc01abde fixing blog example 2012-02-18 13:28:56 -08:00
TJ Holowaychuk
196a1eb6ad set view engine for auth app 2012-02-18 13:20:23 -08:00
TJ Holowaychuk
593271f536 removed accessLogger from auth example 2012-02-18 13:18:00 -08:00
TJ Holowaychuk
0f24f715ba tweak auth example 2012-02-18 13:16:17 -08:00
Robert Sköld
bb9bfa5618 Cleaned out comments from resource acceptance test. 2012-02-18 13:08:26 -08:00
Robert Sköld
8120a06cd6 Updated resource example with acceptnce test. 2012-02-18 13:08:26 -08:00
Robert Sköld
a153082120 Updated params example with acceptance test. 2012-02-18 13:08:26 -08:00
Robert Sköld
970031e267 Updated multipart example with acceptance test. 2012-02-18 13:08:26 -08:00
Robert Sköld
a819856f3f Updated mounting example with acceptance test. 2012-02-18 13:08:26 -08:00
Robert Sköld
4dbaaa2855 Updated markdown example with acceptance test. 2012-02-18 13:08:26 -08:00
Robert Sköld
0593cf4379 Updated helloworld example with acceptance test. 2012-02-18 13:08:26 -08:00
Robert Sköld
cd0e5dbb4c Updated format example with acceptance test. 2012-02-18 13:08:26 -08:00
Robert Sköld
7cb1c3cabb Updated form example for 3.x (not working as it relies on req.flash()) 2012-02-18 13:08:26 -08:00
Robert Sköld
550b9101b8 Updated error-pages example with acceptance test. 2012-02-18 13:08:26 -08:00
Robert Sköld
9d9564568b Updated error example with acceptance tests. 2012-02-18 13:08:26 -08:00
Robert Sköld
7ea7a53e7c Updated downloads example with acceptance tests. 2012-02-18 13:08:25 -08:00
Robert Sköld
ac387caf21 Added acceptance test for cookies. 2012-02-18 13:08:25 -08:00
Robert Sköld
ad3f1e84aa Updated blog example for Jade inheritence. Passes tests. 2012-02-18 13:08:25 -08:00
Robert Sköld
2432a0dda5 Added acceptance test for blog example. 2012-02-18 13:08:25 -08:00
Robert Sköld
03e5919910 Refactored acceptence/auth. 2012-02-18 13:08:25 -08:00
Robert Sköld
277e35f8c8 Added RegExp support to support/http for asserting the body. 2012-02-18 13:08:25 -08:00
Robert Sköld
0dd5836f3f Updated auth acceptance test style. 2012-02-18 13:08:25 -08:00
Robert Sköld
9290f0d407 Cookie secret is a cookieParser() thing. 2012-02-18 13:08:25 -08:00
Robert Sköld
9bd3ad846e Silence while NODE_ENV=test 2012-02-18 13:08:25 -08:00
Robert Sköld
a8c73649ce Updated auth example for express 3.x. With a test. 2012-02-18 13:08:25 -08:00
TJ Holowaychuk
6368ab49b4 ocd 2012-02-18 12:59:22 -08:00
TJ Holowaychuk
16b6a64ef9 refactored express(1) package.json generation 2012-02-18 12:50:16 -08:00
TJ Holowaychuk
e46431ee0e ws 2012-02-18 12:47:31 -08:00
TJ Holowaychuk
2e4cf0aa5c update mime dep 2012-02-18 12:46:36 -08:00
TJ Holowaychuk
3f8a7f05e8 update commander dep 2012-02-18 12:46:26 -08:00
TJ Holowaychuk
3360613bcd Merge branch 'master' of github.com:visionmedia/express 2012-02-18 12:41:55 -08:00
TJ Holowaychuk
f8a9cbe074 Added req.fresh and req.stale tests. Closes #998 2012-02-18 12:41:24 -08:00
TJ Holowaychuk
15f2e0c899 Merge pull request #1006 from eivindfjeldstad/router
Added support for arrays of paths
2012-02-17 08:42:39 -08:00
Tj Holowaychuk
6518e746c1 removed require "qs" as its no longer used. Closes #1014 2012-02-16 08:17:59 -08:00
Eivind Fjeldstad
38b046d6ad Added test for an array of paths 2012-02-12 16:26:32 +01:00
Eivind Fjeldstad
28d7750eda Added support for arrays of paths 2012-02-12 16:23:21 +01:00
Tj Holowaychuk
e5fc85bddc moved a debug() down 2012-02-09 13:40:33 -08:00
Tj Holowaychuk
2a40571118 Added DEBUG=express:application support 2012-02-09 13:29:21 -08:00
Tj Holowaychuk
f1aa57c57e more debug() 2012-02-09 13:15:45 -08:00
Tj Holowaychuk
0b876ece41 Added DEBUG=express:routes support 2012-02-09 13:12:13 -08:00
Tj Holowaychuk
ca0bd1a0b5 Added "debug" dependency 2012-02-09 12:14:31 -08:00
Tj Holowaychuk
2d31b5df34 Removed "qs" dep, only connect has this now 2012-02-08 12:50:30 -08:00
Tj Holowaychuk
10f7ca0ebf upgrade deps 2012-02-08 12:03:25 -08:00
TJ Holowaychuk
85d6964874 Removed req.header(field) 2012-02-07 08:32:08 -08:00
TJ Holowaychuk
76fd462bcc Removed res.header(field, value) 2012-02-07 08:30:27 -08:00
TJ Holowaychuk
c44f01879f utilize res.set() internally 2012-02-07 08:28:40 -08:00
TJ Holowaychuk
fe27989a69 doc typo 2012-02-07 08:25:40 -08:00
TJ Holowaychuk
b04f3eeede refactored req.xhr 2012-02-07 08:24:58 -08:00
TJ Holowaychuk
6ab61d023f docs 2012-02-07 08:21:32 -08:00
TJ Holowaychuk
4d87efc771 Added "trust proxy" setting 2012-02-07 08:19:30 -08:00
TJ Holowaychuk
e47d368239 update node support docs 2012-02-07 04:55:38 -08:00
TJ Holowaychuk
5b1235addc replaced short contrib list with git-summary(1) output 2012-02-07 04:55:07 -08:00
TJ Holowaychuk
8c2c1240e1 removed old req.get() for now 2012-02-07 04:50:00 -08:00
TJ Holowaychuk
27e696b7b1 Added req.get() alias of req.header() 2012-02-07 04:49:12 -08:00
TJ Holowaychuk
bfba98f532 Removed req.header() defaultValue support 2012-02-07 04:47:51 -08:00
TJ Holowaychuk
8de3ad50b2 refactored res.redirect() with req.protocol() 2012-02-07 04:43:35 -08:00
TJ Holowaychuk
2ba343d2b5 Added req.protocol() 2012-02-07 04:39:10 -08:00
TJ Holowaychuk
ff92afa557 Added "json replacer" and "json spaces" settings. Closes #996 [credit to jed] 2012-02-07 03:30:34 -08:00
Tj Holowaychuk
c3c0fb95a8 backported fix from 2.x for app.all() del method 2012-02-06 10:12:59 -08:00
Tj Holowaychuk
bb56a094bb Added app.all() test 2012-02-06 10:07:49 -08:00
Tj Holowaychuk
2211943170 make express(1) generated deps * 2012-01-31 19:48:38 -08:00
TJ Holowaychuk
4eb8bc0857 Merge pull request #968 from peters/patch-1
Typo
2012-01-18 17:17:40 -08:00
Peter Rekdal Sunde
fa51cb8d63 Typo 2012-01-19 02:14:30 +01:00
Tj Holowaychuk
706dec93a4 keywords 2012-01-17 09:51:49 -08:00
Tj Holowaychuk
7a32920448 Merge branch 'master' of github.com:visionmedia/express 2012-01-17 09:51:39 -08:00
Tj Holowaychuk
57a3899c1d removed connect-form dev dep 2012-01-17 09:51:27 -08:00
Tj Holowaychuk
374d159e0e update dependencies 2012-01-17 09:49:02 -08:00
TJ Holowaychuk
4f5a41b84f removed connect-form dep 2012-01-16 20:16:08 -08:00
TJ Holowaychuk
a2f380fdd6 Merge pull request #955 from mmalecki/npm-test
Add `test` script
2012-01-08 17:08:10 -08:00
Maciej Małecki
301085e510 Add test script 2012-01-09 02:03:23 +01:00
TJ Holowaychuk
af5b64a434 Merge pull request #951 from Raynos/patch-1
Gave the router a name.
2012-01-06 07:32:23 -08:00
Raynos
fa088e37bc Gave the router a name. All the other connect middlewares are named functions. 2012-01-06 14:39:37 +00:00
Tj Holowaychuk
613bdc91e5 Merge branch 'master' of github.com:visionmedia/express 2012-01-02 08:28:40 -08:00
TJ Holowaychuk
edfe50e713 Removed app.is() support 2011-12-30 15:10:51 -08:00
TJ Holowaychuk
26fb403ced Fixed req.is() with charsets 2011-12-30 15:04:41 -08:00
TJ Holowaychuk
014fb46449 Added req.is() tests 2011-12-30 15:01:34 -08:00
TJ Holowaychuk
144a88b109 Removed app.match() 2011-12-28 12:09:58 -07:00
TJ Holowaychuk
34c0d2509a test for route index state 2011-12-28 12:07:46 -07:00
TJ Holowaychuk
a12a9e3fd9 tests for Router#match() 2011-12-28 12:03:50 -07:00
TJ Holowaychuk
8df73f3d83 renamed Router#_match() -> match() 2011-12-28 11:57:45 -07:00
TJ Holowaychuk
6dac874ff4 renamed Router#_route() -> route() 2011-12-28 11:55:11 -07:00
TJ Holowaychuk
81d25f6861 Merge branch 'feature/decouple-router' 2011-12-28 11:15:10 -07:00
TJ Holowaychuk
c0c1975da6 decouple Router options. Closes #941 2011-12-28 11:14:57 -07:00
Tj Holowaychuk
dd7af29103 mocha.opts 2011-12-20 17:37:06 -08:00
Tj Holowaychuk
85ea5f67f4 Merge branch 'master' of github.com:visionmedia/express 2011-12-20 13:33:14 -08:00
Tj Holowaychuk
8e3cb6174d added test for res.sendfile() content-type override 2011-12-20 13:32:39 -08:00
TJ Holowaychuk
6c01e9a43a Update bin/express 2011-12-20 08:33:54 -08:00
TJ Holowaychuk
6061670161 Merge pull request #939 from ksato9700/master
EOL style per platform
2011-12-20 08:33:12 -08:00
Ken Sato
7c66db2c45 Change the eol character based on platform type 2011-12-19 22:55:50 -08:00
TJ Holowaychuk
05e95ae55a misc 2011-12-18 07:41:08 -08:00
TJ Holowaychuk
416ad564d0 Added cookie-sessions example 2011-12-17 15:11:52 -08:00
TJ Holowaychuk
55f8f9bc42 added regression test for #847 2011-12-17 13:53:28 -08:00
TJ Holowaychuk
386a9e88b4 removed old tests 2011-12-17 13:43:51 -08:00
TJ Holowaychuk
f6ca25edbe web-service acceptance tests 2011-12-17 12:44:55 -08:00
TJ Holowaychuk
1ea221aa4e fixed an acceptance test 2011-12-17 12:21:42 -08:00
TJ Holowaychuk
d72a6666a1 removed ejs layout.ejs from express(1) 2011-12-17 12:16:52 -08:00
TJ Holowaychuk
b69199f884 fixed express(1) jade tmpl inheritance 2011-12-17 12:15:12 -08:00
TJ Holowaychuk
65042c86a6 removed the use of .include.string() 2011-12-17 12:02:34 -08:00
TJ Holowaychuk
d7dccfd56d removed the use of should.contain() 2011-12-17 12:02:11 -08:00
Tj Holowaychuk
e60f4a5e1e Merge branch 'master' of github.com:visionmedia/express 2011-12-16 14:44:35 -08:00
Tj Holowaychuk
fa3d4cbb23 move express(1) static() up
so people dont get confused when it receives sessions
2011-12-16 14:44:12 -08:00
TJ Holowaychuk
56d303ec09 Merge pull request #934 from siong1987/keywords
update keywords for search.npmjs.org
2011-12-15 09:10:09 -08:00
Teng Siong Ong
4600548b4d update keywords for search.npmjs.org 2011-12-15 11:06:08 -06:00
Tj Holowaychuk
7d24c2ba40 Fixed app.set() with undefined 2011-12-15 09:00:39 -08:00
Tj Holowaychuk
b4ce57caec spec 2011-12-09 16:14:23 -08:00
Tj Holowaychuk
43c09b2eaa ejs test 2011-12-09 16:07:15 -08:00
Tj Holowaychuk
b32fd0bee4 * dev deps 2011-12-09 15:55:41 -08:00
Tj Holowaychuk
3b6e96efa9 ejs tests 2011-12-09 15:29:09 -08:00
Tj Holowaychuk
29ef828b9c added first batch of acceptance tests for examples 2011-12-09 15:21:10 -08:00
Tj Holowaychuk
39ae443433 semi 2011-12-09 15:09:14 -08:00
Tj Holowaychuk
c30c2f8d38 typo 2011-12-09 14:32:35 -08:00
Tj Holowaychuk
5757f875f2 Added X-Forwarded-Proto support to res.redirect(). Closes #927 2011-12-08 12:45:46 -08:00
Tj Holowaychuk
e49c482a3f req.body takes precedence 2011-12-07 08:41:22 -08:00
Tj Holowaychuk
a592d6c1aa misc 2011-12-06 16:53:05 -08:00
Tj Holowaychuk
88f154fecd Added support for .. in redirects as well 2011-12-06 16:44:15 -08:00
Tj Holowaychuk
d7dfe3e812 expose router 2011-12-06 16:36:52 -08:00
Tj Holowaychuk
489265e3ca Added support for ./ in redirects 2011-12-06 16:32:48 -08:00
Tj Holowaychuk
3212a70a0c misc 2011-12-06 16:21:04 -08:00
Tj Holowaychuk
1cda0a96ca Removed redirect "home" 2011-12-06 16:13:42 -08:00
Tj Holowaychuk
83fb9f7548 removed a test 2011-12-06 16:12:42 -08:00
Tj Holowaychuk
43295289bf Removed app.redirect() 2011-12-06 16:04:06 -08:00
Tj Holowaychuk
0f72ca823b docs 2011-12-06 15:58:56 -08:00
Tj Holowaychuk
41786bc776 misc 2011-12-06 15:54:25 -08:00
Tj Holowaychuk
cca5d7ebbf more tests 2011-12-06 15:53:17 -08:00
Tj Holowaychuk
43c8764465 Added relative redirect support. Closes #920 2011-12-06 15:50:08 -08:00
Tj Holowaychuk
a1e325a2d9 use app.path() in res.redirect() 2011-12-06 15:40:17 -08:00
Tj Holowaychuk
17a831e32f app.path() 2011-12-06 15:36:44 -08:00
Tj Holowaychuk
2a13db3bb8 Added favicon() to express(1) generated app 2011-12-05 20:01:25 -08:00
Tj Holowaychuk
eb5a73538a express(1) errorHandler() only in development
no longer acts as production error handling,
just implement that with custom middleware
2011-12-05 19:41:05 -08:00
Tj Holowaychuk
006a6c787b Added exports.{request,response} 2011-11-28 11:48:27 -08:00
Tj Holowaychuk
c3d96df0f0 Added req.route test 2011-11-24 17:59:00 -08:00
Tj Holowaychuk
15e7218bc4 tests for app.get() inheritance. Closes #904 2011-11-24 15:27:09 -08:00
Tj Holowaychuk
28f32b9b8e Removed req.notify() 2011-11-24 15:12:25 -08:00
Tj Holowaychuk
1d0a56b673 removed uses of "root" 2011-11-24 14:33:23 -08:00
Tj Holowaychuk
ad1424681b comment some tests 2011-11-24 14:31:42 -08:00
Tj Holowaychuk
87b991c076 removed "root" setting
screw it, no one will understand anyway
2011-11-24 14:27:28 -08:00
Tj Holowaychuk
5d593f26af .parent tests 2011-11-24 14:04:37 -08:00
Tj Holowaychuk
853c270fce more mounting tests 2011-11-24 13:51:04 -08:00
Tj Holowaychuk
fcf34e0587 adding some mounting tests 2011-11-24 13:49:27 -08:00
Tj Holowaychuk
b6611c8a3b Added: emit "mount" event on the app being mounted 2011-11-24 13:24:34 -08:00
Tj Holowaychuk
aab08d774b Removed implementation of app.mounted(callback) 2011-11-24 13:20:10 -08:00
Tj Holowaychuk
321aa52384 Removed app.mounted(callback) 2011-11-24 13:19:53 -08:00
Tj Holowaychuk
1334a74ef1 misc refactoring 2011-11-24 12:50:19 -08:00
Tj Holowaychuk
19e3384bb1 Added test for res.sendfile() with non-GET. Closes #723 2011-11-24 12:34:47 -08:00
Tj Holowaychuk
6ae32fd596 docs 2011-11-24 12:22:59 -08:00
Tj Holowaychuk
4c316ba4ce refactored init middleware into its own file 2011-11-24 12:14:12 -08:00
Tj Holowaychuk
f2719411b7 Added event emitter inheritance test 2011-11-24 12:10:08 -08:00
Tj Holowaychuk
11faf6684e Added travis.yml. Closes #903 2011-11-24 11:58:34 -08:00
Tj Holowaychuk
547d18ce46 merged 2011-11-23 10:39:02 -08:00
Tj Holowaychuk
f183a81289 update mocha 2011-11-22 17:42:21 -08:00
TJ Holowaychuk
e44c874cab Fixed parseQuality(), exclude q=0 2011-11-20 12:54:48 -08:00
TJ Holowaychuk
9c7380efe4 Added req.acceptsLanguage() 2011-11-20 12:53:01 -08:00
TJ Holowaychuk
5e071a2e4b Added req.acceptsCharset() 2011-11-20 12:51:27 -08:00
TJ Holowaychuk
ff9b82c4f6 todo 2011-11-20 12:44:25 -08:00
TJ Holowaychuk
a0d0ac6cff docs 2011-11-20 12:43:06 -08:00
TJ Holowaychuk
b605a5de87 Changed: req.accepts() utilizing utils.accepts() 2011-11-20 12:42:06 -08:00
TJ Holowaychuk
36be2b0688 Added utils.accepts(type, str) 2011-11-20 12:41:12 -08:00
TJ Holowaychuk
376a5da705 Added req.accepts() tests 2011-11-20 12:24:05 -08:00
TJ Holowaychuk
c25258b75c removed irrelevant extending-templates example 2011-11-20 12:17:29 -08:00
TJ Holowaychuk
c685f3a294 docs 2011-11-20 12:16:04 -08:00
TJ Holowaychuk
f63767af0e example error layout 2011-11-20 12:15:47 -08:00
TJ Holowaychuk
4fa9a2e54b fixed error-pages example 2011-11-20 12:13:24 -08:00
TJ Holowaychuk
68bc592a05 fixed error example 2011-11-20 12:03:45 -08:00
TJ Holowaychuk
543fe2f2a4 fixed ejs example 2011-11-20 11:59:10 -08:00
TJ Holowaychuk
be52f38d8f fixed downloads example 2011-11-20 11:43:40 -08:00
TJ Holowaychuk
722a92f374 fixed cookies example 2011-11-20 11:33:06 -08:00
TJ Holowaychuk
d771d06e19 docs 2011-11-20 11:29:08 -08:00
TJ Holowaychuk
a5227191b5 fixed content-negotiation example 2011-11-20 11:28:12 -08:00
TJ Holowaychuk
499d3d6d78 Added req.acceptedCharsets 2011-11-19 22:16:16 -08:00
TJ Holowaychuk
2adf020753 tests 2011-11-19 22:13:07 -08:00
TJ Holowaychuk
e8c373694c Added req.acceptedLanguages 2011-11-19 22:12:09 -08:00
TJ Holowaychuk
a8fd8cb645 Added req.accepted 2011-11-19 22:08:26 -08:00
TJ Holowaychuk
fd06084106 more tests 2011-11-19 21:49:20 -08:00
TJ Holowaychuk
285500488d Added parseAccepts() util 2011-11-19 21:47:22 -08:00
TJ Holowaychuk
29d4ffd089 renamed prev util to parseQuality() 2011-11-19 21:43:48 -08:00
TJ Holowaychuk
fe5efa597b Added utils.parseAccepts(str) 2011-11-19 21:40:12 -08:00
TJ Holowaychuk
b93629a903 updated mocha 2011-11-19 16:02:42 -08:00
Tj Holowaychuk
0c72940933 updated mocha 2011-11-17 07:52:32 -08:00
Tj Holowaychuk
96f5279e3e consider 20ms slow 2011-11-16 14:38:09 -08:00
Tj Holowaychuk
821fa10203 update mocha 2011-11-16 14:35:38 -08:00
Tj Holowaychuk
9082e74971 Added app.listen() as a shortcut for http.createServer(app).listen() 2011-11-11 17:22:25 -08:00
Tj Holowaychuk
7a7d77e7bd Removed toArray() util 2011-11-11 14:30:27 -08:00
Tj Holowaychuk
ce2ec94e96 Added utils.escape(html) test 2011-11-11 14:29:23 -08:00
Tj Holowaychuk
d56e5d6923 Added utils.flatten(arr) tests 2011-11-11 14:27:36 -08:00
Tj Holowaychuk
5221ecc055 utils.isAbsolute() tests 2011-11-11 14:26:43 -08:00
Tj Holowaychuk
6ac2c6f578 Added router next(err) test 2011-11-11 14:02:43 -08:00
Tj Holowaychuk
772b752fa5 Added more route matching tests 2011-11-11 14:01:10 -08:00
Tj Holowaychuk
3c002d08c2 fixed test due to HEAD change 2011-11-11 13:54:12 -08:00
Tj Holowaychuk
2876424240 Added optional app.head() support 2011-11-11 13:53:20 -08:00
Tj Holowaychuk
74a0177ec9 Added app.head() override test 2011-11-11 13:49:35 -08:00
Tj Holowaychuk
da96844e9a Added app.head() test 2011-11-11 13:47:58 -08:00
Tj Holowaychuk
81652c8244 Added app.del() test 2011-11-11 13:46:44 -08:00
Tj Holowaychuk
f17434c95b misc 2011-11-11 13:45:11 -08:00
Tj Holowaychuk
01e854b5d2 Added app.options() test 2011-11-11 13:44:42 -08:00
Tj Holowaychuk
42953c7c44 Fixed default OPTIONS behavior 2011-11-11 13:31:44 -08:00
Tj Holowaychuk
5e56446d26 Changed express.methods to include only those supported by node 2011-11-11 13:25:16 -08:00
Tj Holowaychuk
61652f4ad9 upper-case the name 2011-11-11 13:20:33 -08:00
Tj Holowaychuk
fc1e84941d fixed head 2011-11-11 13:20:06 -08:00
Tj Holowaychuk
953eba0376 Added meta-generated tests for all HTTP methods supported 2011-11-11 13:18:50 -08:00
Tj Holowaychuk
5c032269e3 more tests 2011-11-11 13:04:08 -08:00
Tj Holowaychuk
1322d5a2c1 literal . test 2011-11-11 12:42:52 -08:00
Tj Holowaychuk
114f272906 escaped regexp test 2011-11-11 12:41:13 -08:00
Tj Holowaychuk
1286bbb982 naming capture groups 2011-11-11 12:36:16 -08:00
Tj Holowaychuk
9141c649e7 more tests 2011-11-11 12:34:09 -08:00
Tj Holowaychuk
ff2242da31 tests for * 2011-11-11 12:32:14 -08:00
Tj Holowaychuk
730a419984 param single-segment test 2011-11-11 12:22:21 -08:00
Tj Holowaychuk
25bd7d7997 Added route regexp tests 2011-11-11 12:19:49 -08:00
Tj Holowaychuk
77c9d9207d Renamed "case sensitive routes" to "case sensitive routing"
to match "strict routing"
2011-11-11 12:14:35 -08:00
Tj Holowaychuk
1e77629f1f Added "strict routing" setting tests 2011-11-11 12:13:24 -08:00
Tj Holowaychuk
76f65456ab Added "case sensitive routes" tests 2011-11-11 12:10:38 -08:00
Tj Holowaychuk
26e20e7ae5 more routing tests 2011-11-11 12:06:30 -08:00
Tj Holowaychuk
96217cf3fe optional trailing slash 2011-11-11 12:05:18 -08:00
Tj Holowaychuk
e9c96d8ccd tests for optional capture groups 2011-11-11 12:04:17 -08:00
Tj Holowaychuk
7ae2b968bb more routing tests 2011-11-11 11:54:56 -08:00
Tj Holowaychuk
83ea42afe5 started routing tests 2011-11-11 11:51:09 -08:00
Tj Holowaychuk
16587fcce1 Added req.param() default value test 2011-11-10 16:13:31 -08:00
Tj Holowaychuk
ffded44f32 Added req.param() tests. Closes #885 2011-11-10 16:11:50 -08:00
Tj Holowaychuk
92c5284b80 fixed auto use(app.router) 2011-11-10 16:11:35 -08:00
Tj Holowaychuk
f96102224c refactoring 2011-11-10 15:04:44 -08:00
Tj Holowaychuk
bf87d626eb docs 2011-11-10 15:01:22 -08:00
Tj Holowaychuk
e21a79dc61 Added res.cache() method 2011-11-10 15:00:50 -08:00
Tj Holowaychuk
caec590fe1 Added res.cache(str) 2011-11-10 14:54:23 -08:00
Tj Holowaychuk
61ce6c59c2 misc 2011-11-10 14:48:00 -08:00
Tj Holowaychuk
205a1a14c7 Aded app.locals.use() precedence tests 2011-11-10 14:14:09 -08:00
Tj Holowaychuk
6709ab5f27 jade 0.17.x 2011-11-10 13:55:21 -08:00
Tj Holowaychuk
2d77279c94 Merge branch 'view-signature' 2011-11-10 13:42:14 -08:00
Tj Holowaychuk
e9d7b6fbad Changed template engine signature to engine.__express(path, options, fn). Closes #878 2011-11-10 13:42:08 -08:00
Tj Holowaychuk
3e6171c7ff Fixed express(1) LF -> CRLF for windows. Closes #875 2011-11-10 12:29:49 -08:00
Tj Holowaychuk
04389fd6ff test for invalid cookie signature 2011-11-10 12:20:13 -08:00
Tj Holowaychuk
a47b599048 Added req.signedCookies tests 2011-11-10 12:18:16 -08:00
Tj Holowaychuk
58eddd5ab4 Added res.signedCookie() and tests. Closes #880 2011-11-10 12:14:33 -08:00
Tj Holowaychuk
7ac857acef Added JSON cookie support & tests. Closes #879 2011-11-10 12:04:21 -08:00
Tj Holowaychuk
e27b224933 make sure req/res protos are app-specific 2011-11-10 11:31:38 -08:00
Tj Holowaychuk
4f087df286 Added res proto mutation test 2011-11-10 11:29:35 -08:00
Tj Holowaychuk
87f6f6a3e3 Added app.request test 2011-11-10 11:25:54 -08:00
Tj Holowaychuk
94d1e94cf2 Added app.{request,response} 2011-11-10 11:21:24 -08:00
Tj Holowaychuk
d249868e07 no longer manipulate the req/res protos directly 2011-11-10 11:18:43 -08:00
Tj Holowaychuk
429e48d873 Added app.locals.settings test 2011-11-10 08:36:18 -08:00
Tj Holowaychuk
abb414c702 Added app.locals.use() arity < 3 test 2011-11-10 08:26:36 -08:00
Tj Holowaychuk
8f45dd4190 Added res.render() absolute path tests 2011-11-10 08:24:10 -08:00
Tj Holowaychuk
d9098c5fcd more tests 2011-11-10 08:23:12 -08:00
Tj Holowaychuk
b9dee730a8 Fixed app.render() absolute path support 2011-11-10 08:22:42 -08:00
Tj Holowaychuk
26c62a667f Added app.locals.use() test 2011-11-10 08:19:57 -08:00
Tj Holowaychuk
7d42ad00ff Removed "status" and "charset" options 2011-11-10 07:47:04 -08:00
Tj Holowaychuk
4a5776b513 more res.locals tests 2011-11-09 17:02:55 -08:00
Tj Holowaychuk
f68ba2ef35 refactoring 2011-11-09 16:56:57 -08:00
Tj Holowaychuk
a95a0ab5f9 using connects error code util 2011-11-09 16:27:48 -08:00
Tj Holowaychuk
30911f4a75 Added failing res.sendfile() test for 403 + callback 2011-11-09 16:14:38 -08:00
Tj Holowaychuk
c9f184c8d5 Added res.sendfile() ENOENT test 2011-11-09 16:11:46 -08:00
Tj Holowaychuk
545f1fd07d Added first res.sendfile() callback test 2011-11-09 16:06:12 -08:00
Tj Holowaychuk
2f762265a8 Added forbidden tests 2011-11-09 16:03:42 -08:00
Tj Holowaychuk
7e6d8f39b4 Added res.sendfile() "root" setting test 2011-11-09 15:56:24 -08:00
Tj Holowaychuk
bea74b7711 Fixed res.sendfile() 404s 2011-11-09 15:54:51 -08:00
Tj Holowaychuk
10e8dc57eb added failing res.sendfile() test on 404 2011-11-09 15:51:11 -08:00
Tj Holowaychuk
f7b6dde086 refactored previous commit 2011-11-09 15:41:51 -08:00
Tj Holowaychuk
2fa36fa721 res.sendfile() tests 2011-11-09 15:39:53 -08:00
Tj Holowaychuk
40f8202402 utilize res.headerSent from connect 2011-11-09 15:38:48 -08:00
Tj Holowaychuk
4b0b55c1b7 misc refactoring 2011-11-09 15:33:54 -08:00
Tj Holowaychuk
0e395973c9 Added res.attachment() tests 2011-11-09 15:31:31 -08:00
Tj Holowaychuk
1f53cdb62d Added error in res.render() callback test 2011-11-09 15:21:38 -08:00
Tj Holowaychuk
c32023d8ed Added "charset" option test 2011-11-09 15:17:44 -08:00
Tj Holowaychuk
d2f98940d8 Added status option test 2011-11-09 15:15:55 -08:00
Tj Holowaychuk
536b16c7a9 Added res.render() callback with locals test 2011-11-09 15:11:07 -08:00
Tj Holowaychuk
9bfeae2df1 Added res.render() callback tests 2011-11-09 15:09:47 -08:00
Tj Holowaychuk
4d450ea25e local precedence tests 2011-11-09 15:04:52 -08:00
Tj Holowaychuk
84f01d1e30 Added res.render() tests 2011-11-09 15:00:40 -08:00
Tj Holowaychuk
1a5636b199 case sensitivity test 2011-11-08 20:29:48 -08:00
Tj Holowaychuk
af46df7eae Removed req.isXMLHttpRequest
let me know if you actually use this :)
2011-11-08 20:28:55 -08:00
Tj Holowaychuk
801a1791d6 Added req.xhr tests 2011-11-08 20:28:06 -08:00
Tj Holowaychuk
333cf0b280 Added req.path test 2011-11-08 20:25:34 -08:00
Tj Holowaychuk
52e26697a9 Added index.<engine> render test 2011-11-08 20:22:27 -08:00
Tj Holowaychuk
fdf620b688 more tests 2011-11-08 20:18:07 -08:00
Tj Holowaychuk
66f8ca52d6 Added app.engine() tests 2011-11-08 20:14:53 -08:00
Tj Holowaychuk
f98c1127a6 Added app.render() local precedence test 2011-11-08 20:09:13 -08:00
Tj Holowaychuk
7e352fe28d Added app.render() app.locals test 2011-11-08 20:07:49 -08:00
Tj Holowaychuk
d3b48e2fd5 Added more app.render() tests 2011-11-08 20:06:15 -08:00
Tj Holowaychuk
23159c094d Added app.render() tests 2011-11-08 20:00:03 -08:00
Tj Holowaychuk
2e22887f71 docs 2011-11-08 19:55:41 -08:00
Tj Holowaychuk
c9b04b8be7 Added app.locals(obj) test 2011-11-08 19:54:46 -08:00
Tj Holowaychuk
2c0e13b513 Added res.locals(obj) test 2011-11-08 19:53:22 -08:00
Tj Holowaychuk
2937309f00 Added res.charset tests 2011-11-08 19:46:38 -08:00
Tj Holowaychuk
377056a33c Removed "charset" option 2011-11-08 19:44:16 -08:00
Tj Holowaychuk
f42ce5be2b qs 0.3.2 to fix global var leak 2011-11-08 19:43:12 -08:00
Tj Holowaychuk
ddeee9b6db Added req.query tests 2011-11-08 19:27:09 -08:00
Tj Holowaychuk
6bee32c174 removed a file i didnt mean to add :) 2011-11-08 19:18:25 -08:00
Tj Holowaychuk
11f55a06dd Added app.redirect() tests 2011-11-08 19:17:03 -08:00
Tj Holowaychuk
6a2d6b872b pending 2011-11-08 19:10:09 -08:00
Tj Holowaychuk
d8787867c4 tweak test 2011-11-08 19:01:20 -08:00
Tj Holowaychuk
43d9f6ea17 tweak res.redirect() mount route logic 2011-11-08 18:59:40 -08:00
Tj Holowaychuk
1faba1302f tmp fix 2011-11-08 18:51:15 -08:00
Tj Holowaychuk
55ee0a0934 Added relative redirect test 2011-11-08 18:46:23 -08:00
Tj Holowaychuk
0653f73779 Added res.redirect() content-negotiation tests 2011-11-08 18:41:26 -08:00
Tj Holowaychuk
7a24021dc9 more res.redirect() tests 2011-11-08 18:40:01 -08:00
Tj Holowaychuk
9f2fe94484 Added res.redirect() test 2011-11-08 18:36:27 -08:00
Tj Holowaychuk
a3950b5638 Added maxAge test 2011-11-08 18:33:00 -08:00
Tj Holowaychuk
8c03428279 Added res.cookie() options test 2011-11-08 18:30:48 -08:00
Tj Holowaychuk
f4d7ea386d Added res.cookie() "root" setting test 2011-11-08 18:28:59 -08:00
Tj Holowaychuk
bee0496cb1 Fixed res.cookie() path default 2011-11-08 18:28:22 -08:00
Tj Holowaychuk
5960b90efe Added res.cookie() tests 2011-11-08 18:27:18 -08:00
Tj Holowaychuk
0f2f3d4e29 Fixed res.clearCookie(), default path to "root" setting 2011-11-08 18:25:21 -08:00
Tj Holowaychuk
bc673bef79 Added res.clearCookie() tests 2011-11-08 18:21:08 -08:00
Tj Holowaychuk
3fb7391b97 Added res.set(object) and res.set(field, value) tests 2011-11-08 18:15:31 -08:00
Tj Holowaychuk
442cd7515d Added res.type() test 2011-11-08 18:13:10 -08:00
Tj Holowaychuk
a013ffe547 Added res.json(status, object) test 2011-11-08 17:57:25 -08:00
Tj Holowaychuk
835558229f refactored tests 2011-11-08 17:55:41 -08:00
Tj Holowaychuk
dce23c79a1 Added res.json() tests 2011-11-08 17:54:36 -08:00
Tj Holowaychuk
4106bae79e generated helper test methods from express.methods 2011-11-08 17:47:47 -08:00
Tj Holowaychuk
b756474d9d Added res.send() HEAD tests 2011-11-08 17:46:08 -08:00
Tj Holowaychuk
b0c9209726 Added res.send() 304 / 204 tests 2011-11-08 17:44:05 -08:00
Tj Holowaychuk
c96b778771 dot reporter 2011-11-08 17:40:41 -08:00
Tj Holowaychuk
d0d721d80b Added res.send(Object) test 2011-11-08 17:40:20 -08:00
Tj Holowaychuk
7b50a78662 Added res.send(null || undefined) tests 2011-11-08 17:38:18 -08:00
Tj Holowaychuk
aa869c637a Added res.send() content-type tests 2011-11-08 17:36:24 -08:00
Tj Holowaychuk
f467fe1cbf Added res.send(Buffer) test 2011-11-08 17:34:04 -08:00
Tj Holowaychuk
15fd639cd9 Added res.send(String) test 2011-11-08 17:32:58 -08:00
Tj Holowaychuk
f96f2cf56e Added res.send(code, body) test 2011-11-08 17:31:51 -08:00
Tj Holowaychuk
b0f6278cea Added res.send(code) test 2011-11-08 17:30:29 -08:00
Tj Holowaychuk
ae7bac9a6b Added res.header() chaining test 2011-11-08 17:29:01 -08:00
Tj Holowaychuk
c8997204d4 Added res.header() tests 2011-11-08 17:27:05 -08:00
Tj Holowaychuk
a2c51984a8 Added res.get(field) test 2011-11-08 17:25:05 -08:00
Tj Holowaychuk
ed93e33d59 another test 2011-11-08 17:23:53 -08:00
Tj Holowaychuk
6e15b1cd20 Removed mock from res.status() test, mocks are lame 2011-11-08 17:23:14 -08:00
Tj Holowaychuk
cc2513facf res.status(code) test 2011-11-08 17:18:44 -08:00
Tj Holowaychuk
e303dcc915 multi-env configure() callbacks 2011-11-08 17:15:09 -08:00
Tj Holowaychuk
8ad17abb7b app.configure() tests 2011-11-08 17:13:16 -08:00
Tj Holowaychuk
5b296b5257 middleware tests
that dont quite work yet because node is being a PITA
2011-11-08 17:02:15 -08:00
Tj Holowaychuk
1a5c32f3ef setting up middleware tests 2011-11-08 16:00:44 -08:00
Tj Holowaychuk
a15e745d42 test for application prototype 2011-11-08 15:45:30 -08:00
Tj Holowaychuk
d17dd3e3d8 more config tests 2011-11-08 15:42:22 -08:00
Tj Holowaychuk
51a5c829bb config test 2011-11-08 15:40:34 -08:00
Tj Holowaychuk
8a91749e12 merged 2011-11-08 15:25:56 -08:00
Tj Holowaychuk
42fc0f9ee8 more tests 2011-11-08 15:23:02 -08:00
Tj Holowaychuk
17ccd55d11 upgrade should 2011-11-08 15:19:53 -08:00
Tj Holowaychuk
b8a589d76f first new test 2011-11-08 15:19:19 -08:00
Tj Holowaychuk
becf6d9413 Added mocha dev-dep 2011-11-08 15:07:31 -08:00
Tj Holowaychuk
9efc4b23dc Remove old tests 2011-11-08 15:05:47 -08:00
Tj Holowaychuk
6b1dc31759 version -pre so people are less confused 2011-11-04 09:06:45 -07:00
Tj Holowaychuk
9205d632cc Fixing express(1) for upcomming express 2011-11-04 09:06:23 -07:00
Tj Holowaychuk
a751346b20 port some express(1) stuff from 2.x 2011-11-04 09:01:43 -07:00
Tj Holowaychuk
8111a19307 Removed sass.js support from express(1) 2011-11-04 08:36:09 -07:00
TJ Holowaychuk
860b4f1a3b Merge pull request #873 from gugu/master
Express depends on commander@0.0.4, which does not support node.js 5
2011-10-30 12:25:11 -07:00
Andrii Kostenko
a5b1aa9ca7 Update package.json 2011-10-30 23:20:05 +04:00
Tj Holowaychuk
62257bce18 Added app.routes, replacing app.routes.all(). Closes #811 2011-10-14 17:51:23 -07:00
Tj Holowaychuk
0ed74aa68b added an array of routes 2011-10-14 17:48:57 -07:00
Tj Holowaychuk
e0bd0d6470 Added app.get(setting). Closes #842 2011-10-14 17:37:23 -07:00
Tj Holowaychuk
b433550556 refactored res.render() 2011-10-14 08:46:02 -07:00
Tj Holowaychuk
04ebd8875b Fixed express(1) public dir for windows. Closes #866 2011-10-14 08:38:33 -07:00
Tj Holowaychuk
1a1ed0ae45 semicolons 2011-10-13 09:46:48 -07:00
Tj Holowaychuk
d6fabb6f8e move getters down 2011-10-13 09:46:26 -07:00
Tj Holowaychuk
08e8194db1 Merge branch 'master' of github.com:visionmedia/express 2011-10-13 09:45:59 -07:00
Tj Holowaychuk
0e4e050b21 Added req.fresh and req.stale
lame usage example:

app.get('/user/:id', function(req, res){
  var id = req.params.id;

  res.set('ETag', 'user-' + id);

  if (req.fresh) return res.send(304);
  setTimeout(function(){
    res.send('large expensive user response ' + id);
  }, 2000);
});
2011-10-13 09:43:31 -07:00
Tj Holowaychuk
de17b285b1 Added req.secure 2011-10-11 09:45:01 -07:00
TJ Holowaychuk
f640d0973d Merge pull request #863 from JonDum/master
Added JSHTML template engine for cli helper :)
2011-10-10 21:52:31 -07:00
Jonathan Dumaine
47ff0dc0cc Add JSHTML template engine for cli helper
JSHTML is a express compatible template engine 
with very nice syntax.

https://github.com/LuvDaSun/jshtml
2011-10-10 21:49:44 -07:00
Tj Holowaychuk
965e1d63dc added sync signature for app.locals.use() 2011-10-09 13:08:20 -07:00
Tj Holowaychuk
73f1da2ff7 Added replacement for dynamic locals. Closes #788 2011-10-09 13:01:32 -07:00
Tj Holowaychuk
0f6ad43e91 app.locals.use(fn) 2011-10-09 12:54:15 -07:00
Tj Holowaychuk
8d804a6c4a removed old app.locals() 2011-10-09 12:51:27 -07:00
Tj Holowaychuk
02f48aabbf map register function 2011-10-07 15:25:16 -07:00
Tj Holowaychuk
d4b08e9566 misc 2011-10-07 15:18:00 -07:00
Tj Holowaychuk
9f1f58fd4b non-enumerable .router for Collection 2011-10-07 15:13:13 -07:00
Tj Holowaychuk
4ed92d50e0 misc refactoring 2011-10-07 15:12:24 -07:00
Tj Holowaychuk
8848004cb7 refactoring boot logic 2011-10-07 15:10:30 -07:00
Tj Holowaychuk
371b381074 more refactoring 2011-10-07 15:04:08 -07:00
Tj Holowaychuk
6d47011dcf View#contents() 2011-10-07 15:01:36 -07:00
Tj Holowaychuk
705cdb6368 misc refactoring 2011-10-07 15:00:20 -07:00
Tj Holowaychuk
90fc80fd87 docs 2011-10-07 14:59:42 -07:00
Tj Holowaychuk
041974ee01 added index lookup support back 2011-10-07 14:58:58 -07:00
Tj Holowaychuk
7369d861ca docs 2011-10-07 14:52:26 -07:00
Tj Holowaychuk
e1da383aed new View 2011-10-07 14:51:06 -07:00
Tj Holowaychuk
6bcf29152f misc refactoring 2011-10-07 14:25:09 -07:00
Tj Holowaychuk
8a38211bd9 re-implemented "view cache" 2011-10-07 14:16:05 -07:00
Tj Holowaychuk
cb2b9feb5f docs 2011-10-07 14:13:13 -07:00
Tj Holowaychuk
c2d5d5619b lookup callback 2011-10-07 14:12:37 -07:00
Tj Holowaychuk
76b7d6975f app.lookup() 2011-10-07 14:11:08 -07:00
Tj Holowaychuk
7e9186d1ae removed hints setting 2011-10-07 14:08:06 -07:00
Tj Holowaychuk
d1ce4c9923 req.query is always present 2011-10-07 14:04:59 -07:00
Tj Holowaychuk
fed7fa4cd2 removed old parseRange util 2011-10-07 13:56:14 -07:00
Tj Holowaychuk
0d0125fc29 removed union util 2011-10-07 13:50:59 -07:00
Tj Holowaychuk
98e2c0522f merging res.locals 2011-10-07 13:50:31 -07:00
Tj Holowaychuk
294bc8c1d7 misc refactoring 2011-10-07 13:34:03 -07:00
Tj Holowaychuk
ae11d83684 typo 2011-10-07 13:31:12 -07:00
Tj Holowaychuk
aab9b08ec2 added charset option back 2011-10-07 13:30:33 -07:00
Tj Holowaychuk
31ff7db019 added status support back 2011-10-07 13:29:25 -07:00
Tj Holowaychuk
c40c54fbee request-level render() 2011-10-07 13:27:43 -07:00
Tj Holowaychuk
cecbaf2efe removed old view.js 2011-10-07 13:22:55 -07:00
Tj Holowaychuk
e90413243e use app.engines instead of app.cache 2011-10-07 13:21:01 -07:00
Tj Holowaychuk
a9396efeaf added app.register() 2011-10-07 13:19:29 -07:00
Tj Holowaychuk
60353c6d05 misc refactoring 2011-10-07 13:13:57 -07:00
Tj Holowaychuk
7b5ed50786 expose prototype 2011-10-07 13:13:32 -07:00
Tj Holowaychuk
02baa2b17c removed old http.js 2011-10-07 13:12:53 -07:00
Tj Holowaychuk
d0585bd910 application.js 2011-10-07 13:10:15 -07:00
Tj Holowaychuk
adf7124446 removed extra require() 2011-10-07 13:07:55 -07:00
Tj Holowaychuk
7710db4591 re-working view system 2011-10-07 13:07:19 -07:00
Tj Holowaychuk
ce03cf49d8 uncommented old code 2011-10-07 10:01:30 -07:00
Tj Holowaychuk
65c0d14a4e expose connect middleware as express.* again 2011-10-07 10:00:10 -07:00
Tj Holowaychuk
667ed6fcf5 using connect.proto.use 2011-10-07 09:29:36 -07:00
Tj Holowaychuk
d7da40642d removed old https inheritance logic 2011-10-07 09:24:17 -07:00
Tj Holowaychuk
d6b5047511 setting up proto 2011-10-07 09:23:54 -07:00
Tj Holowaychuk
3b5a751b25 add connect repo as dep for now, since 2.0.0alpha blew everything up 2011-10-07 09:18:04 -07:00
Tj Holowaychuk
8a7491c97a "node":">= 0.5.0 < 0.7.0" 2011-10-05 15:08:50 -07:00
Tj Holowaychuk
b3cab31cf7 connect 2.x dep 2011-10-05 15:04:43 -07:00
Tj Holowaychuk
021655a10a Added support for res.set(obj). Closes #834 2011-10-05 14:34:00 -07:00
Tj Holowaychuk
e301d43704 Changed res.redirect() signature to accept status first. Closes #832
to match the others
2011-10-05 14:24:57 -07:00
Tj Holowaychuk
54c1a208c3 Added res.type() alias of res.contentType() 2011-09-28 10:27:13 -07:00
Tj Holowaychuk
ad9bbda708 bench against loopback 2011-09-27 16:55:49 -07:00
Tj Holowaychuk
341e167eab comma last! 2011-09-21 15:35:30 -07:00
Tj Holowaychuk
fb031d1ad5 Added mkdirp to express(1). Closes #795 2011-09-21 08:25:47 -07:00
Tj Holowaychuk
d3937b9a61 Fixed res.redirect() HEAD support 2011-09-07 10:03:17 -07:00
Tj Holowaychuk
2c734e2e4c refactored res.send() 2011-09-07 10:02:27 -07:00
Tj Holowaychuk
77d8823261 misc refactoring 2011-09-06 15:19:05 -07:00
Tj Holowaychuk
6f85c14738 docs 2011-09-06 15:18:15 -07:00
Tj Holowaychuk
edb1dc067a Fixed req.notify(), only escape args 2011-09-06 15:15:52 -07:00
Tj Holowaychuk
6b161d5389 Removed npm test script 2011-08-31 09:32:37 -07:00
Tj Holowaychuk
c21e3feaa6 Fixed absolute path checking on windows. Closes #829 [reported by andrewpmckenzie] 2011-08-29 08:40:42 -07:00
Tj Holowaychuk
a25ef01da3 Fixed multiple param callback regression. Closes #824 [reported by TroyGoode] 2011-08-22 10:05:16 -07:00
Tj Holowaychuk
0534266490 Merge branch 'master' of github.com:visionmedia/express 2011-08-22 10:05:13 -07:00
Tj Holowaychuk
71aca3c199 fixed some tests 2011-08-22 09:51:22 -07:00
TJ Holowaychuk
72fab80a74 Merge pull request #821 from pikeas/patch-1
Fixing typo: interacte -> interact
2011-08-21 10:40:42 -07:00
pikeas
c8ab058842 Fixing typo: interacte -> interact 2011-08-22 16:11:15 +09:00
Tj Holowaychuk
b166fd7d6e local -> localhost
most people wont have things set up the same as me
so this is probably not a good idea :D
2011-08-20 15:53:16 -07:00
Tj Holowaychuk
9545face97 mime 1.2.2 dep 2011-08-20 04:29:19 -07:00
Tj Holowaychuk
6dacd51b81 connect 1.6.2 dep 2011-08-20 04:28:48 -07:00
Tj Holowaychuk
571a182712 Added logger() to generated express(1) app 2011-08-20 04:02:33 -07:00
Tj Holowaychuk
e3aabdc2bc Added make benchmark for experimental continuous-benchmarking tool 2011-08-20 03:19:59 -07:00
Tj Holowaychuk
4d8d5b12f2 Release 2.4.5 2011-08-19 10:18:57 -07:00
Tj Holowaychuk
5785e7e2e5 removed dynamicHelpers 2011-08-19 10:07:19 -07:00
Tj Holowaychuk
81f311105c removed app.helpers() use app.locals() 2011-08-19 10:05:47 -07:00
Tj Holowaychuk
ad3679fcb8 haha... 2011-08-19 10:05:25 -07:00
Tj Holowaychuk
29508f1cc7 changed -css, --template to --stylus, --ejs
we can add more as we go
2011-08-18 17:25:32 -07:00
Tj Holowaychuk
426ba62348 rewrote express(1) to use commander.js 2011-08-18 17:21:39 -07:00
Tj Holowaychuk
d2df055abe fixed res.sendfile() 404 support 2011-08-18 15:59:35 -07:00
Tj Holowaychuk
d3ccdbcf72 build res.download() on top of res.sendfile()
like it should have always been
2011-08-18 15:43:19 -07:00
Tj Holowaychuk
7a476fc964 make res.sendfile() more like res.download(). Closes #774 2011-08-18 15:38:22 -07:00
Tj Holowaychuk
5da28be2b2 refactored res.sendfile() 2011-08-18 15:28:19 -07:00
Tj Holowaychuk
0932bdea30 OCD 2011-08-18 14:35:56 -07:00
Tj Holowaychuk
75054e17cf Refactored Route to use a single array of callbacks 2011-08-17 15:50:15 -07:00
Tj Holowaychuk
664907f02e fixed route error handlers when errors are thrown 2011-08-17 14:39:32 -07:00
Tj Holowaychuk
f977272732 Added support for routes to handle errors. Closes #809
currently only the route end-point callbacks
support this, however this will change in the near future
to support route middleware etc
2011-08-17 14:33:23 -07:00
Tj Holowaychuk
d10b7b43ea Added shorthand for the parsed request's pathname 2011-08-17 14:20:10 -07:00
Tj Holowaychuk
e9abe1b846 Merged basepath setting. Closes #813 2011-08-17 10:13:25 -07:00
Tj Holowaychuk
cc21f38664 qs >= 0.3.1 2011-08-17 07:53:45 -07:00
Tj Holowaychuk
34606c26f0 use nextRoute() internally 2011-08-16 18:30:01 -07:00
Tj Holowaychuk
be9d66a574 Changed: removed .call(self) for route callbacks
not sure why we had this, ive never even used it
and the tests dont cover it, and its slower
2011-08-16 18:28:48 -07:00
Tj Holowaychuk
ed9fcde499 Added app.routes.all(). Closes #803
not a huge fan of this API-wise, but at least it is something for now
2011-08-16 17:52:39 -07:00
Tj Holowaychuk
3c2139b0c3 Fixed res.redirect() on windows due to join() usage. Closes #808 2011-08-15 13:47:07 -07:00
Tj Holowaychuk
7eeec91ab5 russian docs 2011-08-14 09:36:07 -07:00
Tj Holowaychuk
fdd43ee448 link to russian docs booyah! 2011-08-14 09:35:03 -07:00
Tj Holowaychuk
ca75492512 Added support for multiple callbacks for app.param(). Closes #801
you can also make several calls to `app.param()` for the same
param name, which is equivalent to passing multiple in
a single call
2011-08-11 11:09:36 -07:00
Tj Holowaychuk
a2a7644794 added another test 2011-08-11 10:12:22 -07:00
Tj Holowaychuk
91aebc758c Added test for app.param(fn) 2011-08-11 10:11:09 -07:00
Tj Holowaychuk
ca0d29d811 expose list of http methods supported 2011-08-10 16:12:21 -07:00
Tj Holowaychuk
c8c6aa2a1f Added res.get(field) as an alternative to res.header(field) 2011-08-10 14:15:37 -07:00
Tj Holowaychuk
19a1a22e63 Added res.set(field, val) as an alternative to res.header() 2011-08-10 14:13:36 -07:00
Tj Holowaychuk
c729d62f89 another sidebar 2011-08-08 17:33:50 -07:00
Tj Holowaychuk
1793b50e6b sidebar example 2011-08-08 17:25:54 -07:00
Tj Holowaychuk
23dbe6a5f0 better layout control example 2011-08-08 17:15:13 -07:00
Tj Holowaychuk
509601e617 fixed app.locals precedence 2011-08-08 17:01:07 -07:00
Tj Holowaychuk
d58beed752 Removed default local "app" 2011-08-08 16:51:41 -07:00
Tj Holowaychuk
fd5d1076dc make req.notify() arity based 2011-08-08 16:45:22 -07:00
Tj Holowaychuk
05b76a1f93 prepping blog example for new express 2011-08-08 16:40:09 -07:00
Tj Holowaychuk
f84ec803a4 use "dev" logger in blog example 2011-08-08 16:27:20 -07:00
Tj Holowaychuk
c35cd7fcb7 Changed res.{send,json}() status code to the first arg at all times 2011-08-04 13:30:12 -07:00
Tj Holowaychuk
bb9d50579b docs 2011-08-04 12:01:11 -07:00
Tj Holowaychuk
54d37512f5 Refactored res.header() 2011-08-03 20:00:39 -07:00
Tj Holowaychuk
c516be8c4b added header.jade to jade example 2011-08-02 09:01:42 -07:00
Tj Holowaychuk
82c78ec8f9 semi 2011-07-29 11:02:50 -07:00
Tj Holowaychuk
b1d4b71609 Refactored req.accepts() 2011-07-29 11:02:20 -07:00
Tj Holowaychuk
7440c7ddc7 more tests 2011-07-29 09:55:52 -07:00
Tj Holowaychuk
624dad5a78 Merge branch 'integration' 2011-07-29 09:40:18 -07:00
Arpad Borsos
f4080210bd specialcase .:format routing to not include a dot in the capture group 2011-07-29 09:37:51 -07:00
Tj Holowaychuk
c631eb43e3 Fixed 204 / 304 responses 2011-07-29 09:31:45 -07:00
Tj Holowaychuk
376bedf624 Changed res.send(null) responds with empty string
previously you would just get "null",
which is fine for res.json() but probably
not the best result for res.send()
2011-07-29 09:30:35 -07:00
Tj Holowaychuk
36e9c02f6f fixed a response test 2011-07-29 09:26:58 -07:00
Tj Holowaychuk
8f798569a8 fixed a jade test 2011-07-29 09:22:05 -07:00
Tj Holowaychuk
8c0e47baf9 more tests for routing 2011-07-27 09:02:31 -07:00
Tj Holowaychuk
461473e48e more tests 2011-07-27 09:00:53 -07:00
Tj Holowaychuk
8b1f109c1d renamed a test 2011-07-27 09:00:07 -07:00
Tj Holowaychuk
e005cb31d8 Merge branch 'master' of github.com:visionmedia/express 2011-07-27 08:59:27 -07:00
Tj Holowaychuk
579836e221 docs 2011-07-27 08:58:58 -07:00
ctide
b977ee6160 Fix the behavior for setting up routes with * in them. 2011-07-27 08:58:23 -07:00
TJ Holowaychuk
ddce65b9dd Merge pull request #777 from purohit/master
Simple misspelling fix.
2011-07-25 17:59:57 -07:00
Ashwin Purohit
e0e1105965 Fixing the misspelling of "manor" with "manner" in the 4 places it occurs. 2011-07-25 17:02:23 -07:00
Tj Holowaychuk
1f520f9f99 added express-resource to readme 2011-07-25 11:20:32 -07:00
Tj Holowaychuk
05a929deb6 tweak generated stylus 2011-07-25 11:15:15 -07:00
Tj Holowaychuk
5ac5352e33 Fixed [23]04 support 2011-07-22 08:35:33 -07:00
Tj Holowaychuk
787a555253 Added route-loading example for another route loading technique
using the vm module you can expose the route files at the root
level which IMO is nicer than module.exports = function(app){ etc
2011-07-20 12:33:53 -07:00
Tj Holowaychuk
388b84e858 node >= 0.4.9 < 0.7.0 for now 2011-07-19 16:14:48 -07:00
Tj Holowaychuk
7ffd17254a 3.0.0alpha1 soon
mainly so windows users can start playing
around with express, i will have a ton
of these alphas
2011-07-19 16:13:29 -07:00
Tj Holowaychuk
00affe187c update jade dev dep 2011-07-19 14:43:53 -07:00
Tj Holowaychuk
05844efbd6 qs >= 0.3.0 2011-07-19 12:08:39 -07:00
Tj Holowaychuk
3ab37028fc Removed req.flash() references
it will be req.notify(), req.session.notifications etc
2011-07-15 13:09:38 -07:00
Tj Holowaychuk
3a04888c5f docs 2011-07-15 12:12:46 -07:00
Tj Holowaychuk
6bd518241a refactored res.redirect() slightly 2011-07-15 11:56:39 -07:00
Tj Holowaychuk
a3cddb856f Changed res.{cookie,clearCookie}() return res 2011-07-15 11:55:03 -07:00
Tj Holowaychuk
4b8e08d202 another req.is() example 2011-07-15 11:52:43 -07:00
Tj Holowaychuk
9413d30396 Added req.notify() alias of req.flash() 2011-07-15 11:36:52 -07:00
Tj Holowaychuk
5982fa63c6 refactored req.flash() 2011-07-15 11:36:02 -07:00
Tj Holowaychuk
a4621a6418 refactored req.param() 2011-07-15 11:33:57 -07:00
Tj Holowaychuk
7eec21a5e6 examples 2011-07-15 11:31:47 -07:00
Tj Holowaychuk
96b72fe2f7 Renamed app.flashFormatters to app.formatters 2011-07-15 11:04:25 -07:00
Tj Holowaychuk
c7c9606e87 Added %d flash formatter 2011-07-15 10:57:15 -07:00
Tj Holowaychuk
772c135d98 Merge branch 'remove-header-fields' 2011-07-15 10:52:17 -07:00
Tj Holowaychuk
365b3a76ba fixed tests 2011-07-15 10:52:11 -07:00
Tj Holowaychuk
41568b7f2a chainable res.header() 2011-07-15 10:47:38 -07:00
Tj Holowaychuk
d853f6cf0e fixed some tests 2011-07-15 10:38:19 -07:00
Tj Holowaychuk
bcfcce32d3 Removed header field support 2011-07-15 10:38:19 -07:00
Tj Holowaychuk
986916cf3e removed old dynamic helper logic from the view system 2011-07-15 10:31:52 -07:00
Tj Holowaychuk
d689656775 precedence test 2011-07-15 10:30:51 -07:00
Tj Holowaychuk
8c56df7322 view system utilizing app.locals 2011-07-15 10:27:53 -07:00
Tj Holowaychuk
1dc87761a0 Changed app.locals to match res.locals 2011-07-15 10:13:21 -07:00
Tj Holowaychuk
cd88b92587 Removed app.dynamicLocals(). Closes #756 2011-07-15 10:06:49 -07:00
Tj Holowaychuk
eab03fdfc4 utilize connects new query() middleware 2011-07-15 10:03:46 -07:00
Tj Holowaychuk
9a8b86872d Replaced res.local[s]() with res.locals function. Closes #757 2011-07-15 10:01:31 -07:00
Tj Holowaychuk
04ce039ba4 Merge branch 'master' of github.com:visionmedia/express 2011-07-14 13:19:48 -07:00
Tj Holowaychuk
9605cbda45 misc 2011-07-14 12:59:14 -07:00
Tj Holowaychuk
3ec2739925 Removed "view options" setting. Closes #748 2011-07-14 12:59:14 -07:00
Tj Holowaychuk
d250bf9b56 docs for previous commit 2011-07-14 12:59:14 -07:00
Tj Holowaychuk
6ebccb0518 Added "charset" option 2011-07-14 12:59:14 -07:00
Tj Holowaychuk
b30efe4e2f misc refactoring 2011-07-14 12:59:14 -07:00
Tj Holowaychuk
c275d279fc Added app.dynamicLocal(name, fn) 2011-07-14 12:59:14 -07:00
Tj Holowaychuk
7237a3c3b6 app.local() and res.local() return for chaining 2011-07-14 12:59:14 -07:00
Tj Holowaychuk
f98896f6d7 Added app.local(name, val) 2011-07-14 12:59:14 -07:00
Tj Holowaychuk
bcb2cdae4c app.helpers -> app.locals 2011-07-14 12:59:13 -07:00
Tj Holowaychuk
08159211a3 app.dynamicHelpers -> app.dynamicLocals 2011-07-14 12:59:13 -07:00
Tj Holowaychuk
232b6ab7ef Removed res.send() with no args support for 204
just use:

   res.send(204)
2011-07-14 12:59:13 -07:00
Tj Holowaychuk
3d2676d013 Removed res.helpers() alias of res.locals() 2011-07-14 12:59:13 -07:00
Tj Holowaychuk
477d06f990 removed old app.error() docs 2011-07-14 12:59:13 -07:00
Tj Holowaychuk
ed19885ba1 removed old error handling docs 2011-07-14 12:59:13 -07:00
Tj Holowaychuk
297ae6fdb4 removed use of app.error() in examples 2011-07-14 12:59:13 -07:00
Tj Holowaychuk
456a985666 Removed app.error(). Closes #733
use trailing middleware with arity of 4 as
shown in this issue. They are functionally
equivalent
2011-07-14 12:59:13 -07:00
Tj Holowaychuk
261203d6c1 expresso 0.8.1 2011-07-14 12:59:13 -07:00
Dave Hoover
31262d2ea9 its is possessive, it's is shorthand for: it is 2011-07-14 12:59:13 -07:00
Tj Holowaychuk
c72abc5293 Release 2.4.3 2011-07-14 12:58:24 -07:00
Tj Holowaychuk
93189ad0b6 Fixed options.filename, exposing to template engines
this is useful for performing relative
lookups within the template engine itself,
without manually specifyin the path
2011-07-14 12:53:49 -07:00
Tj Holowaychuk
a8930b161e Fixed options.filename, exposing to template engines
this is useful for performing relative
lookups within the template engine itself,
without manually specifyin the path
2011-07-14 12:50:50 -07:00
Tj Holowaychuk
fa31d45285 misc 2011-07-11 14:58:40 -07:00
Tj Holowaychuk
914e4a4cf7 Removed "view options" setting. Closes #748 2011-07-11 13:19:00 -07:00
Tj Holowaychuk
f36d079f28 docs for previous commit 2011-07-11 13:12:55 -07:00
Tj Holowaychuk
17ddeef3ba Added "charset" option 2011-07-11 13:12:11 -07:00
Tj Holowaychuk
f0c90ce668 misc refactoring 2011-07-11 12:53:52 -07:00
Tj Holowaychuk
f19b312c48 Added app.dynamicLocal(name, fn) 2011-07-11 12:50:20 -07:00
Tj Holowaychuk
e899a54ba7 app.local() and res.local() return for chaining 2011-07-11 12:46:10 -07:00
Tj Holowaychuk
a4db994c2f Added app.local(name, val) 2011-07-11 12:43:31 -07:00
Tj Holowaychuk
f98f46c836 app.helpers -> app.locals 2011-07-11 12:37:35 -07:00
Tj Holowaychuk
336aaaec9a app.dynamicHelpers -> app.dynamicLocals 2011-07-11 12:36:33 -07:00
Tj Holowaychuk
b13ec8526e Removed res.send() with no args support for 204
just use:

   res.send(204)
2011-07-11 11:43:16 -07:00
Tj Holowaychuk
541020ff1b Removed res.helpers() alias of res.locals() 2011-07-11 11:22:25 -07:00
Tj Holowaychuk
9c153737b4 removed old app.error() docs 2011-07-11 11:18:29 -07:00
Tj Holowaychuk
7d53bb4064 removed old error handling docs 2011-07-11 11:18:15 -07:00
Tj Holowaychuk
4670751479 removed use of app.error() in examples 2011-07-11 11:13:07 -07:00
Tj Holowaychuk
8e058f16e4 Removed app.error(). Closes #733
use trailing middleware with arity of 4 as
shown in this issue. They are functionally
equivalent
2011-07-11 11:06:58 -07:00
Tj Holowaychuk
f519f0a5b3 Merge branch 'master' of github.com:visionmedia/express 2011-07-11 11:02:10 -07:00
Tj Holowaychuk
bb61304a49 expresso 0.8.1 2011-07-11 11:01:06 -07:00
TJ Holowaychuk
781d991eac Merge pull request #746 from redsquirrel/patch-1
typo
2011-07-09 13:24:17 -07:00
Dave Hoover
d04c1f93a3 its is possessive, it's is shorthand for: it is 2011-07-09 13:19:15 -07:00
Tj Holowaychuk
c0aab36187 Added docs for status option special-case. Closes #739 2011-07-07 09:09:34 -07:00
Tj Holowaychuk
5ae994ee8f Release 2.4.2 2011-07-06 20:15:44 -07:00
Tj Holowaychuk
60d16eab77 Revert "removed jsonp stripping"
This reverts commit 0ae18bca60.
2011-07-06 20:14:42 -07:00
Tj Holowaychuk
fc60dfc1a6 docs 2011-07-06 09:59:09 -07:00
Tj Holowaychuk
45d149c146 docs for multiple envs in app.configure() calls 2011-07-06 09:58:32 -07:00
Tj Holowaychuk
4dfc1a69c3 Release 2.4.1 2011-07-06 09:57:06 -07:00
Tj Holowaychuk
0ae18bca60 removed jsonp stripping
I cannot recall why I added this, doesnt make
sense to me now haha.
2011-07-06 09:45:21 -07:00
Tj Holowaychuk
2aaf0defe7 res.send() using res.json() 2011-07-06 09:32:16 -07:00
Tj Holowaychuk
73ea5cd7ee Added res.json() JSONP support. Closes #737 2011-07-06 09:31:37 -07:00
Tj Holowaychuk
e7f2d229ec added failing jsonp tests for res.json() 2011-07-06 09:25:10 -07:00
Tj Holowaychuk
87bc265817 moved jsonp tests 2011-07-06 09:24:08 -07:00
Tj Holowaychuk
796aaff295 connect 1.5.2 2011-07-06 09:07:09 -07:00
Tj Holowaychuk
8f87c50320 fixed connect-redis example 2011-07-05 09:55:04 -07:00
Tj Holowaychuk
ee4471b345 when cookie path === null dont default it 2011-07-04 13:51:08 -07:00
Tj Holowaychuk
6815feb8cf docs 2011-07-04 13:45:08 -07:00
Tj Holowaychuk
dbbe7be891 Added extending-templates example. Closes #730 2011-07-04 13:34:41 -07:00
Tj Holowaychuk
09c9452e5c Changed; default cookie path to "home" setting. Closes #731 2011-07-04 13:18:50 -07:00
Tj Holowaychuk
b0e669ba00 remove pids/logs creation from express(1)
just confused people
2011-07-04 13:05:13 -07:00
Tj Holowaychuk
f46ae9f3b2 docs 2011-07-04 09:20:35 -07:00
Tj Holowaychuk
9f2b344be8 Added support for multiple env app.configure() calls. Closes #735 2011-07-04 09:16:12 -07:00
Tj Holowaychuk
6b47271679 updated error-pages example 2011-07-01 14:14:46 -07:00
Tj Holowaychuk
6f7075be74 Added "strict routing" setting for trailing slashes
for people who are:

  a) over-optimizing seo
  b) working on fs-like APIs
2011-06-29 16:35:49 -07:00
Tj Holowaychuk
4b9cc3d698 docs 2011-06-28 11:27:51 -07:00
Tj Holowaychuk
3faa790b53 Release 2.4.0 2011-06-28 09:41:21 -07:00
Tj Holowaychuk
9477c9b516 docs for res.status() 2011-06-28 09:32:28 -07:00
Tj Holowaychuk
b04be51848 Added chainable res.status(code)
ex:

  res.status(500).send("lame")
2011-06-28 09:32:03 -07:00
Tj Holowaychuk
9e4020efd3 Merge branch 'feature/res-json' 2011-06-28 09:14:09 -07:00
Tj Holowaychuk
6db19db665 docs for res.json 2011-06-28 09:14:04 -07:00
Tj Holowaychuk
1386f80ae5 Added res.json() and tests 2011-06-28 09:11:54 -07:00
Tj Holowaychuk
e4342a7097 Added error handling to web-service example 2011-06-28 08:49:43 -07:00
Tj Holowaychuk
fda31b75f9 Added simple web-service example 2011-06-23 09:45:19 -07:00
Tj Holowaychuk
8ca0a45b33 hmac for auth example 2011-06-23 08:50:20 -07:00
Tj Holowaychuk
ce2bcaef68 Release 2.3.12 2011-06-22 13:56:13 -07:00
Tj Holowaychuk
0db7f26ad3 Fixed view layout bug. Closes #720
preventing custom relative layouts such as:

  views/
   users/
     user-layout.jade
2011-06-22 13:53:58 -07:00
Tj Holowaychuk
35370da458 screencasts have their own page 2011-06-21 15:16:46 -07:00
Tj Holowaychuk
fe6c5832c2 fixed docs charset 2011-06-21 15:15:38 -07:00
Tj Holowaychuk
e8c32df79c fixed some docs 2011-06-21 15:13:51 -07:00
Tj Holowaychuk
652e166462 updated docs 2011-06-21 15:08:17 -07:00
Tj Holowaychuk
af6385f8e4 docs 2011-06-21 15:06:49 -07:00
Tj Holowaychuk
f0277d3777 #express on freenode 2011-06-21 14:59:06 -07:00
Tj Holowaychuk
6bb100d7fa docs for req.get() 2011-06-21 10:48:34 -07:00
Tj Holowaychuk
f13ea34de3 typo 2011-06-21 10:46:07 -07:00
Tj Holowaychuk
48a14a443a Merge branch 'master' of github.com:visionmedia/express 2011-06-21 10:30:07 -07:00
Tj Holowaychuk
1820ea6f59 Merge branch 'param' 2011-06-21 10:29:08 -07:00
Tj Holowaychuk
4d9647923e Added req.get(field, param) 2011-06-21 10:29:04 -07:00
Tj Holowaychuk
943e9b3a28 connect >= 1.5.1 < 2.0.0 2011-06-20 23:20:33 -07:00
TJ Holowaychuk
6b2ec50a0b Merge pull request #709 from jzacsh/master
documentation: typo fix for view-lookup
2011-06-12 18:43:12 -07:00
Jonathan Zacsh
7b813b95b6 documentation spelling typo and URL fix. 2011-06-12 20:05:52 -04:00
TJ Holowaychuk
cdaa2e78d7 Merge pull request #707 from jakeg/patch-2
Updated connect-redis markdown docs
2011-06-12 11:07:09 -07:00
Jake Gordon
add53d3222 trying the .md file this time 2011-06-12 10:59:52 -07:00
TJ Holowaychuk
f4f79d2217 Merge pull request #706 from jakeg/patch-1
docs to show require('connect-redis')(express) re npm 1.x changes
2011-06-12 09:32:22 -07:00
Jake Gordon
aa36bc4516 Due to npm 1.x changes need to pass connect/express to the function connect-redis exports (see https://github.com/visionmedia/connect-redis) 2011-06-12 05:05:25 -07:00
Tj Holowaychuk
9028cacfd1 Fixed; ignore body on 304. Closes #701
should do the trick
2011-06-08 12:40:07 -07:00
Tj Holowaychuk
40ccb595cd "Japanese Documentation" in Japanese 日本語ドキュメンテーション :) 2011-06-07 09:46:28 -07:00
Tj Holowaychuk
5606d08ecb Links to Japanese documentation, thanks @hideyukisaito! 2011-06-07 09:41:16 -07:00
Tj Holowaychuk
1888d6fca1 Added; the express(1) generated app outputs the env
thanks nathan! totally thoguht I had this :D
2011-06-06 15:38:20 -07:00
Tj Holowaychuk
5d16e6b302 added content-negotiation example 2011-06-06 11:58:33 -07:00
Tj Holowaychuk
96f7574bc1 connect >= 1.4.3 < 2.0.0 2011-06-06 10:21:53 -07:00
Tj Holowaychuk
490584c8bc misc refactor 2011-06-06 09:20:29 -07:00
Tj Holowaychuk
0cbb1f661c typo 2011-06-06 08:55:30 -07:00
Tj Holowaychuk
3dc53e105a misc refactoring 2011-06-06 08:22:35 -07:00
Tj Holowaychuk
e2cdd760d8 Release 2.3.11 2011-06-04 10:50:10 -07:00
Tj Holowaychuk
4169202a41 removed generation of dummy test file from express(1) 2011-06-04 10:47:48 -07:00
Tj Holowaychuk
835982c561 added devDependencies to generated package.json 2011-06-04 10:45:21 -07:00
Tj Holowaychuk
b67bacea18 more refactoring of cookie example 2011-06-02 13:58:46 -07:00
Tj Holowaychuk
3205ee7d75 refactored cookie example 2011-06-02 13:57:54 -07:00
Tj Holowaychuk
ff7d5ff4e5 generate docs 2011-06-01 17:35:27 -07:00
Tj Holowaychuk
723774af27 added quick start to guide 2011-06-01 17:35:14 -07:00
Tj Holowaychuk
c3fbd3fe10 express(1) usage docs 2011-06-01 17:34:07 -07:00
Tj Holowaychuk
d1d3871550 Fixed; express(1) adds express as a dep
duh...
2011-06-01 17:29:48 -07:00
Tj Holowaychuk
5462c8c7ec prune on prepublish 2011-06-01 16:59:29 -07:00
Tj Holowaychuk
9536341e30 added npm test 2011-05-30 14:19:26 -07:00
Tj Holowaychuk
1bb798d963 Release 2.3.10 2011-05-27 09:20:03 -07:00
Tj Holowaychuk
91997e9c53 Added req.route, exposing the current route. Closes #11
this can be used with a dynamicHelper to expose the _last_
route that was matched, aka the end-point when rendering a template.

this is a `Route` instance, so it has .path, .regexp, etc.
2011-05-27 09:12:49 -07:00
Tj Holowaychuk
1393187040 Merge branch 'refactor/executable' 2011-05-26 10:31:29 -07:00
Tj Holowaychuk
6e69c880d9 Added package.json generation support to express(1) 2011-05-26 10:31:21 -07:00
Tj Holowaychuk
59dcd03972 removed suggestions 2011-05-26 10:18:56 -07:00
Tj Holowaychuk
11482546a2 Fixed call to app.param() function for optional params. Closes #682 2011-05-26 09:56:04 -07:00
Tj Holowaychuk
1ce43dd347 added failing test for #682 2011-05-26 09:48:07 -07:00
Tj Holowaychuk
d1bfe137d4 test to ensure catch of invalid uri 2011-05-25 15:50:32 -07:00
Tj Holowaychuk
9d7452cdc2 more tests 2011-05-25 10:56:56 -07:00
Tj Holowaychuk
d9cee90efc Release 2.3.9 2011-05-25 10:18:26 -07:00
Tj Holowaychuk
175aa08500 more tests 2011-05-25 10:16:11 -07:00
Tj Holowaychuk
c9ff6198d3 more tests 2011-05-25 10:15:21 -07:00
Tj Holowaychuk
f026218c82 misc view refactoring 2011-05-25 10:10:23 -07:00
Tj Holowaychuk
5bc86b9e29 more tests 2011-05-25 09:54:55 -07:00
Tj Holowaychuk
5830ac9936 more tests 2011-05-25 09:54:06 -07:00
Tj Holowaychuk
d7c6c9a9f9 Release 2.3.8 2011-05-24 21:53:08 -07:00
Tj Holowaychuk
9c87eed60e Fixed OPTIONS regression preventing custom routing for this method 2011-05-24 21:52:52 -07:00
Tj Holowaychuk
f15eb6d5ef added options test 2011-05-24 21:41:37 -07:00
Tj Holowaychuk
5b33788359 express-mongoose link 2011-05-24 08:45:44 -07:00
Tj Holowaychuk
11ec3ccd48 removed some old invalid docs
new stuff to come
2011-05-23 17:16:02 -07:00
Tj Holowaychuk
9d498ba3f1 misc 2011-05-23 16:59:16 -07:00
Tj Holowaychuk
15d4047180 link 2011-05-23 16:57:36 -07:00
Tj Holowaychuk
44eae73843 Release 2.3.7 2011-05-23 15:54:17 -07:00
Tj Holowaychuk
d5b1c70731 removed invalidParamReturnValue() 2011-05-23 15:48:58 -07:00
Tj Holowaychuk
e78dc18cfd Removed app.param() callback with retval support
this is now abstract and will be going into express-params
along with some other cases
2011-05-23 15:40:41 -07:00
Tj Holowaychuk
4d122923e9 docs 2011-05-23 15:33:40 -07:00
Tj Holowaychuk
b1a7310263 Added support for app.param(fn) to define param logic 2011-05-23 15:30:34 -07:00
Tj Holowaychuk
d6ef90d98d Moved param() retval logic to Router#param() 2011-05-23 15:06:59 -07:00
Tj Holowaychuk
85df59ac31 comma first 2011-05-23 14:56:35 -07:00
Tj Holowaychuk
b789a28581 refactored with nextRoute() 2011-05-23 14:52:43 -07:00
Tj Holowaychuk
4068e7f444 added route Collection tests 2011-05-23 14:13:31 -07:00
Tj Holowaychuk
80e9ffbf5d Refactored router. Closes #639 2011-05-23 13:48:31 -07:00
Tj Holowaychuk
610fc92ca3 arity < 3 considered return-style param 2011-05-23 09:52:11 -07:00
Tj Holowaychuk
0f5dc9bdb2 Added checking of app.param() fn retval
functions returning NaN, == null, or === false are considered
a failure and the next route is executed
2011-05-23 09:38:01 -07:00
TJ Holowaychuk
c24b2faec5 Merge pull request #671 from jpalardy/patch-1
Documentation typo :uri -> :url for logger()
2011-05-22 10:18:01 -07:00
Jonathan Palardy
c407f58dc2 :uri -> :url
Example won't work otherwise. I checked the code :-)
2011-05-21 23:17:57 -07:00
Tj Holowaychuk
380da0e202 Removed module.parent check from express(1) generated app. Closes #670 2011-05-21 14:17:24 -07:00
Tj Holowaychuk
9e5e7a1526 added more route tests 2011-05-20 15:46:36 -07:00
Tj Holowaychuk
9016b5aaae added more route tests 2011-05-20 15:46:05 -07:00
Tj Holowaychuk
45f168e873 Release 2.3.6 2011-05-20 09:42:01 -07:00
Tj Holowaychuk
799938683d Merge branch 'refactor/dev-deps' 2011-05-20 09:39:34 -07:00
Tj Holowaychuk
7128f2d11f fixed last examples 2011-05-20 09:39:29 -07:00
Tj Holowaychuk
0634bf0b0d fixed redis example 2011-05-20 09:38:52 -07:00
Tj Holowaychuk
f9e48c2972 fixed markdown example 2011-05-20 09:29:22 -07:00
Tj Holowaychuk
909960c0b3 refactoring examples more 2011-05-20 09:26:47 -07:00
Tj Holowaychuk
8a7876f4d1 cleaning up examples 2011-05-20 09:16:35 -07:00
Tj Holowaychuk
286c92b13b docs 2011-05-20 09:15:39 -07:00
Tj Holowaychuk
b9872a278f docs 2011-05-20 09:15:35 -07:00
Tj Holowaychuk
1b34fd7efa misc 2011-05-20 09:11:15 -07:00
Tj Holowaychuk
f05c351762 Fixed view caching, should not be enabled in development 2011-05-20 09:01:05 -07:00
Tj Holowaychuk
8323f19e96 fixing examples 2011-05-20 08:56:25 -07:00
Tj Holowaychuk
565eda9ee5 docs 2011-05-20 08:40:26 -07:00
Tj Holowaychuk
7aea7194d1 example docs 2011-05-20 08:39:43 -07:00
Tj Holowaychuk
2f68957c8c fixed tests 2011-05-20 08:37:23 -07:00
Tj Holowaychuk
4ca848e526 ignore node_modules 2011-05-20 08:35:20 -07:00
Tj Holowaychuk
31a8c7c19c test docs 2011-05-20 08:35:11 -07:00
Tj Holowaychuk
f1c435e050 removed support submods 2011-05-20 08:31:13 -07:00
Tj Holowaychuk
fac75a9bff connect 1.4.1 2011-05-20 08:29:02 -07:00
Tj Holowaychuk
4fe03ab223 dev deps 2011-05-20 08:28:02 -07:00
TJ Holowaychuk
c6122da59b Merge pull request #668 from joemccann/master
Simple Update to Markdown example
2011-05-20 08:07:21 -07:00
Tj Holowaychuk
131f658779 Release 2.3.5 2011-05-20 07:32:16 -07:00
Joe McCann
127f77964e Updated markdown example to latest version of node-markdown and modified the compile method. 2011-05-20 09:16:53 -05:00
Tj Holowaychuk
9f2bd30dc7 router.routes 2011-05-19 18:36:41 -07:00
Tj Holowaychuk
6e633b31b4 return bool from req.is() 2011-05-19 09:48:19 -07:00
Tj Holowaychuk
1c65643488 more tests 2011-05-18 17:41:15 -07:00
Tj Holowaychuk
388ad9067a tweak tests 2011-05-17 13:59:24 -07:00
Tj Holowaychuk
f470f0bdc5 export .view as alias for .View
reads better:

   express.view.lookup(...)
2011-05-16 16:27:17 -07:00
Tj Holowaychuk
72384b0523 misc refactor of res.partial() 2011-05-16 15:29:20 -07:00
Tj Holowaychuk
1b199b7d98 lookup docs 2011-05-16 15:26:12 -07:00
Tj Holowaychuk
09b384ea44 Merge branch 'refactor/views' 2011-05-16 15:20:26 -07:00
Tj Holowaychuk
56ae55f987 keep duplicates out of view resolution hint 2011-05-16 15:20:08 -07:00
Tj Holowaychuk
1c360a89ba added views.compile(view, cache, cid, options)
private for now
2011-05-16 15:17:06 -07:00
Tj Holowaychuk
8636dee13e docs 2011-05-16 14:28:11 -07:00
Tj Holowaychuk
70e6baf6fc misc refactoring 2011-05-16 09:32:53 -07:00
Tj Holowaychuk
3588c1eedc docs 2011-05-16 09:27:16 -07:00
Tj Holowaychuk
8d6f167a81 added better middleware docs and use-cases 2011-05-16 09:24:53 -07:00
Tj Holowaychuk
6106188347 docs 2011-05-15 18:01:47 -07:00
Tj Holowaychuk
eeb77541cd Updated jade submodule 2011-05-14 11:53:26 -07:00
Tj Holowaychuk
99b244b47c export View 2011-05-13 19:38:23 -07:00
Tj Holowaychuk
3043672448 added exports.lookup(view, options) to view.js
private for now
2011-05-13 19:37:11 -07:00
Tj Holowaychuk
0477a53c9f misc refactor 2011-05-13 15:47:48 -07:00
Tj Holowaychuk
d9aa7c3bc9 Release 2.3.4 2011-05-08 10:53:57 -07:00
Tj Holowaychuk
986fac583b Merge branch 'master' of github.com:visionmedia/express 2011-05-08 10:52:59 -07:00
Tj Holowaychuk
c6d76086e2 Fixed res.sendfile() bug preventing the transfer of files with spaces
params are decoded so we need to encode before passing to send() which then
in turn decodes it again, however nodes url module chokes on the spaces.
2011-05-08 10:52:16 -07:00
Tj Holowaychuk
e2771364eb Updated connect submodule 2011-05-08 10:45:42 -07:00
Tj Holowaychuk
0d5a63798b added failing test with spaces in filename 2011-05-08 10:40:37 -07:00
TJ Holowaychuk
7d15e2bf52 Merge pull request #653 from darrentorpey/patch-1.
Fixed a typo: "A route is simple a string" => "A route is simply a string
2011-05-04 09:35:49 -07:00
Darren Torpey
31fef407b6 Fixed a typo: "A route is simple a string" => "A route is simply a string" 2011-05-04 04:14:40 -07:00
Tj Holowaychuk
6bef3ef891 misc 2011-05-03 16:48:17 -07:00
Tj Holowaychuk
b806846049 misc 2011-05-03 16:44:17 -07:00
Tj Holowaychuk
bc16020976 added stupid say example 2011-05-03 16:40:20 -07:00
Tj Holowaychuk
8afb905a43 Release 2.3.3 2011-05-03 11:31:16 -07:00
Tj Holowaychuk
53667728a8 Fixed route-specific middleware when using the same callback function several times 2011-05-03 11:28:33 -07:00
Tj Holowaychuk
5f0a854e29 added test for route specific middleware regression 2011-05-03 11:25:54 -07:00
Tj Holowaychuk
e9ef3dd9cd ws 2011-05-03 09:41:59 -07:00
Tj Holowaychuk
f702884704 split methods supported by rfc [slaskis] 2011-05-03 09:24:51 -07:00
Tj Holowaychuk
0cb866845d npm 1.x docs 2011-05-02 12:48:45 -07:00
Tj Holowaychuk
26483029db docs for next("route"). Closes #650 2011-05-01 11:06:37 -07:00
Tj Holowaychuk
d2adcbdf67 Added "case sensitive routes" option. 2011-04-29 16:41:20 -07:00
Tj Holowaychuk
d2f963db2a fixed tests 2011-04-29 16:34:22 -07:00
TJ Holowaychuk
fc2bc1362f Merged pull request #645 from 8bitDesigner/patch-1.
Incorrect reference to template in a comment
2011-04-27 18:56:00 -07:00
8bitDesigner
6ae45d0fd3 The comment here refers to using "jade" for layouts, but you're using "ejs" instead. 2011-04-27 16:11:39 -07:00
Tj Holowaychuk
cc185a8c0e Release 2.3.2 2011-04-27 09:12:54 -07:00
Tj Holowaychuk
ae1078944c Fixed view hints
populate attempts on new View
2011-04-27 09:07:56 -07:00
Tj Holowaychuk
385a05dd10 bump 2011-04-26 15:26:24 -07:00
Tj Holowaychuk
2572a78648 Release 2.3.1 2011-04-26 15:26:04 -07:00
Tj Holowaychuk
470774cfba Fixed template caching collision issue. Closes #644
the parent view is resolved first so we always have the absolute path
available, so this should prevent collisions.
2011-04-26 15:24:31 -07:00
Tj Holowaychuk
351f6abe4c Merge branch 'refactor/router' 2011-04-26 14:36:51 -07:00
Tj Holowaychuk
53a16e1795 Added app.match() as app.match.all() 2011-04-26 13:59:59 -07:00
Tj Holowaychuk
ff77c8b205 Added app.lookup() as app.lookup.all() 2011-04-26 13:59:37 -07:00
Tj Holowaychuk
b33f38b109 Added app.remove() for app.remove.all() 2011-04-26 13:58:43 -07:00
Tj Holowaychuk
b9596d7ce8 Added app.remove.VERB() 2011-04-26 13:57:05 -07:00
Tj Holowaychuk
251175c025 test for previous commit 2011-04-26 13:30:47 -07:00
Tj Holowaychuk
fda1bc4630 moved fn.params to route.params 2011-04-26 13:30:21 -07:00
Tj Holowaychuk
83c2c176a9 misc 2011-04-26 13:28:20 -07:00
Tj Holowaychuk
9be5992f22 misc refactoring 2011-04-26 13:26:49 -07:00
Tj Holowaychuk
d8d23c0bf8 misc 2011-04-26 13:21:19 -07:00
Tj Holowaychuk
b2689fc40e docs 2011-04-26 13:16:19 -07:00
Tj Holowaychuk
a4cfde350f moved more tests 2011-04-26 13:14:21 -07:00
Tj Holowaychuk
7374027457 added router.test.js 2011-04-26 13:13:07 -07:00
Tj Holowaychuk
63328c2177 added .index to match() retvals 2011-04-26 13:01:53 -07:00
Tj Holowaychuk
c4e2ce23e5 more Route tests 2011-04-26 12:59:25 -07:00
Tj Holowaychuk
dacad53b2e Added instancoef Route test 2011-04-26 12:57:14 -07:00
Tj Holowaychuk
4ffd5280a7 expose Route 2011-04-26 12:55:31 -07:00
Tj Holowaychuk
74310fb464 misc refactoring 2011-04-26 12:53:57 -07:00
Tj Holowaychuk
8b2268cf38 Started Route implementation 2011-04-26 12:41:05 -07:00
Tj Holowaychuk
fb655f4981 added lib/router/methods.js 2011-04-26 11:49:51 -07:00
Tj Holowaychuk
7208c33d72 refactored view.js 2011-04-26 11:40:44 -07:00
Tj Holowaychuk
4efb25d048 refactored https.js 2011-04-26 11:39:09 -07:00
Tj Holowaychuk
a3678cd7f6 refactored http.js 2011-04-26 11:34:41 -07:00
Tj Holowaychuk
393d38f1ab stubbed Route 2011-04-26 11:31:31 -07:00
Tj Holowaychuk
805b9ac3a9 docs for "view cache" setting 2011-04-25 12:06:20 -07:00
Tj Holowaychuk
379b9812be refactored options() helper 2011-04-25 10:26:08 -07:00
Tj Holowaychuk
a9992b5647 docs 2011-04-25 10:19:13 -07:00
Tj Holowaychuk
b6c0a9b1b5 moved router to router/index 2011-04-25 10:17:13 -07:00
Tj Holowaychuk
1d2dd2a375 Merge branch 'feature/router' 2011-04-25 10:13:46 -07:00
Tj Holowaychuk
63db694aa2 utilizing local router 2011-04-25 10:13:30 -07:00
Tj Holowaychuk
b6aca36ad9 htmlEscape -> escape 2011-04-25 10:11:38 -07:00
Tj Holowaychuk
8420ae93fd removed old path utils 2011-04-25 10:10:43 -07:00
Tj Holowaychuk
6722716fa7 Moved router over from connect 2011-04-25 10:08:54 -07:00
Tj Holowaychuk
658e064220 Release 2.3.0 2011-04-25 09:49:54 -07:00
Tj Holowaychuk
66b472e567 connect >= 1.4.0 2011-04-25 09:32:57 -07:00
Tj Holowaychuk
3d242a607e Fixed caching of views when using several apps. Closes #637
simple fix :)
2011-04-25 09:25:23 -07:00
Tj Holowaychuk
bc68e5e7a3 misc 2011-04-25 09:20:31 -07:00
Tj Holowaychuk
aa6858189c misc refactor 2011-04-23 18:54:49 -07:00
Tj Holowaychuk
06fda62c9e Merge branch 'refactor/route-middleware' 2011-04-22 16:49:04 -07:00
Tj Holowaychuk
5688ea650d Fixed gotcha invoking app.param() callbacks once per route middleware. Closes #638 2011-04-22 16:48:54 -07:00
Tj Holowaychuk
f5c4e9d612 Updated connect submodule 2011-04-22 16:34:42 -07:00
Tj Holowaychuk
b9eda2a59d Updated connect submodule 2011-04-22 16:11:13 -07:00
Tj Holowaychuk
8c168b0971 connect >= 1.3.1 < 2.0.0 2011-04-22 16:11:07 -07:00
Tj Holowaychuk
9c20a50ee2 Added failing test for gotcha 2011-04-22 14:44:08 -07:00
Tj Holowaychuk
eac666574e viewHelpers -> _locals 2011-04-21 08:26:30 -07:00
Tj Holowaychuk
e4c840f6b8 Added res.helpers() as alias of res.locals()
to match app.locals() / app.helpers()
2011-04-20 15:26:22 -07:00
Daniel Shaw
3afbcd0acf JSON and JSONP default to UTF-8 in the same way as HTML. Closes #632.
Signed-off-by: Tj Holowaychuk <tj@vision-media.ca>
2011-04-20 09:00:02 -07:00
Daniel Shaw
8f054dbcaf JSON and JSONP default to UTF-8 in the same way as HTML. Introduces app.set('charset') to set charset default at the application level. Closes #632.
Signed-off-by: Tj Holowaychuk <tj@vision-media.ca>
2011-04-20 09:00:02 -07:00
Tj Holowaychuk
ccc39e5aa2 Fixed partial lookup precedence. Closes #631 2011-04-19 10:23:16 -07:00
Tj Holowaychuk
53d4da2a9c Added failing partial precedence test 2011-04-19 10:19:45 -07:00
Tj Holowaychuk
d9e7153fc9 Renamed "cache views" to "view cache". Closes #628 2011-04-17 16:42:03 -07:00
Tj Holowaychuk
dc02b0d5ae Added options support to res.clearCookie() 2011-04-17 16:37:16 -07:00
Aaron Heckmann
e0bc5711b8 auto set Content-Type in res.attachement
Signed-off-by: Tj Holowaychuk <tj@vision-media.ca>
2011-04-14 13:48:22 -07:00
Tj Holowaychuk
957cf45fa1 Release 2.2.2 2011-04-12 02:44:47 -07:00
Tj Holowaychuk
f4487343df Fixed filename option passing to template engine 2011-04-12 02:43:03 -07:00
Tj Holowaychuk
ca1bdb31e3 Updated jade submodule 2011-04-12 02:41:30 -07:00
Tj Holowaychuk
236a412459 docs 2011-04-11 09:46:28 -07:00
Tj Holowaychuk
759a57bdb6 Added second callback support for res.download() connection errors
since you can no longer respond, it will be helpful to have separate callbacks
2011-04-11 09:44:19 -07:00
Tj Holowaychuk
1abb674a07 temp fix for nodes res.removeHeader() after sent "bug" 2011-04-11 09:14:11 -07:00
Tj Holowaychuk
961146a287 link to express-expose 2011-04-08 17:51:41 -07:00
Tj Holowaychuk
573f940985 fixed example hasMessages
sessions are not always available
2011-04-08 12:44:03 -07:00
Tj Holowaychuk
882916bb2e Updated jade submodule 2011-04-08 12:36:41 -07:00
Tj Holowaychuk
47d1c62732 Updated connect submodule 2011-04-08 12:36:35 -07:00
Tj Holowaychuk
d39293c025 refactor 2011-04-08 12:36:26 -07:00
Tj Holowaychuk
2942dafdfd >= connect 1.2.3 2011-04-05 11:25:16 -07:00
Tj Holowaychuk
4e1aefa5b5 Release 2.2.1 2011-04-04 12:23:37 -07:00
Tj Holowaychuk
89383ecc57 misc refactoring 2011-04-03 14:27:40 -07:00
Tj Holowaychuk
08046f7692 Added better partial() object collection support
only respecting .length is fine in some cases, but
if the object has a length and has holes, it will likely
produce an unexpected result, or an undefined local in the
render call, which may some times be ideal, but most likely not.

this change allows arbitrary objects to be passed to "collection: ",
however unfortunately there is no way to arbitrarily assume the object
is a collection without passing it as the option
2011-04-03 14:27:05 -07:00
Tj Holowaychuk
885fb1fa92 docs 2011-04-01 17:55:26 -07:00
Tj Holowaychuk
6a58c71528 Merge branch 'feature/view-layout-control' 2011-04-01 17:47:11 -07:00
Tj Holowaychuk
371d66ba2a Added layout(path) helper to change the layout within a view. Closes #610 2011-04-01 17:47:03 -07:00
Tj Holowaychuk
25bddf3fb5 added layout control example 2011-04-01 17:39:18 -07:00
Tj Holowaychuk
f6e9fb13f8 Removed "request" and "response" locals
sorry, changed my mind. easy enough to expose these if you want to,
but they are to large by default
2011-04-01 17:25:05 -07:00
Tj Holowaychuk
f0df8434e7 markdown escaping 2011-03-31 08:24:43 -07:00
Tj Holowaychuk
e4d3f239e5 Updated connect submodule 2011-03-30 22:01:16 -07:00
Tj Holowaychuk
bcc22dfa6f Updated connect submodule 2011-03-30 21:59:17 -07:00
Tj Holowaychuk
f614709a01 errorHandler title 2011-03-30 21:59:15 -07:00
Tj Holowaychuk
11250d22c9 misc refactoring 2011-03-30 21:44:21 -07:00
Tj Holowaychuk
4b4de29725 Performance improved with better view caching
the entire View object is now cached in-memory, along with the lookup
logic as well. This increases rendering (with jade at least) by about 260 rps
2011-03-30 21:40:05 -07:00
Tj Holowaychuk
99b49d2718 updated docs 2011-03-30 12:11:22 -07:00
Tj Holowaychuk
6230ec55be more docs 2011-03-30 12:02:14 -07:00
Tj Holowaychuk
0733d3c585 connect 1.2.0 2011-03-30 11:58:26 -07:00
Tj Holowaychuk
6f8370ff0e Updated connect submodule 2011-03-30 11:58:09 -07:00
Tj Holowaychuk
bc244ed07e docs for app.match.VERB() 2011-03-30 11:56:14 -07:00
Tj Holowaychuk
41266aa8e4 docs for app.lookup.VERB() 2011-03-30 11:49:21 -07:00
Tj Holowaychuk
45faee3e5b Release 2.2.0 2011-03-30 11:40:47 -07:00
Tj Holowaychuk
74ff735e10 Updated haml submodule 2011-03-30 11:00:47 -07:00
Tj Holowaychuk
97879f2b16 Updated formidable submodule 2011-03-30 11:00:43 -07:00
Tj Holowaychuk
1a338251ad Updated connect-form submodule 2011-03-30 11:00:34 -07:00
Tj Holowaychuk
354dc768c1 Updated jade submodule 2011-03-30 11:00:25 -07:00
Tj Holowaychuk
8a0796cd94 Updated ejs submodule 2011-03-30 11:00:21 -07:00
Tj Holowaychuk
cbc3b26584 changed express(1) --help 2011-03-30 10:58:01 -07:00
Tj Holowaychuk
d628583db8 removed colors from express(1) 2011-03-30 10:56:11 -07:00
Tj Holowaychuk
058777be1e connect >= 1.1.6 2011-03-29 18:11:00 -07:00
Tj Holowaychuk
260d03a0c4 Merge branch 'feature/route-lookup' 2011-03-29 18:04:49 -07:00
Tj Holowaychuk
6dcf6f41cc Added app.VERB() -> [Function...], app.lookup.VERB(), and app.match.VERB(). Closes #606 2011-03-29 18:04:43 -07:00
Tj Holowaychuk
799f790886 Updated connect submodule 2011-03-29 17:40:14 -07:00
Tj Holowaychuk
cb3c4b0ea9 Updated connect submodule 2011-03-29 17:38:39 -07:00
Tj Holowaychuk
798d255ba6 Release 2.1.1 2011-03-29 10:40:26 -07:00
Tj Holowaychuk
28ba9e8ac5 Fixed res.partial(); next(err) when no callback is given [reported by aheckmann] 2011-03-29 09:56:58 -07:00
Tj Holowaychuk
7888cb0506 docs 2011-03-29 09:51:38 -07:00
Tj Holowaychuk
5e284a20cc Updated connect submodule 2011-03-29 09:49:45 -07:00
Tj Holowaychuk
770357e727 Updated expresso submodule 2011-03-29 09:49:18 -07:00
Aaron Heckmann
673ba22555 res.send(undefined) returns a 204
closes #600

Signed-off-by: Tj Holowaychuk <tj@vision-media.ca>
2011-03-29 08:52:36 -07:00
Aaron Heckmann
fb38d9cfb7 add test for res.send(undefined)
Signed-off-by: Tj Holowaychuk <tj@vision-media.ca>
2011-03-29 08:52:34 -07:00
Aaron Heckmann
dda89a57ec ignore .swo .swp
Signed-off-by: Tj Holowaychuk <tj@vision-media.ca>
2011-03-29 08:52:34 -07:00
Tj Holowaychuk
62df63d3a0 doc typo 2011-03-29 08:39:35 -07:00
Tj Holowaychuk
e71696cf34 expose err.view when failing to locate a view
allows for:

   err.view.path

etc
2011-03-28 14:44:12 -07:00
Tj Holowaychuk
b5d8d58670 repo 2011-03-27 14:23:43 -07:00
Tj Holowaychuk
14e6a667f5 Release 2.1.0 2011-03-24 13:47:38 -07:00
Tj Holowaychuk
0c324783ae Merge branch 'feature/root-partial-lookup' 2011-03-24 13:34:02 -07:00
Tj Holowaychuk
5d6ce251ca Added <root>/_<name> partial lookup support 2011-03-24 13:33:52 -07:00
Tj Holowaychuk
92c04cee1d Added; partial lookup relative to view root. Closes #447
for example when nested deep, if you have a
partial located at ./views/messages.jade

partial("messages");

will still work
2011-03-24 13:26:32 -07:00
Tj Holowaychuk
7fdf587a7b added test for root partial lookup 2011-03-24 13:21:23 -07:00
Tj Holowaychuk
1e46218b09 doc typo 2011-03-24 11:46:40 -07:00
Tj Holowaychuk
c56fcd8fb9 better --help output 2011-03-22 13:00:36 -07:00
Tj Holowaychuk
319fbf7f64 Added "request", "response", and "app" locals 2011-03-22 12:16:58 -07:00
Tj Holowaychuk
bf06d9077c docs for "filename" local 2011-03-22 12:14:08 -07:00
Tj Holowaychuk
9d2bd29ee1 Added 'settings' local variable, containing the app's settings 2011-03-22 12:06:19 -07:00
Tj Holowaychuk
d11fa1f74e added .settings test 2011-03-22 12:02:57 -07:00
Tj Holowaychuk
c824da0dab test indentation 2011-03-22 11:59:29 -07:00
Tj Holowaychuk
9362c83a33 removed dead test 2011-03-22 11:59:05 -07:00
Tj Holowaychuk
0c38098f02 tweak req.flash() failure message 2011-03-21 16:13:40 -07:00
Pau Ramon
be7068f569 Better error output when using flash without session middleware. 2011-03-21 16:12:55 -07:00
Tj Holowaychuk
b122bf22e3 link typo 2011-03-21 12:06:36 -07:00
Tj Holowaychuk
b7232f38f3 Added res.send(bool) support
application/json
2011-03-21 10:34:04 -07:00
Tj Holowaychuk
c1b72ac1b7 Fixed stylus example for latest version 2011-03-21 08:45:43 -07:00
Roman Shtylman
b9e0d15878 check that this.params is valid before calling hasOwnProperty 2011-03-21 08:13:05 -07:00
Tj Holowaychuk
cf26cf7afc wrap try/catch around render() 2011-03-18 11:44:48 -07:00
Tj Holowaychuk
a75e60ae47 fixed docs due to markdown-js not supporting html 2011-03-18 09:18:29 -07:00
Tj Holowaychuk
187dc5dd03 connect 1.1.1 2011-03-18 08:49:59 -07:00
Tj Holowaychuk
9c9e2afade refactored res.redirect() 2011-03-18 08:49:46 -07:00
Tj Holowaychuk
fae1ba98c1 doc typo 2011-03-17 19:05:59 -07:00
Tj Holowaychuk
c3e632620a doc typo 2011-03-17 19:05:28 -07:00
Tj Holowaychuk
dd7158ac46 regenerated docs 2011-03-17 18:56:44 -07:00
Tj Holowaychuk
eefe51c7a7 removed manpages from make 2011-03-17 18:55:13 -07:00
Tj Holowaychuk
bf596dc023 Release 2.0.0 2011-03-17 18:06:30 -07:00
Tj Holowaychuk
220d88d654 Fixed up index view path alternative
previously was doing ../index, which was not intended
now doing ../VIEW/index
2011-03-17 15:36:44 -07:00
Tj Holowaychuk
a254e64bdb Changed; res.locals() without object returns the locals 2011-03-17 14:50:35 -07:00
Tj Holowaychuk
1555b92fb8 Release 2.0.0rc3 2011-03-17 13:01:59 -07:00
Tj Holowaychuk
d5b7a40b39 Fixed partials example 2011-03-17 13:00:43 -07:00
Tj Holowaychuk
bd1ab7ab96 pass the function 2011-03-17 12:48:06 -07:00
Tj Holowaychuk
2ff991bfcf refactored res.render() 2011-03-17 12:45:11 -07:00
Tj Holowaychuk
0b1378a539 Added res.locals(obj) 2011-03-17 12:13:59 -07:00
Tj Holowaychuk
723c908bd7 Added res.partial() callback support 2011-03-17 12:10:32 -07:00
Tj Holowaychuk
4874404701 typo 2011-03-17 11:33:35 -07:00
Tj Holowaychuk
4c1374840a Release 2.0.0rc2 2011-03-17 11:01:20 -07:00
Tj Holowaychuk
5da01633fd Fixed SlowBuffer support. Closes #584 2011-03-17 10:37:34 -07:00
Tj Holowaychuk
cdbd8af527 migration docs for partials 2011-03-17 09:31:32 -07:00
Tj Holowaychuk
a6fdc1bfd2 Fixed .filename view engine option [reported by drudge] 2011-03-16 16:58:02 -07:00
Tj Holowaychuk
20b8facb05 docs for partial changes 2011-03-16 15:53:27 -07:00
Tj Holowaychuk
909914f7af Changed; partial() "locals" are now optional
this means that:

   partial("user", { name: "tj" })

with the intent of receiving "user" instead of "name" in this
case is invalid, "name" here is a local, however passing a non-plain
object such as a User object is fine:

    partial("user", new User("tj"));
2011-03-16 15:37:05 -07:00
Tj Holowaychuk
3f31ebc676 fixed express-contrib example reference 2011-03-15 15:23:28 -07:00
Tj Holowaychuk
f3c068a90c Merge branch 'integration' 2011-03-15 10:52:58 -07:00
Tj Holowaychuk
90d7e193d1 Refactored Server#use()
eventually we should just emit some events from connect
2011-03-15 10:52:53 -07:00
Tj Holowaychuk
c9f5bb6f17 added .app test for the mounted server as well 2011-03-15 10:39:59 -07:00
Ben Weaver
9865a4c4f2 Clean up patch to Server#use(), add test case for restoring res#app property. 2011-03-15 10:37:18 -07:00
Ben Weaver
f12baf32d4 Restore original res.app when out() is called. 2011-03-15 10:37:18 -07:00
Tj Holowaychuk
80f4d08e8b Release 2.0.0rc 2011-03-14 15:01:37 -07:00
Tj Holowaychuk
07c9cae923 Fixed; expose HTTPSServer constructor 2011-03-14 14:36:22 -07:00
Tj Holowaychuk
d867cc9271 Fixed express(1) default test charset. Cloeses #579 [reported by secoif] 2011-03-13 10:15:53 -07:00
Tj Holowaychuk
3a1fe1e295 Fixed; default charset to utf-8 instead of utf8 for lame IE [reported by NickP] 2011-03-11 16:34:41 -08:00
Tj Holowaychuk
3cacf050df Docs for staticProvider() changes 2011-03-11 14:11:45 -08:00
Tj Holowaychuk
1536d73d1b Release 2.0.0beta3 2011-03-09 15:45:55 -08:00
Tj Holowaychuk
55143a9d44 Updated connect submodule 2011-03-09 15:39:10 -08:00
Tj Holowaychuk
c92e193916 Fixed res.redirect(). RFC states absolute 2011-03-09 15:18:22 -08:00
Tj Holowaychuk
d12452fc49 docs for charset 2011-03-09 10:59:47 -08:00
Tj Holowaychuk
3d8400a40c docs for res.contentType() literal 2011-03-09 10:54:35 -08:00
Tj Holowaychuk
1fe0aea0b0 Added test for res.contentType() literal 2011-03-09 10:53:50 -08:00
Tj Holowaychuk
5df2544883 fixed a test 2011-03-09 10:46:59 -08:00
Tj Holowaychuk
acbf224277 default res.send() string charset to utf8 2011-03-09 10:42:14 -08:00
Tj Holowaychuk
d0d17a0d35 charset tests using ISO-8859-1 2011-03-09 10:33:28 -08:00
Tj Holowaychuk
f7b53d33bc more tests 2011-03-09 10:33:06 -08:00
Tj Holowaychuk
92be06874b more tests 2011-03-09 10:31:45 -08:00
Tj Holowaychuk
f327455d9d Added charset option for render() 2011-03-09 10:31:10 -08:00
Tj Holowaychuk
54415bf2af moved a test 2011-03-09 10:29:03 -08:00
Tj Holowaychuk
bac62dfcd9 added charset test with res.render() 2011-03-09 10:26:37 -08:00
Tj Holowaychuk
820b43c1f3 Added .charset + res.send() test 2011-03-09 10:23:05 -08:00
Tj Holowaychuk
a5b69290d5 fixed a test 2011-03-09 10:20:44 -08:00
Tj Holowaychuk
5c7a9c86f6 Updated connect submodule 2011-03-09 10:20:03 -08:00
Tj Holowaychuk
7f83f916f6 Updated jade submodule 2011-03-09 09:46:47 -08:00
Masahiro Hayashi
c15a949cc3 Updated express command
- Fixed a genereated test's bug
- Added a forgotten semicolon
2011-03-08 13:42:06 -08:00
Tj Holowaychuk
ce47f96570 dont change NODE_ENV in tests 2011-03-08 13:39:30 -08:00
Tj Holowaychuk
57b035cd94 hinting at fully resolved paths 2011-03-08 12:58:16 -08:00
Tj Holowaychuk
f1f126171c Added view resolution hints when in development 2011-03-08 12:51:40 -08:00
Tj Holowaychuk
71e1bcd855 fixed a test 2011-03-08 12:02:35 -08:00
Tj Holowaychuk
b5579b6307 Added layout lookup support relative to the page view
for example if you render ./views/forum/thread and
./views/forum/thread/layout.jade exists, it will be used,
falling back on ./views/layout.jade.
2011-03-08 12:01:45 -08:00
Tj Holowaychuk
110b0fe14a misc refactor 2011-03-08 11:47:03 -08:00
Tj Holowaychuk
d7488bbb62 Removed Partial constructor (not used) 2011-03-08 11:42:03 -08:00
Tj Holowaychuk
2007407e7b docs 2011-03-08 09:56:24 -08:00
Tj Holowaychuk
d152e7e780 Added res.render() status support back
useful for error templates that display the status _and_
set the status code
2011-03-08 09:56:05 -08:00
Tj Holowaychuk
d4f4b6682d Release 2.0.0beta2 2011-03-07 09:40:39 -08:00
Tj Holowaychuk
7f4a12f4cd Added regular css file to stylus example 2011-03-07 09:34:41 -08:00
Tj Holowaychuk
07d06adf86 Added res.render() .locals support back to aid in migration process 2011-03-07 09:15:36 -08:00
Tj Holowaychuk
47dc188d57 Updated jade submodule 2011-03-04 18:33:29 -08:00
Tj Holowaychuk
85d22541d2 Fixed flash example 2011-03-04 11:18:19 -08:00
Tj Holowaychuk
90ec1031f9 typo in flash example 2011-03-04 11:03:47 -08:00
Tj Holowaychuk
9bc9ad13a4 < connect 2.0.0 2011-03-04 08:52:15 -08:00
Tj Holowaychuk
1782c7d778 regenerated docs 2011-03-04 08:46:55 -08:00
Tj Holowaychuk
e85752c527 Add haml back in docs 2011-03-04 08:44:35 -08:00
Tj Holowaychuk
dfdbbb514f haml working fine 2011-03-04 08:43:52 -08:00
Tj Holowaychuk
976f5ca93e Updated haml submodule 2011-03-04 08:43:07 -08:00
Tj Holowaychuk
2086f8d34c beta in express --version 2011-03-03 17:16:25 -08:00
Tj Holowaychuk
6873a68216 changelog typo 2011-03-03 16:34:05 -08:00
Tj Holowaychuk
9eb2c61760 docs 2011-03-03 16:15:17 -08:00
Tj Holowaychuk
543e791206 docs 2011-03-03 16:13:20 -08:00
Tj Holowaychuk
b6e8b3fa84 added express-namespace link 2011-03-03 16:10:38 -08:00
Tj Holowaychuk
6f8e406b7b added express-messages link 2011-03-03 16:08:52 -08:00
Tj Holowaychuk
93bc54b65c added express-configure link 2011-03-03 16:07:22 -08:00
Tj Holowaychuk
3bf0ac4a36 added express-resource link 2011-03-03 16:05:49 -08:00
Tj Holowaychuk
bc01bfff21 connect docs 2011-03-03 16:02:27 -08:00
Tj Holowaychuk
0d4eaf03fc Added make site 2011-03-03 15:59:47 -08:00
Tj Holowaychuk
2bb0412473 docs 2011-03-03 15:49:34 -08:00
Tj Holowaychuk
07ce5d3158 docs for res.render() and res.partial() 2011-03-03 15:49:30 -08:00
Tj Holowaychuk
131970b3e5 docs 2011-03-03 15:39:44 -08:00
Tj Holowaychuk
00e1dbfbd9 docs for res.cookie() 2011-03-03 15:30:43 -08:00
Tj Holowaychuk
4c274c524d Added res.cookie() maxAge support 2011-03-03 15:27:03 -08:00
Tj Holowaychuk
5581ca2751 docs 2011-03-03 15:07:35 -08:00
Tj Holowaychuk
5cd9a9540f docs 2011-03-03 14:40:47 -08:00
Tj Holowaychuk
1db2efa75a docs 2011-03-03 14:39:10 -08:00
Tj Holowaychuk
c1a82bf3ea docs 2011-03-03 14:18:42 -08:00
Tj Holowaychuk
7705042cac docs 2011-03-03 13:31:09 -08:00
Tj Holowaychuk
b9e311e893 version docs 2011-03-03 13:26:31 -08:00
Tj Holowaychuk
460998497d docs 2011-03-03 13:25:31 -08:00
Tj Holowaychuk
022c5e1411 note on locals 2011-03-03 13:10:50 -08:00
Tj Holowaychuk
60daf0d6c7 Ignore .DS_Store 2011-03-03 12:53:34 -08:00
Tj Holowaychuk
0b6a941624 more docs 2011-03-03 12:47:01 -08:00
Tj Holowaychuk
1fc520b45a Fixed partial() issue where the parent locals clobber those given directly 2011-03-03 12:44:37 -08:00
Tj Holowaychuk
cbbee38be8 Added more view examples 2011-03-03 11:54:16 -08:00
Tj Holowaychuk
2dae6d8285 Fixed mounting of non-express servers 2011-03-03 11:33:53 -08:00
Tj Holowaychuk
65c8a956f1 do not try ../index when rendering a layout 2011-03-03 11:23:16 -08:00
Tj Holowaychuk
2b907e9a8c fixing tests 2011-03-03 11:21:57 -08:00
Tj Holowaychuk
25e520c243 misc 2011-03-03 11:11:08 -08:00
Tj Holowaychuk
2124c8465a removed scope tests 2011-03-03 11:05:16 -08:00
Tj Holowaychuk
a49e1f4f3d Changed default view scope to a plain object
easier to debug, and kinda useless to use "this" anyway
2011-03-03 10:59:00 -08:00
Tj Holowaychuk
32be4a7812 Added View#upIndexPath 2011-03-03 10:54:54 -08:00
Tj Holowaychuk
92967d3457 Added failing test for partial("foo") loading the index 2011-03-03 10:28:51 -08:00
Tj Holowaychuk
d70fee7432 Added partial() index test 2011-03-03 10:24:50 -08:00
Tj Holowaychuk
97b8e75932 Added index view test 2011-03-03 10:18:19 -08:00
Tj Holowaychuk
8a62f8cef0 view lookup docs 2011-03-03 10:10:18 -08:00
Tj Holowaychuk
10f4f523fa populate changelog for 2.0.0beta 2011-03-03 10:00:56 -08:00
Tj Holowaychuk
1e392d2628 populate changelog from 1.x 2011-03-03 09:36:38 -08:00
Tj Holowaychuk
eb6ff62113 Fixed req.param() bug returning Array.prototype methods. Closes #552 2011-03-03 09:20:28 -08:00
Tj Holowaychuk
64da2621da Merge branch 'docs' 2011-03-02 18:37:43 -08:00
Tj Holowaychuk
61aec6e961 Added markdown template engine example 2011-03-02 18:37:36 -08:00
Tj Holowaychuk
42f3ad436d docs 2011-03-02 18:37:29 -08:00
Tj Holowaychuk
2f7b78c03a ejs example using app.register() 2011-03-02 18:27:12 -08:00
Tj Holowaychuk
402d37d613 docs 2011-03-02 18:25:21 -08:00
Tj Holowaychuk
96327c979c docs 2011-03-02 18:10:51 -08:00
Tj Holowaychuk
9d1b3f59d5 docs 2011-03-02 17:20:39 -08:00
Tj Holowaychuk
14bd50efe4 docs 2011-03-02 16:59:48 -08:00
Tj Holowaychuk
631c1f95e7 node ">= 0.4.1 < 0.5.0" 2011-03-02 16:36:05 -08:00
Tj Holowaychuk
50006f7e43 docs 2011-03-02 16:22:53 -08:00
Tj Holowaychuk
4c9503158b connect >= 1.0.1 2011-03-02 16:16:03 -08:00
Tj Holowaychuk
6c8e461db5 beta 2011-03-02 16:15:37 -08:00
Tj Holowaychuk
aaa8415169 Removed partial() / render() status and header options 2011-03-02 16:11:02 -08:00
Tj Holowaychuk
51e964498c docs 2011-03-02 16:08:39 -08:00
Tj Holowaychuk
0cddc70ff5 node 0.4.x only 2011-03-02 15:57:33 -08:00
Tj Holowaychuk
99dcf7508f Added res.redirect() mount test 2011-03-02 15:52:41 -08:00
Tj Holowaychuk
7822d1f148 docs 2011-03-02 15:45:24 -08:00
Tj Holowaychuk
a572a7126c Merge branch 'mounting' 2011-03-02 15:42:34 -08:00
Tj Holowaychuk
a1609faba0 stylesheet respecting base 2011-03-02 15:42:29 -08:00
Tj Holowaychuk
9bf823d893 Added mount support for res.redirect(), now respects the mount-point 2011-03-02 15:37:12 -08:00
Tj Holowaychuk
ca184e7725 Updated connect submodule 2011-03-02 15:26:21 -08:00
Tj Holowaychuk
5054507487 added "base" local to blog example for mounting 2011-03-02 15:17:19 -08:00
Tj Holowaychuk
ab93be0178 refactored blog example 2011-03-02 15:06:23 -08:00
Tj Holowaychuk
8b0993bb10 misc 2011-03-02 15:02:57 -08:00
Tj Holowaychuk
0a034bb3ea started mounting example 2011-03-02 15:01:46 -08:00
Tj Holowaychuk
4ce815a3ed Removed annotated docs 2011-03-02 14:49:39 -08:00
Tj Holowaychuk
4da860eae1 removed api.html 2011-03-02 14:49:26 -08:00
Tj Holowaychuk
27e4bdb814 more res.partial() examples 2011-03-02 14:39:24 -08:00
Tj Holowaychuk
dd9406cd52 Added res.partial(), using the same interface as partial() within a view. Closes #539 2011-03-02 14:27:07 -08:00
Tj Holowaychuk
509312773d partials example utilizing index 2011-03-02 13:56:47 -08:00
Tj Holowaychuk
42d2758c36 Added union() util, taking place of merge(clone()) combo 2011-03-02 13:41:36 -08:00
Tj Holowaychuk
ef1c858ffc more test refactoring 2011-03-02 13:31:11 -08:00
Tj Holowaychuk
7fd47c0ac6 more test refactoring 2011-03-02 13:21:54 -08:00
Tj Holowaychuk
a63b232ef1 more test refactoring 2011-03-02 13:20:27 -08:00
Tj Holowaychuk
acb502e5e3 refactoring tsts 2011-03-02 13:18:39 -08:00
Tj Holowaychuk
3661922bb0 refactored res.send() 2011-03-02 12:39:39 -08:00
Tj Holowaychuk
0704f149be misc 2011-03-02 12:28:24 -08:00
Tj Holowaychuk
334604de5d utilizing app.set() 2011-03-02 12:03:05 -08:00
Tj Holowaychuk
530328ac15 misc refactoring 2011-03-02 11:43:40 -08:00
Tj Holowaychuk
9914a1eb3f copyright 2011-03-02 11:37:19 -08:00
Tj Holowaychuk
5db5710d3f Merge branch 'bugs/local-precedence' 2011-03-02 11:31:21 -08:00
Tj Holowaychuk
9e9f55a8e3 fixed local precedence 2011-03-02 11:31:14 -08:00
Tj Holowaychuk
0800141a9d semi-colons 2011-03-02 11:13:39 -08:00
Tj Holowaychuk
dc6d469f0c added more local tests 2011-03-02 11:11:18 -08:00
Tj Holowaychuk
89299d77e4 bodyParser not bodyDecoder 2011-03-02 10:52:37 -08:00
Tj Holowaychuk
27d8bf6311 refactored express(1) stdin usage 2011-03-02 10:50:13 -08:00
Tj Holowaychuk
8c229a8560 fixed express(1) confirmation for 0.4.x 2011-03-02 10:47:14 -08:00
Tj Holowaychuk
29eed65a67 removed constants from express(1) 2011-03-02 10:43:55 -08:00
Tj Holowaychuk
f0e0073a09 more partial examples 2011-03-02 10:39:32 -08:00
Tj Holowaychuk
b70bde58be fixing more examples 2011-03-02 10:30:33 -08:00
Tj Holowaychuk
635fac776d renamed example to params 2011-03-02 10:26:43 -08:00
Tj Holowaychuk
7753d4e91d refactored partials example 2011-03-02 10:24:57 -08:00
Tj Holowaychuk
66a6214216 fixing more examples 2011-03-02 10:15:10 -08:00
Tj Holowaychuk
6cae1f09f1 docs 2011-03-02 10:09:07 -08:00
Tj Holowaychuk
c4432ee827 download example 2011-03-02 10:06:14 -08:00
Tj Holowaychuk
80a5bf2063 fixing examples 2011-03-02 10:02:42 -08:00
Tj Holowaychuk
5b3d5fc431 removed cache example 2011-03-02 09:57:11 -08:00
Tj Holowaychuk
cd38fb4177 refactored auth example 2011-03-02 09:56:09 -08:00
Tj Holowaychuk
9b1cc75b36 res.download() and res.sendfile() using connect now 2011-03-02 09:41:21 -08:00
Tj Holowaychuk
db8b2883e2 Updated connect submodule 2011-03-01 15:53:56 -08:00
Tj Holowaychuk
59a74ecce4 refactoring to use connects static server 2011-03-01 15:42:42 -08:00
Tj Holowaychuk
9099c61df9 Merge branch 'progressive-headers' 2011-03-01 14:41:01 -08:00
Tj Holowaychuk
50521281ce utilizing nodes progressive response header api 2011-03-01 14:40:46 -08:00
Tj Holowaychuk
0cc6abf741 refactored req.is() 2011-03-01 14:34:36 -08:00
Tj Holowaychuk
fe266ae4fe misc refactoring 2011-03-01 14:32:59 -08:00
Tj Holowaychuk
7c15cdeb69 misc refactoring 2011-03-01 14:30:48 -08:00
Tj Holowaychuk
848086947c refactor errorHandler registration 2011-03-01 14:20:25 -08:00
Tj Holowaychuk
5ec4ea754c misc refactoring 2011-03-01 14:18:14 -08:00
Tj Holowaychuk
41467d54df docs 2011-03-01 14:16:16 -08:00
Tj Holowaychuk
8261437764 Merge branch 'features/https' 2011-03-01 14:08:40 -08:00
Tj Holowaychuk
54eac368d0 Finished https support 2011-03-01 14:06:53 -08:00
Tj Holowaychuk
72511ea1e9 Started https.js 2011-03-01 13:53:22 -08:00
Tj Holowaychuk
da7921f2c6 Moved server.js into http.js 2011-03-01 13:34:50 -08:00
Tj Holowaychuk
cd519e97e7 tests running again 2011-03-01 11:00:50 -08:00
Tj Holowaychuk
2a7a5aeefe Renaming usage of old connect middleware 2011-03-01 10:59:09 -08:00
Tj Holowaychuk
bdbacb41da prepping for connect 1.0 2011-03-01 10:54:04 -08:00
Tj Holowaychuk
2dd736a201 Updated expresso submodule 2011-03-01 10:45:07 -08:00
Tj Holowaychuk
ec3c797105 Updated connect submodule 2011-03-01 10:39:50 -08:00
Tj Holowaychuk
770f05c060 styling 2011-02-23 15:41:59 -08:00
Tj Holowaychuk
6993a27d8e refactored res.redirect() with res.req.header() for referrer 2011-02-23 15:39:06 -08:00
Tj Holowaychuk
68fd658536 more tests 2011-02-23 15:37:27 -08:00
Tj Holowaychuk
9fc349965d Changed; charsets are no longer implied 2011-02-23 15:24:56 -08:00
Tj Holowaychuk
0a667ff741 Added mime support submod 2011-02-23 15:23:48 -08:00
Tj Holowaychuk
d37ad85f72 replaced connect.utils.mime() with mime module 2011-02-23 15:23:08 -08:00
Tj Holowaychuk
2b63568611 node >= 0.4.0 2011-02-21 13:46:40 -08:00
Tj Holowaychuk
fcf9f93825 2.0.0-pre 2011-02-21 13:46:26 -08:00
Tj Holowaychuk
07efc0b73b clean up generated app 2011-02-21 13:43:00 -08:00
Tj Holowaychuk
6813b48c7e replaced link to express-contrib with new solo repos 2011-02-21 11:37:19 -08:00
Tj Holowaychuk
d58444c6d2 Updated ejs submodule 2011-02-17 23:41:28 -08:00
Tj Holowaychuk
dd8a0bd30f removed .config (unused prop) 2011-02-15 14:09:01 -08:00
Tj Holowaychuk
b65b0636aa Added req.header() Referrer / Referer special-case 2011-02-14 19:38:01 -08:00
Tj Holowaychuk
9ec6321261 qs >= 0.0.6 2011-02-14 15:26:00 -08:00
Tj Holowaychuk
07eb66c205 Fixed res.download() callback, passing stream. Closes #528
should be able to figure something out with this.
at very least use redis or something with INCR/DECR to
keep a count on active downloads
2011-02-10 08:57:53 -08:00
Tj Holowaychuk
0e790e6fb5 using Stream#pipe() instead of sys.pump() 2011-02-10 08:50:11 -08:00
Tj Holowaychuk
08186924a4 qs >= 0.0.3 2011-02-08 16:57:09 -08:00
Tj Holowaychuk
e9faf5cf94 Updated qs submodule 2011-02-08 16:56:33 -08:00
Tj Holowaychuk
8c0efe09e5 comment typo 2011-02-08 12:34:00 -08:00
Tj Holowaychuk
32d2c96d22 docs 2011-02-08 11:07:06 -08:00
Tj Holowaychuk
e958988989 styling for stylus example 2011-02-08 11:01:53 -08:00
Tj Holowaychuk
131f10bd80 more work on stylus example 2011-02-08 10:55:22 -08:00
Tj Holowaychuk
a61615a196 Setting up Stylus example 2011-02-08 10:42:39 -08:00
Tj Holowaychuk
4fdb6910a5 Allow req.query to be pre-defined (via middleware or other parent app) 2011-02-07 16:30:38 -08:00
Tj Holowaychuk
67c4c90351 Updated qs submodule 2011-02-07 15:35:46 -08:00
Tj Holowaychuk
16f7288b19 Updated connect submodule 2011-02-07 15:35:43 -08:00
Tj Holowaychuk
36a7e87ae4 querystring -> qs 2011-02-07 14:36:28 -08:00
Tj Holowaychuk
16badda118 Added test for periods in dirname when using "view engine" 2011-02-07 13:59:14 -08:00
Tj Holowaychuk
99820e7edc Refactored req/res proto assignments
since the names may change in the near future (is suspect at least)
due to inconsistancies
2011-02-03 21:05:04 -08:00
Tj Holowaychuk
6a03a92f5f Refactored res.header() 2011-02-03 21:03:27 -08:00
Tj Holowaychuk
80c3b98a84 Added multiple Set-Cookie header tests 2011-02-03 21:01:28 -08:00
Tj Holowaychuk
afd2b4b387 Removed alternate installation methods (use git, tarball, or npm) 2011-02-03 21:00:33 -08:00
Tj Holowaychuk
df49769f3d Fixed two tests 2011-02-03 20:49:53 -08:00
Tj Holowaychuk
05c2946322 Added qs submod 2011-02-03 20:47:54 -08:00
Tj Holowaychuk
2ed392edbf Updated connect submodule 2011-02-03 20:44:19 -08:00
Tj Holowaychuk
3d597a554d moved files from lib/express/* to lib/ 2011-02-03 20:20:42 -08:00
Tj Holowaychuk
42af4e40ae Updated connect submodule 2011-02-03 20:19:32 -08:00
Tj Holowaychuk
242efc7219 Updated jade submodule 2011-02-02 09:42:09 -08:00
Tj Holowaychuk
a6bacb857d Added redis session example 2011-02-01 10:02:15 -08:00
Tj Holowaychuk
eab54724a1 connect >= 0.5.7 2011-02-01 08:32:50 -08:00
Tj Holowaychuk
49885cfeff Updated connect submodule 2011-02-01 08:31:14 -08:00
Tj Holowaychuk
4330f49011 Added stylus support to express(1) generated app 2011-01-31 14:40:19 -08:00
Tj Holowaychuk
7687299275 Added secret to session middleware used in examples and generated app 2011-01-29 12:36:48 -08:00
Tj Holowaychuk
79ba787b03 Re-added jade submodule to hopefully fix #514 2011-01-28 12:04:12 -08:00
Tj Holowaychuk
5a184a205f Removed jade submodule 2011-01-28 12:03:39 -08:00
Tj Holowaychuk
4b5a6b597a Added formidable submod for multipart example 2011-01-25 10:04:06 -08:00
Tj Holowaychuk
9e9c3eeb79 Added vhost example 2011-01-25 09:38:02 -08:00
Tj Holowaychuk
cd996f9dbf Updated connect submodule 2011-01-25 09:12:24 -08:00
Tj Holowaychuk
ab4c91158a Added another partial locals test 2011-01-25 07:56:20 -08:00
Tj Holowaychuk
1130a23e5b Added test for partial locals on subsequent calls 2011-01-25 07:39:14 -08:00
Tj Holowaychuk
9ac6943220 Updated jade submodule 2011-01-24 11:45:58 -08:00
Tj Holowaychuk
0f55284b77 Updated changelog 2011-01-20 08:39:29 -08:00
Tj Holowaychuk
c75046de3f docs 2011-01-19 11:01:59 -08:00
Tj Holowaychuk
e7df82f110 Added 416 support to res.sendfile() 2011-01-19 09:28:48 -08:00
Tj Holowaychuk
ee4c7d3007 Removed "stream threshold" setting 2011-01-19 09:17:27 -08:00
Tj Holowaychuk
2895303421 Added Content-Length to res.sendfile(). Closes #507 2011-01-19 09:07:05 -08:00
Tj Holowaychuk
3f16f05525 Added HEAD support to res.sendfile() 2011-01-19 08:47:42 -08:00
Tj Holowaychuk
fb33671923 Ignore testing.js 2011-01-19 08:43:51 -08:00
Tj Holowaychuk
482fb5b6e2 Strip unsafe chars from jsonp callbacks 2011-01-13 14:13:16 -08:00
Tj Holowaychuk
b1004b61f9 fixed session example/tests due to connect changes 2011-01-13 12:11:18 -08:00
Tj Holowaychuk
27af9b2605 Updated connect submodule 2011-01-13 12:09:49 -08:00
Tj Holowaychuk
e28ac866f8 fixed width for github example css 2011-01-12 10:17:31 -08:00
Tj Holowaychuk
5e0a80f227 Updated connect submodule 2011-01-09 23:42:42 -08:00
Tj Holowaychuk
ec0982ca1f Added flash messages to blog example 2011-01-05 19:09:56 -08:00
Tj Holowaychuk
e7c442d21c Updated connect submodule 2011-01-03 13:34:36 -08:00
Tj Holowaychuk
a9db47fdd3 Updated connect submodule 2011-01-03 13:30:54 -08:00
Tj Holowaychuk
b856a72886 more examples 2010-12-31 16:13:19 -08:00
Tj Holowaychuk
03da0d31f9 Styling 2010-12-31 15:46:50 -08:00
Tj Holowaychuk
1c40e4374b More example 2010-12-31 15:37:27 -08:00
Tj Holowaychuk
d7df1426f2 Updated connect submodule 2010-12-31 15:07:00 -08:00
Tj Holowaychuk
5035e86f59 more example 2010-12-31 15:03:00 -08:00
Tj Holowaychuk
0af91265ab Added default param support to req.param(name, default) 2010-12-31 09:21:51 -08:00
Tj Holowaychuk
8e63d04e66 Re-built docs 2010-12-31 09:04:44 -08:00
Tj Holowaychuk
5ac0c6deb0 Added res.local(name[, val]) docs 2010-12-31 09:04:30 -08:00
Tj Holowaychuk
6b0d82fb0c Added res.local() for progressive view locals
for middleware etc.
res.local("foo", "bar") => "bar"
res.local("foo") => "bar"
2010-12-31 08:59:35 -08:00
Tj Holowaychuk
2bfdfe366c Fixed for middleware stacked via createServer() 2010-12-29 11:21:24 -08:00
Tj Holowaychuk
898fb0f320 Added failing middleware precedence tests 2010-12-29 11:15:40 -08:00
Tj Holowaychuk
f53686a2f3 Fixed index view resolution bug introduced by 1c2e9a476c 2010-12-29 08:57:56 -08:00
mgutz
eae1670f54 madestr local 2010-12-29 08:45:22 -08:00
Tj Holowaychuk
544d68833c Fixed express(1) support for < 0.3.x 2010-12-28 12:00:04 -08:00
Tj Holowaychuk
c24a6b2359 Fixed express(1) mode 2010-12-28 11:56:44 -08:00
Tj Holowaychuk
b720b57d1d Updated jade submodule 2010-12-28 04:59:28 -08:00
Tj Holowaychuk
365b7fe90a Merge branch 'OPTIONS' 2010-12-28 04:05:44 -08:00
Tj Holowaychuk
c7ab833e66 Added OPTIONS test 2010-12-28 04:05:39 -08:00
Tj Holowaychuk
9536f288e9 Updated connect submodule 2010-12-28 04:03:43 -08:00
Tj Holowaychuk
e64d4039d0 Generating methods based on connect.router.methods 2010-12-28 03:12:11 -08:00
Tj Holowaychuk
5f077e56f0 Updated connect submodule 2010-12-28 03:09:07 -08:00
Tj Holowaychuk
a9253a24e0 Added docs for app.{disabled,enabled}() 2010-12-23 09:29:43 -08:00
Tj Holowaychuk
749136b526 Added app.disabled() and app.enabled() 2010-12-23 09:28:15 -08:00
Tj Holowaychuk
36a8b7b7f3 Docs 2010-12-22 15:49:37 -08:00
Tj Holowaychuk
a29908c865 Few jade changes to partials example 2010-12-22 15:48:41 -08:00
Hunter Loftis
57d87c27cd Created examples/partials to demonstrate view name, file, object resolution 2010-12-22 15:44:26 -08:00
Hunter Loftis
1c2e9a476c Fixed _ prefix object resolution on partials (resolveObjectName), added _ prefix fallback to view file resolution (prefixPath) 2010-12-22 15:44:26 -08:00
shuwatto
5d87133df0 Constants don't exist in process. The same problem is reported following link https://github.com/senchalabs/connect/issues/closed#issue/119 2010-12-21 09:04:23 -08:00
Tj Holowaychuk
fd2f67b73f Route precondition docs 2010-12-20 05:53:50 -08:00
Tj Holowaychuk
d3abcaf67b Regenerated docs 2010-12-20 05:41:05 -08:00
Tj Holowaychuk
14dce5ac2b Docs 2010-12-20 05:40:51 -08:00
Tj Holowaychuk
abd002071a Test for named capture groups 2010-12-20 05:29:01 -08:00
Tj Holowaychuk
77add42eeb Updated connect submodule 2010-12-20 05:27:21 -08:00
Tj Holowaychuk
bba049b4bf Docs 2010-12-20 05:27:07 -08:00
Tj Holowaychuk
4e41c3520c Contrib guide link 2010-12-20 05:18:32 -08:00
Tj Holowaychuk
4144af3351 Added screencasts page 2010-12-20 05:17:25 -08:00
Tj Holowaychuk
30f749a2a2 Docs 2010-12-20 05:05:47 -08:00
Tj Holowaychuk
6e9f282af7 added .npmignore 2010-12-18 13:42:43 -08:00
Tj Holowaychuk
4491be01dd Using named capture group for downloads example 2010-12-16 09:21:31 -08:00
Tj Holowaychuk
8c163fd980 Updated connect-form submodule 2010-12-15 09:45:45 -08:00
Tj Holowaychuk
9f6a158fc2 Fixed SyntaxError in express(1) app tests 2010-12-14 08:20:00 -08:00
Tj Holowaychuk
19965fa3c8 Aliased app.helpers() as app.locals(). Closes #481 2010-12-12 16:10:59 -08:00
Tj Holowaychuk
6bb42ffafc should 2010-12-12 16:10:01 -08:00
Tj Holowaychuk
4a1edc0720 indentation fix 2010-12-12 16:08:27 -08:00
Tj Holowaychuk
a5a016bf33 Updated connect submodule 2010-12-10 12:42:55 -08:00
Tj Holowaychuk
4be4f597a3 Updated connect submodule 2010-12-10 12:42:36 -08:00
Tj Holowaychuk
dfbbd4f784 Merge branch 'partials' 2010-12-10 10:18:44 -08:00
Tj Holowaychuk
2662dae560 Removed "_" prefix from partials 2010-12-10 10:18:38 -08:00
Tj Holowaychuk
6f6f9f08f8 Added app.register() support for omitting leading "." 2010-12-10 08:15:27 -08:00
Tj Holowaychuk
a76fba57c4 Added extname with no leading "." support to res.contentType)
For example now you may:

    res.contentType("png");

or

    res.contentType(".png");

both are fine now
2010-12-10 08:14:15 -08:00
Tj Holowaychuk
680766f29b Updated jade submodule 2010-12-08 10:29:07 -08:00
Tj Holowaychuk
adcfd4ca4d Added more screencast links 2010-12-06 19:25:17 -08:00
Tj Holowaychuk
e276a49a91 Updated connect submodule 2010-12-06 18:13:07 -08:00
Tj Holowaychuk
5995f763b1 connect >= 0.5.0 2010-12-06 18:11:34 -08:00
Tj Holowaychuk
a123639b5c Fixed placeholder example 2010-12-06 17:45:01 -08:00
Tj Holowaychuk
8a118d53c8 Fixed some namespaced connect requires 2010-12-06 17:41:56 -08:00
Tj Holowaychuk
d572391532 Updated connect submodule 2010-12-06 17:39:27 -08:00
Tj Holowaychuk
58ae7a0402 Added param placeholder precondition example 2010-12-06 17:38:51 -08:00
Tj Holowaychuk
f843093a8c Added Array support to Server#param() 2010-12-06 17:28:17 -08:00
Tj Holowaychuk
3e06586f81 Added Server#param() 2010-12-06 17:18:44 -08:00
Tj Holowaychuk
60f148326a Updated expresso submodule 2010-12-06 17:05:30 -08:00
Tj Holowaychuk
02e1413ca5 Updated connect submodule 2010-12-06 17:04:50 -08:00
Tj Holowaychuk
7b4b85ee54 Updated connect submodule 2010-12-06 14:53:14 -08:00
Tj Holowaychuk
6c0a416f16 Added view partials screencast link 2010-12-05 11:06:26 -08:00
Tj Holowaychuk
23cc88bf92 Added introduction screencast link 2010-12-05 10:44:13 -08:00
Tj Holowaychuk
5528f0ddf2 Misc refactoring 2010-12-05 10:13:06 -08:00
Tj Holowaychuk
8d3296fb1b Fixed mvc example due to view lookup changes 2010-12-05 10:02:38 -08:00
Tj Holowaychuk
136f9209a3 route-separation example using new view resolution 2010-12-05 10:00:07 -08:00
Tj Holowaychuk
a290134fd2 Merge branch 'view-index' 2010-12-05 09:56:20 -08:00
Tj Holowaychuk
a54e59666a Added view index resolution support 2010-12-05 09:55:11 -08:00
Tj Holowaychuk
42ea6af1eb Added view index template support 2010-12-05 09:49:11 -08:00
Tj Holowaychuk
f9b741766b Started view index support 2010-12-05 09:46:59 -08:00
Tj Holowaychuk
09359329a0 ejs example using new partial lookup 2010-12-05 09:37:50 -08:00
Tj Holowaychuk
647bb41ddf Merge branch 'partial-lookup' 2010-12-05 09:33:26 -08:00
Tj Holowaychuk
f25c14d48d Fixed partial parent view ref 2010-12-05 09:33:20 -08:00
Tj Holowaychuk
81a3d559f5 Removed a require 2010-12-05 09:22:19 -08:00
Tj Holowaychuk
4e0ee7a5da Added more partial view path tests 2010-12-05 09:20:58 -08:00
Tj Holowaychuk
1c80a258d2 Passing dir 2010-12-05 09:17:20 -08:00
Tj Holowaychuk
129ed6a07b Added Partial#resolvePartialPath() 2010-12-05 09:16:12 -08:00
Tj Holowaychuk
df09a0c73b Partial tests using real fixtures 2010-12-05 09:13:41 -08:00
Tj Holowaychuk
ff5c958354 express(1) no longer passing assert in tests 2010-12-02 15:51:52 -08:00
Tj Holowaychuk
4f90c89db6 refactored req.accepts() 2010-12-02 10:07:28 -08:00
Tj Holowaychuk
524b515fdb docs 2010-12-02 10:06:40 -08:00
Tj Holowaychuk
163256b001 Added req.accepts() support for extensions 2010-12-02 10:05:29 -08:00
Tj Holowaychuk
05bbc65dcc Added failing req.accepts() test 2010-12-02 10:03:59 -08:00
Tj Holowaychuk
6624f6b7f9 Added more req.accepts() tests 2010-12-02 10:03:25 -08:00
Tj Holowaychuk
f32279dec5 more partial docs 2010-11-29 17:20:13 -08:00
Tj Holowaychuk
a90fd85907 Added strategic cache example (with redis) 2010-11-29 17:01:28 -08:00
Tj Holowaychuk
9815b27e94 Updated connect submodule 2010-11-29 09:57:53 -08:00
Tj Holowaychuk
ebbe481fe7 Added default link color for express(1) generated apps 2010-11-28 13:19:23 -08:00
Tj Holowaychuk
9e337faa33 Removed ./views/partials generation in express(1) 2010-11-28 10:45:48 -08:00
Tj Holowaychuk
37826e0261 Fixed locals in express(1) generated app 2010-11-28 10:29:10 -08:00
Tj Holowaychuk
20e4342796 Fixed uncached templates in development 2010-11-25 15:46:57 -08:00
Tj Holowaychuk
51be16950d Added isLayout back 2010-11-25 14:54:42 -08:00
Tj Holowaychuk
be866a78ff fixed session example 2010-11-25 14:14:31 -08:00
Tj Holowaychuk
f9d2432c69 fixed route-separation example 2010-11-25 14:14:13 -08:00
Tj Holowaychuk
6543a3d75a added format support to resource example 2010-11-25 14:11:52 -08:00
Tj Holowaychuk
a77936981e Fixed resource example 2010-11-25 14:08:27 -08:00
Tj Holowaychuk
6f2120bb59 Fixed mvc example 2010-11-25 14:05:28 -08:00
Tj Holowaychuk
98e18239fd refactored multipart example 2010-11-25 13:59:10 -08:00
Tj Holowaychuk
3d159015be misc 2010-11-25 13:56:12 -08:00
Tj Holowaychuk
f5af66a1ab fixed github example 2010-11-25 13:53:51 -08:00
Tj Holowaychuk
540192ff96 refactored format example 2010-11-25 13:50:32 -08:00
Tj Holowaychuk
c1cfd4a8c6 refactored form example 2010-11-25 13:47:49 -08:00
Tj Holowaychuk
322300c329 fixed flash example 2010-11-25 13:46:40 -08:00
Tj Holowaychuk
1ac18f7903 refactored error-pages example 2010-11-25 13:44:52 -08:00
Tj Holowaychuk
4f4987e9ea misc 2010-11-25 13:41:50 -08:00
Tj Holowaychuk
65bf562ff4 refactored downloads example 2010-11-25 13:41:15 -08:00
Tj Holowaychuk
f47032e7e9 refactored cookies example 2010-11-25 13:40:50 -08:00
Tj Holowaychuk
379f3ec8dd removed blog example 2010-11-25 13:40:02 -08:00
Tj Holowaychuk
8d7e35b723 refactored auth example 2010-11-25 13:39:07 -08:00
Tj Holowaychuk
1349eea0d0 misc refactoring 2010-11-24 14:44:00 -08:00
Tj Holowaychuk
bed5157f32 Make note in docs that res.send() is a convenience method, and should only be called once (ATM) 2010-11-24 10:07:25 -08:00
Tj Holowaychuk
12c7f51a1e Updated jade submodule 2010-11-24 08:14:36 -08:00
Tj Holowaychuk
7e32c8de4d unroll partial rendering for performance 2010-11-23 10:27:26 -08:00
Tj Holowaychuk
3a42350c21 cache resolveObjectName() 2010-11-23 10:14:30 -08:00
Tj Holowaychuk
1a54597202 todo 2010-11-23 10:07:24 -08:00
Tj Holowaychuk
39f4eb9940 Added "cache views" setting, defaulting to enabled in "production" env 2010-11-23 09:49:43 -08:00
Tj Holowaychuk
4b996651af fixed template caching 2010-11-23 09:45:50 -08:00
Tj Holowaychuk
884d40f321 caching compiled view functions 2010-11-23 09:42:19 -08:00
Tj Holowaychuk
3d2b41da08 todo 2010-11-23 09:07:36 -08:00
Tj Holowaychuk
1bf2dbb7df Added memoized path utils 2010-11-23 08:58:36 -08:00
Tj Holowaychuk
e0dfb77dd1 misc refactoring 2010-11-22 21:08:24 -08:00
Tj Holowaychuk
578fddc1b7 cache view contents again 2010-11-22 18:28:19 -08:00
Tj Holowaychuk
089355d706 Merge branch 'views' 2010-11-22 17:55:17 -08:00
Tj Holowaychuk
6b2c3caf03 fixed register 2010-11-22 17:55:14 -08:00
Tj Holowaychuk
065c37cb28 moved View and Partial into their own files 2010-11-22 17:52:45 -08:00
Tj Holowaychuk
3a40025fd3 Merge branch 'views' 2010-11-22 17:36:59 -08:00
Tj Holowaychuk
8dc341d868 removed old code 2010-11-22 17:36:50 -08:00
Tj Holowaychuk
0ed121ddbd Merge branch 'views' 2010-11-22 17:24:50 -08:00
Tj Holowaychuk
969f4229dc added Partial.resolveObjectName() 2010-11-22 17:24:44 -08:00
Tj Holowaychuk
27a940184e removed old cacheViewSync() 2010-11-22 17:02:50 -08:00
Tj Holowaychuk
77fa09a506 relative view option 2010-11-22 16:58:39 -08:00
Tj Holowaychuk
8836104ab2 absolute layouts 2010-11-22 16:56:55 -08:00
Tj Holowaychuk
396837517d fixed ejs example for new locals 2010-11-22 16:43:47 -08:00
Tj Holowaychuk
38b3f1bde2 fixed "view options" support 2010-11-22 16:41:56 -08:00
Tj Holowaychuk
4780168ba8 implementing new locals 2010-11-22 16:39:55 -08:00
Tj Holowaychuk
d1a790d103 fixed jade example for new locals 2010-11-22 16:32:51 -08:00
Tj Holowaychuk
3ad6ab8c6a removed locals: from view tests 2010-11-22 16:24:05 -08:00
Tj Holowaychuk
1e189da85e refactored dynamicHelper support 2010-11-22 16:19:53 -08:00
Tj Holowaychuk
a094c50873 indentation 2010-11-22 16:16:29 -08:00
Tj Holowaychuk
ad324410c6 Utilizing the new View / Partial constructors 2010-11-22 16:12:30 -08:00
Tj Holowaychuk
9f4b7368a0 Started View implementation 2010-11-22 11:33:20 -08:00
Tj Holowaychuk
c8ddedb8d0 jade example fixes 2010-11-19 17:12:34 -08:00
Tj Holowaychuk
7deab2826b Updated jade submodule 2010-11-19 17:08:35 -08:00
Tj Holowaychuk
643879f779 using should / refactored tests 2010-11-19 16:00:21 -08:00
Tj Holowaychuk
ce2a18f483 master is 2.0.0-pre 2010-11-18 07:48:31 -08:00
Tj Holowaychuk
487d067f75 Fixed route-separation example require 2010-11-17 11:26:50 -08:00
Tj Holowaychuk
c4d5e1b4f3 Docs 2010-11-16 18:04:48 -08:00
Tj Holowaychuk
0e0cc30039 Docs 2010-11-16 17:58:30 -08:00
Tj Holowaychuk
a766cc791b Release 1.0.0 2010-11-16 17:54:58 -08:00
Tj Holowaychuk
d017c3e248 Rebuilt docs 2010-11-16 17:43:23 -08:00
Tj Holowaychuk
cc27ee04a8 PREFIX 2010-11-16 17:36:31 -08:00
Tj Holowaychuk
87459bf24b undoc manual install method 2010-11-16 17:36:05 -08:00
Tj Holowaychuk
5091c9e10f Added posts to the reoute separation example 2010-11-13 10:55:15 -08:00
Tj Holowaychuk
14a22d9033 Updating users 2010-11-13 10:37:23 -08:00
Tj Holowaychuk
7ded5a2de5 Started route separation example 2010-11-13 10:33:41 -08:00
Tj Holowaychuk
6b436a0192 Fixed github example styling 2010-11-13 09:29:42 -08:00
Tj Holowaychuk
52343686f5 Docs 2010-11-12 09:00:03 -08:00
Tj Holowaychuk
eec9d05b19 connect >= 0.3.0 2010-11-12 08:46:29 -08:00
Tj Holowaychuk
89703fd430 Added catchall test 2010-11-12 08:45:47 -08:00
Tj Holowaychuk
dc246946a7 Added app.all() support 2010-11-12 08:44:10 -08:00
Tj Holowaychuk
944e1120cb Updated connect submodule 2010-11-12 08:39:39 -08:00
Tj Holowaychuk
cccda60df8 Added link to node-jqtpl template engine 2010-11-08 07:18:45 -08:00
Tj Holowaychuk
e338e748eb Removed Content-Length for chunked 2010-11-05 04:31:56 -07:00
Tj Holowaychuk
0526a24cf3 Renamed pages example to error-pages. Closes #459 2010-11-05 02:39:08 -07:00
Tj Holowaychuk
c4ba1b025a Updated jade submodule 2010-10-30 13:35:09 -07:00
Tj Holowaychuk
252f330658 Revert "only register error handlers once"
This reverts commit 45590415a6.
2010-10-29 19:59:18 -07:00
Tj Holowaychuk
45590415a6 only register error handlers once 2010-10-29 19:54:17 -07:00
Tj Holowaychuk
e562adc752 Settings docs 2010-10-26 14:15:29 -07:00
Tj Holowaychuk
1e2fd44a6b Removed a set() call 2010-10-26 14:14:47 -07:00
Tj Holowaychuk
1c903320be New partial() docs 2010-10-26 12:08:59 -07:00
Tj Holowaychuk
74eaf3a268 Added objectName() 2010-10-26 12:02:40 -07:00
Tj Holowaychuk
6fcd74c713 Added missing files 2010-10-26 11:59:31 -07:00
Tj Holowaychuk
33136c6553 Fixed partial local inheritance precedence. Closes #454 2010-10-26 11:50:44 -07:00
Tj Holowaychuk
cb225db203 Added failing partial local precedence test [reported by Nick Poulden] 2010-10-26 11:47:13 -07:00
Tj Holowaychuk
0dbd5006ea Caching view path derived partial object names 2010-10-26 11:34:11 -07:00
Tj Holowaychuk
08b3677ce8 Merge branch 'partial-object' 2010-10-26 11:31:46 -07:00
Tj Holowaychuk
b08549a25b Added partial direct object support
these are now equivalent:

before:

    partial(movie, { object: movieRecord })

after:

    partial(movie, movieRecord)
2010-10-26 11:31:40 -07:00
Tj Holowaychuk
221bc4cb5d Misc refactor of partial() 2010-10-26 11:22:56 -07:00
Tj Holowaychuk
b655b8e97b Added partial object test 2010-10-26 11:22:14 -07:00
Tj Holowaychuk
03e7b5dcc6 Fixed a test 2010-10-26 11:10:43 -07:00
Tj Holowaychuk
5f09e829df Updated connect submodule 2010-10-26 01:18:16 -07:00
Tj Holowaychuk
e6759919dc fine with --version 0.2.4 2010-10-25 08:22:58 -07:00
Tj Holowaychuk
6c65a3fc74 Removed old app section from docs 2010-10-22 21:11:41 -07:00
Tj Holowaychuk
e0ffd31123 Added development seed's cool project to applications.html 2010-10-22 16:20:15 -07:00
Tj Holowaychuk
4c1597113a Added another partial test 2010-10-21 19:52:33 -07:00
Tj Holowaychuk
4006506b64 Added another partial locals test 2010-10-21 19:42:40 -07:00
Tj Holowaychuk
14facdbcd2 Merge branch 'partial-locals' 2010-10-21 19:29:40 -07:00
Tj Holowaychuk
726ace49d8 Added partial locals test with collection 2010-10-21 19:29:29 -07:00
Tj Holowaychuk
f45d383367 Fixed a test 2010-10-21 19:24:44 -07:00
Tj Holowaychuk
3a32e2b53a Added failing partial locals test 2010-10-21 19:15:20 -07:00
Tj Holowaychuk
dc45e93cea jsonp text/javascript as per mailinglist discussion 2010-10-21 14:11:07 -07:00
Tj Holowaychuk
c0f9642719 Merge branch 'bin' 2010-10-20 10:07:48 -07:00
Tj Holowaychuk
da8d036997 Implemented --template support 2010-10-20 10:07:43 -07:00
Tj Holowaychuk
3c911cc785 connect >= 0.2.7 2010-10-20 09:54:03 -07:00
Tj Holowaychuk
4071f15f27 Updated connect submodule 2010-10-20 09:49:13 -07:00
Tj Holowaychuk
90de7923db Added -t, --template flag 2010-10-19 17:39:02 -07:00
Tj Holowaychuk
c28f1535a3 Started ejs template support for express(1) 2010-10-19 17:37:13 -07:00
Tj Holowaychuk
704e9c132e Rebuilt docs 2010-10-19 17:19:36 -07:00
Tj Holowaychuk
713d6f5f76 Installation suggestions when using express(1) 2010-10-19 17:19:22 -07:00
Tj Holowaychuk
1a6d245eae Added -s, --session[s] support to express(1)
This adds cookieDecoder() / session() middleware for you
2010-10-19 17:12:28 -07:00
Tj Holowaychuk
d909dd2a32 Merge branch 'bin' 2010-10-19 17:03:07 -07:00
Tj Holowaychuk
7bb466dd86 Added -c, -css ENGINE option to express(1)
For example $ express
will now just create style.css

where as $ express --css sass
will generate style.sass for you and setup the compiler middleware

etc
2010-10-19 17:02:13 -07:00
Tj Holowaychuk
e09bf5cc40 Updated jade submodule 2010-10-19 15:02:56 -07:00
Tj Holowaychuk
129e21e7c3 Regenerate api docs 2010-10-19 10:55:15 -07:00
Tj Holowaychuk
87dcd2909d Doc typo 2010-10-19 10:54:45 -07:00
Tj Holowaychuk
e47ec4f551 Doc typo 2010-10-19 10:53:17 -07:00
Tj Holowaychuk
d6cfcbe149 Misc doc changes 2010-10-19 09:41:47 -07:00
Tj Holowaychuk
7a713807e9 Merge branch 'is' 2010-10-19 09:34:34 -07:00
Tj Holowaychuk
6e49b5bc30 More req.is() docs for new feature 2010-10-19 09:34:29 -07:00
Tj Holowaychuk
adbc5b86f5 Added req.is() wildcard support 2010-10-19 09:30:56 -07:00
Tj Holowaychuk
071ea955af More is() docs 2010-10-19 09:22:11 -07:00
Tj Holowaychuk
806aefa966 Added req.is() docs 2010-10-19 09:20:16 -07:00
Tj Holowaychuk
5b7d23186d Merge branch 'is' 2010-10-19 09:15:08 -07:00
Tj Holowaychuk
0cb4677e80 Added app.is() to register req.is() assertions 2010-10-19 09:15:02 -07:00
Tj Holowaychuk
bd65ecf17b Implemented req.is() 2010-10-19 08:59:06 -07:00
Tj Holowaychuk
9da2adff4c Added tests for req.is() 2010-10-19 08:50:48 -07:00
Tj Holowaychuk
a2a1aad109 Updated jade submodule 2010-10-18 08:51:36 -07:00
Tj Holowaychuk
dcc530a389 More apps 2010-10-17 10:19:18 -07:00
Tj Holowaychuk
97037a87f3 Fixed nodeko link 2010-10-16 19:21:24 -07:00
Tj Holowaychuk
4e67efc0d6 Merge branch 'apps' 2010-10-16 19:18:38 -07:00
Tj Holowaychuk
7cbb73719e Finished app page (for now) 2010-10-16 19:18:31 -07:00
Tj Holowaychuk
d3f139c31e Started apps section 2010-10-16 19:00:33 -07:00
Tj Holowaychuk
8940b6e5a3 Added X-Powered-By, remove Connects "Server" header field
potentially a security issue... I told Tim not to add this :p,
so for now we just hide it in Express until I have a chance to remove
it from Connect, at least the versions.
2010-10-16 18:24:24 -07:00
Tj Holowaychuk
1c9831a9f4 Regenerated docs 2010-10-15 12:51:14 -07:00
Tj Holowaychuk
7da27435cc Doc typo 2010-10-15 12:51:03 -07:00
Tj Holowaychuk
bd18f86517 Updated jade submodule 2010-10-15 12:25:40 -07:00
Tj Holowaychuk
41f66b435b Generated app using "view engine" "jade" 2010-10-15 10:17:25 -07:00
Tj Holowaychuk
48481a7230 Docs 2010-10-15 10:12:42 -07:00
Tj Holowaychuk
dde6bc1f80 Faster dynamicHelper "merge" 2010-10-15 10:02:02 -07:00
Tj Holowaychuk
e39fd1de0e Merge branch 'partials-inherit-locals' 2010-10-15 10:00:08 -07:00
Tj Holowaychuk
2fc9a81e9e Added partial local inheritance [suggested by masylum]. Closes #102 2010-10-15 09:55:04 -07:00
Tj Holowaychuk
f65874d751 Added partial inheritance test 2010-10-15 09:40:11 -07:00
Tj Holowaychuk
3914895784 Added http status code string representation to res.redirect() body 2010-10-15 09:20:11 -07:00
Tj Holowaychuk
0bc7e24d0a res.redirect() supporting text/plain and text/html via Accept 2010-10-15 09:13:07 -07:00
Tj Holowaychuk
2a40ceced7 Regenerated docs 2010-10-15 08:25:37 -07:00
Tj Holowaychuk
d4868f2cc2 NODE_ENV=production docs, VERY IMPORTANT do this, or your app will be slow :p 2010-10-15 08:25:25 -07:00
Tj Holowaychuk
e87d63779d More partial() docs 2010-10-14 09:08:13 -07:00
Tj Holowaychuk
6672d65018 Deduce partial object names from the last segment
user/role.ejs will use "role" as the object name by default
user.ejs will use "user"
forum/thread/post.jade will use "post"

etc
2010-10-14 08:56:49 -07:00
Tj Holowaychuk
1f78c520f5 Added test for collection option with an object 2010-10-14 08:39:05 -07:00
Tj Holowaychuk
687e435a38 Added CoffeeKup as a suggested template engine (let me know of others please :) ) 2010-10-14 04:21:20 -07:00
Tj Holowaychuk
b3222dc107 fixed bin/express 2010-10-14 04:17:15 -07:00
Tj Holowaychuk
ebba6caa3d 2 spaces in bin/express 2010-10-14 04:15:44 -07:00
Tj Holowaychuk
88bbef9003 Merge branch 'indentation' 2010-10-14 04:07:37 -07:00
Tj Holowaychuk
712771a139 2 spaces in view.js 2010-10-14 04:07:29 -07:00
Tj Holowaychuk
9033b0ded7 2 spaces in utils.js 2010-10-14 04:02:23 -07:00
Tj Holowaychuk
877cfe9393 2 spaces in server.js 2010-10-14 04:01:35 -07:00
Tj Holowaychuk
347aa56acb 2 spaces in response.js 2010-10-14 03:58:44 -07:00
Tj Holowaychuk
0fc410139c 2 spaces in request.js 2010-10-14 03:54:26 -07:00
Tj Holowaychuk
51528235db Regenerated docs 2010-10-14 03:50:33 -07:00
Tj Holowaychuk
003599cbda Release 1.0.0rc4 2010-10-14 03:50:10 -07:00
Tj Holowaychuk
bacfad37a9 Updated connect submodule 2010-10-14 03:41:41 -07:00
Tj Holowaychuk
6ef6ba7b8a Fix up app.register() docs. Closes #450
thank ya
2010-10-14 03:03:18 -07:00
Dav Glass
93c0da0367 Added tests for enable/disable of settings 2010-10-12 12:58:59 -07:00
Dav Glass
268d19e8a3 Added config option app.enable('jsonp callback') support 2010-10-12 12:58:59 -07:00
Dav Glass
a383b302c2 Added callback query check on response.send to autowrap JSON objects for simple webservice implementations 2010-10-12 12:58:59 -07:00
Tj Holowaychuk
95ebbf2608 Updated jade submodule 2010-10-12 11:27:41 -07:00
Tj Holowaychuk
f880574c78 Example typo 2010-10-12 10:09:20 -07:00
Tj Holowaychuk
350c310906 Fixed test typo 2010-10-12 09:49:15 -07:00
Tj Holowaychuk
5026f7686e Updated connect submodule 2010-10-12 09:48:49 -07:00
Tj Holowaychuk
ab3337ddf5 Regenerated guide 2010-10-12 08:46:22 -07:00
Tj Holowaychuk
c9268f2e3d Doc typo 2010-10-12 08:46:05 -07:00
Tj Holowaychuk
fa01388f97 Updated connect-form submodule 2010-10-12 08:30:36 -07:00
Tj Holowaychuk
d8dc89ac7b Updated jade submodule 2010-10-12 08:29:59 -07:00
Tj Holowaychuk
a659fd1fa9 Added partial() support for array-like collections. Closes #434 2010-10-11 08:37:42 -07:00
Tj Holowaychuk
27fa3ba34c Default env to "development" again [thanks aheckmann] 2010-10-11 08:17:52 -07:00
Tj Holowaychuk
663f42948e Added support for swappable querystring parsers 2010-10-08 11:38:59 -07:00
Tj Holowaychuk
baca8f0cdb Added guillermo to package.json contrib 2010-10-07 06:50:29 -07:00
Tj Holowaychuk
c5c3a82b23 Removed another sys require 2010-10-07 06:45:48 -07:00
Tj Holowaychuk
c0617864e1 Removed sys require 2010-10-07 06:45:14 -07:00
Tj Holowaychuk
d9ef9ab497 Merge branch 'perf/cache-dynamicHelpers' 2010-10-07 06:34:49 -07:00
Tj Holowaychuk
65d9f783e1 Added test for dynamic helper cache 2010-10-07 06:32:35 -07:00
Tj Holowaychuk
f70232d1b0 Implemented dynamic helper cache. Closes #439 2010-10-07 06:29:58 -07:00
Tj Holowaychuk
b083aed245 Doc cleanup 2010-10-07 05:57:27 -07:00
Tj Holowaychuk
0faac20d53 Regenerated docs 2010-10-07 05:53:14 -07:00
Tj Holowaychuk
cef14ca7cd Fixed docs 2010-10-07 05:53:02 -07:00
Tj Holowaychuk
090debe0df Regenerated docs 2010-10-07 05:49:35 -07:00
Tj Holowaychuk
296f1270ee Ordering docs 2010-10-07 05:49:19 -07:00
Tj Holowaychuk
334a18a114 Regenerated docs 2010-10-07 05:46:39 -07:00
Tj Holowaychuk
dd4ddae082 Added route middleware docs 2010-10-07 05:46:26 -07:00
Tj Holowaychuk
4983e967bc Added route-middleware example 2010-10-07 05:28:09 -07:00
Tj Holowaychuk
0b5e2f14ed Updated ejs submodule 2010-10-07 04:28:11 -07:00
Tj Holowaychuk
70102aecb5 Fixed mvc example 2010-10-07 04:15:34 -07:00
Tj Holowaychuk
ae75153561 Merge branch 'features/route-middleware' 2010-10-07 03:49:58 -07:00
Tj Holowaychuk
dd23d60513 Recursively apply route middleware 2010-10-07 03:49:38 -07:00
Tj Holowaychuk
db95481b76 Added another route middleware test 2010-10-07 03:46:20 -07:00
Tj Holowaychuk
3e0da535b9 Implemented route middleware with arrays 2010-10-07 03:45:23 -07:00
Tj Holowaychuk
c74602551e Added test for multiple route middleware 2010-10-07 03:40:54 -07:00
Tj Holowaychuk
1722e2c7a5 Implemented route middleware support 2010-10-07 03:30:39 -07:00
Tj Holowaychuk
8a845e2951 Auth example using route middleware 2010-10-07 03:21:07 -07:00
Tj Holowaychuk
72765bada0 Typo in auth example 2010-10-07 03:16:40 -07:00
Tj Holowaychuk
b380f180cc Links 2010-10-07 02:36:34 -07:00
Tj Holowaychuk
f1799799a1 Regenerated guide 2010-10-06 08:26:01 -07:00
Tj Holowaychuk
4bc8a8673d More session docs 2010-10-06 08:25:49 -07:00
Tj Holowaychuk
cbdd907393 Added logger to pages example 2010-10-05 06:31:21 -07:00
Tj Holowaychuk
aa7ff3ef47 typo 2010-10-05 06:27:17 -07:00
Tj Holowaychuk
ebdf6434eb Fixing up examples a bit 2010-10-05 06:14:19 -07:00
Tj Holowaychuk
9b7470d204 Exposing ./support libs to examples 2010-10-05 06:08:53 -07:00
Tj Holowaychuk
9f3ab8683c Added log lines to more examples 2010-10-05 06:01:26 -07:00
Tj Holowaychuk
fa464aca90 Updated jade submodule 2010-10-05 05:56:42 -07:00
Tj Holowaychuk
2724ce368a Rebuilt docs 2010-10-04 11:17:29 -07:00
Tj Holowaychuk
89f7cbe877 Added session usage docs. Closes #443 2010-10-04 11:16:46 -07:00
Tj Holowaychuk
fab9af2206 Merge branch 'range' 2010-10-04 11:06:15 -07:00
Tj Holowaychuk
4d01b4fa59 Handling invalid ranges 2010-10-04 08:36:57 -07:00
Tj Holowaychuk
c3365aa37e Merge branch 'master' into range 2010-10-04 08:14:30 -07:00
Tj Holowaychuk
426e80d4c3 Updated jade submodule 2010-10-04 08:04:00 -07:00
Tj Holowaychuk
30a282d126 Updated connect submodule 2010-10-04 08:03:51 -07:00
Tj Holowaychuk
0a96621e3e Docs for layout option 2010-10-04 08:01:17 -07:00
Tj Holowaychuk
d9d30abe7a Updated docs to use NODE_ENV 2010-10-01 16:33:27 -07:00
Tj Holowaychuk
03b56d8140 Implement NODE_ENV, EXPRESS_ENV is now deprecated
spark, connect, and express will from now on utilize NODE_ENV.
EXPRESS_ENV support will remain until 1.0
2010-10-01 16:31:32 -07:00
Tj Holowaychuk
1f79ce4e96 Updated connect submodule 2010-10-01 16:26:09 -07:00
Tj Holowaychuk
8d80f23a0f antialiased text 2010-10-01 07:53:56 -07:00
Tj Holowaychuk
d89b951451 HTTP verb docs. Closes #415 2010-10-01 07:51:19 -07:00
Tj Holowaychuk
1906a38ec8 express(1) app using 2 spaces instead of 4 2010-09-26 08:24:48 -07:00
Tj Holowaychuk
8d91a3e3b8 Updated jade submodule 2010-09-23 09:24:56 -07:00
Tj Holowaychuk
3324259977 Updated connect submodule 2010-09-23 09:24:52 -07:00
Tj Holowaychuk
ec2db2d541 Fixed mvc example listen() call 2010-09-22 16:08:38 -07:00
Tj Holowaychuk
5cf248c7f3 Merge branch 'auth-example' 2010-09-22 12:03:28 -07:00
Tj Holowaychuk
3876a566ff Added authentication example
very raw and minimal but gives people and idea
2010-09-22 12:03:18 -07:00
Tj Holowaychuk
334e6cc618 Started auth example 2010-09-22 10:36:15 -07:00
Tj Holowaychuk
64033fcfc2 Extended utils.parseRange() 2010-09-22 09:34:05 -07:00
Tj Holowaychuk
fbe3af4719 Added utils.parseRange() tests 2010-09-22 09:29:25 -07:00
Tj Holowaychuk
699ed4ee85 Started naive Range support 2010-09-22 09:06:11 -07:00
Tj Holowaychuk
903f67a154 Started utils.parseRange() 2010-09-22 08:48:22 -07:00
Tj Holowaychuk
9a89dab9e0 Added Range test 2010-09-22 08:41:20 -07:00
Tj Holowaychuk
435a2565b8 Added Accept-Ranges: bytes 2010-09-22 08:29:48 -07:00
Tj Holowaychuk
8267b8da57 Added res.sendfile() Accept-Ranges test 2010-09-22 08:29:22 -07:00
Tj Holowaychuk
8b5773c246 Multipart typo 2010-09-21 12:38:42 -07:00
Tj Holowaychuk
fd4c88d202 Updated docs 2010-09-21 09:21:11 -07:00
Tj Holowaychuk
9b26623aa5 View scope now defaults to the request
No longer the response, as this is more useful for obtaining urls etc
2010-09-21 09:20:04 -07:00
Tj Holowaychuk
b115ec7c14 "context" option is no more, use "scope" 2010-09-21 09:18:22 -07:00
Tj Holowaychuk
a2e6e2a06a Pass true for res.sendfile() callback when streamed
This is potentially useful since we can no longer
respond, however with readFile() we can respond with a 500
page or similar
2010-09-21 08:51:07 -07:00
Tj Holowaychuk
f0eab06a8b Updated docs 2010-09-20 09:54:01 -07:00
Tj Holowaychuk
b6c839d693 Release 1.0.0rc3 2010-09-20 09:50:38 -07:00
Tj Holowaychuk
177a724d58 res.sendfile() responding with 403 on malicious path 2010-09-20 09:16:01 -07:00
Tj Holowaychuk
949803dcf6 Merge branch 'downloads' 2010-09-20 09:06:46 -07:00
Tj Holowaychuk
b763a88e60 Docs for "stream threshold" setting 2010-09-20 09:06:43 -07:00
Tj Holowaychuk
18c7f164a8 res.sendfile() using sys.pump() when >= "stream threshold" 2010-09-20 08:41:08 -07:00
Tj Holowaychuk
e037ff6bba Added Content-Length assertion for res.sendfile() 2010-09-20 08:23:16 -07:00
Tj Holowaychuk
95bfda1ff0 res.sendfile() using fs.stat() 2010-09-20 08:19:21 -07:00
Tj Holowaychuk
b9992e0b45 Refactored res.sendfile() 2010-09-20 08:18:38 -07:00
Tj Holowaychuk
f6ba793885 Merge branch 'download-example' 2010-09-18 10:25:05 -07:00
Tj Holowaychuk
bbe65a8ea3 Fixed res.download() bug; when an error occurs remove Content-Disposition
Previously if you tried to show a 404 page (or similar)
on a failed res.download(), the browser would still prompt for download
2010-09-18 10:25:00 -07:00
Tj Holowaychuk
20af7371d0 Added download example 2010-09-18 10:21:37 -07:00
Tj Holowaychuk
a33fb0c439 Added widescript link 2010-09-14 15:56:21 -07:00
Tj Holowaychuk
87003c8b5b Fixed tests for node --version 0.2.1 2010-09-14 08:18:13 -07:00
Tj Holowaychuk
ddd48ee79f Added LICENSE as requested by davglass 2010-09-14 07:59:30 -07:00
Tj Holowaychuk
a9819df3ee res.send() HEAD support 2010-09-13 12:05:28 -07:00
Tj Holowaychuk
15dffb22aa Updated connect submodule 2010-09-13 11:58:49 -07:00
Tj Holowaychuk
6ef5f1ff62 Merge branch 'integration' 2010-09-13 11:24:33 -07:00
Tj Holowaychuk
acc28c68a4 Refactored app.set() 2010-09-13 11:24:20 -07:00
Aaron Heckmann
6c2da60eb0 add test for inherited mounted app settings 2010-09-13 11:20:49 -07:00
Aaron Heckmann
490081077d mounted apps settings now inherited from parent app 2010-09-13 11:20:49 -07:00
Tj Holowaychuk
f4a08092da Merge branch 'guide' 2010-09-13 11:14:55 -07:00
Tj Holowaychuk
0116efd4a3 Removed manpage crap from site 2010-09-13 11:14:41 -07:00
Tj Holowaychuk
9719a24f8a Toggling menus 2010-09-13 11:11:47 -07:00
Tj Holowaychuk
3a7d5a099b TOC sections 2010-09-13 11:03:17 -07:00
Tj Holowaychuk
27dba655fc Uncommented cookie assertions previously failing 2010-09-13 10:11:28 -07:00
Tj Holowaychuk
a25dd387bf Refactored res.redirect() 2010-09-13 10:10:03 -07:00
Tj Holowaychuk
a89767cc16 Cookie docs 2010-09-13 09:52:33 -07:00
Tj Holowaychuk
a13df5b68d Added test for res.clearCookie() 2010-09-13 09:44:42 -07:00
Tj Holowaychuk
6a689504ff Fixed res.cookie() test 2010-09-13 09:44:02 -07:00
Tj Holowaychuk
6521d2bcfb Merge branch 'features/cookie' 2010-09-13 09:43:37 -07:00
Tj Holowaychuk
26d55b15de Added cookies example 2010-09-13 09:43:13 -07:00
Tj Holowaychuk
041b7e8a29 Added res.cookie() and res.clearCookie() 2010-09-13 09:43:07 -07:00
Tj Holowaychuk
6eeb425e7a Updated jade submodule 2010-09-11 13:09:39 -07:00
Tj Holowaychuk
d2d0eb829e Updated jade submodule 2010-09-10 13:19:14 -07:00
Tj Holowaychuk
058505b664 Updated connect submodule 2010-09-10 13:19:11 -07:00
Tj Holowaychuk
8adecedb40 Added test to confirm view helper usage w/ ejs 2010-09-08 10:49:29 -07:00
Tj Holowaychuk
838a51db21 Merge branch 'master' of github.com:visionmedia/express 2010-09-06 14:06:50 -07:00
Tj Holowaychuk
4d4dfc27fc Updated connect submodule 2010-09-06 14:06:35 -07:00
Tj Holowaychuk
1444439cf3 Wiki 2010-09-06 11:37:48 -07:00
Tj Holowaychuk
e64fc8d5ab node dep 2010-09-06 11:03:33 -07:00
Tj Holowaychuk
9a31f772d9 Added contrib link 2010-09-06 10:59:56 -07:00
Tj Holowaychuk
12876ee4ce Added res.send() as 204 in the guide 2010-09-06 10:15:32 -07:00
Tj Holowaychuk
a4a349da45 Stripping Content-Length / Content-Type when 204 2010-09-06 10:10:59 -07:00
Tj Holowaychuk
ecbc3cae71 res.send() as 204. Closes #419 2010-09-06 10:05:39 -07:00
Tj Holowaychuk
57609c87fb Merge branch 'features/render-status' 2010-09-06 09:44:46 -07:00
Tj Holowaychuk
bb2e24e028 Added docs for render() status / headers 2010-09-06 09:44:32 -07:00
Tj Holowaychuk
5cafb26e93 Fixed pages example w/ render() status 2010-09-06 09:43:17 -07:00
Tj Holowaychuk
f74ef7b293 Added render() headers option 2010-09-06 09:42:00 -07:00
Tj Holowaychuk
7ef8f531e7 Added render() status option support. Closes #425 2010-09-06 09:38:23 -07:00
Tj Holowaychuk
afb65c7b19 Added render() status test 2010-09-06 09:36:22 -07:00
Tj Holowaychuk
74a0673663 Better app.helper() test 2010-09-06 09:11:27 -07:00
Tj Holowaychuk
20fae6e512 Updated jade submodule 2010-09-02 17:08:08 -07:00
Tj Holowaychuk
509cd242f7 Updated connect submodule 2010-09-02 17:06:50 -07:00
Tj Holowaychuk
f01ec516eb Updated connect submodule 2010-09-02 09:50:04 -07:00
Tj Holowaychuk
394b1000d2 Updated ejs submodule 2010-08-30 17:46:16 -07:00
Tj Holowaychuk
e0b9fba788 Updated jade submodule 2010-08-30 17:46:13 -07:00
Tj Holowaychuk
378ee29cc2 Updated connect submodule 2010-08-30 16:14:06 -07:00
Tj Holowaychuk
02bcef71dd Updated jade submodule 2010-08-27 13:47:48 -07:00
Tj Holowaychuk
248e7c8003 Updated connect submodule 2010-08-27 13:47:41 -07:00
Tj Holowaychuk
a2e93ebd56 Fixed Connect links 2010-08-27 12:40:33 -07:00
Tj Holowaychuk
21a9454de1 Merge branch 'confirmation' 2010-08-27 12:38:23 -07:00
Tj Holowaychuk
ec286eed08 Added confirmation for express(1) app generation. Closes #391 2010-08-27 12:38:19 -07:00
Tj Holowaychuk
f16978d1fe Added flash formatter docs 2010-08-27 12:17:57 -07:00
Tj Holowaychuk
fa3adc7606 Merge branch 'flash-formatting' 2010-08-27 12:15:23 -07:00
Tj Holowaychuk
192144fc5d Added extending of flash formatters via app.flashFormatters 2010-08-27 12:15:18 -07:00
Tj Holowaychuk
a4d155c5e4 Added flash formatter support. Closes #411 2010-08-27 12:09:55 -07:00
Tj Holowaychuk
6c56e9d199 Added failing assertion for flash formatters 2010-08-27 11:59:29 -07:00
Tj Holowaychuk
bb18f87a98 Merge branch 'fix-toc' 2010-08-27 10:13:13 -07:00
Tj Holowaychuk
dda6a31381 Fixed TOC. Closes #404 [thanks weaver] 2010-08-27 10:13:08 -07:00
Tj Holowaychuk
6e25e18e98 express(1) now outputting listening msg, and express.MIDDLEWARE vs connect.MIDDLWARE 2010-08-24 13:52:26 -07:00
Tj Holowaychuk
ffd978c24f Updated node --version support 2010-08-24 13:35:40 -07:00
Tj Holowaychuk
4c4af03a5a Doc typos 2010-08-24 13:22:52 -07:00
Tj Holowaychuk
c0739bb8b7 Fixed bug messing with error handlers when listenFD() is called instead of listen(). [thanks guillermo]
programs such as "spark" call listenFD() to call listen(1) with
a file descriptor, BUT Express was only proxying listen()
to register these handlers. Thanks for catching this bug guillermo!
2010-08-24 13:21:28 -07:00
Tj Holowaychuk
5add7cb0b1 Merge branch 'mvc' 2010-08-24 13:06:53 -07:00
Tj Holowaychuk
99f49f1061 Fixed MVC 500 error example 2010-08-24 13:06:50 -07:00
Tj Holowaychuk
401eaca9ab Mvc example typo 2010-08-24 12:58:30 -07:00
Tj Holowaychuk
da784fe02b Added 500 page to mvc example 2010-08-24 12:56:34 -07:00
Tj Holowaychuk
d507b29559 Added .json format support to the mvc example 2010-08-24 12:10:29 -07:00
Tj Holowaychuk
35ca13b38d Merge branch 'form' 2010-08-24 10:49:56 -07:00
Tj Holowaychuk
04b92a31a8 Added keepExtensions: true to multipart example 2010-08-24 10:49:52 -07:00
Tj Holowaychuk
dd311d759d Better 404 Not Found example 2010-08-20 21:39:35 -07:00
Tj Holowaychuk
b504ca9f0a Merged mvc example. Closes #405 2010-08-20 18:09:56 -07:00
Tj Holowaychuk
bd61c5c721 Fixed hasMessages dynamic helper 2010-08-20 18:04:01 -07:00
Tj Holowaychuk
24694b0047 mvc styling 2010-08-20 18:03:12 -07:00
Tj Holowaychuk
5258154285 Added 404 page to mvc example 2010-08-20 17:58:29 -07:00
Tj Holowaychuk
221f993b46 Misc refactoring of mvc example 2010-08-20 17:53:55 -07:00
Tj Holowaychuk
ae5ea70b93 Editing of email for mvc example as well 2010-08-20 17:29:01 -07:00
Tj Holowaychuk
f59ffbeb63 Implemented simple user editing 2010-08-20 17:27:21 -07:00
Tj Holowaychuk
ce55275634 ejs parsing *.html for mvc example 2010-08-20 17:11:30 -07:00
Tj Holowaychuk
20c5892f9a More work on mvc example 2010-08-20 17:08:10 -07:00
Tj Holowaychuk
9231245a3f Started mvc example 2010-08-20 16:50:23 -07:00
Tj Holowaychuk
cbfed20e6f Updated ejs submodule 2010-08-20 16:23:49 -07:00
Tj Holowaychuk
640274ed52 Merge branch 'redirect-bodies' 2010-08-20 12:30:06 -07:00
Tj Holowaychuk
1507a39a2b res.redirect() using res.send()
Allows for setting of arbitrary headers via res.header()
2010-08-20 12:21:29 -07:00
Tj Holowaychuk
e6405653d8 Added res.redirect() Content-Type of text/plain for now 2010-08-20 12:19:08 -07:00
Tj Holowaychuk
be1541a646 Added res.redirect() response bodies 2010-08-20 12:17:52 -07:00
Tj Holowaychuk
f37f9bf5e3 Updated connect submodule 2010-08-20 08:42:18 -07:00
Tj Holowaychuk
a5c39ca8c8 Merge branch 'set-cookie' 2010-08-20 08:41:10 -07:00
Tj Holowaychuk
cb7e7b2a74 Pass res.send() headers through res.header() 2010-08-20 08:41:06 -07:00
Tj Holowaychuk
2e8e705bab Fixed multiple Set-Cookie headers via res.header(). Closes #402 2010-08-20 08:29:21 -07:00
Tj Holowaychuk
ab3812432b Updated expresso submodule 2010-08-19 11:44:42 -07:00
Tj Holowaychuk
d2acb36e3b Updated connect submodule 2010-08-19 11:44:40 -07:00
Tj Holowaychuk
601743ff7a Added boilerplate example 2010-08-18 17:41:06 -07:00
Tj Holowaychuk
7eca74ac05 Updated node --version in readme 2010-08-17 16:45:42 -07:00
Tj Holowaychuk
02b4ec04bb Doc typos 2010-08-17 16:08:02 -07:00
Tj Holowaychuk
8ead9014d0 Regenerated docs again 2010-08-17 13:15:54 -07:00
Tj Holowaychuk
4920e82dd6 Regenerated docs 2010-08-17 13:12:21 -07:00
Tj Holowaychuk
3150253661 Release 1.0.0rc2 2010-08-17 13:09:17 -07:00
Tj Holowaychuk
baa423b45a Updated connect submodule 2010-08-16 13:49:33 -07:00
Tj Holowaychuk
77e5d8ea96 Added app.register() docs 2010-08-15 10:20:33 -07:00
Tj Holowaychuk
9a8166d649 Added app.register() for template engine mapping. Closes #390
This is not exactly what you requested, but
I think this is a better approach. With old Express
I used to have "foo.ejs.html" "foo.haml.html" etc,
but that is super verbose.

This will allow for non-authors to support non-compliant
engines without modifying the original module, as well
as having things like .html render with jade
2010-08-15 10:13:47 -07:00
Tj Holowaychuk
da8c0cd2db Removed clearCache()
its useless ATM
2010-08-15 09:54:51 -07:00
Tj Holowaychuk
fc2711b543 Fixed bug with undefined path 2010-08-12 14:57:36 -07:00
Tj Holowaychuk
b4327bd36c Merge branch 'render-callback' 2010-08-11 16:29:10 -07:00
Tj Holowaychuk
f7f75923aa Added res.render() callback support as second argument
This previously was not valid:

    res.render(foo, function(){});
2010-08-11 16:28:24 -07:00
Tj Holowaychuk
0b4388bc5b Added test to confirm res.render() callback with layouts 2010-08-11 16:25:31 -07:00
Tj Holowaychuk
f08883071f Updated app list 2010-08-11 10:11:20 -07:00
Tj Holowaychuk
bb8a2ee3a6 Updated expresso submodule 2010-08-11 09:32:59 -07:00
Tj Holowaychuk
6bfa7595d8 Added callback support to res.download() 2010-08-09 16:11:00 -07:00
Tj Holowaychuk
8308e501cd Fixed res.sendfile() error handling, defer via next()
No need to be so specific here.
2010-08-09 16:04:41 -07:00
Tj Holowaychuk
25909c0d9d Added callback support for res.sendfile() 2010-08-09 16:00:23 -07:00
Tj Holowaychuk
2844b1ac38 Fixed test labels 2010-08-09 15:57:27 -07:00
Tj Holowaychuk
6fd62b1cee No need to pass params in app.redirect() 2010-08-09 09:19:44 -07:00
Tj Holowaychuk
1579f53a61 Updated connect submodule 2010-08-09 08:50:33 -07:00
Tj Holowaychuk
7af7851952 Fixed res.download() test 2010-08-09 08:06:01 -07:00
Tj Holowaychuk
5dbd1a6dcc Merge branch 'format-example' 2010-08-09 08:03:00 -07:00
Tj Holowaychuk
24881537a1 Fixed format example 2010-08-09 08:02:38 -07:00
Tj Holowaychuk
631c29b26b Updated connect submodule 2010-08-09 07:57:45 -07:00
Tj Holowaychuk
ab249d4032 Added format example 2010-08-09 07:46:29 -07:00
Tj Holowaychuk
5bfa3f6274 Merge branch 'helper-precedence' 2010-08-09 07:32:20 -07:00
Tj Holowaychuk
82ee25dfaa Added test helper local precedence test 2010-08-09 07:32:12 -07:00
Tj Holowaychuk
fd9a24553f Added another dynamicHelper example to flash example 2010-08-09 07:22:33 -07:00
Tj Holowaychuk
ae1c20fad9 Fixed flash example. Closes #392 2010-08-09 07:19:55 -07:00
Tj Holowaychuk
734f777ff9 Added failing test for view helper precedence 2010-08-06 16:13:21 -07:00
Tj Holowaychuk
498115d5d9 Merge branch 'fix-error' 2010-08-06 09:04:08 -07:00
Tj Holowaychuk
033ff06b68 More app.error() docs 2010-08-06 09:04:04 -07:00
Tj Holowaychuk
c145a8e1a1 Changed "pages" example to show error() handlers defined above routes 2010-08-06 09:01:09 -07:00
Tj Holowaychuk
ae5b0dbc29 Fixed issue preventing error handlers from being defined anywhere. Closes #387
Now we can define them in configure() callbacks etc
2010-08-06 08:59:16 -07:00
Tj Holowaychuk
95aa957c80 Altered app.error() tests to reflect issue #387 2010-08-06 08:48:17 -07:00
Tj Holowaychuk
7dff9ddeeb Merge branch 'flash-example' 2010-08-05 17:12:33 -07:00
Tj Holowaychuk
b4e755747f Fixed dynamic helper in flash example 2010-08-05 17:12:18 -07:00
Tj Holowaychuk
348fa402be Started flash example 2010-08-05 16:51:07 -07:00
Tj Holowaychuk
344218ff3d Updated docs 2010-08-05 16:19:06 -07:00
Tj Holowaychuk
90a1a2febf Updated examples to use express.<middleware> 2010-08-05 16:10:22 -07:00
Tj Holowaychuk
e234a24894 Re-exporting connect middleware auto-loaders 2010-08-05 15:56:33 -07:00
Tj Holowaychuk
d9beb75bd6 Updated connect submodule 2010-08-05 15:51:27 -07:00
Tj Holowaychuk
dadea8c83d Merge branch 'fix-layouts' 2010-08-05 13:57:02 -07:00
Tj Holowaychuk
31d40e5509 Updated connect submodule 2010-08-05 13:32:22 -07:00
Tj Holowaychuk
a917e84b51 Fixed latest test 2010-08-05 11:59:58 -07:00
Tj Holowaychuk
f30b497206 Added failing layout test 2010-08-05 11:47:35 -07:00
Tj Holowaychuk
706e32c20b Merge branch 'app-level-view-options' 2010-08-05 09:46:03 -07:00
Tj Holowaychuk
4d98552c37 Docs for "view options" 2010-08-05 09:45:56 -07:00
Tj Holowaychuk
5311bd3f4e Added app level view options
via the "view options" setting
2010-08-05 09:41:26 -07:00
Tj Holowaychuk
8d716fb7ba Added test for "view options" setting 2010-08-05 09:31:14 -07:00
Tj Holowaychuk
01b3caaf49 Updated ejs submodule 2010-08-05 09:21:47 -07:00
Tj Holowaychuk
cd73c0b9ca Updated expresso submodule 2010-08-05 08:48:25 -07:00
Tj Holowaychuk
7ec5230402 make install-docs creating PREFIX/share/man/man1 when not present 2010-08-04 09:45:16 -07:00
Tj Holowaychuk
9dbe026f83 make install creating ~/.node_libraries when not present 2010-08-04 09:43:58 -07:00
Tj Holowaychuk
3fae10da3e Merge branch 'integration' 2010-08-04 09:13:25 -07:00
Tj Holowaychuk
d775154b92 Added "partials" setting to docs 2010-08-04 09:13:21 -07:00
Tj Holowaychuk
6c306b3542 Fixed "partials" setting 2010-08-04 09:10:58 -07:00
Nick Poulden
58b46ffeac Optionally set partials directory 2010-08-04 09:04:50 -07:00
Tj Holowaychuk
0bb7b7c60e Updated connect submodule 2010-08-04 08:35:16 -07:00
Tj Holowaychuk
58adf9a385 Updated jade submodule 2010-08-04 08:33:18 -07:00
Tj Holowaychuk
d6ba968ace Updated expresso 2010-08-04 07:56:26 -07:00
Tj Holowaychuk
1706721a62 Updated ejs 2010-08-04 07:56:11 -07:00
Tj Holowaychuk
7f88bd2eaf Added isLayout property
Aid introspection for another project I am working on
2010-08-03 15:52:20 -07:00
Tj Holowaychuk
b819366265 Updated docs 2010-08-03 14:53:35 -07:00
Tj Holowaychuk
47ff7d9dba Fixed doc typo 2010-08-03 14:53:31 -07:00
Tj Holowaychuk
e5f5254877 Added default expresso tests to express(1) generated app. Closes #384 2010-08-03 09:57:24 -07:00
Tj Holowaychuk
4778f728f9 Updated ejs submodule 2010-08-02 10:37:03 -07:00
Tj Holowaychuk
e80e4573be Updated jade submodule 2010-08-02 09:04:50 -07:00
Tj Holowaychuk
fdf0f3f282 Fixed multipart app example 2010-08-02 07:35:38 -07:00
Tj Holowaychuk
a81fce47d0 Updated docs 2010-07-31 07:18:35 -07:00
Tj Holowaychuk
2cd6989b11 Fixed some inline comments 2010-07-31 07:18:29 -07:00
Tj Holowaychuk
21abb0d205 Fixed readme version of node 2010-07-30 18:09:51 -07:00
Tj Holowaychuk
5e1a271ca2 Fixed res.render() callback when a layout is used [thanks guillermo] 2010-07-30 16:52:35 -07:00
Tj Holowaychuk
868e4c41e1 Added storify link 2010-07-30 12:51:50 -07:00
Tj Holowaychuk
a6e23bb713 Fixed connect dependency version 2010-07-30 10:50:54 -07:00
Tj Holowaychuk
446406dd62 Removed --growl from make test 2010-07-30 10:47:00 -07:00
Tj Holowaychuk
091f9f7eae Test typo 2010-07-30 10:45:35 -07:00
Tj Holowaychuk
10b1e06263 Updated docs 2010-07-30 10:41:12 -07:00
Tj Holowaychuk
a8865a51fd Misc docs 2010-07-30 10:29:58 -07:00
Tj Holowaychuk
32343297fc Updated docs 2010-07-30 10:21:33 -07:00
Tj Holowaychuk
aaa5deb0c0 Release 1.0.0rc 2010-07-30 10:16:30 -07:00
Tj Holowaychuk
808c519a1f Added doc contrib .. docs :) 2010-07-28 12:48:41 -07:00
Tj Holowaychuk
262b110f9f Removed "reload views" setting and support code
development env will always bypass cache,
however production will not
2010-07-28 11:22:29 -07:00
Tj Holowaychuk
d0fe19f996 Added e-resistible.co.uk link 2010-07-28 09:39:29 -07:00
Tj Holowaychuk
8e6675677f Removed direct CONNECT_ENV support
it is now SPARK_ENV, grr tim
2010-07-28 08:55:13 -07:00
Tj Holowaychuk
82dbae6185 Check CONNECT_ENV before connectEnv.name 2010-07-28 08:52:49 -07:00
Aaron Heckmann
943f1df325 typo 2010-07-28 08:27:51 -07:00
Tj Holowaychuk
018abcfe5f Added jade submodule back. Closes #376
This should work hopefully,
not sure what happened there probably
because I forced a push yesterday
2010-07-28 08:25:33 -07:00
Tj Holowaychuk
6b4f716508 Removed jade 2010-07-28 08:24:46 -07:00
Tj Holowaychuk
82b6ff0c28 Added http://clickdummy.net/ link 2010-07-27 15:33:35 -07:00
Tj Holowaychuk
d0c3132a63 Updated jade submodule 2010-07-27 14:23:22 -07:00
Tj Holowaychuk
02f0252dea Added http://codeshelver.com/ link 2010-07-27 12:23:21 -07:00
Tj Holowaychuk
74b3921eee Undocumented cache option
Dont pass this manually,
production mode sets cache to true
2010-07-27 12:14:57 -07:00
Tj Holowaychuk
1695c79021 Added wtfjs.com 2010-07-27 10:06:09 -07:00
Tj Holowaychuk
a3b0534b86 Updated docs 2010-07-27 10:03:52 -07:00
Tj Holowaychuk
a13f94d40f Updated node news url 2010-07-27 09:42:16 -07:00
Tj Holowaychuk
73288420a8 Added "Apps using express" section, PM me to add to the list 2010-07-27 09:30:27 -07:00
Tj Holowaychuk
e224387eb4 Misc refactoring 2010-07-27 09:08:40 -07:00
Tj Holowaychuk
626d322639 < 78 cols in view.js so people stop complaining :D 2010-07-27 09:07:37 -07:00
Tj Holowaychuk
7dce7a84c7 Added connect to package.json 2010-07-27 08:10:33 -07:00
Tj Holowaychuk
6234268f10 Updated docs 2010-07-26 17:02:31 -07:00
Tj Holowaychuk
7a1525c568 Defaulting app.enable("reload views") to 500ms 2010-07-26 17:01:08 -07:00
Tj Holowaychuk
fe99eb7147 Fixed a dynamic helper assertion 2010-07-26 13:50:06 -07:00
Tj Holowaychuk
d691ecbea3 Updated docs 2010-07-26 13:49:37 -07:00
Tj Holowaychuk
f60bcca893 Updated examples 2010-07-26 13:36:21 -07:00
Tj Holowaychuk
75661a2266 Route callback signature changed
it is now like Express used to be: (req, res, next)
instead of: (req, res, params, next)

access via req.params
2010-07-26 13:29:16 -07:00
Tj Holowaychuk
1026f361ef req.params.get is now req.query 2010-07-26 13:27:12 -07:00
Tj Holowaychuk
69fe203006 Fixed param tests 2010-07-26 13:25:04 -07:00
Tj Holowaychuk
f8ccaa3a81 Updated configuration docs 2010-07-26 09:57:07 -07:00
Tj Holowaychuk
c10a0a0cdf Style fixes 2010-07-26 09:49:04 -07:00
ewoudj
aceb6ab666 Fixed issue where options.cache was always ignored in view.js. 2010-07-26 09:48:31 -07:00
Tj Holowaychuk
c3a2aff9d3 Blog example using "home" 2010-07-26 08:59:26 -07:00
Tj Holowaychuk
c9e41db826 Updated express(1). Closes #365 2010-07-26 08:48:34 -07:00
Tj Holowaychuk
1e7a12fff5 New "home" docs 2010-07-26 08:42:40 -07:00
Tj Holowaychuk
ba88e48f6a Rebuilt docs 2010-07-26 08:36:11 -07:00
Tj Holowaychuk
52979662c5 Added docs for Server#mounted() 2010-07-26 08:30:10 -07:00
Tj Holowaychuk
50e6d80065 Added mounted hook. Closes #369 2010-07-26 08:27:36 -07:00
Tj Holowaychuk
16a24cfeac Merge branch 'fix-home' 2010-07-26 08:12:22 -07:00
Tj Holowaychuk
bab095e5b5 Fixed "home" setting
Now when you use() an app, both the mounted
route and previous home setting are respected.

For example if you have an app mounted to
/blog, and "home" for blog is /posts, home
will become "/blog/posts"
2010-07-26 08:12:18 -07:00
Tj Holowaychuk
b1a3b078e9 Added failing "home" setting test 2010-07-26 08:01:26 -07:00
Tj Holowaychuk
baae44610a Merge branch 'fix-config' 2010-07-26 07:49:34 -07:00
Tj Holowaychuk
8d2dffe5b4 Fixed middleware/router precedence issue. Closes #366
You can now "use" your router in configure()
blocks where ever you wish, ex:

  app.use(connect.bodyDecoder())
  app.use(app.router)
  app.use(connect.staticProvider())
2010-07-26 07:49:29 -07:00
Tj Holowaychuk
7b3eb23af8 Fixed; configure() callbacks called immediately. Closes #368 2010-07-26 07:45:26 -07:00
Tj Holowaychuk
fb526846fe Added failing test for config precedence 2010-07-26 07:35:38 -07:00
Tj Holowaychuk
6bd1371283 Added app.configure() immediate call test 2010-07-26 07:32:57 -07:00
Tj Holowaychuk
3c8c7af196 Updated docs 2010-07-23 17:14:09 -07:00
Tj Holowaychuk
929b43ed48 Fixed changelog typo 2010-07-23 17:09:57 -07:00
Tj Holowaychuk
a947064b7d Release 1.0.0beta2 2010-07-23 17:06:47 -07:00
Tj Holowaychuk
5bc9866f43 Added range example to resource 2010-07-23 16:57:12 -07:00
Tj Holowaychuk
61d82e210a Added / to resource example 2010-07-23 16:50:30 -07:00
Tj Holowaychuk
a876ac9386 Updated submodules 2010-07-23 16:42:08 -07:00
Tj Holowaychuk
da1502c463 Updated expresso submodule 2010-07-23 16:12:27 -07:00
Tj Holowaychuk
76bb782f64 Added support for absolute view paths 2010-07-23 16:12:07 -07:00
Tj Holowaychuk
e6f4b043cb Added test for absolute view path 2010-07-23 16:10:15 -07:00
Tj Holowaychuk
d651ffaf2e Added failing test for absolute layouts 2010-07-23 16:09:06 -07:00
Tj Holowaychuk
e554378b5e s/foo/relative/ 2010-07-23 16:07:58 -07:00
Tj Holowaychuk
b463bd797e Added test for layouts in a directory 2010-07-23 16:07:36 -07:00
Tj Holowaychuk
699e6e16c9 Merge branch 'render-next' 2010-07-22 14:15:05 -07:00
Tj Holowaychuk
f8477c41e1 res.render() exceptions passed to next() when no callback is given 2010-07-22 14:14:59 -07:00
Tj Holowaychuk
9a63333aec Added test for async render exceptions without callback 2010-07-22 14:09:53 -07:00
Tj Holowaychuk
6e40914258 No more http git submodules 2010-07-22 14:08:24 -07:00
Tj Holowaychuk
56a1dd931e No "or similar" for curl install
Because you need curl in install.sh anyways :D silly me
2010-07-22 13:14:50 -07:00
Tj Holowaychuk
57fd2e6a52 Fixed typo in install.sh 2010-07-22 13:09:01 -07:00
Tj Holowaychuk
113db06cdd Github example now using splat and splitting on /
try:

  http://dev:3000/repos/visionmedia/creationix/isaacs
2010-07-22 12:07:54 -07:00
Tj Holowaychuk
4ee5c59cfd Misc refactoring of github example 2010-07-22 11:56:23 -07:00
Tj Holowaychuk
15812678a3 Added compare view to github example
example visit:

    /repos/visionmedia..someoneelse

This helps illustrate that a RegExp literal can be used
2010-07-22 11:53:45 -07:00
Tj Holowaychuk
ee0379b321 Prepping github example for compare view 2010-07-22 11:23:44 -07:00
Tj Holowaychuk
dcf279177d Fixed tests due to params.splat removal 2010-07-22 11:04:54 -07:00
Tj Holowaychuk
01115824f7 Updated docs 2010-07-22 11:02:47 -07:00
Tj Holowaychuk
b68473ae11 Multi-file example from blog. Closes #364 2010-07-22 09:28:59 -07:00
Tj Holowaychuk
a65c203c9b Split blog example into another file 2010-07-22 09:14:29 -07:00
Tj Holowaychuk
0a848240d4 Fixed typo in docs 2010-07-22 08:46:12 -07:00
Tj Holowaychuk
d03821b88a Docs for params.captures. Closes #358 2010-07-22 08:30:15 -07:00
Tj Holowaychuk
4d32762899 Updated docs 2010-07-22 08:17:00 -07:00
Tj Holowaychuk
2cb4b6d16d Added test for "env" setting 2010-07-22 08:14:48 -07:00
Tj Holowaychuk
b770e566dd "home" setting defaults to Server#route. Closes #363 2010-07-22 08:13:42 -07:00
Tj Holowaychuk
51ebc88f0c Assert blog.route 2010-07-22 08:07:05 -07:00
Tj Holowaychuk
a04a75724d Added app mounting test 2010-07-22 08:06:06 -07:00
Tj Holowaychuk
6e5af3d799 Added mkdir to install.sh Closes #362 2010-07-22 06:21:30 -07:00
Tj Holowaychuk
0283a73a32 Removed instanceof Array check 2010-07-21 14:49:15 -07:00
Tj Holowaychuk
5f593031f0 Added --growl flag to make test 2010-07-21 13:05:48 -07:00
Tj Holowaychuk
0eeef2d4bd Style fixes 2010-07-21 13:04:04 -07:00
Guillermo Rauch
bb6164e30b Added helper method create() to view tests to get a server with the correct views directory Make the default scope for rendering the response Added tests for default scope and custom scope 2010-07-21 13:02:11 -07:00
Tj Holowaychuk
d3beae4871 Updated connect 2010-07-21 12:57:16 -07:00
Tj Holowaychuk
8df0df32f8 Blog example using the newly exposed app.route when mounted 2010-07-21 12:32:17 -07:00
Tj Holowaychuk
b0228dd0fd Refactored blog example 2010-07-21 12:16:58 -07:00
Tj Holowaychuk
ffca2dee1d Updated submodules 2010-07-21 12:14:00 -07:00
Tj Holowaychuk
cba985bfea res.render() using res.send() 2010-07-21 09:41:51 -07:00
Tj Holowaychuk
6a10a67205 Added resource example 2010-07-21 09:33:18 -07:00
Tj Holowaychuk
880fb5bd89 Revert "Removed make install-support"
This reverts commit bdfd81322b.
2010-07-20 22:11:00 -07:00
Tj Holowaychuk
6a0ade074d Updated docs 2010-07-20 16:34:47 -07:00
Tj Holowaychuk
6cf4629d0f Added Guillermo Rauch to the contributor list 2010-07-20 15:11:05 -07:00
Tj Holowaychuk
ce23e5fa9e Move menu up after scrolling. Closes #352 2010-07-20 15:04:27 -07:00
Tj Holowaychuk
d16fb838ca Updated connect submodule 2010-07-20 14:40:04 -07:00
Tj Holowaychuk
6b9eb8aae3 View helpers are now app specific. Closes #351 2010-07-20 14:22:54 -07:00
Tj Holowaychuk
78008d1fea Docs for Server#{helpers,dynamicHelpers}() 2010-07-20 14:02:38 -07:00
Tj Holowaychuk
69fb9bb39b Removed old view helpers test 2010-07-20 13:58:17 -07:00
Tj Holowaychuk
92f1557235 Renamed Server#helpers() to Server#dynamicHelpers() 2010-07-20 13:55:21 -07:00
Tj Holowaychuk
8e487ba36d Added assertions for dynamic helper params and scope 2010-07-20 13:48:30 -07:00
Tj Holowaychuk
7eb088b5ed Added app.helpers() docs 2010-07-20 13:45:57 -07:00
Tj Holowaychuk
9ef8ea95b0 Added dynamic view helper support. Closes #349
via app.helpers()
2010-07-20 13:40:29 -07:00
Tj Holowaychuk
eedf54b485 Added test for specific layouts with "view engine" set 2010-07-20 13:06:50 -07:00
Tj Holowaychuk
a461815957 Added support for passing of layout name without extension
Utilizes the child view ext
2010-07-20 12:56:08 -07:00
Tj Holowaychuk
687c2f08f6 Fixed express(1) expansion of public dirs. Closes #348
Should fix your issue, thanks!
2010-07-20 12:50:06 -07:00
Tj Holowaychuk
2294f23e5f Fixed connect links 2010-07-20 09:29:16 -07:00
Tj Holowaychuk
bdfd81322b Removed make install-support 2010-07-20 08:56:23 -07:00
Tj Holowaychuk
3ceb0de8d8 Updated curl install docs 2010-07-19 15:27:53 -07:00
Tj Holowaychuk
c4b5208867 Added view helper docs. Closes #344 2010-07-19 09:37:19 -07:00
Tj Holowaychuk
9c3f6b0c10 Merge branch 'fix-middleware' 2010-07-19 09:07:40 -07:00
Tj Holowaychuk
0550755c7d Fixed middleware precedence. Closes #345
The first call to app.{get,del,put,post}() will
stack the router middleware. This means config
can flow naturally BEFORE any routes
have been created, preventing breakage of
bodyDecoder etc
2010-07-19 09:07:35 -07:00
Tj Holowaychuk
47602f267a Added failing test 2010-07-19 08:40:42 -07:00
Tj Holowaychuk
656e67ef90 Cleaning up form example 2010-07-19 08:18:44 -07:00
Tj Holowaychuk
c53883b635 Docs for session example 2010-07-19 08:15:15 -07:00
Tj Holowaychuk
c4278c81f1 Added req.flash() to form example. Closes #338 2010-07-16 15:59:06 -07:00
Tj Holowaychuk
c94dcf5940 Merge branch 'sess' 2010-07-16 15:41:35 -07:00
Tj Holowaychuk
08ca3eff12 Added session example 2010-07-16 15:41:32 -07:00
Tj Holowaychuk
b40a241b2e Better blog partials 2010-07-16 13:34:35 -07:00
Tj Holowaychuk
f86f1e83ad Added partial tests for collection locals + passed locals 2010-07-16 12:55:05 -07:00
Tj Holowaychuk
be85701abe Added partial magic var docs. Closes #342 2010-07-16 12:51:56 -07:00
Tj Holowaychuk
190eb474a6 Refactored res.partial() 2010-07-16 12:48:34 -07:00
Tj Holowaychuk
8db1138081 Added support for "as" for non-collection partials. Closes #341 2010-07-16 12:42:05 -07:00
Tj Holowaychuk
afbfd4d3fa Merge branch 'blog' 2010-07-16 11:25:35 -07:00
Tj Holowaychuk
9b8efbfdd5 Added blog mounting example 2010-07-16 11:25:30 -07:00
Tj Holowaychuk
cacada87f3 Updated docs 2010-07-16 11:04:34 -07:00
Tj Holowaychuk
8a36c54318 Removed more use("/", ...)s 2010-07-16 11:03:45 -07:00
Tj Holowaychuk
879d411669 Removed app.use("/",...) from bin/express 2010-07-16 11:01:03 -07:00
Tj Holowaychuk
b38be2ce7b Updated connect submodule 2010-07-16 10:59:24 -07:00
Tj Holowaychuk
1810c9b61c Docs for "view engine" setting 2010-07-16 08:31:23 -07:00
Tj Holowaychuk
98737f14f1 Added "view engine" setting to jade example 2010-07-16 08:21:26 -07:00
Tj Holowaychuk
b311118a04 Removed testing docs from readme
View contrib guide on expressjs.com
2010-07-16 08:13:43 -07:00
Tj Holowaychuk
8a337f1faf Better docs for res.sendfile() 2010-07-16 08:03:20 -07:00
Tj Holowaychuk
dbc5bd4104 Added link to examples 2010-07-16 07:51:23 -07:00
Tj Holowaychuk
a9c3f566da Fixed migration typo 2010-07-16 07:45:22 -07:00
Tj Holowaychuk
6d9c9cd964 Removed pomo tasks 2010-07-16 07:44:42 -07:00
Tj Holowaychuk
25c8883e49 Cleaning up view docs 2010-07-16 07:44:05 -07:00
Tj Holowaychuk
793943fc2f In depth partial docs 2010-07-16 07:43:31 -07:00
Tj Holowaychuk
e98f86c540 Normalizing view context option to scope 2010-07-16 07:34:30 -07:00
Tj Holowaychuk
1c8ff48f92 More view docs 2010-07-16 07:33:33 -07:00
Tj Holowaychuk
1fb73e2211 Added test-cov docs to contrib guide 2010-07-16 07:23:56 -07:00
Tj Holowaychuk
5279ade0e7 Added more req.flash() tests 2010-07-16 07:21:10 -07:00
Tj Holowaychuk
984134fb9d Missing semicolon
OMggGG :)
2010-07-16 07:17:43 -07:00
Tj Holowaychuk
eb8f1f24b7 Merge remote branch 'aheckmann/beta-cacheView' into integration 2010-07-16 07:16:41 -07:00
Tj Holowaychuk
e49dc8bcfa Merge remote branch 'aheckmann/beta-exposeServer' into integration 2010-07-16 07:15:42 -07:00
Tj Holowaychuk
e742da24a7 Fixed doc typo 2010-07-16 07:11:08 -07:00
Aaron Heckmann
203b65475c watcher should read files async 2010-07-15 23:45:27 -04:00
Aaron Heckmann
576c5f4c9e expose Server 2010-07-15 23:17:48 -04:00
Tj Holowaychuk
d2434b5591 CNAME in wrong branch :) 2010-07-15 16:57:11 -07:00
Tj Holowaychuk
634c008fcd Added CNAME 2010-07-15 16:53:50 -07:00
Tj Holowaychuk
83f1ccb8ad Updated history some more 2010-07-15 16:45:11 -07:00
Tj Holowaychuk
cea401c513 More error handling docs 2010-07-15 16:41:37 -07:00
Tj Holowaychuk
6b54c1b6d4 listen in generated app 2010-07-15 16:25:25 -07:00
Tj Holowaychuk
193c4a953e Updated install docs 2010-07-15 16:20:32 -07:00
Tj Holowaychuk
d389134036 install.sh now installs connect as well 2010-07-15 16:19:31 -07:00
Tj Holowaychuk
d8b140e341 More install docs 2010-07-15 16:04:25 -07:00
Tj Holowaychuk
5931e1143b Updating install docs 2010-07-15 16:01:49 -07:00
Tj Holowaychuk
e6d0c4b79f Updated connect submodule 2010-07-15 15:56:22 -07:00
Tj Holowaychuk
44a4a18320 Removed version format test 2010-07-15 15:52:47 -07:00
Tj Holowaychuk
2f96506a6e Added more view docs 2010-07-15 15:49:25 -07:00
Tj Holowaychuk
f904606b32 Merge branch 'ejs' into connect 2010-07-15 15:38:12 -07:00
Tj Holowaychuk
99bb14680a Added ejs example 2010-07-15 15:38:08 -07:00
Tj Holowaychuk
83df3dda95 Started ejs example 2010-07-15 14:59:02 -07:00
Tj Holowaychuk
5e4d67209c Executable docs 2010-07-15 14:50:26 -07:00
Tj Holowaychuk
2798af1668 Updated history 2010-07-15 14:48:55 -07:00
Tj Holowaychuk
f0e41ce4c7 Bump to 1.0.0beta 2010-07-15 14:44:37 -07:00
Tj Holowaychuk
300602dd32 Contrib middleware link 2010-07-15 14:38:44 -07:00
Tj Holowaychuk
136f6778e2 Tasks 2010-07-15 14:36:24 -07:00
Tj Holowaychuk
2fa7907054 Unix domain socket docs 2010-07-15 13:49:11 -07:00
Tj Holowaychuk
f3803c4c22 Server#listen() docs 2010-07-15 13:46:42 -07:00
Tj Holowaychuk
5d37927b0a More docs 2010-07-15 13:39:57 -07:00
Tj Holowaychuk
6227f5cfa2 More error docs 2010-07-15 13:30:43 -07:00
Tj Holowaychuk
9fbb9fa5e1 Error handling docs 2010-07-15 13:29:50 -07:00
Tj Holowaychuk
de81ee7ee6 More docs 2010-07-15 13:24:43 -07:00
Tj Holowaychuk
5fcf971e28 Fixed reload views example 2010-07-15 13:10:00 -07:00
Tj Holowaychuk
492f70fc4b Merge branch 'docs' into connect 2010-07-15 13:09:00 -07:00
Tj Holowaychuk
3ced7b7212 No underlines for FF 2010-07-15 13:08:34 -07:00
Tj Holowaychuk
7b55867ea7 Misc styling 2010-07-15 13:06:56 -07:00
Tj Holowaychuk
3e15ef1c86 Setting up TOC 2010-07-15 12:49:57 -07:00
Tj Holowaychuk
0cdc836054 Generating TOC 2010-07-15 12:06:54 -07:00
Tj Holowaychuk
1aad62b95d Docs 2010-07-15 11:11:05 -07:00
Tj Holowaychuk
ed1c88920e Tasks 2010-07-15 11:08:17 -07:00
Tj Holowaychuk
e6ca20c4a2 Added views / reload views settings to bin/express app 2010-07-15 11:07:56 -07:00
Tj Holowaychuk
cfa3470df6 Tasks 2010-07-15 11:02:03 -07:00
Tj Holowaychuk
479f297cf6 Improved pages demo 2010-07-15 10:55:45 -07:00
Tj Holowaychuk
7e1b222f90 Fixed pages app example 2010-07-15 10:52:38 -07:00
Tj Holowaychuk
69baa6ea1a Regenerated api docs 2010-07-15 10:44:47 -07:00
Tj Holowaychuk
0fce93be37 Removed connect.redirect() 2010-07-15 08:56:51 -07:00
Tj Holowaychuk
51611ec2bb Added test for multiple app.error() calls 2010-07-14 17:36:16 -07:00
Tj Holowaychuk
228a78136d Server#error() no longer requires arity of 4 2010-07-14 17:25:25 -07:00
Tj Holowaychuk
34d10ace7a Added test to confirm app.error() works with thrown exceptions 2010-07-14 17:19:40 -07:00
Tj Holowaychuk
57bd0a5628 Tasks 2010-07-14 17:16:18 -07:00
Tj Holowaychuk
42e4860855 Tasks 2010-07-14 17:12:14 -07:00
Tj Holowaychuk
ea1c9f70d7 Merge branch 'pages' into connect 2010-07-14 17:09:21 -07:00
Tj Holowaychuk
d3085b0450 Added custom pages example 2010-07-14 17:09:17 -07:00
Tj Holowaychuk
63d02f1d5f Install docs 2010-07-14 16:27:50 -07:00
Tj Holowaychuk
dfecbe5bfa More docs 2010-07-14 16:15:00 -07:00
Tj Holowaychuk
bcf9f00de5 Added install.sh 2010-07-14 16:06:07 -07:00
Tj Holowaychuk
a8e8e35678 Removed seed.yml 2010-07-14 15:59:26 -07:00
Tj Holowaychuk
2ec4a8b4ce Test prefixes 2010-07-14 15:50:40 -07:00
Tj Holowaychuk
6c3d3dee81 Tasks 2010-07-14 15:49:36 -07:00
Tj Holowaychuk
40b3116ed7 Tasks 2010-07-14 15:44:13 -07:00
Tj Holowaychuk
df7582b138 Tasks 2010-07-14 15:30:46 -07:00
Tj Holowaychuk
b08dab9aa1 Docs for new res methods 2010-07-14 15:29:18 -07:00
Tj Holowaychuk
da5a4804df Added res.download() 2010-07-14 15:15:25 -07:00
Tj Holowaychuk
d12f43498e Merge branch 'sendfile' into connect 2010-07-14 15:06:45 -07:00
Tj Holowaychuk
f9f2facd76 Added res.sendfile() 2010-07-14 15:06:41 -07:00
Tj Holowaychuk
eaee3954c1 Tasks 2010-07-14 14:48:43 -07:00
Tj Holowaychuk
eb235e11b6 Docs for res.attachment() 2010-07-14 14:45:30 -07:00
Tj Holowaychuk
0c5fe61ed3 More docs :) 2010-07-14 14:42:44 -07:00
Tj Holowaychuk
76052b443a By default a Buffer passed through res.send() is application/octet-stream 2010-07-14 14:38:29 -07:00
Tj Holowaychuk
5a48248e1e Docs for res.send() 2010-07-14 14:36:29 -07:00
Tj Holowaychuk
bedff3278f More docs 2010-07-14 14:30:51 -07:00
Tj Holowaychuk
0bb48153a5 Added dynamic redirect mapping 2010-07-14 14:17:48 -07:00
Tj Holowaychuk
b75246e3ca Added app.redirect(key, url) 2010-07-14 14:03:30 -07:00
Tj Holowaychuk
2d31f0d7fe res.redirect() docs 2010-07-14 13:59:26 -07:00
Tj Holowaychuk
87cfca721e Merge branch 'redirect' into connect 2010-07-14 13:49:59 -07:00
Tj Holowaychuk
54d36f3337 Removed traces of connect.redirect() 2010-07-14 13:49:51 -07:00
Tj Holowaychuk
a4a17d171a Added custom redirect map support 2010-07-14 13:37:30 -07:00
Tj Holowaychuk
7c2673fc66 Added tests for res.redirect() 2010-07-14 13:29:39 -07:00
Tj Holowaychuk
c77ecbb10f Started ServerResponse#redirect() 2010-07-14 13:17:39 -07:00
Tj Holowaychuk
f0ba57ba23 Added contrib docs 2010-07-14 12:06:56 -07:00
Tj Holowaychuk
893aa80361 Added link to user account for github example 2010-07-14 11:40:58 -07:00
Tj Holowaychuk
59ac3d1d45 Merge branch 'github' into connect 2010-07-14 11:36:38 -07:00
Tj Holowaychuk
247a9478c8 Finished github example 2010-07-14 11:36:32 -07:00
Tj Holowaychuk
1c64d858c2 Added total watchers 2010-07-14 11:23:39 -07:00
Tj Holowaychuk
91a1d7faaf Sorting github repos 2010-07-14 11:19:57 -07:00
Tj Holowaychuk
214bbfa7b6 Simplified github example 2010-07-14 11:15:18 -07:00
Tj Holowaychuk
3ee4492b3c Started github example 2010-07-14 11:11:14 -07:00
Tj Holowaychuk
38c453b3c6 More migration docs 2010-07-14 10:49:23 -07:00
Tj Holowaychuk
3d41c61991 Updated docs 2010-07-14 10:23:43 -07:00
Tj Holowaychuk
1f9f47f97e Readme 2010-07-14 10:18:12 -07:00
Tj Holowaychuk
41cc2923b1 Updated multipart example 2010-07-14 09:34:38 -07:00
Tj Holowaychuk
4c180f3eed Added connect-form submodule 2010-07-14 08:59:34 -07:00
Tj Holowaychuk
5f9a64dbea Redirecting in multipart example 2010-07-14 08:49:20 -07:00
Tj Holowaychuk
9d37bfdcf1 listen() in examples 2010-07-14 08:43:23 -07:00
Tj Holowaychuk
d738c3aca6 Added methodOverride to generated app 2010-07-13 11:32:37 -07:00
Tj Holowaychuk
836c4313ab Tasks 2010-07-13 11:31:21 -07:00
Tj Holowaychuk
91c6478add Updated submodules 2010-07-13 11:29:19 -07:00
Tj Holowaychuk
fce527a55b Added progress to multipart example 2010-07-13 10:07:41 -07:00
Tj Holowaychuk
9a1f62fc1f Added multipart example 2010-07-13 09:48:33 -07:00
Tj Holowaychuk
018d8656d3 Added form example 2010-07-13 09:37:39 -07:00
Tj Holowaychuk
2636e1ba45 Added app.error() support 2010-07-13 09:09:10 -07:00
Tj Holowaychuk
caed07dfc1 Added exception example 2010-07-13 08:48:44 -07:00
Tj Holowaychuk
373cf3328d Added test to confirm set() is chainable 2010-07-13 08:36:56 -07:00
Tj Holowaychuk
0370c3fa01 configure() is chainable 2010-07-13 08:36:22 -07:00
Tj Holowaychuk
f5143a7d63 Added test to confirm that configure() callbacks execute in context to the server 2010-07-13 08:35:22 -07:00
Tj Holowaychuk
346b2a27cb Removed annoying padding transition 2010-07-12 17:46:26 -07:00
Tj Holowaychuk
38281e6361 Added more setting docs 2010-07-12 17:43:01 -07:00
Tj Holowaychuk
6e8413f568 Moved config docs up 2010-07-12 17:39:14 -07:00
Tj Holowaychuk
cb04364381 Configuration docs 2010-07-12 17:37:26 -07:00
Tj Holowaychuk
83d2555123 Added configuration section 2010-07-12 17:32:07 -07:00
Tj Holowaychuk
0ace97c8d4 Route passing docs 2010-07-12 17:09:52 -07:00
Tj Holowaychuk
9e3a0c61b8 Started guide 2010-07-12 17:06:35 -07:00
Tj Holowaychuk
2fda5c7873 Fixed banner 2010-07-12 16:47:30 -07:00
Tj Holowaychuk
e29868c8ce Added some links 2010-07-12 16:44:53 -07:00
Tj Holowaychuk
ac560be870 Added menu to docs 2010-07-12 16:42:11 -07:00
Tj Holowaychuk
5a29cbf4a7 Better hello world example 2010-07-12 16:36:01 -07:00
Tj Holowaychuk
dc77894f68 Migration docs for req.param() 2010-07-12 16:32:43 -07:00
Tj Holowaychuk
74432a6b9d Added redirect migration docs 2010-07-12 16:29:53 -07:00
Tj Holowaychuk
2b2fa7e77c Absolute labs banner 2010-07-12 16:23:16 -07:00
Tj Holowaychuk
c3f71b33aa Removed backticks from docs 2010-07-12 16:17:40 -07:00
Tj Holowaychuk
927aae72d1 Docs for plugins vs middleware 2010-07-12 16:15:53 -07:00
Tj Holowaychuk
2a674f4e8d Added partial migration docs 2010-07-12 16:07:03 -07:00
Tj Holowaychuk
0b86ce2bda Added view rendering migration section 2010-07-12 15:58:54 -07:00
Tj Holowaychuk
548a0709f4 Control passing docs 2010-07-12 15:47:09 -07:00
Tj Holowaychuk
da84c0bb4d Migration docs for params 2010-07-12 15:42:38 -07:00
Tj Holowaychuk
9e68a5b9ab Started migration docs 2010-07-12 15:28:46 -07:00
Tj Holowaychuk
6982bdaa28 Updated expresso submodule 2010-07-12 14:55:32 -07:00
Tj Holowaychuk
c1809232fe Merge branch 'flash' into connect 2010-07-12 14:55:19 -07:00
Tj Holowaychuk
3c06c82eb7 Added tests for req.flash() 2010-07-12 14:55:14 -07:00
Tj Holowaychuk
1bcccb3134 Added req.flash() 2010-07-12 14:14:50 -07:00
Tj Holowaychuk
cdf49dc87e Removed a utils.merge() call 2010-07-12 11:35:07 -07:00
Tj Holowaychuk
0a0fb8f803 Updated expresso submodule 2010-07-09 16:41:38 -07:00
Tj Holowaychuk
60cfd56369 Regenerated docs 2010-07-09 15:32:13 -07:00
Tj Holowaychuk
73050d38c5 Added make install-docs 2010-07-09 15:31:05 -07:00
Tj Holowaychuk
c50e941972 Tasks 2010-07-09 15:28:51 -07:00
Tj Holowaychuk
7c59fd21e2 Fixed package.json 2010-07-09 13:56:07 -07:00
Tj Holowaychuk
b095a4221c Added ejs submodule 2010-07-09 13:19:37 -07:00
Tj Holowaychuk
1ef39fa3b8 Updated Connect submodule 2010-07-09 10:53:57 -07:00
Tj Holowaychuk
fcf4530d83 Tasks 2010-07-08 14:59:57 -07:00
Tj Holowaychuk
0515e14d27 Added make test-cov 2010-07-08 14:49:13 -07:00
Tj Holowaychuk
ddbef0bd79 Merge branch 'view-helpers' into connect 2010-07-08 14:47:21 -07:00
Tj Holowaychuk
bc5d31f86a Added view helper support 2010-07-08 14:47:13 -07:00
Tj Holowaychuk
09147a2aab Regenerated docs 2010-07-08 14:33:54 -07:00
Tj Holowaychuk
a75a119e2f Added default view engine support
Now app.set("view engine", "jade") allows you to
res.render("jade")
2010-07-08 14:31:27 -07:00
Tj Holowaychuk
c1b3546161 More example docs 2010-07-08 14:07:05 -07:00
Tj Holowaychuk
8338432c7b Added app generation to bin/express 2010-07-08 14:01:56 -07:00
Tj Holowaychuk
8beae065cf Added view callback error test 2010-07-08 13:17:30 -07:00
Tj Holowaychuk
0e7d39aa13 Added invalid view test 2010-07-08 13:16:36 -07:00
Tj Holowaychuk
74063ad735 Tasks 2010-07-08 13:10:53 -07:00
Tj Holowaychuk
55a29808c9 Added view callback test 2010-07-08 13:09:15 -07:00
Tj Holowaychuk
40f3de3939 Merge branch 'view-reloading' into connect 2010-07-08 13:04:50 -07:00
Tj Holowaychuk
5d94ab09e3 Updated jade submodule 2010-07-08 13:04:21 -07:00
Tj Holowaychuk
b34ff6853d Renamed setting to "reload views" 2010-07-08 12:45:03 -07:00
Tj Holowaychuk
e2570be957 Added view reloading 2010-07-08 12:38:16 -07:00
Tj Holowaychuk
95e6fff3da Added another example 2010-07-08 11:49:12 -07:00
Tj Holowaychuk
9de12b7385 Tasks 2010-07-08 11:33:39 -07:00
Tj Holowaychuk
beffe906e4 ws 2010-07-08 11:12:42 -07:00
Tj Holowaychuk
e850d1073d Partials without extensions use the same extension as the parent view 2010-07-08 11:01:20 -07:00
Tj Holowaychuk
c02a2ba5ba Exposing __filename as a local for views 2010-07-08 10:49:46 -07:00
Tj Holowaychuk
f92bb6690b Todo 2010-07-08 10:40:46 -07:00
Tj Holowaychuk
5842a3bba6 Added test for non-collection partial support 2010-07-08 10:38:30 -07:00
Tj Holowaychuk
fcf691d97c Added view test for magic locals 2010-07-08 10:27:23 -07:00
Tj Holowaychuk
a32c7d5f07 Added as: global support 2010-07-08 10:24:12 -07:00
Tj Holowaychuk
edfb18b75a Added as: this support 2010-07-08 10:17:11 -07:00
Tj Holowaychuk
5544c5d5d4 Added collection "as" option test 2010-07-08 10:13:24 -07:00
Tj Holowaychuk
22100f7c3a Added support for partial(view, array) as collection 2010-07-08 10:09:03 -07:00
Tj Holowaychuk
8ece01ccda Fixed partial support 2010-07-08 09:56:03 -07:00
Tj Holowaychuk
9b68039a62 Caching view contents 2010-07-08 09:53:34 -07:00
Tj Holowaychuk
a914326e75 todo 2010-07-08 09:49:13 -07:00
Tj Holowaychuk
2b7dd35e05 Todo 2010-07-08 09:36:59 -07:00
Tj Holowaychuk
15e41169ad Added bin/express to package.json 2010-07-08 09:25:43 -07:00
Tj Holowaychuk
f8c5219c12 Updated jade submodule 2010-07-08 09:23:37 -07:00
Tj Holowaychuk
c570b67dda Updated jade submodule 2010-07-08 09:16:57 -07:00
Tj Holowaychuk
456fac1700 Tasks 2010-07-08 07:43:17 -07:00
Tj Holowaychuk
41e58c394b Updated tasks 2010-07-07 17:16:18 -07:00
Tj Holowaychuk
5aeda5f67b Added .pomo
Used with my ruby "pomo" executable, for managing tasks
2010-07-07 17:15:36 -07:00
Tj Holowaychuk
c96adf168c Added ./index.js
For super easy git installs
2010-07-07 17:13:49 -07:00
Tj Holowaychuk
40c5bc01ff Docs 2010-07-07 17:08:07 -07:00
Tj Holowaychuk
09dabef70c Updated docs 2010-07-07 17:03:23 -07:00
Tj Holowaychuk
96edee806e req.param() docs 2010-07-07 17:03:13 -07:00
Tj Holowaychuk
e58f4683d1 Finished req.accepts() 2010-07-07 17:00:23 -07:00
Tj Holowaychuk
9750817bf0 Added more tests for req.accepts() 2010-07-07 16:44:42 -07:00
Tj Holowaychuk
7099d730e6 Docs for req.accepts() 2010-07-07 16:41:07 -07:00
Tj Holowaychuk
13c290e99f Docs for req.accepts() 2010-07-07 16:40:29 -07:00
Tj Holowaychuk
cf37966e39 Added req.accepts() 2010-07-07 16:38:23 -07:00
Tj Holowaychuk
9449c4b9b5 Merge branch 'params' into connect 2010-07-07 16:05:43 -07:00
Tj Holowaychuk
046172e5d9 Added req.param() POST support via connect.bodyDecoder() 2010-07-07 16:05:32 -07:00
Tj Holowaychuk
c74446e38c Added req.param() 2010-07-07 15:54:25 -07:00
Tj Holowaychuk
7897460993 Added req.header() tests 2010-07-07 15:38:06 -07:00
Tj Holowaychuk
4b59583bca Docs 2010-07-07 15:34:46 -07:00
Tj Holowaychuk
41f73559f2 Setting res.render() cache to true in production 2010-07-07 15:21:21 -07:00
Tj Holowaychuk
d3090c0965 Added option docs to res.render() 2010-07-07 15:17:48 -07:00
Tj Holowaychuk
dc5caebbf8 Added haml test 2010-07-07 15:10:16 -07:00
Tj Holowaychuk
14280dfedb Added buffer support to res.send() 2010-07-07 14:54:23 -07:00
Tj Holowaychuk
8fdf11135a Added res.attachment() 2010-07-07 14:45:45 -07:00
Tj Holowaychuk
c8baa8f349 Added res.send() Content-Type precedence test 2010-07-07 14:38:41 -07:00
Tj Holowaychuk
a6e25b46af Added res.send() examples 2010-07-07 14:29:18 -07:00
Tj Holowaychuk
395d14ab58 Allowing status as first or second arg to res.send() 2010-07-07 14:25:06 -07:00
Tj Holowaychuk
0d4b57df7a req.send() headers take precedence 2010-07-07 14:11:00 -07:00
Tj Holowaychuk
416e7617b3 res.contentType() using res.header() 2010-07-07 14:02:55 -07:00
Tj Holowaychuk
838c470017 Added res.header() 2010-07-07 14:02:16 -07:00
Tj Holowaychuk
f0a09665db res.send() only setting Content-Type when not already present 2010-07-07 13:57:56 -07:00
Tj Holowaychuk
1397fa64d5 Added req.header(name, defaultValue) 2010-07-07 13:33:21 -07:00
Tj Holowaychuk
ac17a6afcf Added res.contentType() tests 2010-07-07 13:32:16 -07:00
Tj Holowaychuk
35af1bab30 Added req.xhr as alias of req.isXMLHttpRequest 2010-07-07 13:22:59 -07:00
Tj Holowaychuk
1fe7bb271a Added req.isXMLHttpRequest 2010-07-07 13:21:07 -07:00
Tj Holowaychuk
774e25d944 Added make install-support and make uninstall-support 2010-07-07 13:06:41 -07:00
Tj Holowaychuk
6770e8541d Added `make install 2010-07-07 13:05:21 -07:00
Tj Holowaychuk
70e94e4dde Updated connect submodule 2010-07-07 12:54:28 -07:00
Tj Holowaychuk
0ffbc6e345 Added jade submodule 2010-07-07 12:43:48 -07:00
Tj Holowaychuk
25e796753f Added Connect submodule 2010-07-07 12:43:01 -07:00
Tj Holowaychuk
70d9ef4f77 Added test for next()ing 2010-07-07 11:56:37 -07:00
Tj Holowaychuk
fd67c9a589 Exposing req / res to each other 2010-07-07 11:52:18 -07:00
Tj Holowaychuk
f0917ff774 Ignore pids 2010-07-07 07:49:40 -07:00
Tj Holowaychuk
843281dec0 Added hello-world example
run with:
    connect -C examples/helloworld
2010-07-07 07:49:01 -07:00
Tj Holowaychuk
3a21588429 Docs :) 2010-07-07 07:35:57 -07:00
Tj Holowaychuk
21eeb09a3c Executable docs 2010-07-06 20:31:52 -07:00
Tj Holowaychuk
900c5ed358 More docs 2010-07-06 19:46:48 -07:00
Tj Holowaychuk
195c8a92d1 Added contributors back to docs 2010-07-06 19:42:06 -07:00
Tj Holowaychuk
7c651e6093 More styling
gahh!!
2010-07-06 17:10:59 -07:00
Tj Holowaychuk
860b899f0c Added images back to docs 2010-07-06 17:06:39 -07:00
Tj Holowaychuk
87b7524de9 More doc styling 2010-07-06 17:01:04 -07:00
Tj Holowaychuk
29641ae16a Started new docs 2010-07-06 16:56:42 -07:00
Tj Holowaychuk
02e32a7a9d App generation in bin/express 2010-07-06 08:17:35 -07:00
Tj Holowaychuk
3056369c6e Started bin/express 2010-07-06 08:06:39 -07:00
Tj Holowaychuk
3da75726d3 Error handling for views 2010-07-06 07:53:18 -07:00
Tj Holowaychuk
b7346de47d Fixed partials 2010-07-06 07:07:56 -07:00
Tj Holowaychuk
7a69100b2f Updated copyright 2010-07-06 06:53:13 -07:00
Tj Holowaychuk
2732d2b9d3 Updated docs 2010-07-06 06:52:48 -07:00
Tj Holowaychuk
87bb27cc4f Added migrate doc files
yet to be filled with copy :)
2010-07-05 21:56:58 -07:00
Tj Holowaychuk
bafa300b0f Generated docs 2010-07-05 21:52:49 -07:00
Tj Holowaychuk
939cf4542f Added make docs 2010-07-05 21:47:37 -07:00
Tj Holowaychuk
874975da54 Added response helpers 2010-07-05 21:37:56 -07:00
Tj Holowaychuk
f0bebd4c33 Docs 2010-07-05 16:58:07 -07:00
Tj Holowaychuk
c444a11862 Todo 2010-07-05 16:55:16 -07:00
Tj Holowaychuk
4c0704e338 Started implementing partials again 2010-07-05 16:50:37 -07:00
Tj Holowaychuk
77f4cd5d58 Refactord ServerResponse#render() 2010-07-05 16:30:55 -07:00
Tj Holowaychuk
9858d3c5a8 Refactord ServerResponse#render() 2010-07-05 16:30:21 -07:00
Tj Holowaychuk
414acbc9ec Added layout support 2010-07-05 16:29:39 -07:00
Tj Holowaychuk
21f904db42 Started ServerResponse#render() 2010-07-05 16:14:34 -07:00
Tj Holowaychuk
f6ca253849 Applying arguments from createServer() 2010-07-05 15:54:35 -07:00
Tj Holowaychuk
3f989191e3 Added failing constructor middleware test 2010-07-05 15:49:38 -07:00
Tj Holowaychuk
2bea014e89 Added middleware usage test 2010-07-05 15:43:10 -07:00
Tj Holowaychuk
84fc19a75f Docs 2010-07-05 15:33:56 -07:00
Tj Holowaychuk
d803924ef0 Added Server#{set,enable,disable}() and friends 2010-07-05 15:32:54 -07:00
Tj Holowaychuk
889f8d9d30 Added server.js 2010-07-05 15:13:32 -07:00
Tj Holowaychuk
1dcb7eaf1f . 2010-07-05 15:13:19 -07:00
Tj Holowaychuk
5f9e4ace2f Added basic app test 2010-07-05 15:02:25 -07:00
Tj Holowaychuk
6386330973 Started tests 2010-07-05 14:58:38 -07:00
Tj Holowaychuk
fd89b9755e Removed benchmarks 2010-07-05 14:52:19 -07:00
Tj Holowaychuk
730f454278 Removed examples 2010-07-05 14:51:53 -07:00
Tj Holowaychuk
e2fca29c91 Cleared out makefile 2010-07-05 14:51:45 -07:00
Tj Holowaychuk
f97a222cf5 Removed specs 2010-07-05 14:50:39 -07:00
Tj Holowaychuk
c75105e977 Added expresso submodule 2010-07-05 14:50:21 -07:00
Tj Holowaychuk
7096471d65 Removed submodules 2010-07-05 14:49:57 -07:00
Tj Holowaychuk
cc1cee8a38 Auto-requiring ./view.js 2010-06-19 22:25:10 -07:00
Tj Holowaychuk
5f2680889f Added application.js 2010-06-19 22:18:35 -07:00
Tj Holowaychuk
b3ae8bb606 Added Application#runConfig() 2010-06-19 22:07:18 -07:00
Tj Holowaychuk
72d9f37845 Added Application#{set,enable,disable}() 2010-06-19 21:39:36 -07:00
Tj Holowaychuk
fdfccafd84 Fixed another typo 2010-06-19 21:35:16 -07:00
Tj Holowaychuk
a784f946ba Fixed ternary typo 2010-06-19 21:34:12 -07:00
Tj Holowaychuk
a04af6c4bd Started re-write of views 2010-06-19 21:33:29 -07:00
Tj Holowaychuk
64b24a96c8 Fixing chat example 2010-06-18 17:30:20 -07:00
Tj Holowaychuk
a62a5d0d7b Removed old cruft
wow express is light now! haha.. go connect go
2010-06-18 17:16:17 -07:00
Tj Holowaychuk
3043d1e839 Hello world working (somewhat) 2010-06-18 17:00:07 -07:00
Tj Holowaychuk
a3aefb6902 Removed spec crap
not a good fit for async
2010-06-18 16:23:08 -07:00
Tj Holowaychuk
a42aaa270c Removed lib/support
you will all have to install these via kiwi or npm etc,
bundling is no more! (at least for now)
2010-06-18 16:22:48 -07:00
Tj Holowaychuk
f8b471c17b Started the destruction :) 2010-06-18 16:21:16 -07:00
Tj Holowaychuk
87adff44db Added connect submodule 2010-06-18 16:15:52 -07:00
isaacs
767bba9c04 s/parseQuery/parse/g (The node querystring module changed recently) 2010-06-16 00:54:19 -07:00
Tj Holowaychuk
0c827521d0 Added npm install docs 2010-06-15 14:25:20 -07:00
Tj Holowaychuk
80cec7d12f Release 0.14.0 2010-06-15 14:22:51 -07:00
Tj Holowaychuk
5f916357e9 Make Express npm friendly
Since wayyy back in the early days of node we did
not have relative require :)
2010-06-15 14:14:40 -07:00
Tj Holowaychuk
ea82eea9bb Misc package.json updates 2010-06-15 13:50:17 -07:00
Aaron Heckmann
22222d7db4 update node version 2010-06-14 01:54:34 -04:00
Aaron Heckmann
cebee369d1 add ciaran 2010-06-13 19:59:39 -04:00
Aaron Heckmann
faf809851c add contributors 2010-06-10 21:21:32 -04:00
Aaron Heckmann
d05aafd76b use plugin option instead of global set() 2010-06-10 20:21:52 -04:00
visionmedia
8d52721873 Removed bufferSize from static benchmarks 2010-06-10 11:09:26 -07:00
visionmedia
66c6152cd2 Merge remote branch 'aheckmann/staticbuffersize' 2010-06-10 11:08:40 -07:00
Aaron Heckmann
32cd51d3a5 add 'static buffer size' setting 2010-06-09 21:19:02 -04:00
Aaron Heckmann
497a28401e cache view and partial subdirectories 2010-06-09 08:04:45 -07:00
visionmedia
e46912047c Updated haml submodule 2010-06-08 05:44:54 -07:00
visionmedia
56b573ede5 Updated class submodule 2010-06-04 11:07:38 -07:00
visionmedia
0276be1789 Updated haml submodule 2010-06-04 11:05:47 -07:00
visionmedia
7db4c60fc3 Removed old release details link
Not really relevant anymore. (but really im just testing
my new CI server haha :D )
2010-06-03 16:39:43 -07:00
visionmedia
95cc01dd91 Added missing file comment 2010-06-03 16:36:11 -07:00
visionmedia
cce1dddf42 Added author to package.json
Guys feel free to add yourself as contributors in there :)
2010-06-03 16:31:08 -07:00
visionmedia
0938b57841 Removed bin/express
for now :) maybe it will come back some day when it is
more useful
2010-06-03 16:25:50 -07:00
visionmedia
aef8550e2f Removed old todo comment 2010-06-03 16:22:45 -07:00
visionmedia
71bf0bde32 Readme typo 2010-06-03 16:18:59 -07:00
visionmedia
750623b9b1 Fixed mime.type() comments now that ".ext" is not supported 2010-06-03 16:15:32 -07:00
visionmedia
1f12c53b65 Added Connect port notice 2010-06-03 16:04:36 -07:00
visionmedia
8717ea1b95 Updated seed.yml 2010-06-01 08:49:21 -07:00
visionmedia
db2eb658ca Release 0.13.0 2010-06-01 08:49:04 -07:00
visionmedia
70483484ce Fixed upload example 2010-06-01 08:44:26 -07:00
visionmedia
d21afc43a1 Merge branch 'charset' of git://github.com/aheckmann/express 2010-05-31 14:06:29 -07:00
visionmedia
7ad0803f2e Updated package.json 2010-05-31 14:05:15 -07:00
Aaron Heckmann
ec4bfd55f9 not-found exceptions using utf-8 2010-05-31 12:58:53 -04:00
Aaron Heckmann
f65174a0db show-exceptions uses utf-8 2010-05-31 12:56:30 -04:00
visionmedia
8b1fcd4dd7 mime.type() no longer accepts ".type" 2010-05-30 13:14:08 -07:00
visionmedia
9509237958 Fixed mime.type() due to path.extname() changes 2010-05-30 13:04:35 -07:00
visionmedia
f20fd20a06 Fixed view support due to fs.readFile Buffers 2010-05-30 12:46:15 -07:00
visionmedia
8e48120fb7 Updated JSpec 2010-05-30 12:42:31 -07:00
visionmedia
44cc5ac883 Updated haml submodule 2010-05-27 15:32:30 -07:00
visionmedia
9a43cc8c4b Updated haml submodule 2010-05-25 16:08:50 -07:00
visionmedia
8dfc0d54f4 Updated haml submodule 2010-05-25 13:49:30 -07:00
visionmedia
77febd21de Fixed code styling 2010-05-23 09:38:42 -07:00
Aaron Heckmann
84a997c66b Added support for deleting cookies via Request#cookie('key', null) 2010-05-23 09:37:53 -07:00
Aaron Heckmann
b900a59fc2 respond(204) should not have a body 2010-05-22 12:13:15 -04:00
visionmedia
ca782dbc58 Release 0.12.0 2010-05-22 08:24:22 -07:00
visionmedia
746cda27ec Fixed cookie spec urlencoding 2010-05-22 08:23:28 -07:00
visionmedia
16d1651656 Fixed a cookie spec 2010-05-22 08:22:01 -07:00
visionmedia
4735fb2377 Merge branch 'master' of git://github.com/tritonrc/express 2010-05-22 08:21:08 -07:00
Aaron Heckmann
ec6b518fd2 compatible with node v0.1.96 2010-05-22 08:09:09 -07:00
Brian McKinney
580ad1b192 Make sure to URL encode cookie name and value on response if we are going to URL decode on request 2010-05-18 18:53:01 -06:00
visionmedia
23d8810486 Updated haml submodule 2010-05-17 15:43:38 -07:00
visionmedia
d579d62eb6 Comment changed to match others 2010-05-14 07:30:14 -07:00
visionmedia
529f785e3c Merge branch 'master' of git://github.com/Guille/express 2010-05-14 07:28:53 -07:00
Guillermo Rauch
0581ae87b4 Renaming Globals to helpers (I'm sold) 2010-05-14 11:16:51 -03:00
visionmedia
cda1059336 Updated readme, we are compatible with node --version v0.1.95 2010-05-14 06:51:59 -07:00
Aaron Heckmann
1aed6b5c30 Merge branch 'master' into encoding 2010-05-14 08:05:46 -04:00
Aaron Heckmann
4e68705b24 compatible with node v0.1.95 2010-05-14 08:01:05 -04:00
Guillermo Rauch
216cb1ea12 Added support for globals (eg: helpers) in views
- Added export.Globals in plugins/view.js
 - Added two specs (one for a simple template, one for a template with a layout) with a dummy i18n helper
 - Updated README features list
2010-05-13 20:35:25 -03:00
Guillermo Rauch
8ef6a0b432 Merge branch 'master' of http://github.com/visionmedia/express
* 'master' of http://github.com/visionmedia/express: (168 commits)
  Updated haml submodule
  s/==/===/
  Misc refactoring to make parseCookie() more readable / spec for overriding keys
  s/QueryString/queryString/
  Added spec for malformed cookies
  regexps have no "n" flag
  No need to quote key in spec
  Fixed LF -> CRLF for setting multiple cookies
  Redo cookies parsing to accept quoted values and url escaped cookies
  Remove inode from ETag, modified time only
  Release 0.11.0
  Works fine with node --version v0.1.94
  Refactoring some spec fixtures
  Fixing spec for EJS partial
  Updated ext
  Updated haml
  Added spec / refactored layout of different engine support
  Added spec for layouts with different engines
  Fixing EJS partial support by passing along the context. Issue #307
  Allow layouts to use different engines
  ...

Conflicts:
	lib/express/core.js
2010-05-13 18:53:11 -03:00
visionmedia
5dc152c46e Updated haml submodule 2010-05-11 13:22:32 -07:00
visionmedia
c3a21437e4 Merge branch 'integration' 2010-05-11 07:57:50 -07:00
visionmedia
32bc8dcbf9 s/==/===/ 2010-05-11 07:57:24 -07:00
visionmedia
677ca7b4aa Misc refactoring to make parseCookie() more readable / spec for overriding keys 2010-05-11 07:55:15 -07:00
visionmedia
dfc2331104 s/QueryString/queryString/ 2010-05-11 07:47:20 -07:00
visionmedia
cd06bbfb8d Added spec for malformed cookies 2010-05-11 07:46:44 -07:00
visionmedia
1d596bcbac regexps have no "n" flag 2010-05-11 07:44:31 -07:00
visionmedia
0cb7b9c13d No need to quote key in spec 2010-05-11 07:42:23 -07:00
visionmedia
a180efeca7 Merge branch 'master' of git://github.com/tritonrc/express into integration 2010-05-11 07:41:15 -07:00
visionmedia
eef24ea29c Fixed LF -> CRLF for setting multiple cookies 2010-05-11 07:25:08 -07:00
Brian McKinney
458bb3d7f7 Redo cookies parsing to accept quoted values and url escaped cookies 2010-05-10 17:18:42 -06:00
visionmedia
ffb23d92c0 Remove inode from ETag, modified time only 2010-05-07 13:52:13 -07:00
Guillermo Rauch
b0884ad7c3 Correction 2010-03-25 19:33:45 -07:00
Guillermo Rauch
cf09f86df2 Expose the http.Server instance 2010-03-25 19:17:43 -07:00
323 changed files with 13294 additions and 9389 deletions

14
.gitignore vendored
View File

@@ -1,7 +1,19 @@
coverage.html
.DS_Store
lib-cov
*.seed
*.log
*.csv
*.dat
*.out
benchmarks/graphs
*.pid
*.swp
*.swo
benchmarks/graphs
testing
node_modules/
testing
.coverage_data
cover_html
test.js
.idea

15
.gitmodules vendored
View File

@@ -1,15 +0,0 @@
[submodule "lib/support/ext"]
path = lib/support/ext
url = git://github.com/visionmedia/ext.js.git
[submodule "lib/support/sass"]
path = lib/support/sass
url = git://github.com/visionmedia/sass.js.git
[submodule "lib/support/class"]
path = lib/support/class
url = git://github.com/visionmedia/class.js.git
[submodule "lib/support/haml"]
path = lib/support/haml
url = git://github.com/visionmedia/haml.js.git
[submodule "lib/support/multipart"]
path = lib/support/multipart
url = git://github.com/isaacs/multipart-js.git

9
.npmignore Normal file
View File

@@ -0,0 +1,9 @@
.git*
docs/
examples/
support/
test/
testing.js
.DS_Store
coverage.html
lib-cov

4
.travis.yml Normal file
View File

@@ -0,0 +1,4 @@
language: node_js
node_js:
- "0.8"
- "0.10"

View File

@@ -1,4 +1,933 @@
3.3.3 / 2013-07-04
==================
* update connect
3.3.2 / 2013-07-03
==================
* update connect
* update send
* remove .version export
3.3.1 / 2013-06-27
==================
* update connect
3.3.0 / 2013-06-26
==================
* update connect
* add support for multiple X-Forwarded-Proto values. Closes #1646
* change: remove charset from json responses. Closes #1631
* change: return actual booleans from req.accept* functions
* fix jsonp callback array throw
3.2.6 / 2013-06-02
==================
* update connect
3.2.5 / 2013-05-21
==================
* update connect
* update node-cookie
* add: throw a meaningful error when there is no default engine
* change generation of ETags with res.send() to GET requests only. Closes #1619
3.2.4 / 2013-05-09
==================
* fix `req.subdomains` when no Host is present
* fix `req.host` when no Host is present, return undefined
3.2.3 / 2013-05-07
==================
* update connect / qs
3.2.2 / 2013-05-03
==================
* update qs
3.2.1 / 2013-04-29
==================
* add app.VERB() paths array deprecation warning
* update connect
* update qs and remove all ~ semver crap
* fix: accept number as value of Signed Cookie
3.2.0 / 2013-04-15
==================
* add "view" constructor setting to override view behaviour
* add req.acceptsEncoding(name)
* add req.acceptedEncodings
* revert cookie signature change causing session race conditions
* fix sorting of Accept values of the same quality
3.1.2 / 2013-04-12
==================
* add support for custom Accept parameters
* update cookie-signature
3.1.1 / 2013-04-01
==================
* add X-Forwarded-Host support to `req.host`
* fix relative redirects
* update mkdirp
* update buffer-crc32
* remove legacy app.configure() method from app template.
3.1.0 / 2013-01-25
==================
* add support for leading "." in "view engine" setting
* add array support to `res.set()`
* add node 0.8.x to travis.yml
* add "subdomain offset" setting for tweaking `req.subdomains`
* add `res.location(url)` implementing `res.redirect()`-like setting of Location
* use app.get() for x-powered-by setting for inheritance
* fix colons in passwords for `req.auth`
3.0.6 / 2013-01-04
==================
* add http verb methods to Router
* update connect
* fix mangling of the `res.cookie()` options object
* fix jsonp whitespace escape. Closes #1132
3.0.5 / 2012-12-19
==================
* add throwing when a non-function is passed to a route
* fix: explicitly remove Transfer-Encoding header from 204 and 304 responses
* revert "add 'etag' option"
3.0.4 / 2012-12-05
==================
* add 'etag' option to disable `res.send()` Etags
* add escaping of urls in text/plain in `res.redirect()`
for old browsers interpreting as html
* change crc32 module for a more liberal license
* update connect
3.0.3 / 2012-11-13
==================
* update connect
* update cookie module
* fix cookie max-age
3.0.2 / 2012-11-08
==================
* add OPTIONS to cors example. Closes #1398
* fix route chaining regression. Closes #1397
3.0.1 / 2012-11-01
==================
* update connect
3.0.0 / 2012-10-23
==================
* add `make clean`
* add "Basic" check to req.auth
* add `req.auth` test coverage
* add cb && cb(payload) to `res.jsonp()`. Closes #1374
* add backwards compat for `res.redirect()` status. Closes #1336
* add support for `res.json()` to retain previously defined Content-Types. Closes #1349
* update connect
* change `res.redirect()` to utilize a pathname-relative Location again. Closes #1382
* remove non-primitive string support for `res.send()`
* fix view-locals example. Closes #1370
* fix route-separation example
3.0.0rc5 / 2012-09-18
==================
* update connect
* add redis search example
* add static-files example
* add "x-powered-by" setting (`app.disable('x-powered-by')`)
* add "application/octet-stream" redirect Accept test case. Closes #1317
3.0.0rc4 / 2012-08-30
==================
* add `res.jsonp()`. Closes #1307
* add "verbose errors" option to error-pages example
* add another route example to express(1) so people are not so confused
* add redis online user activity tracking example
* update connect dep
* fix etag quoting. Closes #1310
* fix error-pages 404 status
* fix jsonp callback char restrictions
* remove old OPTIONS default response
3.0.0rc3 / 2012-08-13
==================
* update connect dep
* fix signed cookies to work with `connect.cookieParser()` ("s:" prefix was missing) [tnydwrds]
* fix `res.render()` clobbering of "locals"
3.0.0rc2 / 2012-08-03
==================
* add CORS example
* update connect dep
* deprecate `.createServer()` & remove old stale examples
* fix: escape `res.redirect()` link
* fix vhost example
3.0.0rc1 / 2012-07-24
==================
* add more examples to view-locals
* add scheme-relative redirects (`res.redirect("//foo.com")`) support
* update cookie dep
* update connect dep
* update send dep
* fix `express(1)` -h flag, use -H for hogan. Closes #1245
* fix `res.sendfile()` socket error handling regression
3.0.0beta7 / 2012-07-16
==================
* update connect dep for `send()` root normalization regression
3.0.0beta6 / 2012-07-13
==================
* add `err.view` property for view errors. Closes #1226
* add "jsonp callback name" setting
* add support for "/foo/:bar*" non-greedy matches
* change `res.sendfile()` to use `send()` module
* change `res.send` to use "response-send" module
* remove `app.locals.use` and `res.locals.use`, use regular middleware
3.0.0beta5 / 2012-07-03
==================
* add "make check" support
* add route-map example
* add `res.json(obj, status)` support back for BC
* add "methods" dep, remove internal methods module
* update connect dep
* update auth example to utilize cores pbkdf2
* updated tests to use "supertest"
3.0.0beta4 / 2012-06-25
==================
* Added `req.auth`
* Added `req.range(size)`
* Added `res.links(obj)`
* Added `res.send(body, status)` support back for backwards compat
* Added `.default()` support to `res.format()`
* Added 2xx / 304 check to `req.fresh`
* Revert "Added + support to the router"
* Fixed `res.send()` freshness check, respect res.statusCode
3.0.0beta3 / 2012-06-15
==================
* Added hogan `--hjs` to express(1) [nullfirm]
* Added another example to content-negotiation
* Added `fresh` dep
* Changed: `res.send()` always checks freshness
* Fixed: expose connects mime module. Cloases #1165
3.0.0beta2 / 2012-06-06
==================
* Added `+` support to the router
* Added `req.host`
* Changed `req.param()` to check route first
* Update connect dep
3.0.0beta1 / 2012-06-01
==================
* Added `res.format()` callback to override default 406 behaviour
* Fixed `res.redirect()` 406. Closes #1154
3.0.0alpha5 / 2012-05-30
==================
* Added `req.ip`
* Added `{ signed: true }` option to `res.cookie()`
* Removed `res.signedCookie()`
* Changed: dont reverse `req.ips`
* Fixed "trust proxy" setting check for `req.ips`
3.0.0alpha4 / 2012-05-09
==================
* Added: allow `[]` in jsonp callback. Closes #1128
* Added `PORT` env var support in generated template. Closes #1118 [benatkin]
* Updated: connect 2.2.2
3.0.0alpha3 / 2012-05-04
==================
* Added public `app.routes`. Closes #887
* Added _view-locals_ example
* Added _mvc_ example
* Added `res.locals.use()`. Closes #1120
* Added conditional-GET support to `res.send()`
* Added: coerce `res.set()` values to strings
* Changed: moved `static()` in generated apps below router
* Changed: `res.send()` only set ETag when not previously set
* Changed connect 2.2.1 dep
* Changed: `make test` now runs unit / acceptance tests
* Fixed req/res proto inheritance
3.0.0alpha2 / 2012-04-26
==================
* Added `make benchmark` back
* Added `res.send()` support for `String` objects
* Added client-side data exposing example
* Added `res.header()` and `req.header()` aliases for BC
* Added `express.createServer()` for BC
* Perf: memoize parsed urls
* Perf: connect 2.2.0 dep
* Changed: make `expressInit()` middleware self-aware
* Fixed: use app.get() for all core settings
* Fixed redis session example
* Fixed session example. Closes #1105
* Fixed generated express dep. Closes #1078
3.0.0alpha1 / 2012-04-15
==================
* Added `app.locals.use(callback)`
* Added `app.locals` object
* Added `app.locals(obj)`
* Added `res.locals` object
* Added `res.locals(obj)`
* Added `res.format()` for content-negotiation
* Added `app.engine()`
* Added `res.cookie()` JSON cookie support
* Added "trust proxy" setting
* Added `req.subdomains`
* Added `req.protocol`
* Added `req.secure`
* Added `req.path`
* Added `req.ips`
* Added `req.fresh`
* Added `req.stale`
* Added comma-delmited / array support for `req.accepts()`
* Added debug instrumentation
* Added `res.set(obj)`
* Added `res.set(field, value)`
* Added `res.get(field)`
* Added `app.get(setting)`. Closes #842
* Added `req.acceptsLanguage()`
* Added `req.acceptsCharset()`
* Added `req.accepted`
* Added `req.acceptedLanguages`
* Added `req.acceptedCharsets`
* Added "json replacer" setting
* Added "json spaces" setting
* Added X-Forwarded-Proto support to `res.redirect()`. Closes #92
* Added `--less` support to express(1)
* Added `express.response` prototype
* Added `express.request` prototype
* Added `express.application` prototype
* Added `app.path()`
* Added `app.render()`
* Added `res.type()` to replace `res.contentType()`
* Changed: `res.redirect()` to add relative support
* Changed: enable "jsonp callback" by default
* Changed: renamed "case sensitive routes" to "case sensitive routing"
* Rewrite of all tests with mocha
* Removed "root" setting
* Removed `res.redirect('home')` support
* Removed `req.notify()`
* Removed `app.register()`
* Removed `app.redirect()`
* Removed `app.is()`
* Removed `app.helpers()`
* Removed `app.dynamicHelpers()`
* Fixed `res.sendfile()` with non-GET. Closes #723
* Fixed express(1) public dir for windows. Closes #866
2.5.9/ 2012-04-02
==================
* Added support for PURGE request method [pbuyle]
* Fixed `express(1)` generated app `app.address()` before `listening` [mmalecki]
2.5.8 / 2012-02-08
==================
* Update mkdirp dep. Closes #991
2.5.7 / 2012-02-06
==================
* Fixed `app.all` duplicate DELETE requests [mscdex]
2.5.6 / 2012-01-13
==================
* Updated hamljs dev dep. Closes #953
2.5.5 / 2012-01-08
==================
* Fixed: set `filename` on cached templates [matthewleon]
2.5.4 / 2012-01-02
==================
* Fixed `express(1)` eol on 0.4.x. Closes #947
2.5.3 / 2011-12-30
==================
* Fixed `req.is()` when a charset is present
2.5.2 / 2011-12-10
==================
* Fixed: express(1) LF -> CRLF for windows
2.5.1 / 2011-11-17
==================
* Changed: updated connect to 1.8.x
* Removed sass.js support from express(1)
2.5.0 / 2011-10-24
==================
* Added ./routes dir for generated app by default
* Added npm install reminder to express(1) app gen
* Added 0.5.x support
* Removed `make test-cov` since it wont work with node 0.5.x
* Fixed express(1) public dir for windows. Closes #866
2.4.7 / 2011-10-05
==================
* Added mkdirp to express(1). Closes #795
* Added simple _json-config_ example
* Added shorthand for the parsed request's pathname via `req.path`
* Changed connect dep to 1.7.x to fix npm issue...
* Fixed `res.redirect()` __HEAD__ support. [reported by xerox]
* Fixed `req.flash()`, only escape args
* Fixed absolute path checking on windows. Closes #829 [reported by andrewpmckenzie]
2.4.6 / 2011-08-22
==================
* Fixed multiple param callback regression. Closes #824 [reported by TroyGoode]
2.4.5 / 2011-08-19
==================
* Added support for routes to handle errors. Closes #809
* Added `app.routes.all()`. Closes #803
* Added "basepath" setting to work in conjunction with reverse proxies etc.
* Refactored `Route` to use a single array of callbacks
* Added support for multiple callbacks for `app.param()`. Closes #801
Closes #805
* Changed: removed .call(self) for route callbacks
* Dependency: `qs >= 0.3.1`
* Fixed `res.redirect()` on windows due to `join()` usage. Closes #808
2.4.4 / 2011-08-05
==================
* Fixed `res.header()` intention of a set, even when `undefined`
* Fixed `*`, value no longer required
* Fixed `res.send(204)` support. Closes #771
2.4.3 / 2011-07-14
==================
* Added docs for `status` option special-case. Closes #739
* Fixed `options.filename`, exposing the view path to template engines
2.4.2. / 2011-07-06
==================
* Revert "removed jsonp stripping" for XSS
2.4.1 / 2011-07-06
==================
* Added `res.json()` JSONP support. Closes #737
* Added _extending-templates_ example. Closes #730
* Added "strict routing" setting for trailing slashes
* Added support for multiple envs in `app.configure()` calls. Closes #735
* Changed: `res.send()` using `res.json()`
* Changed: when cookie `path === null` don't default it
* Changed; default cookie path to "home" setting. Closes #731
* Removed _pids/logs_ creation from express(1)
2.4.0 / 2011-06-28
==================
* Added chainable `res.status(code)`
* Added `res.json()`, an explicit version of `res.send(obj)`
* Added simple web-service example
2.3.12 / 2011-06-22
==================
* \#express is now on freenode! come join!
* Added `req.get(field, param)`
* Added links to Japanese documentation, thanks @hideyukisaito!
* Added; the `express(1)` generated app outputs the env
* Added `content-negotiation` example
* Dependency: connect >= 1.5.1 < 2.0.0
* Fixed view layout bug. Closes #720
* Fixed; ignore body on 304. Closes #701
2.3.11 / 2011-06-04
==================
* Added `npm test`
* Removed generation of dummy test file from `express(1)`
* Fixed; `express(1)` adds express as a dep
* Fixed; prune on `prepublish`
2.3.10 / 2011-05-27
==================
* Added `req.route`, exposing the current route
* Added _package.json_ generation support to `express(1)`
* Fixed call to `app.param()` function for optional params. Closes #682
2.3.9 / 2011-05-25
==================
* Fixed bug-ish with `../' in `res.partial()` calls
2.3.8 / 2011-05-24
==================
* Fixed `app.options()`
2.3.7 / 2011-05-23
==================
* Added route `Collection`, ex: `app.get('/user/:id').remove();`
* Added support for `app.param(fn)` to define param logic
* Removed `app.param()` support for callback with return value
* Removed module.parent check from express(1) generated app. Closes #670
* Refactored router. Closes #639
2.3.6 / 2011-05-20
==================
* Changed; using devDependencies instead of git submodules
* Fixed redis session example
* Fixed markdown example
* Fixed view caching, should not be enabled in development
2.3.5 / 2011-05-20
==================
* Added export `.view` as alias for `.View`
2.3.4 / 2011-05-08
==================
* Added `./examples/say`
* Fixed `res.sendfile()` bug preventing the transfer of files with spaces
2.3.3 / 2011-05-03
==================
* Added "case sensitive routes" option.
* Changed; split methods supported per rfc [slaskis]
* Fixed route-specific middleware when using the same callback function several times
2.3.2 / 2011-04-27
==================
* Fixed view hints
2.3.1 / 2011-04-26
==================
* Added `app.match()` as `app.match.all()`
* Added `app.lookup()` as `app.lookup.all()`
* Added `app.remove()` for `app.remove.all()`
* Added `app.remove.VERB()`
* Fixed template caching collision issue. Closes #644
* Moved router over from connect and started refactor
2.3.0 / 2011-04-25
==================
* Added options support to `res.clearCookie()`
* Added `res.helpers()` as alias of `res.locals()`
* Added; json defaults to UTF-8 with `res.send()`. Closes #632. [Daniel * Dependency `connect >= 1.4.0`
* Changed; auto set Content-Type in res.attachement [Aaron Heckmann]
* Renamed "cache views" to "view cache". Closes #628
* Fixed caching of views when using several apps. Closes #637
* Fixed gotcha invoking `app.param()` callbacks once per route middleware.
Closes #638
* Fixed partial lookup precedence. Closes #631
Shaw]
2.2.2 / 2011-04-12
==================
* Added second callback support for `res.download()` connection errors
* Fixed `filename` option passing to template engine
2.2.1 / 2011-04-04
==================
* Added `layout(path)` helper to change the layout within a view. Closes #610
* Fixed `partial()` collection object support.
Previously only anything with `.length` would work.
When `.length` is present one must still be aware of holes,
however now `{ collection: {foo: 'bar'}}` is valid, exposes
`keyInCollection` and `keysInCollection`.
* Performance improved with better view caching
* Removed `request` and `response` locals
* Changed; errorHandler page title is now `Express` instead of `Connect`
2.2.0 / 2011-03-30
==================
* Added `app.lookup.VERB()`, ex `app.lookup.put('/user/:id')`. Closes #606
* Added `app.match.VERB()`, ex `app.match.put('/user/12')`. Closes #606
* Added `app.VERB(path)` as alias of `app.lookup.VERB()`.
* Dependency `connect >= 1.2.0`
2.1.1 / 2011-03-29
==================
* Added; expose `err.view` object when failing to locate a view
* Fixed `res.partial()` call `next(err)` when no callback is given [reported by aheckmann]
* Fixed; `res.send(undefined)` responds with 204 [aheckmann]
2.1.0 / 2011-03-24
==================
* Added `<root>/_?<name>` partial lookup support. Closes #447
* Added `request`, `response`, and `app` local variables
* Added `settings` local variable, containing the app's settings
* Added `req.flash()` exception if `req.session` is not available
* Added `res.send(bool)` support (json response)
* Fixed stylus example for latest version
* Fixed; wrap try/catch around `res.render()`
2.0.0 / 2011-03-17
==================
* Fixed up index view path alternative.
* Changed; `res.locals()` without object returns the locals
2.0.0rc3 / 2011-03-17
==================
* Added `res.locals(obj)` to compliment `res.local(key, val)`
* Added `res.partial()` callback support
* Fixed recursive error reporting issue in `res.render()`
2.0.0rc2 / 2011-03-17
==================
* Changed; `partial()` "locals" are now optional
* Fixed `SlowBuffer` support. Closes #584 [reported by tyrda01]
* Fixed .filename view engine option [reported by drudge]
* Fixed blog example
* Fixed `{req,res}.app` reference when mounting [Ben Weaver]
2.0.0rc / 2011-03-14
==================
* Fixed; expose `HTTPSServer` constructor
* Fixed express(1) default test charset. Closes #579 [reported by secoif]
* Fixed; default charset to utf-8 instead of utf8 for lame IE [reported by NickP]
2.0.0beta3 / 2011-03-09
==================
* Added support for `res.contentType()` literal
The original `res.contentType('.json')`,
`res.contentType('application/json')`, and `res.contentType('json')`
will work now.
* Added `res.render()` status option support back
* Added charset option for `res.render()`
* Added `.charset` support (via connect 1.0.4)
* Added view resolution hints when in development and a lookup fails
* Added layout lookup support relative to the page view.
For example while rendering `./views/user/index.jade` if you create
`./views/user/layout.jade` it will be used in favour of the root layout.
* Fixed `res.redirect()`. RFC states absolute url [reported by unlink]
* Fixed; default `res.send()` string charset to utf8
* Removed `Partial` constructor (not currently used)
2.0.0beta2 / 2011-03-07
==================
* Added res.render() `.locals` support back to aid in migration process
* Fixed flash example
2.0.0beta / 2011-03-03
==================
* Added HTTPS support
* Added `res.cookie()` maxAge support
* Added `req.header()` _Referrer_ / _Referer_ special-case, either works
* Added mount support for `res.redirect()`, now respects the mount-point
* Added `union()` util, taking place of `merge(clone())` combo
* Added stylus support to express(1) generated app
* Added secret to session middleware used in examples and generated app
* Added `res.local(name, val)` for progressive view locals
* Added default param support to `req.param(name, default)`
* Added `app.disabled()` and `app.enabled()`
* Added `app.register()` support for omitting leading ".", either works
* Added `res.partial()`, using the same interface as `partial()` within a view. Closes #539
* Added `app.param()` to map route params to async/sync logic
* Added; aliased `app.helpers()` as `app.locals()`. Closes #481
* Added extname with no leading "." support to `res.contentType()`
* Added `cache views` setting, defaulting to enabled in "production" env
* Added index file partial resolution, eg: partial('user') may try _views/user/index.jade_.
* Added `req.accepts()` support for extensions
* Changed; `res.download()` and `res.sendfile()` now utilize Connect's
static file server `connect.static.send()`.
* Changed; replaced `connect.utils.mime()` with npm _mime_ module
* Changed; allow `req.query` to be pre-defined (via middleware or other parent
* Changed view partial resolution, now relative to parent view
* Changed view engine signature. no longer `engine.render(str, options, callback)`, now `engine.compile(str, options) -> Function`, the returned function accepts `fn(locals)`.
* Fixed `req.param()` bug returning Array.prototype methods. Closes #552
* Fixed; using `Stream#pipe()` instead of `sys.pump()` in `res.sendfile()`
* Fixed; using _qs_ module instead of _querystring_
* Fixed; strip unsafe chars from jsonp callbacks
* Removed "stream threshold" setting
1.0.8 / 2011-03-01
==================
* Allow `req.query` to be pre-defined (via middleware or other parent app)
* "connect": ">= 0.5.0 < 1.0.0". Closes #547
* Removed the long deprecated __EXPRESS_ENV__ support
1.0.7 / 2011-02-07
==================
* Fixed `render()` setting inheritance.
Mounted apps would not inherit "view engine"
1.0.6 / 2011-02-07
==================
* Fixed `view engine` setting bug when period is in dirname
1.0.5 / 2011-02-05
==================
* Added secret to generated app `session()` call
1.0.4 / 2011-02-05
==================
* Added `qs` dependency to _package.json_
* Fixed namespaced `require()`s for latest connect support
1.0.3 / 2011-01-13
==================
* Remove unsafe characters from JSONP callback names [Ryan Grove]
1.0.2 / 2011-01-10
==================
* Removed nested require, using `connect.router`
1.0.1 / 2010-12-29
==================
* Fixed for middleware stacked via `createServer()`
previously the `foo` middleware passed to `createServer(foo)`
would not have access to Express methods such as `res.send()`
or props like `req.query` etc.
1.0.0 / 2010-11-16
==================
* Added; deduce partial object names from the last segment.
For example by default `partial('forum/post', postObject)` will
give you the _post_ object, providing a meaningful default.
* Added http status code string representation to `res.redirect()` body
* Added; `res.redirect()` supporting _text/plain_ and _text/html_ via __Accept__.
* Added `req.is()` to aid in content negotiation
* Added partial local inheritance [suggested by masylum]. Closes #102
providing access to parent template locals.
* Added _-s, --session[s]_ flag to express(1) to add session related middleware
* Added _--template_ flag to express(1) to specify the
template engine to use.
* Added _--css_ flag to express(1) to specify the
stylesheet engine to use (or just plain css by default).
* Added `app.all()` support [thanks aheckmann]
* Added partial direct object support.
You may now `partial('user', user)` providing the "user" local,
vs previously `partial('user', { object: user })`.
* Added _route-separation_ example since many people question ways
to do this with CommonJS modules. Also view the _blog_ example for
an alternative.
* Performance; caching view path derived partial object names
* Fixed partial local inheritance precedence. [reported by Nick Poulden] Closes #454
* Fixed jsonp support; _text/javascript_ as per mailinglist discussion
1.0.0rc4 / 2010-10-14
==================
* Added _NODE_ENV_ support, _EXPRESS_ENV_ is deprecated and will be removed in 1.0.0
* Added route-middleware support (very helpful, see the [docs](http://expressjs.com/guide.html#Route-Middleware))
* Added _jsonp callback_ setting to enable/disable jsonp autowrapping [Dav Glass]
* Added callback query check on response.send to autowrap JSON objects for simple webservice implementations [Dav Glass]
* Added `partial()` support for array-like collections. Closes #434
* Added support for swappable querystring parsers
* Added session usage docs. Closes #443
* Added dynamic helper caching. Closes #439 [suggested by maritz]
* Added authentication example
* Added basic Range support to `res.sendfile()` (and `res.download()` etc)
* Changed; `express(1)` generated app using 2 spaces instead of 4
* Default env to "development" again [aheckmann]
* Removed _context_ option is no more, use "scope"
* Fixed; exposing _./support_ libs to examples so they can run without installs
* Fixed mvc example
1.0.0rc3 / 2010-09-20
==================
* Added confirmation for `express(1)` app generation. Closes #391
* Added extending of flash formatters via `app.flashFormatters`
* Added flash formatter support. Closes #411
* Added streaming support to `res.sendfile()` using `sys.pump()` when >= "stream threshold"
* Added _stream threshold_ setting for `res.sendfile()`
* Added `res.send()` __HEAD__ support
* Added `res.clearCookie()`
* Added `res.cookie()`
* Added `res.render()` headers option
* Added `res.redirect()` response bodies
* Added `res.render()` status option support. Closes #425 [thanks aheckmann]
* Fixed `res.sendfile()` responding with 403 on malicious path
* Fixed `res.download()` bug; when an error occurs remove _Content-Disposition_
* Fixed; mounted apps settings now inherit from parent app [aheckmann]
* Fixed; stripping Content-Length / Content-Type when 204
* Fixed `res.send()` 204. Closes #419
* Fixed multiple _Set-Cookie_ headers via `res.header()`. Closes #402
* Fixed bug messing with error handlers when `listenFD()` is called instead of `listen()`. [thanks guillermo]
1.0.0rc2 / 2010-08-17
==================
* Added `app.register()` for template engine mapping. Closes #390
* Added `res.render()` callback support as second argument (no options)
* Added callback support to `res.download()`
* Added callback support for `res.sendfile()`
* Added support for middleware access via `express.middlewareName()` vs `connect.middlewareName()`
* Added "partials" setting to docs
* Added default expresso tests to `express(1)` generated app. Closes #384
* Fixed `res.sendfile()` error handling, defer via `next()`
* Fixed `res.render()` callback when a layout is used [thanks guillermo]
* Fixed; `make install` creating ~/.node_libraries when not present
* Fixed issue preventing error handlers from being defined anywhere. Closes #387
1.0.0rc / 2010-07-28
==================
* Added mounted hook. Closes #369
* Added connect dependency to _package.json_
* Removed "reload views" setting and support code
development env never caches, production always caches.
* Removed _param_ in route callbacks, signature is now
simply (req, res, next), previously (req, res, params, next).
Use _req.params_ for path captures, _req.query_ for GET params.
* Fixed "home" setting
* Fixed middleware/router precedence issue. Closes #366
* Fixed; _configure()_ callbacks called immediately. Closes #368
1.0.0beta2 / 2010-07-23
==================
* Added more examples
* Added; exporting `Server` constructor
* Added `Server#helpers()` for view locals
* Added `Server#dynamicHelpers()` for dynamic view locals. Closes #349
* Added support for absolute view paths
* Added; _home_ setting defaults to `Server#route` for mounted apps. Closes #363
* Added Guillermo Rauch to the contributor list
* Added support for "as" for non-collection partials. Closes #341
* Fixed _install.sh_, ensuring _~/.node_libraries_ exists. Closes #362 [thanks jf]
* Fixed `res.render()` exceptions, now passed to `next()` when no callback is given [thanks guillermo]
* Fixed instanceof `Array` checks, now `Array.isArray()`
* Fixed express(1) expansion of public dirs. Closes #348
* Fixed middleware precedence. Closes #345
* Fixed view watcher, now async [thanks aheckmann]
1.0.0beta / 2010-07-15
==================
* Re-write
- much faster
- much lighter
- Check [ExpressJS.com](http://expressjs.com) for migration guide and updated docs
0.14.0 / 2010-06-15
==================
* Utilize relative requires
* Added Static bufferSize option [aheckmann]
* Fixed caching of view and partial subdirectories [aheckmann]
* Fixed mime.type() comments now that ".ext" is not supported
* Updated haml submodule
* Updated class submodule
* Removed bin/express
0.13.0 / 2010-06-01
==================
* Added node v0.1.97 compatibility
* Added support for deleting cookies via Request#cookie('key', null)
* Updated haml submodule
* Fixed not-found page, now using using charset utf-8
* Fixed show-exceptions page, now using using charset utf-8
* Fixed view support due to fs.readFile Buffers
* Changed; mime.type() no longer accepts ".type" due to node extname() changes
0.12.0 / 2010-05-22
==================
* Added node v0.1.96 compatibility
* Added view `helpers` export which act as additional local variables
* Updated haml submodule
* Changed ETag; removed inode, modified time only
* Fixed LF to CRLF for setting multiple cookies
* Fixed cookie complation; values are now urlencoded
* Fixed cookies parsing; accepts quoted values and url escaped cookies
0.11.0 / 2010-05-06
==================
@@ -74,7 +1003,7 @@
* Updated dependencies
* Removed set("session cookie") in favour of use(Session, { cookie: { ... }})
* Removed utils.mixin(); use Object#mergeDeep()
0.8.0 / 2010-03-19
==================
@@ -141,16 +1070,16 @@
* Added seed.yml for kiwi package management support
* Added HTTP client query string support when method is GET. Closes #205
* Added support for arbitrary view engines.
For example "foo.engine.html" will now require('engine'),
the exports from this module are cached after the first require().
* Added async plugin support
* Removed usage of RESTful route funcs as http client
get() etc, use http.get() and friends
* Removed custom exceptions
0.5.0 / 2010-03-10

22
LICENSE Normal file
View File

@@ -0,0 +1,22 @@
(The MIT License)
Copyright (c) 2009-2011 TJ Holowaychuk <tj@vision-media.ca>
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
'Software'), to deal in the Software without restriction, including
without limitation the rights to use, copy, modify, merge, publish,
distribute, sublicense, and/or sell copies of the Software, and to
permit persons to whom the Software is furnished to do so, subject to
the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@@ -1,46 +1,33 @@
AB = ab
ABFLAGS = -n 3000 -c 50
NODE = node
COFFEE = coffee
PREFIX = /usr/local
all: test
install: bin/express
ln -fs $< $(PREFIX)/bin/express
MOCHA_OPTS= --check-leaks
REPORTER = dot
uninstall:
rm -f $(PREFIX)/bin/express
check: test
test:
@$(NODE) spec/node.js all
app: app-chat
prof:
@$(NODE) --prof --prof_auto examples/chat/app.js
app-chat:
@$(NODE) examples/chat/app.js
test: test-unit test-acceptance
app-hello-world:
@$(NODE) examples/hello-world/app.js
test-unit:
@NODE_ENV=test ./node_modules/.bin/mocha \
--reporter $(REPORTER) \
$(MOCHA_OPTS)
app-upload:
@$(NODE) examples/upload/app.js
app-coffee-upload: compile-coffee
@$(NODE) examples/coffee-upload/app.js
compile-coffee:
@$(COFFEE) examples/coffee-upload/app.coffee
test-acceptance:
@NODE_ENV=test ./node_modules/.bin/mocha \
--reporter $(REPORTER) \
--bail \
test/acceptance/*.js
benchmark: benchmarks/run
@./benchmarks/run
@./benchmarks/graph
test-cov: lib-cov
@EXPRESS_COV=1 $(MAKE) test REPORTER=html-cov > coverage.html
graphs:
@./benchmarks/graph
lib-cov:
@jscoverage lib lib-cov
.PHONY: install test app benchmark graphs
benchmark:
@./support/bench
clean:
rm -f coverage.html
rm -fr lib-cov
.PHONY: test test-unit test-acceptance benchmark clean

230
Readme.md
View File

@@ -1,115 +1,163 @@
![express logo](http://f.cl.ly/items/0V2S1n0K1i3y1c122g04/Screen%20Shot%202012-04-11%20at%209.59.42%20AM.png)
# Express
Insanely fast (and small) server-side JavaScript web development framework
built on **node.js** and the **V8 JavaScript engine**.
Fast, unopinionated, minimalist web framework for [node](http://nodejs.org). [![Build Status](https://secure.travis-ci.org/visionmedia/express.png)](http://travis-ci.org/visionmedia/express) [![Dependency Status](https://gemnasium.com/visionmedia/express.png)](https://gemnasium.com/visionmedia/express)
* Visit the [Wiki](http://wiki.github.com/visionmedia/express) for documentation
* Visit the [Google Group](http://groups.google.com/group/express-js) for discussion
```js
var express = require('express');
var app = express();
## Features (so far)
app.get('/', function(req, res){
res.send('Hello World');
});
app.listen(3000);
```
* Sexy DSL with robust sinatra-like routing
* High performance
* Session support
* Cache API
* RESTful HTTP client
* Mime helpers
* ETag support
* Redirection helpers
* Multipart file upload support
* Test helpers (mock requests etc)
* Environment based configuration
* Light-weight JavaScript class implementation via [class.js](http://github.com/visionmedia/class.js/)
* Persistent flash messages
* Route passing
* View support (ejs, haml, sass, etc)
* View partials
* Full test coverage
* Logger plugin with several formats
* Upload size restrictions
* Extremely readable specs
* Cookie support
## Installation
Install the [Kiwi package manager for nodejs](http://github.com/visionmedia/kiwi)
and run:
$ kiwi -v install express
or
$ npm install -g express
Install via git clone:
$ git clone git://github.com/visionmedia/express.git && cd express && git submodule update --init
## Quick Start
## Examples
The quickest way to get started with express is to utilize the executable `express(1)` to generate an application as shown below:
Below is a tiny Express application. View the [Wiki](http://wiki.github.com/visionmedia/express/) for detailed information.
Create the app:
require.paths.unshift('express/lib')
require('express')
configure(function(){
set('root', __dirname)
})
get('/user', function(){
this.redirect('/user/' + this.currentUser.id)
})
get('/user/:id', function(id){
this.render('user.haml.html', {
locals: {
user: this.currentUser,
usersOnline: Session.store.length()
}
})
})
$ npm install -g express
$ express /tmp/foo && cd /tmp/foo
run()
## Running Tests
Install dependencies:
Express uses the [JSpec](http://jspec.info) BDD JavaScript testing
framework to write and run elegant spec suites. JSpec is frozen
to spec/lib and **does not** require separate installation.
$ npm install
$ make test
Run individual suites:
Start the server:
$ node app
## Features
* Built on [Connect](http://github.com/senchalabs/connect)
* Robust routing
* HTTP helpers (redirection, caching, etc)
* View system supporting 14+ template engines
* Content negotiation
* Focus on high performance
* Environment based configuration
* Executable for generating applications quickly
* High test coverage
## Philosophy
The Express philosophy is to provide small, robust tooling for HTTP servers. Making
it a great solution for single page applications, web sites, hybrids, or public
HTTP APIs.
Built on Connect you can use _only_ what you need, and nothing more, applications
can be as big or as small as you like, even a single file. Express does
not force you to use any specific ORM or template engine. With support for over
14 template engines via [Consolidate.js](http://github.com/visionmedia/consolidate.js)
you can quickly craft your perfect framework.
$ node spec/node.js core
$ node spec/node.js mime
$ node spec/node.js routing
...
The latest release of Express is compatible with node --version:
v0.1.94
With _EDGE_ Express we do our best to keep up to date with node's _EDGE_
## More Information
* [JavaScript Extensions &amp; Utilities](http://github.com/visionmedia/ext.js)
* [JavaScript Sass](http://github.com/visionmedia/sass.js)
* Featured in [Advanced JavaScript e-book](http://www.dev-mag.com/2010/02/18/advanced-javascript/) for only $4
* [0.9.0 release details](http://tjholowaychuk.com/post/522036176/express-0-9-0-released)
* [Express vs Sinatra Benchmarks](http://tjholowaychuk.com/post/543953703/express-vs-sinatra-benchmarks)
* Join #express on freenode
* [Google Group](http://groups.google.com/group/express-js) for discussion
* Follow [tjholowaychuk](http://twitter.com/tjholowaychuk) on twitter for updates
* Visit the [Wiki](http://github.com/visionmedia/express/wiki)
* [Русскоязычная документация](http://jsman.ru/express/)
* Run express examples [online](https://runnable.com/express)
## Viewing Examples
Clone the Express repo, then install the dev dependencies to install all the example / test suite deps:
$ git clone git://github.com/visionmedia/express.git --depth 1
$ cd express
$ npm install
then run whichever tests you want:
$ node examples/content-negotiation
## Running Tests
To run the test suite first invoke the following command within the repo, installing the development dependencies:
$ npm install
then run the tests:
$ make test
## Contributors
* TJ Holowaychuk (visionmedia) &lt;tj@vision-media.ca&gt;
* Aaron Heckmann (aheckmann) &lt;aaron.heckmann+github@gmail.com&gt;
* Ciaran Jessup (ciaranj) &lt;ciaranj@gmail.com&gt;
* Gareth Jones (csausdev) &lt;gareth.jones@sensis.com.au&gt;
## License
```
project: express
commits: 3559
active : 468 days
files : 237
authors:
1891 Tj Holowaychuk 53.1%
1285 visionmedia 36.1%
182 TJ Holowaychuk 5.1%
54 Aaron Heckmann 1.5%
34 csausdev 1.0%
26 ciaranj 0.7%
21 Robert Sköld 0.6%
6 Guillermo Rauch 0.2%
3 Dav Glass 0.1%
3 Nick Poulden 0.1%
2 Randy Merrill 0.1%
2 Benny Wong 0.1%
2 Hunter Loftis 0.1%
2 Jake Gordon 0.1%
2 Brian McKinney 0.1%
2 Roman Shtylman 0.1%
2 Ben Weaver 0.1%
2 Dave Hoover 0.1%
2 Eivind Fjeldstad 0.1%
2 Daniel Shaw 0.1%
1 Matt Colyer 0.0%
1 Pau Ramon 0.0%
1 Pero Pejovic 0.0%
1 Peter Rekdal Sunde 0.0%
1 Raynos 0.0%
1 Teng Siong Ong 0.0%
1 Viktor Kelemen 0.0%
1 ctide 0.0%
1 8bitDesigner 0.0%
1 isaacs 0.0%
1 mgutz 0.0%
1 pikeas 0.0%
1 shuwatto 0.0%
1 tstrimple 0.0%
1 ewoudj 0.0%
1 Adam Sanderson 0.0%
1 Andrii Kostenko 0.0%
1 Andy Hiew 0.0%
1 Arpad Borsos 0.0%
1 Ashwin Purohit 0.0%
1 Benjen 0.0%
1 Darren Torpey 0.0%
1 Greg Ritter 0.0%
1 Gregory Ritter 0.0%
1 James Herdman 0.0%
1 Jim Snodgrass 0.0%
1 Joe McCann 0.0%
1 Jonathan Dumaine 0.0%
1 Jonathan Palardy 0.0%
1 Jonathan Zacsh 0.0%
1 Justin Lilly 0.0%
1 Ken Sato 0.0%
1 Maciej Małecki 0.0%
1 Masahiro Hayashi 0.0%
```
## License
(The MIT License)
Copyright (c) 2009 TJ Holowaychuk &lt;tj@vision-media.ca&gt;
Copyright (c) 2009-2012 TJ Holowaychuk &lt;tj@vision-media.ca&gt;
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the

View File

@@ -1,16 +0,0 @@
require.paths.unshift('lib')
require('express')
require('express/plugins')
configure(function(){
//enable('cache view contents')
set('root', __dirname)
set('views', __dirname + '/../shared')
})
get('/', function(){
this.render('page.html.haml')
})
run()

View File

@@ -1,16 +0,0 @@
require.paths.unshift('lib')
require('express')
require('express/plugins')
configure(function(){
//enable('cache view contents')
set('root', __dirname)
set('views', __dirname + '/../shared')
})
get('/', function(){
this.render('style.css.sass', { layout: false })
})
run()

View File

@@ -1,9 +0,0 @@
require.paths.unshift('lib')
require('express')
get('/', function(){
return 'Hello World'
})
run()

View File

@@ -1,15 +0,0 @@
require.paths.unshift('lib')
require('express')
require('express/plugins')
configure(function(){
use(Static)
set('root', __dirname)
})
get('/', function(){
this.sendfile('benchmarks/shared/jquery.js', { bufferSize: 8 * 1024 })
})
run()

View File

@@ -1,15 +0,0 @@
require.paths.unshift('lib')
require('express')
require('express/plugins')
configure(function(){
use(Static)
set('root', __dirname)
})
get('/', function(){
this.sendfile('benchmarks/shared/huge.js', { bufferSize: 8 * 1024 })
})
run()

View File

@@ -1,84 +0,0 @@
#!/usr/bin/env bash
COL=${COL-9}
#
# Log <msg ...>
#
# <msg ...>
#
log(){
echo "... $@"
}
#
# Output gnuplot script for line graph.
#
# <title> <node> <express> <sinatra>
#
function line() {
cat <<-EOF
set terminal png
set output "benchmarks/graphs/$1.png"
set title "$1"
set size 1,0.7
set grid y
set key left top
set xlabel "request"
set ylabel "response time (ms)"
plot "benchmarks/$2" using $COL smooth sbezier with lines title "node", \\
"benchmarks/$3" using $COL smooth sbezier with lines title "express", \\
"benchmarks/$4" using $COL smooth sbezier with lines title "sinatra thin"
EOF
}
#
# Output gnuplot script for bar graph.
#
# <title> <node> <express> <sinatra>
#
function bar() {
cat <<-EOF
set terminal png
set output "benchmarks/graphs/$1.rps.png"
set title "$1"
set size 0.7,0.5
set grid y
set key left top
set ylabel "requests per second"
plot "benchmarks/$1.rps.dat" using 2: xtic(1) with histogram title ""
EOF
}
mkdir -p benchmarks/graphs
for type in simple haml sass static static.large; do
plot=benchmarks/graphs/$type.p
log generating benchmarks/graphs/$type.png
line $type \
node/$type.js.dat \
express/$type.js.dat \
thin/$type.ru.dat \
> $plot
gnuplot $plot
log generating benchmarks/graphs/$type.rps.png
plot=benchmarks/graphs/$type.rps.p
dat=benchmarks/$type.rps.dat
:> $dat
for server in node express thin; do
case $server in
node|express) ext=js ;;
thin) ext=ru ;;
esac
rps=$(cat benchmarks/$server/$type.$ext.out | grep "Requests per second:" | awk '{ print $4 }')
echo $server $rps >> $dat
done
bar $type > $plot
gnuplot $plot
done
rm benchmarks/graphs/*.p

View File

@@ -1,8 +0,0 @@
var fs = require('fs'),
http = require('http')
http.createServer(function(req, res) {
res.writeHead(200, { 'Content-Type': 'text/plain', 'Content-Length': 11 })
res.end('Hello World', 'ascii')
}).listen(3000, 'localhost')

View File

@@ -1,14 +0,0 @@
var fs = require('fs'),
http = require('http')
http.createServer(function(req, res) {
res.writeHead(200, { 'Content-Type': 'text/plain', 'Transfer-Encoding': 'chunked' })
fs.createReadStream('benchmarks/shared/jquery.js')
.addListener('data', function(data){
res.write(data, 'binary')
})
.addListener('end', function(){
res.end()
})
}).listen(3000, 'localhost')

View File

@@ -1,14 +0,0 @@
var fs = require('fs'),
http = require('http')
http.createServer(function(req, res) {
res.writeHead(200, { 'Content-Type': 'text/plain', 'Transfer-Encoding': 'chunked' })
fs.createReadStream('benchmarks/shared/huge.js')
.addListener('data', function(data){
res.write(data, 'binary')
})
.addListener('end', function(){
res.end()
})
}).listen(3000, 'localhost')

View File

@@ -1,61 +0,0 @@
#!/usr/bin/env bash
SLEEP=${SLEEP-2}
ABFLAGS=${ABFLAGS-"-n 2000 -c 50"}
ADDR=${ADDR-http://127.0.0.1:3000/}
AB=${AB-ab}
#
# Log <msg ...>
#
# <msg ...>
#
log(){
echo "... $@"
}
#
# Benchmark <type> and <file>
#
# - starts the server
# - allows $SLEEP seconds for startup
# - runs $AB
# - kills the server process
#
# <type> <file>
#
bm(){
local type=$1
local file=$2
log benchmarking $type $file
case $type in
node|express)
node benchmarks/$type/$file &
;;
thin)
thin -R benchmarks/thin/$file -p 3000 start &
;;
esac
pid=$!
sleep $SLEEP
$AB $ABFLAGS -g benchmarks/$type/$file.dat $ADDR > benchmarks/$type/$file.out
log $(cat benchmarks/$type/$file.out | grep Requests)
kill -KILL $pid
}
log ab $ABFLAGS $ADDR
bm node simple.js
bm node static.js
bm node static.large.js
bm express simple.js
bm express static.js
bm express static.large.js
bm express haml.js
bm express sass.js
bm thin simple.ru
bm thin static.ru
bm thin static.large.ru
bm thin haml.ru
bm thin sass.ru

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1,6 +0,0 @@
!!!
%html
%head
%title Wahoo
%body
#primary= yield

View File

@@ -1,6 +0,0 @@
!!!
%html
%head
%title Wahoo
%body
#primary!= body

View File

@@ -1,10 +0,0 @@
%h1 Some title
%ul
%li a
%li b
%li c
%li
%ol
%li d
%li e
%li f

View File

@@ -1,10 +0,0 @@
%h1 Some title
%ul
%li a
%li b
%li c
%li
%ol
%li d
%li e
%li f

View File

@@ -1,73 +0,0 @@
body
:font-family "Helvetica Neue", "Lucida Grande", "Arial"
:font-size 13px
:text-align center
:color #555
h1, h2
:margin 0
:font-size 22px
:color #343434
h1
:text-shadow 1px 2px 2px #ddd
:font-size 60px
img.bubble
:position absolute
:top -25px
:left 120px
#wrapper
:position relative
:margin 100px auto
:width 500px
:text-align left
ul
:margin 0
:padding 0
:max-height 300px
:overflow-x hidden
li
:margin 5px 0
:padding 3px 8px
:list-style none
:border 1px solid #eee
li:hover
:cursor pointer
:color #2E2E2E
input[type=text]
:padding 5px
:border 1px solid #ddd
:outline none
input[type=text]:focus
:border-color #00C3FF
input[type=submit]
:padding 6px 10px
:border solid 1px #999
:background -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#ddd))
:color #333
:text-decoration none
:cursor pointer
:display inline-block
:text-align center
:text-shadow 0px 1px 1px #fff
:line-height 1
input[type=submit]:hover
:background -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#E6E4E4))
input[type=submit]:active
:background -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#c7c7c7))
input[name=name]
:width 80px
a
:color #1ABFF1
a:hover
:padding 0 5px
a:hover:before
:content 'visit: '
#online
:font-size 12px

View File

@@ -1,14 +0,0 @@
require 'rubygems'
require 'sinatra'
require 'haml'
configure do
set 'views', File.dirname(__FILE__) + '/../shared'
end
get '/' do
haml :page, :ugly => true
end
run Sinatra::Application

View File

@@ -1,14 +0,0 @@
require 'rubygems'
require 'sinatra'
require 'sass'
configure do
set 'views', File.dirname(__FILE__) + '/../shared'
end
get '/' do
sass :'style.css'
end
run Sinatra::Application

View File

@@ -1,9 +0,0 @@
require 'rubygems'
require 'sinatra'
get '/' do
'Hello World'
end
run Sinatra::Application

View File

@@ -1,9 +0,0 @@
require 'rubygems'
require 'sinatra'
get '/' do
send_file 'benchmarks/shared/huge.js'
end
run Sinatra::Application

View File

@@ -1,9 +0,0 @@
require 'rubygems'
require 'sinatra'
get '/' do
send_file 'benchmarks/shared/jquery.js'
end
run Sinatra::Application

View File

@@ -1,142 +1,422 @@
#!/usr/bin/env bash
#!/usr/bin/env node
#
# Output usage information and exit.
#
/**
* Module dependencies.
*/
function usage() {
echo 'usage: express [options] [dir]'
exit 1
var exec = require('child_process').exec
, program = require('commander')
, mkdirp = require('mkdirp')
, pkg = require('../package.json')
, version = pkg.version
, os = require('os')
, fs = require('fs');
// CLI
program
.version(version)
.option('-s, --sessions', 'add session support')
.option('-e, --ejs', 'add ejs engine support (defaults to jade)')
.option('-J, --jshtml', 'add jshtml engine support (defaults to jade)')
.option('-H, --hogan', 'add hogan.js engine support')
.option('-c, --css <engine>', 'add stylesheet <engine> support (less|stylus) (defaults to plain css)')
.option('-f, --force', 'force on non-empty directory')
.parse(process.argv);
// Path
var path = program.args.shift() || '.';
// end-of-line code
var eol = os.EOL
// Template engine
program.template = 'jade';
if (program.ejs) program.template = 'ejs';
if (program.jshtml) program.template = 'jshtml';
if (program.hogan) program.template = 'hjs';
/**
* Routes index template.
*/
var index = [
''
, '/*'
, ' * GET home page.'
, ' */'
, ''
, 'exports.index = function(req, res){'
, ' res.render(\'index\', { title: \'Express\' });'
, '};'
].join(eol);
/**
* Routes users template.
*/
var users = [
''
, '/*'
, ' * GET users listing.'
, ' */'
, ''
, 'exports.list = function(req, res){'
, ' res.send("respond with a resource");'
, '};'
].join(eol);
/**
* Jade layout template.
*/
var jadeLayout = [
'doctype 5'
, 'html'
, ' head'
, ' title= title'
, ' link(rel=\'stylesheet\', href=\'/stylesheets/style.css\')'
, ' body'
, ' block content'
].join(eol);
/**
* Jade index template.
*/
var jadeIndex = [
'extends layout'
, ''
, 'block content'
, ' h1= title'
, ' p Welcome to #{title}'
].join(eol);
/**
* EJS index template.
*/
var ejsIndex = [
'<!DOCTYPE html>'
, '<html>'
, ' <head>'
, ' <title><%= title %></title>'
, ' <link rel=\'stylesheet\' href=\'/stylesheets/style.css\' />'
, ' </head>'
, ' <body>'
, ' <h1><%= title %></h1>'
, ' <p>Welcome to <%= title %></p>'
, ' </body>'
, '</html>'
].join(eol);
/**
* JSHTML layout template.
*/
var jshtmlLayout = [
'<!DOCTYPE html>'
, '<html>'
, ' <head>'
, ' <title> @write(title) </title>'
, ' <link rel=\'stylesheet\' href=\'/stylesheets/style.css\' />'
, ' </head>'
, ' <body>'
, ' @write(body)'
, ' </body>'
, '</html>'
].join(eol);
/**
* JSHTML index template.
*/
var jshtmlIndex = [
'<h1>@write(title)</h1>'
, '<p>Welcome to @write(title)</p>'
].join(eol);
/**
* Hogan.js index template.
*/
var hoganIndex = [
'<!DOCTYPE html>'
, '<html>'
, ' <head>'
, ' <title>{{ title }}</title>'
, ' <link rel=\'stylesheet\' href=\'/stylesheets/style.css\' />'
, ' </head>'
, ' <body>'
, ' <h1>{{ title }}</h1>'
, ' <p>Welcome to {{ title }}</p>'
, ' </body>'
, '</html>'
].join(eol);
/**
* Default css template.
*/
var css = [
'body {'
, ' padding: 50px;'
, ' font: 14px "Lucida Grande", Helvetica, Arial, sans-serif;'
, '}'
, ''
, 'a {'
, ' color: #00B7FF;'
, '}'
].join(eol);
/**
* Default less template.
*/
var less = [
'body {'
, ' padding: 50px;'
, ' font: 14px "Lucida Grande", Helvetica, Arial, sans-serif;'
, '}'
, ''
, 'a {'
, ' color: #00B7FF;'
, '}'
].join(eol);
/**
* Default stylus template.
*/
var stylus = [
'body'
, ' padding: 50px'
, ' font: 14px "Lucida Grande", Helvetica, Arial, sans-serif'
, 'a'
, ' color: #00B7FF'
].join(eol);
/**
* App template.
*/
var app = [
''
, '/**'
, ' * Module dependencies.'
, ' */'
, ''
, 'var express = require(\'express\')'
, ' , routes = require(\'./routes\')'
, ' , user = require(\'./routes/user\')'
, ' , http = require(\'http\')'
, ' , path = require(\'path\');'
, ''
, 'var app = express();'
, ''
, '// all environments'
, 'app.set(\'port\', process.env.PORT || 3000);'
, 'app.set(\'views\', __dirname + \'/views\');'
, 'app.set(\'view engine\', \':TEMPLATE\');'
, 'app.use(express.favicon());'
, 'app.use(express.logger(\'dev\'));'
, 'app.use(express.bodyParser());'
, 'app.use(express.methodOverride());{sess}'
, 'app.use(app.router);{css}'
, 'app.use(express.static(path.join(__dirname, \'public\')));'
, ''
, '// development only'
, 'if (\'development\' == app.get(\'env\')) {'
, ' app.use(express.errorHandler());'
, '}'
, ''
, 'app.get(\'/\', routes.index);'
, 'app.get(\'/users\', user.list);'
, ''
, 'http.createServer(app).listen(app.get(\'port\'), function(){'
, ' console.log(\'Express server listening on port \' + app.get(\'port\'));'
, '});'
, ''
].join(eol);
// Generate application
(function createApplication(path) {
emptyDirectory(path, function(empty){
if (empty || program.force) {
createApplicationAt(path);
} else {
program.confirm('destination is not empty, continue? ', function(ok){
if (ok) {
process.stdin.destroy();
createApplicationAt(path);
} else {
abort('aborting');
}
});
}
});
})(path);
/**
* Create application at the given directory `path`.
*
* @param {String} path
*/
function createApplicationAt(path) {
console.log();
process.on('exit', function(){
console.log();
console.log(' install dependencies:');
console.log(' $ cd %s && npm install', path);
console.log();
console.log(' run the app:');
console.log(' $ node app');
console.log();
});
mkdir(path, function(){
mkdir(path + '/public');
mkdir(path + '/public/javascripts');
mkdir(path + '/public/images');
mkdir(path + '/public/stylesheets', function(){
switch (program.css) {
case 'less':
write(path + '/public/stylesheets/style.less', less);
break;
case 'stylus':
write(path + '/public/stylesheets/style.styl', stylus);
break;
default:
write(path + '/public/stylesheets/style.css', css);
}
});
mkdir(path + '/routes', function(){
write(path + '/routes/index.js', index);
write(path + '/routes/user.js', users);
});
mkdir(path + '/views', function(){
switch (program.template) {
case 'ejs':
write(path + '/views/index.ejs', ejsIndex);
break;
case 'jade':
write(path + '/views/layout.jade', jadeLayout);
write(path + '/views/index.jade', jadeIndex);
break;
case 'jshtml':
write(path + '/views/layout.jshtml', jshtmlLayout);
write(path + '/views/index.jshtml', jshtmlIndex);
break;
case 'hjs':
write(path + '/views/index.hjs', hoganIndex);
break;
}
});
// CSS Engine support
switch (program.css) {
case 'less':
app = app.replace('{css}', eol + 'app.use(require(\'less-middleware\')({ src: __dirname + \'/public\' }));');
break;
case 'stylus':
app = app.replace('{css}', eol + 'app.use(require(\'stylus\').middleware(__dirname + \'/public\'));');
break;
default:
app = app.replace('{css}', '');
}
// Session support
app = app.replace('{sess}', program.sessions
? eol + 'app.use(express.cookieParser(\'your secret here\'));' + eol + 'app.use(express.session());'
: '');
// Template support
app = app.replace(':TEMPLATE', program.template);
// package.json
var pkg = {
name: 'application-name'
, version: '0.0.1'
, private: true
, scripts: { start: 'node app.js' }
, dependencies: {
express: version
}
}
if (program.template) pkg.dependencies[program.template] = '*';
// CSS Engine support
switch (program.css) {
case 'less':
pkg.dependencies['less-middleware'] = '*';
break;
default:
if (program.css) {
pkg.dependencies[program.css] = '*';
}
}
write(path + '/package.json', JSON.stringify(pkg, null, 2));
write(path + '/app.js', app);
});
}
#
# Create template in the givin [dir] or cwd.
#
# [dir]
#
/**
* Check if the given directory `path` is empty.
*
* @param {String} path
* @param {Function} fn
*/
function create_template() {
local dir=${1-.}
mkdir -p $dir
[[ $(ls $dir) ]] && confirm "$dir is not empty, continue?"
mkdir -p $dir/public/{javascripts,stylesheets,images}
mkdir -p $dir/views/partials
app_template > $dir/app.js
layout_template > $dir/views/layout.html.haml
front_template > $dir/views/front.html.haml
sass_template > $dir/views/style.css.sass
echo template created in $dir
function emptyDirectory(path, fn) {
fs.readdir(path, function(err, files){
if (err && 'ENOENT' != err.code) throw err;
fn(!files || !files.length);
});
}
#
# views/style.css.sass
#
/**
* echo str > path.
*
* @param {String} path
* @param {String} str
*/
function sass_template() {
cat <<-EOF
blue: #03ADF0
light: #4d4d4d
lighter: #eee
body
:margin 80px
:font 14px/1.5 "Helvetica Nueue", "Lucida Grande", "Arial", sans-serif
code
:padding 3px 10px
:border 1px solid !lighter
:color !light
a
:color !blue
:text-decoration none
&:hover
:text-decoration underline
EOF
function write(path, str) {
fs.writeFile(path, str);
console.log(' \x1b[36mcreate\x1b[0m : ' + path);
}
#
# views/front.html.haml
#
/**
* Mkdir -p.
*
* @param {String} path
* @param {Function} fn
*/
function front_template() {
cat <<-EOF
%h1 Express
%p
Generated by the
<code>express</code>
executable.
%p
Visit
%a{ href: 'http://expressjs.com' } ExpressJS.com
for more information.
EOF
function mkdir(path, fn) {
mkdirp(path, 0755, function(err){
if (err) throw err;
console.log(' \033[36mcreate\033[0m : ' + path);
fn && fn();
});
}
#
# views/layout.html.haml
#
/**
* Exit with the given `str`.
*
* @param {String} str
*/
function layout_template() {
cat <<-EOF
!!! strict
%html
%head
%title Express
%link{ rel: 'stylesheet', href: 'style.css' }
%body!= body
EOF
function abort(str) {
console.error(str);
process.exit(1);
}
#
# app.js
#
function app_template() {
cat <<-EOF
// If you are using the kiwi package manager
var kiwi = require('kiwi'),
express = kiwi.require('express')
// Otherwise you will need to expose the path to express
// require.paths.unshift('path/to/express/lib')
// require('express')
configure(function(){
set('root', __dirname)
})
get('/', function(){
this.render('front.html.haml')
})
get('/*.css', function(path){
this.render(path + '.css.sass', { layout: false })
})
run()
EOF
}
#
# Confirm <msg> or exit.
#
# <msg>
#
function confirm() {
echo -n "$1 "
read answer
case $answer in
n|N|no) exit 1 ;;
y|Y|yes) ;;
*) confirm "yes or no?" ;;
esac
}
# Process arguments
case $1 in
-h|--help|help) usage ;;
*) create_template $1 ;;
esac

124
examples/auth/app.js Normal file
View File

@@ -0,0 +1,124 @@
/**
* Module dependencies.
*/
var express = require('../..')
, hash = require('./pass').hash;
var app = module.exports = express();
// config
app.set('view engine', 'ejs');
app.set('views', __dirname + '/views');
// middleware
app.use(express.bodyParser());
app.use(express.cookieParser('shhhh, very secret'));
app.use(express.session());
// Session-persisted message middleware
app.use(function(req, res, next){
var err = req.session.error
, msg = req.session.success;
delete req.session.error;
delete req.session.success;
res.locals.message = '';
if (err) res.locals.message = '<p class="msg error">' + err + '</p>';
if (msg) res.locals.message = '<p class="msg success">' + msg + '</p>';
next();
});
// dummy database
var users = {
tj: { name: 'tj' }
};
// when you create a user, generate a salt
// and hash the password ('foobar' is the pass here)
hash('foobar', function(err, salt, hash){
if (err) throw err;
// store the salt & hash in the "db"
users.tj.salt = salt;
users.tj.hash = hash;
});
// Authenticate using our plain-object database of doom!
function authenticate(name, pass, fn) {
if (!module.parent) console.log('authenticating %s:%s', name, pass);
var user = users[name];
// query the db for the given username
if (!user) return fn(new Error('cannot find user'));
// apply the same algorithm to the POSTed password, applying
// the hash against the pass / salt, if there is a match we
// found the user
hash(pass, user.salt, function(err, hash){
if (err) return fn(err);
if (hash == user.hash) return fn(null, user);
fn(new Error('invalid password'));
})
}
function restrict(req, res, next) {
if (req.session.user) {
next();
} else {
req.session.error = 'Access denied!';
res.redirect('/login');
}
}
app.get('/', function(req, res){
res.redirect('login');
});
app.get('/restricted', restrict, function(req, res){
res.send('Wahoo! restricted area, click to <a href="/logout">logout</a>');
});
app.get('/logout', function(req, res){
// destroy the user's session to log them out
// will be re-created next request
req.session.destroy(function(){
res.redirect('/');
});
});
app.get('/login', function(req, res){
res.render('login');
});
app.post('/login', function(req, res){
authenticate(req.body.username, req.body.password, function(err, user){
if (user) {
// Regenerate session when signing in
// to prevent fixation
req.session.regenerate(function(){
// Store the user's primary key
// in the session store to be retrieved,
// or in this case the entire user object
req.session.user = user;
req.session.success = 'Authenticated as ' + user.name
+ ' click to <a href="/logout">logout</a>. '
+ ' You may now access <a href="/restricted">/restricted</a>.';
res.redirect('back');
});
} else {
req.session.error = 'Authentication failed, please check your '
+ ' username and password.'
+ ' (use "tj" and "foobar")';
res.redirect('login');
}
});
});
if (!module.parent) {
app.listen(3000);
console.log('Express started on port 3000');
}

48
examples/auth/pass.js Normal file
View File

@@ -0,0 +1,48 @@
// check out https://github.com/visionmedia/node-pwd
/**
* Module dependencies.
*/
var crypto = require('crypto');
/**
* Bytesize.
*/
var len = 128;
/**
* Iterations. ~300ms
*/
var iterations = 12000;
/**
* Hashes a password with optional `salt`, otherwise
* generate a salt for `pass` and invoke `fn(err, salt, hash)`.
*
* @param {String} password to hash
* @param {String} optional salt
* @param {Function} callback
* @api public
*/
exports.hash = function (pwd, salt, fn) {
if (3 == arguments.length) {
crypto.pbkdf2(pwd, salt, iterations, len, function(err, hash){
fn(err, (new Buffer(hash, 'binary')).toString('base64'));
});
} else {
fn = salt;
crypto.randomBytes(len, function(err, salt){
if (err) return fn(err);
salt = salt.toString('base64');
crypto.pbkdf2(pwd, salt, iterations, len, function(err, hash){
if (err) return fn(err);
fn(null, salt, (new Buffer(hash, 'binary')).toString('base64'));
});
});
}
};

View File

@@ -0,0 +1,2 @@
</body>
</html>

View File

@@ -0,0 +1,18 @@
<!DOCTYPE html>
<html>
<head>
<title><%= title %></title>
<style>
body {
padding: 50px;
font: 13px Helvetica, Arial, sans-serif;
}
.error {
color: red
}
.success {
color: green;
}
</style>
</head>
<body>

View File

@@ -0,0 +1,22 @@
<% var title = 'Authentication Example' %>
<% include head %>
<h1>Login</h1>
<%- message %>
Try accessing <a href="/restricted">/restricted</a>, then authenticate with "tj" and "foobar".
<form method="post" action="/login">
<p>
<label>Username:</label>
<input type="text" name="username">
</p>
<p>
<label>Password:</label>
<input type="text" name="password">
</p>
<p>
<input type="submit" value="Login">
</p>
</form>
<% include foot %>

View File

@@ -0,0 +1,24 @@
var express = require('../..')
, app = express();
app.set('views', __dirname);
app.set('view engine', 'jade');
var pets = [];
var n = 1000;
while (n--) {
pets.push({ name: 'Tobi', age: 2, species: 'ferret' });
pets.push({ name: 'Loki', age: 1, species: 'ferret' });
pets.push({ name: 'Jane', age: 6, species: 'ferret' });
}
app.use(express.logger('dev'));
app.get('/', function(req, res){
res.render('pets', { pets: pets });
});
app.listen(3000);
console.log('Express listening on port 3000');

View File

@@ -0,0 +1,12 @@
style.
body {
padding: 50px;
font: 16px "Helvetica Neue", Helvetica;
}
table
for pet in pets
tr
td= pet.name
td= pet.age
td= pet.species

View File

@@ -1,80 +0,0 @@
require.paths.unshift('lib')
require('express')
require('express/plugins')
var messages = [],
utils = require('express/utils'),
http = require('express/http')
configure(function(){
use(Logger)
use(MethodOverride)
use(ContentLength)
use(Cookie)
use(Cache, { lifetime: (5).minutes, reapInterval: (1).minute })
use(Session, { lifetime: (15).minutes, reapInterval: (1).minute })
use(Static)
set('root', __dirname)
})
get('/', function(){
this.pass('/chat')
})
get('/chat', function(){
var self = this
Session.store.length(function(err, len){
self.render('chat.html.haml', {
locals: {
title: 'Chat',
messages: messages,
name: self.session.name,
usersOnline: len
}
})
})
})
post('/chat', function(){
this.session.name = this.param('name')
messages
.push(utils.escape(this.param('name')) + ': ' + utils.escape(this.param('message'))
.replace(/(http:\/\/[^\s]+)/g, '<a href="$1" target="express-chat">$1</a>')
.replace(/:\)/g, '<img src="http://icons3.iconfinder.netdna-cdn.com/data/icons/ledicons/emoticon_smile.png">'))
this.respond(200)
})
get('/chat/messages', function(){
var self = this,
previousLength = messages.length,
timer = setInterval(function(){
if (messages.length > previousLength)
self.contentType('json'),
previousLength = messages.length,
self.respond(200, JSON.encode(messages)),
clearInterval(timer)
}, 100)
})
get('/*.css', function(file){
this.render(file + '.css.sass', { layout: false })
})
get('/error/view', function(){
this.render('does.not.exist')
})
get('/error', function(){
throw new Error('oh noes!')
})
get('/simple', function(){
return 'Hello :)'
})
get('/favicon.ico', function(){
this.notFound()
})
run()

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.2 KiB

View File

@@ -1,28 +0,0 @@
$(function(){
// Send message
$('form').submit(function(){
var message = $('input[name=message]'),
name = $('input[name=name]')
if (message.val())
$.post('/chat', { name: name.val(), message: message.val() }, function(){
message.val('')
})
else
message.css('border', '1px solid red')
return false
})
// Longpoll
;(function poll(){
$.getJSON('/chat/messages', function(messages){
$('#messages').empty()
$.each(messages, function(i, msg){
$('#messages')
.append('<li>' + msg + '</li>')
.get(0).scrollTop = $('#messages').get(0).scrollHeight
})
poll()
})
})()
})

File diff suppressed because one or more lines are too long

View File

@@ -1,9 +0,0 @@
%h1 Chat
%img.bubble{ src: '/public/images/bubble.png' }
%ul#messages
!= this.partial('message.html.haml', { collection: messages })
%form{ method: 'post' }
%input{ type: 'hidden', name: '_method', value: 'put' }
%input{ type: 'text', name: 'name', value: name || 'guest' }
%input{ type: 'text', name: 'message' }
%input{ type: 'submit', value: 'Send' }

View File

@@ -1,12 +0,0 @@
%html
%head
%title= title
%script{ src: '/public/javascripts/jquery.js' }
%script{ src: '/public/javascripts/app.js' }
%link{ rel: 'stylesheet', href: '/style.css' }
%body
#wrapper
!= body
#online
Online:
%strong= usersOnline

View File

@@ -1 +0,0 @@
%li= message

View File

@@ -1,81 +0,0 @@
body
:font-family "Helvetica Neue", "Lucida Grande", "Arial"
:font-size 13px
:text-align center
=text-stroke 1px rgba(255, 255, 255, 0.1)
:color #555
h1, h2
:margin 0
:font-size 22px
:color #343434
h1
:text-shadow 1px 2px 2px #ddd
:font-size 60px
img.bubble
:position absolute
:top -25px
:left 120px
#wrapper
:position relative
:margin 100px auto
:width 500px
:text-align left
ul
:margin 0
:padding 0
:max-height 300px
:overflow-x hidden
li
:margin 5px 0
:padding 3px 8px
:list-style none
:border 1px solid #eee
=border-radius 3px
=border-radius 3px
li:hover
:cursor pointer
:color #2E2E2E
input[type=text]
:padding 5px
:border 1px solid #ddd
:outline none
=border-radius 2px
input[type=text]:focus
:border-color #00C3FF
input[type=submit]
=border-radius 2px
=box-shadow 0 1px 2px #ddd
:padding 6px 10px
:border solid 1px #999
:background -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#ddd))
:color #333
:text-decoration none
:cursor pointer
:display inline-block
:text-align center
:text-shadow 0px 1px 1px #fff
:line-height 1
input[type=submit]:hover
:background -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#E6E4E4))
input[type=submit]:active
:background -webkit-gradient(linear, 0% 0%, 0% 100%, from(#fff), to(#c7c7c7))
input[name=name]
:width 80px
a
:color #1ABFF1
=transition-property padding
=transition-duration 0.15s
a:hover
:padding 0 5px
a:hover:before
:content 'visit: '
#online
:font-size 12px

View File

@@ -1,38 +0,0 @@
require.paths.unshift 'lib'
require 'express'
require 'express/plugins'
sys: require 'sys'
configure ->
use MethodOverride
use ContentLength
use Cookie
use Session
use Flash
use Logger
use Static
set 'root', __dirname
set 'views', __dirname + '/../upload/views'
get '/', ->
@redirect('/upload')
get '/upload', ->
@render 'upload.html.haml', {
locals: {
flashes: @flash 'info'
}
}
post '/upload', ->
@param('images').each (image) =>
sys.puts image.filename + ' -> ' + image.tempfile
@flash 'info', 'Uploaded ' + image.filename
@redirect '/upload'
get '/*.css', (file) ->
@render file + '.css.sass', { layout: no }
run()

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,8 @@
var users = [];
users.push({ name: 'Tobi' });
users.push({ name: 'Loki' });
users.push({ name: 'Jane' });
module.exports = users;

View File

@@ -0,0 +1,41 @@
var express = require('../../')
, app = module.exports = express()
, users = require('./db');
app.get('/', function(req, res){
res.format({
html: function(){
res.send('<ul>' + users.map(function(user){
return '<li>' + user.name + '</li>';
}).join('') + '</ul>');
},
text: function(){
res.send(users.map(function(user){
return ' - ' + user.name + '\n';
}).join(''));
},
json: function(){
res.json(users);
}
})
});
// or you could write a tiny middleware like
// this to abstract make things a bit more declarative:
function format(mod) {
var obj = require(mod);
return function(req, res){
res.format(obj);
}
}
app.get('/users', format('./users'));
if (!module.parent) {
app.listen(3000);
console.log('listening on port 3000');
}

View File

@@ -0,0 +1,18 @@
var users = require('./db');
exports.html = function(req, res){
res.send('<ul>' + users.map(function(user){
return '<li>' + user.name + '</li>';
}).join('') + '</ul>');
};
exports.text = function(req, res){
res.send(users.map(function(user){
return ' - ' + user.name + '\n';
}).join(''));
};
exports.json = function(req, res){
res.json(users);
};

View File

@@ -0,0 +1,32 @@
/**
* Module dependencies.
*/
var express = require('../../');
var app = module.exports = express();
// ignore GET /favicon.ico
app.use(express.favicon());
// pass a secret to cookieParser() for signed cookies
app.use(express.cookieParser('manny is cool'));
// add req.session cookie support
app.use(express.cookieSession());
// do something with the session
app.use(count);
// custom middleware
function count(req, res) {
req.session.count = req.session.count || 0;
var n = req.session.count++;
res.send('viewed ' + n + ' times\n');
}
if (!module.parent) {
app.listen(3000);
console.log('Express server listening on port 3000');
}

54
examples/cookies/app.js Normal file
View File

@@ -0,0 +1,54 @@
/**
* Module dependencies.
*/
var express = require('../../')
, app = module.exports = express();
// add favicon() before logger() so
// GET /favicon.ico requests are not
// logged, because this middleware
// reponds to /favicon.ico and does not
// call next()
app.use(express.favicon());
// custom log format
if ('test' != process.env.NODE_ENV)
app.use(express.logger(':method :url'));
// parses request cookies, populating
// req.cookies and req.signedCookies
// when the secret is passed, used
// for signing the cookies.
app.use(express.cookieParser('my secret here'));
// parses json, x-www-form-urlencoded, and multipart/form-data
app.use(express.bodyParser());
app.get('/', function(req, res){
if (req.cookies.remember) {
res.send('Remembered :). Click to <a href="/forget">forget</a>!.');
} else {
res.send('<form method="post"><p>Check to <label>'
+ '<input type="checkbox" name="remember"/> remember me</label> '
+ '<input type="submit" value="Submit"/>.</p></form>');
}
});
app.get('/forget', function(req, res){
res.clearCookie('remember');
res.redirect('back');
});
app.post('/', function(req, res){
var minute = 60000;
if (req.body.remember) res.cookie('remember', 1, { maxAge: minute });
res.redirect('back');
});
if (!module.parent){
app.listen(3000);
console.log('Express started on port 3000');
}

46
examples/cors/index.js Normal file
View File

@@ -0,0 +1,46 @@
/**
* Module dependencies.
*/
var express = require('../..')
, app = express()
, api = express();
// app middleware
app.use(express.static(__dirname + '/public'));
// api middleware
api.use(express.logger('dev'));
api.use(express.bodyParser());
/**
* CORS support.
*/
api.all('*', function(req, res, next){
if (!req.get('Origin')) return next();
// use "*" here to accept any origin
res.set('Access-Control-Allow-Origin', 'http://localhost:3000');
res.set('Access-Control-Allow-Methods', 'GET, POST');
res.set('Access-Control-Allow-Headers', 'X-Requested-With, Content-Type');
// res.set('Access-Control-Allow-Max-Age', 3600);
if ('OPTIONS' == req.method) return res.send(200);
next();
});
/**
* POST a user.
*/
api.post('/user', function(req, res){
console.log(req.body);
res.send(201);
});
app.listen(3000);
api.listen(3001);
console.log('app listening on 3000');
console.log('api listening on 3001');

View File

@@ -0,0 +1,12 @@
<!DOCTYPE html>
<html>
<body>
<script>
var req = new XMLHttpRequest;
req.open('POST', 'http://localhost:3001/user', false);
req.setRequestHeader('Content-Type', 'application/json');
req.send('{"name":"tobi","species":"ferret"}');
console.log(req.responseText);
</script>
</body>
</html>

44
examples/downloads/app.js Normal file
View File

@@ -0,0 +1,44 @@
/**
* Module dependencies.
*/
var express = require('../../')
, app = module.exports = express();
app.get('/', function(req, res){
res.send('<ul>'
+ '<li>Download <a href="/files/amazing.txt">amazing.txt</a>.</li>'
+ '<li>Download <a href="/files/missing.txt">missing.txt</a>.</li>'
+ '</ul>');
});
// /files/* is accessed via req.params[0]
// but here we name it :file
app.get('/files/:file(*)', function(req, res, next){
var file = req.params.file
, path = __dirname + '/files/' + file;
res.download(path);
});
// error handling middleware. Because it's
// below our routes, you will be able to
// "intercept" errors, otherwise Connect
// will respond with 500 "Internal Server Error".
app.use(function(err, req, res, next){
// special-case 404s,
// remember you could
// render a 404 template here
if (404 == err.status) {
res.statusCode = 404;
res.send('Cant find that file, sorry!');
} else {
next(err);
}
});
if (!module.parent) {
app.listen(3000);
console.log('Express started on port 3000');
}

View File

@@ -0,0 +1 @@
what an amazing download

50
examples/ejs/index.js Normal file
View File

@@ -0,0 +1,50 @@
/**
* Module dependencies.
*/
var express = require('../../');
var app = module.exports = express();
// Register ejs as .html. If we did
// not call this, we would need to
// name our views foo.ejs instead
// of foo.html. The __express method
// is simply a function that engines
// use to hook into the Express view
// system by default, so if we want
// to change "foo.ejs" to "foo.html"
// we simply pass _any_ function, in this
// case `ejs.__express`.
app.engine('.html', require('ejs').__express);
// Optional since express defaults to CWD/views
app.set('views', __dirname + '/views');
// Without this you would need to
// supply the extension to res.render()
// ex: res.render('users.html').
app.set('view engine', 'html');
// Dummy users
var users = [
{ name: 'tobi', email: 'tobi@learnboost.com' },
{ name: 'loki', email: 'loki@learnboost.com' },
{ name: 'jane', email: 'jane@learnboost.com' }
];
app.get('/', function(req, res){
res.render('users', {
users: users,
title: "EJS example",
header: "Some users"
});
});
if (!module.parent) {
app.listen(3000);
console.log('Express app started on port 3000');
}

View File

@@ -0,0 +1,2 @@
</body>
</html>

View File

@@ -0,0 +1,13 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title> <%= title %> </title>
<style type="text/css">
body {
padding: 50px;
font: 13px Helvetica, Arial, sans-serif;
}
</style>
</head>
<body>

View File

@@ -0,0 +1,10 @@
<% include header.html %>
<h1>Users</h1>
<ul id="users">
<% users.forEach(function(user){ %>
<li><%= user.name %> &lt;<%= user.email %>&gt;</li>
<% }) %>
</ul>
<% include footer.html %>

View File

@@ -0,0 +1,112 @@
/**
* Module dependencies.
*/
var express = require('../../')
, app = module.exports = express()
, silent = 'test' == process.env.NODE_ENV;
// general config
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
// our custom "verbose errors" setting
// which we can use in the templates
// via settings['verbose errors']
app.enable('verbose errors');
// disable them in production
// use $ NODE_ENV=production node examples/error-pages
if ('production' == app.settings.env) {
app.disable('verbose errors');
}
app.use(express.favicon());
silent || app.use(express.logger('dev'));
// "app.router" positions our routes
// above the middleware defined below,
// this means that Express will attempt
// to match & call routes _before_ continuing
// on, at which point we assume it's a 404 because
// no route has handled the request.
app.use(app.router);
// Since this is the last non-error-handling
// middleware use()d, we assume 404, as nothing else
// responded.
// $ curl http://localhost:3000/notfound
// $ curl http://localhost:3000/notfound -H "Accept: application/json"
// $ curl http://localhost:3000/notfound -H "Accept: text/plain"
app.use(function(req, res, next){
res.status(404);
// respond with html page
if (req.accepts('html')) {
res.render('404', { url: req.url });
return;
}
// respond with json
if (req.accepts('json')) {
res.send({ error: 'Not found' });
return;
}
// default to plain-text. send()
res.type('txt').send('Not found');
});
// error-handling middleware, take the same form
// as regular middleware, however they require an
// arity of 4, aka the signature (err, req, res, next).
// when connect has an error, it will invoke ONLY error-handling
// middleware.
// If we were to next() here any remaining non-error-handling
// middleware would then be executed, or if we next(err) to
// continue passing the error, only error-handling middleware
// would remain being executed, however here
// we simply respond with an error page.
app.use(function(err, req, res, next){
// we may use properties of the error object
// here and next(err) appropriately, or if
// we possibly recovered from the error, simply next().
res.status(err.status || 500);
res.render('500', { error: err });
});
// Routes
app.get('/', function(req, res){
res.render('index.jade');
});
app.get('/404', function(req, res, next){
// trigger a 404 since no other middleware
// will match /404 after this one, and we're not
// responding here
next();
});
app.get('/403', function(req, res, next){
// trigger a 403 error
var err = new Error('not allowed!');
err.status = 403;
next(err);
});
app.get('/500', function(req, res, next){
// trigger a generic (500) error
next(new Error('keyboard cat!'));
});
if (!module.parent) {
app.listen(3000);
silent || console.log('Express started on port 3000');
}

View File

@@ -0,0 +1,5 @@
extends error
block content
h2 Cannot find #{url}

View File

@@ -0,0 +1,13 @@
// note that we extend a different
// layout with jade for 4xx & 5xx
// responses
extends error
block content
h1 Error: #{error.message}
if settings['verbose errors']
pre= error.stack
else
p An error ocurred!

View File

@@ -0,0 +1,6 @@
html
head
title Error
body
h1 An error occurred!
block content

View File

@@ -0,0 +1,15 @@
extends layout
block content
h2 Pages Example
ul
li
| visit
a(href="/500") 500
li
| visit
a(href="/404") 404
li
| visit
a(href='/403') 403

View File

@@ -0,0 +1,6 @@
html
head
title Custom Pages Example
body
h1 My Site
block content

48
examples/error/index.js Normal file
View File

@@ -0,0 +1,48 @@
/**
* Module dependencies.
*/
var express = require('../../')
, app = module.exports = express()
, test = app.get('env') == 'test';
if (!test) app.use(express.logger('dev'));
app.use(app.router);
// the error handler is strategically
// placed *below* the app.router; if it
// were above it would not receive errors
// from app.get() etc
app.use(error);
// error handling middleware have an arity of 4
// instead of the typical (req, res, next),
// otherwise they behave exactly like regular
// middleware, you may have several of them,
// in different orders etc.
function error(err, req, res, next) {
// log it
if (!test) console.error(err.stack);
// respond with 500 "Internal Server Error".
res.send(500);
}
app.get('/', function(req, res){
// Caught and passed down to the errorHandler middleware
throw new Error('something broke!');
});
app.get('/next', function(req, res, next){
// We can also pass exceptions to next()
process.nextTick(function(){
next(new Error('oh no!'));
});
});
if (!module.parent) {
app.listen(3000);
console.log('Express started on port 3000');
}

View File

@@ -0,0 +1,60 @@
var express = require('../..')
, app = express();
app.set('view engine', 'jade');
app.set('views', __dirname + '/views');
function User(name) {
this.private = 'heyyyy';
this.secret = 'something';
this.name = name;
this.id = 123;
}
// You'll probably want to do
// something like this so you
// dont expose "secret" data.
User.prototype.toJSON = function(){
return {
id: this.id,
name: this.name
}
};
app.use(express.logger('dev'));
// earlier on expose an object
// that we can tack properties on.
// all res.locals props are exposed
// to the templates, so "expose" will
// be present.
app.use(function(req, res, next){
res.locals.expose = {};
// you could alias this as req or res.expose
// to make it shorter and less annoying
next();
});
// pretend we loaded a user
app.use(function(req, res, next){
req.user = new User('Tobi');
next();
});
app.get('/', function(req, res){
res.redirect('/user');
});
app.get('/user', function(req, res){
// we only want to expose the user
// to the client for this route:
res.locals.expose.user = req.user;
res.render('page');
});
app.listen(3000);
console.log('app listening on port 3000');

View File

@@ -0,0 +1,14 @@
html
head
title Express
script.
// call this whatever you like,
// or dump them into individual
// props like "var user ="
var data = !{JSON.stringify(expose)}
body
h1 Expose client data
p The following was exposed to the client:
pre
script.
document.write(JSON.stringify(data, null, 2))

View File

@@ -1,19 +0,0 @@
require.paths.unshift('lib')
require('express')
configure(function(){
set('root', __dirname)
})
get('/', function(){
this.render('front.html.ejs', {
locals: {
title: 'Hello World',
name: 'Joe',
items: ['one', 'two', 'three']
}
})
})
run()

View File

@@ -0,0 +1,11 @@
var express = require('../../');
var app = express();
app.get('/', function(req, res){
res.send('Hello World');
});
app.listen(3000);
console.log('Express started on port 3000');

View File

@@ -1,9 +0,0 @@
<h1><%= title %></h1>
<%= this.partial("greeting.html.ejs", { locals: { name: name } }) %>
<% if (items && items.length) { %>
<ul>
<% for (var i = 0; i < items.length; ++i) { %>
<li><%= items[i] %></li>
<% } %>
</ul>
<% } %>

View File

@@ -1,8 +0,0 @@
<html>
<head>
<title><%= title %></title>
</head>
<body>
<%= body %>
</body>
</html>

View File

@@ -1 +0,0 @@
Welcome back, <strong><%= name %></strong>!

45
examples/jade/index.js Normal file
View File

@@ -0,0 +1,45 @@
/**
* Module dependencies.
*/
var express = require('../../lib/express');
// Path to our public directory
var pub = __dirname + '/public';
// setup middleware
var app = express();
app.use(app.router);
app.use(express.static(pub));
app.use(express.errorHandler());
// Optional since express defaults to CWD/views
app.set('views', __dirname + '/views');
// Set our default template engine to "jade"
// which prevents the need for extensions
// (although you can still mix and match)
app.set('view engine', 'jade');
function User(name, email) {
this.name = name;
this.email = email;
}
// Dummy users
var users = [
new User('tj', 'tj@vision-media.ca')
, new User('ciaran', 'ciaranj@gmail.com')
, new User('aaron', 'aaron.heckmann+github@gmail.com')
];
app.get('/', function(req, res){
res.render('users', { users: users });
});
app.listen(3000);
console.log('Express app started on port 3000');

View File

@@ -0,0 +1,4 @@
body {
padding: 50px 80px;
font: 14px "Helvetica Nueue", "Lucida Grande", Arial, sans-serif;
}

View File

@@ -0,0 +1,3 @@
head
title Jade Example
link(rel="stylesheet", href="/stylesheets/style.css")

View File

@@ -0,0 +1,5 @@
!!! 5
html
include header
body
block content

View File

@@ -0,0 +1,8 @@
extends ../layout
block content
h1 Users
#users
for user in users
include user

View File

@@ -0,0 +1,3 @@
.user
h2= user.name
.email= user.email

View File

@@ -0,0 +1,45 @@
/**
* Module dependencies.
*/
var express = require('../..')
, fs = require('fs')
, md = require('marked').parse;
var app = module.exports = express();
// register .md as an engine in express view system
app.engine('md', function(path, options, fn){
fs.readFile(path, 'utf8', function(err, str){
if (err) return fn(err);
try {
var html = md(str);
html = html.replace(/\{([^}]+)\}/g, function(_, name){
return options[name] || '';
})
fn(null, html);
} catch(err) {
fn(err);
}
});
})
app.set('views', __dirname + '/views');
// make it the default so we dont need .md
app.set('view engine', 'md');
app.get('/', function(req, res){
res.render('index', { title: 'Markdown Example' });
})
app.get('/fail', function(req, res){
res.render('missing', { title: 'Markdown Example' });
})
if (!module.parent) {
app.listen(3000);
console.log('Express started on port 3000');
}

View File

@@ -0,0 +1,4 @@
# {title}
Just an example view rendered with _markdown_.

View File

@@ -0,0 +1,36 @@
/**
* Module dependencies.
*/
var express = require('../..')
, format = require('util').format;
var app = module.exports = express()
// bodyParser in connect 2.x uses node-formidable to parse
// the multipart form data.
app.use(express.bodyParser())
app.get('/', function(req, res){
res.send('<form method="post" enctype="multipart/form-data">'
+ '<p>Title: <input type="text" name="title" /></p>'
+ '<p>Image: <input type="file" name="image" /></p>'
+ '<p><input type="submit" value="Upload" /></p>'
+ '</form>');
});
app.post('/', function(req, res, next){
// the uploaded file can be found as `req.files.image` and the
// title field as `req.body.title`
res.send(format('\nuploaded %s (%d Kb) to %s as %s'
, req.files.image.name
, req.files.image.size / 1024 | 0
, req.files.image.path
, req.body.title));
});
if (!module.parent) {
app.listen(3000);
console.log('Express started on port 3000');
}

View File

@@ -0,0 +1,4 @@
exports.index = function(req, res){
res.redirect('/users');
};

View File

@@ -0,0 +1,26 @@
var db = require('../../db');
exports.engine = 'jade';
exports.before = function(req, res, next){
var pet = db.pets[req.params.pet_id];
if (!pet) return next(new Error('Pet not found'));
req.pet = pet;
next();
};
exports.show = function(req, res, next){
res.render('show', { pet: req.pet });
};
exports.edit = function(req, res, next){
res.render('edit', { pet: req.pet });
};
exports.update = function(req, res, next){
var body = req.body;
req.pet.name = body.user.name;
res.message('Information updated!');
res.redirect('/pet/' + req.pet.id);
};

View File

@@ -0,0 +1,7 @@
link(rel='stylesheet', href='/style.css')
h1= pet.name
form(action='/pet/#{pet.id}', method='post')
input(type='hidden', name='_method', value='put')
label Name:
input(type='text', name='user[name]', value=pet.name)
input(type='submit', value='Update')

View File

@@ -0,0 +1,6 @@
link(rel='stylesheet', href='/style.css')
h1= pet.name
a(href='/pet/#{pet.id}/edit') edit
p You are viewing #{pet.name}

View File

@@ -0,0 +1,17 @@
var db = require('../../db');
exports.name = 'pet';
exports.prefix = '/user/:user_id';
exports.create = function(req, res, next){
var id = req.params.user_id;
var user = db.users[id];
var body = req.body;
if (!user) return next(new Error('User not found'));
var pet = { name: body.pet.name };
pet.id = db.pets.push(pet) - 1;
user.pets.push(pet);
res.message('Added pet ' + body.pet.name);
res.redirect('/user/' + id);
};

View File

@@ -0,0 +1,34 @@
var db = require('../../db');
exports.before = function(req, res, next){
var id = req.params.user_id;
if (!id) return next();
// pretend to query a database...
process.nextTick(function(){
req.user = db.users[id];
// cant find that user
if (!req.user) return next(new Error('User not found'));
// found it, move on to the routes
next();
});
}
exports.list = function(req, res, next){
res.render('list', { users: db.users });
};
exports.edit = function(req, res, next){
res.render('edit', { user: req.user });
};
exports.show = function(req, res, next){
res.render('show', { user: req.user });
};
exports.update = function(req, res, next){
var body = req.body;
req.user.name = body.user.name;
res.message('Information updated!');
res.redirect('/user/' + req.user.id);
};

View File

@@ -0,0 +1,12 @@
<link rel="stylesheet" href="/style.css" />
<h1><%= user.name %></h1>
<form action='/user/<%= user.id %>' method='post'>
<input type="hidden" name="_method" value="put" />
<label>Name: <input type="text" name="user[name]" value="<%= user.name %>" /></label>
<input type="submit" value="Update" />
</form>
<form action='/user/<%= user.id %>/pet' method='post'>
<label>Pet: <input type="text" name="pet[name]" placeholder="name" /></label>
<input type="submit" value="Add" />
</form>

View File

@@ -0,0 +1,8 @@
<link rel="stylesheet" href="/style.css" />
<h1>Users</h1>
<p>Click a user below to view their pets.</p>
<ul>
<% users.forEach(function(user){ %>
<li><a href="/user/<%= user.id %>"><%= user.name %></a></li>
<% }) %>
</ul>

View File

@@ -0,0 +1,21 @@
<link rel="stylesheet" href="/style.css" />
<h1><%= user.name %> <a href="/user/<%= user.id %>/edit">edit</a></h1>
<% if (hasMessages) { %>
<ul id="messages">
<% messages.forEach(function(msg){ %>
<li><%= msg %></li>
<% }) %>
</ul>
<% } %>
<% if (user.pets.length) { %>
<p>View <%= user.name %>s pets:</p>
<ul>
<% user.pets.forEach(function(pet){ %>
<li><a href="/pet/<%= pet.id %>"><%= pet.name %></a></li>
<% }) %>
</ul>
<% } else { %>
<p>No pets!</p>
<% } %>

15
examples/mvc/db.js Normal file
View File

@@ -0,0 +1,15 @@
// faux database
var pets = exports.pets = [];
pets.push({ name: 'Tobi', id: 0 });
pets.push({ name: 'Loki', id: 1 });
pets.push({ name: 'Jane', id: 2 });
pets.push({ name: 'Raul', id: 3 });
var users = exports.users = [];
users.push({ name: 'TJ', pets: [pets[0], pets[1], pets[2]], id: 0 });
users.push({ name: 'Guillermo', pets: [pets[3]], id: 1 });
users.push({ name: 'Nathan', pets: [], id: 2 });

92
examples/mvc/index.js Normal file
View File

@@ -0,0 +1,92 @@
var express = require('../..');
var app = module.exports = express();
// settings
// map .renderFile to ".html" files
app.engine('html', require('ejs').renderFile);
// make ".html" the default
app.set('view engine', 'html');
// set views for error and 404 pages
app.set('views', __dirname + '/views');
// define a custom res.message() method
// which stores messages in the session
app.response.message = function(msg){
// reference `req.session` via the `this.req` reference
var sess = this.req.session;
// simply add the msg to an array for later
sess.messages = sess.messages || [];
sess.messages.push(msg);
return this;
};
// log
if (!module.parent) app.use(express.logger('dev'));
// serve static files
app.use(express.static(__dirname + '/public'));
// session support
app.use(express.cookieParser('some secret here'));
app.use(express.session());
// parse request bodies (req.body)
app.use(express.bodyParser());
// support _method (PUT in forms etc)
app.use(express.methodOverride());
// expose the "messages" local variable when views are rendered
app.use(function(req, res, next){
var msgs = req.session.messages || [];
// expose "messages" local variable
res.locals.messages = msgs;
// expose "hasMessages"
res.locals.hasMessages = !! msgs.length;
/* This is equivalent:
res.locals({
messages: msgs,
hasMessages: !! msgs.length
});
*/
next();
// empty or "flush" the messages so they
// don't build up
req.session.messages = [];
});
// load controllers
require('./lib/boot')(app, { verbose: !module.parent });
// assume "not found" in the error msgs
// is a 404. this is somewhat silly, but
// valid, you can do whatever you like, set
// properties, use instanceof etc.
app.use(function(err, req, res, next){
// treat as 404
if (~err.message.indexOf('not found')) return next();
// log it
console.error(err.stack);
// error page
res.status(500).render('5xx');
});
// assume 404 since no middleware responded
app.use(function(req, res, next){
res.status(404).render('404', { url: req.originalUrl });
});
if (!module.parent) {
app.listen(3000);
console.log('\n listening on port 3000\n');
}

73
examples/mvc/lib/boot.js Normal file
View File

@@ -0,0 +1,73 @@
var express = require('../../..')
, fs = require('fs');
module.exports = function(parent, options){
var verbose = options.verbose;
fs.readdirSync(__dirname + '/../controllers').forEach(function(name){
verbose && console.log('\n %s:', name);
var obj = require('./../controllers/' + name)
, name = obj.name || name
, prefix = obj.prefix || ''
, app = express()
, method
, path;
// allow specifying the view engine
if (obj.engine) app.set('view engine', obj.engine);
app.set('views', __dirname + '/../controllers/' + name + '/views');
// before middleware support
if (obj.before) {
path = '/' + name + '/:' + name + '_id';
app.all(path, obj.before);
verbose && console.log(' ALL %s -> before', path);
path = '/' + name + '/:' + name + '_id/*';
app.all(path, obj.before);
verbose && console.log(' ALL %s -> before', path);
}
// generate routes based
// on the exported methods
for (var key in obj) {
// "reserved" exports
if (~['name', 'prefix', 'engine', 'before'].indexOf(key)) continue;
// route exports
switch (key) {
case 'show':
method = 'get';
path = '/' + name + '/:' + name + '_id';
break;
case 'list':
method = 'get';
path = '/' + name + 's';
break;
case 'edit':
method = 'get';
path = '/' + name + '/:' + name + '_id/edit';
break;
case 'update':
method = 'put';
path = '/' + name + '/:' + name + '_id';
break;
case 'create':
method = 'post';
path = '/' + name;
break;
case 'index':
method = 'get';
path = '/';
break;
default:
throw new Error('unrecognized route: ' + name + '.' + key);
}
path = prefix + path;
app[method](path, obj[key]);
verbose && console.log(' %s %s -> %s', method.toUpperCase(), path, key);
}
// mount the app
parent.use(app);
});
};

View File

@@ -0,0 +1,14 @@
body {
padding: 50px;
font: 16px "Helvetica Neue", Helvetica, Arial;
}
a {
color: #107aff;
text-decoration: none;
}
a:hover {
text-decoration: underline;
}
h1 a {
font-size: 16px;
}

View File

@@ -0,0 +1,3 @@
<link rel="stylesheet" href="/style.css" />
<h1>404: Not Found</h1>
<p>Sorry we can't find <%= url %></p>

View File

@@ -0,0 +1,3 @@
<link rel="stylesheet" href="/style.css" />
<h1>500: Internal Server Error</h1>
<p>Looks like something blew up!</p>

Some files were not shown because too many files have changed in this diff Show More