Evgenii Stratonikov
6c805c1b4e
Move from nspcc-dev to TrueCloudLab
...
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-12-13 11:12:48 +03:00
Evgenii Stratonikov
8ca71d22b2
*: goimports -w
...
Signed-off-by: Evgenii Stratonikov <evgeniy@morphbits.ru>
2022-12-13 11:12:48 +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
Elizaveta Chichindaeva
335b04d9a6
[ #240 ] English Check
...
Signed-off-by: Elizaveta Chichindaeva <elizaveta@nspcc.ru>
2022-04-26 23:22:06 +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
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
b0872bb54c
*: remove update migration code
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-02-07 17:49:07 +03:00
Evgenii Stratonikov
ce391b108d
[ #209 ] *: use current block index in GetDesignatedByRole
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-11 11:57:00 +03:00
Evgenii Stratonikov
b8d2569f4d
[ #208 ] neofs: delete old OwnerKey
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-11 11:55:04 +03:00
Evgenii Stratonikov
d9bfe32847
[ #208 ] neofs: drop version check
...
Should be restored after mainnet update.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2022-01-11 11:55:04 +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
Pavel Karpy
53a6b198d9
[ #184 ] *: Cast to struct `iterator.Value() k/v pair
...
Signed-off-by: Pavel Karpy <carpawell@nspcc.ru>
2021-12-02 13:09:50 +03:00
Pavel Karpy
a2f5f7a74a
[ #184 ] *: Change panic
to Log
+ABORT
in OnNEP17Payment
...
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
Evgenii Stratonikov
b2559857f6
[ #101 ] neofs: allow to register multiple candidates per block
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-11-30 16:24:23 +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
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
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
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
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
d38a076920
[ #105 ] neofs: 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
af21f33657
[ #100 ] *: Use full scope in migration
...
As soon as migration required changes in memory, we
need bigger scope. Otherwise in requires two step migration
which is unpleasant and annoying.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-07-01 14:13:36 +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
2e2eb15729
[ #88 ] *: Provide data in migrate method of the contracts
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-06-03 14:09:40 +03:00
Evgenii Stratonikov
db2b1be746
[ #79 ] Panic instead of returning bool value
...
There is a number of contracts which return only `true` value.
Also handling `FAULT` on the client is easier then also checking return
value.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-06-01 12:10:28 +03:00
Evgenii Stratonikov
27f5944f30
[ #71 ] neofs: remove deposit
method
...
Everything can be implemented in `OnNEP17Payment` directly.
In case of 0 amount, exception is raised instead of returning `false`
value.
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-05-19 11:54:14 +03:00
Evgenii Stratonikov
dd98bee590
[ #72 ] Replace Init()
methods with _deploy
...
Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-05-12 16:56:52 +03:00
Alex Vanin
e4ba936f50
[ #74 ] Log notary disabled flag at init
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-05-05 12:27:24 +03:00
Alex Vanin
9cc57dcdf8
[ #74 ] neofs: Support notary disabled work flow
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-05-05 12:27:24 +03:00
Alex Vanin
622a83e014
[ #74 ] Add notary disabled option to contracts
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-05-05 12:27:24 +03:00
Alex Vanin
5372329d49
[ #74 ] neofs: Pay withdraw fee to processing contract
...
Processing contracts pays for cheque that transfer
assets back to the user, so user should transfer
some fee to this contract.
Withdraw fee defined in NeoFS global configuration.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-05-05 12:27:24 +03:00
Alex Vanin
e850d4fc78
[ #74 ] neofs: Remove unused code
...
All ballots and voting methods are gone. Multi signature
checks are used in all contracts.
Default global config values are also removed. Configuration
must be provided by initialization script.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-05-05 12:27:24 +03:00
Alex Vanin
086b4c632c
[ #74 ] neofs: Check alphabet multi signature and don't use ballots
...
Ballots are inefficient to collect invocations of contract methods.
Instead contract can check multi signature collected outside of the
contract, e.g. with notary service.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-05-05 12:27:24 +03:00
Alex Vanin
be6c280032
[ #74 ] neofs: Add AlphabetAddress
method
...
This method returns multi signature address of alphabet
nodes in NeoFS contract.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-05-05 12:27:24 +03:00
Alex Vanin
ef0d6f02fd
[ #73 ] neofs: Do not store cheques
...
Cheques increase execution costs but provide which is
quite important for main chain execution.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-04-19 17:56:37 +03:00
Alex Vanin
23f5f1e0e7
[ #63 ] Fix threshold number calculation
...
`x*2/3` is not equal to `x/3*2` with integers.
The only correct way to calculate threshold is
the first one.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-25 21:22:27 +03:00
Alex Vanin
80eadb4e5e
[ #58 ] neofs: Allow alphabet nodes to remove candidates
...
When alphabet nodes update inner ring list with new candidate,
then they remove it from neofs contract.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-25 18:19:47 +03:00
Alex Vanin
e74d8bf48d
[ #58 ] neofs: Store alphabet keys instead of inner ring
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-25 18:19:47 +03:00
Alex Vanin
d5e230e031
[ #58 ] neofs: Do not limit initial inner ring key amount
...
Environment with single inner ring node is legal.
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-25 18:19:47 +03:00
Alex Vanin
5e28938286
[ #62 ] Remove methods with notifications from safe list
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-22 18:10:42 +03:00
Alex Vanin
97a5e27403
[ #59 ] Update to pre-released version of neo-go v0.94.0
...
Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-03-17 11:23:11 +03:00