Commit Graph

2070 Commits

Author SHA1 Message Date
Wei Tang
d8af9f4e7b Add RPC eth_chainId for querying the current blockchain chain ID (#6329)
* Add RPC eth_chainId for querying the current blockchain chain ID

Currently although we can use `net_version` RPC call to get the
current network ID, there's no RPC for querying the chain ID. This
makes it impossible to determine the current actual blockchain using
the RPC. An ETH/ETC client can accidentally connect to an ETC/ETH RPC
endpoint without knowing it unless it tries to sign a transaction or
it fetch a transaction that is known to have signed with a chain
ID. This has since caused trouble for application developers, such as
MetaMask, to add multi-chain support.

The same RPC endpoint is also about to be merged for ETC's
go-ethereum: https://github.com/ethereumproject/go-ethereum/pull/336

* Add eth_chainId to js's web3 interface

* Add a mocked test for eth_chainId

* Add chainId in js's jsonrpc interfaces

* Change return type for eth_chainId to `Option<u64>`

* Change name eth_chainId to parity_chainId

* Wrong test name and missed var for rpc_parity_chain_id test

* Use U256 to return chainId and fix for master

u64 returns decimal integer, and there seems to be no type called
U64. So here I use U256 to return the hex integer.

* Fix chainID test

Before EIP155 fork number, chainID should be null.

* Change both parity_chainId and transaction::chainId to use U64

This makes it consistent that all chain ids returned are hex string.

* Fix wrong U64 serialization
2017-09-26 14:17:07 +02:00
Tomasz Drwięga
59d946bf00 Debounce sync status. (#6572) 2017-09-26 13:05:41 +02:00
GitLab Build Bot
6840df4c09 [ci skip] js-precompiled 20170926-093714 2017-09-26 09:43:21 +00:00
Maciej Hirsz
04e36456bd Merge pull request #6588 from paritytech/mh-pubnode-hardware-wallets
[Public Node] Disable tx scheduling and hardware wallets
2017-09-26 10:37:47 +02:00
Jaco Greeff
9daa884699 Update dependencies 2017-09-26 09:07:22 +02:00
maciejhirsz
0e43ce6e07 Disable time conditions in Tx UI #6445 2017-09-25 17:08:09 +02:00
GitLab Build Bot
f576926fa2 [ci skip] js-precompiled 20170925-101032 2017-09-25 10:15:30 +00:00
Jaco Greeff
ab902bfb66 Update packages 2017-09-22 14:03:26 +02:00
maciejhirsz
339f63a61a Fix :NaN port returned by dappsUrl 2017-09-22 13:48:09 +02:00
maciejhirsz
1b7c90e9e1 Remove public node hacks 2017-09-21 16:52:00 +02:00
Nicolas Gotchac
2b39c43e81 Fix number of confirmations for transaction (#6552)
* 1 confirmation when tx is mined

* Spelling mistake
2017-09-21 10:10:21 +02:00
Travis Jacobs
9e0d2c15cd Fix #6540 (#6556)
* Fix #6540
- just skip the checkRequest call if result of postTransaction is a tx ID

* Fix requestId naming
2017-09-21 10:10:09 +02:00
Jaco Greeff
9ed8178dff Adjust Requests position 2017-09-20 15:49:03 +02:00
Jaco Greeff
4fa4dd8fc8 Update status plugins 2017-09-20 15:01:30 +02:00
Jaco Greeff
dfe45338c0 Move status to the top (alignment/overlaps) 2017-09-20 13:08:38 +02:00
Jaco Greeff
32a29c11a0 CSS lint fixes 2017-09-20 12:55:47 +02:00
Jaco Greeff
d02c696030 Update failing tests 2017-09-20 12:48:03 +02:00
Jaco Greeff
f9b7be7576 Merge branch 'master' into ui-2 2017-09-20 12:14:46 +02:00
GitLab Build Bot
65ca9afce2 [ci skip] js-precompiled 20170920-093438 2017-09-20 09:39:32 +00:00
Jaco Greeff
abb94c8bf3 Update ParityBar (container in Status) 2017-09-20 11:24:19 +02:00
Jaco Greeff
99e981abcf Fix failing hardware tests (#6553) 2017-09-20 10:43:14 +02:00
Jaco Greeff
206abaebb9 Add latest @parity/ui 2017-09-20 09:45:28 +02:00
Jaco Greeff
ac3d548079 Empty block 2017-09-20 09:09:05 +02:00
Jaco Greeff
7e1cb97c7e Make status always visible 2017-09-20 09:04:39 +02:00
Jaco Greeff
51674f2cc4 Update dependencies 2017-09-19 20:48:05 +02:00
Jaco Greeff
413da805b5 Update status styling 2017-09-19 14:28:33 +02:00
Nicolas Gotchac
8a21cde188 Required validators >= num owners (#6551) 2017-09-19 11:58:04 +02:00
Jaco Greeff
2eac4f6606 Align request overlay styling 2017-09-18 15:20:10 +02:00
Jaco Greeff
3795a4869e Update with master merged packages 2017-09-18 14:03:34 +02:00
Jaco Greeff
2b48668327 Fix merge linting issues 2017-09-18 11:56:08 +02:00
Jaco Greeff
312360ef4e Update master merge packages 2017-09-18 11:52:21 +02:00
Jaco Greeff
db9a70d008 Merge branch 'master' into ui-2
# Conflicts:
#	js/package-lock.json
#	js/src/Application/application.js
#	js/src/api/rpc/parity/parity.js
#	js/src/api/subscriptions/manager.spec.js
#	js/src/api/subscriptions/personal.spec.js
#	js/src/jsonrpc/interfaces/parity.js
#	js/src/mobx/hardwareStore.js
#	js/src/mobx/hardwareStore.spec.js
#	js/src/modals/index.js
#	js/src/redux/providers/signerMiddleware.spec.js
#	js/src/ui/SelectionList/selectionList.css
#	js/src/views/Account/account.spec.js
#	js/src/views/Accounts/accounts.spec.js
#	js/src/views/Application/Extension/store.js
#	js/src/views/Signer/components/SignRequest/signRequest.spec.js
2017-09-18 11:44:09 +02:00
Jaco Greeff
afec8358d3 Update dependencies 2017-09-18 10:56:09 +02:00
Jaco Greeff
1e1137a6f7 Update dependencies 2017-09-18 10:35:00 +02:00
Jaco Greeff
935d1476e9 Update test execution 2017-09-18 10:15:36 +02:00
Tomasz Drwięga
b602fb4a5e Fix extension detection (#6452)
* Fix extension detection.

* Fix mobx quirks.

* Update submodule.
2017-09-15 15:06:42 +02:00
Tomasz Drwięga
06ff866e9d Fix broken JavaScript tests (#6498)
* Fixing/removing failing JS tests.

* Fix javascript tests.
2017-09-14 19:32:06 +02:00
Fredrik Harrysson
75b6a31e87 Trezor Support (#6403)
* Copy modal from keepkey branch and generalize

The keepkey PinMatrix modal needs to be the same for Trezor, but we
should probably try to keep it general since it can be used for both.

* Add trezor communication code

This is a result of much trial-and-error and a couple of dead-ends in
how to communicate and wire everything up.

Code here is still a bit WIP with lots of debug prints and stuff.

The test works though, it is possible to sign a transaction.

* Extend the basic lib to allow Trezor

This is kind of ugly and needs some cleanup and generalization. I’ve
just copy-pasted some things to bring in the trezor wallets. I’ve also
had to add a lock to the USB API so that only one thing talks to the
USB at once.

* Add RPC plumbing needed

We need to be able to get “locked” devices from the frontend to figure
out if we’re going to display the PinMatrix or not. Then we need to be
able to send a pin to a device.

* Add logic to query backend for Trezor and display PinMatrix

There’s a bug somewhere here because signing a transaction fails if you
take too long to press the confirm button on the device.

* Change back to paritytech branch

As my fork has been merged in.

* Converting spaces to tabs, as it should be

* Incorporate correct handling of EIP-155

Turns out the Trezor was adjusting the v part of the signature, and
we’re already doing that so it was done twice.

* Some circular logic here that was incorrect

BE-encoded U256 is almost the same as RLP encoded without the
size-byte, except for <u8 sized values. What’s really done is
BE-encoded U256 and then left-trimmed to the smallest size. Kind of
obvious in hindsight.

* Resolve issue where not clicking fast enough fails

The device will not repeat a ButtonRequest when you read from it, so
you need to have a blocking `read` for whatever amount of time that you
want to give the user to click. You could also have a shorter timeout
but keep retrying for some amount of time, but it would amount to the
same thing.

* Scan after pin entry to make accepting it faster

* Remove ability to cancel pin request

* Some slight cleanup

* Probe for the correct HID Version to determine padding

* Move the PinMatrix from Accounts to Application

* Removing unused dependencies

* Mistake in copying over stuff from keepkey branch

* Simplify FormattedMessage

* Move generated code to external crate

* Remove ethcore-util dependency

* Fix broken import in test

This test is useless without a connected Trezor, not sure how to make
it useful without one.

* Merge branch 'master' into fh-4500-trezor-support

# Conflicts:
#	rpc/src/v1/helpers/dispatch.rs

* Ignore test that can't be run without trezor device

* Fixing grumbles

* Avoiding owning data in RPC method
* Checking for overflow in v part of signature
* s/network_id/chain_id
* Propagating an error from the HID Api
* Condensing code a little bit

* Fixing UI.

* Debugging trezor.

* Minor styling tweak

* Make message type into an actual type

This makes the message type that the RPC message accepts into an actual
type as opposed to just a string, based on feedback. Although I’m not
100% sure this has actually improved the situation.

Overall I think the hardware wallet interface needs some refactoring
love.

* Split the trezor RPC endpoint

It’s split into two more generic endpoints that should be suitable for
any hardware wallets with the same behavior to sit behind.

* Reflect RPC method split in javascript

* Fix bug with pin entry

* Fix deadlock for Ledger

* Avoid having a USB lock in just listing locked wallets

* Fix javascript issue (see #6509)

* Replace Mutex with RwLock

* Update Ledger test

* Fix typo causing faulty signatures (sometimes)

* *Actually* fix tests

* Update git submodule

Needed to make tests pass

* Swap line orders to prevent possible deadlock

* Make setPinMatrixRequest an @action
2017-09-14 19:28:43 +02:00
Jaco Greeff
baeab01357 Current @parity/shared (required dapp-* rebuild) 2017-09-13 17:51:38 +02:00
Jaco Greeff
4a184dbbe6 Merge branch 'master' into ui-2 2017-09-13 15:51:02 +02:00
Jaco Greeff
5d774d360e Update with latest dependencies 2017-09-13 13:09:32 +02:00
Jaco Greeff
94df97a5ae Update packages 2017-09-12 15:58:13 +02:00
Jaco Greeff
6e2e122288 Update with recent @parity/ui 2017-09-12 13:32:21 +02:00
Jaco Greeff
dc85c66052 file: protocol updates 2017-09-11 14:47:34 +02:00
Jaco Greeff
2bcdb07b62 Run electron (dev) from build directory 2017-09-11 10:37:09 +02:00
Jaco Greeff
ceb1dd8d83 Electron app should not display extension install message 2017-09-11 10:00:51 +02:00
Jaco Greeff
093eb3915a Disable signer plugin 2017-09-11 09:31:28 +02:00
GitLab Build Bot
dcea17f8c6 [ci skip] js-precompiled 20170910-175532 2017-09-10 18:00:22 +00:00
Nicolas Gotchac
f1a050366f Fix slow balances (#6471)
* Update token updates

* Update token info fetching

* Update logger

* Minor fixes to updates and notifications for balances

* Use Pubsub

* Fix timeout.

* Use pubsub for status.

* Fix signer subscription.

* Process tokens in chunks.

* Fix tokens loaded by chunks

* Linting

* Dispatch tokens asap

* Fix chunks processing.

* Better filter options

* Parallel log fetching.

* Fix signer polling.

* Fix initial block query.

* Token balances updates : the right(er) way

* Better tokens info fetching

* Fixes in token data fetching

* Only fetch what's needed (tokens)

* Fix linting issues

* Revert "Transaction permissioning (#6441)"

This reverts commit eed0e8b03a.

* Revert "Revert "Transaction permissioning (#6441)""

This reverts commit 8f96415e58dde652e5828706eb2639d43416f448.

* Update wasm-tests.

* Fixing balances fetching

* Fix requests tracking in UI

* Fix request watching

* Update the Logger

* PR Grumbles Fixes

* PR Grumbles fixes

* Linting...
2017-09-10 18:03:35 +02:00
Jaco Greeff
6d8b511d25 Merge master 2017-09-07 13:32:45 +02:00
Jaco Greeff
ee4f370bdb Update CSS linting 2017-09-07 12:51:57 +02:00
Jaco Greeff
afb101e234 Cleanup handler determination 2017-09-07 12:31:32 +02:00
GitLab Build Bot
e5bbabb2ba [ci skip] js-precompiled 20170905-115347 2017-09-05 11:58:41 +00:00
Jaco Greeff
1d8886fa7d Adjust Signer title colours 2017-09-05 13:33:57 +02:00
Nicolas Gotchac
a62238c19d Add language selector in production (#6317)
* Add language selector in PRODUCTIN

* Fix wrong i18n keys

* Update the default i18n files
2017-09-05 12:26:29 +01:00
Jaco Greeff
a5cc14ce8c Signer plugin attachment 2017-09-04 16:17:39 +02:00
Jaco Greeff
7818ed98c7 Add status bar extension plugins 2017-09-04 12:24:46 +02:00
GitLab Build Bot
6b8c9cac23 [ci skip] js-precompiled 20170901-161931 2017-09-01 16:33:31 +00:00
Jaco Greeff
fb7b11553a Test-drive extensions, status first 2017-09-01 14:29:57 +02:00
Jaco Greeff
a1bde406de Don't clobber window.parity, extend 2017-09-01 13:03:00 +02:00
Craig O'Connor
56f46edab8 Pub sub blocks (#6139)
* fun start

* playin

* linting

* cleanup kk 1

* cleanup kk 2

* package

* oops

* grumbles

* lint

* lint 2

* all-possible-cases

* conflict resolution

* conflict resolution

* ready

* lint

* remove package-lock

* Restart subscription on transport close.

* Bring back the formatter.

* Fix formatter.
2017-09-01 12:23:41 +02:00
Jaco Greeff
d0d8002b66 Override uiUrl 2017-08-31 15:36:57 +02:00
Jaco Greeff
d957a10f47 Update to cater for token URL 2017-08-31 14:08:15 +02:00
Jaco Greeff
5b8236cdbd Update for non HTTP use 2017-08-30 12:47:14 +02:00
Jaco Greeff
be56a06790 Basic electron interface 2017-08-30 11:59:38 +02:00
Jaco Greeff
d7de40ab4c Init history in dapp module 2017-08-30 11:29:15 +02:00
Jaco Greeff
b1428c2b56 Update packages 2017-08-30 09:29:28 +02:00
Jaco Greeff
35202e28c2 Update webpack 2017-08-29 15:11:09 +02:00
Jaco Greeff
2593477151 Don't show tags for dapps 2017-08-29 13:03:06 +02:00
Jaco Greeff
39cf190db7 Update dependencies 2017-08-29 10:50:47 +02:00
Jaco Greeff
2a0820278b Update 2017-08-29 10:18:02 +02:00
Tomasz Drwięga
3226e1ca33 Expose health status over RPC (#6274)
* Node-health to a separate crate.

* Initialize node_health outside of dapps.

* Expose health over RPC.

* Bring back 412 and fix JS.

* Add health to workspace and tests.

* Fix compilation without default features.

* Fix borked merge.

* Revert to generics to avoid virtual calls.

* Fix node-health tests.

* Add missing trailing comma.
2017-08-28 14:11:55 +02:00
Jaco Greeff
7438cfc47d Merge branch 'master' into ui-2 2017-08-25 12:14:56 +02:00
GitLab Build Bot
b6024adf85 [ci skip] js-precompiled 20170825-090654 2017-08-25 09:11:39 +00:00
Jon Choi
5b6d47aeef Infoline less opaque for UI/visibility (#6364) 2017-08-25 16:31:48 +08:00
Jaco Greeff
d97f6b3812 Add @parity/jsonrpc explicitly 2017-08-24 13:07:22 +02:00
Jaco Greeff
ae66b98aac Update dependencies 2017-08-24 12:01:47 +02:00
Jaco Greeff
21e8c31aec Update dependencies 2017-08-22 16:51:40 +02:00
Jaco Greeff
630118b5a5 Merge branch 'master' into ui-2 2017-08-22 15:12:30 +02:00
Tomasz Drwięga
73644adf69
Rename network_id to chain_id where applicable. 2017-08-21 14:23:10 +02:00
GitLab Build Bot
f3e7d7c725 [ci skip] js-precompiled 20170821-094253 2017-08-21 09:48:30 +00:00
Marek Kotewicz
e8841ae9e2 Merge pull request #6331 from paritytech/fix-startup-wizard
Better check the created accounts before showing Startup Wizard
2017-08-21 10:44:54 +02:00
GitLab Build Bot
2c0a1b652c [ci skip] js-precompiled 20170818-143526 2017-08-18 14:40:04 +00:00
Tomasz Drwięga
cd0c77dc5c Ignore errors from dappsUrl when starting UI. (#6296)
* Ignore errors from dappsUrl when starting UI.

* Fix linter.
2017-08-18 15:51:52 +02:00
Nicolas Gotchac
444233bd1b Better check the created accounts before showing Startup Wizard 2017-08-18 15:28:41 +02:00
GitLab Build Bot
d115006597 [ci skip] js-precompiled 20170813-184308 2017-08-13 18:48:32 +00:00
Tomasz Drwięga
10068cee72 Extension fixes (#6284)
* Fix token symbols in extension.

* Allow connections from firefox extension.
2017-08-13 17:41:50 +02:00
Tomasz Drwięga
b5b6e3dd2a Fix a hash displayed in tooltip when signing arbitrary data (#6283)
* Allow connections from firefox extension.

* Displaying actual data that will be signed on hover.

* Display a tooltip.

* Revert "Allow connections from firefox extension."

This reverts commit d3323b76fe28564c2366ceec3d891de19884192f.
2017-08-13 17:41:08 +02:00
Jaco Greeff
f0e20142af Rebuild 2017-08-11 03:19:28 +02:00
Tomasz Drwięga
604ea5d684 Time should not contribue to overall status. (#6276) 2017-08-10 18:48:03 +02:00
GitLab Build Bot
ecd880c8e7 [ci skip] js-precompiled 20170810-101054 2017-08-10 10:16:01 +00:00
Tomasz Drwięga
30be0972b9 Add warning to web browser and fix links. (#6232) 2017-08-10 11:16:02 +02:00
GitLab Build Bot
b21932687a [ci skip] js-precompiled 20170809-182421 2017-08-09 18:29:28 +00:00
Björn Wagner
e128285a77 Replace 'home.parity' with 'parity.web3.site' (#4771) 2017-08-09 19:07:15 +02:00
Craig O'Connor
7d17d77254 Dapp refresh (#5752)
* RwLock

* getting there

* argh

* parking_lot

* rpc

* wax on wax off

* almost there

* remove lock

* write over read

* works

* linting

* small updates

* dissapearing act

* router update

* complete

* one m

* grumbles1

* grumbles part II

* parking_lot->util

* missed test case

* fied package-lock.json

* small fixes

* 404 tests failing

* cleanup

* cleanup 2

* updates and the likes

* play

* simplify filter

* f-ing bugs

* read->write

* Address own grumbles.

* Fix test.
2017-08-09 19:06:40 +02:00
Nicolas Gotchac
d6eb053826 Add support for ConsenSys multisig wallet (#6153)
* First draft of ConsenSys wallet

* Fix transfer store // WIP Consensys Wallet

* Rename walletABI JSON file

* Fix linting

* Fix wrong daylimit in wallet modal

* Confirm/Revoke ConsensysWallet txs

* Linting

* Change of settings for the Multisig Wallet
2017-08-09 19:06:14 +02:00
Jaco Greeff
039729a074 Export default function for shellMiddleware 2017-08-09 13:17:52 +02:00
Jaco Greeff
4176936d34 Move shell APIs to middleware 2017-08-09 13:03:26 +02:00
Jaco Greeff
f967bc4ac0 Don't mask top-level params 2017-08-09 11:01:34 +02:00
Jaco Greeff
2d5541f533 Add shell_loadApp API 2017-08-09 10:55:15 +02:00