Merge pull request #609 from MetaMask/livereload

Add ability to disable livereload
feature/default_network_editable
kumavis 8 years ago committed by GitHub
commit 9857702e69
  1. 1
      CHANGELOG.md
  2. 49
      gulpfile.js
  3. 2
      package.json

@ -10,6 +10,7 @@
- Fix bug where provider menu did not allow switching to custom network from a custom network. - Fix bug where provider menu did not allow switching to custom network from a custom network.
- Sending a transaction from within MetaMask no longer triggers a popup. - Sending a transaction from within MetaMask no longer triggers a popup.
- The ability to build without livereload features (such as for production) can be enabled with the gulp --disableLiveReload flag.
- Fix Ethereum JSON RPC Filters bug. - Fix Ethereum JSON RPC Filters bug.
## 2.10.0 2016-08-29 ## 2.10.0 2016-08-29

@ -16,6 +16,10 @@ var eslint = require('gulp-eslint')
var fs = require('fs') var fs = require('fs')
var path = require('path') var path = require('path')
var manifest = require('./app/manifest.json') var manifest = require('./app/manifest.json')
var gulpif = require('gulp-if')
var replace = require('gulp-replace')
var disableLiveReload = gutil.env.disableLiveReload
// browser reload // browser reload
@ -72,8 +76,8 @@ gulp.task('copy:root', copyTask({
pattern: '/*', pattern: '/*',
})) }))
gulp.task('manifest:cleanup', function() { gulp.task('manifest:chrome', function() {
return gulp.src('./dist/firefox/manifest.json') return gulp.src('./dist/chrome/manifest.json')
.pipe(jsoneditor(function(json) { .pipe(jsoneditor(function(json) {
delete json.applications delete json.applications
return json return json
@ -81,7 +85,33 @@ gulp.task('manifest:cleanup', function() {
.pipe(gulp.dest('./dist/chrome', { overwrite: true })) .pipe(gulp.dest('./dist/chrome', { overwrite: true }))
}) })
gulp.task('copy', gulp.series(gulp.parallel('copy:locales','copy:images','copy:fonts','copy:reload','copy:root'), 'manifest:cleanup')) gulp.task('manifest:production', function() {
return gulp.src([
'./dist/firefox/manifest.json',
'./dist/chrome/manifest.json',
'./dist/edge/manifest.json',
],{base: './dist/'})
.pipe(gulpif(disableLiveReload,jsoneditor(function(json) {
json.background.scripts = ["scripts/background.js"]
return json
})))
.pipe(gulp.dest('./dist/', { overwrite: true }))
})
const staticFiles = [
'locales',
'images',
'fonts',
'root'
]
var copyStrings = staticFiles.map(staticFile => `copy:${staticFile}`)
if (!disableLiveReload) {
copyStrings.push('copy:reload')
}
gulp.task('copy', gulp.series(gulp.parallel(...copyStrings), 'manifest:production', 'manifest:chrome'))
gulp.task('copy:watch', function(){ gulp.task('copy:watch', function(){
gulp.watch(['./app/{_locales,images}/*', './app/scripts/chromereload.js', './app/*.{html,json}'], gulp.series('copy')) gulp.watch(['./app/{_locales,images}/*', './app/scripts/chromereload.js', './app/*.{html,json}'], gulp.series('copy'))
}) })
@ -115,14 +145,18 @@ const jsFiles = [
'popup', 'popup',
] ]
var jsDevStrings = jsFiles.map(jsFile => `dev:js:${jsFile}`)
var jsBuildStrings = jsFiles.map(jsFile => `build:js:${jsFile}`)
jsFiles.forEach((jsFile) => { jsFiles.forEach((jsFile) => {
gulp.task(`dev:js:${jsFile}`, bundleTask({ watch: true, filename: `${jsFile}.js` })) gulp.task(`dev:js:${jsFile}`, bundleTask({ watch: true, filename: `${jsFile}.js` }))
gulp.task(`build:js:${jsFile}`, bundleTask({ watch: false, filename: `${jsFile}.js` })) gulp.task(`build:js:${jsFile}`, bundleTask({ watch: false, filename: `${jsFile}.js` }))
}) })
gulp.task('dev:js', gulp.parallel('dev:js:inpage','dev:js:contentscript','dev:js:background','dev:js:popup')) gulp.task('dev:js', gulp.parallel(...jsDevStrings))
gulp.task('build:js', gulp.parallel(...jsBuildStrings))
gulp.task('build:js', gulp.parallel('build:js:inpage','build:js:contentscript','build:js:background','build:js:popup'))
// clean dist // clean dist
@ -152,6 +186,7 @@ gulp.task('zip', gulp.parallel('zip:chrome', 'zip:firefox', 'zip:edge'))
// high level tasks // high level tasks
gulp.task('dev', gulp.series('dev:js', 'copy', gulp.parallel('copy:watch', 'dev:reload'))) gulp.task('dev', gulp.series('dev:js', 'copy', gulp.parallel('copy:watch', 'dev:reload')))
gulp.task('build', gulp.series('clean', gulp.parallel('build:js', 'copy'))) gulp.task('build', gulp.series('clean', gulp.parallel('build:js', 'copy')))
gulp.task('dist', gulp.series('build', 'zip')) gulp.task('dist', gulp.series('build', 'zip'))
@ -170,7 +205,7 @@ function copyTask(opts){
destinations.forEach(function(destination) { destinations.forEach(function(destination) {
stream = stream.pipe(gulp.dest(destination)) stream = stream.pipe(gulp.dest(destination))
}) })
stream.pipe(livereload()) stream.pipe(gulpif(!disableLiveReload,livereload()))
return stream return stream
} }
@ -211,7 +246,7 @@ function bundleTask(opts) {
.pipe(gulp.dest('./dist/firefox/scripts')) .pipe(gulp.dest('./dist/firefox/scripts'))
.pipe(gulp.dest('./dist/chrome/scripts')) .pipe(gulp.dest('./dist/chrome/scripts'))
.pipe(gulp.dest('./dist/edge/scripts')) .pipe(gulp.dest('./dist/edge/scripts'))
.pipe(livereload()) .pipe(gulpif(!disableLiveReload,livereload()))
) )
} }

@ -94,8 +94,10 @@
"del": "^2.2.0", "del": "^2.2.0",
"gulp": "github:gulpjs/gulp#4.0", "gulp": "github:gulpjs/gulp#4.0",
"gulp-brfs": "^0.1.0", "gulp-brfs": "^0.1.0",
"gulp-if": "^2.0.1",
"gulp-json-editor": "^2.2.1", "gulp-json-editor": "^2.2.1",
"gulp-livereload": "^3.8.1", "gulp-livereload": "^3.8.1",
"gulp-replace": "^0.5.4",
"gulp-sourcemaps": "^1.6.0", "gulp-sourcemaps": "^1.6.0",
"gulp-util": "^3.0.7", "gulp-util": "^3.0.7",
"gulp-watch": "^4.3.5", "gulp-watch": "^4.3.5",

Loading…
Cancel
Save