get things working in node 4 again

pull/737/head
Rich Harris 7 years ago
parent bb2ed448b8
commit c7e133790d

@ -45,13 +45,9 @@
"babel": "^6.23.0",
"babel-core": "^6.23.1",
"babel-plugin-istanbul": "^4.1.4",
"babel-plugin-transform-es2015-arrow-functions": "^6.22.0",
"babel-plugin-transform-es2015-block-scoping": "^6.23.0",
"babel-plugin-transform-es2015-destructuring": "^6.23.0",
"babel-plugin-transform-es2015-modules-commonjs": "^6.23.0",
"babel-plugin-transform-es2015-parameters": "^6.23.0",
"babel-plugin-transform-es2015-spread": "^6.22.0",
"babel-preset-env": "^1.2.1",
"babel-plugin-transform-new-target": "^7.0.0-alpha.14",
"babel-polyfill": "^6.23.0",
"babel-preset-env": "^1.6.0",
"babel-register": "^6.23.0",
"chalk": "^2.0.1",
"codecov": "^2.2.0",
@ -91,13 +87,18 @@
]
},
"babel": {
"presets": [
[
"env",
{
"targets": {
"node": "current"
}
}
]
],
"plugins": [
"transform-es2015-arrow-functions",
"transform-es2015-block-scoping",
"transform-es2015-spread",
"transform-es2015-parameters",
"transform-es2015-destructuring",
"transform-es2015-modules-commonjs"
"transform-new-target"
]
}
}

@ -5,12 +5,6 @@ import fs from 'fs';
import path from 'path';
import chalk from 'chalk';
import * as consoleGroup from 'console-group';
consoleGroup.install();
import * as sourceMapSupport from 'source-map-support';
sourceMapSupport.install();
// for coverage purposes, we need to test source files,
// but for sanity purposes, we need to test dist files
export function loadSvelte(test) {
@ -150,7 +144,9 @@ export function loadConfig(file) {
try {
const resolved = require.resolve(file);
delete require.cache[resolved];
return require(resolved);
const config = require(resolved);
return config.default || config;
} catch (err) {
if (err.code === 'MODULE_NOT_FOUND') {
return {};

@ -2,14 +2,33 @@ const nodeVersionMatch = /^v(\d)/.exec(process.version);
const legacy = +nodeVersionMatch[1] < 6;
const babelrc = require("../package.json").babel;
const fs = require('fs');
const path = require('path');
require('console-group').install();
require('source-map-support').install();
if (legacy) {
require("babel-register")(babelrc);
require("babel-polyfill");
require("babel-register")(Object.assign(babelrc, {
ignore: function(filename) {
const relative = path.relative(process.cwd(), filename);
if (relative.startsWith('node_modules')) {
if (relative.startsWith('node_modules/jsdom')) return false;
if (relative.startsWith('node_modules/whatwg-url')) return false;
return true;
}
if (relative === 'compiler/svelte.js') return true;
return false;
}
}));
} else {
require.extensions['.js'] = function(module, filename) {
const exports = [];
let code = fs.readFileSync(filename, 'utf-8')
var code = fs.readFileSync(filename, 'utf-8')
.replace(/^import (?:\* as )?(\w+) from ['"]([^'"]+)['"];?/gm, 'var $1 = require("$2");')
.replace(/^import {([^}]+)} from ['"](.+)['"];?/gm, 'var {$1} = require("$2");')
.replace(/^export default /gm, 'module.exports = ')
@ -38,3 +57,4 @@ if (legacy) {
}
};
}

@ -570,6 +570,10 @@ babel-plugin-transform-exponentiation-operator@^6.22.0:
babel-plugin-syntax-exponentiation-operator "^6.8.0"
babel-runtime "^6.22.0"
babel-plugin-transform-new-target@^7.0.0-alpha.14:
version "7.0.0-alpha.17"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-new-target/-/babel-plugin-transform-new-target-7.0.0-alpha.17.tgz#69e62b7bc60a43201af0cfec5a3fea142a399897"
babel-plugin-transform-regenerator@^6.22.0:
version "6.24.1"
resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.24.1.tgz#b8da305ad43c3c99b4848e4fe4037b770d23c418"
@ -583,7 +587,15 @@ babel-plugin-transform-strict-mode@^6.24.1:
babel-runtime "^6.22.0"
babel-types "^6.24.1"
babel-preset-env@^1.2.1:
babel-polyfill@^6.23.0:
version "6.23.0"
resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.23.0.tgz#8364ca62df8eafb830499f699177466c3b03499d"
dependencies:
babel-runtime "^6.22.0"
core-js "^2.4.0"
regenerator-runtime "^0.10.0"
babel-preset-env@^1.6.0:
version "1.6.0"
resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.6.0.tgz#2de1c782a780a0a5d605d199c957596da43c44e4"
dependencies:

Loading…
Cancel
Save