- 如何参与讨论
- 如何汇报 bug
- 如何提交 patch
- 浏览器支持列表
加入 Google Group, 可以发帖提出你的疑问以及讨论一些使用问题 如果发现了 bug,请提交到 github issues
加入旺旺群 29676575 和更多人一起讨论 KISSY ,阿里集团内部人员以及外部贡献者更可加入 574665692 来影响 KISSY 的未来发展
阿里集团内部人员也可加入 阿里技术圈 来讨论
联系新浪微博或者 twitter: @kissyteam
请首先查阅文档 api 以及使用示例,确保自己调用正确
禁用浏览器扩展和插件后再看是否能够依然出错
老版本的 bug 可能在新版本或者主干版本修复,避免提交已知 bug
在前一个版本上做测试,确定这个 bug 是新引出的,还是一直存在的老 bug
当出现问题时,请精简出错代码到最简,避免和具体业务相关联,避免其他无关的代码执行,并提交到 jsfidder.
patch 代码格式请参考 KISSY 源码规范, 并在提交前对代码执行 jshint,确保 pass.
KISSY 的开发依赖 nodejs 提供 web 环境,包括静态文件访问以及 ajax 动态请求测试 以及 ant 提供打包工具
所以请确保你配置了以下环境:
- Node.js
- JDK7
将 tools/ant/bin 加入到环境变量 path 中
fork KISSY 项目 https://github.com/kissyteam/kissy
进入一个目录,例如
cd /path/my
clone KISSY 到本地
git clone [email protected]:username/kissy.git
username 为你的 github 用户名
进入新 clone 的 kissy 目录
cd kissy
添加 KISSY 官方 master
git remote add remote git://github.com/kissyteam/kissy.git
开始新 patch 前要和官方主干同步
git pull remote master
安装 node 依赖模块
npm install
启动 web 环境
npm start
如果报告 Unknown Encoding 错误,请升级node环境到最新版。
现在打开 KISSY 集成测试用例: http://localhost:8888/kissy/test
你也可以测试单个模块, 例如 dom: http://localhost:8888/kissy/src/dom/base/tests/runner/test.jss
你也可以查看单个模块的测试覆盖率, 例如 dom: http://localhost:8888/kissy/src/dom/base/tests/coverage
新增模块请复制已有模块的目录结构后,清楚 src, demo, - 等子目录的内容后添加模块(TODO 增加新增模块模版)。
在 src 目录下编写源码, demo 目录增加 demo , tests/runner/test.jss 申明依赖的外部 css 和外部 js, 修改 build.xml 中的当前模块名,
最后重启 web 环境
可选: build KISSY
cd src/
ant build-all
build KISSY 时间很长,需要耐心等待
永远不要把 patch 提交到你的主干!
一定要使用 issue 分支!
确保你的主干和官方同步
git checkout master
git pull remote master
建立一个新分支,该分支名为 issue_ 加 issue 数字
git checkout -b issue_###
"###" 为你提交的 issue 号码,现在你已经切换到了 issue_### 分支
在对应模块的 tests/specs 下面添加测试用例
然后根据测试用例对相应模块源码进行修改(TDD)
运行 http://localhost:8888/kissy/src/$module$/tests/runner/test.jss -> all test cases is green and passed.
继续看下你的用例的覆盖率
运行 http://localhost:8888/kissy/src/$module$/tests/coverage
下面对你修改的代码进行 stage 操作
git add filename
注意不要使用: git add .
一旦你 stage 了你修改的所有文件,运行以下命令提交
git commit -m "简介. Fixes #xxx"
对于多行注释,只要运行 git commit 然后在其后的界面输入多行注释
然后把你的 patch 提交到你的 github
git push origin -u issue_###
在进行下个 patch 开始前,请切换到 master 分支
git checkout master
最后到的 github 界面,点击 pull request 即可
pull request 前请确保代码符合规范并且单元测试通过
- chrome/firefox/opera/safari 最新版本以及次新版本
- mobile safari/mobile chrome 最新版本以及次新版本
- ie6+