Commit graph

268 commits

Author SHA1 Message Date
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