v3 Roadmap
envgap__node-fetch__node-fetch-668
01 / FAILURE SIGNATURE
As reported upstream
No identifying execution failure has been captured.
Not a benchmark task.
- The project already builds and runs before the fix, so there is nothing to repair.
02 / ENVIRONMENT RECIPE
- Base commit
2f1b426a9898c17e8dfaeccd160affd0a0c9f0d8- Manifest
package.json- Reproduce
Awaiting issue-specific recipe- Run under trace
Awaiting a meaningful runtime command
03 / ORIGINAL ISSUE TEXT
node-fetch/node-fetch #668 · read the original issue
**Note: v3 beta is now available on npm under the `next` tag**
---
# v3 Roadmap
## General stuff
- [x] **BREAKING:** Drop support for Node.js 4 and Node.js 6 (#489, #624)
- [x] Update devDependencies (related to #489)
- [x] When users clone(), automatically create streams with custom highWaterMark (#386, PR open: #671)
- [x] Bundle TypeScript types (Support for TypeScript without need of installing `@types/node-fetch` package) (#669)
- [x] Replace Rollup with Microbundle (#643)
- [x] Introduce linting to the project (#303)
- [x] Simplify Travis CI build matrix (related to #431) - Dropping support for Node.js 4 & 6 will help
- [x] Response.statusText should not default (#578)
- [x] Use w3c defined message for AbortError (#657)
- [x] URL is not encoded as UTF-8 (#245)
- Deprecate timeout in favor of AbortController (#523)
- [x] Data URI support (#659)
- [x] Drop the optional dependency on encoding and move charset detection into a separate package. (In progress: [Richienb/fetch-charset-detection](https://github.com/Richienb/fetch-charset-detection) (PR Open: #694))
- [x] Drop existing blob implementation code and use fetch-blob as dependency instead (https://github.com/bitinn/node-fetch/issues/668#issuecomment-529175627)
- [x] Fix stream piping (#309, PR open: #670)
- [x] Fix stream resolving (#642, #665)
- [x] Do not use constructor.name to check object (#667, PR open: #673)
- [x] Properly forward request errors while piping response stream
- [x] Convert `Content-Encoding` to lowercase (#661, PR open: #672)
- [x] More tests for data URI (https://github.com/bitinn/node-fetch/issues/668#issuecomment-529175096)
- [ ] Drop credentials before redirection (#274)
- [x] Modernise the code behind FetchError and AbortError (https://github.com/bitinn/node-fetch/issues/668#issuecomment-530845161)
- [x] Propagate size and timeout to cloned response (#664)
- [x] Replace the calls to `url.parse` and `url.resolve` with calls to `new URL` to use the new UTF-8 awareness and remove the `utf8` package.
- [x] `url.parse` (https://github.com/node-fetch/node-fetch/pull/701)
- [x] `url.resolve` (https://github.com/bitinn/node-fetch/commit/e3cd4d22c3f1871fb41b17035ac83b47ad57fdf6)
- [ ] Document types of fetch errors more thoroughly (#549)
- [ ] Should update host if there's a redirection (#570, PR Open: #596)
- [x] **High priority** doesn't correctly handle multiple `content-type` values (#783)
## Additional:
- [ ] HTTP/2 support (#342, PR open: #796)
- [ ] Plugin/middleware system (https://github.com/bitinn/node-fetch/issues/668#issuecomment-533544800, PR open: #677)
- ~~WebStream API support (#387)~~ - needs more discussion and standard.
- ~~Support trailers (#330)~~ - trailer support has been removed (whatwg/fetch#772).
- ~~Caching (#68)~~ - would likely require opinionated implementation.
- ~~Cookies (#94)~~ - would likely require opinionated implementation.
## Other
- [x] Enable Dependabot to automatically update dependencies if they pass tests and are within an appropriate version range.
- [x] A way to back/sponsor the project (#680)
- ~~Create a final v2 release before releasing v3~~
- [ ] Update upgrade guide
- [ ] Release v1.x version of [Richienb/fetch-charset-detection](https://github.com/Richienb/fetch-charset-detection) before release.
- [ ] Add this package to [DefinitelyTyped/DefinitelyTyped/master/notNeededPackages.json](https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/notNeededPackages.json) since we now ship the typings.
---
cc @bitinn @jimmywarting @TimothyGu @jkantr @gr2m @Richienb04 / LABELS
Labels from the report text only; not yet run
No supported category has been assigned.
Label rules and the text that matched
[]