Thiago Lagden
ee5af59f1f
replace apply by spread syntax ( #971 )
2017-04-23 16:14:16 -07:00
jongleberry
4816cd76f0
:arrow-up: deps
...
closes #939
2017-03-14 01:55:15 -07:00
Lee Bousfield
e6539e1cf2
Return middleware chain promise from callback()
( #848 )
...
The v2.x version of 8836cd3 on master.
2017-03-07 23:05:28 -08:00
jongleberry
e812339033
docs: create v2 Migration document ( #931 )
...
* Give v2 migration documentation its own document. Incorporate docs from #533
* Fix mis-capitalization of Koa
* Remove unnecessary Dependency section
* Hint at koa-convert enabled compatibility
* Add section on constructing with new
* Clarify es6 constructors are used
* Fix varying capitalization
* Restore mistakenly removed Dependency changes section
* v1.x should not receive feature updates
* Add next() to signature, add missing backticks
* docs++
2017-03-07 22:59:42 -08:00
jongleberry
e9d7abaf79
res: use http.ServerResponse._header when accessors exist ( #930 )
...
* Don't use http.ServerResponse._header when accessors exist
Structure of http.ServerResponse._header will change in future
Node versions. Avoid reading and setting it directly when
helpers exist.
* Add new header test case
* make things a little more strict
2017-03-07 22:59:24 -08:00
fengmk2
e452b68bd9
feat: set err.headerSent before app error event emit ( #919 )
2017-02-28 10:52:54 +08:00
Ilkka Oksanen
d740d9b2b1
Update the link to migration instructions ( #916 )
2017-02-26 21:41:14 +08:00
fengmk2
a7c4236728
fix: add named arrow function for request and response handlers ( #805 )
...
cherry-pick #804
2017-02-25 00:06:41 -06:00
Rui Marinho
7ae9c3e109
Fix malformed content-type header causing exception on charset get ( #898 )
2017-02-13 11:05:35 +08:00
iamchenxin
2db3b1b49a
Fix typo for accepts(). ( #863 )
...
it return {String|Array|false}, never return undeifined.
2016-12-07 00:22:11 +08:00
Avindra Goolcharan
2a16426afe
nit: fix grammar in generator deprecation warning ( #834 )
...
This fixes the tense of `will been` to `will be`
2016-10-17 17:45:06 +02:00
Adam Lau
21c0d823dd
fix: subdomains should be [] if the host is an ip ( #808 )
...
Closes : #775
2016-09-07 16:21:32 +08:00
Yiyu He
4338cb6c14
[breaking change] don't bind onerror to context ( #800 )
2016-08-29 11:18:30 +08:00
jongleberry
2abed6ec75
fix: res.flushHeaders() ( #795 )
...
* fix: res.flushHeaders()
* remove arg to flush headers
* fix tests for node v4 and v5
2016-08-10 12:15:48 -07:00
Yiyu He
23903e7ef4
fix(response): correct response.writable logic ( #782 )
2016-07-24 01:20:29 +08:00
Martin Iwanowski
d47d0f9619
fix broken link, fixes #741 ( #745 )
2016-05-27 07:41:22 +02:00
PlasmaPower
54e58d3523
req: Cache the request IP
2016-04-03 19:30:06 -07:00
Martin Iwanowski
0ac4ff00c6
Convert generator-mw with deprecation warning
2016-03-22 07:35:05 +01:00
dead_horse
39f058e11c
fix cookies' secure detect
2016-03-15 13:57:22 -07:00
Lee Bousfield
a440425dc2
Add support for headers in errors
2016-03-12 17:46:35 -07:00
Bartol Karuza
3d15c2409d
JSDoc question/suggestion on optional parameters
...
Hi, Webstorm keeps giving me warnings on the 'redirect' method, because the JSDoc specified two input parameters, both required. There is a JSDoc standard for optional parameters. What is your view on using these in KOA documentation?
http://usejsdoc.org/tags-param.html#optional-parameters-and-default-values
closes #661
2016-03-12 14:22:42 -08:00
Louis DeScioli
d74802dc70
Standardizes instances of removeHeader to remove
2016-03-12 14:19:27 -08:00
jongleberry
7373c7eca1
comments: remove vague TODOs
...
closes #576
2016-03-12 14:11:19 -08:00
Lee Bousfield
6a147726bd
Add support for flushing headers
2016-03-03 21:01:56 -07:00
Xiang Gao
897ad7aca8
fix the error message
2016-01-24 12:35:03 +08:00
pana
1e38b13a94
docs: update docs for koa v2
...
update readme and request, response toJSON method
update readme
update readme
update readme
update readme
update readme
update readme
update docs
update doc
pretty readme
update docs
fix then callback
2016-01-17 16:05:49 -08:00
Yanick Rochon
d134fff9e8
Fix issue when app.use() is called with empty value
2015-11-25 12:10:55 +08:00
Nicolae Vartolomei
61f7c6b5c5
Fix param tag on Application.use method
2015-11-14 15:46:29 +02:00
dead_horse
848a9c885b
ocd
2015-11-06 00:42:14 +08:00
dead_horse
08057e386a
ensure parseurl always working as expected
2015-11-04 15:08:49 +08:00
Slobodan Stojanovic
0470997854
Remove 'TODO' comment for this.res._headers
...
Node probably doesn't plan to change this so there's no point of having 'TODO' comment in the code.
2015-10-31 19:21:40 +01:00
TJ Holowaychuk
439f051776
Merge pull request #570 from koajs/fix-app-inspect
...
fix Application.inspect() – missing .proxy value. Closes #563
2015-10-31 11:15:09 -07:00
blaz
3560651bbc
Add usage of koa-convert for legacy middleware
...
closes #565
closes #538
2015-10-30 20:20:00 -07:00
TJ Holowaychuk
aa1fbbff4a
fix Application.inspect() – missing .proxy value. Closes #563
...
fix trailing comma
2015-10-29 09:56:15 -07:00
Slobodan Stojanovic
b08facb7bd
Fix indentation and add .eslint rules
...
closes #555
2015-10-29 09:55:34 -07:00
Felix Becker
ebb4850709
Remove co dependency
...
closes #558
closes #557
Change tests to use plain functions and promises
Add test
return promise in middleware
Change benchmarks to use plain functions and promises
typeerror
2015-10-27 16:24:25 -07:00
Tejas Manohar
ded7a17140
deprecate env-specific logging in v2
...
closes #561
2015-10-27 16:21:19 -07:00
Slobodan Stojanovic
dac250b3af
Refactor - EventEmitter is already exported by 'events' module
...
The 'events' module already exports 'EventEmitter' constructor function - https://github.com/nodejs/node/pull/2921
2015-10-24 17:30:25 +02:00
Slobodan Stojanovic
0df400fa60
Refactor application.js - use arrow function in callback
2015-10-24 16:19:56 +02:00
jongleberry
2e8cdab8bc
support async functions
...
closes #530
closes #415
2015-10-22 16:34:59 -07:00
jongleberry
16db0f60c4
eslint: add no-var rule
2015-10-22 15:46:47 -07:00
Santiago Sotomayor
0c438ed435
unset content-type when the type is unknown
...
closes #532
closes #536
2015-10-22 15:39:16 -07:00
Michaël Zasso
a157937969
lib: fix style issues
2015-10-13 09:23:57 +02:00
Tejas Manohar
132b32b287
get rid of instanceof hack in application constructor
2015-10-13 02:17:47 -05:00
Tejas Manohar
93ade5e2dd
refactor Application into a class
2015-10-13 01:19:42 -05:00
Robert Sköld
e900f0a44a
Use shorthand functions
...
closes #519
2015-10-12 00:00:41 -07:00
Tejas Manohar
91ecce1d76
use arrow fn to avoid var self = this
2015-10-11 21:22:33 -07:00
Tejas Manohar
ed19e67055
refactor to use ES6 template strings
...
replace string interp w/ templates in core
use string templating es6 in benchmarks
template strings in tests dir
2015-10-11 21:22:33 -07:00
Tejas Manohar
9f27c1c414
refactor to use ES6 const
...
change var to const for static require()'d modules
make constant var references in app use const keyword
refactor context to use es6 constants
refactor request to use es6 constants, let block-scope coming next
use const in response object for static refs
make context tests use es6 constants
experimental unit tests -> const
use const for static references in unit test over req
use const for static refs in res tests
update app tests to use const for static refs
make the context test use es6 constants for static refs
use constants in the README
es6 constants seem to work in --harmony on 0.12 too
use const's for immutable refs in benchmarks
ensure all JS files have blank newline at top
add newline to bottom of file where missing
add a webchat freenode link to irc channel
no need to assign error in catch{}-able test
app.silent option to turn off err logging
keep test env logging for backwards-compat
2015-10-11 21:22:33 -07:00
Tejas Manohar
96c1e0998f
don't use 'exports', only 'module.exports'
...
closes #513
2015-10-11 21:18:32 -07:00
Tejas Manohar
0b1b49cb8a
use strict in all .js files
...
closes #508
2015-10-11 16:08:32 -07:00
fengmk2
f875eb0c30
Merge pull request #486 from tejasmanohar/app_silent
...
app.silent option to turn off err logging
2015-10-09 11:22:58 +08:00
Tejas Manohar
6c19c41c09
keep test env logging for backwards-compat
2015-10-08 19:02:36 -05:00
Tejas Manohar
ea4754e332
ensure all JS files have blank newline at top
2015-10-05 18:18:03 -05:00
Tejas Manohar
c369b33b23
app.silent option to turn off err logging
2015-10-05 17:51:26 -05:00
C.T. Lin
85860587cc
implement ctx.origin
2015-09-20 23:49:37 +08:00
dead_horse
36a933375b
fix comment
2015-08-25 16:49:05 +08:00
gyson
1be333ca31
change respond() to a regular function
...
remove `yield* next` in lib/application, which caused annoy `A promise
was converted into a generator …` message.
benchmark result:
* when bench with native Promise, it has no impact for both stable and
experimental ones.
* when bench with Bluebird, it’s about 5-10% faster than original for
both stable and experimental ones.
closes #472
2015-08-23 13:55:20 -07:00
AlexeyKhristov
8804b7ba6f
add this.req check for querystring()
2015-08-22 14:40:36 -07:00
Sterling Williams
391650518f
Do not log on expected http errors
2015-08-22 14:39:38 -07:00
Aaron Heckmann
6392ee0407
return same object from request.query
...
Before this change, calling request.query when there was no querystring
resulted in a new object created and returned each time. If the resulting
object was ever changed, accessing request.query would not reflect it and
cause weird bugs.
2015-05-21 12:55:58 -07:00
dead_horse
c8eb5eefb1
make sure helpers return strict string
2015-04-29 01:44:02 +08:00
dead_horse
1c5cb6f691
feat: alias response.headers to response.header
2015-04-23 17:28:31 +08:00
dead_horse
b6aea969f8
non-error thrown, fixed #432
2015-04-14 10:34:55 +08:00
fengmk2
dd3a0fcdfa
make sure req.host and req.hostname return strict string
...
Should return empty string when no host present.
2015-03-30 17:44:32 +08:00
fengmk2
8b14b91bae
remove body empty detect
2015-03-29 14:40:09 +08:00
fengmk2
1edd6ec69a
test: improve test coverage for application and response
2015-03-29 14:40:09 +08:00
Jonathan Ong
c5545cd918
add experimental async function support
2015-02-14 17:33:08 -08:00
Douglas Christopher Wilson
9dd99f5da2
Parse Content-Type with "content-type" instead of "media-typer"
2015-02-07 21:24:04 -05:00
Jonathan Ong
5b7587bb7e
use Object.setPrototypeOf() instead of __proto__
2015-02-01 16:39:44 -08:00
Jesus Rodriguez
68843e0cb3
Remove unused imports and exports
2015-01-29 15:39:06 -08:00
Jesús Rodríguez Rodríguez
6c340455f8
Change request's "ips" regex to match others.
...
So I am in this silly quest of cloning the repo, deleting all the code on it and rewriting it again step by step to pass the tests. It is a acceptable way to learn how koa works.
Anyway, I saw that the regex used in `ips` doesn't match the others on the file, so I thought it would be good to change it.
2015-01-29 17:51:09 +01:00
TJ Holowaychuk
255a39b876
refactor res.append()
...
OCDOCDOCD
2015-01-27 10:14:57 -08:00
dead_horse
5a3f32dfdd
Add res.append(field, val) to append headers
2015-01-26 02:20:08 +08:00
Rui Marinho
d108926f46
Fix url.format usage of path on node@0.11.15
...
node@0.11.15 was released with a patch that adds support for `path` to
url.format
(d312b6d15c
).
However, this broke `npm install` for git+ssh urls and as such has been
reverted on io.js, making it work like on node@0.11.14 again.
913addbff5
2015-01-23 02:09:21 +00:00
fengmk2
3e66157472
ctx.request.href: get full request url, include protocol
, host
and originalUrl
...
Useful on those scenes need current full request url, like `OAuth`.
2014-12-27 14:17:00 -08:00
TJ Holowaychuk
e4076ce930
remove x-powered-by. Closes #372
2014-12-04 01:01:57 -08:00
zensh
28ec7892a8
remove unnecessary "require('http')"
2014-11-29 09:42:01 +08:00
dead_horse
57eb6a10df
set content-type for redirect when accpect plain
2014-11-27 09:25:44 -08:00
TJ Holowaychuk
b854d00363
Merge pull request #366 from MatthewMueller/master
...
add: ctx.locals as a recommended namespace for passing information to the frontend
2014-11-18 08:19:19 -08:00
Matthew Mueller
6847fe68bd
added: ctx.state as the recommended namespace for passing information through middleware and routes.
2014-11-18 00:54:14 -08:00
dead_horse
3f183a196b
upgrade co@4
2014-11-17 21:21:00 +08:00
dead_horse
eff4886cd8
ocd
2014-11-16 21:52:14 +08:00
dead_horse
efdd7d3716
less strict for status, close #350
...
add res.message[=]
2014-10-09 23:20:53 +08:00
Jonathan Ong
2f0fe55ae3
.throw() -> http-errors, .assert() -> http-assert
2014-09-20 10:46:28 -07:00
fengmk2
cca2438f64
ctx.attachment support no-ascii filename
2014-09-19 13:46:08 +08:00
TJ Holowaychuk
7b3e3cbad5
add fn assertion to app.use(). Closes #337
2014-08-20 13:28:34 -07:00
Jonathan Ong
9455726c00
finished -> on-finished
...
removes the writable test because it’s fake and there are tests for
on-finished for this case
2014-08-16 02:58:06 -07:00
Jonathan Ong
920909c546
dethroy -> destroy
2014-08-14 23:34:25 -07:00
Ian Storm Taylor
5931714bd8
make the second argument to throw properly optional
2014-08-12 13:19:14 -07:00
dead_horse
f6626967b2
ignore props.status in ctx.throw
2014-08-09 13:38:54 +08:00
Ian Storm Taylor
bcac468f7c
add the ability to pass props
to context.throw
2014-08-08 12:37:04 -07:00
TJ Holowaychuk
f9eb219ecf
Merge pull request #330 from dead-horse/onerror-status
...
Onerror status
2014-08-07 19:04:10 -07:00
dead_horse
fa5948cca3
do not expose when err.status not valid
2014-08-08 10:02:24 +08:00
dead_horse
5ca9f451a7
alias request.headers as request.header
2014-08-07 00:04:21 +08:00
dead_horse
e2f61595b8
fix err.status invalid lead to uncaughtException
2014-08-06 21:32:35 +08:00
Jonathan Ong
1605f33760
add context.inspect(), cleanup app.inspect()
...
closes #323 closes #250
2014-08-02 18:24:53 -07:00
dead_horse
fd019688ec
use parseurl
2014-07-14 17:57:03 +08:00
dead_horse
5b18f8bab0
parse req.type by media-typer
2014-07-09 23:52:56 +08:00
Jonathan Ong
690604b6d2
remove this.error()
...
it’s been deprecated for long enough
2014-07-06 02:36:12 -07:00