Merge branch '0.12-dev' into dev
diff --git a/doc/_config.yml b/doc/_config.yml
index 32b8185..22a35f7 100644
--- a/doc/_config.yml
+++ b/doc/_config.yml
@@ -322,3 +322,7 @@
   cn/doc/references/events/blur.html: cn/references/index.html
   cn/doc/references/events/input.html: cn/references/index.html
   cn/doc/references/events/focus.html: cn/references/index.html
+  cn/guide/tools/devtools.html: cn/guide/tools/toolkit.html
+  cn/guide/tools/weexpack.html: cn/guide/tools/toolkit.html
+  guide/tools/devtools.html: guide/tools/toolkit.html
+  guide/tools/weexpack.html: guide/tools/toolkit.html
diff --git a/doc/package.json b/doc/package.json
index 7a12cba..31dc325 100644
--- a/doc/package.json
+++ b/doc/package.json
@@ -3,7 +3,7 @@
   "version": "0.0.0",
   "private": true,
   "hexo": {
-    "version": "3.2.2"
+    "version": "3.3.1"
   },
   "scripts": {
     "server": "hexo server"
@@ -24,4 +24,4 @@
     "hexo-renderer-stylus": "^0.3.1",
     "hexo-server": "^0.2.0"
   }
-}
+}
\ No newline at end of file
diff --git a/doc/source/cn/guide/integrate-to-your-app.md b/doc/source/cn/guide/integrate-to-your-app.md
index 573e9cc..fcb6430 100644
--- a/doc/source/cn/guide/integrate-to-your-app.md
+++ b/doc/source/cn/guide/integrate-to-your-app.md
@@ -32,7 +32,7 @@
 步骤如下:  
 1. 创建Android工程,没有什么要特别说明的,按照你的习惯来。
 2. 修改build.gradle 加入如下基础依赖  
-   
+
    ```gradle
    compile 'com.android.support:recyclerview-v7:23.1.1'
    compile 'com.android.support:support-v4:23.1.1'
@@ -40,7 +40,7 @@
    compile 'com.alibaba:fastjson:1.1.46.android'
    compile 'com.taobao.android:weex_sdk:0.5.1@aar'
    ```
-   
+
    注:版本可以高不可以低。  
 
 #### 代码实现
@@ -229,7 +229,7 @@
       pod 'WeexSDK', '0.9.5'   ## 建议使用WeexSDK新版本 
   end
   ```
-    
+
 - 源码集成
 
   首先 拷贝 `ios/sdk` 目录到你已有项目目录 (此处以拷贝到你已有项目的根目录为例子),然后在 `Podfile` 文件中添加
@@ -274,7 +274,7 @@
 
 Weex 支持整体页面渲染和部分渲染两种模式,你需要做的事情是用指定的 URL 渲染 Weex 的 view,然后添加到它的父容器上,父容器一般都是 viewController。
 
-```
+```objective-c
 #import <WeexSDK/WXSDKInstance.h>
 - (void)viewDidLoad 
 {
@@ -297,7 +297,8 @@
     _instance.renderFinish = ^ (UIView *view) {
         //process renderFinish
     };
-    [_instance renderWithURL:self.url options:@{@"bundleUrl":[self.url absoluteString]} data:nil];
+    NSURL *url = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"js"]
+    [_instance renderWithURL:url options:@{@"bundleUrl":[self.url absoluteString]} data:nil];
 }
 ```
 
diff --git a/doc/source/cn/guide/set-up-env.md b/doc/source/cn/guide/set-up-env.md
index 437ab06..139e155 100644
--- a/doc/source/cn/guide/set-up-env.md
+++ b/doc/source/cn/guide/set-up-env.md
@@ -67,7 +67,7 @@
 
 安装结束后你可以直接使用 `weex` 命令验证是否安装成功,它会显示 `weex` 命令行工具各参数:
 
-![](https://img.alicdn.com/tps/TB1kHFrOFXXXXaYXXXXXXXXXXXX-615-308.jpg)
+![](https://img.alicdn.com/tfs/TB1NBhdQXXXXXXzXFXXXXXXXXXX-712-343.png)
 
 ## 第二步:初始化
 
diff --git a/doc/source/cn/guide/tools/devtools.md b/doc/source/cn/guide/tools/devtools.md
deleted file mode 100644
index 7e56161..0000000
--- a/doc/source/cn/guide/tools/devtools.md
+++ /dev/null
@@ -1,111 +0,0 @@
----
-title: 使用 Devtools
-type: guide
-order: 5.1
-version: 2.1
-has_chapter_content: true
----
-
-# Devtools
-
-**weex devtools** 是专门为 Weex 定制的一款实现了 [**Chrome Debugging Protocol**](https://developer.chrome.com/devtools/docs/debugger-protocol) 的 inspect/debug 工具,能够帮助你快速查看 app 运行状态和调试 weex 中的 Javascript 代码,当前支持 **iOS** 和 **Android** 两个平台。
-
-1. 支持 Android 和 iOS 调试
-2. 支持真机和模拟器
-3. 可以检查 native Elements, vdom, network, Console, Resource
-4. 可以调试 js/wx/Rx 等前端源码文件
-5. 支持同时在前端文件和 native (Android/iOS) 文件上断点调试
-6. 支持远程调试,不需要真机 USB 连接电脑
-7. 支持 screencast 和 select element 功能
-8. 支持同时调试多个应用和客户端
-
-## 安装
-
-```
-$ npm install  -g  weex-toolkit
-```
-
-## 用法
-
- weex debug [options] [we_file|bundles_dir]
-
-  选项:
-
-```
--h, --help           显示帮助
--V, --verbose        显示 debug 服务器运行时的各种 log
--v, --version        显示版本
--p, --port [port]    设置 debug 服务器端口号 默认为 8088
--e, --entry [entry]  debug 一个目录时,这个参数指定整个目录的入口 bundle 文件,这个 bundle 文件的地址会显示在debug主页上(作为二维码)
--m, --mode [mode]    设置构建we文件的方式, transformer 最基础的风格适合单文件, loader:wepack 风格 适合模块化的多文件。默认为 transformer
-```
-
-#### 开启调试
-
-```
-$ weex debug
-```
-
-单纯启动一个调试服务器,并同时唤起chrome浏览器打开`调试主页`.
-这个`调试主页`上会有一个二维码,使用Playground App扫这个二维码可以开启Playground调试.
-开启调试后,设备列表中会出现您的设备,根据提示进行后续的调试操作
-#### 调试 we文件
-
-```
-$weex debug your_weex.we
-```
-
-这个命令会将your_weex.we编译成bundlejs文件 部署到debug服务器
-并启动debug服务器如上述命令那样.打开的`调试主页`会多显示一个二维码,使用playground app
-扫这个码可以加载your_weex.we.(注意要先扫描开启调试的那个码)
-这个命令会自动检测your_weex.we文件变动,如果发现内容被修改则立即重新编译部署,并刷新debugger页面
-.
-#### 调试整个bundle/we文件夹
-
-```
-$weex debug your/we/path  -e index.we
-```
-
-这个命令会编译你指定目录下的所有的we文件,并把编译好的bundlejs部署到debug服务器,他们的地址会映射到 http://lcoalhost:8088/weex/ 下
-比如 your/we/path/`index.we` 可以通过http://lcoalhost:8088/weex/index.js访问  
-your/we/path/`demo/test.we` 可以通过http://lcoalhost:8088/weex/demo/index.js  
-
--e参数可以指定一个入口的we文件,这个文件的地址会显示在`调试主页`上(作为二维码)
-## 特性
-### 连接设备
-
-![devtools-main](https://img.alicdn.com/tps/TB13fwSKFXXXXXDaXXXXXXXXXXX-887-828.png)
-### Inspector
-
- Inspector 能够用来查看 `Element` \ `NetWork` \ `Console log` \ `ScreenCast` \ `BoxModel` \ `Native View` 等。
-
-![devtools-inspector](https://img.alicdn.com/tps/TB1O.nwKFXXXXX8XpXXXXXXXXXX-1436-811.png)
-#### Element
-
-![inspector-element](https://img.alicdn.com/tps/TB1.02bKFXXXXXwaXXXXXXXXXXX-2880-1800.png)
-#### NetWork
-##### 查看网络请求的总耗时和延时
-
-![inspector-network](https://img.alicdn.com/tps/TB1NjO_KFXXXXcaaXXXXXXXXXXX-2880-1800.png)
-##### 查看网络请求的header和response
-
-![inspector-network](https://img.alicdn.com/tps/TB1ck6lKFXXXXbZXFXXXXXXXXXX-2880-1800.png)
-#### 控制台
-
-![inspector-console](https://img.alicdn.com/tps/TB1a7HqKFXXXXXMXFXXXXXXXXXX-2880-1800.png)
-#### 资源
-
-![inspector-resource](https://img.alicdn.com/tps/TB1oY6cKFXXXXXQaXXXXXXXXXXX-2880-1800.png)
-### Debugger
-
- 调试器用来调试weex中的js代码,能够设置断点、查看调用栈。 
-
-![devtools-debugger](https://img.alicdn.com/tps/TB1aPTEKFXXXXXaXXXXXXXXXXXX-1436-813.png)
-##### Breakpoint and CallStack
-
-![debugger-breakpoint](https://img.alicdn.com/tps/TB1_trbKFXXXXc0XVXXXXXXXXXX-2880-1800.png)
-#### 集成devtools
-- Android
-  - 请参考文档 [Weex devtools (Android)](../../references/advanced/integrate-devtool-to-android.html), 其中有详细说明。
-- IOS
-  - 请参考文档 [Weex devtools (iOS)](../../references/advanced/integrate-devtool-to-ios.html), 其中有详细说明。
diff --git a/doc/source/cn/guide/tools/index.md b/doc/source/cn/guide/tools/index.md
index b570faa..cd2c226 100644
--- a/doc/source/cn/guide/tools/index.md
+++ b/doc/source/cn/guide/tools/index.md
@@ -7,5 +7,4 @@
 
 # 周边工具  
 
-- [Devtools](./devtools.html)
-- [Weexpack](./weexpack.html)
+- [weex-toolkit](./toolkit.html)
diff --git a/doc/source/cn/guide/tools/toolkit.md b/doc/source/cn/guide/tools/toolkit.md
new file mode 100644
index 0000000..90bfe13
--- /dev/null
+++ b/doc/source/cn/guide/tools/toolkit.md
@@ -0,0 +1,231 @@
+---
+title: 使用 weex-toolkit
+type: guide
+order: 5.1
+version: 2.1
+---
+
+# weex-toolkit
+
+[weex-toolkit](https://github.com/weexteam/weex-toolkit) 是官方提供的一个脚手架命令行工具,你可以使用它进行 Weex 项目的创建,调试以及打包等功能。
+
+### 安装
+
+使用 `npm` 安装:
+
+``` bash
+$ npm install -g weex-toolkit
+```
+安装成功后,你输入 `weex` 应该可以看到下面的提示效果;
+
+![weex-commands](https://img.alicdn.com/tfs/TB1NBhdQXXXXXXzXFXXXXXXXXXX-712-343.png)
+
+如果你本地没有安装 node.js 你可以前往[官网](https://nodejs.org/en/)下载安装。
+
+*请确保你的 node 版本是>=6,你可以使用 [n](https://github.com/tj/n) 来进行 node 的版本管理。
+
+中国用户如果npm遭遇网络问题,可以使用淘宝的 [cnpm](https://npm.taobao.org/) 镜像:
+
+``` bash
+$ npm install -g cnpm --registry=https://registry.npm.taobao.org
+$ cnpm install -g weex-toolkit
+```
+
+如果你安装的过程中遇到了问题,比如 *permission error* 你可以去 [weex-toolkit issues](https://github.com/weexteam/weex-toolkit/issues) 找到解决方法。
+
+
+### 初始化 weex 项目
+
+
+```bash
+$ weex init awesome-project
+```
+
+执行完命令后,在 `awesome-project` 目录中就创建了一个使用 `Weex` 和 `Vue` 的模板项目。
+
+
+然后我们进入项目所在路径,`weex-toolkit` 已经为我们生成了标准项目结构。
+
+在 `package.json` 中,已经配置好了几个常用的 npm script,分别是:
+
+- `build`: 源码打包,生成 JS Bundle
+- `dev`: webpack watch 模式,方便开发
+- `serve`: 开启静态服务器
+- `debug`: 调试模式
+
+我们先通过 `npm install` 安装项目依赖。之后运行 `npm run dev` 和 `npm run serve` 开启 `watch` 模式和静态服务器。
+
+然后我们打开浏览器,进入 `http://localhost:8080/index.html` 即可看到 Weex h5 页面。
+
+
+### 实时预览
+
+`weex-toolkit` 支持预览你当前开发的weex页面(`.we`或者`.vue`),你只需要指定预览的文件路径即可:
+
+``` bash
+$ weex src/foo.vue 
+```
+
+浏览器会自动弹出页面,这个时候你可以看到你所编辑的 Weex页面的具体效果和页面布局。如果你使用 [Playground](https://weex.apache.org/cn/playground.html) 扫描右边的二维码,就能够看到 Weex 在 Android/IOS 设备上的效果了。
+
+如果你需要预览整个项目目录,你可以输入这样的命令:
+
+``` bash
+$ weex src --entry src/foo.vue
+```
+你需要在传入的参数指定预览的目录和入口文件。
+
+### 打包weex项目
+
+如果开发完成后,你可以使用 `weex compile` 通过命令行工具进行单个文件或者整个项目的打包。
+
+``` bash
+weex compile src/foo.vue dist
+```
+命令行需要两个参数,你的源码文件或者目录, 以及你生成打包后的目录地址。
+
+
+### 调试 Weex 页面
+
+weex-toolkit支持调试工具。**[weex devtools](https://github.com/weexteam/weex-devtool)** ,它是专门为Weex定制的一款实现了 [**Chrome Debugging Protocol**](https://developer.chrome.com/devtools/docs/debugger-protocol) 的 inspect/debug 工具,能够帮助你快速查看 app 运行状态和调试 Weex 中的 JS 代码,当前支持 **IOS** 和 **Android** 两个平台。
+
+#### 用法
+
+``` bash
+ weex debug [options] [we_file|bundles_dir]
+ ```
+
+  选项:
+
+```
+-h, --help           显示帮助
+-V, --verbose        显示 debug 服务器运行时的各种 log
+-v, --version        显示版本
+-p, --port [port]    设置 debug 服务器端口号 默认为8088
+-e, --entry [entry]  debug 一个目录时,这个参数指定整个目录的入口 bundle 文件,这个 bundle 文件的地址会显示在 debug 主页上(作为二维码)
+-m, --mode [mode]    设置构建 we 文件的方式,transformer 最基础的风格适合单文件, loader:webpack 风格 适合模块化的多文件 . 默认为 transformer
+```
+#### 开启调试
+
+```
+$ weex debug
+```
+
+单纯启动一个调试服务器,并同时唤起Chrome浏览器打开`调试主页`。
+这个`调试主页`上会有一个二维码,使用 Playground App 扫这个二维码可以开启 Playground 调试。
+开启调试后,设备列表中会出现您的设备,根据提示进行后续的调试操作。
+
+#### 调试 `.we` | `.vue` 文件
+
+```
+$ weex debug your_weex.vue
+```
+
+这个命令会将 `your_weex.vue` 编译成 `JS Bundle` 文件 部署到 debug 服务器;
+并启动debug服务器如上述命令那样打开的`调试vue主页`会多显示一个二维码,使用 Playground App扫这个二维码码可以加载 `your_weex.we` (注意要先扫描开启调试的那个二维码码)。
+这个命令会自动检测 `your_weex.we` 文件变动,如果发现内容被修改则立即重新编译部署,并刷新 `debugger` 页面。
+.
+#### 调试整个bundle/we文件夹
+
+同样你也可以调试整个目录的文件,你只需要传入目录的路径和入口文件即可;
+
+```
+$weex debug your/we/path  -e index.we
+```
+
+这个命令会编译你指定目录下的所有的 `.we` 文件,并把编译好的 JS Bundle 部署到 debug 服务器,他们的地址会映射到 http://lcoalhost:8088/weex/ 下
+比如 `your/we/path/index.we` 可以通过 http://lcoalhost:8088/weex/index.js 访问。  
+`your/we/path/demo/test.we` 可以通过 http://lcoalhost:8088/weex/demo/index.js 。
+
+`-e` 参数可以指定一个入口的 `.we` 文件,这个文件的地址会显示在`调试主页`上(作为二维码)。
+
+#### 特性
+##### 连接设备
+
+![devtools-main](https://img.alicdn.com/tps/TB13fwSKFXXXXXDaXXXXXXXXXXX-887-828.png)
+##### Inspector
+
+ Inspector 能够用来查看 `Element` \ `NetWork` \ `Console log` \ `ScreenCast` \ `BoxModel` \ `Native View` 等。
+
+![devtools-inspector](https://img.alicdn.com/tps/TB1O.nwKFXXXXX8XpXXXXXXXXXX-1436-811.png)
+##### Element
+
+![inspector-element](https://img.alicdn.com/tps/TB1.02bKFXXXXXwaXXXXXXXXXXX-2880-1800.png)
+##### NetWork
+##### 查看网络请求的总耗时和延时
+
+![inspector-network](https://img.alicdn.com/tps/TB1NjO_KFXXXXcaaXXXXXXXXXXX-2880-1800.png)
+##### 查看网络请求的header和response
+
+![inspector-network](https://img.alicdn.com/tps/TB1ck6lKFXXXXbZXFXXXXXXXXXX-2880-1800.png)
+##### 控制台
+
+![inspector-console](https://img.alicdn.com/tps/TB1a7HqKFXXXXXMXFXXXXXXXXXX-2880-1800.png)
+##### 资源
+
+![inspector-resource](https://img.alicdn.com/tps/TB1oY6cKFXXXXXQaXXXXXXXXXXX-2880-1800.png)
+#### Debugger
+
+ 调试器用来调试 Weex 中的 JS 代码,能够设置断点、查看调用栈。 
+
+![devtools-debugger](https://img.alicdn.com/tps/TB1aPTEKFXXXXXaXXXXXXXXXXXX-1436-813.png)
+##### Breakpoint and CallStack
+
+![debugger-breakpoint](https://img.alicdn.com/tps/TB1_trbKFXXXXc0XVXXXXXXXXXX-2880-1800.png)
+#### 集成devtools
+- Android
+  - 请参考文档 [Weex devtools (Android)](../../references/advanced/integrate-devtool-to-android.html),其中有详细说明。
+- IOS
+  - 请参考文档 [Weex devtools (iOS)](../../references/advanced/integrate-devtool-to-ios.html), 其中有详细说明。
+  
+  
+### weex-toolkit 对 weexpack 的水平扩展
+
+[weexpack](https://github.com/weexteam/weex-pack) 是基于 Weex 快速搭建应用原型的利器。它能够帮助开发者通过命令行创建 Weex 工程,添加相应平台的 Weex app 模版,并基于模版从本地,GitHub 或者 Weex 应用市场安装插件,快速打包 Weex 应用并安装到手机运行,对于具有分享精神的开发者而言还能够创建 Weex 插件模版并发布插件到 Weex 应用市场。
+
+现在使用 `weex-toolkit` 同样支持对 `weexpack` 的命令调用,如果你当前的项目与 `weexpack` 生成的项目目录一致,那么你可以直接实现对于 `platform` 的操作,从而构建具体的 Android/IOS app 。
+
+### weex platform 以及 run 命令
+
+如果我们希望在模拟器或者真机上查看 Weex 运行的效果,我们可以使用 `platform` 添加或者删除 Weex 应用模板。
+
+``` bash
+$ weex platform add ios 
+```
+在第一次使用 platform/plugin 命令的时候,可能会遇到下面的界面,你只需要输入 Y 或者直接 enter 键即可。
+![install weexpack](https://gw.alicdn.com/tfs/TB19n4AQXXXXXawXVXXXXXXXXXX-577-70.png)
+
+添加ios平台,然后这个时候只要输入:
+
+``` bash
+$ weex run ios
+```
+
+就能看到启动的模拟器运行的效果了。
+
+
+### weex plugin 命令
+
+如果你想使用[插件市场](https://market.dotwe.org)的插件,你可以使用:
+
+```bash
+$ weex plugin add plugin_name
+```
+
+你只需要输入插件的名称就可以从远程添加插件到你本地的项目,比如添加 weex-chart,我们可以输入命令:
+
+``` bash
+$ weex plugin add weex-chart
+```
+
+
+我们可以使用`plugin remove`移除插件,比如移除安装好的 weex-cahrt:
+
+``` bash
+$ weex plugin remove weex-chart
+```
+
+关于 `weexpack` 更加详细的介绍,你可以阅读 [官方文档](https://github.com/weexteam/weex-pack)。
+
+
+
diff --git a/doc/source/cn/guide/tools/weexpack.md b/doc/source/cn/guide/tools/weexpack.md
deleted file mode 100644
index d570e4a..0000000
--- a/doc/source/cn/guide/tools/weexpack.md
+++ /dev/null
@@ -1,388 +0,0 @@
----
-title: 使用 Weexpack
-type: guide
-order: 5.2
-version: 2.1
----
-
-# 使用 Weexpack
-
-## weexpack 介绍
-
-weexpack 是 weex 新一代的工程开发套件,是基于 weex 快速搭建应用原型的利器。它能够帮助开发者通过命令行创建 Weex 工程,添加相应平台的 Weex app 模版,并基于模版从本地、GitHub 或者 Weex 应用市场安装插件,快速打包 Weex 应用并安装到手机运行,对于具有分享精神的开发者而言还能够创建 Weex 插件模版并发布插件到 Weex 应用市场。
-
-**注意:** weexpack 目前暂不支持搭建 Vue 2.0 版本的 Weex。
-
-weexpack 所提供的命令大致可分为三组,分别是:
-
-* 打包命令
- * **weexpack create** — 创建 Weex 工程项目。
- * **weexpack platform add/remove** — 安装/移除 Weex 应用模版,默认模版支持 Weex bundle 调试和插件机制。
- * **weexpack platform list** — 查看已安装的平台模版及版本。
- * **weexpack platform run** - 打包应用并安装到设备运行。
-
-
-* 插件使用者命令
- * **weexpack plugin add/remove** — 安装/移除 Weex 插件,支持从本地、GitHub 或者  Weex 应用市场安装插件。
-
- * **weexpack plugin list** — 查看已安装的插件及版本。
-
-
-* 插件开发者命令
-
- * **weexpack plugin create** - 生成 Weex 插件模版,主要是配置文件和必需的目录。
- * **weexpack plugin publish** - 发布插件到 Weex 插件市场。
-
-
-## 安装
-
-### 环境要求
-
- - 目前支持 Mac、windows、linux 平台 ( windows 下仅能打包 android )。
- - 配置 [Node.js][1] 环境,并且安装 [npm][2] 包管理器 (`需要 node6.0+`)。
- - 如果要支持 iOS 平台则需要配置 iOS 开发环境:
-     - 安装 [Xcode IDE][3] ,启动一次 Xcode ,使 Xcode 自动安装开发者工具和确认使用协议。
-     - 安装 cocoaPods。
- - 如果要支持 Android 平台则需要配置 Android 开发环境:
-    - 安装 [Android Studio][4](推荐)或者 [Android SDK][7]。打开 [AVD Manager][5] ,新建 Android 模拟器并启动(如果有安装 [Docker][6] ,请关闭 Docker Server )。
-    - 保证 Android build-tool 的版本为 23.0.2。
-
-#### 安装命令
-
-首先,全局安装 weex-pack 命令:
-
-```bash
-$ npm install -g weexpack
-```
-
-或者 在 clone 的 weexpack 根目录下执行
-
-```bash
-$ npm install
-```
-
-## 打包及插件使用
-
-打包主要过程如下图所示,其中插件操作是打包过程的可选项,不是必须的。
-
-![weexpack1](https://img.alicdn.com/tps/TB1.bpVPXXXXXarapXXXXXXXXXX-462-310.png)
-
-### 详细步骤
-
-#### 1. 创建 weexpack 工程
-
-```bash
-$ weexpack create appName
-```
-
-生成工程的目录如下:
-
-```
-WeexProject
-├── README.md
-├── android.config.json
-├── config.xml
-├── hooks
-│   └── README.md
-├── ios.config.json
-├── package.json
-├── platforms     // 平台模版目录
-├── plugins       // 插件下载目录
-│   └── README.md
-├── src           // 业务代码(we文件)目录
-│   └── index.we
-├── start
-├── start.bat
-├── tools
-│   └── webpack.config.plugin.js
-├── web
-│   ├── index.html
-│   ├── index.js
-│   └── js
-│       └── init.js
-└── webpack.config.js
-```
-
-通过 create 命令创建的工程默认不包含 iOS 和 Android 工程模版,创建完成之后就可以切换到 appName 目录下并安装依赖。
-
-```bash
-$ cd appName && npm install
-```
-
-#### 2. 安装 Weex 应用模版
-
-添加应用模版,官方提供的模版默认支持 Weex bundle 调试和插件机制,注意模版名称均为小写,模版被安装到 platforms 目录下。
-
-* android 模版
-
-  ```bash
-  $ weexpack platform add android
-  ```
-
-* iOS 模版
-
-  ```bash
-  $ weexpack platform add ios
-  ```
-
-android 平台,安装后 platforms 目录如下
-
-```
-platforms
-└── android
-    ├── LICENSE
-    ├── NOTICE
-    ├── README.md
-    ├── app
-    │   ├── build
-    │   ├── build.gradle
-    │   ├── proguard-rules.pro
-    │   └── src
-    ├── appframework
-    │   ├── build
-    │   ├── build.gradle
-    │   ├── proguard-rules.pro
-    │   └── src
-    ├── build
-    │   └── generated
-    ├── build.gradle
-    ├── codeStyleSettings.xml
-    ├── gradle
-    │   └── wrapper
-    ├── gradle.properties
-    ├── gradlew
-    ├── gradlew.bat
-    ├── settings.gradle
-    └── weexplugin
-        ├── build.gradle
-        ├── proguard-rules.pro
-        └── src 
-                              
-```
-
-ios平台,安装后 platforms 目录如下
-  
-```
-platforms
-   └── ios
-       ├── LICENSE
-       ├── Podfile
-       ├── README.md
-       ├── WeexDemo
-       │   ├── AppDelegate.h
-       │   ├── AppDelegate.m
-       │   ├── Assets.xcassets
-       │   ├── DemoDefine.h
-       │   ├── Images.xcassets
-       │   ├── WeexConfig
-       │   ├── WeexDemo-Info.plist
-       │   ├── WeexScanner
-       │   ├── config.xml
-       │   ├── main.m
-       │   └── weex-icon.png
-       ├── WeexDemo.xcodeproj
-       │   ├── project.pbxproj
-       │   ├── project.xcworkspace
-       │   ├── xcshareddata
-       │   └── xcuserdata
-       ├── WeexDemo.xcworkspace
-       │   ├── contents.xcworkspacedata
-       │   ├── xcshareddata
-       │   └── xcuserdata
-       ├── WeexDemoTests
-       │   ├── Info.plist
-       │   └── WeexDemoTests.m
-       ├── WeexUITestDemo-Info.plist
-       ├── WeexUITestDemoUITests
-       │   ├── Info.plist
-       │   └── WeexUITestDemoUITests.m
-       ├── Weexplugin
-       │   ├── Podfile
-       │   ├── Weexplugin
-       │   ├── Weexplugin.podspec
-       │   ├── Weexplugin.xcodeproj
-       │   └── WeexpluginTests
-       ├── bundlejs
-  
-  ```
-
-对于已安装的模版可以使用 weexpack platform list 命令查看。
-
-* 查看已安装模版
-
-  ```bash
-  $ weexpack platform list
-  ```
-
-  示例结果:
-
-  ```
-  Installed platforms:
-    android
-  Available platforms:
-    android ^6.2.1
-  ```
-    
-如果想要删除某个不需要的平台可以使用 weexpack platform remove 移除,比如 Windows 平台用户是不需要 iOS 模版的,可用如下命令移除。
-
-
-* 移除相应平台模版
-
-  ```bash
-  $ weexpack platform remove ios
-  ```
-
-#### 3. 安装 Weex 插件(可选项)
-
-添加想要使用的插件,支持从本地或者 Weex 应用市场安装插件。
-
-* 从本地添加插件,在开发插件时会经常用到
-
-  ```bash
-  $ weexpack plugin add path/to/plugin
-  ```
-
-* 从插件市场添加插件,例如 weex-chart。
-
-  ```bash
-  $ weexpack plugin add weex-chart
-  ```
-
-模版的 weexplugin 是插件安装的目标工程。以 Android 为例,其目录如下:
-
-```
-weexplugin
-├── build.gradle  //  插件编译脚本,工具自动维护
-├── libs
-├── proguard-rules.pro
-├── src
-│   └── main
-│       ├── AndroidManifest.xml // 插件android manifest配置文件
-│       ├── java
-│       │   ├── // 插件src安装目录
-│       │   └── com
-│       │       └── alibaba
-│       │           └── weex
-│       │               └── plugin
-│       │                   ├── ConfigXmlParser.java // 配置文件解析器
-│       │                   ├── PluginConfig.java    // 外部接口
-│       │                   ├── PluginEntry.java     // 插件描述
-│       │                   └── PluginManager.java   // 插件管理器
-│       └── res // 插件资源安装目录
-│           ├── drawable
-│           ├── values
-│           │   └── strings.xml
-│           └── xml
-│               └── config.xml // 插件配置文件,PluginManager 解析配置文件加载插件
-```
-
-对于已安装的插件可以使用 weexpack plugin list 命令查看。
-
-* 查看已安装插件
-
-  ```bash
-  $ weexpack plugin list
-  ```
-
-如果想要删除某个不需要的插件可以使用 weexpack plugin remove 移除,比如 weex-chart
-
-* 移除插件,例如 weex-chart
-
-  ```bash
-  $ weexpack plugin remove weex-chart
-  ```
-
-
-
-#### 4. 打包应用并安装运行
-
-完成以上步骤并 Weex 代码放在 src 目录下,就可以打包运行了,打包过程中可能要下载依赖和编译工具,这会是个较为耗时的过程,安装运行需要打开模拟器或者连接设备。
-
-* 打包运行 android 应用
-
-  ```bash
-  $ weexpack run android
-  ```
-
-  你可以更改项目目录下的 android.config.json
-    * AppName: 应用名
-    * AppId: application_id 包名
-    * SplashText: 欢迎页上面的文字
-    * WeexBundle: 指定的 Weex bundle 文件(支持文件名和 url 的形式)
-
-  文件名则以本地文件的方式加载 bundle, url 则以远程的方式加载 bundle
-  如果以本地方式指定 bundle, `.we` 文件请放到 src 目录。
-
-* 打包运行 iOS 应用
-  * 模拟器运行
-
-  ```bash
-  $ weexpack run ios
-  ```
-
-  * 构建 ipa 包
-
-  ```bash
-  $ weexpack build ios
-  ```
-
-  构建包的过程中,将会提示让您输入 `CodeSign(证书)`,`Profile(provisioning profile)`,`AppId`,只有输入真实的这些信息才能成功打包。
-  其余如 AppName , 和入口 Weex bundle 文件可以编辑项目目录下的 ios.config.json 配置。
-  打完包成功之后,可以在 `/playground/build/ipa_build/` 目录下获取 ipa 文件
-
-  **注:证书需要预先安装到 keychain 中,在 keychain 中点击右键获取证书 `id`(证书名称),`provisioning profile` 文件(*mobileprovision)需要获取 UUID,进入[目录](https://github.com/weexteam/weex-pack/tree/dev/generator/platforms/templates) 可以看到 `mobileprovision_UUID.sh` 文件,此文件可以获取到 UUID**
-
-  `mobileprovision_UUID.sh` 用法如下:
-  
-  ```bash
-  $  ./mobileprovision_UUID.sh   \*mobileprovision
-  ```
-
-  参数(\*mobileprovision)为 `provisioning profile` 文件路径
-
-* 打包 Web 平台:
-
-  ```bash
-  $ weexpack build web
-  ```
-     
-  这样你可以把打包后的资源上传到 CDN 服务器,然后上线你的 Web 项目。
-  
-* 在 Web 平台运行:
-
-  ```bash
-  $ weexpack run web
-  ```
-     
-#### 5.现有应用集成插件 —— 组件容器
-
-* 组件容器作用
-
-  插件可以通过组件容器的方式集成到客户端(app),组件容器可以方便生成二进制包,现有应用可以通过各种形式把二进制包或源码集成进去,比如 iOS 可以通过 pod 依赖   的形式等。在 weexpack 创建的根目录下,运行 weexpack plugin add/remove 命令直接安装/删除 Weex plugin 到组件容器中。
-
-* 组件容器获取
-	* 方式1:通过第二步<sup>[[link](#weex-plugin)]</sup>生成的 Android/iOS 目录中包含 Weexplugin 目录,此目录是组件容器
-	* 方式2:通过 repo 地址 clone 代码 [iOS地址](https://github.com/weexteam/weexpluginContainer-iOS) [Android 地址](https://github.com/weexteam/weexplugin-android) 
-
-## 插件发布
-
-对于插件开发者来说,也有一组用于创建和发布插件的命令,[前往](./README_plugin.md) 查看详细文档
-
-![weexpack2](https://img.alicdn.com/tps/TB18hxjPXXXXXXgapXXXXXXXXXX-248-258.png)
-
-## 插件开发文档
-
-+ [开发 web 的插件教程](https://github.com/weexteam/weex-pack/blob/master/doc/plugin-devloping-web.md)
-
-
-## 示例
-[使用 Weexpack 打包出一个 Weex 版的 《One App》](https://github.com/weexteam/weex-pack/wiki/Create-Weex-One-App-with-Weexpack)
-
-[1]: https://nodejs.org/
-[2]: https://www.npmjs.com/
-[3]: https://itunes.apple.com/us/app/xcode/id497799835?mt=12
-[4]: https://developer.android.com/studio/install.html
-[5]: https://developer.android.com/studio/run/managing-avds.html
-[6]: https://www.docker.com/
-[7]: https://developer.android.com/studio/releases/sdk-tools.html
-[8]: https://developer.android.com/studio/run/managing-avds.html
diff --git a/doc/source/cn/references/advanced/extend-to-ios.md b/doc/source/cn/references/advanced/extend-to-ios.md
index 25872bb..5229201 100644
--- a/doc/source/cn/references/advanced/extend-to-ios.md
+++ b/doc/source/cn/references/advanced/extend-to-ios.md
@@ -5,6 +5,12 @@
 version: 2.1
 ---
 
+## 注意
+
+**Weex 所有暴露给  JS 的内置 module 或 component API 都是安全和可控的, 它们不会去访问系统的私有 API ,也不会去做任何 runtime 上的 hack 更不会去改变应用原有的功能定位。**
+
+**如果需要扩展自定义的 module 或者 component ,一定注意不要将 OC 的 runtime 暴露给 JS , 不要将一些诸如 `dlopen()`, `dlsym()`, `respondsToSelector:`,`performSelector:`,`method_exchangeImplementations()` 的动态和不可控的方法暴露给JS, 也不要将系统的私有API暴露给JS**
+
 ## Module 扩展
 
 [swift](https://github.com/weexteam/article/issues/55) 扩展 module 
@@ -19,7 +25,7 @@
 4. Module 方法会在UI线程中被调用,所以不要做太多耗时的任务在这里,如果要在其他线程执行整个module 方法,需要实现`WXModuleProtocol`中`- (NSThread *)targetExecuteThread`的方法,这样,分发到这个module的任务会在指定的线程中运行
 5. Weex 的参数可以是 String 或者Map
 6. Module 支持返回值给 JavaScript中的回调,回调的类型是`WXModuleCallback`,回调的参数可以是String或者Map
-    
+
     ```object-c
     @implementation WXEventModule
     @synthesize weexInstance;
@@ -32,18 +38,50 @@
         } else if (![url hasPrefix:@"http"]) {
             newURL = [NSURL URLWithString:url relativeToURL:weexInstance.scriptURL].absoluteString;
         }
-    
+
         UIViewController *controller = [[WXDemoViewController alloc] init];
         ((WXDemoViewController *)controller).url = [NSURL URLWithString:newURL];
-    
+
         [[weexInstance.viewController navigationController] pushViewController:controller animated:YES];
         callback(@{@"result":@"success"});
     }
-    
+
     @end
     ```
 
-另外,`0.10.0` 开始支持同步模块 API 调用,您可以使用宏 `WX_EXPORT_METHOD_SYNC` 导出模块方法,这些方法可以使 JavaScript 接受从 native 返回的值,它只能在 JS 线程被调用。
+#### 暴露同步方法<span class="api-version">v0.10+</span>
+
+如果你想要暴露同步的native方法给JS, 即JS可以直接拿到Native的返回值。 你可以使用`WX_EXPORT_METHOD_SYNC` 宏。
+
+native 代码:
+
+```objective-c
+@implementation WXEventModule
+
+WX_EXPORT_METHOD_SYNC(@selector(getString))
+  
+- (NSString *)getString
+{
+    return @"testString";
+}
+
+@end
+```
+
+js 代码:
+
+```javascript
+const eventModule = weex.requireModule('event')
+const returnString = syncTest.getString()  // return "testString"
+```
+
+除了string, 你也可以返回 `number/array/dictionary` 类型.
+
+`注意:`  暴露的同步方法只能在 JS 线程执行,请不要做太多同步的工作导致JS执行阻塞。
+
+`注意:`  Vue 2.0 还未支持这个特性,最早会在 0.12 版本支持
+
+
 
 ### 注册 module
 
@@ -117,7 +155,7 @@
 ```
 
 ### handler注册
- 
+
 你可以通过WXSDKEngine 中的 `registerHandler:withProtocol`注册handler
 
 ```object-c
@@ -177,19 +215,19 @@
 
 native 的 component 是由 Weex 管理的,Weex 创建,布局,渲染,销毁。Weex 的 component 生命周期都是可以 hook 的,你可以在这些生命周期中去做自己的事情。
 
-| 方法 | 描述 |
-| :-: | --- |
-| initWithRef:type:... | 用给定的属性初始化一个component. |
-| layoutDidFinish | 在component完成布局时候会调用. |
-| loadView | 创建component管理的view. |
-| viewWillLoad | 在component的view加载之前会调用. |
-| viewDidLoad | 在component的view加载完之后调用. |
-| viewWillUnload | 在component的view被释放之前调用. |
-| viewDidUnload | 在component的view被释放之后调用. |
-| updateStyles: | 在component的style更新时候调用. |
-| updateAttributes: | 在component的attribute更新时候调用. |
-| addEvent: | 给component添加event的时候调用. |
-| removeEvent: | 在event移除的时候调用. |
+|          方法          | 描述                          |
+| :------------------: | --------------------------- |
+| initWithRef:type:... | 用给定的属性初始化一个component.       |
+|   layoutDidFinish    | 在component完成布局时候会调用.        |
+|       loadView       | 创建component管理的view.         |
+|     viewWillLoad     | 在component的view加载之前会调用.     |
+|     viewDidLoad      | 在component的view加载完之后调用.     |
+|    viewWillUnload    | 在component的view被释放之前调用.     |
+|    viewDidUnload     | 在component的view被释放之后调用.     |
+|    updateStyles:     | 在component的style更新时候调用.     |
+|  updateAttributes:   | 在component的attribute更新时候调用. |
+|      addEvent:       | 给component添加event的时候调用.     |
+|     removeEvent:     | 在event移除的时候调用.              |
 
 在 image component 的例子里面,如果我们需要我们自己的 image view 的话,可以复写 `loadView`这个方法.
 
@@ -244,9 +282,9 @@
 ##### component 方法
 
 WeexSDK 0.9.5 之后支持了在 js 中直接调用 component 的方法,这里提供一个例子
-  
+
 - 自定义一个 WXMyCompoenent 的组件
-  
+
   ```
   @implementation WXMyComponent
   WX_EXPORT_METHOD(@selector(focus)) // 暴露该方法给js
@@ -266,7 +304,7 @@
   }
   @end
   ```
-	
+
 - 注册组件 `[WXSDKEngine registerComponent:@"mycomponent" withClass:[WXMyComponent class]]`
 
 - 在 weex 文件中调用
@@ -282,4 +320,4 @@
       }
     }
   </script>
-  ``` 
+  ```
diff --git a/doc/source/cn/references/common-style.md b/doc/source/cn/references/common-style.md
index 4c12380..f3e84f7 100644
--- a/doc/source/cn/references/common-style.md
+++ b/doc/source/cn/references/common-style.md
@@ -35,45 +35,45 @@
   外边距,元素和元素之间的空白距离。值类型为 length,默认值 0
 
   可有如下写法:
-  
+
   - `margin-left {length}`:,默认值 0
   - `margin-right {length}`:,默认值 0
   - `margin-top {length}`:,默认值 0
   - `margin-bottom {length}`:,默认值 0
 - border:
-  
+
   设定边框,`border` 目前不支持类似这样 `border: 1 solid #ff0000;` 的组合写法。
 
   可有如下写法:
-  
+
   - `border-style`:
 
     设定边框样式,值类型为 string,可选值为 `solid` | `dashed` | `dotted`,默认值 `solid`
 
     可有如下写法:
-  
+
     - `border-left-style {string}`:可选值为 `solid` | `dashed` | `dotted`,默认值 `solid`
     - `border-top-style {string}`:可选值为 `solid` | `dashed` | `dotted`,默认值 `solid`
     - `border-right-style {string}`:可选值为 `solid` | `dashed` | `dotted`,默认值 `solid`
     - `border-bottom-style {string}`:可选值为 `solid` | `dashed` | `dotted`,默认值 `solid`
 
   - `border-width {length}`:
-  
+
     设定边框宽度,非负值, 默认值 0
 
     可有如下写法:
-  
+
     - `border-left-width {length}`:,非负值, 默认值 0
     - `border-top-width {length}`:,非负值, 默认值 0
     - `border-right-width {length}`:,非负值, 默认值 0
     - `border-bottom-width {length}`:,非负值, 默认值 0
 
   - `border-color {color}`:
-  
+
     设定边框颜色,默认值 `#000000`
-  
+
     可有如下写法:
-  
+
     - `border-left-color {color}`:,默认值 `#000000`
     - `border-top-color {color}`:,默认值 `#000000`
     - `border-right-color {color}`:,默认值 `#000000`
@@ -83,7 +83,7 @@
     设定圆角,默认值 0
 
     可有如下写法:
-  
+
     - `border-bottom-left-radius {length}`:,非负值, 默认值 0
     - `border-bottom-right-radius {length}`:,非负值, 默认值 0
     - `border-top-left-radius {length}`:,非负值, 默认值 0
@@ -236,7 +236,7 @@
 Weex 支持 `position` 定位,用法与 CSS position 类似。为元素设置 `position` 后,可通过 `top`、`right`、`bottom`、`left` 四个属性设置元素坐标。
 
 - `position {string}`:
-  
+
   设置定位类型。可选值为 `relative` | `absolute` | `fixed` | `sticky`,默认值为 `relative`。
 
   - `relative` 是默认值,指的是相对定位;
@@ -251,7 +251,7 @@
 **注意:**
 
 1. Weex 目前不支持 `z-index` 设置元素层级关系,但靠后的元素层级更高,因此,对于层级高的元素,可将其排列在后面。
-2. 如果定位元素超过容器边界,在 Android 下,超出部分将**不可见**,原因在于 Android 端元素 `overflow` 默认值为 `hidden`,但目前 Android 暂不支持设置 `overflow: visible`。 
+2. 如果定位元素超过容器边界,在 Android 下,超出部分将**不可见**,原因在于 Android 端元素 `overflow` 默认值为 `hidden`,但目前 Android 暂不支持设置 `overflow: visible`。
 
 ### 示例
 
@@ -328,19 +328,19 @@
 
 <style scoped>
   .wrapper {
-    align-items: center; 
+    align-items: center;
     margin-top: 120px;
   }
   .title {
     font-size: 48px;
   }
   .logo {
-    width: 360px; 
+    width: 360px;
     height: 82px;
     background-color: red;
   }
   .logo:active {
-    width: 180px; 
+    width: 180px;
     height: 82px;
     background-color: green;
   }
@@ -458,6 +458,58 @@
 </style>
 ```
 
+## 阴影(box-shadow) <span class="api-version">v0.11+</span>
+
+Weex 支持阴影属性:`active`, `focus`, `disabled`, `enabled` `inset(可选)`,`offset-x`,`offset-y`, `blur-radius`,`color`
+
+
+### 注意
+
+- box-shadow仅仅支持iOS
+
+### 示例
+
+```html
+<template>
+  <div class="wrapper">
+    <div style="width:400px; height:60px;background-color: #FFE4C4; box-shadow:20px  10px rgb(255, 69, 0);">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+    <div style="margin-top: 80px;width:400px; height:60px;background-color: #FFE4C4; box-shadow: 20px  10px 5px rgba(255, 69, 0, 0.8);">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+    <div style="margin-top: 80px;width:400px; height:60px;background-color: #FFE4C4; box-shadow:inset 20px  10px 5px rgba(255, 69, 0, 0.8);">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+    <div style="margin-top: 80px;width:400px; height:60px;background-color: #FFE4C4; box-shadow:inset 20px  10px 5px rgb(255, 69, 0);">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+    <div style="margin-top: 80px;width:400px; height:60px;background-color: #FFE4C4; box-shadow:20px  10px 5px black;">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+    <div style="margin-top: 80px;width:400px; height:60px;background-color: #FFE4C4; box-shadow:20px  10px 5px #008B00;">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+  </div>
+</template>
+
+<style scoped>
+  .wrapper {align-items: center; margin-top: 120px;}
+  .title {font-size: 48px;}
+</style>
+
+<script>
+  module.exports = {
+    data: function () {
+      return {
+        logoUrl: 'https://alibaba.github.io/weex/img/weex_logo_blue@3x.png',
+        target: 'World'
+      };
+    }
+  };
+</script>
+```
+
 ## 其他基本样式
 
 - `opacity {number}`:取值范围为 [0, 1] 区间。默认值是 1,即完全不透明;0 是完全透明;0.5 是 50% 的透明度。
diff --git a/doc/source/cn/references/components/input.md b/doc/source/cn/references/components/input.md
index a73db32..133b393 100644
--- a/doc/source/cn/references/components/input.md
+++ b/doc/source/cn/references/components/input.md
@@ -25,6 +25,7 @@
 - `disabled {boolean}`:布尔类型的数据,表示是否支持输入。通常 `click` 事件在 `disabled` 控件上是失效的。
 - `autofocus {boolean}`:布尔类型的数据,表示是否在页面加载时控件自动获得输入焦点。
 - `maxlength {nubmer}`:<sup class="wx-v">v0.7</sup>一个数值类型的值,表示输入的最大长度。
+- `return-key-type {string}`:<sup class="wx-v">v0.11</sup>键盘返回键的类型,支持 defalut;go;next;search;send,done。
 
 ## 样式
 
@@ -84,6 +85,12 @@
   事件中 event 对象属性:
 
   - `timestamp`: 事件发生时的时间戳。
+- `return`: 键盘点击返回键。
+
+    事件中 event 对象属性:
+
+    - `returnKeyType`: 事件发生时的返回键类型。
+    - `value`: 触发事件的组件的文本;
 
 - 通用事件
 
@@ -109,7 +116,12 @@
 - `blur()` <span class="api-version">v0.9+</span>
 
   `blur()` 方法用于从 `input` 组件中移除焦点并关闭软键盘(如果它具有焦点)。
-
+- `setSelectionRange(selectionStart,selectionEnd)`  <span class="api-version">v0.11+</span>设置文本选区
+  - `selectionStart {number}`:设置文本选区的起始点
+  - `selectionEnd {number}`:设置文本选区的起终点
+- `getEditSelectionRange(callback[selectionStart,selectionEnd])`  <span class="api-version">v0.11+</span>设置文本选区
+    - `selectionStart {number}`:获取文本选区的起始点
+    - `selectionEnd {number}`:获取文本选区的起终点
 ## 约束
 
 目前不支持 `this.$el(id).value = ''` 这种方式改写 input value。只支持在 `<input>` 组件的 `input`、`change` 事件中改写。
diff --git a/doc/source/cn/references/components/refresh.md b/doc/source/cn/references/components/refresh.md
index a6eb6fb..24a5823 100644
--- a/doc/source/cn/references/components/refresh.md
+++ b/doc/source/cn/references/components/refresh.md
@@ -36,7 +36,14 @@
 ## 事件
 
 - `refresh`: 当 `<scroller>`/`<list>` 被下拉时触发。
-- `pullingdown`:仅在 Android 支持。当 `<scroller>`/`<list>` 被下拉时触发,可以从事件的参数对象中获取 dy,headerHeight,maxHeight
+- `pullingdown`<span class="weex-version">v0.6.1+</span>: 当 `<scroller>`/`<list>` 被下拉时触发,可以从事件的参数对象中获取 dy,pullingDistance, viewHeight, type
+
+  ```
+  dy: 前后两次回调滑动距离的差值
+  pullingDistance: 下拉的距离
+  viewHeight: refreshView 高度
+  type: "pullingdown" 常数字符串
+  ```
 
 ## 约束
 
diff --git a/doc/source/cn/references/components/waterfall.md b/doc/source/cn/references/components/waterfall.md
new file mode 100644
index 0000000..08b01ac
--- /dev/null
+++ b/doc/source/cn/references/components/waterfall.md
@@ -0,0 +1,69 @@
+\---
+
+title: <waterfall>
+
+type: references
+
+order: 2.5
+
+version: 2.1
+
+\---
+
+# waterfall
+
+<span class="weex-version">v0.11.0+</span>
+
+提供瀑布流布局的组件
+
+### 子组件
+
+注意:  和list一样, waterfall 只支持特定类型的组件: cell, header, refresh, loading 和 fixed-position 组件. 
+
+- `cell`: 瀑布流中的每个元素
+- `header`: 主要用于表示横跨多列的元素,可以通过css的position属性设置为sticky
+
+### 特性
+
+- **column-width** : 描述瀑布流每一列的列宽
+  - `auto`: 意味着列宽是被其他属性所决定的(比如 column-count)
+  - `<length>`: 最佳列宽,实际的列宽可能会更宽(需要填充剩余的空间), 或者更窄(如果剩余空间比列宽还要小)。 该值必须大于0
+- **column-count**: 描述瀑布流的列数
+  - `auto`: 意味着列数是被其他属性所决定的(比如 column-width)
+  - `<integer>`: 最佳列数,column-width 和  column-count 都指定非0值, 则 column-count 代表最大列数。
+- **column-gap**: 列与列的间隙. 如果指定了 `normal` ,则对应 `32`.
+
+其他支持的属性参见 [List Component Attributes](./list.html) 
+
+### 样式
+
+通用样式:支持所有通用样式
+
+- 盒模型
+- `flexbox` 布局
+- `position`
+- `opacity`
+- `background-color`
+
+查看 [组件通用样式](../common-style.html)
+
+### 事件
+
+- 通用事件
+
+  支持所有通用事件:
+
+  - `click`
+  - `longpress`
+  - `appear`
+  - `disappear`
+
+  查看 [通用事件](../common-event.html)
+
+### API
+
+滚动到列表某个指定项是常见需求,`<waterfall>` 拓展了该功能支持滚动到指定 `<cell>` 或者 `<header>`。通过 `dom` module 访问,更多信息可参考 [dom module](../modules/dom.html) 。
+
+### 示例
+
+参见 [playground waterfall example](http://dotwe.org/vue/7a9195643e9e8da352b0d879cdbe68c0)
\ No newline at end of file
diff --git a/doc/source/cn/references/components/web.md b/doc/source/cn/references/components/web.md
index fb48aa9..42f0681 100644
--- a/doc/source/cn/references/components/web.md
+++ b/doc/source/cn/references/components/web.md
@@ -64,7 +64,7 @@
 <template>
   <div class="wrapper">
     <div class="group">
-      <input class="input" ref="input" type="url" autofocus="false" value="https://m.taobao.com"></input>
+      <input class="input" v-model="value" ref="input" type="url" autofocus="false"></input>
     </div>
     <div class="group">
       <text class="button" @click="loadURL">LoadURL</text>
@@ -81,12 +81,13 @@
   export default {
     data () {
       return {
-        url : 'https://m.alibaba.com'
+        url : 'https://m.alibaba.com',
+        value: 'https://m.alibaba.com'
       }
     },
     methods: {
       loadURL (event) {
-        this.url = this.$refs.input.value
+        this.url = this.value
         modal.toast({ message: 'load url:' + this.url })
         setTimeout(() => {
           console.log('will go back.')
@@ -107,7 +108,7 @@
         console.log('pagefinish', event)
         modal.toast({ message: 'pagefinish' })
       },
-      finish (event) {
+      error (event) {
         console.log('error', event)
         modal.toast({ message: 'error' })
       }
@@ -151,4 +152,4 @@
 </style>
 ```
 
-[try it](http://dotwe.org/vue/154c7fa8ac13e87ff4e7bf9862147d50)
+[try it](http://dotwe.org/vue/221ff37113a12d692a7a92a100f20162)
diff --git a/doc/source/cn/references/modules/dom.md b/doc/source/cn/references/modules/dom.md
index f7eec80..c9586f0 100644
--- a/doc/source/cn/references/modules/dom.md
+++ b/doc/source/cn/references/modules/dom.md
@@ -30,8 +30,7 @@
 - `node {Node}`:你要滚动到的那个节点
 - `options {Object}`:如下选项
   - `offset {number}`:一个到其可见位置的偏移距离,默认是 `0`
-  - `animated {boolean}`:是否有动画效果,默认是 `true`
-
+ - `animated {bool}`:设置是否有滚动动画,默认是 true
 #### 示例
 
 ```html
@@ -145,8 +144,8 @@
 
 ```html
 <template>
-  <div class="wrapper">
-    <div ref="box" class="box">
+  <div class="wrapper" style='margin-top:200px'>
+    <div ref="box"  class="box">
       <text class="info">Width: {{size.width}}</text>
       <text class="info">Height: {{size.height}}</text>
       <text class="info">Top: {{size.top}}</text>
@@ -154,11 +153,26 @@
       <text class="info">Left: {{size.left}}</text>
       <text class="info">Right: {{size.right}}</text>
     </div>
+    
+    <text class="info btn"  @click='click()'>{{this.tip}}</text>
+      
   </div>
-</template>
+</template> 
 
 <script>
   const dom = weex.requireModule('dom')
+  
+ function round(size) {
+      var roundSize = {
+        'width': Math.round(size.width),
+        'height': Math.round(size.height),
+        'top': Math.round(size.top),
+        'bottom': Math.round(size.bottom),
+        'left': Math.round(size.left),
+        'right': Math.round(size.right)
+      }
+      return roundSize
+  }
 
   export default {
     data () {
@@ -170,26 +184,60 @@
           bottom: 0,
           left: 0,
           right: 0
-        }
+        },
+        ref:"viewport",
+        tip:"get box rect"
       }
     },
     mounted () {
-      const result = dom.getComponentRect(this.$refs.box, option => {
+      const result = dom.getComponentRect(this.ref, option => {
         console.log('getComponentRect:', option)
-        this.size = option.size
+        this.size = round.call(this,option.size);
       })
-      console.log('return value:', result)
-      console.log('viewport:', dom.getComponentRect('viewport'))
+    },
+    
+    methods:{
+      click:function() {
+        if (this.ref === 'viewport') {
+          this.ref = this.$refs.box;
+          this.tip = "get viewport rect"
+        } else {
+          this.ref = 'viewport'
+          this.tip = "get box rect"
+        }
+          
+         const result = dom.getComponentRect(this.ref, option => {
+          console.log('getComponentRect:', option)
+          this.size = round.call(this,option.size);
+        })
+      }
     }
+    
   }
 </script>
 
 <style scoped>
+  .btn {
+    margin-top:20px;
+    border-width:2px;
+    border-style: solid;
+    border-radius:10px;
+    width:300px;
+    margin-left:170px;
+    padding-left:35px;
+    border-color: rgb(162, 217, 192);
+    
+  }
+  .btn:active {
+    background-color: #8fbc8f;
+		border-color: gray;
+  }
+  
   .box {
-    margin-top: 200px;
+    align-items:center;
     margin-left: 150px;
-    width: 450px;
-    height: 450px;
+    width: 350px;
+    height: 400px;
     background-color: #DDD;
     border-width: 2px;
     border-style: solid;
@@ -198,13 +246,15 @@
   }
   .info {
     font-size: 40px;
+    top:30px;
+    margin-left:20px;
     font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
     color: #41B883;
   }
 </style>
 ```
 
-[try it](http://dotwe.org/vue/87d4ed571de129ab28052b06a5d65fc8)
+[try it](http://dotwe.org/vue/d069a9bf0f0781b914f12a9a7b9a1447)
 
 ## 其他
 
diff --git a/doc/source/cn/references/modules/webview.md b/doc/source/cn/references/modules/webview.md
index 30a1a42..7cfe32a 100644
--- a/doc/source/cn/references/modules/webview.md
+++ b/doc/source/cn/references/modules/webview.md
@@ -47,7 +47,7 @@
 <template>
   <div class="wrapper">
     <div class="group">
-      <input class="input" ref="input" type="url" autofocus="false" value="https://m.taobao.com"></input>
+      <input class="input" v-model="value" ref="input" type="url" autofocus="false"></input>
     </div>
     <div class="group">
       <text class="button" @click="loadURL">LoadURL</text>
@@ -64,12 +64,13 @@
   export default {
     data () {
       return {
-        url : 'https://m.alibaba.com'
+        url : 'https://m.alibaba.com',
+        value: 'https://m.alibaba.com'
       }
     },
     methods: {
       loadURL (event) {
-        this.url = this.$refs.input.value
+        this.url = this.value
         modal.toast({ message: 'load url:' + this.url })
         setTimeout(() => {
           console.log('will go back.')
@@ -90,7 +91,7 @@
         console.log('pagefinish', event)
         modal.toast({ message: 'pagefinish' })
       },
-      finish (event) {
+      error (event) {
         console.log('error', event)
         modal.toast({ message: 'error' })
       }
@@ -134,4 +135,4 @@
 </style>
 ```
 
-[try it](http://dotwe.org/vue/154c7fa8ac13e87ff4e7bf9862147d50)
+[try it](http://dotwe.org/vue/221ff37113a12d692a7a92a100f20162)
diff --git a/doc/source/cn/releasenote.md b/doc/source/cn/releasenote.md
new file mode 100644
index 0000000..8e5c617
--- /dev/null
+++ b/doc/source/cn/releasenote.md
@@ -0,0 +1,858 @@
+---
+title: Release Note
+type: releasenote
+layout: post
+---
+
+# Release Note
+
+## v0.10.0
+------
+- New Feature
+  - Support Vue.js  
+    The Vue.js 2.1.8 ([runtime-only build](https://vuejs.org/v2/guide/installation.html#Standalone-vs-Runtime-only-Build)) is in WeexSDK now. You can use Vue.js to build native app by WeexSDK 0.10.0.  
+    We reused the original native render engine and developed a new renderer ([weex-vue-render](https://www.npmjs.com/package/weex-vue-render)) for the web platform, which is based on Vue 2.0.  
+    The former front-end framework (commonly known as `.we`), which is inspired by Vue 1.0, is deprecated. Although it still works well in this release, we suggest to migrate it to Vue 2.0.
+  - SDK
+    - New CSS support
+      - [text `font-weight`](https://weex-project.io/references/text-style.html)  
+        `font-weight` can set to [`normal`|`bold`] or 100-900.
+      - gradient  
+        like CSS3, now you can use gradient in Weex. For example:   
+        
+        ``` css
+        background-image: linear-gradient(to right, blue, white);
+        ```
+        ![img_1695](https://cloud.githubusercontent.com/assets/115201/23015955/ba075876-f46f-11e6-9d88-2ca3096551b9.jpeg)
+        [Read more about gradient](https://weex-project.io/references/common-style.html).
+      - Pseudo class  
+        Currently, Weex supports 4 pseudo classes:`active`, `focus`, `disabled`, `enabled`. 
+    - New BroadcastChannel API
+      Developers can use `BroadcastChannel` API to implement inter-instance communication.   
+      
+      ``` js
+      const Stack = new BroadcastChannel('Avengers')
+      Stack.onmessage = function (event) {
+        console.log(event.data) // in this case, it's "Hulk Smash !!!"
+      }
+      
+      // in another instance
+      const Hulk = new BroadcastChannel('Avengers')
+      Hulk.postMessage("Hulk Smash !!!")
+      ```
+    - Image's `onload` event add [`naturalHeight` and `naturalWidthimage`](https://weex-project.io/references/components/image.html) to get the original size of image file.
+    - Websocket Support  
+      WebSockets is an advanced technology that makes it possible to open an interactive communication session between the user's h5/iOS/android and a server. With this API, you can send messages to a server and receive event-driven responses without having to poll the server for a reply.  
+      [Read more about Weex's websocket.](https://weex-project.io/cn/references/modules/websocket.html)
+    - Support synchronous method call
+      Both module and component method can defined synchronous method exposed to JS runtime now. Means native will invoke these method in JS thread directly.
+    - Support `viewport` configuration
+      Similar to [W3C specification](https://drafts.csswg.org/css-device-adapt/#viewport-meta), Weex support set define `viewport` in script tag:   
+      
+      ``` html
+      <script type="config">
+        {
+          "viewport": {
+              "width": "device-width"
+          }
+        }
+      </script>
+      ```
+  - Tools   
+    - [Devtools](https://github.com/weexteam/weex-devtool)
+      - Support Vue 2.0 debugging.  
+      - Add network switch for network inspector.
+      - Make application capable to decide which bundle is 'un-debuggable', which means page's source code is unreadable in debug mode.
+    - [Weexpack](https://github.com/weexteam/weex-pack)
+      - Has full set of commands for developers to setup android/ios application with his .we/.vue files.
+      - Developers could easily pack/install his application with simple command.
+      - Has full set of commands for developers to manage weex plugins, including create plugin template, add plugin to his project etc.
+      - [Plugin market](http://market.weex-project.io) was formally used for developers to publish/download weex plugins.
+- Bugfix
+  - \* [android] add fixed size property 5191241
+  - \* [android] bug fix NPE && cache ScreenWidth and ScreenHeight 950e843
+  - \* [android] bugfix duplicate destroy 25412e0
+  - \* [android] bugfix keyboard force hide (#106) 0ad2f95
+  - \* [android] bugfix scroller offset transform twice cd7ad66
+  - \* [android] change gradle to fix build 1feaadf
+  - \* [android] ClipPath doesn't work when the following conditions met   1. rotation or scale is used   2. API level is 24 As border-radius uses clipPath, this will cause views with border-radius using rotation or scale on API level 24 doesn't. So far, this is a bug of Android N,https://code.google.com/p/android/issues/detail?id=225556&sort=-id&colspec=ID f69e918
+  - \* [android] Fix bug of border width due to viewport. Refer https://github.com/sospartan/weex/commit/7cfe9752e0c95f3b23bedfa3f51ba3bafb4318f4#diff-42908d45812780fec8606537dffab67dL1054 9cd6800
+  - \* [android] fix cast exception 3136fcf
+  - \* [android] fix DCL thread safely (#48) 62e9b71
+  - \* [android] fix duplicate add component child to list 3fd73d7
+  - \* [android] fix find component 45643ab
+  - \* [android] fix getScreenWidth with context parameter (#80) 16377f2
+  - \* [android] fix inefficient use of keySet iterator instead of entrySet iterator (#47) dac80e2
+  - \* [android] fix intrinsicSize when img.resize=contain b6272a2
+  - \* [android] fix npe in onScrollerListener (#138) 8141de7
+  - \* [android] fix npe in stream callback 24aa2c2
+  - \* [android] fix PageActivity duplicate add view to container 06f77b8
+  - \* [android] fix refresh crash after destoryed (#144) 51ea00b
+  - \* [android] fix refresh/loading a726d3c
+  - \* [android] fix slider auto scroll behavior 28926ba
+  - \* [android] fix slider layout, ignore position offset. a0381e4
+  - \* [android] fix some weak code that may cause file leak or useless (#49) 8d0f049
+  - \* [android] fix stackoverflow 6a01059
+  - \* [android] fix stream response status type (#63) 8580c66
+  - \* [android] fix switch case (#127) c301b92
+  - \* [android] fix textarea vertical gravity 9730948
+  - \* [android] fix the IllegalArgumentException on empty arguments f799d67
+  - \* [android] fix the wrong header location (#135) d58fce9
+  - \* [android] fix typo: WebSocket -> webSocket c162d54
+  - \* [android] fix wrong initial direction value on appear event (#107) 593c799
+  - \* [android] modify default real position (+1 squashed commit) Squashed commits: [9470835] \* [android] fix unittest b915584
+  - \* [android] move indicator layout logic to subclass;seperate fixed layout logic fc2a009
+  - \* [android] rename debug activity 95ab73a
+  - \* [android] update fix do not remove loading and fresh ddf74ff
+  - \* [html5] fix border & border-width for less than 1px. (#2059) 3eb34b9
+  - \* [html5] fix bugs of neighbor 34fafb2
+  - \* [html5] fix compatibility problem & support deps arguments. 00e7079
+  - \* [html5] fix content-type error 5b06140
+  - \* [html5] fix h5 build 56e9c03
+  - \* [html5] fix shrink & grow for flex. (#2082) b5b600d
+  - \* [html5] fix slider container's style. (#2157) a79bd9c
+  - \* [html5] fix uncaught dom exception for video.play. (#1877) 7a0bd03
+  - \* [html5] fixbug:change name from WebSocket to webSocket] (#2146) b72bbb9
+  - \* [ios]  bug fix: websocket module name is changed , playground should change 3f35b82
+  - \* [ios] bug fix: onload success value type is not same as android, change it for unify 531633c
+  - \* [ios] bugfix call renderFinish 1fb2e0a
+  - \* [ios] bugfix module default method not called 0be9f87
+  - \* [ios] bugfix moduleEvent compatible dbea448
+  - \* [ios] bugfix multi input or textarea maybe wrongly change root view frame a2e97db
+  - \* [ios] bugfix navigation pop animated value convert cfe98a8
+  - \* [ios] bugfix navigator open and close. beef00b
+  - \* [ios] bugfix rootView information  coordinate 7313703
+  - \* [ios] bugfix slider-neighbor may beyond item count index cbfa9df
+  - \* [ios] bugfix view event 83d3e6a
+  - \* [ios] bugfix: playground cannot open c949463
+  - \* [ios] bugfix:delete configpicker not delete the method in header cc3afc2
+  - \* [ios] fix : Change the lastoffsetXRatio to lastOffsetXRatio de8f246
+  - \* [ios] fix : Change the parameter wording to make it more in line with development habits. 869da54
+  - \* [ios] fix : if _fontFamily is nil set _fontFamily value with the correct system font. In the case of Chinese characters, this logic help system select the right system default font name. 6e202b6
+  - \* [ios] fix : improve slider-neighbor demo code .remove useless <container> label and <scroller> label. 2c236c8
+  - \* [ios] fix bug : you can't slide to the right when the slider has only two pages. d224bfb
+  - \* [ios] fix bug that border-x-radius not work 96ba5b5
+  - \* [ios] fix bug that horizontalpan and verticalpan can not trigger simultaneously eb03cb0
+  - \* [ios] fix bug: text input padding is not right f4accba
+  - \* [ios] fix crash after returning id type, need to copy here. 4f5276b
+  - \* [ios] fix issue that cells pushed down by inserted cells will not trigger disappear event. 9dcc4dd
+  - \* [ios] fix issue that rotate 90->180->270 not work. 5b3c13d
+  - \* [ios] fix issue that rotate(0) not work after rotate(>180degree) 0f6989d
+  - \* [ios] fix issue that there will be 1px space remaining between list's top and navigator when UITableView is pulled down and finger releases. d286e3c
+  - \* [ios] fix typo in [WXSDKEngine initSDKEnvironment] 17a093f
+  - \* [ios] fix variable name spelling error becd631
+  - \* [ios] Fixed :Merge remote-tracking branch 'alibaba/ios-feature-20170118' into ios-feature-20170118-new-slider-neighbor-fix    move "sliderview init" code to loadview method. 141fd9d
+  - \* [ios] fixed component's view should be removed separately since its view is a subview of rootview. f9b2378
+  - \* [ios] fixed issues that horizontal/vertical pan not respond while recyling views. c7b4bec
+  - \* [ios] js service bug fixed c068bd7
+  - \* [ios] removed debug code and fixed bug 548984f
+  - \* [ios] update navigator module, add open and close interface. f65c42f
+  - \* [ios] upgrade JSFM to 0.19.3 to fix callback problem 9ab9b92
+  - \* [jsfm] fix mismatch of weex.require and weex.document ad63f2a
+  - \* [jsfm] fix support native method bug ce26a6f
+  - \* [jsfm] fixed Promies bug in android 17282c2
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.10.0.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.10.0.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+
+## v0.9.4
+------
+- New features
+  - SDK
+    - New API to get Component's size and position:
+      Now you can get these data through `getComponentRect`:   
+      ``` javascript
+      var dom = require('@weex-module/dom');
+      dom.getComponentRect(this.$el('comp_id'), function(data){
+        if(data.result)
+          console.log(data);
+      });
+      ```
+      The `data` callback parameter contains a `result` to tell if operation is success. And `size` tell you the true data(`bottom`/`top`/`left`/`right`/`width`/`height`) of component.
+    - A brand new `picker` module. We have 'single-picker','date-picker' and 'time-picker' currently, and more common pickers are on the way.  
+      ![img_1282](https://cloud.githubusercontent.com/assets/115201/21414801/e6341b36-c83d-11e6-9e5a-3acdabb592ee.png)
+    There are two ways to use `picker`
+    - Use `picker` module directly:
+    ``` javascript
+    var picker = require('@weex-module/picker');
+    var self = this;
+    picker.pickDate({
+        'value':'2016-11-28',
+        'max':'2029-11-28',
+        'min':'2015-11-28'
+    },function (ret) {
+        var result = ret.result;
+        if(result == 'success')
+        {
+            self.value = ret.data;
+        }
+    });
+    ```
+    - `input` component also add 'date' and 'time`type to work with`picker` module internally:
+    ``` html
+    <input
+      type="date"
+      placeholder="select date"
+      class="input"
+      autofocus="false"
+      value=""
+      onchange="onchange"
+      max = "2029-11-28"
+      min = "2015-11-28"
+              ></input>
+    ```
+  - Support animation with `width` and `height` property.
+  - Support use empty value to reset css property to default value.
+  - Components can expose methods too, like modules do. Developers use the same way as create module method to achieve that.
+  -  Add `blur` and `focus` method to manually control `input` component to lose or get focus.
+  -  Support relative URL, which will resolve real URL by bundle's URL.
+  -  Core javascript framework's unit test coverage is 100% now. we'll pay more attention to quality.  
+  - DevTool
+    - Support to check the node hierarchy in [weex-devtool-extension](https://github.com/weexteam/weex-devtool-extension) and highlight the node if it exceeds an specified level.
+    - Support different refresh mode in devtools to reload the page or SDK automatically when source file updated.
+    - Improve quality in [weex-devtools-android](https://github.com/weexteam/weex-devtools-android) module
+      - Remove explicit dependency on okhttp and okhttp3 by reflection and proxy
+      - Improve demo application with less and refactored code
+      - Fix some crash caused by class up cast
+      - Fix reflection crash caused by complier optimization
+      - Fix "network on main thread" and stop screencast when disconnect
+    - Add [weex-analyzer-android](https://github.com/weexteam/weex-analyzer-android) and [weex-analyzer-ios](https://github.com/weexteam/weex-analyzer-ios) which support the following on device directly:
+      - Inspect FPS/CPU/memory
+      - Inspect storage
+      - Display log information
+      - 3D viewer of the weex page
+      - Javascript error prompt
+- Bugfix
+- \* [android] bug fix slider (#56) 29b9d29f5acd9677a64316b94d5c95f8c7f1a837
+- \* [android] bugfix duplicate destroy 0a59a85467671ddb982fbea6def810e6fa415137
+- \* [android] bugfix scroller offset transform twice 1db300d470951f543236e0b605d7b5a974b96430
+- \* [android] fix appear event not trigger at first 85085a394dd2bae5e397b889c01c1e1a3b8e6b46
+- \* [android] fix build 46bcf4298cd74c1d9706255143f95e0299ebdd15
+- \* [android] fix callback parameter 16db52ed031f7182f2159bc18c0c6e20e7c907f7
+- \* [android] fix dialog window leaked (#55) 4c478044355d6d552fb2f72935cd93867e5f0802
+- \* [android] fix different behavior with iOS switch (#43) 7708a6680e51ae6af9351724940778ce953538ed
+- \* [android] fix dynamic inserted header not sticky display 83c06383aa513061d144ec448ce0ccc25bde5484
+- \* [android] fix fireevent change key 9fb7d0f25d6b1bfe54fb63c9b73c53f8c927e4ad
+- \* [android] fix flash when render video tag a53e6b80b8fa67cce85307a2e5e93d9fb6c28784
+- \* [android] fix list not lazy 0be12be1194bea0c624791662e9f38aac4f0c3fd
+- \* [android] fix methods generate external-loader-component ec6d4136a29c1626470d3bbba90db3d9916c374e
+- \* [android] fix move child from index to index b within the same parent 72259e7a5734ed9a595de080d05ea8e1bf1e716e
+- \* [android] fix slider auto scroll a8d74031dbd526201c05433a08c8aac2047b7a66
+- \* [android] fix slider auto scroll after activity resume bba3bdea45bfb4030b10ea9a847a77463d1ab20a
+- \* [android] fix slider auto scroll after activity resume e0d5e79fc29e07b734d892073effc041a39c85c6
+- \* [android] fix stackoverflow in slider c1f1d702110f49ead4005fae50e4e63c5e72cfac
+- \* [android] fix sticky not display when scrolltoelement 22d163cb572e6b1c510c350a692a4265eb27e204
+- \* [android] fix test d756db8b4c26f8610076a13a0980d024a4e734ac
+- \* [android] fix textarea content vertical gravity eecc32c0a72ce82aa4e998cabb31308fc737fe95
+- \* [android] fix the invalid index of slider-neighbor (#62) 59fd5742a23908174de12804b1a0992d89663afd
+- \* [android] fix unittest 0b2a3778dfa39f17ae6346168b55a3418d85aa1b
+- \* [android] fix unittest 0d2bd982507820f5840e99ee12cd351ae6eb18e5
+- \* [android] fix unittest 4f120b6dbcb4433c8c320c310cd4de051163780c
+- \* [android] fix unittest 6129cd2ed06ce7acc0366b4c172bdf199d52e997
+- \* [android] fix wrong behavior with slider.index (cherry picked from commit c59ae39) 3028f32278a47603d1dc9f0f4314b44721069ac4
+- \* [android] fix wrong behavior with slider.index c59ae3977837be238b08b69388aec12eb4817716
+- \* [android] move element  bug fix dfc643df7fb100737c98efa7f5932e75d07ca59f
+- \* [android] move element  bug fix f28fbdd3ac57c157f52d82fa9473e8651b88023b
+- \* [android] NPE fix ee67a26c045cc351d317e805712bd6e50c4213cb
+- \* [android] Parent's "append=tree" will prevent child's transform style, this commit fix it by add the whole dom tree to animation set instead of the root dom. \* 626915b34bfb348947709c23e09a3dac7acd6962
+- \* [android] slider: fix the IllegalStateException (#58) 0e94762e1ebc240a5e8be6c131848b57bb48b1ea
+- \* [android] v8 security bug fix 7a8f14b78753fd02d59b126fffbd52996376ecc3
+- \* [html5] fix the conflict ac845591a65501c4eae70471502d8370f9983130
+- \* [html5] fix wwp config 0a2420a7202887a0222c0294c510267f139858c8
+- \* [html5] fixed lazyLoad filename 4119190c6b093f87bcb8ebd00f23bd939c307ad1
+- \* [html5] fixed rollup build 03f241ce3c7d8ac786b632f80aa22b94fdc00d34
+- \* [ios] 1. fix refresh location 2. cancel playground re-checkupdate 69f43da52ab22c7777d54bc2d9f45e95eb1d437f
+- \* [ios] bug fix 1664, add resetLoadmore on scroller & list. 4efe8662912ec5a8ce5fac8e09c2e061a21056a4
+- \* [ios] bug fix picker 2d979a58c4b37e93dda5b775d79a7a1ea2165c22
+- \* [ios] bug fix picker 983fe0069ff670b92b6fa7e3e6e29c5b2c768762
+- \* [ios] bug fix picker rescue 27fe3f23bb63072b766f75b69351464d163b331a
+- \* [ios] bug fix setNeedsLayout in every elements. not in once. because elements not contain css node only edd47e09ff453a26c7b176279d0ab84454d4914a
+- \* [ios] bug fix update code style 05b2959be0e0c35ad31b5b20b77f86f296786da2
+- \* [ios] bug fix: change resetTextCSSNodes to resetTextCSSNode a782e092b175a0a34db7cfccb74b5f157ddb3fd4
+- \* [ios] bug fix: refresh view layout error. b0c4a403b1e1dc8aa500c60efcef263b6f7fdd6f
+- \* [ios] bug fix:slider does not remove items  synchronously when item view has been remove from superview. f60997fc3fe7bcfd220e159d61dbaae438e59131
+- \* [ios] bugfix add register component type f7e72ea289ce5f909fb9f6b61705e4f4b9930c53
+- \* [ios] bugfix cancel url uft8-encode 6b67a9e8a3f62849709d552bea0d947679164041
+- \* [ios] bugfix cancel url uft8-encode 9a43cfc9ecb9683562560a880d0f026fd28e93ea
+- \* [ios] bugfix component load rewriteurl f92a6d70e0f3db1eb14c4d90c7e30609e5175dff
+- \* [ios] bugfix globalEvent removeObserver don't need specify target a5420939bac4e21ef61b15710e2fa5e205403d96
+- \* [ios] bugfix iconfont load font , support woff 4c5d5812cb145d60270c5e59ae29def9be8fdcf3
+- \* [ios] cancel animation while handle input keyboard and fix bug when there are many input in a page 61f9259bf77c59916d3dbcdf62b12cd0161698b4
+- \* [ios] debug performance ae3d30802681990e79ce06fb4229b74f3c1d99c2
+- \* [ios] fix #1192, #FFF display error in iOS 5df5cd3739e79ec6e2fefbff66ba7ba2a411d637
+- \* [ios] fix #1479, add handler for slider's items count less than or equal to 2 d654ed7d926c2e20b3a34315348a87470171cdd1
+- \* [ios] fix : Compatible non-standard url ("//a.b.example.png") 3da33595d6e1a261b1c761811d1d8f7672ba3db5
+- \* [ios] fix border's "Overlapping Curves" not recomputed when relayout d302adf14568a32d2b635a64d1326172d9590893
+- \* [ios] fix bug datepicker no update and crash eef4483b3176a0f2e18673e26068a6ec53fef5ca
+- \* [ios] fix bug debugTool unload 751b752f72690954c49ffaf8b89702a0f93712f2
+- \* [ios] fix bug default style f8f056e9f067b4ce23731cb3114383705a5926ac
+- \* [ios] fix bug height change to zero when style change 1ed428dda5d1b4e2b360f216b1b96433479dad28
+- \* [ios] fix bug height change to zero when style change a4d7ebea5e288b753ee71571b149130149768c6b
+- \* [ios] fix bug height change to zero when style change aac7c013003c055e840674e5f61dba4d5073dd73
+- \* [ios] fix bug height change to zero when style change bb8cdb1f2f7ff6ad9b8ac4de23323ca9dea7e0d9
+- \* [ios] fix bug that setFrame incorrectly when transform has been set 84dfd4c7395ae728356b660a0b605c7b85353973
+- \* [ios] fix bug that sticky component's absolutePosition will be computed twice if the actual absolute position is {0,0} a780352d0a1a139ce3e276404d03bd3f9e2e6fd6
+- \* [ios] fix bug: text area cursor auto go to end .reason: if attributes[@"value"] is exist. _updateAttributesOnMainThread will change textview text.the cursor go to end. \* solution: save the  textview  selectedRange , when set textview.text ,correct it d22836ef559809f566068bfe47be960a6d2e9faa
+- \* [ios] fix bug:_updateAttributesOnComponentThread reset styles delete 7c993d1952551ccfad2ad22f01ffa40ea9d12245
+- \* [ios] fix bundlejs 616f4653925c801406ca5fc80fd5f890c45c2b19
+- \* [ios] fix code style 31b08adf525559d9ce46f25eab349584d2f621a9
+- \* [ios] fix compiler complain about warning b92e471c1195f40f8167c8253ea0a909930a9880
+- \* [ios] fix componentRect infomation da08628c562dded860fe1558fb9dc187530223c9
+- \* [ios] fix componentSize to get 41af993f1ffd4e041083a0150607040b9e7cdef2
+- \* [ios] fix crash 55f69b502f0ff1f997dbfbe5238e35a4f123bc5b
+- \* [ios] fix crash on events' copy 491df3dca1fd47c1c564823c7f46527bf064c2dc
+- \* [ios] fix datepicker bug when no value can not pop right picker 24441ad6273e6093a9919b2699a4333b9d7147df
+- \* [ios] fix datepicker complie error 3bf2a0753cf47170144939d42173a668b22e27f5
+- \* [ios] fix datepicker complie error a362ef85918551bacac762ee660300e3108c1c5a
+- \* [ios] fix deprecated method of textarea 4d24f3ff7e792a1c97aa7ee31fbc7f0899c21efb
+- \* [ios] fix failed tests. b5210b244f2f2331be01c9afc4a8cde5b32ed0ee
+- \* [ios] fix input bind each other feb1e7c1ce959491fefed808e46e6291203ccbd7
+- \* [ios] fix ios7 crash f02eff33acab4a58a1a8d6e4d84cef44dcf09bf4
+- \* [ios] fix issue about WXConvert 's UIColor method add193b643c980e310866498dc081130ee287373
+- \* [ios] fix issue that iOS 7 will crash while alert still alive but instance has been destroyed 160a2dae54d6e656c980b9d008b15b0dc28aa4e1
+- \* [ios] fix issue that onappear/ondisappreat not work if binding to cell component. 63f6d7507731d2004e996f99bf859c228fc8b651
+- \* [ios] fix multi keyboard notification 684d3955de263cb39f8afc42c6ffa7340674c81a
+- \* [ios] fix navigator parameter b3117a9c482fb5491b5206413fa7607c356cf95a
+- \* [ios] fix override bundleUrl d7729716aea6652d325e4282ad6b42aaaf14f82c
+- \* [ios] fix playground Podfile   remove c header file  include in WXUtility.h e299feaf4076a5bf7140335ac6cc70d9d99a01da
+- \* [ios] fix responderToSelector target b0f550d6b94da6d9764863b328edfba6d730a75b
+- \* [ios] fix rootComponent order 999c59da3a1dc6c91f036b938c9963cc3cfe87c4
+- \* [ios] fix set navigator callback msg a30b7ed4978de3c91448a1c944431f19e942b515
+- \* [ios] fix single picker but 969d4212967c084a3477e3877052af224354f0e4
+- \* [ios] fix stream jsonp bug b018343b71eb7289bde326acf2f2fe1b124cfad8
+- \* [ios] fix testComponentFactory 99574bf0a1072dbfba547d74545783891b15cdff
+- \* [ios] fix tests compile error 461c24401e5fa1c37f9af25db35665f9f6b4a8da
+- \* [ios] fix text line-height and text-align conflict b1a0673020b7a271fb540ae723ca481aa18db7b4
+- \* [ios] fix textinput component inputEvent fired repetitiously 5c8242776f1410771a357735d6ae2a5b261b7d20
+- \* [ios] fix warning b8464248f61ad3ed9570730608e563f9c73e8ae6
+- \* [ios] fix warnning e2533d036daad60345284f276949dec06b5e0db9
+- \* [ios] fix when options is nil and then  bundleUrl will be nil 5f71a1a2eb7442cf63d9732a6a2b3e2cb3765fa1
+- \* [ios] fix WXSDKInstance rootview bug 3b08a516ff788ca116329dc863ffcb9f66979881
+- \* [ios] texture bug fix : when input change . the text content send to change a38f1b2b8e05e149f09ffbb986268339a9042691
+- \* [jsfm] fix #1447, fix binding event bug of components which have repeat attribute 421cc439d1b8b5abbdbba58882f6c39fd8f862c9
+- \* [jsfm] fix build 8162124f72caf9360657ebc5a2750554d36f3659
+- \* [jsfm] fix condition judgment bug in insertBefore & insertAfter 9c182af615e0e597e21a44217a511126333499e9
+- \* [jsfm] fix eslint c0db1807d080a26c7344f4cc57e5834e98b06085
+- \* [jsfm] fix eslint f75cbe955dc0bcdf33a608af82ab18d3290b87c3
+- \* [jsfm] fix format for lint 5faa860804c1d9adb719a450b53da165ec523e83
+- \* [jsfm] fix the npm run build d3e5124add2dd6a42b1209fe11a8dc58cd536487
+- \* [jsfm] fixed #1818 a757deb7235792c2dd11684500651f717f43226a
+- \* [jsfm] fixed all cases for default framework (black-box) c842ef884e45c568f9ae55e67a066a5de2de15ed
+- \* [jsfm] fixed all test scripts 95ba6a1d6c4211d62d7d2a6693c8aa1e5b7d9607
+- \* [jsfm] fixed all unit test for new file structure d4eb5c97daa34dc53dd929eaf736dcf22e8873b6
+- \* [jsfm] fixed browser render file structure ba7a40bca9a5759101e821c4e043e437b848dcde
+- \* [jsfm] fixed deps error 555ded73f6c6ecb5a9c110f34ab34e596c1c36eb
+- \* [jsfm] fixed html5 render for Vue 980d952d71903545a0bfa7115dfeacd8c7c71ae5
+- \* [jsfm] fixed lint and added case test a3e20a8c78feda705b853f2036cc17bd256f7bb8
+- \* [jsfm] fixed rollup config 4a1c208cf33fb3e5649f8116133f97b003e78127
+- \* [jsfm] fixed runtime instance map management b6e94fa1d54bfdc541ae7c48d98f4dc01481660f
+- \* [jsfm] fixed some vue examples ca2a9c57365a67c9215f69c438c86440a28704ce
+- \* [jsfm] fixed some vue examples da21405b7fab3228bda0e0b2a74853a05c5eb69a
+- \* [jsfm] fixed url checker in vue example 679dc1cffbd0413b9b81624ac46f61473cdf756d
+- \* [jsfm] removed timer bug case and replaced to slot bug case b6f2c8390e3a97df948fc8d2699d15eb62582625
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.9.4.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.9.4.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+## v0.8.0
+------
+
+- New Features
+  - Add [globalEvent module](https://github.com/alibaba/weex/blob/doc/doc/modules/globalevent.md)
+  - Support `width/height` animation in transition
+  - Refactor the default js framework code, hide almost all the private APIs #777
+  - iOS 10 compatibility
+- Performance
+  - Support `callAddElement` low-level API to make rendering faster
+  - Improve SDK initialization performance, for minimise invoke thread impact.
+  - Use native `Set` polyfill to fix iOS7 memory leak
+  - Use `setProperty` replace reflection for better performance
+  - Add `static` directive in default js framework to avoid unnecessary data-binding and take down the memory use
+- Tools
+  - Add [weex-pack](https://github.com/weexteam/weex-pack), our next generation of engineering development kits. It allows developers to create weex projects with simple commands and run the project on different development platforms.
+  - Add [weex-devtool-extension](https://github.com/weexteam/weex-devtool-extension), a extension for Weex devtool to improve your debug experience,which equivalent an element tag for debugger page.
+  - Move devtool to separate [iOS](https://github.com/weexteam/weex-devtool-iOS) and [Android](https://github.com/weexteam/weex_devtools_android) repos.
+    - Add "screencast" which enable the screen of the device(or monitor) to appear on the "Inspector" page; 
+    - Add "remote control" function, in Android user could control remote device(or monitor) when he moves mouse on screencast; 
+    - Add "select element" function which enable the user to find the exact node in "Elements" inspector Tab when he click the mouse on screencast;  
+    - Add "vdom inspector", so user can choose to see the details of native dom or vdom in "Elements" Tab at his preference; 
+    - Adjust interfaces with weex SDK to support "callAddElement"; 
+- Bugfix
+  - [jsfm] fix the bug of Dep.target 3448104
+  - [jsfm] fix the test of clearCommonModules 4be9291
+  - [jsfm] fix bug for clear common modules (pr #1097) d2f8c4d
+  - [jsfm] fix callAddElement callback -1 e421b41
+  - [jsfm] fix #1237, fix binding event bug of components which have repeat attribute bfed029
+  - [jsfm] fix bug af99cc1
+  - [jsfm] fixed & closed #1148 4209850
+  - [jsfm] fix merge classStyle fail between nested components 91c5cc6
+  - [jsfm] fix watcher dismatched bug between multi instance 900305d
+  - [jsfm] fixed _Set bug 51b219b
+  - [jsfm] fixed memory management bug in dom event handler in document 9024bda
+  - [jsfm] fixed Promise polyfill problem in iOS 7-8 9a61f33
+  - [android] fix #1380, update method getOffsetAmount in WXCircleViewPager.java (#1382) fd74539
+  - [android] bug fix native crash d8671bd
+  - [android] fix editComponent set non-string value 2e2f032
+  - [android] destroyInstance bugfix 6628460
+  - [android] update fix global event Memory leak fc6d403
+  - [android] add callAddElement debug log 95e3680
+  - [android] bug fix classcast exception e399306
+  - [android] fix circle ci 51d3294
+  - [android] fix slider start auto scroll after activity resume. 89bae89
+  - [android] fix log util implementation 10d508f
+  - [android] fix x86 so file size verification 21d5135
+  - [android] fix build b1fc231
+  - [android] fix log utility 530fe51
+  - [android] NPE bugfix 6d4385f
+  - [android] add cuurentRef to avoid reused bug d836725
+  - [android] bug fix update the ref when cell reused 1f7bf86
+  - [android] bug fix update the ref when cell reused cef277f
+  - [android] fix usertrack modify 8732d70
+  - [android] fix code format 936ebd5
+  - [android] bug fix- Loading layoutY ba0d34e
+  - [android] bug fix - Loading layoutY a8f3c95
+  - [android] bug fix - loading margin 7a3f1e0
+  - [android] fix Deprecated 6aa7da9
+  - [android] fix #1102 (#1103) 5aea5c6
+  - [android] fix merge problem 7923b1e
+  - [android] fix typo 1de6800
+  - [android] fix scroller&list appearance event da1ee4d
+  - [android] fix invaild add dom operation 14b5943
+  - [android] fix build 0d43794
+  - [android] fix build 0520743
+  - [android] fix build 9d596c1
+  - [android] fix list appear&disappear 425c3e1
+  - [android] fix list appear&disappear event 40b52f3
+  - [android] update so for fixing instanceId error 03d0973
+  - [android] fix v8 security problem 06dbc38
+  - [android] bugFix:  List component scrollTo inaccurate 45f0476
+  - [android] fixed #1058 f25238c
+  - [android] fixed #1058 33b4aaf
+  - [android] fix v8 security problem e0b881f
+  - [android] bugFix:  List component scrollTo inaccurate 052aeac
+  - [android] fix comment fd3e0ef
+  - [android] fix indicator default style 57b71fb
+  - [android] fix unit test ee74b5c
+  - [android] fix code style 449bad2
+  - [android] fix list  orientation usage, move component's
+  - [android] fix change/focus confliction b672101
+  - [android] fix change/focus/blur  event confliction c3689e8
+  - [android] fix add dom error a993a84
+  - [android] update the mWXBridge to null when debugmode disable 35005ea
+  - [android] fix invaild add dom operation 7b1ad97
+  - [android] fix moveElement on the same parent dom case 2a94ba2
+  - [android] fix typo 42a2099
+  - [android] fix NPE c2da99e
+  - [ios] fix style line-height conflict with text-align e762637
+  - [ios] fix slider example href 8196792
+  - [ios] fix keyboard cover input sometime 0ad56dc
+  - [ios] fix #1188, support for converting string to NSUInteger. c3f6ea2
+  - [ios] fix issue that fixed-position component's view be reallocated while it is in a cell. d8881c3
+  - [ios] indexDict must be accessed on component thread, fix componentForRef crash 8cc3503
+  - [ios] fix issue that transform-origin not works in rotation transform 5dcab9e
+  - [ios] fix warning f913dab
+  - [ios] fix css node children count invalid while change from or change to fixed position. 81a1dc4
+  - [ios] fix compile error 98a8078
+  - [ios] fix css node children count invalid while change from or change to fixed position. 0b3a2e3
+  - [ios] fix podspec syntax error d0386e6
+  - [ios] ios7 bugfix api 6e7cf07
+  - [ios] try to fix NSMapTable crash in iOS8 a03a4bc
+  - [ios] fix slider-neighbor bc03620
+  - [ios] fix remove Observer crash 46fcbc5
+  - [ios] fix issue that rotate transform not work in styles. 8601304
+  - [ios] fix layer setBackgroundColor crash 5778422
+  - [ios] fix sliderNeighbor 39cb4ea
+  - [ios] fix warning ea8c8f8
+  - [ios] fix warning 4d2528e
+  - [ios] fix warning issue d77fd5d
+  - [ios] fix issue transform does not work while initialized. c36f1bf
+  - [ios] canvas component property error fix 448d4f4
+  - [ios] try to fix textStorage thread-safe issue 0d62716
+  - [ios] fix A component onclick event 01f9706
+  - [ios] fix input disabled attribute bug 533df4f
+  - [ios] fix input disabled attribute bug fd2c526
+  - [ios] fix iconfont src update bug f99906b
+  - [ios] customize debug switch 86346ea
+  - [ios] fix typo ae99b92
+  - [ios] change context name for remove JSContext debugging 75c1e42
+  - [ios] fix input max length bug fe9a013
+  - [ios]add LogLevel control and RemoteDebug control 164abf8
+  - [ios] fix memory leak 00009c0
+  - [ios] fix a bug that re-deleting procedure 717bf3f
+  - [ios] fix storage module in swift f13b72f
+  - [ios] fix highlight problem 93eb282
+  - [html5] fix conflicts with jsfm 0.16 ce63e22
+  - [html5] fix lint 9612daa
+  - [html5] fix class name b224685
+  - [html5] fix img lazyload 3984111
+  - [html5] fix registration of tabheader d38a4c0
+  - [html5] fix bug of null rules of stylesheet in spinner c058f95
+  - [html5] fix top 41c603a
+  - [html5] fix toast a3a4730
+  - [html5] fix lazyload typo 493bee7
+  - [html5] fix lint 43b24da
+  - [html5] fix loadmoreoffset 3c7e262
+  - [html5] fix sticky 9bdf079
+  - [html5] fix lazyload 38ee957
+  - [html5] fix lint 0e94380
+  - [html5] fix flexible a06eb80
+  - [html5] fix jsonp callback error 6db0850
+  - [html5] fix typo 5f61a06
+  - [html5] fix lint 363decd
+  - [html5] fix bug of scroll to c007c86
+    orientation field to scroller 3febd83
+  - [html5] fix dist bug 9d102a5
+  - [html5] fix missing viewport meta. 1cf98e5
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.8.0.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.8.0.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+## v0.7.0
+------
+- New Features
+  - [Timer Module](https://github.com/alibaba/weex/blob/doc/doc/modules/timer.md)
+  - [Storage Module](https://github.com/alibaba/weex/blob/dev/doc/modules/storage.md)
+  - Unify the `image` component's error page when src is invalid
+  - Unify the `border`,`padding`,`background-color` style
+  - Horizontal-scroller support  `scrollto`  api
+  - Fix the issue that component with  `position:fixed` style can not be closed
+  - Module callback support `object` params
+  - Slider suppport  `setIndex` api
+- Performance
+  - Use `callNative` signal to stop JSFM render after instance been destroyed
+  - Lazily initialize JSFM When device is in low-memory status, improve SDK stability
+- [Tools](http://alibaba.github.io/weex/doc/tools/devtools.html)
+  - Support debugging  weex(.we) and  react(.jsx) source 
+  - Support apps debugging on the same device 
+  - Support "watch" feature
+  - Solve the dependency on Debugger, user could start "Inspector" first or "Debugger" at will
+  - Add "refresh" function in sdk, user could inspect new file by scanning its QR code in playground;
+  - Android/ios inspect module split from weex sdk,  and will deliver in separate repo in future; support inspect in windows system
+- Bugfix
+  - [android] fix 'fixed' position not work when append tree 6ccfa4f
+  - [android] fix slider set index frzee 6524849
+  - [android] bug fix - setLayout LayoutParams b70f6e2
+  - [android] fix get header:compitable with lower case header key 5ebec75
+  - [android] fix storage module: keep open when module is live c311f15
+  - [android] fix build 0389302
+  - [android] fix jsonp response process 28588c6
+  - [android] fix ViewHolder NPE f9005ab
+  - [android] bug fix ViewHolder NPE 86dd101
+  - [android] fix build b14dd26
+  - [android] fix cell memory leak c03fdc1
+  - [html5] fix e2e test ci 77f14af
+  - [ios] fix type of callback params 2aa8f47
+  - [android] fix sdk init time measurement 3d7cd02
+  - [android] fix sdk init time measurement f4cbfd0
+  - [android] fix sdk init time measurement 8cffa5a
+  - [ios] fix stream fetch response type 9a7c296
+  - [android] forbid except cell、header、fixed、refresh and loading 114860f
+  - [android] fix comment cf53fd3
+  - [android] fix build 82a03fd
+  - [android] WXUtils bugfix 3655d9d
+  - [android] bug fix - setProperty class cast d567f89
+  - [android] fix argument format crash 1baac57
+  - [android] function name fix : hasAppearAndDisappearEvent 1f8b501
+  - [android] fix NPE crash in textarea nad modalModule c3a08ff
+  - [ios] fix bug when url has chinese character. b7e2c2f
+  - [android] update so fix not delRef argument b0db514
+  - [jsfm] fixed repeat bug when update values with new object references 371e58c
+  - [android] fix slider initialization crash. 4c52d33
+  - [android] add a debugger switch, decouple the dept between inspector and debugger dfa71c4
+  - [android] fix bug sticky not show dc3ca4d
+  - [android] fix component register type missed 92a92dc
+  - [android] sticky null child bug fix 541b68b
+  - [android] fix list scroller default height fc0aa58
+  - [android] fix indicator default style 610624c
+  - [android] fix embed page appear event 71a5360
+  - [android] update debug manifest 0541126
+  - [android] update JSF to 0.14.6 fix bind data error 4f7e3c8
+  - [android] fix bug mChild NPE a313b81
+  - [android] fix sticky offsetX 1bae906
+  - [jsfm] fixed updateMark error in compileType 9533431
+  - [jsfm] fixed updateMark error in compileType 5ea0132
+  - [android] Sticky fast fling bug fix 7092c6a
+  - [android] fix view appear event 4bf67e4
+  - [android] fix list scroll to 6355fc6
+  - [ios] fix default debug value 79daf2f
+  - [android] fix list scroll to ad0201b
+  - [ios] fix stat 2d3ab94
+  - [android] refresh the instance when reload called by the debug server 99392db
+  - [android] add a stop method to IWXDebugProxy b06d352
+  - [android] sticky bug fix f9d3265
+  - [android] fix list scrollTo a198b2e
+  - [android] fix scroller getView and getInnerView 4fa0453
+  - [android] refresh the instance when reload called by the debug server fd2be06
+  - [android] add a stop method to IWXDebugProxy 5789700
+  - [android] refresh the instance when reload called by the debug server 5ddf782
+  - [android] add a stop method to IWXDebugProxy 79cd97b
+  - [ios] fix modal bug about message is number d0cdaf9
+  - [html5] fix fire event 978c454
+  - [android] bug fix event lost f9c4357
+  - [android] add debug log cae86fa
+  - [html5] fix typo b84a1b3
+  - [html5] fix lint 8e905dc
+  - [android] fix bug - setLayout 0b5082f
+  - [jsfm] fixed native param format of setTimeout in app.differ a9f101e
+  - [ios] cancel AppDelegate.m debug annotation 03abcf8
+  - [android] fix bug - scroller height error 7458441
+  - [ios] support weex-devtool and weex --debugger 714c924
+  - [ios] resume original logger debug feature a144699
+  - [ios] modify the debug switch, update WXDebugTool.h/m file 1ce1277
+  - [android] fix input restore init value when batch 3a54da2
+  - [android] fix build 8450473
+  - [android] fix switch fireevent with domchange b6c2d31
+  - [android]  fix input change event 58563b5
+  - [jsfm] fixed repeat binding da9f40d
+  - [html5] fix typo 09bcdb3
+  - [ios] bug fix: slider is embed in list cell d56c7ec
+  - [ios] fix typo for wrong quote in Podfile ab8a83b
+  - [html5] fix loadmore offset of list 69ed65a
+  - [android] fix model callback data from string to json 3aed566
+  - [android] use diff vars flag the remote debug 5e976fc
+  - [html5] fix typo b8eec69
+  - [android] fix bug - refresh not compatible MI2 c814cd9
+  - [android] fix problem that session is null and init framework failed b985d59
+  - [ios] fix element cssstyle selected bug 41450a9
+  - [ios] fix crash from cssstyle e079e5c
+  - [android] update the debug init sequence to make sure the handshake well 28741da
+  - [android] fix example file name fc7862c
+  - [android] update debug switch f9369bb
+  - [android] reuse image adapter for avoid Fresco bug 62dc67c
+  - [android] add debug proxy, adapt to the weex-debugger d93f9e5
+  - [android] fix NPE in stream f5f8a4d
+  - [android] fix getScreenWidth npe e264f2a
+  - [android] fix register order 5c8a264
+  - [ios] Stupid scoll view, always reset content offset to zero after insert cells, fixed it by hooking 981dcd6
+  - [ios] fix data type d815e2a
+  - [ios] update debug tool 3d82054
+  - [ios] fix input component width calculation ba9a3b7
+  - [ios] fix notes about WXComponent+ViewManagement d31e8b6
+  - [android] fix list component addsubview error 69c3286
+  - [ios] fix inverted-logic 773bea7
+  - [android] fix crash when list append tree 686e450
+  - [ios] fix playground scan qr code bug 28f7de2
+  - [android] fix bug - Scroll getView 647a927
+  - [android] fix bug - delete </merge> 77680f1
+  - [android] fix bug - nested scroll ac50cd2
+  - [android] fix onTouchEvent bug 911e569
+  - [ios] fix thread safe method indexOfObject in array 1623165
+  - [ios] remove the timing of network debug 5b00fe5
+  - [ios] fix warning e1d496c
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.7.0.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.7.0.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+## v0.6.1
+------
+- New Features
+  1. [iOS has been open sourced](https://github.com/alibaba/weex/tree/dev/ios)
+  2. [Lifecycle Page Event](https://github.com/alibaba/weex/blob/v0.6.1/doc/references/common-event.md#page-event): viewappear, viewdisappear
+  3. [fetch](https://github.com/alibaba/weex/blob/v0.6.1/doc/modules/stream.md#fetchoptions-callbackprogresscallback)
+  4. [line-height](https://github.com/alibaba/weex/blob/v0.6.1/doc/components/text.md#styles)
+  5. [list component](https://github.com/alibaba/weex/blob/v0.6.1/doc/components/list.md) 
+     - support sticky header 
+     - support scrollToElement API
+     - support nested horizontal scroller
+     - support cell children nodes event: appear/disappear
+  6. [Gesture](https://github.com/alibaba/weex/blob/v0.6.1/doc/references/gesture.md): panstart/panmove/panend, swipe, longpress
+  7. Improve Android text compatibility
+- Performance
+  1. iOS, iPhone 5c, rendering frame rate ascends from 45FPS to 52FPS
+  2. Android, Redmi Note 1, loading time of the first screen  descends from 602ms to 480ms
+  3. Improve Android animation performance
+- Tools
+  1. [weex-toolkit](https://www.npmjs.com/package/weex-toolkit) supports require and generator
+  2. Playground supports runtime performance viewer
+  3. [Weex DevTools](https://github.com/alibaba/weex/blob/v0.6.1/doc/tools/devtools.md)
+     
+     <img src="https://img.alicdn.com/tps/TB1O.nwKFXXXXX8XpXXXXXXXXXX-1436-811.png" width="600">
+
+Bugfix
+- [android] fix view appear event 4bf67e4
+- [android] fix list scroll to 6355fc6
+- [ios] fix default debug value 79daf2f
+- [android] fix list scroll to ad0201b
+- [android] fix build 5d1286c
+- [android] bug fix 6a1788e
+- [ios] fix stat 2d3ab94
+- [android] bug fix 60073af
+- [android] refresh the instance when reload called by the debug server 99392db
+- [android] add a stop method to IWXDebugProxy b06d352
+- [android] sticky bug fix f9d3265
+- [android] fix build 62ee68a
+- [android] fix list scrollTo a198b2e
+- [android] fix scroller getView and getInnerView 4fa0453
+- [android] refresh the instance when reload called by the debug server fd2be06
+- [android] add a stop method to IWXDebugProxy 5789700
+- [android] bug fix 7a83ddc
+- [android] refresh the instance when reload called by the debug server 5ddf782
+- [android] add a stop method to IWXDebugProxy 79cd97b
+- [html5] fix fire event 978c454
+- [android] bug fix event lost f9c4357
+- [android] add debug log cae86fa
+- [html5] fix typo b84a1b3
+- [html5] fix lint 8e905dc
+- [android] fix bug - setLayout 0b5082f
+- [jsfm] fixed native param format of setTimeout in app.differ a9f101e
+- [ios] cancel AppDelegate.m debug annotation 03abcf8
+- [android] fix bug - scroller height error 7458441
+- [ios] support weex-devtool and weex --debugger 714c924
+- [ios] resume original logger debug feature a144699
+- [ios] modify the debug switch, update WXDebugTool.h/m file 1ce1277
+- [android] fix input restore init value when batch 3a54da2
+- [android] fix build 8450473
+- [android] fix switch fireevent with domchange b6c2d31
+- [android]  fix input change event 58563b5
+- [jsfm] fixed repeat binding da9f40d
+- [html5] fix typo 09bcdb3
+- [ios] bug fix: slider is embed in list cell d56c7ec
+- [ios] fix typo for wrong quote in Podfile ab8a83b
+- [html5] fix loadmore offset of list 69ed65a
+- [android] fix build 0f39533
+- [android] fix model callback data from string to json 3aed566
+- [android] use diff vars flag the remote debug 5e976fc
+- [html5] fix typo b8eec69
+- [html5] fix ignore de5837a
+- [android] fix bug - refresh not compatible MI2 c814cd9
+- [android] fix problem that session is null and init framework failed b985d59
+- [ios] fix element cssstyle selected bug 41450a9
+- [ios] fix crash from cssstyle e079e5c
+- [android] update the debug init sequence to make sure the handshake well 28741da
+- [android] fix example file name fc7862c
+- [ios] fix #567 3be6561
+- [android] update debug switch f9369bb
+- [android] reuse image adapter for avoid Fresco bug 62dc67c
+- [android] add debug proxy, adapt to the weex-debugger d93f9e5
+- [android] fix ut bug 85c5cae
+- [android] fix NPE in stream f5f8a4d
+- [android] fix getScreenWidth npe e264f2a
+- [android] fix register order 5c8a264
+- [ios] Stupid scoll view, always reset content offset to zero after insert cells, fixed it by hooking 981dcd6
+- [ios] fix data type d815e2a
+- [ios] update debug tool 3d82054
+- [ios] fix input component width calculation ba9a3b7
+- [ios] fix notes about WXComponent+ViewManagement d31e8b6
+- [android] fix list component addsubview error 69c3286
+- [ios] fix inverted-logic 773bea7
+- [android] fix crash when list append tree 686e450
+- [ios] fix playground scan qr code bug 28f7de2
+- [android] fix bug - Scroll getView 647a927
+- [android] fix bug - delete </merge> 77680f1
+- [android] fix bug - nested scroll ac50cd2
+- [android] fix onTouchEvent bug 911e569
+- [ios]fix thread safe method indexOfObject in array 1623165
+- [ios] remove the timing of network debug 5b00fe5
+- [ios] fix warning e1d496c
+- [ios] remove unnecessary removeFromSuperView from unload method and fix async unload view issue in list. b6c3a62
+- [android] fix unit test 4dda4ac
+- [android] update power info and debug protocol, mark stable 3323776
+- [ios] fix indicator style  abnormal when update 7dcb54b
+- [ios] fix list delete issue 579b720
+- [ios] fix indicator item size abnormal e3cd91b
+- [android] bufix NPE 904146e
+- [android] fix  multithreading exception b1c2af1
+- [android] update debug info 7a82747
+- [android] fit bug - indicator error 673b7b6
+- [android] fix bug loading-indicator 981728a
+- [android] fix unit test aafec20
+- [android] bugfix  getInstance singleton 397dc39
+- [android] fix WXSwipeRefreshLayout 745705d
+- [ios] fix scan qrcode after back from scan result failed 0b308aa
+- [android] fix unit test 02d8489
+- [android] fix create body NPE 89690f7
+- [android] fix getView()==null crash b0ca974
+- [android] bugfix NPE 93ef1e1
+- [android] bug fix NPE when instance destroy e7aad12
+- [android] NPE bugfix 9f15552
+- [android] NPE bug fix when recycleImage 4edecef
+- [android] bugfix layout can not be reset for list b19c0a1
+- [android] add DebugAdapter f10cf9c
+- [android] fix text layout unexpect quit when text is zero-length content 9320623
+- [android] fix spell error 23c5440
+- [android] update debug 567e9e0
+- [android] fix list remove cell crash bug 84844f9
+- [android] fix unit test be636fb
+- [android] update debug tool 8d9cad9
+- [android] bug fix remove fixed node f867bd1
+- [android] update debug tool 5b75507
+- [android] fix unit test 40b10de
+- [android] update debug.move some code from WXPrettyFish to WXDebugTool c70927b
+- [android] update debug 6047c43
+- [android] update debug add class ScalpelFrameLayout d956819
+- [android] fix status badge url 35a491b
+- [android] fix border style 329f128
+- [android] update weex_debug grade wrapper 793c67b
+- [android] fix fetch response data 1503431
+- [android] fix progress callback 1f72495
+- [android] bugfix init sdk b6946ad
+- [android] NPE fix fc9b595
+- [android] update how-to-debug.md playgroup-app.md c61d7b4
+- [android] update debug function 1bcfdd3
+- [android] fix v8 compile potential crash & closed v8  snapshot 6d159a6
+- [android] update debug d7c6d61
+- [android] fix v8 compile potential crash & closed v8  snapshot 67b01a1
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.6.1.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.6.1.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+## v0.5.0
+------
+
+### New Features
+1. [TabBar](https://github.com/alibaba/weex/blob/dev/doc/components/wxc-tabbar.md) is a specialized component corresponding to the radio-style selection.
+2. [NavPage](https://github.com/alibaba/weex/blob/dev/doc/components/wxc-navpage.md) contains a navbar at the top of the window and an embed content page.
+3. [Activity Showcase](https://github.com/alibaba/weex/blob/dev/examples/showcase/new-fashion/index.we) is built by composing TabBar and NavPage.
+4. [Web](https://github.com/alibaba/weex/blob/dev/doc/components/web.md) displays web content in the weex page.
+5. [A](https://github.com/alibaba/weex/blob/dev/doc/components/a.md)  defines a hyperlink to a page in the web.
+6. `Text` supports style [text-overflow](https://github.com/alibaba/weex/blob/dev/doc/references/text-style.md#properties).
+7. `Image` supports attribute [resize](https://github.com/alibaba/weex/blob/dev/doc/components/image.md#styles).
+8. `List` supports [events `appear`, `disappear`, `loadmore`](https://github.com/alibaba/weex/blob/dev/doc/components/list.md#events) and [refresh](https://github.com/alibaba/weex/blob/dev/doc/components/list.md#child-components).
+9. New Syntax
+   1. [Inline event](https://github.com/alibaba/weex/blob/dev/doc/syntax/events.md#inline-handler) supports a expression of calling event handler in template.
+   2. [Require Native Module](https://github.com/alibaba/weex/blob/dev/doc/modules#how-to-use) requires a native module by `require('@weex-module/moduleName')`.
+   3. [Computed Property](https://github.com/alibaba/weex/blob/dev/doc/syntax/data-binding.md#computed-properties) supports complicated logic in data bindings.
+   4. [New Repeat Syntax](https://github.com/alibaba/weex/blob/dev/doc/syntax/display-logic.md#a-extension-of-repeat-syntax) is easy to access the key or value of repeated object.
+
+### Bugfixes
+- [android] fix crash https://github.com/alibaba/weex/commit/4fa27716d82d90c5e16d023c6e55cf65eeb9136b
+- [android] fix #20, android slider indicator edge is not smooth https://github.com/alibaba/weex/commit/5b8f3a7e6d4d547d892223d8abc02ac2084b5a6e
+- [android] fix List https://github.com/alibaba/weex/commit/4acc90a1c8c0a9181d91e2ef984266c39d255cac
+- [android] fix NavBar https://github.com/alibaba/weex/commit/8b4ea4f0c18d4e732749c025ea496c59d19004a5
+- [android] fix position=fixed did not setLayout https://github.com/alibaba/weex/commit/3b9128c2a421243d7c28f64abaebcbffd6a2ec73
+- [jsfm] fix change data when ready https://github.com/alibaba/weex/commit/0a1aa5db40713abb2923a2effb06c28349ac0213
+- [jsfm] fix when the key of trackby is zero https://github.com/alibaba/weex/commit/efa50707efd24cfb775c7e0f467279bbaade1fd6
+- [jsfm] fix append tree https://github.com/alibaba/weex/commit/d3871b308e642fd71c2b7ba630aed0f573079daa
+- [jsfm] fix transformer version https://github.com/alibaba/weex/commit/9f21bccb07869883edc261516272aa5e41933c78
+- [jsfm] fix inline event test https://github.com/alibaba/weex/commit/1ce3212a83c58187a2be0df43eecafababce8ecb
+- [jsfm] fixed transformer 0.3 https://github.com/alibaba/weex/commit/66b647afa08671812a7c5e11b440c23ae18750d9
+- [jsfm] fixed jscs error https://github.com/alibaba/weex/commit/a5067d52e2a1708852ab704a9004f5c35f3451b6
+- [jsfm] hotfixed transformer version bug and fixed a small sample code bug https://github.com/alibaba/weex/commit/48862dc40375bbc8caa30384d45b031440694f3b
+- [jsfm] fix callback https://github.com/alibaba/weex/commit/2f85737c51ebd037a72db1c18daf4a9690c45837
+- [jsfm] fix #1 #12 https://github.com/alibaba/weex/commit/56e6a79c50f1b2fd3c0ecebec000e9a693cb4b92
+- [jsfm] fix undefined for element's depth https://github.com/alibaba/weex/commit/2b7eb9ea82e6552b6e57fddb332dfbbfa3401473
+- [jsfm] fix calling functional data-binding multiply https://github.com/alibaba/weex/commit/dcd9b660912bea69b17622e13fddb80ecb42bc35
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.5.0.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.5.0.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+------
\ No newline at end of file
diff --git a/doc/source/examples/dom-rect.md b/doc/source/examples/dom-rect.md
index 9703f69..9b786ba 100644
--- a/doc/source/examples/dom-rect.md
+++ b/doc/source/examples/dom-rect.md
@@ -7,8 +7,8 @@
 
 ```html
 <template>
-  <div class="wrapper">
-    <div ref="box" class="box">
+  <div class="wrapper" style='margin-top:200px'>
+    <div ref="box"  class="box">
       <text class="info">Width: {{size.width}}</text>
       <text class="info">Height: {{size.height}}</text>
       <text class="info">Top: {{size.top}}</text>
@@ -16,11 +16,26 @@
       <text class="info">Left: {{size.left}}</text>
       <text class="info">Right: {{size.right}}</text>
     </div>
+    
+    <text class="info btn"  @click='click()'>{{this.tip}}</text>
+      
   </div>
-</template>
+</template> 
 
 <script>
   const dom = weex.requireModule('dom')
+  
+ function round(size) {
+      var roundSize = {
+        'width': Math.round(size.width),
+        'height': Math.round(size.height),
+        'top': Math.round(size.top),
+        'bottom': Math.round(size.bottom),
+        'left': Math.round(size.left),
+        'right': Math.round(size.right)
+      }
+      return roundSize
+  }
 
   export default {
     data () {
@@ -32,26 +47,60 @@
           bottom: 0,
           left: 0,
           right: 0
-        }
+        },
+        ref:"viewport",
+        tip:"get box rect"
       }
     },
     mounted () {
-      const result = dom.getComponentRect(this.$refs.box, option => {
+      const result = dom.getComponentRect(this.ref, option => {
         console.log('getComponentRect:', option)
-        this.size = option.size
+        this.size = round.call(this,option.size);
       })
-      console.log('return value:', result)
-      console.log('viewport:', dom.getComponentRect('viewport'))
+    },
+    
+    methods:{
+      click:function() {
+        if (this.ref === 'viewport') {
+          this.ref = this.$refs.box;
+          this.tip = "get viewport rect"
+        } else {
+          this.ref = 'viewport'
+          this.tip = "get box rect"
+        }
+          
+         const result = dom.getComponentRect(this.ref, option => {
+          console.log('getComponentRect:', option)
+          this.size = round.call(this,option.size);
+        })
+      }
     }
+    
   }
 </script>
 
 <style scoped>
+  .btn {
+    margin-top:20px;
+    border-width:2px;
+    border-style: solid;
+    border-radius:10px;
+    width:300px;
+    margin-left:170px;
+    padding-left:35px;
+    border-color: rgb(162, 217, 192);
+    
+  }
+  .btn:active {
+    background-color: #8fbc8f;
+		border-color: gray;
+  }
+  
   .box {
-    margin-top: 200px;
+    align-items:center;
     margin-left: 150px;
-    width: 450px;
-    height: 450px;
+    width: 350px;
+    height: 400px;
     background-color: #DDD;
     border-width: 2px;
     border-style: solid;
@@ -60,6 +109,8 @@
   }
   .info {
     font-size: 40px;
+    top:30px;
+    margin-left:20px;
     font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
     color: #41B883;
   }
diff --git a/doc/source/guide/integrate-to-your-app.md b/doc/source/guide/integrate-to-your-app.md
index 36176dd..55cbc64 100644
--- a/doc/source/guide/integrate-to-your-app.md
+++ b/doc/source/guide/integrate-to-your-app.md
@@ -12,7 +12,7 @@
 ## Integrate to Android
 Tip:The following documents assume that you already have a certain Android development experience.    
 
-### Android has tow ways to integrate weex
+### Android has two ways to integrate weex
 1.using source code: Can quickly use the latest features of WEEX, according to your own characteristics of the project. So, you can do some related improvements.
 
 2.using SDK: WEEX will regularly release a stable version at jcenter.[jcenter](https://bintray.com/alibabaweex/maven/weex_sdk/view)       
@@ -29,7 +29,7 @@
 ### Quick to use
 If you are the first time to try or have a higher demand for stability, you can use the way to dependence on the SDK.      
 The steps are as follows:       
- 
+
 1. Create an Android project. There is nothing to be specified, according to your habits to.
 2. Update build.gradle by adding the following dependencies:
 
@@ -258,7 +258,8 @@
     _instance.renderFinish = ^ (UIView *view) {
         //process renderFinish
     };
-    [_instance renderWithURL:self.url options:@{@"bundleUrl":[self.url absoluteString]} data:nil];
+    NSURL *url = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"js"]
+    [_instance renderWithURL:url options:@{@"bundleUrl":[self.url absoluteString]} data:nil];
 }
 ```
 
diff --git a/doc/source/guide/set-up-env.md b/doc/source/guide/set-up-env.md
index 759dc9a..702c347 100644
--- a/doc/source/guide/set-up-env.md
+++ b/doc/source/guide/set-up-env.md
@@ -37,7 +37,7 @@
 
 Then you can use the weex command to verify that the installation is successful:
 
-![](https://img.alicdn.com/tps/TB1kHFrOFXXXXaYXXXXXXXXXXXX-615-308.jpg)
+![](https://img.alicdn.com/tfs/TB1NBhdQXXXXXXzXFXXXXXXXXXX-712-343.png)
 
 ### Generate a new Weex project
 
diff --git a/doc/source/guide/tools/devtools.md b/doc/source/guide/tools/devtools.md
deleted file mode 100644
index 24d2d07..0000000
--- a/doc/source/guide/tools/devtools.md
+++ /dev/null
@@ -1,100 +0,0 @@
----
-title: Using Devtools  
-type: guide
-order: 5.1
-version: 2.1
----
-
-# Devtools
-
-Weex devtools is a custom devtools for weex that implements [Chrome Debugging Protocol](https://developer.chrome.com/devtools/docs/debugger-protocol), it is designed to help you quickly inspect your app and debug your JS bundle source in a chrome web page, both Android and IOS platform are supported.
-
-## Install
-
-```
-   $ npm install  -g  weex-toolkit
-```
-#### usage
-```
-weex debug [options] [we_file|bundles_dir]
-
-  Options:
-
-    -h, --help           output usage information
-    -V, --verbose        display logs of debugger server
-    -v, --version        display version
-    -p, --port [port]    set debugger server port
-    -e, --entry [entry]  set the entry bundlejs path when you specific the bundle server root path
-    -m, --mode [mode]    set build mode [transformer|loader]
-    -w, --watch          watch we file changes auto build them and refresh debugger page![default enabled]
-```
-
-#### start debugger
-```
-$weex debug
-```
-this command will start debug server and launch a chrome opening `DeviceList` page.
-this page will display a qrcode ,you can use `Playground App` scan it for starting debug.
-
-#### start debugger with a we file
-```
-$weex debug your_weex.we
-```
-this command will compile `your_weex.we` to `your_weex.js`  and start the debug server as upon command.
-`your_weex.js` will deploy on the server and displayed in `DeviceList` page as  another qrcode contain the url of your_weex.js
-
-
-#### start debugger with a directory of we files
-```
-$weex debug your/we/path  -e index.we
-```
-this command will build every file in your/we/path and deploy them on the bundle server. your directory will mapping to  http://localhost:port/weex/ 
-use -e to set the entry of these bundles. and the url of "index.we" will display on device list page as another qrcode.
-
-## Features
-
-### Connect devices
-![devtools-main](https://img.alicdn.com/tps/TB13fwSKFXXXXXDaXXXXXXXXXXX-887-828.png "connecting (multiple) devices")
-
-### Inspector
- Inspector can be used to show your `Element` \ `Network` \ `Console log` \ `ScreenCast` \ `BoxModel` \ `Native View` and so on.
-
-![devtools-inspector](https://img.alicdn.com/tps/TB1O.nwKFXXXXX8XpXXXXXXXXXX-1436-811.png "devtools-inspector")
-
-#### Element
-##### native view element
-![native-element](https://img.alicdn.com/tps/TB16L3ENXXXXXcsXVXXXXXXXXXX-2878-1798.png "native-element")
-
-##### weex dom element
-![dom-element](https://img.alicdn.com/tps/TB1TsMuNXXXXXcsaXXXXXXXXXXX-2450-1460.png "dom-element")
-
-#### Network
-
-##### show the total time and latency
-![inspector-network](https://img.alicdn.com/tps/TB1NjO_KFXXXXcaaXXXXXXXXXXX-2880-1800.png "inspector-network")
-
-##### show the header and response
-![inspector-network](https://img.alicdn.com/tps/TB1ck6lKFXXXXbZXFXXXXXXXXXX-2880-1800.png "inspector-network")
-
-#### Console
-![inspector-console](https://img.alicdn.com/tps/TB1a7HqKFXXXXXMXFXXXXXXXXXX-2880-1800.png "inspector-console")
-
-#### Resource
-![inspector-resource](https://img.alicdn.com/tps/TB1oY6cKFXXXXXQaXXXXXXXXXXX-2880-1800.png "inspector-resource")
-
-### Debugger
-
- Debugger can be used to debug your bundle js source, you can set `Breakpoint` \ watch `CallStack`.
- 
-![devtools-debugger](https://img.alicdn.com/tps/TB1aPTEKFXXXXXaXXXXXXXXXXXX-1436-813.png "devtools-debugger")
-
-#### Breakpoint and CallStack
-![debugger-breakpoint](https://img.alicdn.com/tps/TB1_trbKFXXXXc0XVXXXXXXXXXX-2880-1800.png "debugger-breakpoint")
-
-
-## Integrate devtools
-
-* Android
-    * See the doc [Weex devtools (Android)](../../references/advanced/integrate-devtool-to-android.html), it will lead you to config and use it step by step.
-* IOS
-    * See the doc [Weex devtools (iOS)](../../references/advanced/integrate-devtool-to-ios.html), it will lead you to config and use it step by step.
diff --git a/doc/source/guide/tools/index.md b/doc/source/guide/tools/index.md
index ca087b1..83ce4dc 100644
--- a/doc/source/guide/tools/index.md
+++ b/doc/source/guide/tools/index.md
@@ -7,5 +7,4 @@
 
 # Tools  
 
-- [Devtools](./devtools.html)
-- [Weexpack](./weexpack.html)
+- [weex-toolkit](./toolkit.html)
diff --git a/doc/source/guide/tools/toolkit.md b/doc/source/guide/tools/toolkit.md
new file mode 100644
index 0000000..2e19b2d
--- /dev/null
+++ b/doc/source/guide/tools/toolkit.md
@@ -0,0 +1,198 @@
+---
+title: use weex-toolkit
+type: guide
+order: 5.1
+version: 2.1
+---
+
+# weex-toolkit
+
+[weex-toolkit](https://github.com/weexteam/weex-toolkit) is an official command line tool to help developers to create, debug and build their Weex project.
+
+### Install
+use npm to install weex-toolkit:
+
+``` bash
+$ npm install -g weex-toolkit
+```
+if you make it, you can input "weex" in your command line terminal to test it. The right output:
+
+
+![weex-commands](https://img.alicdn.com/tfs/TB1NBhdQXXXXXXzXFXXXXXXXXXX-712-343.png)
+
+if you have never installed node.js, you should go [node.js.org]( https://nodejs.org/en/) to download and install it. 
+* node engine version >= 6. You can try [n](https://github.com/tj/n) to manage your node versions*
+If you meet some errors when installing like `permission error`, please go [weex-toolkit issues](https://github.com/weexteam/weex-toolkit/issues) to find some solution or have a discuss with us. 
+
+
+### initialize Weex project
+```bash
+$ weex init awesome-project
+```
+After command running, you can find `awesome-project` directory and there are some Weex templates in it. 
+There are some useful npm scripts you will use in the future:
+
+- `build`: build the source code and generate the JS bundle
+- `dev`: run webpack watch configuration
+- `serve`: start a web server
+- `debug`: open the debug mode
+
+When all dependences are ready, you can input `npm run dev` and run `npm run server` in a command line tab. Now you can visit our web page in :
+
+http://localhost:8080/index.html
+
+
+### preview Weex page in time
+
+weex-toolkit supports previewing your Weex file(`.we` or `.vue`) in a watch mode. You only need specify your file path.
+
+``` bash
+$ weex src/foo.vue 
+```
+The browser will auto open the location and you could see the layout and effects of your Weex page. If you have a [Playground](https://weex.apache.org/cn/playground.html) app in your mobile devices, you can scan the QR code at the opened page.
+Try the command below, you’ll preview the whole directory files.
+
+``` bash
+$ weex src --entry src/foo.vue
+```
+You need to specify the directory path and the entry file(`--entry`).
+### build Weex project
+Use ` weex compile ` to build your single weex file or the whole project.
+``` bash
+weex compile src/foo.vue dist
+```
+There are two arguments. One is your code source path (a single file or a directory) and another is your destination path you want to build
+
+### debug 
+
+weex-toolkit has the ability to extend third party script.  And **[Weex devtools](https://github.com/weexteam/weex-devtool)** is a custom devtools for Weex that implements [Chrome Debugging Protocol](https://developer.chrome.com/devtools/docs/debugger-protocol), it is designed to help you quickly inspect your app and debug your JS bundle source in a Chrome web page, both android and iOS platform are supported. So you can use weex-devtools feature by weex-toolkit.
+
+#### usage
+
+``` bash
+weex debug [options] [we_file|bundles_dir]
+
+  Options:
+
+    -h, --help           output usage information
+    -V, --verbose        display logs of debugger server
+    -v, --version        display version
+    -p, --port [port]    set debugger server port
+    -e, --entry [entry]  set the entry bundlejs path when you specific the bundle server root path
+    -m, --mode [mode]    set build mode [transformer|loader]
+    -w, --watch          watch we file changes auto build them and refresh debugger page![default enabled]
+```
+#### start debugger
+
+```
+$ weex debug
+```
+
+
+this command will start debug server and launch a chrome opening `DeviceList` page.
+this page will display a qrcode ,you can use `Playground App` scan it for starting debug.
+
+#### debug `.we` | `.vue` file
+
+```
+$ weex debug your_weex.vue
+```
+
+this command will compile `your_weex.we` to `your_weex.js`  and start the debug server as upon command.
+`your_weex.js` will deploy on the server and displayed in `DeviceList` page as  another qrcode contain the url of your_weex.js.
+
+.
+#### start debugger with a directory of we files
+
+
+```
+$weex debug your/we/path  -e index.we
+```
+
+this command will build every file in `your/we/path `and deploy them on the bundle server. your directory will mapping to  http://localhost:port/weex/ 
+use `-e` to set the entry of these bundles. and the url of `index.we` will display on device list page as another qrcode.
+
+
+#### Features
+
+##### Connect devices
+
+![devtools-main](https://img.alicdn.com/tps/TB13fwSKFXXXXXDaXXXXXXXXXXX-887-828.png)
+
+##### Inspector
+
+ Inspector can be used to show your `Element` \ `Network` \ `Console log` \ `ScreenCast` \ `BoxModel` \ `Native View` and so on.
+
+![devtools-inspector](https://img.alicdn.com/tps/TB1O.nwKFXXXXX8XpXXXXXXXXXX-1436-811.png)
+##### Element
+
+![inspector-element](https://img.alicdn.com/tps/TB1.02bKFXXXXXwaXXXXXXXXXXX-2880-1800.png)
+##### NetWork
+##### show the total time and latency
+
+![inspector-network](https://img.alicdn.com/tps/TB1NjO_KFXXXXcaaXXXXXXXXXXX-2880-1800.png)
+##### show the header and response
+
+![inspector-network](https://img.alicdn.com/tps/TB1ck6lKFXXXXbZXFXXXXXXXXXX-2880-1800.png)
+##### Console
+
+![inspector-console](https://img.alicdn.com/tps/TB1a7HqKFXXXXXMXFXXXXXXXXXX-2880-1800.png)
+##### Resource
+
+![inspector-resource](https://img.alicdn.com/tps/TB1oY6cKFXXXXXQaXXXXXXXXXXX-2880-1800.png)
+#### Debugger
+
+![devtools-debugger](https://img.alicdn.com/tps/TB1aPTEKFXXXXXaXXXXXXXXXXXX-1436-813.png)
+##### Breakpoint and CallStack
+
+![debugger-breakpoint](https://img.alicdn.com/tps/TB1_trbKFXXXXc0XVXXXXXXXXXX-2880-1800.png)
+#### Integrate devtools
+* Android
+    * See the doc [Weex devtools (Android)](../../references/advanced/integrate-devtool-to-android.html), it will lead you to config and use it step by step.
+* IOS
+    * See the doc [Weex devtools (IOS)](../../references/advanced/integrate-devtool-to-ios.html), it will lead you to config and use it step by step.
+  
+### weex-toolkit extends weexpack command
+
+[weexpack](https://github.com/weexteam/weex-pack) helps to setup Weex application from scratch quickly. With simple commands, developers could create a Weex project, add different platform template, could install plugins from local, GitHub or Weex market, could pack up his application project and run on mobile. For those who would like to share his own plugins, he could publish them to the Weex market.
+
+Now weex-toolkit can run the same commands of `weexpack` because of the new architecture. If your directory is generated by `weexpack`, you can build your iOS or android app.
+
+### weex platform and run commands
+
+Use `platform add|remove` to add or remove Weex app template and run it in your target devices.
+
+``` bash
+$ weex platform add ios
+```
+If you use these commands firstly, you might see the prompt. Just enter Y.
+
+![install weexpack](https://gw.alicdn.com/tfs/TB19n4AQXXXXXawXVXXXXXXXXXX-577-70.png)
+
+Then run platform, you will see an iPhone simulator.
+
+``` bash
+$ weex run ios
+```
+
+
+### weex plugin commands
+
+If you want to use some plugins on the [weex market](https://market.dotwe.org), weex-toolkit is the right choice.
+
+```bash
+$ weex plugin add plugin_name
+```
+You need to specify the plugin name from market like "weex-chart":
+
+``` bash
+$ weex plugin add weex-chart
+```
+
+Remove some plugins(eg: weex-chart):
+
+``` bash
+$ weex plugin remove weex-chart
+```
+
+Learn more about [weexpack](https://github.com/weexteam/weex-pack) .
\ No newline at end of file
diff --git a/doc/source/guide/tools/weexpack.md b/doc/source/guide/tools/weexpack.md
deleted file mode 100644
index e3cfdbf..0000000
--- a/doc/source/guide/tools/weexpack.md
+++ /dev/null
@@ -1,300 +0,0 @@
----
-title: Using Weexpack
-type: guide
-order: 5.2
-version: 2.1
----
-
-# Using Weexpack
-
-## Weexpack introduction
-
-Weexpack is our next generation of engineering development kits, it helps to setup wWex application from scratch quickly. With simple commands, developers could create a Weex project, add different platform template, could install plugins from local, GitHub or Weex market, could pack up his application project and run on mobile. For those who would like to share his own plugins, he could publish them to the Weex market.
-
-weexpack commands can be grouped to three parts:
-* application package
- * **weexpack create** — create Weex project.
- * **weexpack platform add/remove** — add/remove Weex platform template,it support plugins and Weex bundle debugging by default.
- * **weexpack platform list** — query installed platforms and its version.
- * **weexpack platform run** - pack/build/run application.
-
-* plugin usuage
- * **weexpack plugin add/remove** — add/remove Weex plugin, support to install from local, Github or market.
- * **weexpack plugin list** — query installed plugins and its version.
-
-* plugin development
- * **weexpack plugin create** - create plugin template with necessary config file and directory.
- * **weexpack plugin publish** - publish plugin to market.
-
-
-## Installation
-### pre-environmental requirements
-
-- Supported on Mac linux windows.
-- Configure the [Node.js] [1] environment and install the [npm] [2] package manager.(need node 6.0+)
-- Configure iOS development environment:
-    - Install [Xcode IDE] [3] to launch Xcode once so that Xcode automatically installs the Developer Tools and confirms the usage protocol.
-    - Install cocoaPods
-- Configure the Android development environment:
-    - Install [Android Studio] [4] and open the new project. Open the menu bar, open the [AVD Manager] [5], the new Android emulator and start. (If you have installed [Docker] [6], close the Docker Server.)
-    - Or just download the [Android SDK] [7], run the command line [AVD Manager] [8], create a new Android emulator and launch it.
-    - Make sure that Android build-tool version is 23.0.2
-
-### Instructions
-
-First, install the weex-pack command globally:
-
-```bash
-$ npm install -g weexpack
-```
-
-or run the following command under the root path of your cloned weexpack repo
-
-```bash
-$ npm install
-```
-
-## Pack application (and plugin usuage)
-
-Following graph shows how to pack a application, plugin related parts werenot a must.
-
-![weexpack1](https://img.alicdn.com/tps/TB1.bpVPXXXXXarapXXXXXXXXXX-462-310.png)
-
-### Steps in detail
-
-#### 1. create a weexpack project
-
-```bash
-$ weexpack create appName
-```
-
-will create directory as follows:
-
-```
-WeexProject
-├── README.md
-├── android.config.json
-├── config.xml
-├── hooks
-│   └── README.md
-├── ios.config.json
-├── package.json
-├── platforms     // platform template directory
-├── plugins       // plugins download to here
-│   └── README.md
-├── src           // application(we/vue file)directory
-│   └── index.we
-├── start
-├── start.bat
-├── tools
-│   └── webpack.config.plugin.js
-├── web
-│   ├── index.html
-│   ├── index.js
-│   └── js
-│       └── init.js
-└── webpack.config.js
-```
-
-Above project template has no ios/android directory by default, you should change to appName path to install necessary dependency.
-
-```bash
-$ cd appName && npm install
-```
-
-#### 2. install Weex application template
-
-Application template by default support Weex plugins and Weex bundle debugging. Please note template name are in lower-case, template was installed under platforms directory.
-
-* android template
-
-```bash
-$ weexpack platform add android
-```
-
-* ios template
-
-```bash
-$ weexpack platform add ios
-```
-
-Take android platform as example,the directory under platforms looks as following:
-
-```
-platforms
-└── android
-    ├── LICENSE
-    ├── NOTICE
-    ├── README.md
-    ├── app
-    │   ├── build
-    │   ├── build.gradle
-    │   ├── proguard-rules.pro
-    │   └── src
-    ├── appframework
-    │   ├── build
-    │   ├── build.gradle
-    │   ├── proguard-rules.pro
-    │   └── src
-    ├── build
-    │   └── generated
-    ├── build.gradle
-    ├── codeStyleSettings.xml
-    ├── gradle
-    │   └── wrapper
-    ├── gradle.properties
-    ├── gradlew
-    ├── gradlew.bat
-    ├── settings.gradle
-    └── weexplugin
-        ├── build.gradle
-        ├── proguard-rules.pro
-        └── src
-
-```
-
-* query installed platforms
-
-  ```bash
-  $ weexpack platform list
-  ```
-
-  you will get result like:
-
-  ```
-  Installed platforms:
-    android
-  Available platforms:
-    android ^6.2.1
-  ```
-
-* remove platform template
-
-  Please use remove command to remove unnecessary platform, for example user want to remove ios template in windows platform.
-
-  ```bash
-  $ weexpack platform remove ios
-  ```
-
-#### 3. install Weex plugin(optional)
-
-* add plugins from local
-
-  ```bash
-  $ weexpack plugin add path/to/plugin
-  ```
-
-* add plugins from Weex market,for example weex-chart
-
-  ```bash
-  $ weexpack plugin add weex-chart
-  ```
-
-  weexplugin directory was the target directory where plugin was installed. Take android as an example:
-
-  ```
-    weexplugin
-    ├── build.gradle  //  plugin build script, maintained by weexpack tool
-    ├── libs
-    ├── proguard-rules.pro
-    ├── src
-    │   └── main
-    │       ├── AndroidManifest.xml // plugin android manifest file
-    │       ├── java
-    │       │   ├── // 插件src安装目录
-    │       │   └── com
-    │       │       └── alibaba
-    │       │           └── weex
-    │       │               └── plugin
-    │       │                   ├── ConfigXmlParser.java // config file parser
-    │       │                   ├── PluginConfig.java    // external interface
-    │       │                   ├── PluginEntry.java     // plugin description
-    │       │                   └── PluginManager.java   // plugin manager
-    │       └── res // plugin resource path
-    │           ├── drawable
-    │           ├── values
-    │           │   └── strings.xml
-    │           └── xml
-    │               └── config.xml // plugin config file, which used by PluginManager when install
-  ```
-
-* query installed plugins
-
-  ```bash
-  $ weexpack plugin list
-  ```
-
-* remove installed plugin,for example weex-chart
-
-  ```bash
-  $ weexpack plugin remove weex-chart
-  ```
-
-#### 4. pack application and run
-
-After all above steps, you could modify your application we/vue files under src directory. And then, use run command to pack and run your application. Run command will download building tools and all dependencies which may take a while, and open monitor or connect to mobile device to execute your application afterwards.
-
-* for android application
-
-  ```bash
-  $ weexpack run android
-  ```
-
-  You could modify your project information in android.config.json file:
-
-  - AppName: the name of the project
-  - AppId: application_id the name of the package
-  - SplashText: the text in welcome page
-  - WeexBundle: the bundle file (could be local file or remote url). For Local file please put your we/vue files under the src directory
-
-* for ios platform
-
-  * simulator
-
-    ```bash
-    $ weexpack run ios
-    ```
-
-  * Build ipa
-
-    ```bash
-    $ weexpack build ios
-    ```
-
-  this command will prompt for CodeSign, Profile(provisioning profile), AppId to build ipa. Other information like AppName, Weex bundle could be configured as you like in the file ios.config.json. After this command, ipa file could be created under the directory  `/playground/build/ipa_build/`.
-
-  Note: For details about various requirements to deploy to a device, refer to the Launch Your App On Devices section of Apple's [About App Distribution Workflows][9]. Briefly, you need to do the following before deploying:
-
-  1. CodeSign should be installed to keychain, click keychain to get the id;
-  2. provisioning profile need UUID. you could use the file mobileprovision_UUID.sh to generate UUID as follows:
-
-    ```
-    $ ./mobileprovision_UUID.sh abcpath
-    ```
-    abcpath is the path of provisioning profile file.
-
-* for Web platform
-
-  ```bash
-  $ weexpack run web
-  ```
-
-## Plugin development and publishment
-
-![weexpack2](https://img.alicdn.com/tps/TB18hxjPXXXXXXgapXXXXXXXXXX-248-258.png)
-
-[Plugin development guide](https://github.com/weexteam/weex-pack/blob/master/doc/plugin-devloping-web.md)
-
-## Examples
-
- [Create Weex One App with Weexpack](https://github.com/weexteam/weex-pack/wiki/Create-Weex-One-App-with-Weexpack)
-
-  [1]: https://nodejs.org/
-  [2]: https://www.npmjs.com/
-  [3]: https://itunes.apple.com/us/app/xcode/id497799835?mt=12
-  [4]: https://developer.android.com/studio/install.html
-  [5]: https://developer.android.com/studio/run/managing-avds.html
-  [6]: https://www.docker.com/
-  [7]: https://developer.android.com/studio/releases/sdk-tools.html
-  [8]: https://developer.android.com/studio/run/managing-avds.html
-  [9]: https://developer.apple.com/library/content/documentation/IDEs/Conceptual/AppDistributionGuide/Introduction/Introduction.html
diff --git a/doc/source/references/advanced/extend-to-ios.md b/doc/source/references/advanced/extend-to-ios.md
index a2ffa33..a6646b9 100644
--- a/doc/source/references/advanced/extend-to-ios.md
+++ b/doc/source/references/advanced/extend-to-ios.md
@@ -7,6 +7,12 @@
 
 # Extend to iOS
 
+#### Notice
+
+**All of the exported APIs in Weex are controllable and safe, they can not access private APIs or do any system hacks at runtime,  neither can they change the primary purpose of the Application**.
+
+**If you are extending your custom modules/components,  be sure NOT to export the ability of Objective-C runtime, be sure NOT to export  dynamic and uncontrolled methods such as `dlopen()`, `dlsym()`, `respondsToSelector:`, `performSelector:`, `method_exchangeImplementations()`, be sure NOT to export any private methods. **
+
 ### Module extend
 
 Weex SDK provides only rendering capabilities, rather than have other capabilities, such as network, picture, and URL redirection. If you want these features, you need to implement it.
@@ -47,7 +53,37 @@
 @end
 ```
 
-In addition, `0.10.0` begins to support synchronous module API call, you can use macro `WX_EXPORT_METHOD_SYNC` to export module methods which could make JavaScript receive return values from native,  it **can only be called on JS thread**.
+#### export synchronous methods <span class="api-version">v0.10+</span> 
+
+If you want to export synchronous methods which could make Javascript receive return values from natvie, you can use `WX_EXPORT_METHOD_SYNC`  macro. 
+
+native code:
+
+```objective-c
+@implementation WXEventModule
+
+WX_EXPORT_METHOD_SYNC(@selector(getString))
+  
+- (NSString *)getString
+{
+    return @"testString";
+}
+
+@end
+```
+
+js code:
+
+```javascript
+const eventModule = weex.requireModule('event')
+const returnString = syncTest.getString()  // return "testString"
+```
+
+You can alse return number/array/dictionary except string.
+
+`notice:`  the exported synchronous native method **can only be called on JS thread**. **Do not** do heavy work which will block js execution.
+
+`notice:`  Vue 2.0 has not supported this feature yet.  It will be supported in version 0.12 at the soonest.
 
 #### Register the module
 
@@ -194,19 +230,19 @@
 
 Weex offers component life cycle hooks that give you visibility into these key moments and the ability to act when they occur.
 
-method| description
-:----:|------
-initWithRef:type:...| Initializes a new component using the specified  properties.
-layoutDidFinish | Called when the component has just laid out.
-loadView   | Creates the view that the component manages.
-viewWillLoad | Called before the load of component's view .
-viewDidLoad | Called after the component's view is loaded and set.
-viewWillUnload | Called just before releasing the component's view.
-viewDidUnload | Called when the component's view is released.
-updateStyles:| Called when component's style are updated.
-updateAttributes:| Called when component's attributes are updated.
-addEvent:| Called when adding an event to the component.
-removeEvent:| Called when removing an event frome the component.
+|        method        | description                              |
+| :------------------: | ---------------------------------------- |
+| initWithRef:type:... | Initializes a new component using the specified  properties. |
+|   layoutDidFinish    | Called when the component has just laid out. |
+|       loadView       | Creates the view that the component manages. |
+|     viewWillLoad     | Called before the load of component's view . |
+|     viewDidLoad      | Called after the component's view is loaded and set. |
+|    viewWillUnload    | Called just before releasing the component's view. |
+|    viewDidUnload     | Called when the component's view is released. |
+|    updateStyles:     | Called when component's style are updated. |
+|  updateAttributes:   | Called when component's attributes are updated. |
+|      addEvent:       | Called when adding an event to the component. |
+|     removeEvent:     | Called when removing an event frome the component. |
 
 
 As in the image component example, if we need to use our own image view, we can override the `loadView` method.
@@ -287,9 +323,9 @@
    }
 @end
 ```
-   
+
 after your registration for your own custom component, now you can call it in your js file.
- 
+
 ```html
 <template>
   <mycomponent id='mycomponent'></mycomponent>
@@ -301,4 +337,4 @@
     }
   }
 </script>
-``` 
\ No newline at end of file
+```
\ No newline at end of file
diff --git a/doc/source/references/common-style.md b/doc/source/references/common-style.md
index 24fac44..e69d573 100644
--- a/doc/source/references/common-style.md
+++ b/doc/source/references/common-style.md
@@ -217,19 +217,19 @@
 
 <style scoped>
   .wrapper {
-    align-items: center; 
+    align-items: center;
     margin-top: 120px;
   }
   .title {
     font-size: 48px;
   }
   .logo {
-    width: 360px; 
+    width: 360px;
     height: 82px;
     background-color: red;
   }
   .logo:active {
-    width: 180px; 
+    width: 180px;
     height: 82px;
     background-color: green;
   }
@@ -274,19 +274,19 @@
 
 `radial-gradient` is not currently supported, do not use it.
 
-Weex currently supports two color gradients. The direction of the gradient is as follows: 
+Weex currently supports two color gradients. The direction of the gradient is as follows:
 
 * to right
   From left to right
-* to left 
+* to left
   From right to left
-* to bottom 
+* to bottom
   From top to bottom
-* to top 
+* to top
   From bottom to top
-* to bottom right 
+* to bottom right
   From the upper left corner to the lower right corner
-* to top left 
+* to top left
   From the lower right corner to the upper left corner
 
 ### Note
@@ -349,6 +349,59 @@
 </style>
 ```
 
+## box-shadow <span class="api-version">v0.11+</span>
+
+Weex supports box-shadow in iOS: `inset`,`offset-x`,`offset-y`, `blur-radius`,`color`
+
+
+### Note
+
+- box-shadow takes effect in iOS
+
+### Example
+
+```html
+<template>
+  <div class="wrapper">
+    <div style="width:400px; height:60px;background-color: #FFE4C4; box-shadow:20px  10px rgb(255, 69, 0);">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+    <div style="margin-top: 80px;width:400px; height:60px;background-color: #FFE4C4; box-shadow: 20px  10px 5px rgba(255, 69, 0, 0.8);">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+    <div style="margin-top: 80px;width:400px; height:60px;background-color: #FFE4C4; box-shadow:inset 20px  10px 5px rgba(255, 69, 0, 0.8);">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+    <div style="margin-top: 80px;width:400px; height:60px;background-color: #FFE4C4; box-shadow:inset 20px  10px 5px rgb(255, 69, 0);">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+    <div style="margin-top: 80px;width:400px; height:60px;background-color: #FFE4C4; box-shadow:20px  10px 5px black;">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+    <div style="margin-top: 80px;width:400px; height:60px;background-color: #FFE4C4; box-shadow:20px  10px 5px #008B00;">
+      <text class="title" style="text-align: center">Hello {{target}}</text>
+    </div>
+  </div>
+</template>
+
+<style scoped>
+  .wrapper {align-items: center; margin-top: 120px;}
+  .title {font-size: 48px;}
+</style>
+
+<script>
+  module.exports = {
+    data: function () {
+      return {
+        logoUrl: 'https://alibaba.github.io/weex/img/weex_logo_blue@3x.png',
+        target: 'World'
+      };
+    }
+  };
+</script>
+```
+
+
 ## Other Common Style
 
 - `opacity`
diff --git a/doc/source/references/components/input.md b/doc/source/references/components/input.md
index 837c867..aca934b 100644
--- a/doc/source/references/components/input.md
+++ b/doc/source/references/components/input.md
@@ -29,6 +29,8 @@
 
 * `maxlength`: <span class="api-version">v0.7+</span> a number value to specify maxlength of input.
 
+* `return-key-type {string}`:<sup class="wx-v">v0.11</sup>the keybord returen key type support defalut;go;next;search;send,done.
+
 ## Styles
 
 * placeholder-color: the color of placeholder. Default value is '#999999'.
@@ -62,14 +64,20 @@
 * change: the change event is fired when a change to the component's value is commited by the user. It always come after a 'blur' event.
 * focus: a component has received focus.
 * blur: a component has lost focus.
+* `return`:the return key click.
+
+     the object property of event:
+
+    - `returnKeyType`: return key Type  of component
+    - `value`: component text value
 
 ### common events
 check out [common events](../common-event.html)
 
-* support 'appear' / 'disappear' event. 
+* support 'appear' / 'disappear' event.
 
 
-### Methoads 
+### Methoads
 
  - `focus()` <span class="api-version">v0.9+</span>
 
@@ -79,6 +87,15 @@
 
   The `blur()` method is used to remove focus from an input component and close soft keybord(if it has focus).
 
+- `setSelectionRange(selectionStart,selectionEnd)`  <span class="api-version">v0.11+</span>set text selection range of input or textarea
+
+  - `selectionStart {number}`:set starting location text selection range
+  - `selectionEnd {number}`:set end location text selection range
+
+- `getEditSelectionRange(callback[selectionStart,selectionEnd])`  <span class="api-version">v0.11+</span>get text selection range of input or textarea
+    - `selectionStart {number}`:get starting location text selection range
+    - `selectionEnd {number}`: get end location text selection range
+
 ### Notes
 does not support the common-event 'click'. Please listen to the 'input' or 'change' event instead.
 
@@ -151,4 +168,4 @@
 </style>
 ```
 
-[try it](http://dotwe.org/vue/c1b1a5fdcf0937df1d847f8812a7ccb2)
\ No newline at end of file
+[try it](http://dotwe.org/vue/c1b1a5fdcf0937df1d847f8812a7ccb2)
diff --git a/doc/source/references/components/refresh.md b/doc/source/references/components/refresh.md
index 8aaecbb..ed3ef0a 100644
--- a/doc/source/references/components/refresh.md
+++ b/doc/source/references/components/refresh.md
@@ -132,8 +132,15 @@
 common styles: check out [common styles for components](../common-style.html)
 
 ### Events
-* onrefresh triggered when the scroller has been pulled down
-* onpullingdown available on Android. triggered when the scroller has been pulled down. you can get dy, headerHeight, maxHeight from onpullingdowns event object.
+* `onrefresh`: triggered when the scroller has been pulled down
+* `onpullingdown`: triggered when the scroller has been pulled down. you can get `dy, pullingDistance, viewHeight, type` from onpullingdown event object.
+
+ ```
+  dy: the differencen between two scroll actions
+  pullingDistance: the distance of pulling
+  viewHeight: the height of refreshView 
+  type: "pullingdown" constant string type for this event
+ ```
 
 ### Restrictions
 
diff --git a/doc/source/references/components/waterfall.md b/doc/source/references/components/waterfall.md
new file mode 100644
index 0000000..5c035d0
--- /dev/null
+++ b/doc/source/references/components/waterfall.md
@@ -0,0 +1,60 @@
+\---
+
+title: <waterfall>
+
+type: references
+
+order: 2.5
+
+version: 2.1
+
+\---
+
+# waterfall
+
+<span class="weex-version">v0.11.0+</span>
+
+A component providing waterfall layout.
+
+### Child Components
+
+Notes: The waterfall now supports the following child components: cell, header, refresh, loading and fixed-position components. Other kinds of components will not be guaranteed to be displayed correctly. 
+
+* cell: presents the content for a single data item in waterfall
+* header: components that need to stretch across multiple columns. It can be sticky by using css position.
+
+### Attributes
+
+* **column-width** : This property describes the width of columns in waterfall elements.
+  * `auto`: means that the column width will be determined by other properties(e.g., column-count, if it has a non-auto value).
+  * `<length>`: describes the optimal column width. The actual column width may be wider (to fill the available space), or narrower (only if the available space is smaller than the specified column width). Specified values must be greater than 0.
+* **column-count**:This property describes the number of columns of a multicol element.
+  * `auto`: means that the number of columns will be determined by other properties (e.g., column-width, if it has a non-auto value).
+  * `<integer>`: describes the optimal number of columns into which the content of the element will be flowed. Values must be greater than 0. If both column-width and column-count have non-auto values, the integer value describes the maximum number of columns.
+* **column-gap**:sets the gap between columns. if `normal` is specified,  the gap will be `32`.
+
+To see other attributes,  please checkout [List Component Attributes](./list.html) 
+
+### Styles
+
+common styles: check out [common styles for components](../common-style.html)
+
+* support flexbox related styles
+* support box model related styles
+* support position related styles
+* support opacity, background-color etc.
+
+### Events
+
+common events: check out the [common events](../common-event.html)
+
+* support onclick event. Check out [common events](../common-event.html)
+* support onappear / ondisappear event. Check out [common events](../common-event.html)
+
+### API
+
+All subcomponents in waterfall support the scrollToElement API in [dom module](../modules/dom.html)
+
+### Example
+
+see [playground waterfall example](http://dotwe.org/vue/7a9195643e9e8da352b0d879cdbe68c0)
\ No newline at end of file
diff --git a/doc/source/references/components/web.md b/doc/source/references/components/web.md
index b96097d..1bac6d6 100644
--- a/doc/source/references/components/web.md
+++ b/doc/source/references/components/web.md
@@ -46,7 +46,7 @@
 Check out [common events](../common-event.html)
 
 ### Notes
-not support `click` event. 
+not support `click` event.
 
 ## Example
 
@@ -57,7 +57,7 @@
 <template>
   <div class="wrapper">
     <div class="group">
-      <input class="input" ref="input" type="url" autofocus="false" value="https://m.taobao.com"></input>
+      <input class="input" v-model="value" ref="input" type="url" autofocus="false"></input>
     </div>
     <div class="group">
       <text class="button" @click="loadURL">LoadURL</text>
@@ -74,12 +74,13 @@
   export default {
     data () {
       return {
-        url : 'https://m.alibaba.com'
+        url : 'https://m.alibaba.com',
+        value: 'https://m.alibaba.com'
       }
     },
     methods: {
       loadURL (event) {
-        this.url = this.$refs.input.value
+        this.url = this.value
         modal.toast({ message: 'load url:' + this.url })
         setTimeout(() => {
           console.log('will go back.')
@@ -100,7 +101,7 @@
         console.log('pagefinish', event)
         modal.toast({ message: 'pagefinish' })
       },
-      finish (event) {
+      error (event) {
         console.log('error', event)
         modal.toast({ message: 'error' })
       }
@@ -144,4 +145,4 @@
 </style>
 ```
 
-[try it](http://dotwe.org/vue/154c7fa8ac13e87ff4e7bf9862147d50)
\ No newline at end of file
+[try it](http://dotwe.org/vue/221ff37113a12d692a7a92a100f20162)
\ No newline at end of file
diff --git a/doc/source/references/modules/dom.md b/doc/source/references/modules/dom.md
index 2e75ba0..3fcee70 100644
--- a/doc/source/references/modules/dom.md
+++ b/doc/source/references/modules/dom.md
@@ -24,7 +24,7 @@
 * `node`*(Node)*: an element that scrolled into the view.
 * `options`*(object)*: some options.
   * `offset`*(number)*: An offset to the visible position, default is `0`.
-  * `animated`*(boolean)*: Whether there is an animation effect, default is `true`.
+  * `animated` *(bool)* :set element animation, default true
 
 #### Example
 
@@ -143,8 +143,8 @@
 
 ```html
 <template>
-  <div class="wrapper">
-    <div ref="box" class="box">
+  <div class="wrapper" style='margin-top:200px'>
+    <div ref="box"  class="box">
       <text class="info">Width: {{size.width}}</text>
       <text class="info">Height: {{size.height}}</text>
       <text class="info">Top: {{size.top}}</text>
@@ -152,11 +152,26 @@
       <text class="info">Left: {{size.left}}</text>
       <text class="info">Right: {{size.right}}</text>
     </div>
+    
+    <text class="info btn"  @click='click()'>{{this.tip}}</text>
+      
   </div>
-</template>
+</template> 
 
 <script>
   const dom = weex.requireModule('dom')
+  
+ function round(size) {
+      var roundSize = {
+        'width': Math.round(size.width),
+        'height': Math.round(size.height),
+        'top': Math.round(size.top),
+        'bottom': Math.round(size.bottom),
+        'left': Math.round(size.left),
+        'right': Math.round(size.right)
+      }
+      return roundSize
+  }
 
   export default {
     data () {
@@ -168,26 +183,60 @@
           bottom: 0,
           left: 0,
           right: 0
-        }
+        },
+        ref:"viewport",
+        tip:"get box rect"
       }
     },
     mounted () {
-      const result = dom.getComponentRect(this.$refs.box, option => {
+      const result = dom.getComponentRect(this.ref, option => {
         console.log('getComponentRect:', option)
-        this.size = option.size
+        this.size = round.call(this,option.size);
       })
-      console.log('return value:', result)
-      console.log('viewport:', dom.getComponentRect('viewport'))
+    },
+    
+    methods:{
+      click:function() {
+        if (this.ref === 'viewport') {
+          this.ref = this.$refs.box;
+          this.tip = "get viewport rect"
+        } else {
+          this.ref = 'viewport'
+          this.tip = "get box rect"
+        }
+          
+         const result = dom.getComponentRect(this.ref, option => {
+          console.log('getComponentRect:', option)
+          this.size = round.call(this,option.size);
+        })
+      }
     }
+    
   }
 </script>
 
 <style scoped>
+  .btn {
+    margin-top:20px;
+    border-width:2px;
+    border-style: solid;
+    border-radius:10px;
+    width:300px;
+    margin-left:170px;
+    padding-left:35px;
+    border-color: rgb(162, 217, 192);
+    
+  }
+  .btn:active {
+    background-color: #8fbc8f;
+		border-color: gray;
+  }
+  
   .box {
-    margin-top: 200px;
+    align-items:center;
     margin-left: 150px;
-    width: 450px;
-    height: 450px;
+    width: 350px;
+    height: 400px;
     background-color: #DDD;
     border-width: 2px;
     border-style: solid;
@@ -196,10 +245,13 @@
   }
   .info {
     font-size: 40px;
+    top:30px;
+    margin-left:20px;
     font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace;
     color: #41B883;
   }
 </style>
 ```
 
-[try it](http://dotwe.org/vue/87d4ed571de129ab28052b06a5d65fc8)
\ No newline at end of file
+[try it](http://dotwe.org/vue/87d4ed571de129ab28052b06a5d65fc8)
+
diff --git a/doc/source/references/modules/webview.md b/doc/source/references/modules/webview.md
index 1ca1b5e..c67dfe7 100644
--- a/doc/source/references/modules/webview.md
+++ b/doc/source/references/modules/webview.md
@@ -65,7 +65,7 @@
 <template>
   <div class="wrapper">
     <div class="group">
-      <input class="input" ref="input" type="url" autofocus="false" value="https://m.taobao.com"></input>
+      <input class="input" v-model="value" ref="input" type="url" autofocus="false"></input>
     </div>
     <div class="group">
       <text class="button" @click="loadURL">LoadURL</text>
@@ -82,12 +82,13 @@
   export default {
     data () {
       return {
-        url : 'https://m.alibaba.com'
+        url : 'https://m.alibaba.com',
+        value: 'https://m.alibaba.com'
       }
     },
     methods: {
       loadURL (event) {
-        this.url = this.$refs.input.value
+        this.url = this.value
         modal.toast({ message: 'load url:' + this.url })
         setTimeout(() => {
           console.log('will go back.')
@@ -108,7 +109,7 @@
         console.log('pagefinish', event)
         modal.toast({ message: 'pagefinish' })
       },
-      finish (event) {
+      error (event) {
         console.log('error', event)
         modal.toast({ message: 'error' })
       }
@@ -152,4 +153,4 @@
 </style>
 ```
 
-[try it](http://dotwe.org/vue/154c7fa8ac13e87ff4e7bf9862147d50)
\ No newline at end of file
+[try it](http://dotwe.org/vue/221ff37113a12d692a7a92a100f20162)
\ No newline at end of file
diff --git a/doc/source/releasenote.md b/doc/source/releasenote.md
new file mode 100644
index 0000000..8e5c617
--- /dev/null
+++ b/doc/source/releasenote.md
@@ -0,0 +1,858 @@
+---
+title: Release Note
+type: releasenote
+layout: post
+---
+
+# Release Note
+
+## v0.10.0
+------
+- New Feature
+  - Support Vue.js  
+    The Vue.js 2.1.8 ([runtime-only build](https://vuejs.org/v2/guide/installation.html#Standalone-vs-Runtime-only-Build)) is in WeexSDK now. You can use Vue.js to build native app by WeexSDK 0.10.0.  
+    We reused the original native render engine and developed a new renderer ([weex-vue-render](https://www.npmjs.com/package/weex-vue-render)) for the web platform, which is based on Vue 2.0.  
+    The former front-end framework (commonly known as `.we`), which is inspired by Vue 1.0, is deprecated. Although it still works well in this release, we suggest to migrate it to Vue 2.0.
+  - SDK
+    - New CSS support
+      - [text `font-weight`](https://weex-project.io/references/text-style.html)  
+        `font-weight` can set to [`normal`|`bold`] or 100-900.
+      - gradient  
+        like CSS3, now you can use gradient in Weex. For example:   
+        
+        ``` css
+        background-image: linear-gradient(to right, blue, white);
+        ```
+        ![img_1695](https://cloud.githubusercontent.com/assets/115201/23015955/ba075876-f46f-11e6-9d88-2ca3096551b9.jpeg)
+        [Read more about gradient](https://weex-project.io/references/common-style.html).
+      - Pseudo class  
+        Currently, Weex supports 4 pseudo classes:`active`, `focus`, `disabled`, `enabled`. 
+    - New BroadcastChannel API
+      Developers can use `BroadcastChannel` API to implement inter-instance communication.   
+      
+      ``` js
+      const Stack = new BroadcastChannel('Avengers')
+      Stack.onmessage = function (event) {
+        console.log(event.data) // in this case, it's "Hulk Smash !!!"
+      }
+      
+      // in another instance
+      const Hulk = new BroadcastChannel('Avengers')
+      Hulk.postMessage("Hulk Smash !!!")
+      ```
+    - Image's `onload` event add [`naturalHeight` and `naturalWidthimage`](https://weex-project.io/references/components/image.html) to get the original size of image file.
+    - Websocket Support  
+      WebSockets is an advanced technology that makes it possible to open an interactive communication session between the user's h5/iOS/android and a server. With this API, you can send messages to a server and receive event-driven responses without having to poll the server for a reply.  
+      [Read more about Weex's websocket.](https://weex-project.io/cn/references/modules/websocket.html)
+    - Support synchronous method call
+      Both module and component method can defined synchronous method exposed to JS runtime now. Means native will invoke these method in JS thread directly.
+    - Support `viewport` configuration
+      Similar to [W3C specification](https://drafts.csswg.org/css-device-adapt/#viewport-meta), Weex support set define `viewport` in script tag:   
+      
+      ``` html
+      <script type="config">
+        {
+          "viewport": {
+              "width": "device-width"
+          }
+        }
+      </script>
+      ```
+  - Tools   
+    - [Devtools](https://github.com/weexteam/weex-devtool)
+      - Support Vue 2.0 debugging.  
+      - Add network switch for network inspector.
+      - Make application capable to decide which bundle is 'un-debuggable', which means page's source code is unreadable in debug mode.
+    - [Weexpack](https://github.com/weexteam/weex-pack)
+      - Has full set of commands for developers to setup android/ios application with his .we/.vue files.
+      - Developers could easily pack/install his application with simple command.
+      - Has full set of commands for developers to manage weex plugins, including create plugin template, add plugin to his project etc.
+      - [Plugin market](http://market.weex-project.io) was formally used for developers to publish/download weex plugins.
+- Bugfix
+  - \* [android] add fixed size property 5191241
+  - \* [android] bug fix NPE && cache ScreenWidth and ScreenHeight 950e843
+  - \* [android] bugfix duplicate destroy 25412e0
+  - \* [android] bugfix keyboard force hide (#106) 0ad2f95
+  - \* [android] bugfix scroller offset transform twice cd7ad66
+  - \* [android] change gradle to fix build 1feaadf
+  - \* [android] ClipPath doesn't work when the following conditions met   1. rotation or scale is used   2. API level is 24 As border-radius uses clipPath, this will cause views with border-radius using rotation or scale on API level 24 doesn't. So far, this is a bug of Android N,https://code.google.com/p/android/issues/detail?id=225556&sort=-id&colspec=ID f69e918
+  - \* [android] Fix bug of border width due to viewport. Refer https://github.com/sospartan/weex/commit/7cfe9752e0c95f3b23bedfa3f51ba3bafb4318f4#diff-42908d45812780fec8606537dffab67dL1054 9cd6800
+  - \* [android] fix cast exception 3136fcf
+  - \* [android] fix DCL thread safely (#48) 62e9b71
+  - \* [android] fix duplicate add component child to list 3fd73d7
+  - \* [android] fix find component 45643ab
+  - \* [android] fix getScreenWidth with context parameter (#80) 16377f2
+  - \* [android] fix inefficient use of keySet iterator instead of entrySet iterator (#47) dac80e2
+  - \* [android] fix intrinsicSize when img.resize=contain b6272a2
+  - \* [android] fix npe in onScrollerListener (#138) 8141de7
+  - \* [android] fix npe in stream callback 24aa2c2
+  - \* [android] fix PageActivity duplicate add view to container 06f77b8
+  - \* [android] fix refresh crash after destoryed (#144) 51ea00b
+  - \* [android] fix refresh/loading a726d3c
+  - \* [android] fix slider auto scroll behavior 28926ba
+  - \* [android] fix slider layout, ignore position offset. a0381e4
+  - \* [android] fix some weak code that may cause file leak or useless (#49) 8d0f049
+  - \* [android] fix stackoverflow 6a01059
+  - \* [android] fix stream response status type (#63) 8580c66
+  - \* [android] fix switch case (#127) c301b92
+  - \* [android] fix textarea vertical gravity 9730948
+  - \* [android] fix the IllegalArgumentException on empty arguments f799d67
+  - \* [android] fix the wrong header location (#135) d58fce9
+  - \* [android] fix typo: WebSocket -> webSocket c162d54
+  - \* [android] fix wrong initial direction value on appear event (#107) 593c799
+  - \* [android] modify default real position (+1 squashed commit) Squashed commits: [9470835] \* [android] fix unittest b915584
+  - \* [android] move indicator layout logic to subclass;seperate fixed layout logic fc2a009
+  - \* [android] rename debug activity 95ab73a
+  - \* [android] update fix do not remove loading and fresh ddf74ff
+  - \* [html5] fix border & border-width for less than 1px. (#2059) 3eb34b9
+  - \* [html5] fix bugs of neighbor 34fafb2
+  - \* [html5] fix compatibility problem & support deps arguments. 00e7079
+  - \* [html5] fix content-type error 5b06140
+  - \* [html5] fix h5 build 56e9c03
+  - \* [html5] fix shrink & grow for flex. (#2082) b5b600d
+  - \* [html5] fix slider container's style. (#2157) a79bd9c
+  - \* [html5] fix uncaught dom exception for video.play. (#1877) 7a0bd03
+  - \* [html5] fixbug:change name from WebSocket to webSocket] (#2146) b72bbb9
+  - \* [ios]  bug fix: websocket module name is changed , playground should change 3f35b82
+  - \* [ios] bug fix: onload success value type is not same as android, change it for unify 531633c
+  - \* [ios] bugfix call renderFinish 1fb2e0a
+  - \* [ios] bugfix module default method not called 0be9f87
+  - \* [ios] bugfix moduleEvent compatible dbea448
+  - \* [ios] bugfix multi input or textarea maybe wrongly change root view frame a2e97db
+  - \* [ios] bugfix navigation pop animated value convert cfe98a8
+  - \* [ios] bugfix navigator open and close. beef00b
+  - \* [ios] bugfix rootView information  coordinate 7313703
+  - \* [ios] bugfix slider-neighbor may beyond item count index cbfa9df
+  - \* [ios] bugfix view event 83d3e6a
+  - \* [ios] bugfix: playground cannot open c949463
+  - \* [ios] bugfix:delete configpicker not delete the method in header cc3afc2
+  - \* [ios] fix : Change the lastoffsetXRatio to lastOffsetXRatio de8f246
+  - \* [ios] fix : Change the parameter wording to make it more in line with development habits. 869da54
+  - \* [ios] fix : if _fontFamily is nil set _fontFamily value with the correct system font. In the case of Chinese characters, this logic help system select the right system default font name. 6e202b6
+  - \* [ios] fix : improve slider-neighbor demo code .remove useless <container> label and <scroller> label. 2c236c8
+  - \* [ios] fix bug : you can't slide to the right when the slider has only two pages. d224bfb
+  - \* [ios] fix bug that border-x-radius not work 96ba5b5
+  - \* [ios] fix bug that horizontalpan and verticalpan can not trigger simultaneously eb03cb0
+  - \* [ios] fix bug: text input padding is not right f4accba
+  - \* [ios] fix crash after returning id type, need to copy here. 4f5276b
+  - \* [ios] fix issue that cells pushed down by inserted cells will not trigger disappear event. 9dcc4dd
+  - \* [ios] fix issue that rotate 90->180->270 not work. 5b3c13d
+  - \* [ios] fix issue that rotate(0) not work after rotate(>180degree) 0f6989d
+  - \* [ios] fix issue that there will be 1px space remaining between list's top and navigator when UITableView is pulled down and finger releases. d286e3c
+  - \* [ios] fix typo in [WXSDKEngine initSDKEnvironment] 17a093f
+  - \* [ios] fix variable name spelling error becd631
+  - \* [ios] Fixed :Merge remote-tracking branch 'alibaba/ios-feature-20170118' into ios-feature-20170118-new-slider-neighbor-fix    move "sliderview init" code to loadview method. 141fd9d
+  - \* [ios] fixed component's view should be removed separately since its view is a subview of rootview. f9b2378
+  - \* [ios] fixed issues that horizontal/vertical pan not respond while recyling views. c7b4bec
+  - \* [ios] js service bug fixed c068bd7
+  - \* [ios] removed debug code and fixed bug 548984f
+  - \* [ios] update navigator module, add open and close interface. f65c42f
+  - \* [ios] upgrade JSFM to 0.19.3 to fix callback problem 9ab9b92
+  - \* [jsfm] fix mismatch of weex.require and weex.document ad63f2a
+  - \* [jsfm] fix support native method bug ce26a6f
+  - \* [jsfm] fixed Promies bug in android 17282c2
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.10.0.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.10.0.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+
+## v0.9.4
+------
+- New features
+  - SDK
+    - New API to get Component's size and position:
+      Now you can get these data through `getComponentRect`:   
+      ``` javascript
+      var dom = require('@weex-module/dom');
+      dom.getComponentRect(this.$el('comp_id'), function(data){
+        if(data.result)
+          console.log(data);
+      });
+      ```
+      The `data` callback parameter contains a `result` to tell if operation is success. And `size` tell you the true data(`bottom`/`top`/`left`/`right`/`width`/`height`) of component.
+    - A brand new `picker` module. We have 'single-picker','date-picker' and 'time-picker' currently, and more common pickers are on the way.  
+      ![img_1282](https://cloud.githubusercontent.com/assets/115201/21414801/e6341b36-c83d-11e6-9e5a-3acdabb592ee.png)
+    There are two ways to use `picker`
+    - Use `picker` module directly:
+    ``` javascript
+    var picker = require('@weex-module/picker');
+    var self = this;
+    picker.pickDate({
+        'value':'2016-11-28',
+        'max':'2029-11-28',
+        'min':'2015-11-28'
+    },function (ret) {
+        var result = ret.result;
+        if(result == 'success')
+        {
+            self.value = ret.data;
+        }
+    });
+    ```
+    - `input` component also add 'date' and 'time`type to work with`picker` module internally:
+    ``` html
+    <input
+      type="date"
+      placeholder="select date"
+      class="input"
+      autofocus="false"
+      value=""
+      onchange="onchange"
+      max = "2029-11-28"
+      min = "2015-11-28"
+              ></input>
+    ```
+  - Support animation with `width` and `height` property.
+  - Support use empty value to reset css property to default value.
+  - Components can expose methods too, like modules do. Developers use the same way as create module method to achieve that.
+  -  Add `blur` and `focus` method to manually control `input` component to lose or get focus.
+  -  Support relative URL, which will resolve real URL by bundle's URL.
+  -  Core javascript framework's unit test coverage is 100% now. we'll pay more attention to quality.  
+  - DevTool
+    - Support to check the node hierarchy in [weex-devtool-extension](https://github.com/weexteam/weex-devtool-extension) and highlight the node if it exceeds an specified level.
+    - Support different refresh mode in devtools to reload the page or SDK automatically when source file updated.
+    - Improve quality in [weex-devtools-android](https://github.com/weexteam/weex-devtools-android) module
+      - Remove explicit dependency on okhttp and okhttp3 by reflection and proxy
+      - Improve demo application with less and refactored code
+      - Fix some crash caused by class up cast
+      - Fix reflection crash caused by complier optimization
+      - Fix "network on main thread" and stop screencast when disconnect
+    - Add [weex-analyzer-android](https://github.com/weexteam/weex-analyzer-android) and [weex-analyzer-ios](https://github.com/weexteam/weex-analyzer-ios) which support the following on device directly:
+      - Inspect FPS/CPU/memory
+      - Inspect storage
+      - Display log information
+      - 3D viewer of the weex page
+      - Javascript error prompt
+- Bugfix
+- \* [android] bug fix slider (#56) 29b9d29f5acd9677a64316b94d5c95f8c7f1a837
+- \* [android] bugfix duplicate destroy 0a59a85467671ddb982fbea6def810e6fa415137
+- \* [android] bugfix scroller offset transform twice 1db300d470951f543236e0b605d7b5a974b96430
+- \* [android] fix appear event not trigger at first 85085a394dd2bae5e397b889c01c1e1a3b8e6b46
+- \* [android] fix build 46bcf4298cd74c1d9706255143f95e0299ebdd15
+- \* [android] fix callback parameter 16db52ed031f7182f2159bc18c0c6e20e7c907f7
+- \* [android] fix dialog window leaked (#55) 4c478044355d6d552fb2f72935cd93867e5f0802
+- \* [android] fix different behavior with iOS switch (#43) 7708a6680e51ae6af9351724940778ce953538ed
+- \* [android] fix dynamic inserted header not sticky display 83c06383aa513061d144ec448ce0ccc25bde5484
+- \* [android] fix fireevent change key 9fb7d0f25d6b1bfe54fb63c9b73c53f8c927e4ad
+- \* [android] fix flash when render video tag a53e6b80b8fa67cce85307a2e5e93d9fb6c28784
+- \* [android] fix list not lazy 0be12be1194bea0c624791662e9f38aac4f0c3fd
+- \* [android] fix methods generate external-loader-component ec6d4136a29c1626470d3bbba90db3d9916c374e
+- \* [android] fix move child from index to index b within the same parent 72259e7a5734ed9a595de080d05ea8e1bf1e716e
+- \* [android] fix slider auto scroll a8d74031dbd526201c05433a08c8aac2047b7a66
+- \* [android] fix slider auto scroll after activity resume bba3bdea45bfb4030b10ea9a847a77463d1ab20a
+- \* [android] fix slider auto scroll after activity resume e0d5e79fc29e07b734d892073effc041a39c85c6
+- \* [android] fix stackoverflow in slider c1f1d702110f49ead4005fae50e4e63c5e72cfac
+- \* [android] fix sticky not display when scrolltoelement 22d163cb572e6b1c510c350a692a4265eb27e204
+- \* [android] fix test d756db8b4c26f8610076a13a0980d024a4e734ac
+- \* [android] fix textarea content vertical gravity eecc32c0a72ce82aa4e998cabb31308fc737fe95
+- \* [android] fix the invalid index of slider-neighbor (#62) 59fd5742a23908174de12804b1a0992d89663afd
+- \* [android] fix unittest 0b2a3778dfa39f17ae6346168b55a3418d85aa1b
+- \* [android] fix unittest 0d2bd982507820f5840e99ee12cd351ae6eb18e5
+- \* [android] fix unittest 4f120b6dbcb4433c8c320c310cd4de051163780c
+- \* [android] fix unittest 6129cd2ed06ce7acc0366b4c172bdf199d52e997
+- \* [android] fix wrong behavior with slider.index (cherry picked from commit c59ae39) 3028f32278a47603d1dc9f0f4314b44721069ac4
+- \* [android] fix wrong behavior with slider.index c59ae3977837be238b08b69388aec12eb4817716
+- \* [android] move element  bug fix dfc643df7fb100737c98efa7f5932e75d07ca59f
+- \* [android] move element  bug fix f28fbdd3ac57c157f52d82fa9473e8651b88023b
+- \* [android] NPE fix ee67a26c045cc351d317e805712bd6e50c4213cb
+- \* [android] Parent's "append=tree" will prevent child's transform style, this commit fix it by add the whole dom tree to animation set instead of the root dom. \* 626915b34bfb348947709c23e09a3dac7acd6962
+- \* [android] slider: fix the IllegalStateException (#58) 0e94762e1ebc240a5e8be6c131848b57bb48b1ea
+- \* [android] v8 security bug fix 7a8f14b78753fd02d59b126fffbd52996376ecc3
+- \* [html5] fix the conflict ac845591a65501c4eae70471502d8370f9983130
+- \* [html5] fix wwp config 0a2420a7202887a0222c0294c510267f139858c8
+- \* [html5] fixed lazyLoad filename 4119190c6b093f87bcb8ebd00f23bd939c307ad1
+- \* [html5] fixed rollup build 03f241ce3c7d8ac786b632f80aa22b94fdc00d34
+- \* [ios] 1. fix refresh location 2. cancel playground re-checkupdate 69f43da52ab22c7777d54bc2d9f45e95eb1d437f
+- \* [ios] bug fix 1664, add resetLoadmore on scroller & list. 4efe8662912ec5a8ce5fac8e09c2e061a21056a4
+- \* [ios] bug fix picker 2d979a58c4b37e93dda5b775d79a7a1ea2165c22
+- \* [ios] bug fix picker 983fe0069ff670b92b6fa7e3e6e29c5b2c768762
+- \* [ios] bug fix picker rescue 27fe3f23bb63072b766f75b69351464d163b331a
+- \* [ios] bug fix setNeedsLayout in every elements. not in once. because elements not contain css node only edd47e09ff453a26c7b176279d0ab84454d4914a
+- \* [ios] bug fix update code style 05b2959be0e0c35ad31b5b20b77f86f296786da2
+- \* [ios] bug fix: change resetTextCSSNodes to resetTextCSSNode a782e092b175a0a34db7cfccb74b5f157ddb3fd4
+- \* [ios] bug fix: refresh view layout error. b0c4a403b1e1dc8aa500c60efcef263b6f7fdd6f
+- \* [ios] bug fix:slider does not remove items  synchronously when item view has been remove from superview. f60997fc3fe7bcfd220e159d61dbaae438e59131
+- \* [ios] bugfix add register component type f7e72ea289ce5f909fb9f6b61705e4f4b9930c53
+- \* [ios] bugfix cancel url uft8-encode 6b67a9e8a3f62849709d552bea0d947679164041
+- \* [ios] bugfix cancel url uft8-encode 9a43cfc9ecb9683562560a880d0f026fd28e93ea
+- \* [ios] bugfix component load rewriteurl f92a6d70e0f3db1eb14c4d90c7e30609e5175dff
+- \* [ios] bugfix globalEvent removeObserver don't need specify target a5420939bac4e21ef61b15710e2fa5e205403d96
+- \* [ios] bugfix iconfont load font , support woff 4c5d5812cb145d60270c5e59ae29def9be8fdcf3
+- \* [ios] cancel animation while handle input keyboard and fix bug when there are many input in a page 61f9259bf77c59916d3dbcdf62b12cd0161698b4
+- \* [ios] debug performance ae3d30802681990e79ce06fb4229b74f3c1d99c2
+- \* [ios] fix #1192, #FFF display error in iOS 5df5cd3739e79ec6e2fefbff66ba7ba2a411d637
+- \* [ios] fix #1479, add handler for slider's items count less than or equal to 2 d654ed7d926c2e20b3a34315348a87470171cdd1
+- \* [ios] fix : Compatible non-standard url ("//a.b.example.png") 3da33595d6e1a261b1c761811d1d8f7672ba3db5
+- \* [ios] fix border's "Overlapping Curves" not recomputed when relayout d302adf14568a32d2b635a64d1326172d9590893
+- \* [ios] fix bug datepicker no update and crash eef4483b3176a0f2e18673e26068a6ec53fef5ca
+- \* [ios] fix bug debugTool unload 751b752f72690954c49ffaf8b89702a0f93712f2
+- \* [ios] fix bug default style f8f056e9f067b4ce23731cb3114383705a5926ac
+- \* [ios] fix bug height change to zero when style change 1ed428dda5d1b4e2b360f216b1b96433479dad28
+- \* [ios] fix bug height change to zero when style change a4d7ebea5e288b753ee71571b149130149768c6b
+- \* [ios] fix bug height change to zero when style change aac7c013003c055e840674e5f61dba4d5073dd73
+- \* [ios] fix bug height change to zero when style change bb8cdb1f2f7ff6ad9b8ac4de23323ca9dea7e0d9
+- \* [ios] fix bug that setFrame incorrectly when transform has been set 84dfd4c7395ae728356b660a0b605c7b85353973
+- \* [ios] fix bug that sticky component's absolutePosition will be computed twice if the actual absolute position is {0,0} a780352d0a1a139ce3e276404d03bd3f9e2e6fd6
+- \* [ios] fix bug: text area cursor auto go to end .reason: if attributes[@"value"] is exist. _updateAttributesOnMainThread will change textview text.the cursor go to end. \* solution: save the  textview  selectedRange , when set textview.text ,correct it d22836ef559809f566068bfe47be960a6d2e9faa
+- \* [ios] fix bug:_updateAttributesOnComponentThread reset styles delete 7c993d1952551ccfad2ad22f01ffa40ea9d12245
+- \* [ios] fix bundlejs 616f4653925c801406ca5fc80fd5f890c45c2b19
+- \* [ios] fix code style 31b08adf525559d9ce46f25eab349584d2f621a9
+- \* [ios] fix compiler complain about warning b92e471c1195f40f8167c8253ea0a909930a9880
+- \* [ios] fix componentRect infomation da08628c562dded860fe1558fb9dc187530223c9
+- \* [ios] fix componentSize to get 41af993f1ffd4e041083a0150607040b9e7cdef2
+- \* [ios] fix crash 55f69b502f0ff1f997dbfbe5238e35a4f123bc5b
+- \* [ios] fix crash on events' copy 491df3dca1fd47c1c564823c7f46527bf064c2dc
+- \* [ios] fix datepicker bug when no value can not pop right picker 24441ad6273e6093a9919b2699a4333b9d7147df
+- \* [ios] fix datepicker complie error 3bf2a0753cf47170144939d42173a668b22e27f5
+- \* [ios] fix datepicker complie error a362ef85918551bacac762ee660300e3108c1c5a
+- \* [ios] fix deprecated method of textarea 4d24f3ff7e792a1c97aa7ee31fbc7f0899c21efb
+- \* [ios] fix failed tests. b5210b244f2f2331be01c9afc4a8cde5b32ed0ee
+- \* [ios] fix input bind each other feb1e7c1ce959491fefed808e46e6291203ccbd7
+- \* [ios] fix ios7 crash f02eff33acab4a58a1a8d6e4d84cef44dcf09bf4
+- \* [ios] fix issue about WXConvert 's UIColor method add193b643c980e310866498dc081130ee287373
+- \* [ios] fix issue that iOS 7 will crash while alert still alive but instance has been destroyed 160a2dae54d6e656c980b9d008b15b0dc28aa4e1
+- \* [ios] fix issue that onappear/ondisappreat not work if binding to cell component. 63f6d7507731d2004e996f99bf859c228fc8b651
+- \* [ios] fix multi keyboard notification 684d3955de263cb39f8afc42c6ffa7340674c81a
+- \* [ios] fix navigator parameter b3117a9c482fb5491b5206413fa7607c356cf95a
+- \* [ios] fix override bundleUrl d7729716aea6652d325e4282ad6b42aaaf14f82c
+- \* [ios] fix playground Podfile   remove c header file  include in WXUtility.h e299feaf4076a5bf7140335ac6cc70d9d99a01da
+- \* [ios] fix responderToSelector target b0f550d6b94da6d9764863b328edfba6d730a75b
+- \* [ios] fix rootComponent order 999c59da3a1dc6c91f036b938c9963cc3cfe87c4
+- \* [ios] fix set navigator callback msg a30b7ed4978de3c91448a1c944431f19e942b515
+- \* [ios] fix single picker but 969d4212967c084a3477e3877052af224354f0e4
+- \* [ios] fix stream jsonp bug b018343b71eb7289bde326acf2f2fe1b124cfad8
+- \* [ios] fix testComponentFactory 99574bf0a1072dbfba547d74545783891b15cdff
+- \* [ios] fix tests compile error 461c24401e5fa1c37f9af25db35665f9f6b4a8da
+- \* [ios] fix text line-height and text-align conflict b1a0673020b7a271fb540ae723ca481aa18db7b4
+- \* [ios] fix textinput component inputEvent fired repetitiously 5c8242776f1410771a357735d6ae2a5b261b7d20
+- \* [ios] fix warning b8464248f61ad3ed9570730608e563f9c73e8ae6
+- \* [ios] fix warnning e2533d036daad60345284f276949dec06b5e0db9
+- \* [ios] fix when options is nil and then  bundleUrl will be nil 5f71a1a2eb7442cf63d9732a6a2b3e2cb3765fa1
+- \* [ios] fix WXSDKInstance rootview bug 3b08a516ff788ca116329dc863ffcb9f66979881
+- \* [ios] texture bug fix : when input change . the text content send to change a38f1b2b8e05e149f09ffbb986268339a9042691
+- \* [jsfm] fix #1447, fix binding event bug of components which have repeat attribute 421cc439d1b8b5abbdbba58882f6c39fd8f862c9
+- \* [jsfm] fix build 8162124f72caf9360657ebc5a2750554d36f3659
+- \* [jsfm] fix condition judgment bug in insertBefore & insertAfter 9c182af615e0e597e21a44217a511126333499e9
+- \* [jsfm] fix eslint c0db1807d080a26c7344f4cc57e5834e98b06085
+- \* [jsfm] fix eslint f75cbe955dc0bcdf33a608af82ab18d3290b87c3
+- \* [jsfm] fix format for lint 5faa860804c1d9adb719a450b53da165ec523e83
+- \* [jsfm] fix the npm run build d3e5124add2dd6a42b1209fe11a8dc58cd536487
+- \* [jsfm] fixed #1818 a757deb7235792c2dd11684500651f717f43226a
+- \* [jsfm] fixed all cases for default framework (black-box) c842ef884e45c568f9ae55e67a066a5de2de15ed
+- \* [jsfm] fixed all test scripts 95ba6a1d6c4211d62d7d2a6693c8aa1e5b7d9607
+- \* [jsfm] fixed all unit test for new file structure d4eb5c97daa34dc53dd929eaf736dcf22e8873b6
+- \* [jsfm] fixed browser render file structure ba7a40bca9a5759101e821c4e043e437b848dcde
+- \* [jsfm] fixed deps error 555ded73f6c6ecb5a9c110f34ab34e596c1c36eb
+- \* [jsfm] fixed html5 render for Vue 980d952d71903545a0bfa7115dfeacd8c7c71ae5
+- \* [jsfm] fixed lint and added case test a3e20a8c78feda705b853f2036cc17bd256f7bb8
+- \* [jsfm] fixed rollup config 4a1c208cf33fb3e5649f8116133f97b003e78127
+- \* [jsfm] fixed runtime instance map management b6e94fa1d54bfdc541ae7c48d98f4dc01481660f
+- \* [jsfm] fixed some vue examples ca2a9c57365a67c9215f69c438c86440a28704ce
+- \* [jsfm] fixed some vue examples da21405b7fab3228bda0e0b2a74853a05c5eb69a
+- \* [jsfm] fixed url checker in vue example 679dc1cffbd0413b9b81624ac46f61473cdf756d
+- \* [jsfm] removed timer bug case and replaced to slot bug case b6f2c8390e3a97df948fc8d2699d15eb62582625
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.9.4.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.9.4.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+## v0.8.0
+------
+
+- New Features
+  - Add [globalEvent module](https://github.com/alibaba/weex/blob/doc/doc/modules/globalevent.md)
+  - Support `width/height` animation in transition
+  - Refactor the default js framework code, hide almost all the private APIs #777
+  - iOS 10 compatibility
+- Performance
+  - Support `callAddElement` low-level API to make rendering faster
+  - Improve SDK initialization performance, for minimise invoke thread impact.
+  - Use native `Set` polyfill to fix iOS7 memory leak
+  - Use `setProperty` replace reflection for better performance
+  - Add `static` directive in default js framework to avoid unnecessary data-binding and take down the memory use
+- Tools
+  - Add [weex-pack](https://github.com/weexteam/weex-pack), our next generation of engineering development kits. It allows developers to create weex projects with simple commands and run the project on different development platforms.
+  - Add [weex-devtool-extension](https://github.com/weexteam/weex-devtool-extension), a extension for Weex devtool to improve your debug experience,which equivalent an element tag for debugger page.
+  - Move devtool to separate [iOS](https://github.com/weexteam/weex-devtool-iOS) and [Android](https://github.com/weexteam/weex_devtools_android) repos.
+    - Add "screencast" which enable the screen of the device(or monitor) to appear on the "Inspector" page; 
+    - Add "remote control" function, in Android user could control remote device(or monitor) when he moves mouse on screencast; 
+    - Add "select element" function which enable the user to find the exact node in "Elements" inspector Tab when he click the mouse on screencast;  
+    - Add "vdom inspector", so user can choose to see the details of native dom or vdom in "Elements" Tab at his preference; 
+    - Adjust interfaces with weex SDK to support "callAddElement"; 
+- Bugfix
+  - [jsfm] fix the bug of Dep.target 3448104
+  - [jsfm] fix the test of clearCommonModules 4be9291
+  - [jsfm] fix bug for clear common modules (pr #1097) d2f8c4d
+  - [jsfm] fix callAddElement callback -1 e421b41
+  - [jsfm] fix #1237, fix binding event bug of components which have repeat attribute bfed029
+  - [jsfm] fix bug af99cc1
+  - [jsfm] fixed & closed #1148 4209850
+  - [jsfm] fix merge classStyle fail between nested components 91c5cc6
+  - [jsfm] fix watcher dismatched bug between multi instance 900305d
+  - [jsfm] fixed _Set bug 51b219b
+  - [jsfm] fixed memory management bug in dom event handler in document 9024bda
+  - [jsfm] fixed Promise polyfill problem in iOS 7-8 9a61f33
+  - [android] fix #1380, update method getOffsetAmount in WXCircleViewPager.java (#1382) fd74539
+  - [android] bug fix native crash d8671bd
+  - [android] fix editComponent set non-string value 2e2f032
+  - [android] destroyInstance bugfix 6628460
+  - [android] update fix global event Memory leak fc6d403
+  - [android] add callAddElement debug log 95e3680
+  - [android] bug fix classcast exception e399306
+  - [android] fix circle ci 51d3294
+  - [android] fix slider start auto scroll after activity resume. 89bae89
+  - [android] fix log util implementation 10d508f
+  - [android] fix x86 so file size verification 21d5135
+  - [android] fix build b1fc231
+  - [android] fix log utility 530fe51
+  - [android] NPE bugfix 6d4385f
+  - [android] add cuurentRef to avoid reused bug d836725
+  - [android] bug fix update the ref when cell reused 1f7bf86
+  - [android] bug fix update the ref when cell reused cef277f
+  - [android] fix usertrack modify 8732d70
+  - [android] fix code format 936ebd5
+  - [android] bug fix- Loading layoutY ba0d34e
+  - [android] bug fix - Loading layoutY a8f3c95
+  - [android] bug fix - loading margin 7a3f1e0
+  - [android] fix Deprecated 6aa7da9
+  - [android] fix #1102 (#1103) 5aea5c6
+  - [android] fix merge problem 7923b1e
+  - [android] fix typo 1de6800
+  - [android] fix scroller&list appearance event da1ee4d
+  - [android] fix invaild add dom operation 14b5943
+  - [android] fix build 0d43794
+  - [android] fix build 0520743
+  - [android] fix build 9d596c1
+  - [android] fix list appear&disappear 425c3e1
+  - [android] fix list appear&disappear event 40b52f3
+  - [android] update so for fixing instanceId error 03d0973
+  - [android] fix v8 security problem 06dbc38
+  - [android] bugFix:  List component scrollTo inaccurate 45f0476
+  - [android] fixed #1058 f25238c
+  - [android] fixed #1058 33b4aaf
+  - [android] fix v8 security problem e0b881f
+  - [android] bugFix:  List component scrollTo inaccurate 052aeac
+  - [android] fix comment fd3e0ef
+  - [android] fix indicator default style 57b71fb
+  - [android] fix unit test ee74b5c
+  - [android] fix code style 449bad2
+  - [android] fix list  orientation usage, move component's
+  - [android] fix change/focus confliction b672101
+  - [android] fix change/focus/blur  event confliction c3689e8
+  - [android] fix add dom error a993a84
+  - [android] update the mWXBridge to null when debugmode disable 35005ea
+  - [android] fix invaild add dom operation 7b1ad97
+  - [android] fix moveElement on the same parent dom case 2a94ba2
+  - [android] fix typo 42a2099
+  - [android] fix NPE c2da99e
+  - [ios] fix style line-height conflict with text-align e762637
+  - [ios] fix slider example href 8196792
+  - [ios] fix keyboard cover input sometime 0ad56dc
+  - [ios] fix #1188, support for converting string to NSUInteger. c3f6ea2
+  - [ios] fix issue that fixed-position component's view be reallocated while it is in a cell. d8881c3
+  - [ios] indexDict must be accessed on component thread, fix componentForRef crash 8cc3503
+  - [ios] fix issue that transform-origin not works in rotation transform 5dcab9e
+  - [ios] fix warning f913dab
+  - [ios] fix css node children count invalid while change from or change to fixed position. 81a1dc4
+  - [ios] fix compile error 98a8078
+  - [ios] fix css node children count invalid while change from or change to fixed position. 0b3a2e3
+  - [ios] fix podspec syntax error d0386e6
+  - [ios] ios7 bugfix api 6e7cf07
+  - [ios] try to fix NSMapTable crash in iOS8 a03a4bc
+  - [ios] fix slider-neighbor bc03620
+  - [ios] fix remove Observer crash 46fcbc5
+  - [ios] fix issue that rotate transform not work in styles. 8601304
+  - [ios] fix layer setBackgroundColor crash 5778422
+  - [ios] fix sliderNeighbor 39cb4ea
+  - [ios] fix warning ea8c8f8
+  - [ios] fix warning 4d2528e
+  - [ios] fix warning issue d77fd5d
+  - [ios] fix issue transform does not work while initialized. c36f1bf
+  - [ios] canvas component property error fix 448d4f4
+  - [ios] try to fix textStorage thread-safe issue 0d62716
+  - [ios] fix A component onclick event 01f9706
+  - [ios] fix input disabled attribute bug 533df4f
+  - [ios] fix input disabled attribute bug fd2c526
+  - [ios] fix iconfont src update bug f99906b
+  - [ios] customize debug switch 86346ea
+  - [ios] fix typo ae99b92
+  - [ios] change context name for remove JSContext debugging 75c1e42
+  - [ios] fix input max length bug fe9a013
+  - [ios]add LogLevel control and RemoteDebug control 164abf8
+  - [ios] fix memory leak 00009c0
+  - [ios] fix a bug that re-deleting procedure 717bf3f
+  - [ios] fix storage module in swift f13b72f
+  - [ios] fix highlight problem 93eb282
+  - [html5] fix conflicts with jsfm 0.16 ce63e22
+  - [html5] fix lint 9612daa
+  - [html5] fix class name b224685
+  - [html5] fix img lazyload 3984111
+  - [html5] fix registration of tabheader d38a4c0
+  - [html5] fix bug of null rules of stylesheet in spinner c058f95
+  - [html5] fix top 41c603a
+  - [html5] fix toast a3a4730
+  - [html5] fix lazyload typo 493bee7
+  - [html5] fix lint 43b24da
+  - [html5] fix loadmoreoffset 3c7e262
+  - [html5] fix sticky 9bdf079
+  - [html5] fix lazyload 38ee957
+  - [html5] fix lint 0e94380
+  - [html5] fix flexible a06eb80
+  - [html5] fix jsonp callback error 6db0850
+  - [html5] fix typo 5f61a06
+  - [html5] fix lint 363decd
+  - [html5] fix bug of scroll to c007c86
+    orientation field to scroller 3febd83
+  - [html5] fix dist bug 9d102a5
+  - [html5] fix missing viewport meta. 1cf98e5
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.8.0.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.8.0.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+## v0.7.0
+------
+- New Features
+  - [Timer Module](https://github.com/alibaba/weex/blob/doc/doc/modules/timer.md)
+  - [Storage Module](https://github.com/alibaba/weex/blob/dev/doc/modules/storage.md)
+  - Unify the `image` component's error page when src is invalid
+  - Unify the `border`,`padding`,`background-color` style
+  - Horizontal-scroller support  `scrollto`  api
+  - Fix the issue that component with  `position:fixed` style can not be closed
+  - Module callback support `object` params
+  - Slider suppport  `setIndex` api
+- Performance
+  - Use `callNative` signal to stop JSFM render after instance been destroyed
+  - Lazily initialize JSFM When device is in low-memory status, improve SDK stability
+- [Tools](http://alibaba.github.io/weex/doc/tools/devtools.html)
+  - Support debugging  weex(.we) and  react(.jsx) source 
+  - Support apps debugging on the same device 
+  - Support "watch" feature
+  - Solve the dependency on Debugger, user could start "Inspector" first or "Debugger" at will
+  - Add "refresh" function in sdk, user could inspect new file by scanning its QR code in playground;
+  - Android/ios inspect module split from weex sdk,  and will deliver in separate repo in future; support inspect in windows system
+- Bugfix
+  - [android] fix 'fixed' position not work when append tree 6ccfa4f
+  - [android] fix slider set index frzee 6524849
+  - [android] bug fix - setLayout LayoutParams b70f6e2
+  - [android] fix get header:compitable with lower case header key 5ebec75
+  - [android] fix storage module: keep open when module is live c311f15
+  - [android] fix build 0389302
+  - [android] fix jsonp response process 28588c6
+  - [android] fix ViewHolder NPE f9005ab
+  - [android] bug fix ViewHolder NPE 86dd101
+  - [android] fix build b14dd26
+  - [android] fix cell memory leak c03fdc1
+  - [html5] fix e2e test ci 77f14af
+  - [ios] fix type of callback params 2aa8f47
+  - [android] fix sdk init time measurement 3d7cd02
+  - [android] fix sdk init time measurement f4cbfd0
+  - [android] fix sdk init time measurement 8cffa5a
+  - [ios] fix stream fetch response type 9a7c296
+  - [android] forbid except cell、header、fixed、refresh and loading 114860f
+  - [android] fix comment cf53fd3
+  - [android] fix build 82a03fd
+  - [android] WXUtils bugfix 3655d9d
+  - [android] bug fix - setProperty class cast d567f89
+  - [android] fix argument format crash 1baac57
+  - [android] function name fix : hasAppearAndDisappearEvent 1f8b501
+  - [android] fix NPE crash in textarea nad modalModule c3a08ff
+  - [ios] fix bug when url has chinese character. b7e2c2f
+  - [android] update so fix not delRef argument b0db514
+  - [jsfm] fixed repeat bug when update values with new object references 371e58c
+  - [android] fix slider initialization crash. 4c52d33
+  - [android] add a debugger switch, decouple the dept between inspector and debugger dfa71c4
+  - [android] fix bug sticky not show dc3ca4d
+  - [android] fix component register type missed 92a92dc
+  - [android] sticky null child bug fix 541b68b
+  - [android] fix list scroller default height fc0aa58
+  - [android] fix indicator default style 610624c
+  - [android] fix embed page appear event 71a5360
+  - [android] update debug manifest 0541126
+  - [android] update JSF to 0.14.6 fix bind data error 4f7e3c8
+  - [android] fix bug mChild NPE a313b81
+  - [android] fix sticky offsetX 1bae906
+  - [jsfm] fixed updateMark error in compileType 9533431
+  - [jsfm] fixed updateMark error in compileType 5ea0132
+  - [android] Sticky fast fling bug fix 7092c6a
+  - [android] fix view appear event 4bf67e4
+  - [android] fix list scroll to 6355fc6
+  - [ios] fix default debug value 79daf2f
+  - [android] fix list scroll to ad0201b
+  - [ios] fix stat 2d3ab94
+  - [android] refresh the instance when reload called by the debug server 99392db
+  - [android] add a stop method to IWXDebugProxy b06d352
+  - [android] sticky bug fix f9d3265
+  - [android] fix list scrollTo a198b2e
+  - [android] fix scroller getView and getInnerView 4fa0453
+  - [android] refresh the instance when reload called by the debug server fd2be06
+  - [android] add a stop method to IWXDebugProxy 5789700
+  - [android] refresh the instance when reload called by the debug server 5ddf782
+  - [android] add a stop method to IWXDebugProxy 79cd97b
+  - [ios] fix modal bug about message is number d0cdaf9
+  - [html5] fix fire event 978c454
+  - [android] bug fix event lost f9c4357
+  - [android] add debug log cae86fa
+  - [html5] fix typo b84a1b3
+  - [html5] fix lint 8e905dc
+  - [android] fix bug - setLayout 0b5082f
+  - [jsfm] fixed native param format of setTimeout in app.differ a9f101e
+  - [ios] cancel AppDelegate.m debug annotation 03abcf8
+  - [android] fix bug - scroller height error 7458441
+  - [ios] support weex-devtool and weex --debugger 714c924
+  - [ios] resume original logger debug feature a144699
+  - [ios] modify the debug switch, update WXDebugTool.h/m file 1ce1277
+  - [android] fix input restore init value when batch 3a54da2
+  - [android] fix build 8450473
+  - [android] fix switch fireevent with domchange b6c2d31
+  - [android]  fix input change event 58563b5
+  - [jsfm] fixed repeat binding da9f40d
+  - [html5] fix typo 09bcdb3
+  - [ios] bug fix: slider is embed in list cell d56c7ec
+  - [ios] fix typo for wrong quote in Podfile ab8a83b
+  - [html5] fix loadmore offset of list 69ed65a
+  - [android] fix model callback data from string to json 3aed566
+  - [android] use diff vars flag the remote debug 5e976fc
+  - [html5] fix typo b8eec69
+  - [android] fix bug - refresh not compatible MI2 c814cd9
+  - [android] fix problem that session is null and init framework failed b985d59
+  - [ios] fix element cssstyle selected bug 41450a9
+  - [ios] fix crash from cssstyle e079e5c
+  - [android] update the debug init sequence to make sure the handshake well 28741da
+  - [android] fix example file name fc7862c
+  - [android] update debug switch f9369bb
+  - [android] reuse image adapter for avoid Fresco bug 62dc67c
+  - [android] add debug proxy, adapt to the weex-debugger d93f9e5
+  - [android] fix NPE in stream f5f8a4d
+  - [android] fix getScreenWidth npe e264f2a
+  - [android] fix register order 5c8a264
+  - [ios] Stupid scoll view, always reset content offset to zero after insert cells, fixed it by hooking 981dcd6
+  - [ios] fix data type d815e2a
+  - [ios] update debug tool 3d82054
+  - [ios] fix input component width calculation ba9a3b7
+  - [ios] fix notes about WXComponent+ViewManagement d31e8b6
+  - [android] fix list component addsubview error 69c3286
+  - [ios] fix inverted-logic 773bea7
+  - [android] fix crash when list append tree 686e450
+  - [ios] fix playground scan qr code bug 28f7de2
+  - [android] fix bug - Scroll getView 647a927
+  - [android] fix bug - delete </merge> 77680f1
+  - [android] fix bug - nested scroll ac50cd2
+  - [android] fix onTouchEvent bug 911e569
+  - [ios] fix thread safe method indexOfObject in array 1623165
+  - [ios] remove the timing of network debug 5b00fe5
+  - [ios] fix warning e1d496c
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.7.0.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.7.0.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+## v0.6.1
+------
+- New Features
+  1. [iOS has been open sourced](https://github.com/alibaba/weex/tree/dev/ios)
+  2. [Lifecycle Page Event](https://github.com/alibaba/weex/blob/v0.6.1/doc/references/common-event.md#page-event): viewappear, viewdisappear
+  3. [fetch](https://github.com/alibaba/weex/blob/v0.6.1/doc/modules/stream.md#fetchoptions-callbackprogresscallback)
+  4. [line-height](https://github.com/alibaba/weex/blob/v0.6.1/doc/components/text.md#styles)
+  5. [list component](https://github.com/alibaba/weex/blob/v0.6.1/doc/components/list.md) 
+     - support sticky header 
+     - support scrollToElement API
+     - support nested horizontal scroller
+     - support cell children nodes event: appear/disappear
+  6. [Gesture](https://github.com/alibaba/weex/blob/v0.6.1/doc/references/gesture.md): panstart/panmove/panend, swipe, longpress
+  7. Improve Android text compatibility
+- Performance
+  1. iOS, iPhone 5c, rendering frame rate ascends from 45FPS to 52FPS
+  2. Android, Redmi Note 1, loading time of the first screen  descends from 602ms to 480ms
+  3. Improve Android animation performance
+- Tools
+  1. [weex-toolkit](https://www.npmjs.com/package/weex-toolkit) supports require and generator
+  2. Playground supports runtime performance viewer
+  3. [Weex DevTools](https://github.com/alibaba/weex/blob/v0.6.1/doc/tools/devtools.md)
+     
+     <img src="https://img.alicdn.com/tps/TB1O.nwKFXXXXX8XpXXXXXXXXXX-1436-811.png" width="600">
+
+Bugfix
+- [android] fix view appear event 4bf67e4
+- [android] fix list scroll to 6355fc6
+- [ios] fix default debug value 79daf2f
+- [android] fix list scroll to ad0201b
+- [android] fix build 5d1286c
+- [android] bug fix 6a1788e
+- [ios] fix stat 2d3ab94
+- [android] bug fix 60073af
+- [android] refresh the instance when reload called by the debug server 99392db
+- [android] add a stop method to IWXDebugProxy b06d352
+- [android] sticky bug fix f9d3265
+- [android] fix build 62ee68a
+- [android] fix list scrollTo a198b2e
+- [android] fix scroller getView and getInnerView 4fa0453
+- [android] refresh the instance when reload called by the debug server fd2be06
+- [android] add a stop method to IWXDebugProxy 5789700
+- [android] bug fix 7a83ddc
+- [android] refresh the instance when reload called by the debug server 5ddf782
+- [android] add a stop method to IWXDebugProxy 79cd97b
+- [html5] fix fire event 978c454
+- [android] bug fix event lost f9c4357
+- [android] add debug log cae86fa
+- [html5] fix typo b84a1b3
+- [html5] fix lint 8e905dc
+- [android] fix bug - setLayout 0b5082f
+- [jsfm] fixed native param format of setTimeout in app.differ a9f101e
+- [ios] cancel AppDelegate.m debug annotation 03abcf8
+- [android] fix bug - scroller height error 7458441
+- [ios] support weex-devtool and weex --debugger 714c924
+- [ios] resume original logger debug feature a144699
+- [ios] modify the debug switch, update WXDebugTool.h/m file 1ce1277
+- [android] fix input restore init value when batch 3a54da2
+- [android] fix build 8450473
+- [android] fix switch fireevent with domchange b6c2d31
+- [android]  fix input change event 58563b5
+- [jsfm] fixed repeat binding da9f40d
+- [html5] fix typo 09bcdb3
+- [ios] bug fix: slider is embed in list cell d56c7ec
+- [ios] fix typo for wrong quote in Podfile ab8a83b
+- [html5] fix loadmore offset of list 69ed65a
+- [android] fix build 0f39533
+- [android] fix model callback data from string to json 3aed566
+- [android] use diff vars flag the remote debug 5e976fc
+- [html5] fix typo b8eec69
+- [html5] fix ignore de5837a
+- [android] fix bug - refresh not compatible MI2 c814cd9
+- [android] fix problem that session is null and init framework failed b985d59
+- [ios] fix element cssstyle selected bug 41450a9
+- [ios] fix crash from cssstyle e079e5c
+- [android] update the debug init sequence to make sure the handshake well 28741da
+- [android] fix example file name fc7862c
+- [ios] fix #567 3be6561
+- [android] update debug switch f9369bb
+- [android] reuse image adapter for avoid Fresco bug 62dc67c
+- [android] add debug proxy, adapt to the weex-debugger d93f9e5
+- [android] fix ut bug 85c5cae
+- [android] fix NPE in stream f5f8a4d
+- [android] fix getScreenWidth npe e264f2a
+- [android] fix register order 5c8a264
+- [ios] Stupid scoll view, always reset content offset to zero after insert cells, fixed it by hooking 981dcd6
+- [ios] fix data type d815e2a
+- [ios] update debug tool 3d82054
+- [ios] fix input component width calculation ba9a3b7
+- [ios] fix notes about WXComponent+ViewManagement d31e8b6
+- [android] fix list component addsubview error 69c3286
+- [ios] fix inverted-logic 773bea7
+- [android] fix crash when list append tree 686e450
+- [ios] fix playground scan qr code bug 28f7de2
+- [android] fix bug - Scroll getView 647a927
+- [android] fix bug - delete </merge> 77680f1
+- [android] fix bug - nested scroll ac50cd2
+- [android] fix onTouchEvent bug 911e569
+- [ios]fix thread safe method indexOfObject in array 1623165
+- [ios] remove the timing of network debug 5b00fe5
+- [ios] fix warning e1d496c
+- [ios] remove unnecessary removeFromSuperView from unload method and fix async unload view issue in list. b6c3a62
+- [android] fix unit test 4dda4ac
+- [android] update power info and debug protocol, mark stable 3323776
+- [ios] fix indicator style  abnormal when update 7dcb54b
+- [ios] fix list delete issue 579b720
+- [ios] fix indicator item size abnormal e3cd91b
+- [android] bufix NPE 904146e
+- [android] fix  multithreading exception b1c2af1
+- [android] update debug info 7a82747
+- [android] fit bug - indicator error 673b7b6
+- [android] fix bug loading-indicator 981728a
+- [android] fix unit test aafec20
+- [android] bugfix  getInstance singleton 397dc39
+- [android] fix WXSwipeRefreshLayout 745705d
+- [ios] fix scan qrcode after back from scan result failed 0b308aa
+- [android] fix unit test 02d8489
+- [android] fix create body NPE 89690f7
+- [android] fix getView()==null crash b0ca974
+- [android] bugfix NPE 93ef1e1
+- [android] bug fix NPE when instance destroy e7aad12
+- [android] NPE bugfix 9f15552
+- [android] NPE bug fix when recycleImage 4edecef
+- [android] bugfix layout can not be reset for list b19c0a1
+- [android] add DebugAdapter f10cf9c
+- [android] fix text layout unexpect quit when text is zero-length content 9320623
+- [android] fix spell error 23c5440
+- [android] update debug 567e9e0
+- [android] fix list remove cell crash bug 84844f9
+- [android] fix unit test be636fb
+- [android] update debug tool 8d9cad9
+- [android] bug fix remove fixed node f867bd1
+- [android] update debug tool 5b75507
+- [android] fix unit test 40b10de
+- [android] update debug.move some code from WXPrettyFish to WXDebugTool c70927b
+- [android] update debug 6047c43
+- [android] update debug add class ScalpelFrameLayout d956819
+- [android] fix status badge url 35a491b
+- [android] fix border style 329f128
+- [android] update weex_debug grade wrapper 793c67b
+- [android] fix fetch response data 1503431
+- [android] fix progress callback 1f72495
+- [android] bugfix init sdk b6946ad
+- [android] NPE fix fc9b595
+- [android] update how-to-debug.md playgroup-app.md c61d7b4
+- [android] update debug function 1bcfdd3
+- [android] fix v8 compile potential crash & closed v8  snapshot 6d159a6
+- [android] update debug d7c6d61
+- [android] fix v8 compile potential crash & closed v8  snapshot 67b01a1
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.6.1.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.6.1.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+## v0.5.0
+------
+
+### New Features
+1. [TabBar](https://github.com/alibaba/weex/blob/dev/doc/components/wxc-tabbar.md) is a specialized component corresponding to the radio-style selection.
+2. [NavPage](https://github.com/alibaba/weex/blob/dev/doc/components/wxc-navpage.md) contains a navbar at the top of the window and an embed content page.
+3. [Activity Showcase](https://github.com/alibaba/weex/blob/dev/examples/showcase/new-fashion/index.we) is built by composing TabBar and NavPage.
+4. [Web](https://github.com/alibaba/weex/blob/dev/doc/components/web.md) displays web content in the weex page.
+5. [A](https://github.com/alibaba/weex/blob/dev/doc/components/a.md)  defines a hyperlink to a page in the web.
+6. `Text` supports style [text-overflow](https://github.com/alibaba/weex/blob/dev/doc/references/text-style.md#properties).
+7. `Image` supports attribute [resize](https://github.com/alibaba/weex/blob/dev/doc/components/image.md#styles).
+8. `List` supports [events `appear`, `disappear`, `loadmore`](https://github.com/alibaba/weex/blob/dev/doc/components/list.md#events) and [refresh](https://github.com/alibaba/weex/blob/dev/doc/components/list.md#child-components).
+9. New Syntax
+   1. [Inline event](https://github.com/alibaba/weex/blob/dev/doc/syntax/events.md#inline-handler) supports a expression of calling event handler in template.
+   2. [Require Native Module](https://github.com/alibaba/weex/blob/dev/doc/modules#how-to-use) requires a native module by `require('@weex-module/moduleName')`.
+   3. [Computed Property](https://github.com/alibaba/weex/blob/dev/doc/syntax/data-binding.md#computed-properties) supports complicated logic in data bindings.
+   4. [New Repeat Syntax](https://github.com/alibaba/weex/blob/dev/doc/syntax/display-logic.md#a-extension-of-repeat-syntax) is easy to access the key or value of repeated object.
+
+### Bugfixes
+- [android] fix crash https://github.com/alibaba/weex/commit/4fa27716d82d90c5e16d023c6e55cf65eeb9136b
+- [android] fix #20, android slider indicator edge is not smooth https://github.com/alibaba/weex/commit/5b8f3a7e6d4d547d892223d8abc02ac2084b5a6e
+- [android] fix List https://github.com/alibaba/weex/commit/4acc90a1c8c0a9181d91e2ef984266c39d255cac
+- [android] fix NavBar https://github.com/alibaba/weex/commit/8b4ea4f0c18d4e732749c025ea496c59d19004a5
+- [android] fix position=fixed did not setLayout https://github.com/alibaba/weex/commit/3b9128c2a421243d7c28f64abaebcbffd6a2ec73
+- [jsfm] fix change data when ready https://github.com/alibaba/weex/commit/0a1aa5db40713abb2923a2effb06c28349ac0213
+- [jsfm] fix when the key of trackby is zero https://github.com/alibaba/weex/commit/efa50707efd24cfb775c7e0f467279bbaade1fd6
+- [jsfm] fix append tree https://github.com/alibaba/weex/commit/d3871b308e642fd71c2b7ba630aed0f573079daa
+- [jsfm] fix transformer version https://github.com/alibaba/weex/commit/9f21bccb07869883edc261516272aa5e41933c78
+- [jsfm] fix inline event test https://github.com/alibaba/weex/commit/1ce3212a83c58187a2be0df43eecafababce8ecb
+- [jsfm] fixed transformer 0.3 https://github.com/alibaba/weex/commit/66b647afa08671812a7c5e11b440c23ae18750d9
+- [jsfm] fixed jscs error https://github.com/alibaba/weex/commit/a5067d52e2a1708852ab704a9004f5c35f3451b6
+- [jsfm] hotfixed transformer version bug and fixed a small sample code bug https://github.com/alibaba/weex/commit/48862dc40375bbc8caa30384d45b031440694f3b
+- [jsfm] fix callback https://github.com/alibaba/weex/commit/2f85737c51ebd037a72db1c18daf4a9690c45837
+- [jsfm] fix #1 #12 https://github.com/alibaba/weex/commit/56e6a79c50f1b2fd3c0ecebec000e9a693cb4b92
+- [jsfm] fix undefined for element's depth https://github.com/alibaba/weex/commit/2b7eb9ea82e6552b6e57fddb332dfbbfa3401473
+- [jsfm] fix calling functional data-binding multiply https://github.com/alibaba/weex/commit/dcd9b660912bea69b17622e13fddb80ecb42bc35
+
+### Downloads
+- [Source code (zip)](https://github.com/alibaba/weex/archive/v0.5.0.zip)
+- [Source code (tar.gz)](https://github.com/alibaba/weex/archive/v0.5.0.tar.gz)
+- [Cocoapods WeexSDK](https://cocoapods.org/pods/WeexSDK)
+- [Bintray weex_sdk](https://bintray.com/alibabaweex/maven/weex_sdk)
+
+------
\ No newline at end of file
diff --git a/doc/source/v-0.10/references/components/list.md b/doc/source/v-0.10/references/components/list.md
index 3c51418..3b4745e 100644
--- a/doc/source/v-0.10/references/components/list.md
+++ b/doc/source/v-0.10/references/components/list.md
@@ -18,7 +18,7 @@
 ```html
 <template>
   <list>
-    <cell onappear="onappear" ondisappear="ondisappear" class="row" repeat="{{staffs}}" index="{{$index}}">
+    <cell onappear="onappear($event, $index)" ondisappear="ondisappear($event, $index)" class="row" repeat="{{staffs}}" index="{{$index}}">
       <div class="item">
         <text>{{name}}</text>
       </div>
@@ -45,13 +45,12 @@
       staffs:[{name:'inns'},{name:'connon'},{name:'baos'},{name:'anna'},{name:'dolley'},{name:'lucy'},{name:'john'}, {name:'lily'},{name:'locke'},{name:'jack'},{name:'danny'},{name:'rose'},{name:'harris'},{name:'lotus'},{name:'louis'}]
     },
     methods:{
-      onappear: function (e) {
-        var index = e.target.attr.index
-        nativeLog('+++++', index);
+      onappear: function (e, index) {
+        console.log('+++++', index)
         console.log(this.staffs[index].name + ' is appearing...');
       },
-      ondisappear:function (e) {
-        nativeLog('+++++', e.target.attr.index);
+      ondisappear:function (e, index) {
+        console.log('+++++', index)
       }
     }
   }
diff --git a/doc/source/v-0.10/references/components/refresh-loading.md b/doc/source/v-0.10/references/components/refresh-loading.md
index 5152964..8b1d610 100644
--- a/doc/source/v-0.10/references/components/refresh-loading.md
+++ b/doc/source/v-0.10/references/components/refresh-loading.md
@@ -17,7 +17,7 @@
 **example**
 
 ```html
-<template>
+`<template>
   <list>
     <header>
       <div class="center">
@@ -27,7 +27,7 @@
     <loading onloading="onloading" display="{{loadingDisplay}}" style="width:750;flex-direction: row;justify-content: center;">
       <loading-indicator style="height:160;width:160;color:#3192e1"></loading-indicator>
     </loading>
-    <cell onappear="onappear" ondisappear="ondisappear" class="row" repeat="{{staffs}}" index="{{$index}}">
+    <cell onappear="onappear($event, $index)" ondisappear="ondisappear($event, $index)" class="row" repeat="{{staffs}}" index="{{$index}}">
         <div class="item">
           <text>{{name}}</text>
         </div>
@@ -69,13 +69,12 @@
       this.staffs=[{name:'inns'},{name:'connon'},{name:'baos'},{name:'anna'},{name:'dolley'},{name:'lucy'},{name:'john'}, {name:'lily'},{name:'locke'},{name:'jack'},{name:'danny'},{name:'rose'},{name:'harris'},{name:'lotus'},{name:'louis'}];
     },
     methods:{
-      onappear: function (e) {
-        var index = e.target.attr.index
-        // nativeLog('+++++', index);
+      onappear: function (e, index) {
+        // console.log('+++++', index);
         // console.log(this.staffs[index].name + ' is appearing...');
       },
-      ondisappear:function (e) {
-        // nativeLog('+++++', e.target.attr.index);
+      ondisappear:function (e, index) {
+        // console.log('+++++', index);
       },
       onloading:function(e){
         console.log('onloading...');
diff --git a/doc/themes/weex/languages/cn.yml b/doc/themes/weex/languages/cn.yml
index fe3bf17..23b209a 100644
--- a/doc/themes/weex/languages/cn.yml
+++ b/doc/themes/weex/languages/cn.yml
@@ -70,6 +70,8 @@
   references: 手册
   doc: 文档
   faq: FAQ
+  note: 参考
+  releasenote: 版本说明
   index: 首页
   blog: 博客
   showcase: 示例
diff --git a/doc/themes/weex/languages/en.yml b/doc/themes/weex/languages/en.yml
index 2fb7592..6eea9fd 100644
--- a/doc/themes/weex/languages/en.yml
+++ b/doc/themes/weex/languages/en.yml
@@ -71,6 +71,8 @@
   references: References
   doc: Docs
   faq: FAQ
+  note: Note
+  releasenote: ReleaseNote
   index: Index
   blog: Blog
   showcase: Showcase
diff --git a/doc/themes/weex/layout/_partial/footer.ejs b/doc/themes/weex/layout/_partial/footer.ejs
index 80fdc14..289cfb8 100644
--- a/doc/themes/weex/layout/_partial/footer.ejs
+++ b/doc/themes/weex/layout/_partial/footer.ejs
@@ -1,8 +1,5 @@
 <footer id="footer">
   <div class="row clearfix">
-    <div class="ali-logo">
-      <img src="//gw.alicdn.com/tps/TB1Ef93PXXXXXaXXpXXXXXXXXXX-252-126.png" alt="Alibaba">
-    </div>
     <div class="dropdown select-lang">
       <a href="javascript:;" class="dropdown-toggle">
         Language
@@ -18,11 +15,16 @@
       </ul>
     </div>
   </div>
+  <div class="disclaimer">
+    <div><img src="//gw.alicdn.com/tfs/TB1pTBZQFXXXXX9XXXXXXXXXXXX-794-280.png" width="200px" alt="Apache Incubator"></div>
+    <div><span class="title">Disclaimer:</span> Apache Weex is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</div>
+    <br/>
+  </div>
+  <hr>
   <div class="row">
-    <p><span>Released under </span><a href="">Apache License 2.0</a></p>
+    <p> <img src="//gw.alicdn.com/tfs/TB1bg8SQFXXXXcHXXXXXXXXXXXX-85-170.png" height="50px" alt="Apache"><span>Copyright(c) 2017 The Apache Software Foundation. Licensed under the </span> <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a></p>
   </div>
   <div class="row clearfix">
-    <div class="cell"><span>Copyright(c) 2016 </span><a href="https://www.alibaba.com">Alibaba</a></div>
-    <div class="cell"><span>Designed by </span><a href="">阿里云UED AX</a></div>
+    <div></div>
   </div>
 </footer>
\ No newline at end of file
diff --git a/doc/themes/weex/layout/_partial/header.ejs b/doc/themes/weex/layout/_partial/header.ejs
index c2743dc..6922437 100644
--- a/doc/themes/weex/layout/_partial/header.ejs
+++ b/doc/themes/weex/layout/_partial/header.ejs
@@ -7,7 +7,17 @@
       <ul class="links">
         <li><a href="<%= url_for_lang('guide') %>"><%= _p('menu.guide') %></a></li>
         <li><a href="<%= url_for_lang('references') %>"><%= _p('menu.references') %></a></li>
-        <li><a href="<%= url_for_lang('faq.html') %>"><%= _p('menu.faq') %></a></li>
+        <li class="dropdown">
+          <a href="javascript:;"><%= _p('menu.note') %></a>
+          <ul class="dropdown-menu subnav">
+            <li>
+              <a href="<%= url_for_lang('faq.html') %>"><%= _p('menu.faq') %></a>
+            </li>
+            <li>
+              <a href="<%= url_for_lang('releasenote.html') %>"><%= _p('menu.releasenote') %></a>
+            </li>
+          </ul>
+        </li>
         <li class="dropdown">
             <a href="javascript:;"><%= _p('menu.tools') %></a>
             <ul class="dropdown-menu subnav">
@@ -15,10 +25,7 @@
                 <a href="<%= url_for_lang('playground.html') %>">Playground</a>
               </li>
               <li>
-                <a href="<%= url_for_lang('guide/tools/devtools.html') %>">Devtools</a>
-              </li>
-              <li>
-                <a href="<%= url_for_lang('guide/tools/weexpack.html') %>">Weexpack</a>
+                <a href="<%= url_for_lang('guide/tools/toolkit.html') %>">Weex-toolkit</a>
               </li>
               <li>
                 <a href="http://dotwe.org" target="_blank">Code Snippets</a>
diff --git a/doc/themes/weex/layout/playground.ejs b/doc/themes/weex/layout/playground.ejs
index ad748f1..88bfbc6 100644
--- a/doc/themes/weex/layout/playground.ejs
+++ b/doc/themes/weex/layout/playground.ejs
@@ -3,7 +3,7 @@
     <h2>Weex Playground</h2>
     <p><%= _p('playground.content') %></p>
     <div class="download clearfix">
-      <img class="qr-code" src="//gw.alicdn.com/tps/TB1PZ1HPXXXXXctXVXXXXXXXXXX-280-280.png" alt="playground qr code">
+      <img class="qr-code" src="//img.alicdn.com/tps/TB1Yv7ZQXXXXXaYaXXXXXXXXXXX-148-148.png" alt="playground qr code">
       <ul class="links">
         <li class="ios">
           <a href="" id="ios-link" class="link" target="_blank">iOS</a>
diff --git a/doc/themes/weex/source/css/common.scss b/doc/themes/weex/source/css/common.scss
index d9701b8..47a1fe9 100644
--- a/doc/themes/weex/source/css/common.scss
+++ b/doc/themes/weex/source/css/common.scss
@@ -18,9 +18,9 @@
 
 body {
   background: $bg-gray;
-  font-family: "PingFang SC","Helvetica Neue",Arial,STHeiti,"Microsoft YaHei","Source Han Sans SC","Noto Sans CJK SC","Source Han Sans CN","Noto Sans SC","Noto Sans CJK TC",SimSun,sans-serif;
+  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue","PingFang SC","Helvetica Neue",Arial,STHeiti,"Microsoft YaHei","Source Han Sans SC","Noto Sans CJK SC","Source Han Sans CN","Noto Sans SC","Noto Sans CJK TC",SimSun,sans-serif;
   font-size: 14px;
-  line-height: 1.2;
+  line-height: 1.4;
   color: $text-light-black;
   -webkit-tap-highlight-color: transparent;
 }
diff --git a/doc/themes/weex/source/css/partial/article.scss b/doc/themes/weex/source/css/partial/article.scss
index 9afcc5e..6628f46 100644
--- a/doc/themes/weex/source/css/partial/article.scss
+++ b/doc/themes/weex/source/css/partial/article.scss
@@ -65,4 +65,8 @@
 
 #faq .article {
   margin-left: 0;
+}
+
+#releasenote .article {
+  margin-left: 0;
 }
\ No newline at end of file
diff --git a/doc/themes/weex/source/css/partial/footer.scss b/doc/themes/weex/source/css/partial/footer.scss
index 3c4d976..71d263f 100644
--- a/doc/themes/weex/source/css/partial/footer.scss
+++ b/doc/themes/weex/source/css/partial/footer.scss
@@ -36,14 +36,10 @@
   }
 
   .row {
-    font-size: 14px;
+    font-size: 12px;
     margin: 8px 0;
   } 
 
-  .row span {
-    color: $text-gray;
-  } 
-
   .row .icon-baichuan {
     font-size: 14px;
     color: $text-light-black;
@@ -60,4 +56,16 @@
     margin-left: 2px;
     @include triangle-down($border-gray, 4px);
   }
+  .disclaimer{
+    max-width: 800px;
+    line-height: 150%
+  }
+  hr{
+    border: 0;
+    border-top: 1px solid #e6e6e6;
+  }
+  .disclaimer .title{
+    font-weight: bold;
+    margin-bottom: 10px;
+  }
 }
diff --git a/ios/playground/WeexDemo.xcodeproj/project.pbxproj b/ios/playground/WeexDemo.xcodeproj/project.pbxproj
index b613286..95a08ff 100644
--- a/ios/playground/WeexDemo.xcodeproj/project.pbxproj
+++ b/ios/playground/WeexDemo.xcodeproj/project.pbxproj
@@ -364,7 +364,6 @@
 				84361D431CA10F8E00F43825 /* Resources */,
 				84361D6F1CA10F8E00F43825 /* [CP] Copy Pods Resources */,
 				84361D701CA10F8E00F43825 /* [CP] Embed Pods Frameworks */,
-				567369891CE436EB000A646C /* ShellScript */,
 			);
 			buildRules = (
 			);
@@ -447,21 +446,6 @@
 /* End PBXResourcesBuildPhase section */
 
 /* Begin PBXShellScriptBuildPhase section */
-		36DF47C61FC947C616E7CB76 /* [CP] Copy Pods Resources */ = {
-			isa = PBXShellScriptBuildPhase;
-			buildActionMask = 2147483647;
-			files = (
-			);
-			inputPaths = (
-			);
-			name = "[CP] Copy Pods Resources";
-			outputPaths = (
-			);
-			runOnlyForDeploymentPostprocessing = 0;
-			shellPath = /bin/sh;
-			shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-WeexDemo/Pods-WeexDemo-resources.sh\"\n";
-			showEnvVarsInLog = 0;
-		};
 		685399B3421CD1410375A2AD /* [CP] Embed Pods Frameworks */ = {
 			isa = PBXShellScriptBuildPhase;
 			buildActionMask = 2147483647;
@@ -488,7 +472,7 @@
 			);
 			runOnlyForDeploymentPostprocessing = 0;
 			shellPath = /bin/sh;
-			shellScript = "DEST=$CONFIGURATION_BUILD_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH\n\nif [[ \"$CONFIGURATION\" = \"Debug\" && \"$PLATFORM_NAME\" != \"iphonesimulator\" ]]; then\nipconfig getifaddr en0 | awk '{printf(\"%s\",$0)}' > \"$DEST/localServer-ip.txt\"\nfi\n\nset -x\n\nif nc -w 5 -z localhost 12580 ; then\n    echo \"Port 12580 already in use, server is running\"\nelse\n    open \"$SRCROOT/../../start\"\nfi\n\n";
+			shellScript = "DEST=$CONFIGURATION_BUILD_DIR/$UNLOCALIZED_RESOURCES_FOLDER_PATH\n\nif [[ \"$CONFIGURATION\" = \"Debug\" && \"$PLATFORM_NAME\" != \"iphonesimulator\" ]]; then\nipconfig getifaddr en0 | awk '{printf(\"%s\",$0)}' > \"$DEST/localServer-ip.txt\"\nfi\n\nset -x\n\nif nc -w 5 -z localhost 12580 ; then\n    echo \"Port 12580 already in use, server is running\"\nelse\n    open -a Terminal \"$SRCROOT/../../start\"\nfi\n\n";
 		};
 		84361D271CA10F8E00F43825 /* [CP] Check Pods Manifest.lock */ = {
 			isa = PBXShellScriptBuildPhase;
diff --git a/ios/sdk/WeexSDK/Sources/Utility/WXBoxShadow.m b/ios/sdk/WeexSDK/Sources/Utility/WXBoxShadow.m
index 5888071..dbf7941 100644
--- a/ios/sdk/WeexSDK/Sources/Utility/WXBoxShadow.m
+++ b/ios/sdk/WeexSDK/Sources/Utility/WXBoxShadow.m
@@ -22,7 +22,6 @@
 #import "WXUtility.h"
 
 @implementation WXBoxShadow
-@synthesize shadowColor = _shadowColor;
 - (instancetype)init
 {
     self = [super init];