From 9c97d35e780e62c7ea678a983fa426ec914bf8d1 Mon Sep 17 00:00:00 2001 From: MrRaindrop Date: Fri, 31 Mar 2017 16:29:47 +0800 Subject: [PATCH 1/3] * [html5] fix soucemap with flow. --- build/config.js | 5 +++-- package.json | 1 + 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/build/config.js b/build/config.js index 9518d53cf2..ef15574636 100644 --- a/build/config.js +++ b/build/config.js @@ -6,7 +6,8 @@ const postcss = require('rollup-plugin-postcss') const nodeResolve = require('rollup-plugin-node-resolve') const uglify = require('rollup-plugin-uglify') const commonjs = require('rollup-plugin-commonjs') -const flow = require('rollup-plugin-flow') +// const flow = require('rollup-plugin-flow') +const flow = require('rollup-plugin-flow-no-whitespace') const buble = require('rollup-plugin-buble') const subversion = require('../package.json').subversion @@ -98,7 +99,7 @@ function getConfig (name, minify) { 'process.env.NODE_DEBUG': false }), commonjs(), - flow(), + flow(/*{ pretty: true }*/), buble() ]) } diff --git a/package.json b/package.json index 25d3884bf5..86364646a2 100644 --- a/package.json +++ b/package.json @@ -134,6 +134,7 @@ "rollup-plugin-commonjs": "^5.0.4", "rollup-plugin-eslint": "^3.0.0", "rollup-plugin-flow": "^1.1.1", + "rollup-plugin-flow-no-whitespace": "^1.0.0", "rollup-plugin-json": "^2.0.2", "rollup-plugin-node-resolve": "^2.0.0", "rollup-plugin-postcss": "^0.2.0", From fed56d4bbf685c91e8321002d46b34fe367846c6 Mon Sep 17 00:00:00 2001 From: MrRaindrop Date: Fri, 31 Mar 2017 17:31:37 +0800 Subject: [PATCH 2/3] * [html5] update build & test config. --- build/config.js | 5 ++++- build/karma.vue.conf.js | 17 ++++++++++++----- 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/build/config.js b/build/config.js index ef15574636..00c8d9bd94 100644 --- a/build/config.js +++ b/build/config.js @@ -6,7 +6,6 @@ const postcss = require('rollup-plugin-postcss') const nodeResolve = require('rollup-plugin-node-resolve') const uglify = require('rollup-plugin-uglify') const commonjs = require('rollup-plugin-commonjs') -// const flow = require('rollup-plugin-flow') const flow = require('rollup-plugin-flow-no-whitespace') const buble = require('rollup-plugin-buble') const subversion = require('../package.json').subversion @@ -108,6 +107,10 @@ function getConfig (name, minify) { config.plugins.push(uglify()) } else { + /** + * rollup-plugin-flow will cause soucemap problem. + * use rollup-plugin-flow-no-whitespace can fixe this. + */ config.sourceMap = 'inline' config.plugins.unshift(eslint({ exclude: ['**/*.json', '**/*.css'] })) } diff --git a/build/karma.vue.conf.js b/build/karma.vue.conf.js index 8844594b73..9a91a94e1e 100644 --- a/build/karma.vue.conf.js +++ b/build/karma.vue.conf.js @@ -1,12 +1,13 @@ var rollupConfig = require('./config')('weex-vue-render', true) var path = require('path') +var flow = require('rollup-plugin-flow') function absolute (pa) { return path.resolve(__dirname, pa) } var removeConfigs = ['entry', 'dest', 'banner'] -var removePlugins = ['eslint', 'uglify'] +var removePlugins = ['eslint', 'uglify', 'flow-remove-type'] removeConfigs.forEach(cfg => { delete rollupConfig[cfg] @@ -29,6 +30,14 @@ for (var i = 0, l = plugins.length; i < l; i++) { if (!isRemove) { rollupConfig.plugins.push(plg) } } +/** + * rollup-plugin-flow-no-whiitespace cause fatial error. + * use rollup-plugin-flow instead, since no soucemap needed, it's acceptable for extra whitespaces. + */ +rollupConfig.plugins.splice(-2, 1, flow()) + +console.log('rollupConfig', rollupConfig) + rollupConfig.format = 'iife' rollupConfig.sourceMap = 'inline' @@ -38,13 +47,11 @@ module.exports = function (config) { browsers: ['PhantomJS'], files: [ '../html5/test/render/vue/**/*.js' - // '../html5/test/render/vue/components/*.js' ], exclude: [ '../html5/test/render/vue/helper.js', '../html5/test/render/vue/vender/**/*.js' - // '../html5/test/render/vue/examples/**/*.js' ], // singleRun: false, @@ -59,8 +66,8 @@ module.exports = function (config) { }, preprocessors: { - '../html5/test/**/*.js': ['rollup', 'coverage'], - // '../html5/test/**/!(components|examples)/*.js': ['rollup', 'coverage'] + '../html5/test/**/*.js': ['rollup'], + '../html5/test/**/!(components|examples)/*.js': ['rollup', 'coverage'] }, rollupPreprocessor: rollupConfig, From 9905aa8cfb604d42cebd055f3bec7136e72c7cac Mon Sep 17 00:00:00 2001 From: MrRaindrop Date: Fri, 31 Mar 2017 23:19:33 +0800 Subject: [PATCH 3/3] * [html5] clear log. --- build/karma.vue.conf.js | 2 -- 1 file changed, 2 deletions(-) diff --git a/build/karma.vue.conf.js b/build/karma.vue.conf.js index 9a91a94e1e..50c22fd345 100644 --- a/build/karma.vue.conf.js +++ b/build/karma.vue.conf.js @@ -36,8 +36,6 @@ for (var i = 0, l = plugins.length; i < l; i++) { */ rollupConfig.plugins.splice(-2, 1, flow()) -console.log('rollupConfig', rollupConfig) - rollupConfig.format = 'iife' rollupConfig.sourceMap = 'inline'