From 2fe72b7a7c2e5f118f8d264c994e6a8ac8dd4fd5 Mon Sep 17 00:00:00 2001 From: Lukas Taegert-Atkinson Date: Mon, 16 Mar 2020 13:57:30 +0100 Subject: [PATCH] Slightly change logic to see if this helps windows --- .github/workflows/node-windows.yml | 2 +- cli/run/loadConfigFile.ts | 3 ++- rollup.config.js | 1 + test/cli/samples/config-cjs-dirname/_config.js | 2 +- test/cli/samples/config-cjs-dirname/nested/plugin.js | 4 +++- test/cli/samples/config-cjs-dirname/plugin.js | 4 +++- test/cli/samples/config-mjs-plugins/nested/plugin.mjs | 5 ++++- test/cli/samples/config-mjs-plugins/plugin.mjs | 5 ++++- 8 files changed, 19 insertions(+), 7 deletions(-) diff --git a/.github/workflows/node-windows.yml b/.github/workflows/node-windows.yml index 62c8e5ca682..318d4d86d09 100644 --- a/.github/workflows/node-windows.yml +++ b/.github/workflows/node-windows.yml @@ -8,7 +8,7 @@ jobs: strategy: matrix: - node: ['12', '10'] + node: ['13', '12', '10'] name: ${{ matrix.node }} (Windows) steps: diff --git a/cli/run/loadConfigFile.ts b/cli/run/loadConfigFile.ts index 7fba709bf82..eca8bbc8542 100644 --- a/cli/run/loadConfigFile.ts +++ b/cli/run/loadConfigFile.ts @@ -1,5 +1,6 @@ import color from 'colorette'; import * as path from 'path'; +import { pathToFileURL } from 'url'; import * as rollup from '../../src/node-entry'; import { GenericConfigObject } from '../../src/utils/parseOptions'; import relativeId from '../../src/utils/relativeId'; @@ -22,7 +23,7 @@ export default async function loadConfigFile( ): Promise { const extension = path.extname(fileName); const configFileExport = await (extension === '.mjs' && supportsNativeESM() - ? (await esmDynamicImport(fileName)).default + ? (await esmDynamicImport(pathToFileURL(fileName).href)).default : extension === '.cjs' ? getDefaultFromCjs(require(fileName)) : getDefaultFromTranspiledConfigFile(fileName, commandOptions.silent)); diff --git a/rollup.config.js b/rollup.config.js index 88b1d86126a..7b0b56d6bca 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -88,6 +88,7 @@ export default command => { 'path', 'os', 'stream', + 'url', 'util' ], treeshake, diff --git a/test/cli/samples/config-cjs-dirname/_config.js b/test/cli/samples/config-cjs-dirname/_config.js index 68c2cdeb48b..7b8f251fc3e 100644 --- a/test/cli/samples/config-cjs-dirname/_config.js +++ b/test/cli/samples/config-cjs-dirname/_config.js @@ -1,4 +1,4 @@ module.exports = { - description: 'does not transpile cjs configs and provides correct __dirname', + description: 'does not transpile cjs configs and provides correct __filename', command: 'rollup -c' }; diff --git a/test/cli/samples/config-cjs-dirname/nested/plugin.js b/test/cli/samples/config-cjs-dirname/nested/plugin.js index ab2137ef19f..9c83bf93188 100644 --- a/test/cli/samples/config-cjs-dirname/nested/plugin.js +++ b/test/cli/samples/config-cjs-dirname/nested/plugin.js @@ -2,6 +2,8 @@ const path = require('path'); module.exports = () => ({ transform(code) { - return `console.log('${path.relative(process.cwd(), __filename)}');\n${code}`; + return `console.log('${path + .relative(process.cwd(), __filename) + .replace('\\', '/')}');\n${code}`; } }); diff --git a/test/cli/samples/config-cjs-dirname/plugin.js b/test/cli/samples/config-cjs-dirname/plugin.js index ab2137ef19f..9c83bf93188 100644 --- a/test/cli/samples/config-cjs-dirname/plugin.js +++ b/test/cli/samples/config-cjs-dirname/plugin.js @@ -2,6 +2,8 @@ const path = require('path'); module.exports = () => ({ transform(code) { - return `console.log('${path.relative(process.cwd(), __filename)}');\n${code}`; + return `console.log('${path + .relative(process.cwd(), __filename) + .replace('\\', '/')}');\n${code}`; } }); diff --git a/test/cli/samples/config-mjs-plugins/nested/plugin.mjs b/test/cli/samples/config-mjs-plugins/nested/plugin.mjs index 75e7cee7ad2..7ecc957ef55 100644 --- a/test/cli/samples/config-mjs-plugins/nested/plugin.mjs +++ b/test/cli/samples/config-mjs-plugins/nested/plugin.mjs @@ -3,6 +3,9 @@ import { fileURLToPath } from 'url'; export default () => ({ transform(code) { - return `console.log('${relative(process.cwd(), fileURLToPath(import.meta.url))}');\n${code}`; + return `console.log('${relative(process.cwd(), fileURLToPath(import.meta.url)).replace( + '\\', + '/' + )}');\n${code}`; } }); diff --git a/test/cli/samples/config-mjs-plugins/plugin.mjs b/test/cli/samples/config-mjs-plugins/plugin.mjs index 75e7cee7ad2..7ecc957ef55 100644 --- a/test/cli/samples/config-mjs-plugins/plugin.mjs +++ b/test/cli/samples/config-mjs-plugins/plugin.mjs @@ -3,6 +3,9 @@ import { fileURLToPath } from 'url'; export default () => ({ transform(code) { - return `console.log('${relative(process.cwd(), fileURLToPath(import.meta.url))}');\n${code}`; + return `console.log('${relative(process.cwd(), fileURLToPath(import.meta.url)).replace( + '\\', + '/' + )}');\n${code}`; } });