Commit graph

464 commits

Author SHA1 Message Date
Leonard Lyubich
d95bc53589 [#269] netmap: Return same type from reading methods
There is a need to return similar structure of information about the
storage nodes from the contract storage readers. In previous
implementation some methods didn't return node state which can differ
with the one encoded in the node's BLOB.

Define `Node` structure of the information about the storage nodes
recorded in the contract storage. Return `[]Node` from all related
methods.

Also improve docs of touched contract methods.

Signed-off-by: Leonard Lyubich <ctulhurider@gmail.com>
2022-09-30 17:31:58 +04:00
anastasia prasolova
4d487a069e [nspcc-dev/nspcc-infra#840]: Add DCO check
Signed-off-by: anastasia prasolova <anastasia@nspcc.ru>
2022-09-22 20:10:51 +03:00
Evgenii Stratonikov
9785f9b2c7 [#271] netmap: Allow to move node back to Online state
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-09-21 07:29:44 +03:00
Evgenii Stratonikov
cb684994fc [#269] netmap: Support Maintenance node state
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-09-21 07:29:44 +03:00
Evgenii Stratonikov
2d0101033b [#270] netmap: Export NodeState type
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-09-21 07:29:44 +03:00
Anna Shaleva
70ae2c94e1 [#265] container: Adjust container-contract permissions
Remove "addRoot" method from the list of allowed methods, because
NNS doesn't have it since
4b86891d57.
2022-09-07 12:16:49 +03:00
Pavel Karpy
86157d801b [#264] make: Fix commit abbrev length in version
Make it uniform across all our repos.

Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2022-09-06 12:14:03 +03:00
Evgenii Stratonikov
b4fdd854b7 [#259] nns: Check admin in Renew
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-08-29 12:03:24 +03:00
Evgenii Stratonikov
5b5ff8cb33 [#261] nns: Set expiration time based on arguments
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-08-29 12:03:24 +03:00
Evgenii Stratonikov
bed1a88dee [#261] Release v0.15.5
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-08-23 12:29:47 +03:00
Evgenii Stratonikov
cb0d7179f4 [#261] go.mod: Update neo-go to v0.99.2
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-08-23 12:29:47 +03:00
73e2119180 [#255] Filter version tags for version calculation
Signed-off-by: anikeev-yadro <a.anikeev@yadro.com>
2022-08-12 16:30:02 +03:00
Evgenii Stratonikov
02c2ce3966 [#253] go.mod: Update neo-go to v0.99.1
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-07-28 20:53:02 +03:00
Evgenii Stratonikov
564f147ea1 [#252] Release v0.15.4
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-07-27 12:14:20 +03:00
Evgenii Stratonikov
927fec8cdc [#251] Release v0.15.3
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-07-22 14:25:54 +03:00
Evgenii Stratonikov
6e2ff648d9 [#251] go.mod: Update neo-go
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-07-22 14:25:54 +03:00
Evgenii Stratonikov
0b8e112ea3 [#250] Makefile: allow to build from the source archive
Close #249.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-07-18 13:01:52 +03:00
Evgenii Stratonikov
69b308e792 [#248] *: Fix integer types
When using contracts as a dependency, out-of-range `int` can cause
problems on 32-bit architectures. Contract byte-code hasn't changed.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-07-06 14:28:47 +03:00
Evgenii Stratonikov
a92ad8b8f0 [#246] Release v0.15.2
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-06-07 14:14:29 +03:00
Evgenii Stratonikov
53d9a24afa [#246] netmap: Remove outdated update logic
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-06-07 14:14:29 +03:00
Evgenii Stratonikov
fdc0ffcbb2 [#246] go.mod: Update neo-go to v0.99.0
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-06-07 14:14:29 +03:00
Evgenii Stratonikov
f1f2101dc6 [#242] container: allow to fetch total amount of countainers
There are 2 approaches:
1. Use `storage.Find` to enumerate all containers.
2. Store a counter by a separate key.

Here we implemented 1, because this method is readonly (thus GAS cost it
not a problem) and simpler to implement.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-05-24 13:31:18 +03:00
Elizaveta Chichindaeva
335b04d9a6 [#240] English Check
Signed-off-by: Elizaveta Chichindaeva <elizaveta@nspcc.ru>
2022-04-26 23:22:06 +03:00
Alex Vanin
c75315808b Release v0.15.1
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-04-13 15:43:24 +03:00
Evgenii Stratonikov
fd70f28b47 [#236] *: Notify user on success
Add notifications to:
- container put, delete, setEACL
- netmap addPeer, updateState

Because notifications are limited in size (currently arguments should be
less than 1024 bytes) provide only minimal information, such as entity
ID (container ID or node public key).

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-04-13 12:14:35 +03:00
Angira Kekteeva
0aa7fd4189 [#238] nns: Fix maxDomainNameFragmentLength
maxDomainNameFragmentLength means maximum length of label of domain name

A label may contain zero to 63 characters. The null label, of length
zero, is reserved for the root zone. The full domain name may not exceed
the length of 253 characters in its textual representation

Signed-off-by: Angira Kekteeva <kira@nspcc.ru>
2022-04-05 14:57:06 +03:00
Evgenii Stratonikov
4a0f0d7408 [#232] netmap: Allow to configure snapshot history size
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-29 09:44:38 +03:00
Evgenii Stratonikov
5fc7474447 [#232] *: Remove old update code
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-29 09:44:38 +03:00
Evgenii Stratonikov
33d5568511 [#234] *: Fix some lint issues
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-28 10:27:25 +03:00
Evgenii Stratonikov
fe5c470a08 [#234] go.mod: Update neo-go version
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-28 10:27:25 +03:00
Alex Vanin
12527e51ae Release v0.15.0 - Heuksando (흑산도, 黑山島)
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-23 18:48:14 +03:00
Alex Vanin
9ed3c538a0 [#231] Lower minimal contract version update to v0.14.0
Main chain NeoFS contract was not updated to v0.14.2. Current
contract version is v0.14.0 However, there is no functional
changes between v0.14.0 and v0.14.2. To avoid NeoFS contract
update, this commit lowers minimal contract version.

All other contracts have been updated to v0.14.2 and they are not
affected by this change.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-03-23 18:48:14 +03:00
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
e9cfe6194f [#222] netmap: Store public keys in _deploy
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-23 12:04:47 +03:00
Evgenii Stratonikov
1beee7eb0b [#228] common: Bump contract version
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-23 11:33:27 +03:00
Evgenii Stratonikov
aee1a5d77c [#222] common: Optimize RemoveVote
Use single `REMOVE` instead of multiple `APPEND` opcodes.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-23 11:33:27 +03:00
Evgenii Stratonikov
53795324dc [#222] neofs: Remove key argument from getNodes
We always use `alphabetKey`, it makes sense to use it directly.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-23 11:33:27 +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
01a7163d1e [#229] netmap: Improve UpdateState in notary-enabled environment
Require `UpdateState` to be called by both storage node and the alphabet
in notary-enabled environment, fail if only one of the signatures is present.
`UpdateStateIR` can be use for force updates by the alphabet.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-22 12:56:16 +03:00
Evgenii Stratonikov
624cc0f1c4 [#224] netmap: Increase snapshot history size to 10
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-21 18:57:43 +03:00
Evgenii Stratonikov
666e1d6d8d [#224] netmap: Add tests for NewEpoch
Ensure snapshots are handled properly.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-21 18:57:43 +03:00
Evgenii Stratonikov
9884f8e68f [#224] netmap: Refactor snapshot processing
Swap keys instead of unmarshaling/marshaling snapshot during `NewEpoch`.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-21 18:57:43 +03:00
Evgenii Stratonikov
f6766a144f [#225] netmap: Do not emit some events in notary-enabled mode
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-17 16:32:20 +03:00
Evgenii Stratonikov
a4f9d52cfc [#225] netmap: Rename Register to AddPeerIR
Similar to `UpdateState`/`UpdateStateIR` pair.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-17 16:32:20 +03:00
Evgenii Stratonikov
9662f9f4db [#225] netmap: Split UpdateState method for notary-enabled environment
Split methods similar to `AddPeer`/`Register` pair from b104a2ccbc .

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-03-17 16:32:20 +03:00
Alex Vanin
5758dadaa9 Release v0.14.2
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2022-02-07 19:08:48 +03:00
Evgenii Stratonikov
b0872bb54c *: remove update migration code
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-07 17:49:07 +03:00
Evgenii Stratonikov
74e4bbb6b9 [#196] nns: remove duplicate records in _deploy
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-07 16:08:14 +03:00
Evgenii Stratonikov
d48709fcbb go.mod: update neo-go version
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-03 15:32:03 +03:00
Evgenii Stratonikov
f530bdf721 Release v0.14.1
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-27 10:52:42 +03:00