Nervos AppChain v0.2 release note


#1

We are excited to announce the release of Nervos AppChain v0.2. :tada::tada::tada:

:muscle: In this iteration, we are focusing on improving developer experience for making it easier to build and deploy DApps. Much of our efforts have gone into the bugs fixing, documentations improving and functions strengthening.

:wrench: In addition, we pre-released a new tool - NeuronWeb, which is a chrome extension wallet that is similar to MetaMask.
With this tool, developers can conveniently debug DApps in a PC environment, to adapt them for our smartphone wallet Neuron. The official release of v0.1 of this tool will come very soon.

:potable_water: We have also open sourced a Testnet Faucet project, which can let developers to start their own webpage for dispensing test tokens.

:blush: Three DApp demos for learning how to develop on Nervos AppChain is also included in this release :

  • Token Factory: A Token Creation DApp that we migrated from Ethereum
  • Nervos-API:An interactive demo for most of API methods of nervos.js
  • Pet-shop:A demo shows how to deploy the classic Truffle Box demo pet-shop-box on Nervos AppChain.

:page_facing_up: We updated document of Nervos Network and Nervos AppChain. Please refer them for more information.

:warning:Attention: :warning:️ After this release, we will update the CITA version of Nervos AppChain Testnet to v0.18.We are sorry that this upgrade to v0.18 is incompatible with v0.17 (in terms of Json-RPC interface and Nervos SDK, please refer the release note of nervos.js for more information). We apologize for your inconvenience.

Components Release Note

Here are the release note of each components in Nervos AppChain package.

Neuron-Android

Neuron-Android release v0.6.4:

  • [feature] Update UI of application page
  • [feature] Add more DApps of Ethereum and AppChain
  • [feature] Add Ethereum ERC20 transaction history list
  • [feature] Update UI of transaction
  • [optimize] Optimize quota when token transfer
  • [optimize] Optimize the process of creating and importing wallet
  • [fix] Update manifest path handle method

Microscope

We added the following features to Microscope v0.2.0 release:

  • [update]: Update UI , explicitly show Contract Creation in Transaction Detail;
  • [update]: Update UI , display number in decimal format instead of hexadecimal;
  • [update]: Update UI , display time in specified format;
  • [update]: Update UI , update ‘block number’ to ‘block height’;
  • [update]: Update UI , better graphs display;
  • [fix]: Search Result , go to page1 on search with advanced selector;

Testnet Faucet

This is the first release of Nervos AppChain Testnet Faucet. It dispense Tokens to developers on AppChain Testnet. It comes with the following features:

  • [feature]: Address of chain node can be configured
  • [feature]: Amount of the Testnet Token which transfered everytime can be configured
  • [feature]: Transaction Hash will be displayed after transaction sent successful

NeuronWeb

NeuronWeb is a Chrome extension tool for developers to develop DApps on Nervos AppChain using their desktop PC browser. This complement the fact that had to use a phone to develop DApp on Neuron.

  • [feature] Private Key , private key management;
  • [feature] Transaction , proxy transaction from dapp;
  • [feature] Message Signature , sign message by private key;
  • [feature] Transaction List , auto-load transaction of specified account;
  • [feature] Debugger , debugger on transaction fields;
  • [feature] Multi-Chain , supporting multi-chain as neuron;

Please notice that this is a pre-release instead of an official release. The functions are very simple and there might be bugs. We will release the official v0.1 version very soon.

Truffle Box

We added the following features to Truffle Box v0.2.0 release

  • [feature] support to choose whether redeploy contract or not
  • [feature] support to deploy contract with arguments and transaction parameters
  • [feature] support link method
  • [update] add some syntax compatibility with truffle
  • [update] config file compatibility with truffle

Nervos.js

We added the following features to Nervos.js v0.18.0 release:

  • [fix]: utils.hexToBytes , an error of original web3@1.0.0;
  • [fix]: setProvider , enable nervos.setProvider function;
  • [update]: UMD Object , update UMD Object to window.Nervos ;
  • [fix]: Chain Manage , fix chainManage Contract address;
  • [update]: Return From , parameter from will be included to return when sendTransaction has no private key;
  • [update]: Lowercase Address , lowercase to address in transaction when sendTransaction;
  • [update]: Format Address , remove 0x in to address;
  • [feature]: PrivateKey Validator , add nervos.utils.isPrivateKey(privateKey) to check private key format;
  • [fix]: Fix Typo , fix typo in log of transactionReceipt listener;
  • [fix]: Fix getTransactionProof , fix rpc input formatter;
  • [feature]: Optimize Logs Output , add second parameter on getLogs to format logs;
  • [update]: Doc , add more details in README;

Nervosj

In this version we adjusted AppChain Nervosj to support CITA v0.18 and fixed some known issues.

  • [Feature]: Add support to allow user instantiate new Transaction with custom Signature.
  • [Fix]: Fix the issue that generated java class cannot return the correct java data type.
  • [Fix]: Force attribute value to be 256-bit by padding leading zeros.
  • [Fix]: Update attribute name according to CITA block architecture.
  • [Fix]: Update attribute name for AppMetaData
  • [Optimize]: Publish the project to maven central.
  • [Optimize]: Add examples for BlockFilter and AppFilter.

ReBirth

This release we add several features:

  • [feature]: support custom event log process
  • [feature]: sync event logs when save transactions
  • [feature]: support ERC20 process
  • [feature]: find transaction by hash API
  • [update]: change default CITA_URL to localhost

Nervos AppChain v0.2 发布

大家好,Nervos AppChain v0.2 正式发布了!:tada::tada::tada:

:muscle: 这段时间我们收集了许多外部开发者的反馈,将工作重点集中于提升 Nervos AppChain 的开发者体验,修复了现有组件的一些 bug,新增了部分功能,完善了现有文档。

:wrench: 此外,我们还新增了一个 Chrome 插件 NeuronWeb。开发者可借助 NeuronWeb 插件来在 PC 上开发和调试 DApp,并完成对手机钱包 Neuron 的运行环境的适配。这次我们会发布 0.1.0-alpha 的预发布版本,很快我们会发布正式v0.1.0版本。

:potable_water: 我们还开源了 Testnet Faucet 项目,用于分发测试链 Token 给开发者。

:blush: 还有我们新增了三个DApp demo用于展示如何在Nervos AppChain上开发:

  • Token Factory:一个从以太坊迁移到 Nervos AppChain 上的 Toekn Factory 应用
  • Nervos-API:一个展示几乎所有 nervos.js 用法的交互式 demo
  • Pet-shop:一个使用 AppChain Truffle Box 的 DApp

:page_facing_up: 我们还更新了 Nervos NetworkNervos AppChain 的文档。

:warning:注意: :warning:️ 在这次发布之后,我们会将 Nervos AppChain Testnet 的内核 CITA 版本升级到 v0.18。这次升级可能会导致 不兼容 的问题(包括 Json-RPC 接口和 Nervos SDK 的更改,详细信息请参考 nervos.js 的 release note )。我们对造成的不便深表歉意。

Nervos AppChain 组件

以下是 Nervos AppChain 包中每个组件的发行说明。

Neuron-Android

本次Neuron-Android 发布v0.6.4版本:

  • [feature] 更新应用页面UI
  • [feature] 增加更多以太坊和AppChain的DApp
  • [feature] 增加以太坊ERC20交易历史列表
  • [feature] 更新交易UI
  • [optimize] 转账时优化quota
  • [optimize] 优化创建和倒入钱包流程
  • [fix] 修复manifest 路径读取错误

Microscope

本次发布Microscope v0.2版本

  • [update]: Update UI ,交易细节中明确显示 Contract Creation;
  • [update]: Update UI ,数字更新为以十进制展示而不是十六进制;
  • [update]: Update UI ,更改时间格式为小时分钟秒;
  • [update]: Update UI ,将 ‘block number’ 更新为 ‘block height’;
  • [update]: Update UI ,优化图表;
  • [fix]: Search Result , 搜索完成后跳转到第一页

Testnet Faucet

Nervos AppChain Testnet Faucet 能够在 AppChain Testnet 上将 Token 分发给开发者,本次是第一次 release:

  • [feature]:支持配置节点地址
  • [feature]:支持任意配置 Testnet Token
  • [feature]:交易发送成功后,支持显示交易 hash

NeuronWeb

NeuronWeb是一个Chrome 插件,开发者可借助 NeuronWeb 插件在 PC 浏览器上开发和调试 DApp,避免只能手机调试,更加方便。

  • [feature] Private Key , 私钥管理
  • [feature] Transaction , 转发从 DApp 来的交易
  • [feature] Message Signature , 用私钥签名消息
  • [feature] Transaction List , 自动加载账号的交易列表
  • [feature] Debugger , 调试交易详情
  • [feature] Multi-Chain , 和 Neuron 一样支持多链

请注意这是pre-release版本而非正式release版本,功能比较简单,而且可能会有bug,我们会尽快发布正式v0.1版本。

Truffle Box

本次发布 Truffle Box v0.2 版本

  • [feature]:支持自主选择是否需要覆盖原有合约
  • [feature]:支持部署合约参数和交易参数
  • [feature]:支持用 link 方法连接到其他合约
  • [update]:增加一些兼容 truffle 的语法
  • [update]:将配置文件兼容 truffle
  • [update]:迁移文件中获取合约的语法能够兼容 truffle

Nervos.js

本次Nervos.js修复问题:

  • [fix]: utils.hexToBytes , 一个 web3@1.0.0 本身的 bug;
  • [fix]: setProvider , 新增了 nervos.setProvider 功能;
  • [update]: UMD Object , 将 UMD 对象更新到 window.Nervos
  • [fix]: Chain Manage , 修复 chainManage 的合约地址;
  • [update]: Return From , 在发送交易时,如果参数中没有私钥,返回参数要包含 from 字段
  • [update]: Lower Address , 在发送交易时,将 to 地址转换为小写。
  • [update]: Format Address , 在发送交易时,去掉交易中的 to 字段中的 0x
  • [feature]: PrivateKey Validator , 新增 nervos.utils.isPrivateKey(privateKey) ,用来做私钥的格式校验;
  • [fix]: Fix Typo , 修复 transactionReceipt listener 的 log 中的错误;
  • [fix]: Fix getTransactionProof , 修复 rpc 输入的格式化;
  • [feature]: Optimize Logs Output ,给 getLogs 增加第二个参数来实现 log 的格式化
  • [update]: Doc , README 中新增很多细节

Nervosj

本次 Nervosj 为了适配 CITA v0.18 修复了一些问题:

  • [Feature]:支持传入自定义签名
  • [Fix]:修复通过智能合约生成的 java 类返回数据类型不一致问题
  • [Fix]:通过高位补0强制要求 value 字段为256位
  • [Fix]:根据 CITA 块结构更新 AppBlock
  • [Fix]:更新 AppMetaData 的属性名称
  • [Optimize]:将项目发布到 maven
  • [Optimize]:为 BlockFilter 和 AppFilter 增加了一些用例

ReBirth

本次 Rebirth 新增了一些功能:

  • [feature]:支持自定义 event log 存储
  • [feature]:保存交易时同时保存 event log
  • [feature]:支持 ERC20
  • [feature]:通过交易 hash 查找交易
  • [update]:将默认 CITA_URL 更改为 localhost

pinned globally #2

#3

恭喜恭喜!!!!!!!