Skip to content

v3.0.0

Latest
Compare
Choose a tag to compare
@jonathanong jonathanong released this 28 Apr 00:40
· 8 commits to master since this release

This is a major release.

Breaking

  • Minimum node v18
  • Removes .redirect('back'), adds .back(fallback_url) @fl0w #1115
  • For .redirect(), don't render redirect values in anchor ref ff25eb4
  • req.origin should display the origin header if it exists, not the current hostname #1008. origin now aligns with the Origin header as used in CORS.
  • .body=<json> should not overwrite type if type already json #1120
  • Remove special ENOENT support #1861 - this is a big change and will require any file servers to adapt to this change for handling 404s / files not found
  • Removes generator deprecation messages. Generators are no longer supported. Koa no longer asserts if generators are used.
    Set content-length: 0 if body is explicitly set to null @ognjenjevremovic #1528
    Remove obsolete createAsyncCtxStorageMiddleware #1817
  • ctx.throw now requires a format of ctx.throw(status, error, properties). See: https://www.npmjs.com/package/http-errors

New

  • Support custom streams @KristapsR #1825
  • Support WHATWG response bodies #1830 @kravorkid
  • Use asyncLocalStorage to get current context from app, e.g.: const ctx = app.currentContext.

Fixes

  • Handle responses when socket is no longer writable @titanism @Azlond #1593
  • fix: Do not response Content-Length if Transfer-Encoding is defined #1562 @charlyzeng
  • fix: Set body to 'null' if ctx.type = 'json' and ctx.body = null #1059 @likegun
  • fix: can not get currentContext in error handler (#1758) (Gxkl <[email protected]>)
  • Fix exports.defaults in package.json #1630
  • Fix leaky handles in tests #1838
  • Fix body null checks #1814
  • Fix reformatting redirect URLs #1805 #1804
  • Fix passing ctx in error handler #1758
  • Avoid redos on host and protocol getter

Refactors

Dependencies

  • bump type-is@2
  • bump http-errors@2
  • bump [email protected]
  • bump statuses@2
  • bump supertest@7