eae5d8c807
These conflicts will be resolved in the following commits. We do it this way so that PR review is possible.
49 lines
1.7 KiB
JavaScript
49 lines
1.7 KiB
JavaScript
/*---------------------------------------------------------------------------------------------
|
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
* Licensed under the MIT License. See License.txt in the project root for license information.
|
|
*--------------------------------------------------------------------------------------------*/
|
|
|
|
const gulp = require('gulp');
|
|
const es = require('event-stream');
|
|
const path = require('path');
|
|
const task = require('./lib/task');
|
|
const { hygiene } = require('./hygiene');
|
|
|
|
function checkPackageJSON(actualPath) {
|
|
const actual = require(path.join(__dirname, '..', actualPath));
|
|
const rootPackageJSON = require('../package.json');
|
|
const checkIncluded = (set1, set2) => {
|
|
for (let depName in set1) {
|
|
const depVersion = set1[depName];
|
|
const rootDepVersion = set2[depName];
|
|
if (!rootDepVersion) {
|
|
// missing in root is allowed
|
|
continue;
|
|
}
|
|
if (depVersion !== rootDepVersion) {
|
|
this.emit(
|
|
'error',
|
|
`The dependency ${depName} in '${actualPath}' (${depVersion}) is different than in the root package.json (${rootDepVersion})`
|
|
);
|
|
}
|
|
}
|
|
};
|
|
|
|
checkIncluded(actual.dependencies, rootPackageJSON.dependencies);
|
|
checkIncluded(actual.devDependencies, rootPackageJSON.devDependencies);
|
|
}
|
|
|
|
const checkPackageJSONTask = task.define('check-package-json', () => {
|
|
return gulp.src('package.json').pipe(
|
|
es.through(function () {
|
|
checkPackageJSON.call(this, 'remote/package.json');
|
|
checkPackageJSON.call(this, 'remote/web/package.json');
|
|
checkPackageJSON.call(this, 'build/package.json');
|
|
})
|
|
);
|
|
});
|
|
gulp.task(checkPackageJSONTask);
|
|
|
|
const hygieneTask = task.define('hygiene', task.series(checkPackageJSONTask, () => hygiene(undefined, false)));
|
|
gulp.task(hygieneTask);
|