UNPKG

35.3 kBMarkdownView Raw
1
22.15.3 / 2024-04-11
3==================
4
5**fixes**
6 * [[`1fad597`](http://github.com/koajs/koa/commit/1fad5974dc2b7c5baef3e7438679911826ec7398)] - fix: require URL from 'url' module (#1809) (fengmk2 <<suqian.yf@antgroup.com>>)
7
82.15.2 / 2024-03-21
9==================
10
11**fixes**
12 * [[`94e8def`](http://github.com/koajs/koa/commit/94e8def4bf6a2bdabe96583de989f03d75106648)] - fix: handle upper case protocol like HTTP or HTTPS (#1806) (fengmk2 <<suqian.yf@antgroup.com>>)
13
142.15.1 / 2024-03-15
15==================
16
17**fixes**
18 * [[`2510b0b`](http://github.com/koajs/koa/commit/2510b0b12285b96b5d3bbe375c7fd283df4b2a9d)] - fix: formatting redirect url on http(s) protocol url (#1803) (fengmk2 <<fengmk2@gmail.com>>)
19
202.15.0 / 2023-12-29
21==================
22
23**features**
24 * [[`1684a8f`](http://github.com/koajs/koa/commit/1684a8fd869d8fa5dfb5db4775c99cfc654bc003)] - feat: bump cookies v0.9.0 for CHIPS (#1791) (Noah Gao <<noahgaocn@outlook.com>>)
25
262.14.2 / 2023-04-12
27==================
28
29**fixes**
30 * [[`6b60fa6`](http://github.com/koajs/koa/commit/6b60fa6031dfa826c3268e655f193dab78f0705b)] - fix: can not get currentContext in error handler (#1757) (Gxkl <<gxkl203@gmail.com>>)
31
322.14.1 / 2022-12-07
33==================
34
35**fixes**
36 * [[`cb92bc9`](http://github.com/koajs/koa/commit/cb92bc98939bd71fd3c01e2dc681caf6545baa38)] - fix: should export createAsyncCtxStorageMiddleware function on application (#1724) (fengmk2 <<fengmk2@gmail.com>>)
37
382.14.0 / 2022-12-06
39==================
40
41**features**
42 * [[`a293122`](http://github.com/koajs/koa/commit/a29312212839c6f0418152d2a2cd3bf3fd3ee5e4)] - feat: support asyncLocalStorage (#1721) (fengmk2 <<fengmk2@gmail.com>>)
43
442.13.4 / 2021-10-19
45==================
46
47**fixes**
48 * [[`dbc9c5a`](http://github.com/koajs/koa/commit/dbc9c5a47e2b2799cab403186fdb010df5df6f67)] - fix: Do not response Content-Length if Transfer-Encoding is defined (#1602) (Yiyu He <<dead_horse@qq.com>>)
49
502.13.3 / 2021-09-24
51==================
52
53**fixes**
54 * [[`a37a2e5`](http://github.com/koajs/koa/commit/a37a2e5eec8997661a35ca10210f1d9950976041)] - fix: compatible with node-v12.19.0 & earlier (#1590) (hyj1991 <<yeekwanvong@gmail.com>>)
55
562.13.2 / 2021-09-24
57==================
58
59**fixes**
60 * [[`04acf02`](http://github.com/koajs/koa/commit/04acf0281a5dcb3fd463d4c8537984c686d0b96f)] - fix: nodejs deprecated api <DEP0148> (#1585) (#1588) (hyj1991 <<yeekwanvong@gmail.com>>)
61
62**others**
63 * [[`3435e78`](http://github.com/koajs/koa/commit/3435e7864a59cca2835ebaad96c4eda801b99b24)] - lint++ (jongleberry <<jonathanrichardong@gmail.com>>)
64 * [[`2cd6618`](http://github.com/koajs/koa/commit/2cd66182f46965f1d824c24826e85df251cca3d2)] - Fix grammar mistake (#1527) (Matheus Souza <<37983247+souzasmatheus@users.noreply.github.com>>)
65 * [[`16ab46e`](http://github.com/koajs/koa/commit/16ab46e9f2b5411fd1c50312ac03719f0a90df61)] - chore: upgrade koa-convert dependency to ^2.0.0 (#1535) (Christian Rodemeyer <<atombrenner@users.noreply.github.com>>)
66 * [[`65113ca`](http://github.com/koajs/koa/commit/65113ca38af634e4b1002d5bc40917cc09a7b7c6)] - Fix jsdoc types for constructor (#1541) (Piotr Kuczynski <<piotr.kuczynski@gmail.com>>)
67 * [[`03e6317`](http://github.com/koajs/koa/commit/03e6317df24d2dce0c1f08869326149f766f1e41)] - :arrow_up: debug (jongleberry <<jonathanrichardong@gmail.com>>)
68 * [[`b37a2d0`](http://github.com/koajs/koa/commit/b37a2d09c137d9a553a0bdf8589b60c7f6425160)] - :arrow_up: eslint dependencies (jongleberry <<jonathanrichardong@gmail.com>>)
69 * [[`4a410cc`](http://github.com/koajs/koa/commit/4a410cc2fbd923868cac6a622f12cc652586abee)] - migrate assert.deepEqual => .deepStrictEqual (jongleberry <<jonathanrichardong@gmail.com>>)
70 * [[`4545b59`](http://github.com/koajs/koa/commit/4545b59aa521e377a4ebb0ccbb8abec01981fbf4)] - test: switch tests to jest (jongleberry <<jonathanrichardong@gmail.com>>)
71 * [[`596cfd5`](http://github.com/koajs/koa/commit/596cfd542ccd1d89d97453e29cf499d49a82e743)] - migrate assert.strict => .strictEqual (jongleberry <<jonathanrichardong@gmail.com>>)
72 * [[`be3e8b6`](http://github.com/koajs/koa/commit/be3e8b68ab58d469f0f450284528dbef32e2d7ba)] - test: switch to github actions (jongleberry <<jonathanrichardong@gmail.com>>)
73 * [[`a2570e3`](http://github.com/koajs/koa/commit/a2570e3ee622cfa5214c2f756ea03b3b7143dbf7)] - package: update bench scripts (jongleberry <<jonathanrichardong@gmail.com>>)
74 * [[`000acf0`](http://github.com/koajs/koa/commit/000acf06ab3e37006569addc8ace5c0a4365daa1)] - npm: enable package-lock (jongleberry <<jonathanrichardong@gmail.com>>)
75 * [[`47fdbca`](http://github.com/koajs/koa/commit/47fdbca8b1c3999c5726f54531f8b47640a65a6f)] - delete benchmarks (jongleberry <<jonathanrichardong@gmail.com>>)
76 * [[`0056f90`](http://github.com/koajs/koa/commit/0056f901e89fd0781067b2c9592fd5909f9ba94a)] - Create dependabot.yml (jongleberry <<jonathanrichardong@gmail.com>>)
77 * [[`698ce0a`](http://github.com/koajs/koa/commit/698ce0afbfac6480400625729a4b8fc4b4203fdc)] - test: fix typo in status.js (Ikko Ashimine <<eltociear@gmail.com>>)
78 * [[`eb51cf5`](http://github.com/koajs/koa/commit/eb51cf5fb35b39592a050b25fd261a574f547cfa)] - doc: app.keys needs to be long enought and random (#1520) (Yiyu He <<dead_horse@qq.com>>)
79
802.13.1 / 2021-01-04
81==================
82
83**fixes**
84 * [[`b5472f4`](http://github.com/koajs/koa/commit/b5472f4cbb87349becae36b4a9ad5f76a825abb8)] - fix: make ESM transpiled CommonJS play nice for TS folks, fix #1513 (#1518) (miwnwski <<m@iwnw.ski>>)
85 * [[`68d97d6`](http://github.com/koajs/koa/commit/68d97d69e4536065504bf9ef1e348a66b3f35709)] - fix: fixed order of vulnerability disclosure addresses (niftylettuce <<niftylettuce@gmail.com>>)
86
87**others**
88 * [[`b4398f5`](http://github.com/koajs/koa/commit/b4398f5d68f9546167419f394a686afdcb5e10e2)] - correct verb tense in doc (#1512) (Matan Shavit <<71092861+matanshavit@users.noreply.github.com>>)
89 * [[`39e1a5a`](http://github.com/koajs/koa/commit/39e1a5a380aa2bbc4e2d164e8e4bf37cfd512516)] - fixed multiple grammatical errors in docs. (#1497) (Hridayesh Sharma <<vyasriday7@gmail.com>>)
90 * [[`aeb5d19`](http://github.com/koajs/koa/commit/aeb5d1984dcc5f8e3386f8f9724807ae6f3aa1c4)] - docs: added niftylettuce@gmail.com to vulnerability disclosure (niftylettuce <<niftylettuce@gmail.com>>)
91 * [[`6e1093b`](http://github.com/koajs/koa/commit/6e1093be27b41135c8e67fce108743d54e9cab67)] - docs: remove babel from readme (#1494) (miwnwski <<m@iwnw.ski>>)
92 * [[`38cb591`](http://github.com/koajs/koa/commit/38cb591254ff5f65a04e8fb57be293afe697c46e)] - docs: update specific for auto response status (AlbertAZ1992 <<ziyuximing@163.com>>)
93 * [[`2224cd9`](http://github.com/koajs/koa/commit/2224cd9b6a648e7ac2eb27eac332e7d6de7db26c)] - docs: remove babel ref. (#1488) (Imed Jaberi <<imed_jebari@hotmail.fr>>)
94 * [[`d51f983`](http://github.com/koajs/koa/commit/d51f98328c3b84493cc6bda0732aabb69e20e3a1)] - docs: fix assert example for response (#1489) (Imed Jaberi <<imed_jebari@hotmail.fr>>)
95 * [[`f8b49b8`](http://github.com/koajs/koa/commit/f8b49b859363ad6c3d9ea5c11ee62341407ceafd)] - chore: fix grammatical and spelling errors in comments and tests (#1490) (Matt Kubej <<mkubej@gmail.com>>)
96 * [[`d1c9263`](http://github.com/koajs/koa/commit/d1c92638c95d799df2fdff5576b96fc43a62813f)] - deps: update depd >> v2.0.0 (#1482) (imed jaberi <<imed_jebari@hotmail.fr>>)
97
982.13.0 / 2020-06-21
99==================
100
101**features**
102 * [[`bbcde76`](http://github.com/koajs/koa/commit/bbcde76f5cb5b67bbcd3201791cf0ef648fd3a8b)] - feat: support esm (#1474) (ZYSzys <<zhangyongsheng@youzan.com>>)
103
104**others**
105 * [[`20e58cf`](http://github.com/koajs/koa/commit/20e58cf3e4f20fc5d5886df1d0ac6dd8c33bd202)] - test: imporve coverage to 100% (dead-horse <<dead_horse@qq.com>>)
106 * [[`4a40d63`](http://github.com/koajs/koa/commit/4a40d633c4b4a203c6656078f9952ccef65c5875)] - build: use prepare instead of prepublish (dead-horse <<dead_horse@qq.com>>)
107 * [[`226ba8c`](http://github.com/koajs/koa/commit/226ba8c8e81e83da48e7bf137be3f146d03f40b8)] - build: use prepublish instead of prepack (dead-horse <<dead_horse@qq.com>>)
108
1092.12.1 / 2020-06-13
110==================
111
112**fixes**
113 * [[`e2030c7`](http://github.com/koajs/koa/commit/e2030c7249c7ae24e28158d8eae405a02fefc9f8)] - fix: Improve checks for Error in onerror handlers (#1468) (Julien Wajsberg <<felash@gmail.com>>)
114
115**others**
116 * [[`5208c5e`](http://github.com/koajs/koa/commit/5208c5e15d35b3653fce6b8ed68d09865abea843)] - chore: Use single console.error() statement in error handler (#1471) (Mike Vosseller <<michael.vosseller@gmail.com>>)
117
1182.12.0 / 2020-05-18
119==================
120
121**features**
122 * [[`0d2f421`](http://github.com/koajs/koa/commit/0d2f421c265350d3d84e1bc261572954479f27d3)] - feat: error handler treat err.statusCode as the same as err.status (#1460) (Vijay Krishnavanshi <<vijaykrishnavanshi@gmail.com>>)
123 * [[`8d52105`](http://github.com/koajs/koa/commit/8d52105a34234be9e771ff3b76b43e4e30328943)] - feat: allow bodyless responses for non empty status codes (#1447) (ejose19 <<8742215+ejose19@users.noreply.github.com>>)
124
125**others**
126 * [[`faeaff5`](http://github.com/koajs/koa/commit/faeaff5c149a81a188ab8e5af0b994029e45acbb)] - fox: remove `error-inject` and fix error handling (#1409) (Konstantin Vyatkin <<tino@vtkn.io>>)
127 * [[`f7c732f`](http://github.com/koajs/koa/commit/f7c732fd06f724505e9090add4d977e667da55a8)] - docs: fixed incorrect onerror example (#1459) (Paul Annekov <<paul.annekov@gmail.com>>)
128 * [[`143d8f7`](http://github.com/koajs/koa/commit/143d8f72f2a232b4c97eac00e7811015911e4f7c)] - Always use strict equality. (#1225) (Yazan Medanat <<medanat@gmail.com>>)
129 * [[`6b6b0dd`](http://github.com/koajs/koa/commit/6b6b0ddf7aff073e65493c6efaffab8331c0331c)] - docs(api): add app.use chainability note (#1449) (Zac Anger <<zac@zacanger.com>>)
130 * [[`8ddab48`](http://github.com/koajs/koa/commit/8ddab48cbdbca1e6d1cc8c3ddae45491db524d51)] - docs: Document response status with empty body (#1445) (Marc-Aurèle DARCHE <<152407+madarche@users.noreply.github.com>>)
131 * [[`7deedb2`](http://github.com/koajs/koa/commit/7deedb235274223f1b9da46dee296545b23598de)] - docs: Updating context.md with the latest cookies opts (#1433) (Brad Ito <<phlogisticfugu@users.noreply.github.com>>)
132 * [[`3e97a10`](http://github.com/koajs/koa/commit/3e97a106bb846d9337737011bb85149ddd797229)] - docs(links): remove Google+ link (#1439) (laffachan <<45162759+laffachan@users.noreply.github.com>>)
133 * [[`eda2760`](http://github.com/koajs/koa/commit/eda27608f7d39ede86d7b402aae64b1867ce31c6)] - build: Drop unused Travis sudo: false directive (#1416) (Olle Jonsson <<olle.jonsson@gmail.com>>)
134
1352.11.0 / 2019-10-28
136==================
137
138**features**
139 * [[`422e539`](http://github.com/koajs/koa/commit/422e539e8989e65ba43ecc39ddbaa3c4f755d465)] - feat: support app.proxyIPHeader and app.maxIpsCount to make ctx.ips more security (Yiyu He <<dead_horse@qq.com>>)
140 * [[`d48d88e`](http://github.com/koajs/koa/commit/d48d88ee17b780c02123e6d657274cab456e943e)] - feat: implement response.has (#1397) (Konstantin Vyatkin <<tino@vtkn.io>>)
141
142**others**
143 * [[`4dc56f6`](http://github.com/koajs/koa/commit/4dc56f6d04e8f5fe12ba53a8a776653b3d7b60ed)] - chore: update ESLint and plugins/configs (#1407) (Konstantin Vyatkin <<tino@vtkn.io>>)
144 * [[`be7d334`](http://github.com/koajs/koa/commit/be7d334778481639294cdf87f5c359a230aeb65b)] - chore: removes code duplication at handling HEAD method (#1400) (Konstantin Vyatkin <<tino@vtkn.io>>)
145 * [[`f155785`](http://github.com/koajs/koa/commit/f155785e2bb42b5ddf0a8156401c6dafdf57ba8b)] - chore: support `writableEnded` (#1402) (Konstantin Vyatkin <<tino@vtkn.io>>)
146 * [[`b968688`](http://github.com/koajs/koa/commit/b968688afe2c727ae141f50aa983d481dbc1dbbf)] - chore: add FUNDING.yml (#1403) (Konstantin Vyatkin <<tino@vtkn.io>>)
147 * [[`4f96829`](http://github.com/koajs/koa/commit/4f968298f97394e488297ec32c8e927a3a322076)] - chore: remove isJSON in res.length (#1399) (Konstantin Vyatkin <<tino@vtkn.io>>)
148 * [[`8be5626`](http://github.com/koajs/koa/commit/8be5626bbb54e6c899a1b71d22411709126d9fea)] - build: enable codecov partial coverage and use bash uploader (#1396) (Konstantin Vyatkin <<tino@vtkn.io>>)
149 * [[`ef5c43b`](http://github.com/koajs/koa/commit/ef5c43bcbcf31819e032c3b7ae7654b7f8e9358b)] - chore: use rest params (#1393) (Konstantin Vyatkin <<tino@vtkn.io>>)
150
1512.10.0 / 2019-10-12
152==================
153
154**features**
155 * [[`d7f7f77`](http://github.com/koajs/koa/commit/d7f7f77689e2eaef050686be2bdf3e72881a79ac)] - feat: support sameSite=none cookies (bump cookies dependency) (#1390) (Filip Skokan <<panva.ip@gmail.com>>)
156
1572.9.0 / 2019-10-12
158==================
159
160**features**
161 * [[`2d1c598`](http://github.com/koajs/koa/commit/2d1c5981869e0fe6f5bc71b5c5582accfd125cc6)] - feat: export HttpError from http-errors library (Micheal Hill <<micheal.hill@trunkplatform.com>>)
162
163**others**
164 * [[`cf70dbc`](http://github.com/koajs/koa/commit/cf70dbc6d2ba62bf1eb12b563dd5ecd27af6e2be)] - Chore: Use https in readme (#1389) (谭九鼎 <<109224573@qq.com>>)
165
1662.8.2 / 2019-09-28
167==================
168
169**fixes**
170 * [[`54e8fab`](http://github.com/koajs/koa/commit/54e8fab3e3d907bbb264caf3e28a24773d0d6fdb)] - fix: encode redirect url if not already encoded (#1384) (fengmk2 <<fengmk2@gmail.com>>)
171
172**others**
173 * [[`817b498`](http://github.com/koajs/koa/commit/817b49830571b45a8aec6b1fc1525434f5798c58)] - test: fix body test (#1375) (Robert Nagy <<ronagy@icloud.com>>)
174 * [[`f75d445`](http://github.com/koajs/koa/commit/f75d4455359ecdf30eeb676e2c7f31d4cf7b42ed)] - test: fix end after end (#1374) (Robert Nagy <<ronagy@icloud.com>>)
175
1762.8.1 / 2019-08-19
177==================
178
179**fixes**
180 * [[`287e589`](http://github.com/koajs/koa/commit/287e589ac773d3738b2aa7d40e0b6d43dde5261b)] - fix: make options more compatibility (dead-horse <<dead_horse@qq.com>>)
181
1822.8.0 / 2019-08-19
183==================
184
185**features**
186 * [[`5afff89`](http://github.com/koajs/koa/commit/5afff89eca0efe7081309dc2d123309e825df221)] - feat: accept options in the Application constructor (#1372) (Jake <<djakelambert@gmail.com>>)
187
188**fixes**
189 * [[`ff70bdc`](http://github.com/koajs/koa/commit/ff70bdc75a30a37f63fc1f7d8cbae3204df3d982)] - fix: typo on document (#1355) (Jeff <<jeff.tian@outlook.com>>)
190
191**others**
192 * [[`3b23865`](http://github.com/koajs/koa/commit/3b23865340cfba075f61f7dba0ea31fcc27260ec)] - docs: parameter of request.get is case-insensitive (#1373) (Gunnlaugur Thor Briem <<gunnlaugur@gmail.com>>)
193 * [[`a245d18`](http://github.com/koajs/koa/commit/a245d18a131341feec4f87659746954e78cae780)] - docs: Update response.socket (#1357) (Jeff <<jeff.tian@outlook.com>>)
194 * [[`d1d65dd`](http://github.com/koajs/koa/commit/d1d65dd29d7bbaf9ea42eaa5fcb0da3fb4df98e9)] - chore(deps): install egg-bin, mm as devDeps not deps (#1366) (Edvard Chen <<pigeon73101@gmail.com>>)
195 * [[`2c86b10`](http://github.com/koajs/koa/commit/2c86b10feafd868ebd071dda3a222e6f51972b5d)] - test: remove jest and use egg-bin(mocha) (#1363) (Yiyu He <<dead_horse@qq.com>>)
196 * [[`219bf22`](http://github.com/koajs/koa/commit/219bf22237b11bc375e2e110b93db512f1acfdd4)] - docs(context): update link (#1354) (Peng Jie <<bivinity.pengzjie@gmail.com>>)
197 * [[`52a6737`](http://github.com/koajs/koa/commit/52a673703a87a93c0f6a8552e6bd73caba66d2eb)] - chore: ignore Intellij IDEA project files (#1361) (Imon-Haque <<38266345+Imon-Haque@users.noreply.github.com>>)
198 * [[`b9e3546`](http://github.com/koajs/koa/commit/b9e35469d3bbd0a1ee92e0a815ce2512904d4a18)] - docs(api): fix keygrip link (#1350) (Peng Jie <<bivinity.pengzjie@gmail.com>>)
199 * [[`d4bdb5e`](http://github.com/koajs/koa/commit/d4bdb5ed9e2fe06ec44698b66c029f624135a0ab)] - chore: update eslint and fix lint errors (dead-horse <<dead_horse@qq.com>>)
200 * [[`12960c4`](http://github.com/koajs/koa/commit/12960c437cc25c53e682cfe5bff06d74a5bb1eb9)] - build: test on 8/10/12 (dead-horse <<dead_horse@qq.com>>)
201 * [[`00e8f7a`](http://github.com/koajs/koa/commit/00e8f7a1b7603aabdb7fb3567f485cb1c2076702)] - docs: ctx.type aliases ctx.response, not ctx.request (#1343) (Alex Berk <<berkalexanderc@gmail.com>>)
202 * [[`62f29eb`](http://github.com/koajs/koa/commit/62f29eb0c4dee01170a5511615e5bcc9faca26ca)] - docs(context): update cookies link (#1348) (Peng Jie <<dean.leehom@gmail.com>>)
203 * [[`b7fc526`](http://github.com/koajs/koa/commit/b7fc526ea49894f366153bd32997e02568c0b8a6)] - docs: fix typo in cookie path default value docs (#1340) (Igor Adamenko <<igoradamenko@users.noreply.github.com>>)
204 * [[`23f7f54`](http://github.com/koajs/koa/commit/23f7f545abfe1fb6499cd61cc8ff41fd86cef4a0)] - chore: simplify variable (#1332) (kzhang <<godky@users.noreply.github.com>>)
205 * [[`132c9ee`](http://github.com/koajs/koa/commit/132c9ee63f92a586a120ed3bd6b7ef023badb8bb)] - docs: Clarify the format of request.headers (#1325) (Dobes Vandermeer <<dobesv@gmail.com>>)
206 * [[`5810f27`](http://github.com/koajs/koa/commit/5810f279a4caeda115f39e429c9671795613abf8)] - docs: Removed Document in Progress note in Koa vs Express (#1336) (Andrew Peterson <<andrew@andpeterson.com>>)
207 * [[`75233d9`](http://github.com/koajs/koa/commit/75233d974a30af6e3b8ab38a73e5ede67172fc1c)] - chore: Consider removing this return statement; it will be ignored. (#1322) (Vern Brandl <<tkvern@users.noreply.github.com>>)
208 * [[`04e07fd`](http://github.com/koajs/koa/commit/04e07fdc620841068f12b8edf36f27e6592a0a18)] - test: Buffer() is deprecated due to security and usability issues. so use the Buffer.alloc() instead (#1321) (Vern Brandl <<tkvern@users.noreply.github.com>>)
209 * [[`130e363`](http://github.com/koajs/koa/commit/130e363856747b487652f04b5550056d7778e43a)] - docs: use 'fs-extra' instead of 'fs-promise' (#1309) (rosald <<35028438+rosald@users.noreply.github.com>>)
210 * [[`2f2078b`](http://github.com/koajs/koa/commit/2f2078bf998bd3f44289ebd17eeccf5e12e4c134)] - chore: Update PR-welcome badge url (#1299) (James George <<jamesgeorge998001@gmail.com>>)
211
2122.7.0 / 2019-01-28
213==================
214
215**features**
216 * [[`b7bfa71`](http://github.com/koajs/koa/commit/b7bfa7113b8d1af49a57ab767f24a599ed92044f)] - feat: change set status assert, allowing valid custom statuses (#1308) (Martin Iwanowski <<martin@iwanowski.se>>)
217
218**others**
219 * [[`72f325b`](http://github.com/koajs/koa/commit/72f325b78edd0dc2aac940a76ce5f644005ce4c3)] - chore: add pr welcoming badge (#1291) (James George <<jamesgeorge998001@gmail.com>>)
220 * [[`b15115b`](http://github.com/koajs/koa/commit/b15115b2cbfffe15827cd5e4368267d417b72f08)] - chore: Reduce unnecessary variable declarations (#1298) (call me saisai <<1457358080@qq.com>>)
221 * [[`ad91ce2`](http://github.com/koajs/koa/commit/ad91ce2346cb34e5d5a49d07dd952d15f6c832a3)] - chore: license 2019 (dead-horse <<dead_horse@qq.com>>)
222 * [[`b25e79d`](http://github.com/koajs/koa/commit/b25e79dfb599777a38157bd419395bd28369ee86)] - Mark two examples as live for the corresponding documentation change in https://github.com/koajs/koajs.com/pull/38. (#1031) (Francisco Ryan Tolmasky I <<tolmasky@gmail.com>>)
223 * [[`d9ef603`](http://github.com/koajs/koa/commit/d9ef60398e88f2c2f958ab2b159d38052ffe7f8a)] - chore: Optimize array split (#1295) (Mikhail Bodrov <<connormiha1@gmail.com>>)
224 * [[`9be8583`](http://github.com/koajs/koa/commit/9be858312553002841725b617050aaff3c48951d)] - chore: replace ~~ with Math.trunc in res.length (option) (#1288) (jeremiG <<gendronjeremi@gmail.com>>)
225 * [[`7e46c20`](http://github.com/koajs/koa/commit/7e46c2058cb5994809eab5f4dbb12f21e937c72b)] - docs: add link to the license file (#1290) (James George <<jamesgeorge998001@gmail.com>>)
226 * [[`48993ad`](http://github.com/koajs/koa/commit/48993ade9b0831fbce28d94b3b0963a4b0dccbdd)] - docs: Document other body types (#1285) (Douglas Wade <<douglas.b.wade@gmail.com>>)
227 * [[`acb388b`](http://github.com/koajs/koa/commit/acb388bc0546b48fca11dce8aa7a595af2cda5e2)] - docs: Add security vulnerability disclosure instructions to the Readme (#1283) (Douglas Wade <<douglas.b.wade@gmail.com>>)
228 * [[`a007198`](http://github.com/koajs/koa/commit/a007198fa23c19902b1f3ffb81498629e0e9c875)] - docs: Document ctx.app.emit (#1284) (Douglas Wade <<douglas.b.wade@gmail.com>>)
229 * [[`f90e825`](http://github.com/koajs/koa/commit/f90e825da9d505c11b4262c50cd54553f979c300)] - docs: response.set(fields) won't overwrites previous header fields(#1282) (Douglas Wade <<douglas.b.wade@gmail.com>>)
230 * [[`fc93c05`](http://github.com/koajs/koa/commit/fc93c05f68398f30abc46fd16ae6c673a1eee099)] - docs: update readme to add babel 7 instructions (#1274) (Vikram Rangaraj <<vik120@icloud.com>>)
231 * [[`5560f72`](http://github.com/koajs/koa/commit/5560f729124f022ffed00085aafea43dded7fb03)] - chore: use the ability of `content-type` lib directly (#1276) (Jordan <<mingmingwon@gmail.com>>)
232
2332.6.2 / 2018-11-10
234==================
235
236**fixes**
237 * [[`9905199`](http://github.com/koajs/koa/commit/99051992a9f45eb0dd79e062681d6f5d366deb41)] - fix: Status message is not supported on HTTP/2 (#1264) (André Cruz <<andre@cabine.org>>)
238
239**others**
240 * [[`325792a`](http://github.com/koajs/koa/commit/325792aee92de0ba6fea306657933fc63dc00474)] - docs: add table of contents for guide.md (#1267) (ZYSzys <<zyszys98@gmail.com>>)
241 * [[`71aaa29`](http://github.com/koajs/koa/commit/71aaa29591d6681f8579486f18d32ba1ee651a5b)] - docs: fix spelling in throw docs (#1269) (Martin Iwanowski <<martin@iwanowski.se>>)
242 * [[`bc81ca9`](http://github.com/koajs/koa/commit/bc81ca9414296234c764b7306a19ba72b2e59b52)] - chore: use res instead of this.res (#1271) (Jordan <<mingmingwon@gmail.com>>)
243 * [[`0251b38`](http://github.com/koajs/koa/commit/0251b38a8405471892c5eeaba7c8d54bd7028214)] - test: node v11 on travis (#1265) (Martin Iwanowski <<martin@iwanowski.se>>)
244 * [[`88b92b4`](http://github.com/koajs/koa/commit/88b92b43153f21609aee71d47abcd4dc27a6586d)] - doc: updated docs for throw() to pass status as first param. (#1268) (Waleed Ashraf <<waleedashraf@outlook.com>>)
245
2462.6.1 / 2018-10-23
247==================
248
249**fixes**
250 * [[`4964242`](http://github.com/koajs/koa/commit/49642428342e5f291eb9d690802e83ed830623b5)] - fix: use X-Forwarded-Host first on app.proxy present (#1263) (fengmk2 <<fengmk2@gmail.com>>)
251
2522.6.0 / 2018-10-23
253==================
254
255**features**
256 * [[`9c5c58b`](http://github.com/koajs/koa/commit/9c5c58b18363494976185e7ddc790ac63de840ed)] - feat: use :authority header of http2 requests as host (#1262) (Martin Michaelis <<code@mgjm.de>>)
257 * [[`9146024`](http://github.com/koajs/koa/commit/9146024e1094e8bb871ab15d1b7fc556a710732f)] - feat: response.attachment append a parameter: options from contentDisposition (#1240) (小雷 <<863837949@qq.com>>)
258
259**others**
260 * [[`d32623b`](http://github.com/koajs/koa/commit/d32623baa7a6273d47be67d587ad4ea0ecffc5de)] - docs: Update error-handling.md (#1239) (urugator <<j.placek@centrum.cz>>)
261
2622.5.3 / 2018-09-11
263==================
264
265**fixes**
266 * [[`2ee32f5`](http://github.com/koajs/koa/commit/2ee32f50b88b383317e33cc0a4bfaa5f2eadead7)] - fix: pin debug@~3.1.0 avoid deprecated warnning (#1245) (fengmk2 <<fengmk2@gmail.com>>)
267
268**others**
269 * [[`2180839`](http://github.com/koajs/koa/commit/2180839eda2cb16edcfda46ccfe24711680af850)] - docs: Update koa-vs-express.md (#1230) (Clayton Ray <<iamclaytonray@gmail.com>>)
270
2712.5.2 / 2018-07-12
272==================
273
274 * deps: upgrade all dependencies
275 * perf: avoid stringify when set header (#1220)
276 * perf: cache content type's result (#1218)
277 * perf: lazy init cookies and ip when first time use it (#1216)
278 * chore: fix comment & approve cov (#1214)
279 * docs: fix grammar
280 * test&cov: add test case (#1211)
281 * Lazily initialize `request.accept` and delegate `context.accept` (#1209)
282 * fix: use non deprecated custom inspect (#1198)
283 * Simplify processes in the getter `request.protocol` (#1203)
284 * docs: better demonstrate middleware flow (#1195)
285 * fix: Throw a TypeError instead of a AssertionError (#1199)
286 * chore: mistake in a comment (#1201)
287 * chore: use this.res.socket insteadof this.ctx.req.socket (#1177)
288 * chore: Using "listenerCount" instead of "listeners" (#1184)
289
2902.5.1 / 2018-04-27
291==================
292
293 * test: node v10 on travis (#1182)
294 * fix tests: remove unnecessary assert doesNotThrow and api calls (#1170)
295 * use this.response insteadof this.ctx.response (#1163)
296 * deps: remove istanbul (#1151)
297 * Update guide.md (#1150)
298
2992.5.0 / 2018-02-11
300==================
301
302 * feat: ignore set header/status when header sent (#1137)
303 * run coverage using --runInBand (#1141)
304 * [Update] license year to 2018 (#1130)
305 * docs: small grammatical fix in api docs index (#1111)
306 * docs: fixed typo (#1112)
307 * docs: capitalize K in word koa (#1126)
308 * Error handling: on non-error throw try to stringify if error is an object (#1113)
309 * Use eslint-config-koa (#1105)
310 * Update mgol's name in AUTHORS, add .mailmap (#1100)
311 * Avoid generating package locks instead of ignoring them (#1108)
312 * chore: update copyright year to 2017 (#1095)
313
314
3152.4.1 / 2017-11-06
316==================
317
318 * fix bad merge w/ 2.4.0
319
3202.4.0 / 2017-11-06
321==================
322
323UNPUBLISHED
324
325 * update `package.engines.node` to be more strict
326 * update `fresh@^0.5.2`
327 * fix: `inspect()` no longer crashes `context`
328 * fix: gated `res.statusMessage` for HTTP/2
329 * added: `app.handleRequest()` is exposed
330
3312.3.0 / 2017-06-20
332==================
333
334 * fix: use `Buffer.from()`
335 * test on node 7 & 8
336 * add `package-lock.json` to `.gitignore`
337 * run `lint --fix`
338 * add `request.header` in addition to `request.headers`
339 * add IPv6 hostname support
340
3412.2.0 / 2017-03-14
342==================
343
344 * fix: drop `package.engines.node` requirement to >= 6.0.0
345 * this fixes `yarn`, which errors when this semver range is not satisfied
346 * bump `cookies@~0.7.0`
347 * bump `fresh@^0.5.0`
348
3492.1.0 / 2017-03-07
350==================
351
352 * added: return middleware chain promise from `callback()` #848
353 * added: node v7.7+ `res.getHeaderNames()` support #930
354 * added: `err.headerSent` in error handling #919
355 * added: lots of docs!
356
3572.0.1 / 2017-02-25
358==================
359
360NOTE: we hit a versioning snafu. `v2.0.0` was previously released,
361so `v2.0.1` is released as the first `v2.x` with a `latest` tag.
362
363 * upgrade mocha #900
364 * add names to `application`'s request and response handlers #805
365 * breaking: remove unused `app.name` #899
366 * breaking: drop official support for node < 7.6
367
3682.0.0 / ??????????
369==================
370
371 * Fix malformed content-type header causing exception on charset get (#898)
372 * fix: subdomains should be [] if the host is an ip (#808)
373 * don't pre-bound onerror [breaking change] (#800)
374 * fix `ctx.flushHeaders()` to use `res.flushHeaders()` instead of `res.writeHead()` (#795)
375 * fix(response): correct response.writable logic (#782)
376 * merge v1.1.2 and v1.2.0 changes
377 * include `koa-convert` so that generator functions still work
378 * NOTE: generator functions are deprecated in v2 and will be removed in v3
379 * improve linting
380 * improve docs
381
3822.0.0-alpha.8 / 2017-02-13
383==================
384
385 * Fix malformed content-type header causing exception on charset get (#898)
386
3872.0.0-alpha.7 / 2016-09-07
388==================
389
390 * fix: subdomains should be [] if the host is an ip (#808)
391
3922.0.0-alpha.6 / 2016-08-29
393==================
394
395 * don't pre-bound onerror [breaking change]
396
3972.0.0-alpha.5 / 2016-08-10
398==================
399
400 * fix `ctx.flushHeaders()` to use `res.flushHeaders()` instead of `res.writeHead()`
401
4022.0.0-alpha.4 / 2016-07-23
403==================
404
405 * fix `response.writeable` during pipelined requests
406
4071.2.0 / 2016-03-03
408==================
409
410 * add support for `err.headers` in `ctx.onerror()`
411 - see: https://github.com/koajs/koa/pull/668
412 - note: you should set these headers in your custom error handlers as well
413 - docs: https://github.com/koajs/koa/blob/master/docs/error-handling.md
414 * fix `cookies`' detection of http/https
415 - see: https://github.com/koajs/koa/pull/614
416 * deprecate `app.experimental = true`. Koa v2 does not use this signature.
417 * add a code of conduct
418 * test against the latest version of node
419 * add a lot of docs
420
4211.1.2 / 2015-11-05
422==================
423
424 * ensure parseurl always working as expected
425 * fix Application.inspect() – missing .proxy value.
426
4272.0.0-alpha.3 / 2015-11-05
428==================
429
430 * ensure parseurl always working as expected. #586
431 * fix Application.inspect() – missing .proxy value. Closes #563
432
4332.0.0-alpha.2 / 2015-10-27
434==================
435
436 * remove `co` and generator support completely
437 * improved documentation
438 * more refactoring into ES6
439
4402.0.0-alpha.1 / 2015-10-22
441==================
442
443 * change the middleware signature to `async (ctx, next) => await next()`
444 * drop node < 4 support and rewrite the codebase in ES6
445
4461.1.1 / 2015-10-22
447==================
448
449 * do not send a content-type when the type is unknown #536
450
4511.1.0 / 2015-10-11
452==================
453
454 * add `app.silent=<Boolean>` to toggle error logging @tejasmanohar #486
455 * add `ctx.origin` @chentsulin #480
456 * various refactoring
457 - add `use strict` everywhere
458
4591.0.0 / 2015-08-22
460==================
461
462 * add `this.req` check for `querystring()`
463 * don't log errors with `err.expose`
464 * `koa` now follows semver!
465
4660.21.0 / 2015-05-23
467==================
468
469 * empty `request.query` objects are now always the same instance
470 * bump `fresh@0.3.0`
471
4720.20.0 / 2015-04-30
473==================
474
475Breaking change if you're using `this.get('ua') === undefined` etc.
476For more details please checkout [#438](https://github.com/koajs/koa/pull/438).
477
478 * make sure helpers return strict string
479 * feat: alias response.headers to response.header
480
4810.19.1 / 2015-04-14
482==================
483
484 * non-error thrown, fixed #432
485
4860.19.0 / 2015-04-05
487==================
488
489 * `req.host` and `req.hostname` now always return a string (semi-breaking change)
490 * improved test coverage
491
4920.18.1 / 2015-03-01
493==================
494
495 * move babel to `devDependencies`
496
4970.18.0 / 2015-02-14
498==================
499
500 * experimental es7 async function support via `app.experimental = true`
501 * use `content-type` instead of `media-typer`
502
5030.17.0 / 2015-02-05
504==================
505
506Breaking change if you're using an old version of node v0.11!
507Otherwise, you should have no trouble upgrading.
508
509 * official iojs support
510 * drop support for node.js `>= 0.11.0 < 0.11.16`
511 * use `Object.setPrototypeOf()` instead of `__proto__`
512 * update dependencies
513
5140.16.0 / 2015-01-27
515==================
516
517 * add `res.append()`
518 * fix path usage for node@0.11.15
519
5200.15.0 / 2015-01-18
521==================
522
523 * add `this.href`
524
5250.14.0 / 2014-12-15
526==================
527
528 * remove `x-powered-by` response header
529 * fix the content type on plain-text redirects
530 * add ctx.state
531 * bump `co@4`
532 * bump dependencies
533
5340.13.0 / 2014-10-17
535==================
536
537 * add this.message
538 * custom status support via `statuses`
539
5400.12.2 / 2014-09-28
541==================
542
543 * use wider semver ranges for dependencies koa maintainers also maintain
544
5450.12.1 / 2014-09-21
546==================
547
548 * bump content-disposition
549 * bump statuses
550
5510.12.0 / 2014-09-20
552==================
553
554 * add this.assert()
555 * use content-disposition
556
5570.11.0 / 2014-09-08
558==================
559
560 * fix app.use() assertion #337
561 * bump a lot of dependencies
562
5630.10.0 / 2014-08-12
564==================
565
566 * add `ctx.throw(err, object)` support
567 * add `ctx.throw(err, status, object)` support
568
5690.9.0 / 2014-08-07
570==================
571
572 * add: do not set `err.expose` to true when err.status not a valid http status code
573 * add: alias `request.headers` as `request.header`
574 * add context.inspect(), cleanup app.inspect()
575 * update cookies
576 * fix `err.status` invalid lead to uncaughtException
577 * fix middleware gif, close #322
578
5790.8.2 / 2014-07-27
580==================
581
582 * bump co
583 * bump parseurl
584
5850.8.1 / 2014-06-24
586==================
587
588 * bump type-is
589
5900.8.0 / 2014-06-13
591==================
592
593 * add `this.response.is()``
594 * remove `.status=string` and `res.statusString` #298
595
5960.7.0 / 2014-06-07
597==================
598
599 * add `this.lastModified` and `this.etag` as both getters and setters for ubiquity #292.
600 See koajs/koa@4065bf7 for an explanation.
601 * refactor `this.response.vary()` to use [vary](https://github.com/expressjs/vary) #291
602 * remove `this.response.append()` #291
603
6040.6.3 / 2014-06-06
605==================
606
607 * fix res.type= when the extension is unknown
608 * assert when non-error is passed to app.onerror #287
609 * bump finished
610
6110.6.2 / 2014-06-03
612==================
613
614 * switch from set-type to mime-types
615
6160.6.1 / 2014-05-11
617==================
618
619 * bump type-is
620 * bump koa-compose
621
6220.6.0 / 2014-05-01
623==================
624
625 * add nicer error formatting
626 * add: assert object type in ctx.onerror
627 * change .status default to 404. Closes #263
628 * remove .outputErrors, suppress output when handled by the dev. Closes #272
629 * fix content-length when body is re-assigned. Closes #267
630
6310.5.5 / 2014-04-14
632==================
633
634 * fix length when .body is missing
635 * fix: make sure all intermediate stream bodies will be destroyed
636
6370.5.4 / 2014-04-12
638==================
639
640 * fix header stripping in a few cases
641
6420.5.3 / 2014-04-09
643==================
644
645 * change res.type= to always default charset. Closes #252
646 * remove ctx.inspect() implementation. Closes #164
647
6480.5.2 / 2014-03-23
649==================
650
651 * fix: inspection of `app` and `app.toJSON()`
652 * fix: let `this.throw`n errors provide their own status
653 * fix: overwriting of `content-type` w/ `HEAD` requests
654 * refactor: use statuses
655 * refactor: use escape-html
656 * bump dev deps
657
6580.5.1 / 2014-03-06
659==================
660
661 * add request.hostname(getter). Closes #224
662 * remove response.charset and ctx.charset (too confusing in relation to ctx.type) [breaking change]
663 * fix a debug() name
664
6650.5.0 / 2014-02-19
666==================
667
668 * add context.charset
669 * add context.charset=
670 * add request.charset
671 * add response.charset
672 * add response.charset=
673 * fix response.body= html content sniffing
674 * change ctx.length and ctx.type to always delegate to response object [breaking change]
675
6760.4.0 / 2014-02-11
677==================
678
679 * remove app.jsonSpaces settings - moved to [koa-json](https://github.com/koajs/json)
680 * add this.response=false to bypass koa's response handling
681 * fix response handling after body has been sent
682 * changed ctx.throw() to no longer .expose 5xx errors
683 * remove app.keys getter/setter, update cookies, and remove keygrip deps
684 * update fresh
685 * update koa-compose
686
6870.3.0 / 2014-01-17
688==================
689
690 * add ctx.host= delegate
691 * add req.host=
692 * add: context.throw supports Error instances
693 * update co
694 * update cookies
695
6960.2.1 / 2013-12-30
697==================
698
699 * add better 404 handling
700 * add check for fn._name in debug() output
701 * add explicit .toJSON() calls to ctx.toJSON()
702
7030.2.0 / 2013-12-28
704==================
705
706 * add support for .throw(status, msg). Closes #130
707 * add GeneratorFunction assertion for app.use(). Closes #120
708 * refactor: move `.is()` to `type-is`
709 * refactor: move content negotiation to "accepts"
710 * refactor: allow any streams with .pipe method
711 * remove `next` in callback for now
712
7130.1.2 / 2013-12-21
714==================
715
716 * update co, koa-compose, keygrip
717 * use on-socket-error
718 * add throw(status, msg) support
719 * assert middleware is GeneratorFunction
720 * ducktype stream checks
721 * remove `next` is `app.callback()`
722
7230.1.1 / 2013-12-19
724==================
725
726 * fix: cleanup socker error handler on response