meilisearch / meilisearch-js

JavaScript client for the Meilisearch API
https://www.meilisearch.com
MIT License
732 stars 86 forks source link

Remove `cross-fetch` dependency #1658

Closed flevi29 closed 2 weeks ago

flevi29 commented 4 months ago

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:

https://github.com/meilisearch/meilisearch-js/blob/cd61a8c14e9897c975ef2176bf5e6c56d15621f3/src/http-requests.ts#L129-L138

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.