From ea9fe5331bf73c7c8dc494242923619998675ccf Mon Sep 17 00:00:00 2001 From: Mark Wubben Date: Thu, 14 Apr 2016 18:23:20 +0100 Subject: [PATCH] compute cache salt using package-hash --- lib/caching-precompiler.js | 14 ++++++-------- package.json | 1 + 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/lib/caching-precompiler.js b/lib/caching-precompiler.js index 12464f5..b5cbb96 100644 --- a/lib/caching-precompiler.js +++ b/lib/caching-precompiler.js @@ -6,6 +6,7 @@ var cachingTransform = require('caching-transform'); var objectAssign = require('object-assign'); var stripBom = require('strip-bom'); var md5Hex = require('md5-hex'); +var packageHash = require('package-hash'); var enhanceAssert = require('./enhance-assert'); function CachingPrecompiler(cacheDirPath, babelConfig) { @@ -159,14 +160,11 @@ CachingPrecompiler.prototype._createEspowerPlugin = function () { }; CachingPrecompiler.prototype._createTransform = function () { - var dependencies = { - 'babel-plugin-espower': require('babel-plugin-espower/package.json').version, - 'ava': require('../package.json').version, - 'babel-core': require('babel-core/package.json').version, - 'babelConfig': this.babelConfig - }; - - var salt = new Buffer(JSON.stringify(dependencies)); + var salt = packageHash.sync([ + require.resolve('../package.json'), + require.resolve('babel-core/package.json'), + require.resolve('babel-plugin-espower/package.json') + ], JSON.stringify(this.babelConfig)); return cachingTransform({ factory: this._factory, diff --git a/package.json b/package.json index 2c60525..4d7a10b 100644 --- a/package.json +++ b/package.json @@ -124,6 +124,7 @@ "observable-to-promise": "^0.3.0", "only-shallow": "^1.2.0", "option-chain": "^0.1.0", + "package-hash": "^1.1.0", "pkg-conf": "^1.0.1", "plur": "^2.0.0", "power-assert-formatter": "^1.3.0",