Skip to content

Commit

Permalink
fix: serialize path query params without change (#408)
Browse files Browse the repository at this point in the history
* fix: add query test

* fix: serialize path query params without change

* fixup! fix: serialize path query params without change
  • Loading branch information
mzgoddard committed Jul 12, 2018
1 parent 6551c8e commit 734e5b0
Show file tree
Hide file tree
Showing 5 changed files with 34 additions and 4 deletions.
8 changes: 6 additions & 2 deletions lib/util/relate-context.js
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ const relateNormalPath = (exports.relateNormalPath = function relateNormalPath(
if (key === '') {
return key;
}
return path.relative(compilerContext(compiler), key).replace(/\\/g, '/');
const rel = path.relative(compilerContext(compiler), key.split('?')[0]);
return [rel.replace(/\\/g, '/')].concat(key.split('?').slice(1)).join('?');
});

const relateNormalRequest = (exports.relateNormalRequest = function relateNormalRequest(
Expand Down Expand Up @@ -88,7 +89,10 @@ const contextNormalPath = (exports.contextNormalPath = function contextNormalPat
if (key === '') {
return '';
}
return path.resolve(compilerContext(compiler), key).replace(/\//g, path.sep);
const abs = path.resolve(compilerContext(compiler), key.split('?')[0]);
return [abs.replace(/\//g, path.sep)]
.concat(key.split('?').slice(1))
.join('?');
});

const contextNormalRequest = (exports.contextNormalRequest = function contextNormalRequest(
Expand Down
6 changes: 4 additions & 2 deletions tests/base-webpack-3.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,14 @@ var describeWP = require('./util').describeWP;

describeWP(3)('basic webpack 3 use - compiles identically', function() {

itCompilesTwice('base-1dep-query');
itCompilesTwice('base-1dep-query', {exportStats: true});
itCompilesTwice('base-devtool-nosources-source-map');
itCompilesTwice('base-devtool-nosources-source-map', {exportStats: true});
itCompilesTwice('base-es2015-module-export-star');
itCompilesTwice('base-es2015-module-export-star', {exportStats: true});
itCompilesTwice('base-es2015-module-export-star-alt');
itCompilesTwice('base-es2015-module-export-star-alt', {exportStats: true});
itCompilesTwice('base-devtool-nosources-source-map');
itCompilesTwice('base-devtool-nosources-source-map', {exportStats: true});

itCompilesHardModules('base-es2015-module-export-star', ['./export.js', './fab.js', './fib.js', './index.js']);
itCompilesHardModules('base-es2015-module-export-star-alt', ['./export.js', './fab.js', './fib.js', './index.js']);
Expand Down
3 changes: 3 additions & 0 deletions tests/fixtures/base-1dep-query/fib.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
module.exports = function(n) {
return n + (n > 0 ? n - 1 : 0);
};
3 changes: 3 additions & 0 deletions tests/fixtures/base-1dep-query/index.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
var fib = require('./fib?http://localhost');

console.log(fib(3));
18 changes: 18 additions & 0 deletions tests/fixtures/base-1dep-query/webpack.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
var HardSourceWebpackPlugin = require('../../..');

module.exports = {
context: __dirname,
entry: './index.js',
output: {
path: __dirname + '/tmp',
filename: 'main.js',
},
plugins: [
new HardSourceWebpackPlugin({
cacheDirectory: 'cache',
environmentHash: {
root: __dirname + '/../../..',
},
}),
],
};

0 comments on commit 734e5b0

Please sign in to comment.