Commit Graph

94 Commits (0aa7fd41890b7c7d12cbf0aba8ad07120c3a9600)

Author SHA1 Message Date
Alex Vanin 2b624a38cc [#231] Remove previous contract update code
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-23 18:48:14 +03:00
Evgenii Stratonikov 03afb80a14 [#222] *: Replace IRNode with raw public keys
Only leave `IRNode` in neofs contract because it is public.
The newly added conversion in `AlphabetList` shouldn't be a problem
because this is a read method.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-23 11:33:27 +03:00
Evgenii Stratonikov 676daa1782 [#215] container: remove old estimations when adding new ones
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-21 10:39:30 +03:00
Evgenii Stratonikov 7bca6bf782 [#215] container/tests: add tests for container size estimation
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-21 10:39:30 +03:00
Evgenii Stratonikov 72da098876 [#215] container: remove old estimations without intermediate array
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-21 10:39:30 +03:00
Evgenii Stratonikov 74cc2d0aea [#204] *: check contract version during update
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-11 11:55:04 +03:00
Evgenii Stratonikov 1944a4332b [#202] *: remove owner from contract storage
It is no longer used and should've be removed on update.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-12-28 13:32:28 +03:00
Alex Vanin 9350d027cf [#194] container: Register TLD with contract as owner
When notary disabled, there is no committee multi signature
for named container creation. Therefore, zone owner should be
the contract itself.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-12-08 18:19:07 +03:00
Alex Vanin 51cf10a734 Remove redundant updates
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-12-07 15:57:31 +03:00
Pavel Karpy e6a33e8193 [#185] *: Use `storage.DeserializeValues` flag for search
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy 23d9799e51 [#185] *: Use neo-go's `interop` constants instead of local
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy f78a0e32b8 [#185] *: Cast args of `_deploy` method to struct
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy 27c97237cf [#184] *: Delete method prefix from `runtime.Log()`
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 12:14:19 +03:00
Pavel Karpy 2ee2344e5f [#184] *: Move all panics on witness checks in `common`
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 12:14:19 +03:00
Pavel Karpy ac89694eeb [#184] *: Remove method prefix in panic messages
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 12:14:19 +03:00
Pavel Karpy 4961e9b436 [#186] *: Add `// V2 format` comment
Add `// V2 format` comment to V2 specific code
in contracts. In `subnet` contract change comment
to sync with other.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-11-30 11:51:01 +03:00
Evgenii Stratonikov f0868c89fd [#181] container: setup nns keys during update
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-26 11:07:38 +03:00
Evgenii Stratonikov da7f7eb88f [#164] *: provide version as the last argument
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-19 13:38:15 +03:00
Evgenii Stratonikov e0dbd07f21 [#139] nns: replace root with TLD
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-26 14:00:28 +03:00
Evgenii Stratonikov 2cb10edfd2 [#142] container: do not fail when deleting missing container
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-25 18:10:47 +03:00
Evgenii Stratonikov 6bd088aa9f [#142] container: panic on missing container
Return more descriptive error message for a user.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-25 18:10:47 +03:00
Evgenii Stratonikov 8c8e4a6d85 [#156] container: fix domain owner check
Container contract owns all registered domains.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-22 09:08:13 +03:00
Evgenii Stratonikov c957b9ca69 [#151] container: require additional fee for nice-name
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 13:11:53 +03:00
Evgenii Stratonikov 7fe7188e7d [#150] container: allow only alphabet calls in `SetEACL`
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 11:51:16 +03:00
Evgenii Stratonikov 0ef906fb03 [#150] container: allow only alphabet calls in `Delete`
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 11:51:16 +03:00
Evgenii Stratonikov e5c5cc30c0 [#150] container: make config key public
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 11:51:16 +03:00
Evgenii Stratonikov fef6a6cb36 [#150] container: check domain owner in `Put`
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 11:51:16 +03:00
Evgenii Stratonikov a7601334f7 [#150] container: allow only alphabet calls in `Put`
For notary-enabled environment we expect `put` to be signed by alphabet.
Also group notary-disabled logic inside a single if and
add tests for balance checks.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-19 11:51:16 +03:00
Evgenii Stratonikov 18ff4ea116 container: register NNS root on update
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-08 14:27:22 +03:00
Evgenii Stratonikov 79ca1a4451 [#135] container: remove nice names on deletion
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-07 12:25:19 +03:00
Evgenii Stratonikov e4e306c63b [#135] container: allow to register nice names in NNS
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-10-07 12:25:19 +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 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
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 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 726e7995fc [#105] container: 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
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
Alex Vanin 711962924f [#102] container: Make `PutContainerSize` stable for simultaneous invocations in one block
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-01 17:58:55 +03:00
Alex Vanin 2402768eae [#102] container: Migrate container listing storage
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-01 17:58:55 +03:00
Alex Vanin 98c5fd25c3 [#102] container: Make `Put` and `Delete` stable for simultaneous invocations in one block
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-01 17:58:55 +03:00
Alex Vanin 01b12bcd56 [#96] *: Specify permissions in contract manifests
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-06-24 16:16:02 +03:00
Alex Vanin 14382d701c [#94] *: Fix parameter types in notification manifest
neo-go v0.95.2+ has strict notification type checker
enabled by default.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-06-17 16:44:00 +03:00
Alex Vanin a2c985ae4b [#92] container: Add balance check before new container notification
Balance check at container.Put command will drop some invalid
transactions from the side chain network before inner ring
approval.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-06-15 17:01:42 +03:00
Alex Vanin cb2559f590 [#92] container: Remove migration code
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-06-15 17:01:42 +03:00