- fix: derive protocol from original request url.
- deps: support Deno
1.32.4
, std0.183.0
(where possible), and other minor dep upgrades.
- fix: support
ReadableStream
inres.send()
- fix: replace
Deno.statSync
withDeno.stat
to allow views to be used on Deno Deploy
- fix: improve error messages thrown from
read
module
- deps: support Deno
1.25.0
, std0.153.0
, and other minor dep upgrades.
- deps: support Deno
1.21.1
, std0.137.0
, and other minor dep upgrades.
- [#164] Update HTTPSOptions to make it compatible with Deno 1.20.1 (#165) @AEtheve
- fix: handle new OS error thrown for long filenames on windows
- test: compensate for WebSocket messages fired after close resulting in leaking timer ops
- deps: support Deno
1.19.3
, std0.129.0
, and other minor dep upgrades. - [#162] remove usage of
Deno.Buffer
- [#156] Replace deprecated Deno.readAll (#157) @yourfriendoss
- deps: support Deno
1.19.0
, std0.126.0
, and other minor dep upgrades.
- fix: remove unnecessary argument to
req.upgrade()
- [#154] Implement WebSocket support. (#155) @xyzshantaram
- deps: support Deno
1.17.2
, std0.120.0
, and other minor dep upgrades.
- [#145] [#151] don't close file before fully read to stream
- deps: support Deno
1.17.1
, std0.119.0
, and other minor dep upgrades.
- feat: support Deno
1.16.3
, std0.116.0
, and other minor dep upgrades. - feat: adopt
std/http/server.ts
native server.
- feat: support Deno
1.16.1
, std0.114.0
, and other minor dep upgrades. - [#147] bring
createError()
method into Opine due to outdated dependencies in unmaintained upstream module.
- feat: support Deno
1.15.3
, std0.113.0
, and other minor dep upgrades.
- [#143] upgrade to support deno v1.14.0 (#142)
- feat: support Deno
1.13.1
and std0.105.0
.
- [#137] Move to skypack for npm deps (#138)
- docs: fix broken middleware links in request docs (#136)
- [#102] Handle broken pipe errors gracefully in opine (#135)
- feat: support Deno
1.12.2
and std0.103.0
.
- [#132] std lib and deno upgrade (#133)
- feat: support Deno
1.12.0
and std0.101.0
.
- test: upgrade superdeno version.
- feat: upgrade std
0.100.0
. - ci: downgrade support to Deno
1.11.1
due to bug withOPTIONS
requests introduced in1.11.2
. REF: denoland/deno#10990. - chore: upgrade examples dependencies to latest versions.
- fix: version typo
- ci: bump eggs CLI to
0.3.8
- ci: bump eggs CLI to
0.3.7
- [NO-ISSUE] Support Deno 1.11.1 and std 0.99.0 (#131)
- [#128] add res.removeHeader (#129)
- [#126] add setHeader alias for res.set (#127)
- feat: support Deno
1.10.2
and std0.97.0
- chore: some lint fixes
- ci: upgrade eggs CLI to
0.3.6
and drop checks from workflow.
- feat: support Deno
1.9.2
and std0.95.0
- fix: format lockfile to prevent Eggs CLI failure.
- ci: downgrade eggs publish to Deno
1.8.3
due to bug in Eggs CLI.
- feat: support Deno
1.9.0
and std0.93.0
- Add GraphQL example (#109)
- docs: add new deno vis badges
- docs: simplify contributing
- [#105] Updates react example for deno 1.7.5 (#106)
- feat: Support Deno
1.8.0
and std0.89.0
- chore: upgrade dependencies, replace evt dep with std library EventEmitter
- refactor: replace
denoflate
library withcompress
library to remove net requirement as a result of wasm usage. - chore: upgrade to official denoland vscode plugin.
- feat: Support Deno
1.6.3
and std0.83.0
- [#97] Support
--no-check
flag (#99) - feat: Support Deno
1.6.2
and std0.82.0
- ci: Fix typedoc to version
0.19.2
- [#26] Implement request body proxy (#95)
Breaking: req.body
will now be overwritten by body parsers. To retrieve
the original body value, use req.raw
.
- [#75] File options support (#85)
- feat: upgrade Opine to support Deno 1.6.1 and std 0.81.0
- feat: upgrade superdeno to 3.0.0
- ci: upgrade eggs cli to 0.3.3
- feat: upgrade Opine to support Deno 1.6.0 and std 0.80.0
- feat: upgrade superdeno and evt modules
- feat: upgrade Opine to support Deno 1.5.4 and std 0.79.0
- [#72] Implement trust proxy setting (#84)
- [#52] Support gzip and deflate content-encoding (#81)
- [#56] Add cors example (#82)
- [#25] Implement MVC example (#83)
- revert(ci): downgrade to [email protected] in CI
- [#73] Implement req.range() API (#78)
- [#71] Query parser setting support (#79)
- [#74] res.cookie & res.clearCookie express style overloads (#80)
- feat(deps): upgrade to Deno 1.4.4, std 0.73.0 and few other dep upgrades
- chore(ci): upgrade to [email protected] in CI
- chore: upgrade to [email protected] in CI
- feat: upgrade Opine to support Deno 1.4.1 and std 0.70.0
- [#69] Upgrade Opine to support Deno 1.4.0 and std 0.69.0 (#70)
- (fix) deno 1.4.0 : export type (#67)
- [#61] Add an example of using the Eta template engine (#65)
- chore: upgrade supported Deno and std module versions to
1.3.3
and0.68.0
- [#62] Remove scripts to run examples remotely where invalid (#63)
- chore: upgrade supported Deno and std module versions to
1.3.1
and0.66.0
. - chore: upgrade superdeno for Deno 1.3.1 bugfix.
- test: null responses are now exposed as null in superdeno (not empty strings).
- [#58] Broken redirect directory listener (#60)
- [#58] Windows serveStatic file path handling fix (#59)
- chore: upgrade supported Deno and std module versions to
1.3.0
and0.65.0
. - chore: upgrade deps with non-breaking minor / patch upgrades available.
- docs: remove references to importing by branch name.
- fix: React SSR example types after removal from deno.land/x
- [NO-ISSUE] Fixed typo in readme example (#57)
- [#50] Add app param docs (#55)
- chore: fix workflow step name
- docs: remove reference to importing commit or branch from readme as not supported by Deno registry v2.
- fix: use fixed version of opine-http-proxy in examples.
- chore: fix eggs link command in workflow
- chore: upgrade supported Deno and std module versions to
1.2.2
and0.63.0
. - chore: fix modules to tagged versions as commits and branches are no longer supported by Deno registry.
- [#21] Add app param API (#46)
- [#44] react and dejs examples not working (#47)
- chore: formatting fix.
- [#42] Incorrect URL argument type (#43).
- feat: upgrade Deno to
1.1.3
, std to0.60.0
and latest of other deps.
- [#38] Array support for
res.append
(#23). - fix: update lockfile for breaking sub-dependency.
- [#22] Add res.redirect API (#36).
- docs: add React example.
- [#34] Capture errors from async routes (#33).
- fix: examples permission instructions.
- fix: proxy example.
- [#20] Add instructions for nest.land package registry (#35).
- fix: several minor bugfixes.
- test: add serious test coverage.
- feat: bump Deno and std versions.
- feat: [#24] Object and array support for
res.set()
(#28). - chore: [#29] Automate typedoc publish (#30).
- chore: [#16] Benchmark workflow name fix (#31).
- chore: update dependencies.
- feat: add render and engine public APIs.
- feat: add repository field to
egg.json
. - chore: upgrade eggs CLI in CI.
- feat: integration with https://nest.land package repository.
- feat: move to "main" branch
- fix: lockfile dependencies.
- fix: handling of empty bodies (Content-Length: 0) within body parsers.
- chore: update support matrix to last version of v1.0.x and include v1.1.0.
- fix:
res.sendFile()
not correctly resolving paths, impactingres.download()
and other APIs that use it internally. - feat: decouple the base Opine route handler from the server it starts so can
use Opine as a route handler within other libraries / frameworks as middleware
with a server that is not started via
app.listen()
. - feat: attempt to close the server within
app.listen()
if an exception occurs in the server connection handling loop.
- feat: support passing no parameters to
app.listen()
and being automatically assigned a port.
- fix: set versions on all deps to prevent adopting breaking changes from
master
. - feat: minor upgrade of the
std
library third party module imports to0.53.0
.
- feat: support express style callback on
app.listen()
.
- refactor: Replace internal ports of NPM modules with tested third party module equivalents.
- feat: deliver content negotiation with the
res.format()
andres.vary()
methods. - feat: flesh out majority of missing
request
methods and properties:req.accepts()
req.acceptsCharsets()
req.acceptsEncodings()
req.acceptsLanguages()
req.is()
req.protocol
req.secure
req.subdomains
req.path
req.hostname
req.stale
req.xhr
- chore: update to types.
- chore: add a content negotiation example to the examples.
- chore: update the docs with the new methods / properties.
- fix: better types for
RouterConstructor
.
- fix: better types for
Router
.
- fix: only set
x-powered-by
header if it is enabled as a setting. - feat: add missing methods to
response.md
API docs:unset
andetag
. - chore: audit of feature gap between Express and Opine. Available as TODOs in the code.
- fix: missing location method type
- feat: add res.location usage example
- feat: update API docs pointer out use of res.location()
- fix: major bug with the body parsers.
req.body
is protected in Deno and thus cannot overwrite. We could look to use a proxy like method in the future. For now we populatereq.parsedBody
instead. - docs: update middlewares and request docs to cover the use of
req.parsedBody
. - test: update body-parser unit tests.
- docs: update examples to include
urlencoded
,text
andraw
body parser examples. - docs: add
README.md
to the examples + improve each examples'README.md
.
- fix: formatting bug.
- feat: allow Express-like
port
passing signature forapp.listen()
.
- feat: initial serveStatic implementation
- refactor: clean up examples.
- refactor: remove superfluous verification code given we have static type checking.
- refactor: remove unnecessary file path parsing.
- chore: remove old typings folder.
- chore: update docs, lockfile etc.
- feat: add benchmarks github action
- feat: update API docs with
serveStatic
middleware section
[email protected]
->[email protected]
to pull in bug fixes for Deno>=1.0.2
.- Moved from
DENO_SUPPORTED_VERSION
toDENO_SUPPORTED_VERSIONS
- Added support for
v1.0.2
to CI workflow (v1.0.1
not supported due to breaking error in Deno).
json
,text
,raw
andurlencoded
body parser middlewares.
- Test coverage for majority of code that doesn't require supertest.
- fix: bug in router when next is undefined
- fix: bug in url parser for FQDN and other combinations
- fix: bug in etag generator not decoding Uint8Arrays
- Etags and fresh checking.
request.get()
andrequest.fresh
.- Types overhaul.
- Large refactor of import / export strategy.
- Bug fixes.
- Export query middleware
- Convert finalHandler to ts file.
- Some additional properties of Response type.
- Ported hello world, download, error and multi-router examples from Express.
- Event emitter added to application.
- Use same pathToRegex version as Express (copied locally as can't be imported).
- Fix filepath in
res.sendFile
. - Fix the mounting of routers onto the app (at the cost of performance - to be remedied).
Request
type.- Improvements to the final handler.
- Initial port of ExpressJS to Deno.