LoginSignup
2
0

More than 3 years have passed since last update.

ZeppelinOSからOpenZeppelin SDKへの移行方法メモ

Posted at

はじめに

OpenZeppelin SDKの前身であるZeppelinOSのプロジェクト(v2.4)を、OpenZeppelin SDKプロジェクト(v2.5)に移行するための手順をメモ。

ZeppelinOSからOpenZeppelin SDKへの移行方法

package.json

  • zos -> @openzeppelin/cli
> npm uninstall zos
> npm install @openzeppelin/cli
  • openzeppelin-eth -> @openzeppelin/contracts-ethereum-package
> npm uninstall openzeppelin-eth
> npm install @openzeppelin/contracts-ethereum-package
  • (optional) web3@1.0.0-beta.37 -> web3@1.2
    web3のバージョンがv1.2でstableになり、OpenZeppelin SDKでも、v2.5.2からはv1.2を使用するようになった。
> npm uninstall openzeppelin-eth
> npm install @openzeppelin/contracts-ethereum-package

コマンド

  • zos -> openzeppelin または oz

プロジェクト管理ファイル

今まで、zosのprefixで識別されていたプロジェクト管理ファイルは、全て.openzeppelinディレクトリに移された。

  • zos.json -> .openzeppelin/project.json
  • zos.dev-5777.json -> .openzeppelin/dev-5777.json
  • zos.rinkeby.json -> .openzeppelin/rinkeby.json
    など

solidityファイル

import部分を修正する必要がある。
openzeppelin-eth -> @openzeppelin/contracts-ethereum-package

// import "openzeppelin-eth/contracts/math/SafeMath.sol";
import "@openzeppelin/contracts-ethereum-package/contracts/math/SafeMath.sol";

まとめ

上記の変更を加えることで、ZeppelinOSのプロジェクトをOpenZeppelin SDKのプロジェクトに移行できる。
場合によってはnpm周りなどもう少し修正が必要になることがあるが、@openzeppelin以下を使うことに気をつければ大丈夫。

おまけ

OpenZeppelin SDKについては、以下のtweetや以前書いたqiita記事を見てもらうのが良いかと思います。

Qiita記事: OpenZeppelin SDK (旧ZeppelinOS) を使って、コードを1行も書かずに3分でERC721を発行する

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0