Issue 1:
babel version beta.40

babelrc config

"presets": [
["@babel/preset-env", {
"targets": {
"browsers": ["last 2 versions", "ie >= 10"],
},
"useBuiltIns": "usage",
}],
"@babel/preset-react",
],

babel will generate code:

/*! no exports provided */
/*! all exports used */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_core_js_modules_es6_object_set_prototype_of__ = __webpack_require__(/*! core-js/modules/es6.object.set-prototype-of */ "./node_modules/core-js/modules/es6.object.set-prototype-of.js");
/* harmony import */ var __WEBPACK_IMPORTED_MODULE_0_core_js_modules_es6_object_set_prototype_of___default = __webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0_core_js_modules_es6_object_set_prototype_of__);

Object.defineProperty(exports, "__esModule", {
value: true
});

It cause error Uncaught (in promise) ReferenceError: exports is not defined.

If i remove useBuiltIns

babel will generate code:

/*! dynamic exports provided */
/*! all exports used */
/***/ (function(module, exports, __webpack_require__) {

"use strict";

Object.defineProperty(exports, "__esModule", {
value: true
});

It is right but without harmony

Issue 2:
Here's my config:

{
"babel": {
"presets": [
[
"@babel/preset-env",
{
"targets": {
"node": "4.0.0"
},
"useBuiltIns": "usage",
"debug": true,
"shippedProposals": true
}
]
]
}
"devDependencies": {
"npm-run-all": "^4.1.2",
"@babel/cli": "^7.0.0-beta.40",
"@babel/core": "^7.0.0-beta.40",
"@babel/preset-env": "^7.0.0-beta.40",
"babel-core": "^7.0.0-bridge.0",
"babel-jest": "^22.4.1",
"jest": "^22.4.2"
}
}

Here's debug output:

@babel/preset-env: `DEBUG` option

Using targets:
{
"node": "4"
}

Using modules transform: commonjs

Using plugins:
transform-arrow-functions { "node":"4" }
transform-block-scoping { "node":"4" }
@babel/preset-env: `DEBUG` option
transform-classes { "node":"4" }
transform-destructuring { "node":"4" }
transform-for-of { "node":"4" }
transform-function-name { "node":"4" }
transform-object-super { "node":"4" }
transform-parameters { "node":"4" }
transform-spread { "node":"4" }
transform-sticky-regex { "node":"4" }
transform-unicode-regex { "node":"4" }
transform-new-target { "node":"4" }
transform-regenerator { "node":"4" }
transform-exponentiation-operator { "node":"4" }
transform-async-to-generator { "node":"4" }
transform-dotall-regex { "node":"4" }
proposal-async-generator-functions { "node":"4" }

Using targets:
proposal-object-rest-spread { "node":"4" }
proposal-optional-catch-binding { "node":"4" }
proposal-unicode-property-regex { "node":"4" }

Using polyfills with `usage` option:
{
"node": "4"
}

Using modules transform: commonjs

Using plugins:
transform-arrow-functions { "node":"4" }
transform-block-scoping { "node":"4" }
transform-classes { "node":"4" }
transform-destructuring { "node":"4" }
transform-for-of { "node":"4" }
transform-function-name { "node":"4" }
transform-object-super { "node":"4" }
transform-parameters { "node":"4" }
transform-spread { "node":"4" }
transform-sticky-regex { "node":"4" }
transform-unicode-regex { "node":"4" }
transform-new-target { "node":"4" }
transform-regenerator { "node":"4" }
transform-exponentiation-operator { "node":"4" }
transform-async-to-generator { "node":"4" }
transform-dotall-regex { "node":"4" }
proposal-async-generator-functions { "node":"4" }
proposal-object-rest-spread { "node":"4" }
proposal-optional-catch-binding { "node":"4" }
proposal-unicode-property-regex { "node":"4" }

Using polyfills with `usage` option:

[./functionality/bin/index.js] Based on your code and targets, none were added.

[./functionality/index.js] Added following polyfills:
es7.array.includes { "node":"4" }
regenerator-runtime { "node":"4" }
es6.promise { "node":"4" }

Why on earth does my index.build.js file have an import statment?

./functionality/index.js

import "core-js/modules/es6.promise";

require("regenerator-runtime/runtime");

require("core-js/modules/es7.array.includes");