很高興和大家分享一條好消息,我們終于發(fā)布了 Forge 1 0 ! 經(jīng)過最近幾個月的努力,我們終于將 Forge 以及 Forge CLI 帶到了一個穩(wěn)定的階段。Fo
很高興和大家分享一條好消息,我們終于發(fā)布了 Forge 1.0 ! 經(jīng)過最近幾個月的努力,我們終于將 Forge 以及 Forge CLI 帶到了一個穩(wěn)定的階段。Forge 1.0 和 Forge CLI 1.0 中包含了許多重要的更新,本文將會逐一介紹。
Forge 1.0
在 Forge 1.0 中,除了保持 Forge 的健壯外,我們還增加了一些新的功能,比如支持跨鏈、更方便的升級鏈等等。
跨鏈支持
為了更大程度的支持鏈上資產(chǎn)在不同鏈上的流通,我們?yōu)?Forge 設(shè)計并實(shí)現(xiàn)了同構(gòu)鏈的原子互換機(jī)制。
所有用 Forge 啟動的鏈都可以認(rèn)為是同構(gòu)鏈,區(qū)塊鏈應(yīng)用開發(fā)者可以根據(jù)需要方便的在任意兩條 Forge 啟動的鏈上做通證(Fungible Token)或者非標(biāo)資產(chǎn)(Non-Fungible Token)的互換,用來完成原子互換的智能合約有:SetupSwap、RetrieveSwap、RevokeSwap。目前同構(gòu)鏈的原子互換能力已經(jīng)內(nèi)置在 Forge 發(fā)行版之中供開發(fā)者使用。
鏈升級
Forge 1.0 中增加了更新補(bǔ)丁(Patch Version)的功能,Patch 版本之間版本的切換不需要發(fā)送 upgrade_node transaction。
更詳細(xì)的升級規(guī)則可以查看 Forge CLI 手冊[1]。
智能合約
增加了幾個內(nèi)置的智能合約(Smart Contract):
•激活/停止 智能合約:activate, deactivate
•Delegate 相關(guān):delegate, revoke_delegate
•Token Swap 相關(guān):deposit_token, withdraw_token, revoke_withdraw, approve_withdraw
不再支持的功能
•廢棄錢包相關(guān)的 RPC 接口 新版中,F(xiàn)orge 將不再支持錢包(wallet)的管理,同時廢棄了錢包相關(guān)的 RPC 接口:create_wallet, load_wallet, recover_wallet, list_wallet, remove_wallet, create_tx, multisig
•不再集成 IPFS
升級 OTP & Elixir & Consensus Engine
•OTP:v22.0
•Elixir:v1.9.0
•Consensus Engine(Tendermint):v0.32.7
重構(gòu)
區(qū)塊索引數(shù)據(jù)庫:新版中,F(xiàn)orge 索引器將從 state db 拉取數(shù)據(jù),而不再是在執(zhí)行 forge transaction 時接收推送數(shù)據(jù)。這樣可以避免在創(chuàng)建索引時引發(fā)的許多 Bug;同時,如果當(dāng)前的索引數(shù)據(jù)不滿足需求或者 Schema 發(fā)生了更改,還可以隨時重新創(chuàng)建索引。
Bug 修復(fù)
當(dāng)然,我們也修復(fù)了一些 Bug,解決了許多已知的問題。
代碼統(tǒng)計數(shù)據(jù)
•提交:592 次
•解決 Issue:429 個
•發(fā)布版本:188 個
(截止至 2019-11-12 18:00:00)
Forge CLI 1.0
Forge CLI 1.0 除了對最新的 Forge 支持外,CLI 自身也對易用性做了許多改進(jìn)。
創(chuàng)建、管理多條鏈
在本地開發(fā)時,可能需要多條鏈的支持,使用最新版的 CLI 可以方便的在本地創(chuàng)建并啟動多條鏈:
$ forge chain:create beijing
經(jīng)過簡單的交互命令后,就完成了一條鏈的創(chuàng)建:
啟動鏈
$ forge start beijing
多條鏈節(jié)點(diǎn)進(jìn)程展示
停止鏈
$ forge stop [chainName]
Blocklet
我們在 9 月份發(fā)布了 Blocklet[2],同時 CLI 添加了創(chuàng)建 Blocklet、使用 Blocklet等功能的支持。
更詳細(xì)的內(nèi)容可以查看 Forge CLI 手冊[3]。
鏈的軟升級
CLI 添加了對鏈的軟升級功能,如果本地已經(jīng)下載好了需要升級的 Forge 版本,執(zhí)行 forge upgrade 命令,然后選擇相應(yīng)的 Forge 版本以及塊高,CLI 就會自動完成整個升級過程:
全局配置
CLI 添加了全局配置的功能,這樣可以很方便的將某些配置應(yīng)用到每一個相關(guān)的命令,比如設(shè)置 mirror, npmRegistry 等等。(張鎮(zhèn)強(qiáng))
可以使用 forge config 命令來管理全局配置。
更詳細(xì)的內(nèi)容可以查看 Forge CLI 手冊[5]。
增強(qiáng)管理智能合約功能
CLI 添加了創(chuàng)建智能合約骨架的命令,以及 activate/deactivate 智能合約的的命令:
•創(chuàng)建智能合約骨架: forge contract:create
•激活智能合約: forge contract:activate
•停用智能合約: forge contract:deactivate
代碼統(tǒng)計數(shù)據(jù)
•提交: 203 次
•解決 Issue: 149 個
•發(fā)布版本: 88 個
(截止至 2019-11-12 18:00:00)
關(guān)鍵詞: Forge 1 0 同構(gòu)鏈 原子互換機(jī)制