neofs-contract

module
v0.15.4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 27, 2022 License: GPL-3.0

README

NeoFS

NeoFS related smart contracts.


Overview

NeoFS-Contract contains all NeoFS related contracts written for neo-go compiler. These contracts are deployed both in the mainchain and the sidechain.

Mainchain contracts:

  • neofs
  • processing

Sidechain contracts:

  • alphabet
  • audit
  • balance
  • container
  • neofsid
  • netmap
  • nns
  • proxy
  • reputation
  • subnet

Getting started

Prerequisites

To compile smart contracts you need:

Compilation

To build and compile smart contract, run make all command. Compiled contracts *_contract.nef and manifest config.json files are placed in the corresponding directories.

$ make all
/home/user/go/bin/cli contract compile -i alphabet -c alphabet/config.yml -m alphabet/config.json -o alphabet/alphabet_contract.nef
/home/user/go/bin/cli contract compile -i audit -c audit/config.yml -m audit/config.json -o audit/audit_contract.nef
/home/user/go/bin/cli contract compile -i balance -c balance/config.yml -m balance/config.json -o balance/balance_contract.nef
/home/user/go/bin/cli contract compile -i container -c container/config.yml -m container/config.json -o container/container_contract.nef
/home/user/go/bin/cli contract compile -i neofsid -c neofsid/config.yml -m neofsid/config.json -o neofsid/neofsid_contract.nef
/home/user/go/bin/cli contract compile -i netmap -c netmap/config.yml -m netmap/config.json -o netmap/netmap_contract.nef
/home/user/go/bin/cli contract compile -i proxy -c proxy/config.yml -m proxy/config.json -o proxy/proxy_contract.nef
/home/user/go/bin/cli contract compile -i reputation -c reputation/config.yml -m reputation/config.json -o reputation/reputation_contract.nef
/home/user/go/bin/cli contract compile -i subnet -c subnet/config.yml -m subnet/config.json -o subnet/subnet_contract.nef
/home/user/go/bin/cli contract compile -i nns -c nns/config.yml -m nns/config.json -o nns/nns_contract.nef
/home/user/go/bin/cli contract compile -i neofs -c neofs/config.yml -m neofs/config.json -o neofs/neofs_contract.nef
/home/user/go/bin/cli contract compile -i processing -c processing/config.yml -m processing/config.json -o processing/processing_contract.nef

You can specify path to the neo-go binary with NEOGO environment variable:

$ NEOGO=/home/user/neo-go/bin/neo-go make all

Remove compiled files with make clean or make mr_proper command.

Testing

Smartcontract tests reside in tests/ directory. To execute test suite after applying changes, simply run make test.

$ make test
ok      github.com/nspcc-dev/neofs-contract/tests       0.462s

NeoFS API compatibility

neofs-contract version supported NeoFS API versions
v0.9.x v2.7.0, v2.8.0
v0.10.x v2.7.0, v2.8.0
v0.11.x v2.7.0, v2.8.0, v2.9.0
v0.12.x v2.10.0
v0.13.x v2.11.0
v0.14.x v2.11.0
v0.15.x v2.11.0, v2.12.0

License

This project is licensed under the GPLv3 License - see the LICENSE.md file for details

Directories

Path Synopsis
Alphabet contract is a contract deployed in NeoFS sidechain.
Alphabet contract is a contract deployed in NeoFS sidechain.
Audit contract is a contract deployed in NeoFS sidechain.
Audit contract is a contract deployed in NeoFS sidechain.
Balance contract is a contract deployed in NeoFS sidechain.
Balance contract is a contract deployed in NeoFS sidechain.
Container contract is a contract deployed in NeoFS sidechain.
Container contract is a contract deployed in NeoFS sidechain.
NeoFS contract is a contract deployed in NeoFS mainchain.
NeoFS contract is a contract deployed in NeoFS mainchain.
NeoFSID contract is a contract deployed in NeoFS sidechain.
NeoFSID contract is a contract deployed in NeoFS sidechain.
Netmap contract is a contract deployed in NeoFS sidechain.
Netmap contract is a contract deployed in NeoFS sidechain.
Package nns contains non-divisible non-fungible NEP11-compatible token implementation.
Package nns contains non-divisible non-fungible NEP11-compatible token implementation.
Processing contract is a contract deployed in NeoFS mainchain.
Processing contract is a contract deployed in NeoFS mainchain.
Proxy contract is a contract deployed in NeoFS sidechain.
Proxy contract is a contract deployed in NeoFS sidechain.
Reputation contract is a contract deployed in NeoFS sidechain.
Reputation contract is a contract deployed in NeoFS sidechain.
scripts
Subnet contract is a contract deployed in NeoFS sidechain.
Subnet contract is a contract deployed in NeoFS sidechain.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL