Roman Khimov
3227de8050
Merge pull request #1785 from nspcc-dev/fix/compiler
...
Process `return` in inlined functions properly.
2021-03-01 14:27:33 +03:00
Evgeniy Stratonikov
7577bbef22
compiler: copy locals slice during inline
...
Consider function call `f(1, g(2, 3))` when
both `f` and `g` are inlined. If `f` contains some locals,
inlining `g` will replace them with it's another locals map,
because slices in Go reuse storage on `append`.
Thus scope needs to be copied.
2021-03-01 11:48:42 +03:00
Evgeniy Stratonikov
b66b853285
compiler: drop stack after inline
...
Some control-flow statements drop stack items, for example
`return` when it is used inside of `range` loop.
For inlined calls this `return` should drop only portion of stack
which belongs to inlined call.
2021-03-01 11:48:42 +03:00
Roman Khimov
347212c0c5
Merge pull request #1781 from nspcc-dev/ci-tests
...
github: add tests workflow
2021-03-01 11:34:26 +03:00
Anna Shaleva
552ab1f8fe
github: add tests workflow
2021-02-26 17:53:31 +03:00
Roman Khimov
50e330a9c8
Merge pull request #1773 from nspcc-dev/detailed-rpc-error
...
rpc: detalize `submit*` RPC validation error
2021-02-26 17:03:18 +03:00
Roman Khimov
d33291c377
Merge pull request #1780 from nspcc-dev/ci-cache-fix
...
github: fix go mod cache
2021-02-26 14:04:57 +03:00
Roman Khimov
b4dfb4691d
Merge pull request #1778 from nspcc-dev/ci-fix-latest
...
github: publish as 'latest' only master releases
2021-02-26 13:38:46 +03:00
Anna Shaleva
a26791ea5a
github: fix go mod cache
...
* Fix cache folder
* Verbose `go mod download`
2021-02-26 12:10:10 +03:00
Anna Shaleva
2845d168ea
docs: update README
2021-02-26 11:02:12 +03:00
Anna Shaleva
2fbbadeb56
rpc: detalize submit*
RPC validation error
...
These changes do not break the compatibility with the C# node response.
It is useful for the end-user to be aware of the failed validation reason.
Also, the `cause` will be displayed at the running node log.
2021-02-25 19:18:57 +03:00
Roman Khimov
f264996f74
Merge pull request #1777 from nspcc-dev/fix/vote
...
core: fix native method call flags
2021-02-25 18:55:10 +03:00
Anna Shaleva
950041c7a5
Makefile: remove push-to-registry target
...
It is unused and outdated.
2021-02-25 18:41:01 +03:00
Anna Shaleva
dc610cdb7c
github: tag as 'latest' only released images
2021-02-25 18:38:59 +03:00
Evgeniy Stratonikov
663afbe4df
core: check call flags in LoadToken
...
Follow neo-project/neo#2292 .
2021-02-25 18:14:52 +03:00
Evgeniy Stratonikov
4db5ef05f8
core: fix call flags for System.Contract.Call
...
Follow neo-project/neo#2292 .
2021-02-25 18:12:38 +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
Roman Khimov
345d6f059e
Merge pull request #1776 from nspcc-dev/ci-manual
...
github: allow to publish image from any ref
2021-02-25 17:02:13 +03:00
Anna Shaleva
d628b6a33d
github: allow to publish image from any ref
...
It will help us to publish previous releases or intermediate refs.
2021-02-25 16:52:25 +03:00
Roman Khimov
549596bc1f
Merge pull request #1774 from nspcc-dev/fix/compiler
...
Allow to use inlined functions during global var init
2021-02-25 16:16:21 +03:00
Roman Khimov
7cf22d00dd
Merge pull request #1769 from nspcc-dev/ci-dockerhub
...
github: setup github workflow to publish to DockerHub
2021-02-25 15:22:20 +03:00
Evgeniy Stratonikov
0a4ff9d3e4
compiler: allow to use inlined functions to init globals
2021-02-25 15:12:16 +03:00
Evgeniy Stratonikov
ac91de80e7
interop: fix Base58Decode interop
2021-02-25 15:11:52 +03:00
Anna Shaleva
a1245cd381
github: publish only released images
2021-02-25 14:54:14 +03:00
Anna Shaleva
7dfdbcd456
github: setup github workflow to publish to DockerHub
...
This workflow tags and publishes images to Dockerhub:
* Every `push` to `master` branch
* Every release
For successful workflow runs the following secrets need to be set in the
repository `Secrets` section:
* `DOCKERHUB_USERNAME` - the username to publish images to DockerHub
* `DOCKERHUB_PASSWORD` - the password of `DOCKERHUB_USERNAME`
2021-02-25 13:49:59 +03:00
Anna Shaleva
81ea4bbfcf
core: update oracle test
...
It is failing from time to time.
2021-02-25 11:20:28 +03:00
Roman Khimov
492a89eb02
Merge pull request #1771 from nspcc-dev/circleci-fix
...
circleci: update Go build version
2021-02-25 00:35:13 +03:00
Anna Shaleva
d5bc65eed4
circleci: update Go build version
2021-02-24 23:20:16 +03:00
Roman Khimov
46fbd940fe
Merge pull request #1720 from nspcc-dev/compiler/syscall
...
Refactor syscall handing
2021-02-24 19:31:52 +03:00
Roman Khimov
fdcd8c2209
Merge pull request #1768 from nspcc-dev/notary-tx-fix
...
services: update Notary transaction size after completion
2021-02-24 12:53:28 +03:00
Evgeniy Stratonikov
df5314f286
compiler: refactor syscall handling
...
Close #941 .
2021-02-24 12:51:15 +03:00
Evgeniy Stratonikov
f7b9861c11
compiler: count locals for vararg inline functions
2021-02-24 12:45:47 +03:00
Anna Shaleva
988dfcc7fe
services: update Notary transaction size after completion
...
Close #1766
2021-02-24 12:38:32 +03:00
Roman Khimov
abee3b5b05
Merge pull request #1722 from nspcc-dev/fix/nep11
...
smartcontract: add NEP-11 standard check
2021-02-22 22:27:09 +03:00
Roman Khimov
61e04f04de
Merge pull request #1763 from nspcc-dev/multisig-interop
...
core: add System.Contract.CreateMultisigAccount
2021-02-19 18:15:33 +03:00
Anna Shaleva
c82b11eebe
compiler: add CreateMultisigAccount interop
2021-02-19 17:34:23 +03:00
Anna Shaleva
5a37201319
core: add System.Contract.CreateMultisigAccount interop
2021-02-19 17:31:50 +03:00
Evgeniy Stratonikov
b38443fe20
smartcontract: add checks for onNEP*Payable methods
...
When they are present in contract, we want them
to have correct signature.
2021-02-19 17:06:07 +03:00
Evgeniy Stratonikov
d89f055697
smartcontract: add checks for parameter names
...
It can be annoying to use parameter names as specified by standard,
so a separate `CheckABI` is supported.
2021-02-19 17:06:07 +03:00
Evgeniy Stratonikov
9d4ccf0fcc
smartcontract: add test for Optional methods
...
They should be checked only if name + parameter count matches.
This is how methods are identified in NEO.
2021-02-19 17:06:07 +03:00
Evgeniy Stratonikov
ae30e30321
native: add NEP-11 check for name service
2021-02-19 17:06:07 +03:00
Evgeniy Stratonikov
eb26a61078
smartcontract: remove IsNEP17()
2021-02-19 17:06:07 +03:00
Evgeniy Stratonikov
9c0bbd0bfd
smartcontract: add NEP-11 standard check
...
The only method missing is name, because it is
provided in manifest.
2021-02-19 17:06:07 +03:00
Roman Khimov
c58dc7e453
Merge pull request #1758 from nspcc-dev/cli/0x
...
cli: support Uint160 hashes with 0x prefix
2021-02-19 16:23:56 +03:00
Roman Khimov
7f6a0fd98c
Merge pull request #1762 from nspcc-dev/cli/files
...
cli: add `filebytes` parameter type
2021-02-19 11:14:02 +03:00
Anna Shaleva
488e75a246
cli: add filebytes
parameter type
2021-02-19 10:52:45 +03:00
Evgeniy Stratonikov
b8024dbfa8
cli: support Uint160 hashes with 0x prefix
2021-02-18 14:38:50 +03:00
Roman Khimov
fe918e28f2
Merge pull request #1757 from nspcc-dev/logs
...
network: add logs for different RelayTx errors
2021-02-18 13:13:25 +03:00
Evgeniy Stratonikov
3f7bea4e99
cli/flags: allow to use hashes in address flag
2021-02-18 12:50:20 +03:00
Anna Shaleva
94430ef3ca
network: refactor RelayTx error handling
...
We don't need to wrap different core errors in server. Also it would be
good to provede more error info to the user.
2021-02-18 12:40:40 +03:00