Update Electron to 6.0.1, SQLCipher to 4.2.0

This commit is contained in:
Scott Nonnenberg 2019-08-19 10:59:30 -07:00
parent b6da081d05
commit e29eee4583
11 changed files with 785 additions and 931 deletions

2
.nvmrc
View File

@ -1 +1 @@
10.13.0
12.4.0

View File

@ -14,7 +14,7 @@ function handleError(prefix, error) {
if (app.isReady()) {
// title field is not shown on macOS, so we don't use it
const buttonIndex = dialog.showMessageBox({
const buttonIndex = dialog.showMessageBoxSync({
buttons: [quitText, copyErrorAndQuitText],
defaultId: 0,
detail: redactAll(error.stack),

View File

@ -199,6 +199,15 @@ async function getSQLCipherVersion(instance) {
}
}
async function getSQLIntegrityCheck(instance) {
const row = await instance.get('PRAGMA cipher_integrity_check;');
if (row) {
return row.cipher_integrity_check;
}
return null;
}
const INVALID_KEY = /[^0-9A-Fa-f]/;
async function setupSQLCipher(instance, { key }) {
const match = INVALID_KEY.exec(key);
@ -209,6 +218,9 @@ async function setupSQLCipher(instance, { key }) {
// https://www.zetetic.net/sqlcipher/sqlcipher-api/#key
await instance.run(`PRAGMA key = "x'${key}'";`);
// https://www.zetetic.net/blog/2018/11/30/sqlcipher-400-release/#compatability-sqlcipher-4-0-0
await instance.run('PRAGMA cipher_migrate;');
// Because foreign key support is not enabled by default!
await instance.run('PRAGMA foreign_keys = ON;');
}
@ -1162,15 +1174,23 @@ async function initialize({ configDir, key, messages }) {
// });
await setupSQLCipher(promisified, { key });
await updateSchema(promisified);
db = promisified;
// test database
const result = await getSQLIntegrityCheck(db);
if (result) {
console.log('Database integrity check failed:', result);
throw new Error(`Integrity check failed: ${result}`);
}
await getMessageCount();
} catch (error) {
console.log('Database startup error:', error.stack);
const buttonIndex = dialog.showMessageBox({
const buttonIndex = dialog.showMessageBoxSync({
buttons: [
messages.copyErrorAndQuit.message,
messages.deleteAndRestart.message,

View File

@ -141,17 +141,11 @@ const dummyChecker = {
window.spellChecker = simpleChecker;
window.disableSpellCheck = () => {
window.removeEventListener('contextmenu', spellCheckHandler);
webFrame.setSpellCheckProvider('en-US', false, dummyChecker);
webFrame.setSpellCheckProvider('en-US', dummyChecker);
};
window.enableSpellCheck = () => {
webFrame.setSpellCheckProvider(
'en-US',
// Not sure what this parameter (`autoCorrectWord`) does: https://github.com/atom/electron/issues/4371
// The documentation for `webFrame.setSpellCheckProvider` passes `true` so we do too.
true,
simpleChecker
);
webFrame.setSpellCheckProvider('en-US', simpleChecker);
window.addEventListener('contextmenu', spellCheckHandler);
};

View File

@ -220,6 +220,7 @@ function createWindow() {
config.environment === 'test' || config.environment === 'test-lib'
? '#ffffff' // Tests should always be rendered on a white background
: '#2090EA',
vibrancy: 'appearance-based',
webPreferences: {
nodeIntegration: false,
nodeIntegrationInWorker: false,
@ -472,6 +473,7 @@ function showAbout() {
autoHideMenuBar: true,
backgroundColor: '#2090EA',
show: false,
vibrancy: 'appearance-based',
webPreferences: {
nodeIntegration: false,
nodeIntegrationInWorker: false,
@ -517,6 +519,7 @@ async function showSettingsWindow() {
backgroundColor: '#FFFFFF',
show: false,
modal: true,
vibrancy: 'appearance-based',
webPreferences: {
nodeIntegration: false,
nodeIntegrationInWorker: false,
@ -562,6 +565,7 @@ async function showDebugLogWindow() {
backgroundColor: '#FFFFFF',
show: false,
modal: true,
vibrancy: 'appearance-based',
webPreferences: {
nodeIntegration: false,
nodeIntegrationInWorker: false,
@ -610,6 +614,7 @@ async function showPermissionsPopupWindow() {
backgroundColor: '#FFFFFF',
show: false,
modal: true,
vibrancy: 'appearance-based',
webPreferences: {
nodeIntegration: false,
nodeIntegrationInWorker: false,

View File

@ -17,7 +17,7 @@
"grunt": "grunt",
"icon-gen": "electron-icon-maker --input=images/icon_1024.png --output=./build",
"generate": "yarn icon-gen && yarn grunt",
"build": "build --config.extraMetadata.environment=$SIGNAL_ENV",
"build": "electron-builder --config.extraMetadata.environment=$SIGNAL_ENV",
"build-release": "SIGNAL_ENV=production npm run build -- --config.directories.output=release",
"sign-release": "node ts/updater/generateSignature.js",
"build-module-protobuf": "pbjs --target static-module --wrap commonjs --out ts/protobuf/compiled.js protos/*.proto && pbts --out ts/protobuf/compiled.d.ts ts/protobuf/compiled.js",
@ -44,7 +44,7 @@
"ready": "yarn clean-transpile && yarn grunt && yarn lint && yarn test-node && yarn test-electron && yarn lint-deps"
},
"dependencies": {
"@journeyapps/sqlcipher": "https://github.com/scottnonnenberg-signal/node-sqlcipher.git#2e28733b61640556b0272a3bfc78b0357daf71e6",
"@journeyapps/sqlcipher": "https://github.com/scottnonnenberg-signal/node-sqlcipher.git#00fd0f8a6623c6683280976d2a92b41d09c744bc",
"@sindresorhus/is": "0.8.0",
"backbone": "1.3.3",
"blob-util": "1.3.0",
@ -80,7 +80,6 @@
"mustache": "2.3.0",
"node-fetch": "https://github.com/scottnonnenberg-signal/node-fetch.git#3e5f51e08c647ee5f20c43b15cf2d352d61c36b4",
"node-gyp": "5.0.3",
"node-sass": "4.9.3",
"os-locale": "2.1.0",
"p-map": "2.1.0",
"p-queue": "5.0.0",
@ -102,7 +101,7 @@
"reselect": "4.0.0",
"rimraf": "2.6.2",
"semver": "5.4.1",
"spellchecker": "3.5.1",
"spellchecker": "3.7.0",
"tar": "4.4.8",
"testcheck": "1.0.0-rc.2",
"tmp": "0.0.33",
@ -147,8 +146,8 @@
"bower": "1.8.2",
"chai": "4.1.2",
"dashdash": "1.14.1",
"electron": "4.2.2",
"electron-builder": "20.39.0",
"electron": "6.0.1",
"electron-builder": "21.2.0",
"electron-icon-maker": "0.0.3",
"eslint": "4.14.0",
"eslint-config-airbnb-base": "12.1.0",
@ -165,8 +164,10 @@
"grunt-exec": "3.0.0",
"grunt-gitinfo": "0.1.7",
"grunt-sass": "3.0.1",
"jsdoc": "3.6.2",
"mocha": "4.1.0",
"mocha-testcheck": "1.0.0-rc.0",
"node-sass": "4.12.0",
"node-sass-import-once": "1.2.0",
"nyc": "11.4.1",
"patch-package": "6.1.2",
@ -183,7 +184,7 @@
"webpack": "4.4.1"
},
"engines": {
"node": "10.13.0"
"node": "12.4.0"
},
"build": {
"appId": "org.whispersystems.signal-desktop",
@ -199,7 +200,7 @@
}
],
"target": [
"zip"
"zip", "dmg"
],
"bundleVersion": "1"
},

View File

@ -160,26 +160,15 @@ export async function showUpdateDialog(
cancelId: RESTART_BUTTON,
};
return new Promise(resolve => {
dialog.showMessageBox(mainWindow, options, response => {
if (response === RESTART_BUTTON) {
// It's key to delay any install calls here because they don't seem to work inside this
// callback - but only if the message box has a parent window.
// Fixes this: https://github.com/signalapp/Signal-Desktop/issues/1864
resolve(true);
const { response } = await dialog.showMessageBox(mainWindow, options);
return;
}
resolve(false);
});
});
return response === RESTART_BUTTON;
}
export async function showCannotUpdateDialog(
mainWindow: BrowserWindow,
messages: MessagesType
): Promise<boolean> {
): Promise<any> {
const options = {
type: 'error',
buttons: [messages.ok.message],
@ -187,11 +176,7 @@ export async function showCannotUpdateDialog(
message: messages.cannotUpdateDetail.message,
};
return new Promise(resolve => {
dialog.showMessageBox(mainWindow, options, () => {
resolve();
});
});
await dialog.showMessageBox(mainWindow, options);
}
// Helper functions

View File

@ -350,9 +350,5 @@ export async function showReadOnlyDialog(
message: messages.readOnlyVolume.message,
};
return new Promise(resolve => {
dialog.showMessageBox(mainWindow, options, () => {
resolve();
});
});
await dialog.showMessageBox(mainWindow, options);
}

View File

@ -1312,6 +1312,13 @@
"reasonCategory": "falseMatch",
"updated": "2019-03-09T00:08:44.242Z"
},
{
"rule": "jQuery-$(",
"path": "node_modules/@develar/schema-utils/node_modules/ajv/dist/ajv.min.js",
"lineNumber": 2,
"reasonCategory": "falseMatch",
"updated": "2019-08-15T17:10:42.360Z"
},
{
"rule": "eval",
"path": "node_modules/@protobufjs/inquire/index.js",
@ -3073,93 +3080,6 @@
"updated": "2018-09-18T19:19:27.699Z",
"reasonDetail": "What's being eval'd is a static string, with one variable: args. Args is of the form arg1, arg2, generated programmatically."
},
{
"rule": "jQuery-load(",
"path": "node_modules/dmg-builder/node_modules/debug/dist/debug.js",
"line": " createDebug.enable(createDebug.load());",
"lineNumber": 721,
"reasonCategory": "falseMatch",
"updated": "2019-04-06T00:07:44.427Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/dmg-builder/node_modules/debug/dist/debug.js",
"line": " function load() {",
"lineNumber": 855,
"reasonCategory": "falseMatch",
"updated": "2019-04-06T00:07:44.427Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/dmg-builder/node_modules/debug/src/browser.js",
"line": "function load() {",
"lineNumber": 211,
"reasonCategory": "falseMatch",
"updated": "2019-04-06T00:07:44.427Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/dmg-builder/node_modules/debug/src/common.js",
"line": "\tcreateDebug.enable(createDebug.load());",
"lineNumber": 261,
"reasonCategory": "falseMatch",
"updated": "2019-04-06T00:07:44.427Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/dmg-builder/node_modules/debug/src/node.js",
"line": "function load() {",
"lineNumber": 216,
"reasonCategory": "falseMatch",
"updated": "2019-04-06T00:07:44.427Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/dmg-builder/node_modules/js-yaml/dist/js-yaml.js",
"line": "function load(input, options) {",
"lineNumber": 2557,
"reasonCategory": "falseMatch",
"updated": "2019-06-19T20:42:32.133Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/dmg-builder/node_modules/js-yaml/dist/js-yaml.js",
"line": " return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));",
"lineNumber": 2580,
"reasonCategory": "falseMatch",
"updated": "2019-06-19T20:42:32.133Z"
},
{
"rule": "jQuery-$(",
"path": "node_modules/dmg-builder/node_modules/js-yaml/dist/js-yaml.min.js",
"lineNumber": 1,
"reasonCategory": "falseMatch",
"updated": "2019-06-19T20:42:32.133Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/dmg-builder/node_modules/js-yaml/lib/js-yaml/loader.js",
"line": "function load(input, options) {",
"lineNumber": 1580,
"reasonCategory": "falseMatch",
"updated": "2019-06-19T20:42:32.133Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/dmg-builder/node_modules/js-yaml/lib/js-yaml/loader.js",
"line": " return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));",
"lineNumber": 1603,
"reasonCategory": "falseMatch",
"updated": "2019-06-19T20:42:32.133Z"
},
{
"rule": "jQuery-$(",
"path": "node_modules/dotenv-expand/lib/main.js",
"line": " var matches = env.match(/\\$([a-zA-Z0-9_]+)|\\${([a-zA-Z0-9_]+)}/g) || []",
"lineNumber": 5,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T21:59:32.770Z"
},
{
"rule": "React-findDOMNode",
"path": "node_modules/draft-js/dist/Draft.js",
@ -3420,17 +3340,17 @@
"rule": "eval",
"path": "node_modules/electron/electron.d.ts",
"line": " eval(code: string): void;",
"lineNumber": 2039,
"lineNumber": 2137,
"reasonCategory": "falseMatch",
"updated": "2019-05-28T20:54:46.198Z"
"updated": "2019-08-15T17:10:42.360Z"
},
{
"rule": "jQuery-append(",
"path": "node_modules/electron/electron.d.ts",
"line": " append(menuItem: MenuItem): void;",
"lineNumber": 3443,
"lineNumber": 3748,
"reasonCategory": "falseMatch",
"updated": "2019-05-28T20:54:46.198Z"
"updated": "2019-08-15T17:10:42.360Z"
},
{
"rule": "jQuery-wrap(",
@ -5166,6 +5086,21 @@
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:06:35.446Z"
},
{
"rule": "jQuery-html(",
"path": "node_modules/marked/lib/marked.js",
"line": " return this.renderer.html(this.token.text);",
"lineNumber": 1285,
"reasonCategory": "falseMatch",
"updated": "2019-08-15T17:10:42.360Z"
},
{
"rule": "jQuery-html(",
"path": "node_modules/marked/marked.min.js",
"lineNumber": 6,
"reasonCategory": "falseMatch",
"updated": "2019-08-15T17:10:42.360Z"
},
{
"rule": "DOM-innerHTML",
"path": "node_modules/min-document/serialize.js",
@ -5793,86 +5728,6 @@
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:06:35.446Z"
},
{
"rule": "jQuery-insertBefore(",
"path": "node_modules/plist/dist/plist-parse.js",
"line": "\t\tthis.insertBefore(newChild,oldChild);",
"lineNumber": 2749,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-insertBefore(",
"path": "node_modules/plist/dist/plist-parse.js",
"line": "\t\treturn this.insertBefore(newChild,null);",
"lineNumber": 2758,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-insertBefore(",
"path": "node_modules/plist/dist/plist-parse.js",
"line": "\t\t\t\tthis.insertBefore(child,refChild);",
"lineNumber": 2995,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-insertBefore(",
"path": "node_modules/plist/dist/plist-parse.js",
"line": "\t\t\treturn this.insertBefore(newChild,null);",
"lineNumber": 3157,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-insertBefore(",
"path": "node_modules/plist/dist/plist-parse.js",
"line": "\t\t\tthis.parentNode.insertBefore(newNode, this.nextSibling);",
"lineNumber": 3273,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-insertBefore(",
"path": "node_modules/plist/dist/plist.js",
"line": "\t\tthis.insertBefore(newChild,oldChild);",
"lineNumber": 5476,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-insertBefore(",
"path": "node_modules/plist/dist/plist.js",
"line": "\t\treturn this.insertBefore(newChild,null);",
"lineNumber": 5485,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-insertBefore(",
"path": "node_modules/plist/dist/plist.js",
"line": "\t\t\t\tthis.insertBefore(child,refChild);",
"lineNumber": 5722,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-insertBefore(",
"path": "node_modules/plist/dist/plist.js",
"line": "\t\t\treturn this.insertBefore(newChild,null);",
"lineNumber": 5884,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-insertBefore(",
"path": "node_modules/plist/dist/plist.js",
"line": "\t\t\tthis.parentNode.insertBefore(newNode, this.nextSibling);",
"lineNumber": 6000,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-$(",
"path": "node_modules/pluralize/pluralize.js",
@ -6399,52 +6254,6 @@
"updated": "2018-09-18T19:19:27.699Z",
"reasonDetail": "What's being eval'd is a static string, with one variable: args. Args is of the form arg1, arg2, generated programmatically."
},
{
"rule": "jQuery-load(",
"path": "node_modules/read-config-file/node_modules/js-yaml/dist/js-yaml.js",
"line": "function load(input, options) {",
"lineNumber": 2557,
"reasonCategory": "falseMatch",
"updated": "2019-06-19T20:42:32.133Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/read-config-file/node_modules/js-yaml/dist/js-yaml.js",
"line": " return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));",
"lineNumber": 2580,
"reasonCategory": "falseMatch",
"updated": "2019-06-19T20:42:32.133Z"
},
{
"rule": "jQuery-$(",
"path": "node_modules/read-config-file/node_modules/js-yaml/dist/js-yaml.min.js",
"lineNumber": 1,
"reasonCategory": "falseMatch",
"updated": "2019-06-19T20:42:32.133Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/read-config-file/node_modules/js-yaml/lib/js-yaml/loader.js",
"line": "function load(input, options) {",
"lineNumber": 1580,
"reasonCategory": "falseMatch",
"updated": "2019-06-19T20:42:32.133Z"
},
{
"rule": "jQuery-load(",
"path": "node_modules/read-config-file/node_modules/js-yaml/lib/js-yaml/loader.js",
"line": " return load(input, common.extend({ schema: DEFAULT_SAFE_SCHEMA }, options));",
"lineNumber": 1603,
"reasonCategory": "falseMatch",
"updated": "2019-06-19T20:42:32.133Z"
},
{
"rule": "jQuery-$(",
"path": "node_modules/read-config-file/node_modules/uri-js/dist/es5/uri.all.min.js",
"lineNumber": 2,
"reasonCategory": "falseMatch",
"updated": "2018-09-19T21:59:32.770Z"
},
{
"rule": "jQuery-$(",
"path": "node_modules/redux/node_modules/js-tokens/index.js",
@ -7310,197 +7119,6 @@
"reasonCategory": "falseMatch",
"updated": "2018-09-19T18:13:29.628Z"
},
{
"rule": "jQuery-after(",
"path": "node_modules/xml2js/node_modules/lodash/after.js",
"line": " * var done = _.after(saves.length, function() {",
"lineNumber": 21,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-after(",
"path": "node_modules/xml2js/node_modules/lodash/after.js",
"line": "function after(n, func) {",
"lineNumber": 30,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-before(",
"path": "node_modules/xml2js/node_modules/lodash/before.js",
"line": " * jQuery(element).on('click', _.before(5, addContactToList));",
"lineNumber": 20,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-before(",
"path": "node_modules/xml2js/node_modules/lodash/before.js",
"line": "function before(n, func) {",
"lineNumber": 23,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-before(",
"path": "node_modules/xml2js/node_modules/lodash/core.js",
"line": " * jQuery(element).on('click', _.before(5, addContactToList));",
"lineNumber": 2228,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-before(",
"path": "node_modules/xml2js/node_modules/lodash/core.js",
"line": " function before(n, func) {",
"lineNumber": 2231,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-before(",
"path": "node_modules/xml2js/node_modules/lodash/core.js",
"line": " return before(2, func);",
"lineNumber": 2381,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-wrap(",
"path": "node_modules/xml2js/node_modules/lodash/core.js",
"line": " * _.iteratee = _.wrap(_.iteratee, function(iteratee, func) {",
"lineNumber": 3483,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-$(",
"path": "node_modules/xml2js/node_modules/lodash/core.min.js",
"lineNumber": 15,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-wrap(",
"path": "node_modules/xml2js/node_modules/lodash/fp/_baseConvert.js",
"line": " function wrap(name, func, placeholder) {",
"lineNumber": 468,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-wrap(",
"path": "node_modules/xml2js/node_modules/lodash/fp/_baseConvert.js",
"line": " return wrap(name, func, defaultHolder);",
"lineNumber": 521,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-wrap(",
"path": "node_modules/xml2js/node_modules/lodash/fp/_baseConvert.js",
"line": " pairs.push([key, wrap(key, func, _)]);",
"lineNumber": 531,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-wrap(",
"path": "node_modules/xml2js/node_modules/lodash/iteratee.js",
"line": " * _.iteratee = _.wrap(_.iteratee, function(iteratee, func) {",
"lineNumber": 40,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-after(",
"path": "node_modules/xml2js/node_modules/lodash/lodash.js",
"line": " * var done = _.after(saves.length, function() {",
"lineNumber": 9983,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-after(",
"path": "node_modules/xml2js/node_modules/lodash/lodash.js",
"line": " function after(n, func) {",
"lineNumber": 9992,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-before(",
"path": "node_modules/xml2js/node_modules/lodash/lodash.js",
"line": " * jQuery(element).on('click', _.before(5, addContactToList));",
"lineNumber": 10041,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-before(",
"path": "node_modules/xml2js/node_modules/lodash/lodash.js",
"line": " function before(n, func) {",
"lineNumber": 10044,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-before(",
"path": "node_modules/xml2js/node_modules/lodash/lodash.js",
"line": " return before(2, func);",
"lineNumber": 10619,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-wrap(",
"path": "node_modules/xml2js/node_modules/lodash/lodash.js",
"line": " * var p = _.wrap(_.escape, function(func, text) {",
"lineNumber": 10950,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-wrap(",
"path": "node_modules/xml2js/node_modules/lodash/lodash.js",
"line": " function wrap(value, wrapper) {",
"lineNumber": 10957,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-wrap(",
"path": "node_modules/xml2js/node_modules/lodash/lodash.js",
"line": " * _.iteratee = _.wrap(_.iteratee, function(iteratee, func) {",
"lineNumber": 15518,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-before(",
"path": "node_modules/xml2js/node_modules/lodash/once.js",
"line": " return before(2, func);",
"lineNumber": 22,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-wrap(",
"path": "node_modules/xml2js/node_modules/lodash/wrap.js",
"line": " * var p = _.wrap(_.escape, function(func, text) {",
"lineNumber": 19,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-wrap(",
"path": "node_modules/xml2js/node_modules/lodash/wrap.js",
"line": "function wrap(value, wrapper) {",
"lineNumber": 26,
"reasonCategory": "falseMatch",
"updated": "2019-07-16T21:56:03.429Z"
},
{
"rule": "jQuery-$(",
"path": "node_modules/xregexp/xregexp-all.js",

View File

@ -95,6 +95,7 @@ const excludedFiles = [
'^node_modules/builder-util/*',
'^node_modules/builder-util-runtime/*',
'^node_modules/chai/*',
'^node_modules/catharsis/*',
'^node_modules/cli-table2/*',
'^node_modules/codemirror/*',
'^node_modules/coffee-script/*',
@ -124,11 +125,13 @@ const excludedFiles = [
'^node_modules/istanbul*',
'^node_modules/jimp/*',
'^node_modules/jquery/*',
'^node_modules/jsdoc/*',
'^node_modules/jss/*',
'^node_modules/jss-global/*',
'^node_modules/livereload-js/*',
'^node_modules/lolex/*',
'^node_modules/magic-string/*',
'^node_modules/markdown-it/*',
'^node_modules/mocha/*',
'^node_modules/minimatch/*',
'^node_modules/nise/*',
@ -147,6 +150,7 @@ const excludedFiles = [
'^node_modules/react-styleguidist/*',
'^node_modules/recast/*',
'^node_modules/reduce-css-calc/*',
'^node_modules/requizzle/*',
'^node_modules/resolve/*',
'^node_modules/sass-graph/*',
'^node_modules/scss-tokenizer/*',
@ -175,6 +179,7 @@ const excludedFiles = [
'^node_modules/vm-browserify/*',
'^node_modules/webdriverio/*',
'^node_modules/webpack*',
'^node_modules/xmlbuilder/*',
'^node_modules/xmldom/*',
'^node_modules/xml-parse-from-string/*',
];

1190
yarn.lock

File diff suppressed because it is too large Load Diff