copernicus weekly report
copernicus项目说明
哥白尼项目提供给大家一个Go语言版本的Bitcoin Cash客户端,并对原来的客户端软件结构做了重新梳理和设计,期望结构简洁,降低后面开发者进入时的学习成本,增加客户端多样性以此来保证整个Bitcoin Cash网络的安全。
The Copernicus project provides the Bitcoin Cash client written in Golang, it reorganizes and designs the software structure for original client to make software structure become clearer, further reduce the learning difficulty of subsequent developers, increase the diversity of clients and in the end to ensure the security of BCH network as a whole.
What we did last week
- Since there is a 'stack overflow' bug in current b+ tree when delete an element,we developed skiplist to replaced b+ tree,and in this way make the code more simple and efficient
- implement wallet rpc 'getnewaddress' and 'listunspent'
- refactor undo logic
- refactor coinbase transaction's scriptSig format during cpu mining
- modify reindex logic, and do unit test for it
- Add function test into travis-ci to improving code quality check.
- implement the function of CheckBlockIndex
- Unit test coverage has reached 77%
上周完成的工作
- 用跳表结构替代原来的b+树结构,以此来修复挖矿时按照交易优先级选择交易的b+树栈溢出问题。
- 实现钱包的两个RPC方法‘getnewaddress’和'listunspent'
- 优化undo模块逻辑
- 优护CPU挖矿时coinbase交易的scriptSig格式
- 优化reindex模块逻辑,并完成该模块的单元测试
- 给travis-ci添加功能测试,并根据测试结果改进项目代码质量
- 实现CheckBlockIndex功能
- 单元测试覆盖率已达77%