neofs-contract

module
v0.15.1 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 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 main chain and side chain.

Main chain contracts:

  • neofs
  • processing

Side chain 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 side chain.
Alphabet contract is a contract deployed in NeoFS side chain.
Audit contract is a contract deployed in NeoFS side chain.
Audit contract is a contract deployed in NeoFS side chain.
Balance contract is a contract deployed in NeoFS side chain.
Balance contract is a contract deployed in NeoFS side chain.
Container contract is a contract deployed in NeoFS side chain.
Container contract is a contract deployed in NeoFS side chain.
NeoFS contract is a contract deployed in NeoFS main chain.
NeoFS contract is a contract deployed in NeoFS main chain.
NeoFSID contract is a contract deployed in NeoFS side chain.
NeoFSID contract is a contract deployed in NeoFS side chain.
Netmap contract is a contract deployed in NeoFS side chain.
Netmap contract is a contract deployed in NeoFS side chain.
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 main chain.
Processing contract is a contract deployed in NeoFS main chain.
Proxy contract is a contract deployed in NeoFS side chain.
Proxy contract is a contract deployed in NeoFS side chain.
Reputation contract is a contract deployed in NeoFS side chain.
Reputation contract is a contract deployed in NeoFS side chain.
scripts
Subnet contract is a contract deployed in NeoFS side chain.
Subnet contract is a contract deployed in NeoFS side chain.

Jump to

Keyboard shortcuts

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