diff options
| author | Chris Rebert <[email protected]> | 2014-03-07 16:05:46 -0800 |
|---|---|---|
| committer | Chris Rebert <[email protected]> | 2014-03-07 16:05:46 -0800 |
| commit | 51b825d6b3ffb611f07cb64add8013350b222420 (patch) | |
| tree | d50aed026478bfc8d9a6261115827e27fc105767 | |
| parent | 30bbab06d84c991e4c8c465162c90368287f4f54 (diff) | |
| download | bootstrap-51b825d6b3ffb611f07cb64add8013350b222420.tar.xz bootstrap-51b825d6b3ffb611f07cb64add8013350b222420.zip | |
fix #12959
| -rw-r--r-- | grunt/shrinkwrap.js | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/grunt/shrinkwrap.js b/grunt/shrinkwrap.js index d3292b498..6701c6d6c 100644 --- a/grunt/shrinkwrap.js +++ b/grunt/shrinkwrap.js @@ -14,13 +14,26 @@ var NON_CANONICAL_FILE = 'npm-shrinkwrap.json'; var DEST_FILE = 'test-infra/npm-shrinkwrap.canonical.json'; +function cleanup(shrinkwrap) { + // Remove `resolved` property to avoid irrelevant changes + // See https://github.com/npm/npm/issues/3581 + if ((typeof shrinkwrap) === 'string') { + return shrinkwrap; + } + delete shrinkwrap.resolved; + for (var key in shrinkwrap) { + shrinkwrap[key] = cleanup(shrinkwrap[key]); + } + return shrinkwrap; +} + function updateShrinkwrap(grunt) { // Assumption: Non-canonical shrinkwrap already generated by prerequisite Grunt task var shrinkwrapData = grunt.file.readJSON(NON_CANONICAL_FILE); grunt.log.writeln('Deleting ' + NON_CANONICAL_FILE.cyan + '...'); grunt.file.delete(NON_CANONICAL_FILE); // Output as Canonical JSON in correct location - grunt.file.write(DEST_FILE, canonicallyJsonStringify(shrinkwrapData)); + grunt.file.write(DEST_FILE, canonicallyJsonStringify(cleanup(shrinkwrapData))); grunt.log.writeln('File ' + DEST_FILE.cyan + ' updated.'); } |
