Skip to content

Commit

Permalink
Merge tag '3.21.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
dougwilson committed Jun 19, 2015
2 parents fce3d14 + 115dbe1 commit 3d2ecdd
Show file tree
Hide file tree
Showing 4 changed files with 110 additions and 25 deletions.
91 changes: 88 additions & 3 deletions History.md
@@ -1,3 +1,34 @@
unreleased
==========

* deps: cookie@0.1.3
- perf: deduce the scope of try-catch deopt
- perf: remove argument reassignments
* deps: escape-html@1.0.2
* deps: etag@~1.7.0
- Always include entity length in ETags for hash length extensions
- Generate non-Stats ETags using MD5 only (no longer CRC32)
- Improve stat performance by removing hashing
- Improve support for JXcore
- Remove base64 padding in ETags to shorten
- Support "fake" stats objects in environments without fs
- Use MD5 instead of MD4 in weak ETags over 1KB
* deps: fresh@0.3.0
- Add weak `ETag` matching support
* deps: send@0.13.0
- Allow Node.js HTTP server to set `Date` response header
- Fix incorrectly removing `Content-Location` on 304 response
- Improve the default redirect response headers
- Send appropriate headers on default error response
- Use `http-errors` for standard emitted errors
- Use `statuses` instead of `http` module for status messages
- deps: escape-html@1.0.2
- deps: etag@~1.7.0
- deps: fresh@0.3.0
- deps: on-finished@~2.3.0
- perf: enable strict mode
- perf: remove unnecessary array allocations

4.12.4 / 2015-05-17
===================

Expand Down Expand Up @@ -771,6 +802,60 @@
- `app.route()` - Proxy to the app's `Router#route()` method to create a new route
- Router & Route - public API

3.21.0 / 2015-06-18
===================

* deps: basic-auth@1.0.2
- perf: enable strict mode
- perf: hoist regular expression
- perf: parse with regular expressions
- perf: remove argument reassignment
* deps: connect@2.30.0
- deps: body-parser@~1.13.1
- deps: bytes@2.1.0
- deps: compression@~1.5.0
- deps: cookie@0.1.3
- deps: cookie-parser@~1.3.5
- deps: csurf@~1.8.3
- deps: errorhandler@~1.4.0
- deps: express-session@~1.11.3
- deps: finalhandler@0.4.0
- deps: fresh@0.3.0
- deps: morgan@~1.6.0
- deps: serve-favicon@~2.3.0
- deps: serve-index@~1.7.0
- deps: serve-static@~1.10.0
- deps: type-is@~1.6.3
* deps: cookie@0.1.3
- perf: deduce the scope of try-catch deopt
- perf: remove argument reassignments
* deps: escape-html@1.0.2
* deps: etag@~1.7.0
- Always include entity length in ETags for hash length extensions
- Generate non-Stats ETags using MD5 only (no longer CRC32)
- Improve stat performance by removing hashing
- Improve support for JXcore
- Remove base64 padding in ETags to shorten
- Support "fake" stats objects in environments without fs
- Use MD5 instead of MD4 in weak ETags over 1KB
* deps: fresh@0.3.0
- Add weak `ETag` matching support
* deps: mkdirp@0.5.1
- Work in global strict mode
* deps: send@0.13.0
- Allow Node.js HTTP server to set `Date` response header
- Fix incorrectly removing `Content-Location` on 304 response
- Improve the default redirect response headers
- Send appropriate headers on default error response
- Use `http-errors` for standard emitted errors
- Use `statuses` instead of `http` module for status messages
- deps: escape-html@1.0.2
- deps: etag@~1.7.0
- deps: fresh@0.3.0
- deps: on-finished@~2.3.0
- perf: enable strict mode
- perf: remove unnecessary array allocations

3.20.3 / 2015-05-17
===================

Expand Down Expand Up @@ -1620,7 +1705,7 @@
* update commander
* jsonp: check if callback is a function
* router: wrap encodeURIComponent in a try/catch #1735 (@lxe)
* res.format: now includes chraset @1747 (@sorribas)
* res.format: now includes charset @1747 (@sorribas)
* res.links: allow multiple calls @1746 (@sorribas)

3.4.0 / 2013-09-07
Expand Down Expand Up @@ -1899,7 +1984,7 @@
* Added another example to content-negotiation
* Added `fresh` dep
* Changed: `res.send()` always checks freshness
* Fixed: expose connects mime module. Cloases #1165
* Fixed: expose connects mime module. Closes #1165

3.0.0beta2 / 2012-06-06
==================
Expand Down Expand Up @@ -1981,7 +2066,7 @@
* Added `req.ips`
* Added `req.fresh`
* Added `req.stale`
* Added comma-delmited / array support for `req.accepts()`
* Added comma-delimited / array support for `req.accepts()`
* Added debug instrumentation
* Added `res.set(obj)`
* Added `res.set(field, value)`
Expand Down
12 changes: 6 additions & 6 deletions package.json
Expand Up @@ -30,14 +30,14 @@
"accepts": "~1.2.7",
"content-disposition": "0.5.0",
"content-type": "~1.0.1",
"cookie": "0.1.2",
"cookie": "0.1.3",
"cookie-signature": "1.0.6",
"debug": "~2.2.0",
"depd": "~1.0.1",
"escape-html": "1.0.1",
"etag": "~1.6.0",
"escape-html": "1.0.2",
"etag": "~1.7.0",
"finalhandler": "0.3.6",
"fresh": "0.2.4",
"fresh": "0.3.0",
"merge-descriptors": "1.0.0",
"methods": "~1.1.1",
"on-finished": "~2.2.1",
Expand All @@ -46,7 +46,7 @@
"proxy-addr": "~1.0.8",
"qs": "2.4.2",
"range-parser": "~1.0.2",
"send": "0.12.3",
"send": "0.13.0",
"serve-static": "~1.9.3",
"type-is": "~1.6.2",
"vary": "~1.0.0",
Expand All @@ -58,7 +58,7 @@
"istanbul": "0.3.9",
"marked": "0.3.3",
"mocha": "2.2.5",
"should": "6.0.1",
"should": "7.0.1",
"supertest": "1.0.1",
"body-parser": "~1.12.4",
"connect-redis": "~2.3.0",
Expand Down
16 changes: 8 additions & 8 deletions test/res.send.js
Expand Up @@ -122,7 +122,7 @@ describe('res', function(){

request(app)
.get('/')
.expect('ETag', 'W/"3e7-8084ccd1"')
.expect('ETag', 'W/"3e7-VYgCBglFKiDVAcpzPNt4Sg"')
.expect(200, done);
})

Expand Down Expand Up @@ -194,7 +194,7 @@ describe('res', function(){

request(app)
.get('/')
.expect('ETag', 'W/"3e7-8084ccd1"')
.expect('ETag', 'W/"3e7-VYgCBglFKiDVAcpzPNt4Sg"')
.expect(200, done);
})

Expand Down Expand Up @@ -358,7 +358,7 @@ describe('res', function(){

request(app)
.get('/')
.expect('ETag', 'W/"c-5aee35d8"')
.expect('ETag', 'W/"c-ZUfd0NJ26qwjlKF4r8qb2g"')
.expect(200, done);
});

Expand All @@ -374,7 +374,7 @@ describe('res', function(){

request(app)
[method]('/')
.expect('ETag', 'W/"c-5aee35d8"')
.expect('ETag', 'W/"c-ZUfd0NJ26qwjlKF4r8qb2g"')
.expect(200, done);
})
});
Expand All @@ -390,7 +390,7 @@ describe('res', function(){

request(app)
.get('/')
.expect('ETag', 'W/"0-0"')
.expect('ETag', 'W/"0-1B2M2Y8AsgTpgAmY7PhCfg"')
.expect(200, done);
})

Expand All @@ -406,7 +406,7 @@ describe('res', function(){

request(app)
.get('/')
.expect('ETag', 'W/"3e7-8084ccd1"')
.expect('ETag', 'W/"3e7-VYgCBglFKiDVAcpzPNt4Sg"')
.expect(200, done);
});

Expand Down Expand Up @@ -488,7 +488,7 @@ describe('res', function(){

request(app)
.get('/')
.expect('ETag', '"Otu60XkfuuPskIiUxJY4cA=="')
.expect('ETag', '"d-Otu60XkfuuPskIiUxJY4cA"')
.expect(200, done);
})
})
Expand All @@ -505,7 +505,7 @@ describe('res', function(){

request(app)
.get('/')
.expect('ETag', 'W/"d-58988d13"')
.expect('ETag', 'W/"d-Otu60XkfuuPskIiUxJY4cA"')
.expect(200, done)
})
})
Expand Down
16 changes: 8 additions & 8 deletions test/utils.js
Expand Up @@ -5,23 +5,23 @@ var utils = require('../lib/utils');
describe('utils.etag(body, encoding)', function(){
it('should support strings', function(){
utils.etag('express!')
.should.eql('"zZdv4imtWD49AHEviejT6A=="')
.should.eql('"8-zZdv4imtWD49AHEviejT6A"')
})

it('should support utf8 strings', function(){
utils.etag('express❤', 'utf8')
.should.eql('"fsFba4IxwQS6h6Umb+FNxw=="')
.should.eql('"a-fsFba4IxwQS6h6Umb+FNxw"')
})

it('should support buffer', function(){
var buf = new Buffer('express!')
utils.etag(buf)
.should.eql('"zZdv4imtWD49AHEviejT6A=="');
.should.eql('"8-zZdv4imtWD49AHEviejT6A"');
})

it('should support empty string', function(){
utils.etag('')
.should.eql('"1B2M2Y8AsgTpgAmY7PhCfg=="');
.should.eql('"0-1B2M2Y8AsgTpgAmY7PhCfg"');
})
})

Expand Down Expand Up @@ -50,23 +50,23 @@ describe('utils.setCharset(type, charset)', function () {
describe('utils.wetag(body, encoding)', function(){
it('should support strings', function(){
utils.wetag('express!')
.should.eql('W/"8-b8aabac7"')
.should.eql('W/"8-zZdv4imtWD49AHEviejT6A"')
})

it('should support utf8 strings', function(){
utils.wetag('express❤', 'utf8')
.should.eql('W/"a-686b0af1"')
.should.eql('W/"a-fsFba4IxwQS6h6Umb+FNxw"')
})

it('should support buffer', function(){
var buf = new Buffer('express!')
utils.wetag(buf)
.should.eql('W/"8-b8aabac7"');
.should.eql('W/"8-zZdv4imtWD49AHEviejT6A"');
})

it('should support empty string', function(){
utils.wetag('')
.should.eql('W/"0-0"');
.should.eql('W/"0-1B2M2Y8AsgTpgAmY7PhCfg"');
})
})

Expand Down

0 comments on commit 3d2ecdd

Please sign in to comment.