mirror of https://github.com/webpack/webpack.git
Improve JSON parse error
This commit is contained in:
parent
6323b173de
commit
252ac31a57
|
@ -4,6 +4,7 @@
|
||||||
*/
|
*/
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
|
const parseJson = require("json-parse-better-errors");
|
||||||
const asyncLib = require("neo-async");
|
const asyncLib = require("neo-async");
|
||||||
const path = require("path");
|
const path = require("path");
|
||||||
const util = require("util");
|
const util = require("util");
|
||||||
|
@ -350,7 +351,7 @@ class Compiler extends Tapable {
|
||||||
if (err) return callback(err);
|
if (err) return callback(err);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
this.records = JSON.parse(content.toString("utf-8"));
|
this.records = parseJson(content.toString("utf-8"));
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
e.message = "Cannot parse records: " + e.message;
|
e.message = "Cannot parse records: " + e.message;
|
||||||
return callback(e);
|
return callback(e);
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
*/
|
*/
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
|
const parseJson = require("json-parse-better-errors");
|
||||||
const DelegatedSourceDependency = require("./dependencies/DelegatedSourceDependency");
|
const DelegatedSourceDependency = require("./dependencies/DelegatedSourceDependency");
|
||||||
const DelegatedModuleFactoryPlugin = require("./DelegatedModuleFactoryPlugin");
|
const DelegatedModuleFactoryPlugin = require("./DelegatedModuleFactoryPlugin");
|
||||||
const ExternalModuleFactoryPlugin = require("./ExternalModuleFactoryPlugin");
|
const ExternalModuleFactoryPlugin = require("./ExternalModuleFactoryPlugin");
|
||||||
|
@ -42,7 +43,7 @@ class DllReferencePlugin {
|
||||||
params.compilationDependencies.add(manifest);
|
params.compilationDependencies.add(manifest);
|
||||||
compiler.inputFileSystem.readFile(manifest, (err, result) => {
|
compiler.inputFileSystem.readFile(manifest, (err, result) => {
|
||||||
if (err) return callback(err);
|
if (err) return callback(err);
|
||||||
params["dll reference " + manifest] = JSON.parse(
|
params["dll reference " + manifest] = parseJson(
|
||||||
result.toString("utf-8")
|
result.toString("utf-8")
|
||||||
);
|
);
|
||||||
return callback();
|
return callback();
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
*/
|
*/
|
||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
|
const parseJson = require("json-parse-better-errors");
|
||||||
const JsonExportsDependency = require("./dependencies/JsonExportsDependency");
|
const JsonExportsDependency = require("./dependencies/JsonExportsDependency");
|
||||||
|
|
||||||
class JsonParser {
|
class JsonParser {
|
||||||
|
@ -12,7 +13,7 @@ class JsonParser {
|
||||||
}
|
}
|
||||||
|
|
||||||
parse(source, state) {
|
parse(source, state) {
|
||||||
const data = JSON.parse(source);
|
const data = parseJson(source);
|
||||||
state.module.buildInfo.jsonData = data;
|
state.module.buildInfo.jsonData = data;
|
||||||
state.module.buildMeta.exportsType = "named";
|
state.module.buildMeta.exportsType = "named";
|
||||||
if (typeof data === "object" && data)
|
if (typeof data === "object" && data)
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
"chrome-trace-event": "^0.1.1",
|
"chrome-trace-event": "^0.1.1",
|
||||||
"enhanced-resolve": "^4.0.0",
|
"enhanced-resolve": "^4.0.0",
|
||||||
"eslint-scope": "^3.7.1",
|
"eslint-scope": "^3.7.1",
|
||||||
|
"json-parse-better-errors": "^1.0.2",
|
||||||
"loader-runner": "^2.3.0",
|
"loader-runner": "^2.3.0",
|
||||||
"loader-utils": "^1.1.0",
|
"loader-utils": "^1.1.0",
|
||||||
"memory-fs": "~0.4.1",
|
"memory-fs": "~0.4.1",
|
||||||
|
|
|
@ -3538,6 +3538,10 @@ json-loader@^0.5.7:
|
||||||
version "0.5.7"
|
version "0.5.7"
|
||||||
resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d"
|
resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.7.tgz#dca14a70235ff82f0ac9a3abeb60d337a365185d"
|
||||||
|
|
||||||
|
json-parse-better-errors@^1.0.2:
|
||||||
|
version "1.0.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9"
|
||||||
|
|
||||||
json-schema-traverse@^0.3.0:
|
json-schema-traverse@^0.3.0:
|
||||||
version "0.3.1"
|
version "0.3.1"
|
||||||
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
|
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz#349a6d44c53a51de89b40805c5d5e59b417d3340"
|
||||||
|
|
Loading…
Reference in New Issue