Commit Graph

961 Commits

Author SHA1 Message Date
Igor Mandrigin f694a6d52b Fix a deadlock when timeout happens while a sign request is being approved. 2018-04-18 10:12:01 +02:00
Igor Mandrigin 4cc6028d59 Implement `personal_sign`.
This commit implements `personal_sign` RPC or web3 personal.sign
methods.

NB! Contains breaking API changes.
2018-04-17 11:18:58 +02:00
Adam Babik 364f88efd9
Allow to start ephemeral StatusNode (#829)
This change will greatly simplify writing unit tests when a node is required but data persistence is irrelevant.

I also Introduced some refactoring and unit tests for `StatusNode`.
2018-04-16 14:36:09 +02:00
Adam Babik ef160e8720
Add CallPrivateRPC binding (#825)
This PR provides CallPrivateRPC binding, which can call both public and private bindings but should not be used in web3.js provider implementations.
2018-04-16 10:01:37 +02:00
Dmitry Shulyak 0b123ed407 Send an expiration signal when envelope wasn't delivered to any peer 2018-04-15 10:44:49 +03:00
Adam Babik 2f5e75c33b
Improve Travis comments (#826) 2018-04-13 16:38:38 +02:00
Adrià Cidre e277ae8b2d
Mockgen import cycle not allowed && recover missing mockgens (#824) 2018-04-13 15:10:37 +02:00
Dmitry Shulyak 5014e4e3b0
Fix two race conditions in peerpool tests (#827)
Multiple concurrent topic pool stops could result in the close of the closed
quit channel. Fixed by using atomic compare and swap and closing only if swap
happened.

Added events feed to peer pool for tests purpose. Otherwise it is impossible to run
simulation with -race flag enabled. In the essence it happens because we are managing global
object , which is server.Discv5, but unfortunately there is no way around it.
2018-04-13 11:34:30 +03:00
Adam Babik 0d652c3851
Expose only public APIs in inproc RPC client [breaking-change] (#815)
`CallRPC` binding, which is used as a provider for web3.js, exposes only public or whitelisted APIs.
2018-04-12 18:17:10 +02:00
Dmitry Shulyak a7a2e01b4a
Peerpool failover (#801) 2018-04-12 16:08:49 +03:00
Andrea Franz ecd9762648
remove redundant "if" before "return" statement (#823) 2018-04-12 12:26:25 +02:00
Dmitry Shulyak ba9a25e284
Implement shh api extension that allows to confirm that message is sent (#814)
* Implement shh api extension that allows to confirm that message is sent

* Add a patch

* Fix linter

* Add readme

* Add tests for tracker

* Address review
2018-04-11 18:41:51 +03:00
Adrià Cidre e6610f3b15
Fix lint on unused method (#816) 2018-04-10 16:00:01 +02:00
Dmitry Shulyak fc3decf661 Add tests for topic flags 2018-04-10 16:18:02 +03:00
Daniel Regeci e34af8d6eb Create status-go API to return a current revision (#804)
Change `BUILD_FLAGS` in Makefile and update `github.com/status-im/status-go/geth/params.VersionMeta` value with the current Git SHA.
2018-04-10 12:36:11 +02:00
Dmitry Shulyak 02309e81e9
Peer pool to manage v5 peers (#736) 2018-04-10 09:44:09 +03:00
Igor Mandrigin a9eb5a7d2b Generalize signing requests.
We need to be able to sign more than just transactions to make DApps
work properly. This change separates signing requests from the
transactions and make it more general to prepare to intoduce different
types of signing requests.

This change is designed to preserve status APIs, so it is
backward-comparible with the current API bindings.
2018-04-09 20:48:00 +02:00
Adam Babik f3e53441d9 update Gopkg.lock 2018-04-09 19:23:45 +02:00
Dmitry Shulyak b120587c9b Update bindata 2018-04-09 15:42:36 +02:00
Dmitry Shulyak b71b7eeadb Use web3code from separate repo and remove static 2018-04-09 15:42:36 +02:00
Adam Babik 32d71da046
fix linter in transactions_test.go (#811) 2018-04-09 14:14:02 +02:00
Dmitry Shulyak 4d00fa80b0 Ensure that To field is nil when contract is created 2018-04-09 14:41:50 +03:00
Dmitry Shulyak 38d7194a2a Use chain aware signer in simulated backend 2018-04-09 14:41:50 +03:00
Dmitry Shulyak 3f2e39d525 Update vendor because new geth modules were imported 2018-04-09 14:41:50 +03:00
Dmitry Shulyak ced8335600 Remove admin,debug,db api from exposed modules 2018-04-09 12:32:39 +03:00
Adrià Cidre df35ad6dbe
[#797] Unify EnsureSync on t/utils/utils.go and StatusManager (#806) 2018-04-09 09:16:43 +02:00
Adrià Cidre 359b3621e9 [#797] Simplify node.Manager public api and rename it to StatusNode
- [x] [#797] : Remove unused methods PopulateStaticPeers, ReconnectStaticPeers, removeStaticPeers, removePeer
- [x] [#797] : Rename node.Manager to node. StatusNode and simplify its public api
- [x] [#797] : Rename all references to nodeManager to statusNode
2018-04-05 16:47:27 +02:00
Dmitry Shulyak 74ce515ab2
Add metrics to discv5 (#749) 2018-04-05 16:48:59 +03:00
Adam Babik e9c2292776
Switch mockgen to reflect mode (#800)
Switch mockgen to use reflect mode as source mode does not support vendored packages.
2018-04-05 15:14:47 +02:00
Adrià Cidre bd14456e4b
Run lint and vendor-check on the same travis stage (#802) 2018-04-05 14:37:39 +02:00
Adrià Cidre aa0f2ede6d
[#795] : Remove geth/common package (#796) 2018-04-04 19:39:38 +02:00
Frank Mueller 4d51f937c4 Quick fix of broken link to CONTRIBUTE.md (#799)
Thanks :)
2018-04-04 14:16:05 +03:00
Frank Mueller 7358f7e3c6
Move CONTRIBUTING.md to top level (#798) 2018-04-04 12:51:05 +02:00
Dmitry Shulyak aa4966ce11
Common instructions how to merge PRs and keep history clean (#791) 2018-04-04 13:41:45 +03:00
Dmitry Shulyak 5e5e497822 Initial version of peer docs 2018-04-04 13:27:35 +03:00
Adam Babik 37f19d813c fix megacheck errors 2018-03-29 18:02:06 +02:00
Igor Mandrigin d2df4bb323 Unbreak `make mock` command and compilation of our develop branch. 2018-03-29 17:51:00 +02:00
Adrià Cidre f59ec4022c Move RPCCall from common to geth/rpc (#788) 2018-03-29 17:37:10 +02:00
Adrià Cidre 33c739fecf
Merge pull request #786 from status-im/improvement/issue-785/common-logic-to-lib
[#785] Extract lib specific code from geth/common
2018-03-29 16:10:29 +02:00
Adrià Cidre f3dca6fad8
[#785] /lib specific code living on common moved to /lib 2018-03-29 15:12:46 +02:00
Adrià Cidre 518148cab9
Merge pull request #780 from status-im/improvement/issue-779/common-NodeManager-removal
[#779] common.NodeManager removal
2018-03-29 09:57:18 +02:00
Igor Mandrigin 3b32ab8426 Support both "input" and "data" fields when creating a transaction. 2018-03-28 20:28:35 +02:00
Adrià Cidre 1b724a81a5
[#779] common.NodeManager removal 2018-03-28 17:39:09 +02:00
Adrià Cidre 9a2a311352 Go cover is not longer maintained since go 1.5 (#782) 2018-03-28 12:40:38 +02:00
Adrià Cidre e646001578
Merge pull request #773 from status-im/transactions-and-accountmanager
[#772] txQueueManager to not depend on AccountManager and nodeManager
2018-03-28 11:06:33 +02:00
Adrià Cidre c76b2a0f62 [#757] : Split accounts and whisper tests (#763) 2018-03-28 10:24:55 +02:00
Adrià Cidre 13cb2daaa2
[#772] txQueueManager to not depend on AccountManager 2018-03-28 09:58:05 +02:00
Evgeny Danilenko ce45237d64
Merge pull request #767 from status-im/issue/allow-messages-without-subscription-#766
[#766]: Allow messages without subscription
2018-03-27 19:13:10 +03:00
Evgeny Danienko 9ccd9b20e8
Merge branch 'develop' into issue/allow-messages-without-subscription-#766 2018-03-27 18:35:58 +03:00
Evgeny Danienko e2e2af73d7
isForwarded constants introduced 2018-03-27 18:22:29 +03:00