babel-preset-es2015-node6
raw JSON → 0.4.0 verified Sat Apr 25 auth: no javascript deprecated
Babel preset that enables ES2015 features missing from Node.js 6, such as ES modules compilation via transform-es2015-modules-commonjs. Version 0.4.0 is the latest stable release; the package is no longer actively maintained and was effectively superseded by @babel/preset-env. Unlike broader presets (e.g., babel-preset-es2015), this preset targets only Node.js 6, resulting in a smaller transform set. It supports a 'loose' option and a 'funcName' flag for Node.js < 6.5. No longer needed for modern Node.js versions.
Common errors
error Requires Babel "^6.0.0-0", but was loaded with "7.x.x" ↓
cause Babel 7 is incompatible with Babel 6 presets/plugins.
fix
Use @babel/preset-env instead, or downgrade to Babel 6.
error Error: Cannot find module 'babel-preset-es2015-node6' ↓
cause The preset is not installed or not in node_modules.
fix
Run npm install --save-dev babel-preset-es2015-node6.
Warnings
deprecated babel-preset-es2015-node6 is deprecated. Use @babel/preset-env with targets.node: '6' instead. ↓
fix Replace with @babel/preset-env: npm install --save-dev @babel/preset-env and configure targets: { node: '6' }.
breaking The 'object-rest' sub-preset is required for object-rest-spread; using the base preset may fail on destructuring and rest parameters. ↓
fix Use preset 'es2015-node6/object-rest' instead of 'es2015-node6' if you need object rest/spread.
gotcha If Node.js version is less than 6.5, automatic function name transformation is not enabled by default; code relying on function.name may break. ↓
fix Enable the 'funcName' option: { presets: [['es2015-node6', { funcName: true }]] }.
deprecated This preset only targets Node.js 6; it will not be updated for newer Node versions. ↓
fix Upgrade to @babel/preset-env for broader Node.js support.
Install
npm install babel-preset-es2015-node6 yarn add babel-preset-es2015-node6 pnpm add babel-preset-es2015-node6 Imports
- default preset (es2015-node6) wrong
module.exports = { presets: ['babel-preset-es2015-node6'] }correctmodule.exports = { presets: ['es2015-node6'] } - loose option wrong
{ presets: ['es2015-node6', { loose: true }] }correct{ presets: [['es2015-node6', { loose: true }]] } - object-rest variant wrong
{ presets: ['es2015-node6'] }correct{ presets: ['es2015-node6/object-rest'] }
Quickstart
// Step 1: Install dependencies
// npm install --save-dev babel-cli babel-preset-es2015-node6
// Step 2: Create .babelrc
// {
// "presets": ["es2015-node6"]
// }
// Step 3: Transform a file
// npx babel script.js --out-file script-compiled.js
// Example ES2015 code to transform
import path from 'path';
const greet = (name) => `Hello, ${name}!`;
console.log(greet('Node 6'));