* refactor: simply browserslists defaults overwriting
When `hasTargets` is `false`, `targets` is always an empty object by definition, `objectToBrowserslist({})` always return `[]` therefore we can remove `objectToBrowserslist`.
* test: apply external-helpers on preset-env test fixtures
* test: add ie 6 to force all transforms in corejs 3, debug, corejs 2 fixtures
* Add ie 6 as targets for test fixtures
* chore: use yarn 2
* chore: remove redundant yarn locks
* chore: remove publishEslintPkg
* chore: remove redundant make bootstrap
* Update .yarnrc.yml
Co-authored-by: Kristoffer K. <merceyz@users.noreply.github.com>
* chore: use workspace protocol for eslint packages in the root
Co-Authored-By: merceyz <merceyz@users.noreply.github.com>
* chore: pin caniuse-lite versions
Testcases in packages/babel-preset-env/test/fixtures/debug/browserslists-defaults-not-ie
depends on specific caniuse-lite versions. We pinned the version here
so we don't have to deal with fixture different in e2e-tests
where all deps will be updated and tested.
* chore: resolve yarn install warnings
* chore: update yarn cache path on circle/travis
* chore: add yarn deduplicate plugin
* chore: deduplicate lock files
* chore: move devDependencies to leaf packages
* chore: remove @yarnpkg/plugin-constraints
* chore: remove unused dedupe options
* test: fix unwanted self reference
* chore: remove output-file-sync dependency
* chore: update browserify to 16.5.2
Co-authored-by: Kristoffer K. <merceyz@users.noreply.github.com>
* add plugins
* add plugin description
* run build-data
* set shipped proposals true
* update test fixtures
* corejs.proposals should not imply shipped proposals
* fix eslint errors
Please enter the commit message for your changes. Lines starting
* create new object in packages/babel-compat-data/scripts/data/plugin-features.js
* chore: rename test folder
* chore: add test case
* fix: use chrome support data when android is absent
* chore: add type annotation
* chore: add testcases last 2 versions not ie
* chore: bump browerslist to v4.8.2
* chore: update test fixtures
* chore: update test fixtures
While it isn't technically needed because regenerator already handles
async functions, it doesn't play well with the Promise detection logic
used by @babel/preset-env's useBuiltIns and @babel/transform-runtime.
The plugin exclusion logic isn't removed, because
1) it will be useful when merging @babel/preset-modules
into @babel/preset-env
2) if/when regenerator will support injecting a custom promise,
we can enable this optimization again