Skip to content

Commit 85afe52

Browse files
committed
print origial require string as comment into file
1 parent c34fcd1 commit 85afe52

7 files changed

Lines changed: 26 additions & 17 deletions

File tree

examples/code-splitted-require.context/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ getTemplate("b", function(b) {
5858

5959
function getTemplate(templateName, callback) {
6060
require.ensure(1, function(require) {
61-
callback(require(1)("./"+templateName));
61+
callback(require(/* ../require.context/templates */1)("./"+templateName));
6262
});
6363
}
6464
getTemplate("a", function(a) {
@@ -123,7 +123,7 @@ module.exports = function() {
123123
modulesIncludingDuplicates: 5,
124124
modulesPerChunk: 2.5,
125125
modulesFirstChunk: 1,
126-
fileSizes: { 'output.js': 1855, '1.output.js': 729 } }
126+
fileSizes: { 'output.js': 1889, '1.output.js': 729 } }
127127
```
128128

129129
## Minimized (uglify-js, no zip)

examples/code-splitting/README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -52,11 +52,11 @@ require.ensure(["c"], function(require) {
5252
/******/({a:".output.js",b:"webpackJsonp",c:"",
5353
/******/0: function(module, exports, require) {
5454

55-
var a = require(1);
56-
var b = require(2);
55+
var a = require(/* a */1);
56+
var b = require(/* b */4);
5757
require.ensure(1, function(require) {
58-
require(2).xyz();
59-
var d = require(3);
58+
require(/* b */4).xyz();
59+
var d = require(/* d */2);
6060
});
6161

6262
/******/},
@@ -67,7 +67,7 @@ require.ensure(1, function(require) {
6767

6868
/******/},
6969
/******/
70-
/******/2: function(module, exports, require) {
70+
/******/4: function(module, exports, require) {
7171

7272
// module b
7373

@@ -111,7 +111,7 @@ webpackJsonp(1,{3:function(a,b,c){},4:function(a,b,c){}})
111111
modulesIncludingDuplicates: 5,
112112
modulesPerChunk: 2.5,
113113
modulesFirstChunk: 3,
114-
fileSizes: { 'output.js': 1948, '1.output.js': 200 } }
114+
fileSizes: { 'output.js': 1935, '1.output.js': 200 } }
115115
```
116116

117117
## Minimized (uglify-js, no zip)

examples/require.context/README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ module.exports = function() {
4545
/******/0: function(module, exports, require) {
4646

4747
function getTemplate(templateName) {
48-
return require(1)("./"+templateName);
48+
return require(/* ./templates */1)("./"+templateName);
4949
}
5050
console.log(getTemplate("a"));
5151
console.log(getTemplate("b"));
@@ -55,7 +55,7 @@ console.log(getTemplate("b"));
5555
/******/1: function(module, exports, require) {
5656

5757
/***/module.exports = function(name) {
58-
/***/ var map = {"./b.js":3,"./a.js":2,"./c.js":4};
58+
/***/ var map = {"./a.js":2,"./b.js":3,"./c.js":4};
5959
/***/ return require(map[name]||map[name+".web.js"]||map[name+".js"]);
6060
/***/};
6161

@@ -98,7 +98,7 @@ module.exports = function() {
9898
modulesIncludingDuplicates: 5,
9999
modulesPerChunk: 5,
100100
modulesFirstChunk: 5,
101-
fileSizes: { 'output.js': 1454 } }
101+
fileSizes: { 'output.js': 1471 } }
102102
```
103103

104104
## Minimized (uglify-js, no zip)

lib/buildDeps.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,7 @@ function addContextModule(depTree, context, contextModuleName, options, callback
159159
callback(null, depTree.modules[dirname].id);
160160
} else {
161161
var contextModule = depTree.modules[dirname] = {
162+
name: contextModuleName,
162163
id: depTree.nextModuleId++,
163164
requireMap: {},
164165
requires: []

lib/writeSource.js

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,26 @@ module.exports = function(module) {
1010
var replaces = []; // { from: 123, to: 125, value: "4" }
1111
function genReplaceRequire(requireItem) {
1212
if(requireItem.nameRange && requireItem.id !== undefined) {
13+
var prefix = "";
14+
if(requireItem.name)
15+
prefix += "/* " + requireItem.name + " */";
1316
replaces.push({
1417
from: requireItem.nameRange[0],
1518
to: requireItem.nameRange[1],
16-
value: "" + requireItem.id
19+
value: prefix + requireItem.id
1720
});
1821
}
1922
}
2023
function genContextReplaces(contextItem) {
2124
var postfix = "";
25+
var prefix = "";
26+
if(contextItem.name)
27+
prefix += "/* " + contextItem.name + " */";
2228
if(contextItem.require) {
2329
replaces.push({
2430
from: contextItem.calleeRange[0],
2531
to: contextItem.calleeRange[1],
26-
value: "require(" + ((contextItem.id || "throw new Error('there is not id for this')") + "") + ")"
32+
value: "require(" + prefix + ((contextItem.id || "throw new Error('there is not id for this')") + "") + ")"
2733
});
2834
replaces.push({
2935
from: contextItem.replace[0][0],
@@ -34,7 +40,7 @@ module.exports = function(module) {
3440
replaces.push({
3541
from: contextItem.expressionRange[0],
3642
to: contextItem.expressionRange[1],
37-
value: "require(" + ((contextItem.id || "throw new Error('there is not id for this')") + "") + ")" + postfix
43+
value: "require(" + prefix + ((contextItem.id || "throw new Error('there is not id for this')") + "") + ")" + postfix
3844
});
3945
}
4046
}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "webpack",
3-
"version": "0.1.4",
3+
"version": "0.1.5",
44
"author": "Tobias Koppers @sokra",
55
"description": "Packs CommonJs Modules for the browser. Allows to split your codebase into multiple bundles, which can be loaded on demand.",
66
"dependencies": {

test/browsertest/lib/index.web.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,17 +13,19 @@ setTimeout(function() {
1313

1414
window.test(require("./circular") === 1, "circular require should work");
1515
window.test(require("./singluar.js").value === 1, "sigular module loaded");
16-
require("./singluar.js").value = 2;
16+
require("./sing" + "luar.js").value = 2;
1717
window.test(require("./singluar").value === 2, "exported object is singluar");
1818
window.test(require("subfilemodule") === "subfilemodule", "Modules as single file should load");
1919
window.test(require.context("../templates")("./tmpl") === "test template", "Context should work");
20-
window.test(require.context("../templates")("./subdir/tmpl.js") === "subdir test template", "Context should work with subdirectories");
20+
window.test(require . context ( "." + "." + "/" + "templ" + "ates" ) ( "./subdir/tmpl.js" ) === "subdir test template", "Context should work with subdirectories and splitted");
2121
var template = "tmpl";
2222
window.test(require("../templates/" + template) === "test template", "Automatical context should work");
2323

2424
require.ensure([], function(require) {
2525
var contextRequire = require.context(".");
2626
window.test(contextRequire("./singluar").value === 2, "Context works in chunk");
27+
var singl = "singl";
28+
window.test(require("." + "/" + singl + "uar").value === 2, "Context works in chunk, when splitted");
2729
});
2830

2931
require.ensure([], function(require) {

0 commit comments

Comments
 (0)