Skip to content

0.6.20 Release Note

leeight edited this page Mar 14, 2014 · 1 revision

0.6.20相对前一个版本0.6.8-beta.16有比较多的改动。

安装指南

最近貌似 https://npmjs.org 不太稳定,而且速度很慢,升级的时候建议采用如下的方式安装:

  1. 修改一下npm的配置:npm set strict-ssl false
  2. 安装cnpm,这样子可以用国内的镜像安装edp:npm install -g cnpm
  3. 删除原来的edp:npm rm -g edp
  4. 重新安装 cnpm install -g [email protected]

项目迁移指南

因为新增的功能涉及到对edp-build-config.js的一下更新,如下的项目模块已经经过测试,相关的Patchset请参考对应的链接。

Svn Module Patchset Url
app/ecom/totem/trunk/totem/src/main/webapp Patchset
app/ecom/baike/trunk/web/src/main/webapp Patchset
app/ecom/brandlandscape/trunk/brand_landscape/bl-fe/src/main/webapp Patchset
app/ecom/fe/trunk/vs-biz-finance Patchset
app/ecom/fe/trunk/vs-mid-edu/mobile Patchset
app/ecom/fe/trunk/vs/bs-edu Patchset
app/ecom/columbus/trunk/cb-web-fe Patchset
app/ecom/fe/trunk/vs/onesite Patchset
app/ecom/fe/trunk/vs/baiduhui Patchset
app/ecom/fe/trunk/vs-mid-edu/booking Patchset
app/ecom/fe/trunk/vs-mid-edu/course Patchset
app/ecom/fengchao/trunk/fc-star/fc-ue/nirvana-workspace/nirvana Patchset

新增的功能

  1. 优化了edp build的输出日志,明确的给出编译过程中的错误信息

  2. edp-build新增了4个Processor:AddCopyright, ReplaceDebug, TplMerge, StringReplaceProcessor,使用方式请参考测试用例:https://github.com/ecomfe/edp-build/tree/master/test

  3. 自定义Processor更加简单,支持传递一个简单的对象过去:

    var MyProcessor = {
        exclude: ['*.png', '*.gif', '*.jpg', '*.js', '*.html', '*.css', '*.tpl', '/dep/*/*/*.less'],
        name: 'MyProcessor',
        process: function(file, processContext, callback) {
            callback();
        }
    }
    
    exports.getProcessors = function () {
        return [
            MyProcessor,
            new LessCompiler( {
                exclude: ['dep/esf-ms/*/src/*.less'],
                entryExtnames: pageEntries
            } ),
  4. edp-websever-config.jsedp-build-config.js中可以指定自己项目需要的less和stylus版本。例如:

    // edp-webserver-config.js
    exports.stylus = require( "./lib/stylus" );
    exports.less = require( "./lib/less" );
    
    // edp-build-config.js
    exports.getProcessors = function(){
        return [
            new LessCompiler({
                less: require( "./lib/stylus" )
            })
        ];
    }
  5. module.confcombine模式下面,支持指定includeexclude了,例如:

    {
        "baseUrl": "src",
        "paths": {},
        "packages": [],
        "combine": {
            "common/main": {
                "exclude": [ "esui/*" ],
                "include": [ "esui/Button" ]
            }
        }
    }
  6. 当导入package之后会自定更新html文件中require.config的配置,原来的逻辑是直接拿module.conf的内容处理之后来覆盖require.config的配置,现在行为是两部分的数据进行合并,然后再更新。

  7. 新增了一个edp doctor的命令,用来帮助检测一些项目中配置的问题,在项目目录下面执行edp doctor即可:

    $ edp doctor
    edp INFO Checking output directory...
    edp INFO Checking project configuration...
    edp INFO Checking module.conf...
  8. 完善了各个Package的测试用例,保证每个版本的发布质量:https://github.com/ecomfe/edp-cli/wiki/Package-Status

修复的BUG列表

  1. 需要一个替换esl.js的 script 标签的处理器
  2. 解决 less 1.5.1 处理 @import 的一个bug
  3. ModuleCompiler为啥编译合并依赖模块与代码中require的顺序是相反的
  4. replace-require-resource.js的bug
  5. 升级对AMD Wrapper的支持
  6. ModuleCompiler和paths的配合貌似有问题
  7. 删除 edp-package 对 request 的依赖
  8. 增加参数使的edp执行时不用自动检查更新
  9. edp build问题
  10. edp update不会更新html中的CSS引用
  11. 关于addjs和addhtml

这个版本的发布过程中,感谢如下同学的测试(排名部分先后):顾轶灵,陈立,张立理,李享,王克淼,李小斌,彭晓波,王大为,周敏明,逯鹏宇,朱雨薇,吴辉耀,朱佳璐,董睿等

Hello World

Clone this wiki locally