Commit graph

238 commits

Author SHA1 Message Date
Evgenii Stratonikov
6a6d377259 [#137] tests: implement contract testing framework
Create simple running blockchain node with a single validator and
test both contract deployment and method invocations.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-05 10:01:27 +03:00
Evgenii Stratonikov
c7b46730a0 [#137] go.mod: update neo-go to v0.97.2
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-05 10:01:27 +03:00
Evgenii Stratonikov
555d4b8c04 [#137] nns: remove unused function
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-05 10:01:27 +03:00
Denis Kirillov
e136e63be2 [#125] Add migration
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2021-10-01 12:50:26 +03:00
Denis Kirillov
4a805dba43 [#125] Refactoring
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2021-10-01 12:50:26 +03:00
Denis Kirillov
2a4fc45c25 [#125] Add soa record type
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2021-10-01 12:50:26 +03:00
Denis Kirillov
b412909f40 [#125] Support multiple records of the same type
Signed-off-by: Denis Kirillov <denis@nspcc.ru>
2021-10-01 12:50:26 +03:00
Evgenii Stratonikov
5be532cf57 nns: remove migration in _deploy
No longer needed, see 978a43cec.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-09-30 21:03:09 +03:00
Alex Vanin
887512f526 Release v0.11.0 - Mungapdo (문갑도, 文甲島)
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-22 19:01:25 +03:00
Alex Vanin
6d0c5d110c [#107] Remove contract owner argument at contract deploy
Contract owner entity does exist anymore. Contract migration
now managed by side chain committee which are Alphabet nodes of
the Inner Ring.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-22 11:06:48 +03:00
Alex Vanin
378e69c015 [#107] common: Check committee witness for contract update
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-22 11:06:48 +03:00
Alex Vanin
edd4864e39 [#130] Panic at contract update failures
There is no practical cases not to panic at contract
update routine.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-22 09:54:52 +03:00
Alex Vanin
b555e200f4 [#128] Rename migrate methods to update
Neo Legacy used migration mechanism to update contracts.
N3 provides update method in native management contract.
Therefore, it makes sense to rename `Migrate` to `Update`.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-21 12:28:35 +03:00
Alex Vanin
b45a4162b4 [#121] container: Reword panic messages for better error wrapping
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-21 09:57:47 +03:00
Alex Vanin
ea89844033 [#121] container: Catch non-existent container owner case
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-21 09:57:47 +03:00
Alex Vanin
cb385c920f [#121] container: Do not fail on deleting non-existent container
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-09-21 09:57:47 +03:00
Evgenii Stratonikov
b2f6fb641a nns: provide AllowCall to management.Update
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-09-20 20:08:11 +03:00
Evgenii Stratonikov
978a43cec2 nns: migrate data from the old version
The old contract was compiled in a such way that `Update` used
all flags except `AllowCall`. Because of this it is impossible to
calculate the key of any record as it requires `Crypto` native contract.
Thus we iterate over all records and transform them into the
serialized representation (`std.Serialize` doesn't work either).
The `Name` field in the resulting structure is empty but this is not a
big deal, `getRecord` continues to work.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-09-20 20:08:11 +03:00
Evgenii Stratonikov
effa9b3863 nns: update to the latest version
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-09-20 20:08:11 +03:00
Evgenii Stratonikov
e779f436b2 Makefile: allow target for creating release archive
It contains only *.nef and *.json files.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-08-23 14:04:09 +03:00
Alex Vanin
f664595001 Release v0.10.1
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-29 15:40:05 +03:00
Evgenii Stratonikov
781de7fe0d neofs: provide default configuration in _deploy
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-07-29 15:14:57 +03:00
Evgenii Stratonikov
f840afb4cc netmap: provide default configuration in _deploy
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-07-29 15:14:57 +03:00
Alex Vanin
8bd25230fa [#118] *: Encode semver in version number
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-29 15:01:50 +03:00
Alex Vanin
a10f470311 Release v0.10.0 - Wando 완도(莞島)
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-23 14:08:09 +03:00
Alex Vanin
26d5773c10 [#114] Update README for v0.10.0 release
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-23 14:08:09 +03:00
Alex Vanin
60c073f5aa [#114] Update neo-go to v0.96.0
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-23 14:08:09 +03:00
Alex Vanin
6633ec108b [#113] Makefile: Fix after NNS contract introduction
Without -o flag neo-go compiles contracts into
`out.nef` file in the repository root.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 16:23:00 +03:00
Alex Vanin
c7ed05cc2e [#112] Remove to v0.9.2 migration code
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 15:03:40 +03:00
Alex Vanin
9840f29372 [#105] netmap: Add docs
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
d38a076920 [#105] neofs: Add docs
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
47af5e3f9c [#105] neofsid: Add docs
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
a23b56fff9 [#105] reputation: Add docs
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
18cc26f8c4 [#105] proxy: Add docs
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
c5ac475d32 [#105] processing: Add docs
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
726e7995fc [#105] container: Add docs
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
a1a04f8a87 [#105] balance: Add docs and fix naming
`CreateToken` method should not be public.
Fixed notification field names in `Mint` and `Burn`.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
f21c439e9c [#105] audit: Add docs
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
2a6a46d462 [#105] alphabet: Add docs
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
b6b3f17cd1 [#105] *: Add doc.go files for each contract
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Alex Vanin
8b7d08cb08 [#105] *: Remove contract from package names
`contract` postfix is redundant and makes autogenerated
docs looks ugly.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 14:59:05 +03:00
Evgenii Stratonikov
25a6b00cb9 nns: add implementation from neo-go
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-07-22 14:46:29 +03:00
Evgenii Stratonikov
0db7c4b1cb Makefile: provide directory to contract compile
Allow to divide contract in multiple files.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-07-22 14:46:29 +03:00
Alex Vanin
787bd3b63c [#110] netmap: Store block number of last epoch
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-22 11:08:19 +03:00
Pavel Karpy
5a95c8e3cf [#109] alphabet: Do not check proxy len if notary disabled
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-07-21 18:36:44 +03:00
Pavel Karpy
a0db77247e [#109] alphabet: Do not emit GAS to proxy if notary disabled
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-07-21 18:36:44 +03:00
Alex Vanin
4d648431d6 Release v0.9.2
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-01 20:42:29 +03:00
Alex Vanin
34d966af55 Add NeoFS API compatibility in README
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-01 20:42:29 +03:00
Alex Vanin
f6a91140e5 [#100] reputation: Use full scope in migration
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-01 20:42:29 +03:00
Alex Vanin
12889ac87e [#102] container: Migrate container estimation storage
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-01 17:58:55 +03:00