• Raft PBFT

    Reliable, Replicated, Redundant, And Fault-Tolerant

    Practical Byzantine Fault Tolerant

  • 吃人一口,還人一斗 我思故我在

    字面上意思是說,受別人一點幫助,就要思考如何回報他更多。

    同義的:受人點滴,湧泉以報

    我覺得更值得更深入思考的是,

    當你輕易地要求別人的幫助時,你就得有心理準備,要返還十倍或更多。

    所以,當自己能做到,不輕易要求別人的幫忙。

    (說到這裡,小伙伴會覺得跟我以前說的”情感投入報酬”不一樣,情境不同暫不展開)

    這是台灣的俗語,用台語發音更有味道。

  • 瘋狂宇宙 我思故我在

    這個宇宙太瘋狂,大海掀翻了小池塘。

  • 區塊鏈是工具,要合理的使用;而非商品炒作。我思故我在

  • 賀賀郎,哇嗄哩供喂 我思故我在

    意思就是說,我是一個好好的、正常的人,我幹嘛跟你講話。

    一般用於朋友間小小辨論時,無法說服對方而使用。

    請不要企圖說服價值觀不在同個方向上的人或朋友。

  • Ethereum 塞車體驗 我思故我在
    下午四點,第一次體驗到 Eethereum 的塞車,一個 Uniswap 的交易等了一個鐘頭

    約1600 左右的交易,到 1702 收到通知完成

    不是說好的幾秒鐘,幾分鐘哦。造成這個情況的這是 TPS 限制嗎?還是真的有大量垃圾訊息或攻擊導致的?

  • 中心思想 我思故我在

    行為會改變、技術會改變,但中心思想不會變
    如同你會隨著環境而適應,但你的價值觀沒那麼容易改變

    中心思想、價值觀要改變,需要非常深刻的思考及體會,一般人在成長階段接受了某種價值觀,就不容易再改變了。

  • 現在想想,還好選了 ethereum 入門 我思故我在
    當時本來是想跟 Bruce 在公司的決定一樣,從 Fabric 開始。最近沒聯絡不知道發展得如何?

    還好選了 ethereum 入門

  • 成大事者不拘小節 魔鬼藏在細節裡 我思故我在

    兩句話看似相互矛盾,但其實使用的場景是不同的
    年輕人,把這兩句話串在一起,就定位成幹話

    真的這淺薄嗎?

  • 想像力比知識更重要?我思故我在

    你的問題在於書讀得太少,想得太多。

    如果是可比較的,那請您思考:想像力固然重要,是不是應該讓你的知識追上你的想像力?

OpenZeppelin 可昇級合約插件 3/9 在 Truffle 環境下使用插件

以太坊 ethereum andy 1个月前 (10-19) 202次浏览 已收录 0个评论 扫描二维码
文章目录[隐藏]

OpenZeppelin 可昇級合約插件 3/9 在 Truffle 環境下使用插件

在 Truffle 環境下使用插件

本插件增加Truffle 的功能和測試,讓合約可以部署和昇級。但是目前還不支持 truffle 的擴展語法。
Truffle 擴展語法請參考 https://www.trufflesuite.com/docs/truffle/getting-started/writing-external-scripts

安裝

$ npm install --save-dev @openzeppelin/truffle-upgrades
本插件需要 Truffle v 5.1.35 以上。

在Truffle 環境中使用插件

在 Truffle 環境裡使用 deployProxy 函數來部署可昇級的合約。

OpenZeppelin 可昇級合約插件 3/9 在 Truffle 環境下使用插件

以上的代碼會自動檢查 Box 合約是否可以安全昇級,如果需要的話會設定合約管理員,會給 Box 合約部署功能合約,除非之前已經部署完成了。然後建立一個代理,並且調用 initialize(42) 來初始化代理合約
以後部署時,可以使用 upgradeProxy 函數來昇級合約到新的版本。這個新版本的合約,可以是完全不同的合約(可以想像是 BoxV2),也可以只修改 Box 然後重新編譯,插件會注意到檔案已經改變。

OpenZeppelin 可昇級合約插件 3/9 在 Truffle 環境下使用插件

以上的代碼讓插件比對 BoxV2 跟之前的合約比對,並確定這兩個合約是相容的可以昇級,部署 BoxV2 的功能實作合約(除非已經部署過了),然後昇級代理合約指向新的功能實作合約。

在 Truffle 的測試中使用插件

也可以在 Truffle 的測試中使用 deployProxy 和 upgradeProxy 函數,以下的代碼是為昇級合約加入測試,這個 API 跟 migration 時一樣,只是缺少了 deployer 參數

OpenZeppelin 可昇級合約插件 3/9 在 Truffle 環境下使用插件

參考

https://docs.openzeppelin.com/upgrades-plugins/1.x/truffle-upgrades


神隊友學長Andy , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:OpenZeppelin 可昇級合約插件 3/9 在 Truffle 環境下使用插件
喜欢 (0)
[320208045@qq.com]
分享 (0)
andy
关于作者:
中年大叔,打拼 like young students.
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址