Roman Khimov
5fbb60a9ed
cli/wallet: request candidate registration price
...
Hardcoding 1000 is wrong. Inspired by neo-project/neo-node#788 .
2021-07-21 12:26:35 +03:00
Roman Khimov
19717dd9a8
slice: introduce common Copy helper
...
It's a bit more convenient to use.
2021-07-19 22:57:55 +03:00
Roman Khimov
588f3fbbd3
state: drop State from NEOBalance and NEP17Balance
...
We're in the `state` package already.
2021-07-19 22:01:07 +03:00
Roman Khimov
41e0218555
cli/wallet: add sysgas to transfer functions
...
It might also be useful there.
2021-07-02 12:34:18 +03:00
Anna Shaleva
67fe2a82bc
cli: remove Can't find matching token in the wallet
warning
2021-06-17 11:29:16 +03:00
Anna Shaleva
50296975e2
crypto: allow to provide non-default scrypt parameters
2021-06-11 15:22:28 +03:00
Anna Shaleva
c2b5459646
cli: add wallet candidate getstate
2021-05-31 11:18:59 +03:00
Anna Shaleva
9340a70aa8
cli: add description to vote
command on how to unvote
2021-05-28 15:15:37 +03:00
Roman Khimov
c4e084b0d8
*: fix whitespace errors
...
leading/trailing newlines
2021-05-12 22:51:41 +03:00
Roman Khimov
0500c8f9d7
cli/wallet: fix error handling
...
cli/wallet/wallet.go:527:19: Error return value of `cli.NewExitError` is not checked (errcheck)
cli.NewExitError("valid account address must be provided", 1)
2021-05-12 20:19:24 +03:00
Roman Khimov
ec50bb4041
cli/wallet: fix error handling
...
ineffectual assignment to err (ineffassign)
`err` is shadowed at `tx, err = c.CreateNEP11TransferTx()` line.
2021-05-12 19:34:12 +03:00
Anna Shaleva
d0c64347ab
*: add data
to NEP11 Transfer
2021-05-05 19:44:29 +03:00
Anna Shaleva
f61ab6bd11
cli: add nep11 properties
command
2021-04-30 16:23:06 +03:00
Anna Shaleva
ba7ebc2390
cli: add nep11 [tokens | tokensOf | ownerOf]
commands
2021-04-30 16:23:06 +03:00
Anna Shaleva
4e55b1a9ed
cli: add nep11 ownerOf
command
2021-04-30 16:23:06 +03:00
Anna Shaleva
946e940ce0
cli: adjust nep17 transfer
command usage text
...
Token name or hash can be used.
2021-04-30 16:23:06 +03:00
Anna Shaleva
7ea15f02c6
cli: add nep11 transfer
command
2021-04-30 16:23:06 +03:00
Anna Shaleva
3eefda7f1a
cli: add nep11 balance
command
2021-04-30 16:23:06 +03:00
Anna Shaleva
3742e38399
cli: add nep11 remove
command
2021-04-30 16:23:06 +03:00
Anna Shaleva
5fdb8e2a01
cli: add nep11 info
command
2021-04-30 16:23:06 +03:00
Anna Shaleva
ba8b0fd7b0
cli: reuse existing token flag for nep17-related commands
2021-04-30 16:23:06 +03:00
Anna Shaleva
a61a3d5ceb
cli: add nep11 import
command
2021-04-30 16:23:06 +03:00
Anna Shaleva
4b8d814ee8
cli: move common NEP17 flags to package variables
...
These flags will be reused for NEP11 commands.
2021-04-30 16:23:06 +03:00
Anna Shaleva
40ae78cb88
wallet: add Standard
field to Token
...
We need to distinguish NEP11 and NEP17 tokens preesnted in the wallet.
2021-04-30 15:58:27 +03:00
Anna Shaleva
d98abd75d2
cli: refactor handleVote method
...
Reuse existing RPC client method for transaction sending.
2021-04-23 10:45:15 +03:00
Anna Shaleva
e43ab642d1
cli: refactor handleCandidate method
...
Reuse existing RPC client method for transaction sending.
2021-04-23 10:45:15 +03:00
Anna Shaleva
14c2d7d25a
cli: allow to provide cosigners for 'wallet nep17 multitransfer'
2021-04-23 10:45:15 +03:00
Anna Shaleva
f848783d5d
cli: allow to provide cosigners for 'wallet nep17 transfer'
2021-04-23 10:45:15 +03:00
Anna Shaleva
49c35dec20
rpc: allow to provide cosigners for NEP17-transfer-related commands
2021-04-23 10:29:40 +03:00
Anna Shaleva
94316fa36d
cli: move GetDataFromContext and ParseParams to a helpers
package
2021-04-23 10:26:09 +03:00
Anna Shaleva
d12ae0998f
cli: return numWordsRead from GetDataFromContext
...
It's needed when we have extra args after the 'data' argument. Then
these args are started right from numWordsRead offset.
2021-04-23 10:23:06 +03:00
Anna Shaleva
70fc78b768
cli: update usage text for 'wallet sign' command
...
RPC endpoint can be provided.
2021-04-21 15:51:19 +03:00
Anna Shaleva
a348347fe8
cli: refactor readAccountInfo method
...
It doesn't require binwriter.
2021-04-21 15:51:19 +03:00
Anna Shaleva
2daae43eaf
cli: add optional 'name' argument to 'wallet import-deployed' command
...
If the provided WIF is encrypted then we have no way to set the
account name. Fixed.
2021-04-21 15:51:19 +03:00
Anna Shaleva
0ccced2274
cli: add usage description to 'wallet import' command
2021-04-21 15:51:19 +03:00
Anna Shaleva
08e88ce5b2
cli: handle 'name' named argument in 'wallet import-multisig'
...
If the provided WIF is encrypted, then we won't get account name from
readAccountInfo.
2021-04-21 15:51:19 +03:00
Anna Shaleva
6af2f3fdec
cli: use AddressFlag for 'wallet remove' command
2021-04-21 15:51:13 +03:00
Anna Shaleva
42bfd413e3
cli: fix UsageText for 'wallet import-deployed' command
2021-04-19 16:23:53 +03:00
Roman Khimov
8f14c61c34
Merge pull request #1906 from nspcc-dev/cli/transfer_param
...
cli: allow to pass 'data' for nep17 transfer command
2021-04-19 10:43:42 +03:00
Anna Shaleva
db868f033e
cli: allow to provide data
for nep17 transfer commands
2021-04-19 10:20:29 +03:00
Anna Shaleva
ced90e0510
cli: use AddressFlag for nep17 import
2021-04-16 15:18:33 +03:00
Anna Shaleva
92c6708fa0
cli: use AddressFlag for import-deployed
2021-04-16 15:15:25 +03:00
Anna Shaleva
1d3a297a6b
rpc: add Data field to NEP17 TransferTarget
...
It's a part of transfer, thus it should be passed along with the other
transfer parameters.
2021-04-16 13:54:23 +03:00
Anna Shaleva
87f950a719
cli: format error message
2021-04-16 12:41:02 +03:00
Anna Shaleva
4edc62148b
cli: use AddressFlag for dump-keys
2021-04-16 12:41:42 +03:00
Anna Shaleva
90b054afd0
cli: check address flag is set for validator-related commands
2021-04-16 12:41:02 +03:00
Anna Shaleva
ff2b051646
cli: use AddressFlag for nep17-related commands
2021-04-16 12:41:02 +03:00
Anna Shaleva
2dcc729c47
cli: use AddressFlag for wallet sign
2021-04-16 12:40:01 +03:00
Roman Khimov
d314f82db3
transaction: drop Network from Transaction
...
We only need it when signing/verifying.
2021-03-26 13:45:18 +03:00
Roman Khimov
19a23a36e4
Merge pull request #1807 from nspcc-dev/feature/walletsign
...
cli: allow to sign dumped transaction by several non-multisig signers
2021-03-10 14:13:20 +03:00
Evgeniy Stratonikov
09af8b4fcb
cli: allow to dump wallet public keys
2021-03-10 12:37:15 +03:00
Evgeniy Stratonikov
106c27782e
cli/wallet: allow to cosign with a contract
...
Contracts have empty verification script and their hash is
calculated differently.
2021-03-09 15:45:02 +03:00
Evgeniy Stratonikov
8a4b97171a
cli/wallet: fail if signer is missing in tx
2021-03-09 15:45:02 +03:00
Evgeniy Stratonikov
7553c1ac96
cli/wallet: process signers in order
2021-03-09 15:45:02 +03:00
Evgeniy Stratonikov
b9136dbfc0
smartcontract: use hash in GetWitness()
...
All necessary info must already be in context.
2021-03-09 15:45:02 +03:00
Evgeniy Stratonikov
8ef7dd320c
cli: rename multisig sign
to wallet sign
2021-03-09 15:45:02 +03:00
Anna Shaleva
6c0faa4ea3
rpc: provide cosigners accounts to CreateTxFromScript
...
We need to define network fee for each of cosigners, and the only way to
do it is to access the cosigner's script.
2021-03-04 10:37:35 +03:00
Anna Shaleva
b1b9a8cf66
rpc: refactor CreateTxFromScript signature
...
Make cosigners non-variadic.
2021-03-03 13:42:15 +03:00
Evgeniy Stratonikov
cbda20aca3
core: fix native method call flags
...
Replace `WriteStates` with `States`.
Follow neo-project/neo#2339.
Close #1775 .
Related #1725 .
2021-02-25 18:07:33 +03:00
Evgeniy Stratonikov
b8024dbfa8
cli: support Uint160 hashes with 0x prefix
2021-02-18 14:38:50 +03:00
Anna Shaleva
7896ef0640
rpc: allow client to send nep17 transfer with data
2021-02-11 17:11:36 +03:00
Evgeniy Stratonikov
f6176b30f2
cli: support escape codes
2021-02-11 16:06:11 +03:00
Evgeniy Stratonikov
dd1e2cefe4
core,cli: disallow verify methods with non-bool returns
2021-01-27 12:51:47 +03:00
Evgeniy Stratonikov
73f888f02e
core: allow to overload contract methods
...
Multiple methods with different parameter count can co-exist.
2021-01-27 12:51:07 +03:00
Roman Khimov
476cbbebdc
native: make registering as a candidate cost more
...
Follow neo-project/neo#2252 .
2021-01-21 23:02:59 +03:00
Evgenii Stratonikov
1c0c331e25
core: update System.Contract.Call
syscall
...
1. Remove `System.Contract.CallEx`.
2. Extend number of parameters.
3. Add return value count to `VM.Context`.
2021-01-14 18:23:36 +03:00
Evgeniy Stratonikov
0b26b46234
state: store NEF instead of script for contract
...
NEFs for native contracts are set statically, thus
field values are taken from the reference implementation.
2021-01-13 15:34:10 +03:00
Evgenii Stratonikov
d4723d8e81
cli: use default adress in transfer
2021-01-12 11:14:40 +03:00
Evgenii Stratonikov
d737915843
cli: output nep17 balance using decimals
...
Also fix balance tests to match full line, not just prefix.
2021-01-11 15:02:24 +03:00
Roman Khimov
cf8cf93e7a
native: change contract names, move them to separate package
...
Follow neo-project/neo#2138 and make RPC client's GetNativeContractHash
case-sensitive.
2020-12-14 15:24:15 +03:00
Roman Khimov
e3dfb5d165
cli/wallet: swap name/address checks for token identification
...
Address identification must have a priority, another token can have this
address in its name, but when there is a hash specified we should take the one
with proper hash.
2020-12-14 15:24:15 +03:00
Roman Khimov
8e2df8902c
cli/wallet: don't mangle token symbol in output
...
It's important to show it as is because it identifies token.
2020-12-14 15:24:15 +03:00
Evgenii Stratonikov
56b23b718d
fixedn: allow to parse big decimals
2020-12-09 11:19:25 +03:00
Evgenii Stratonikov
e4c3339c91
util: move Fixed8
to encoding/fixedn package
2020-12-09 11:18:18 +03:00
Evgenii Stratonikov
cd5219086a
wallet: export NewAccountFromPrivateKey()
...
Don't perform back-and-forth conversion, don't handle error
which never occur.
2020-12-04 12:45:53 +03:00
Evgenii Stratonikov
239a8c3de7
cli: fix wallet convert
and add tests
...
Close #1589 .
2020-12-04 12:45:53 +03:00
Evgenii Stratonikov
8be9158e2f
cli: remove explicit client.Init()
calls
...
This is done inside `GetRPCClient()`.
2020-12-03 17:57:18 +03:00
Roman Khimov
1cf1fe5d74
*: introduce stable contract hashes
...
Follow neo-project/neo#2044 .
2020-11-27 21:47:08 +03:00
Evgenii Stratonikov
31eca342eb
*: replace all NEP5 occurences to NEP17
2020-11-24 13:08:24 +03:00
Anna Shaleva
860d2ca7a7
cli: prettify transfer
error
...
Let the user know what's wrong when cannot find suitable token.
2020-11-13 12:43:56 +03:00
Anna Shaleva
2f9d64821f
cli: add ExitError where needed
2020-11-05 10:37:06 +03:00
Anna Shaleva
b8a88f9378
rpc: allow to use address, id or name instead of scripthash [Client]
...
... for getcontractstate RPC client method.
2020-11-03 17:58:24 +03:00
Evgenii Stratonikov
897c9198f8
cli: allow to send multisig deploy/invoke tx
...
It allows to invoke native contracts as committee
from CLI in privnet, e.g. to set new oracle nodes.
Also don't require `out` flag in `multisig sign`
if tx is to be pushed.
2020-10-07 11:48:06 +03:00
Evgenii Stratonikov
d50a14359a
cli/wallet: save tx only if --out
was provided
...
Also don't print tx hash twice.
2020-10-07 10:04:19 +03:00
Evgenii Stratonikov
b2a3a0851e
emit: accept multiple opcodes in Opcode()
2020-10-06 18:03:25 +03:00
Roman Khimov
eff5f10579
cli: use '--address' instead of '--addr' and allow '-a' everywhere
2020-09-29 12:48:22 +03:00
Roman Khimov
fdcc72dad0
cli/wallet: make 'addr' optional for NEP5 balances query
...
Iterate over all accounts by default.
2020-09-28 18:15:51 +03:00
Roman Khimov
aba9c9c0a8
cli/wallet: print token symbol and name in balance output
...
Make it a bit more user-friendly.
2020-09-28 16:47:47 +03:00
Roman Khimov
c6a9e652b4
cli/wallet: improve token parameter help
2020-09-28 11:28:00 +03:00
Evgenii Stratonikov
40a24bad64
cli: add tests for wallet import-deployed
...
Fix bugs with import, allow to sign tx with contract.
2020-09-18 12:07:02 +03:00
Evgenii Stratonikov
583ef546f9
cli: add tests for wallet claim
...
Fix a NEO contract hash used in tx.
2020-09-18 12:07:02 +03:00
Evgenii Stratonikov
dff2ac1387
cli: add test for candidate register/unregister/vote
...
Also fix a bug with tx signing.
2020-09-18 12:07:02 +03:00
Evgenii Stratonikov
6e5a637da9
cli: add tests for multisig sign
...
This test is also a good example of how to
create and sign multisig transaction from scratch.
2020-09-18 12:07:02 +03:00
Evgenii Stratonikov
9817da7c4e
cli: add tests for nep5 import/remove
...
Also unify `remove` and `import` arguments.
2020-09-18 12:07:02 +03:00
Evgenii Stratonikov
075f353062
cli: add tests for nep5 multitransfer
...
Also fix a bug when token's hash was incorrectly processed.
2020-09-18 12:07:02 +03:00
Evgenii Stratonikov
5d7f177811
cli: add tests for wallet/account creation
2020-09-18 12:07:02 +03:00
Evgenii Stratonikov
0dda247719
cli: move input handling to a separate package
2020-09-18 12:05:31 +03:00
Evgenii Stratonikov
911be78cc7
cli: use Writer from app instead of Stdout
...
It is useful in tests.
2020-09-18 12:05:31 +03:00
Evgenii Stratonikov
cdfb2429f2
cli: allow to create accounts for deployed contracts
2020-08-27 11:32:55 +03:00
Evgenii Stratonikov
6bdaefcfa4
rpc/client: use CreateTxFromScript
where possible
...
There is substantial overlap between `CreateTxFromScript` and
`SignAndPushInvocationTx`. This commit refactors both of them
to reuse common code.
2020-08-18 11:24:48 +03:00