Major
- Updated Node.js support to
^12.20 || >= 14.13. - Stopped supporting Internet Explorer.
- Changed
@apollo/clientfrom a dependency to a peer dependency, fixing #251 via #252. - Updated dependencies, some of which require newer Node.js versions than previously supported.
- Replaced the the
package.jsonexportsfield public subpath folder mapping (deprecated by Node.js) with a subpath pattern. Deeprequirepaths withinapollo-upload-client/public/must now include the.jsfile extension. - Removed Babel related dependencies, config, and scripts. Published modules now contain more modern ES syntax.
- Published modules now contain JSDoc comments, which might affect TypeScript projects.
- The tests are now ESM in
.mjsfiles instead of CJS in.jsfiles.
Patch
- Stop using
hard-rejectionto detect unhandledPromiserejections in tests, as Node.js v15+ does this natively. - Test the bundle size manually using
esbuildandgzip-size, removingsize-limitrelated dev dependencies, config, and scripts. - Updated GitHub Actions CI config:
- Run tests with Node.js v12, v14, v16.
- Updated
actions/checkoutto v2. - Updated
actions/setup-nodeto v2. - Don’t specify the
CIenvironment variable as it’s set by default.
- More specific package
mainfield path. - Simplified JSDoc related package scripts now that
jsdoc-mdv10 automatically generates a Prettier formatted readme. - Added a package
test:jsdocscript that checks the readme API docs are up to date with the source JSDoc. - Use the
.jsfile extension in internalrequirepaths. - Clearer package and function
createUploadLinkdescription, fixing #247. - Fixed function
createUploadLinkoptionfetchOptions.signalbugs:- If the given abort controller signal is already aborted, immediately abort the fetch.
- Use
once: truewhen adding theabortevent listener on the given abort controller signal to avoid a possible memory leak.
- Updated a URL in the changelog entry for v14.0.0.
- Documentation updates.