Skip to content

Remove cross-fetch dependency #1658

@flevi29

Description

@flevi29

As detailed in #1610, cross-fetch isn't helping much. The only thing it does is use node-fetch on older Node.js versions.

Also we are using two additional web standards that won't run on IE11 and we're not polyfilling:

const constructURL = new URL(url, this.url)
if (params) {
const queryParams = new URLSearchParams()
Object.keys(params)
.filter((x: string) => params[x] !== null)
.map((x: string) => queryParams.set(x, params[x]))
constructURL.search = queryParams.toString()
}

I propose we remove this polyfill, users of this library can import a polyfill script for fetch (browser) (node) and the other stuff themselves in the few cases where they might still need to do so, and if they're targeting IE11, they already need to do this with URL https://github.com/lifaon74/url-polyfill. I believe polyfilling should be the responsibility of the final apps/websites.

#1656 is kind of a blocker for this, as removing cross-fetch would break tests, and that PR already fixes them.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions