All notable changes to parcel will be documented in this file.
The format is based on Keep a Changelog and parcel adheres to Semantic Versioning.
- Upgrade Typescript to 2.9 Details
- Upgrade DEFAULT_ENGINES node to Node 8 Details
- Add a buildError event to bundler Details
- Use process.env.PARCEL_MAX_CONCURRENT_CALLS environment variable Details
- Fix Sass dependencies can not be watched when includePaths is a relative path Details
- Replaced fwd slashes with backslashes for win to fix sass deps watch Details
- Fix sourcemap file size in report Details
- fix build not exiting in dev env Details
- Prevent postcss-modules plugin config from being deleted after first run Details
- Set user provided NODE_ENV if provided with build command Details
- Fix bugs related to watching symlinks Details
- add cache-dir option to cli Details
- Fix tree-shaking DCE Details
- Fix writing hashed bundle names to the cache Details
- Fix unintended Vue asset supplemental code insertion Details
- fix 'Cannot read property 'posthtml' of null Details
- fix relative paths being the same as node modules Details
- Fix ES6 re-export of CommonJS modules with tree shaking Details
- Tree shaking + scope hoisting for ES6 and CommonJS modules Details
- Put filewatcher in a worker, for better stability and performance Details
- Cache resolved paths of dependencies Details
- Custom less filemanager Details
- support for sass specific import syntax Details
- Allow --https for watch Details
- Fix browser entry-point resolution Details
- Use config.locals to render pug template Details
- Use async modules when possibles Details
- Add a bundlestart event Details
- Add unit tests for line counter Details
- Use async FS in tests Details
- Use async fs on new linecounter tests Details
- Make CSS assets async Details
- Enable posthtml-parse options in posthtmlrc Details
- Enforce Prettier (check if prettier is run in lint script) Details
- Add support for Cargo workspaces in Rust integration Details
- Surface Bundler error to browser Details
- Programatically pass env vars as a whitelist Details
- Fix bundle hoisting when asset is already in the common bundle Details
- Only resolve env vars on bundling when --target=browser Details
- improve the time reported by the bundler Details
- clear console before accepting updates, not after Details
- Lookup correct generated output for bundle type in RawPackager Details
- Remove extra argument passed to addAssetToBundle in JSPackager Details
- Fix indented syntax type for single file vue components Details
- Fix Vue asset supplemental code concatenation Details
- Add dependencies referenced by posthtml-include Details
- node-sass accepts importer as single function or array of functions Details
- Get mtime of folder on wildcard imports Details
- Fix vue test Details
- Fix absolute and tilde paths for url dependencies Details
- Fix failing appveyor test Details
- Fix worker environment variable Details
- Add
test/dist
to .prettierignore Details - Fix typo in uglify.js Details
- Pass compiler of @vue/component-compiler-utils to parser. Details
- Fix package.json configs Details
- change Uglify to Terser Details
- Don’t pass package.json and options over IPC Details
- Loading modules with AMD Defines Details
- Add support for multiple entry points Details
- Support source field in package.json to enable babel on symlinked modules Details
- Expose modules as UMD Details
- Use parcel's resolver for sass imports Details
- Update default browser engines to > 0.25% marketshare Details
- Ignore dependencies in falsy branches Details
- Clear the console in browser on each HMR Details
- Watch directories instead of individual files to fix EMFILE errors Details
- Prevent build from breaking when .scss file is empty Details
- Handle empty config files Details
- Update dependency with security vuln Details
- Minor change to mkHandle in workerfarm Details
- Don't start server if target isn't browser Details
- Let worker return early instead of throw on unknown messages Details
- change default behaviour to keep default values of HTML form elements Details
- Fix autoinstall infinite loop Details
- Allow spaces in filenames Details
- Update deps Details
- Fix reference pass error in package config Details
- Remove
eval
usage. Fixes CSP cases. Details - Remove jsnext:main Details
- fix for outFile option; respect file-extension Details
- Fix scoped plugin packages Details
- Fix writing files in subfolders inside dist directory Details
- Update addBundleLoader to accept multiple targets Details
- Fix sourcemap reference in JS output Details
- Sourcemap sourceRoot Details
- Fix serving files with query params Details
- Give priority to styl files in StylusAsset resolver Details
- Bump dependencies Details
- Fix asset size always be zero when building vue project Detailds
- Custom workerfarm, BI-Directional IPC - run all npm/yarn installs on the main process Details
- Add
.vue
file support Details - New faster resolver supporting absolute and tilde paths, and aliases Details
- Content hash output file names in production Details
- Automatically install missing dependencies that you
require
in your code Details - Production sourcemaps support via uglify Details
- Add Pug and Jade support Details
- Add GLSL assets support Details
- Add overlay for build errors when using HMR Details
- Implement pipelines to compose multiple asset types together Details
- Add --hmr-port and --hmr-hostname options to parcel watch Details
- Add support for specifying SSL certificate & key Details
- Allow specifying which browser to open with
--open
option Details - Add
data
config option so it is possible to include global scss variables Details - Add
--log-level
option Details - Add support for data attr of object element Details
- Add useBuiltIns babel-preset-env option Details
- Support code splitting and loading WASM with --target=node Details
- Fix hmr runtime error Details
- Add server reference to bundler Details
- Fix error when no "targets" options in .babelrc Details
- Refactor prettifySize Details
- Fix property descriptor of config.internal in transforms/babel.js Details
- only transform safe cssnano minifiers Details
- fix electon hmr bug Details
- Fix HMR hostname in browser Details
- Fix srcset not working for
source
element Details - Update htmlnano Details
- Fix svg dependencies not being found when using minification Details
- Set TypeScript option esModuleInterop to true by default Details
- HTML bundle serving bug Details
- Change default public-url to / Details
- Make --help same as help command Details
- Make -h same as help command Details
- Close hmr server when HMRServer.stop() is called Details
- Fix methods of LazyPromise Details
- Ignore require if it is defined as a local variable Details
- Check browserslist prop in package.json for environments Details
- Fix babel handling for node: DEFAULT_ENGINES Details
- Remove unnecessary files from npm Details
- Use babel-register for tests only with node < 8 Details
- remove call to window.location Details
- Update HMRServer handleSocketError for ErrorEvent Details
- Automatically transpile dependencies with babel-preset-env Details
- Add no-config support for jsx Details
- Add "--target=node" and "--target=electron" option to produce Node/electron friendly bundles Details
- Log bundle metrics Details
- Node 6 support Details
- Add WebManifestAsset to handle W3C webmanifest Details
- Add support for optional dependencies Details
- support svg
<use>
elements Details - Auto-install peerDependencies Details
- Inject HTML tag if missing Details
- Add JSON5 support Details
- Implement support for
<img srcset="...">
Details - Add
.toml
asset support Details - Warn instead of error when an fs call cannot be evaluated Details
- Add support for HTML meta assets Details
- Add
--out-file
option Details - Add Access-Control header for CORS Details
- Remove
-h
alias forhmr-port
option Details - Add 'id' to the module variable Details
- Preserve asset's search and hash Details
- Always add bundle-loader module to the bundle Details
- Launch https websocket server is --https Details
- Fix PromiseQueue returning null when there are no jobs Details
- Correctly serialize YAML to JS Details
- Update parser to treat file extensions as case-insensitive Details
- Add babel-template and babel-types to package.json Details
- Improve Code Coverage Details
- Safe cssnano transforms by default Details
- Make sure bundles is an array in loadBundlesLazy Details
- Bump dependencies Details
- Allows for dots in lazyloaded file names Details
- Add missing packages for pnpm to work Details
- pass lowerCaseAttributeNames: true to posthtml-parser (fix version bump) Details
- Support .htm extension Details
- Fix rust projects with hyphenated names Details
- Purify sourcemaps (Prevent babel from giving invalid mappings) Details
- Don't drop console statements by default in uglifyjs Details
- Fix for ipc closed error in tests Details
- SourceMap support Details
- Custom bundleloader and wasm support Details
- Rust support Details
- Ability to set HMR port Details
- Support .env files Details
- Hotreload css requires in html Details
- Minify JSON Details
- Ability to set HMR hostname Details
- Ability to specify amount of workers using
PARCEL_WORKERS
environment variable Details - Warning emoji Details
- Virtualpaths, throw file not found error Details
- Transform HTML prior to collecting dependencies Details
- Find a[href] dependencies when attrs precede it Details
- Resolve URI-encoded assets Details
- Public-url not an os path Details
- Invalidate cache when parent dependencies change Details
- Invalidate cache on config change Details
- Circular bundles Details
- Possibly ignore fs using browser-resolve config Details
- Do not use global window inside hmr, fixes web worker issues Details
- Improved worker startup times Details
- Parse
//
as a valid url Details - Improve windows emoji console detections Details
- Changelog Details
- http hot reload server printing location as
https://...
Details - Execute bundle() when calling Bundler.middleware() Details
- Always parse dependencies if babel ran. Details
- HTTPS server support Details
- GraphQL Support Details
- Webworker Support Details
- CSSNano configuration Details
- HTMLNano configuration Details
- Support async plugin loading Details
- Add code sample section to
ISSUE_TEMPLATE
Details - Add url dependency for serviceWorker.register calls Details
- Fix ignored babel files Details
- log-symbols fallback for cross-platform emoji compatibility Details
- Use hostname for websocket connection Details
- Standardize empty implementation comment Details
- Handle appstore url scheme Details
- bundling issues when asset parent & commonBundle types differ Details
- Handle empty assets Details
- Minify
Prelude.js
Details
- Maintain html spacing between tags when minimizing Details
- Incorrect bundle path for raw Assets Details
- Reason Asset Type Details
- Automatically install parser dependencies Details
- UglifyES config support Details
- Display absolute path on failed dependency resolve Details
- Support
.editorconfig
Details - Tests for ES6 Modules resolver Details
- ESLint Details
- Parse port option as integer Details
- Make cli.js Node 6 compatible Details
- Remove arrow function from hmr-runtime - IE support Details
- Start server before bundling Details
- Deterministic bundle trees Details
- Resolve "module", "jsnext:main" and "browser" before "main" in Package.json Details
- Remove filename unsafe characters Details
- Don't hash root file Details
- Use cross-spawn for autoinstalling dependencies on windows Details
- Opencollective Details
- Use
JSON5
to parse config files Details - Move JSAsset options gathering into seperate function Details
- Don't use template literals in builtins - IE support Details
- Merge
tsconfig.json
with defaults Details - Change
parse-json
requires toJSON5
Details - Register
.pcss
extension to CSSAsset Details - Websocket error handling Details
- Development server index file Details
- Coffeescript support Details
- Reload html on change Details
--open
option to automatically launch in default browser Details- Prettier Details
- Code of conduct Details
- User friendly server errors and automatic port switching Details
- Version option to command description Details
- Add badges to readme Details
- Support JSON comments Details
- Add AppVeyor CI Details
- Use
UglifyES
instead ofUglifyJS
Details
- Bundle-loader when using esModule Details
- Use var over let in builtins for IE support Details
- Add jsm to javascript extensions Details
- Log pluginload errors Details
- Global env problem Details
- Exit on build error when using build command Details
- Remove circular require in Asset.js Details
- Give high priotity to extension of parent Details
- Fallback to
os.cpus()
for cpu count Details - Windows test issues Details
- Raw Asset loading Details
- Normalize path on windows Details
- Make hmr-runtime ES3 compatible Details
- Dynamically importing js assets with raw assets children Details
- Package.json loading issues for plugin loading Details
- Typescript support Details
- Browser gets notified of errors Details
- Community section to Readme Details
- More helpfull json parsing error messages using
parse-json
Details - Issue template Details
- Print stack traces on error Details
- Merge
postcss-modules
config Details - Default to
NODE_ENV
development on serve Details - Disable flakey macOS FS events in watcher in the tests Details
- Sort child bundles by asset names to avoid race condition in tests Details
- Add version to cache key Details
- Travis tests environment, build script and contribution docs Details
- File url bugfix for Firefox Details
- Windows path bugfix Details
- Default only exports Details
- Public URL in normalizeOptions Details
- Do not try to import data:, tel:, mailto:, something: URLS Details
- Add github repository to
package.json
Details
- Improved public url checking using
is-url
instead of regex Details
babel-preset-es2015
removed from dev dependencies Details
- Initial Parcel-bundler core