Major
extractFiles
is a named export again, and there is no longer a default export; mixed named and default exports causes native ESM and CJS interoperability issues.isObject
is no longer exported. It was not a documented API anyway.- Removed the
ReactNativeFile
static functionlist
. It added surface area to the API and bundles and is simple to do manually.
Minor
- Updated Babel, removing the
@babel/runtime
dependency. - Refactored package scripts to use
prepare
to support installation via Git (e.g.npm install jaydenseric/extract-files
). - Package marked side-effect free for bundlers and tree-shaking.
Patch
- Use
jsdoc-md
to generate readme API docs from source JSDoc, which has been much improved. - Use
tap
instead ofava
. Tests no longer transpile on the fly, are faster and AVA no longer dictates the Babel version. - Tests run against the actual dist
.mjs
and.js
files in both native ESM (--experimental-modules
) and CJS environments. - Added a package
test:size
script, usingsize-limit
to guarantee < 500 byte ESM and CJS bundle sizes. - Removed the package clean script
rimraf
dev dependency in favour of nativerm -rf
. - Removed the package
fix
script. - Renamed the
MODULE
environment variable toBABEL_ESM
to be more specific for the packageprepare:mjs
script. - Lint
.json
,.yml
and.md
files. - Use
.prettierignore
to leavepackage.json
formatting to npm. - Use
eslint-config-env
. - Compact package
repository
field. - Updated package description.
- HTTPS package author URL.
- Added package keywords.
- Replaced shields.io readme badges with:
- A Badgen npm version badge.
- An official Travis badge that only tracks
master
branch.
- Changelog version entries now have “Major”, “Minor” and “Patch” subheadings.