Commit Graph

721 Commits

Author SHA1 Message Date
frankiebee 7d34b22d78 clean up code 2017-08-21 17:04:47 -07:00
frankiebee 5c74f316a8 nonce-tracker - pass tests 2017-08-21 16:45:10 -07:00
frankiebee fbba3a1ac8 Merge branch 'master' into transactionControllerRefractorPt3 2017-08-21 11:35:22 -07:00
frankiebee 7ea83b6bae Create TxStateManager 2017-08-21 10:29:10 -07:00
frankiebee 1ffb406480 break out network nonce calc. 2017-08-18 16:05:21 -07:00
frankiebee 37f86e874f fix 0x0 nonce calc. 2017-08-18 15:44:32 -07:00
frankiebee f8eca95ca5 include pendingTxs in localNonce 2017-08-18 15:01:05 -07:00
frankiebee e9712a13ec Create tests for TxStateManager 2017-08-18 14:11:18 -07:00
frankiebee a5a32f3d57 use "localNonce" when the network returns a nonce that is lower then a known confirmed tx 2017-08-18 13:54:16 -07:00
kumavis 1af797b1b3 tx controller - tx state history various small fixes 2017-08-14 19:15:36 -07:00
kumavis fdffb6fedc introduce tx-state-history-helper and diff-based history 2017-08-14 18:46:04 -07:00
sdtsui dbc539ac55 Merge remote-tracking branch 'mm/master' into NewUI-flat 2017-08-14 11:06:14 +02:00
frankiebee 66a012550e fix wording 2017-08-11 15:54:52 -07:00
frankiebee ac9e84ff40 add deprecation warning for web3 2017-08-11 15:52:03 -07:00
kumavis b4052cd5e6 tx utils - detect estimateGas err and set simulationFailed 2017-08-08 23:34:18 -07:00
kumavis 0188e7b94d Merge branch 'master' into NewUI-flat 2017-08-08 23:30:58 -07:00
kumavis 5418813ed1 util - sufficientBalance - validate input 2017-08-08 21:05:59 -07:00
frankiebee 5bb84f6e21 fix getPendingTransactions function for pendingTxTracker 2017-08-08 21:49:48 -04:00
frankiebee a13643bdb5 fix class names 2017-08-08 18:30:49 -04:00
frankiebee 59124eb6fd remove logging of the message and log the error 2017-08-07 14:45:43 -04:00
frankiebee fb9866b4e1 fix spelling 2017-08-07 14:37:20 -04:00
sdtsui 02c2106c3b Merge branch 'master' into feat/mm-ui-5 2017-08-06 19:55:34 -07:00
frankiebee 89a4fef1e4 Merge branch 'master' into transactionControllerRefractor 2017-08-04 14:45:22 -04:00
frankiebee 087cd9fb1a break out tx status pendding watchers 2017-08-04 14:41:35 -04:00
frankiebee caee2a9e35 move util functions to util.js 2017-08-04 13:55:00 -04:00
kumavis c4cb371ce8 Merge pull request #1857 from MetaMask/hotFixCancleTx
fix cancelTransaction not receiving a callback
2017-08-03 21:01:13 -07:00
frankiebee 7de58c8709 fix cancelTransaction not reciving a callback 2017-08-03 21:22:08 -04:00
kumavis d4877cb4e2 blacklist - use module eth-phishing-detect 2017-08-03 14:25:02 -07:00
kumavis 8a9d0073b1 Merge pull request #1848 from MetaMask/transactionControllerRefractor
Transaction controller refractor part 1: promises for everyone and more tests!
2017-08-02 19:57:16 -07:00
sdtsui dd4586ee84 Adjust sidebar transition using @cjeria\'s feedback 2017-08-02 19:26:46 -07:00
sdtsui 61b4b1f947 Ensure app-header is rendered in responsive layout 2017-08-02 19:13:17 -07:00
frankiebee 340dbe75fc use async with #publishTransaction 2017-08-02 19:09:37 -04:00
frankiebee b80c7e417b move newUnapprovedTransaction to transactions.js 2017-08-02 18:59:34 -04:00
kumavis 8c6f01b910 blacklist controller - breakout from metamask and infura controllers 2017-08-02 15:54:59 -07:00
kumavis ecaa235b5e phishing detection - move phishing detection into contentscript and metamask controller 2017-08-02 14:26:10 -07:00
kumavis aea5735b29 obj-multiplex - missing name error + prefer const over var 2017-08-02 14:25:28 -07:00
frankiebee 25bc15ba17 lint fixes 2017-08-02 11:47:13 -04:00
frankiebee 25cffd21f8 Merge branch 'master' into transactionControllerRefractor 2017-08-02 11:41:29 -04:00
frankiebee 3a4726018e fix addTxDefaults 2017-08-02 11:35:35 -04:00
frankiebee 432f516ab0 make addUnapprovedTransaction async function and use promise based ethQuery 2017-08-02 10:26:25 -04:00
Dan Finlay 6675241fa9 Merge branch 'master' into i1805-LiveBlacklistUpdating 2017-07-26 16:46:59 -07:00
kumavis 35a128db1e nonce-tracker - hotfix for provider proxying 2017-07-26 11:37:00 -07:00
kumavis b15a2baaf3 nonce-tracker - add raw baseNonceHex to nonceDetails 2017-07-26 11:09:02 -07:00
kumavis 0ef90fb1f0 tx controller + nonce tracker - record nonce components on txMeta 2017-07-26 10:40:08 -07:00
kumavis 39d28922de nonce-tracker - validation - add validation failing value type to error message 2017-07-26 10:16:08 -07:00
kumavis f16802e2d4 nonce-tracker - validation - add validation failing value to error message 2017-07-26 10:15:35 -07:00
frankiebee ab01358a48 Add stack traces both in errors and as a way to track txMetas 2017-07-25 16:08:31 -04:00
kumavis 12d6f21627 transactions - block nonce-tracker while updating pending transactions 2017-07-18 15:27:15 -07:00
kumavis aa48ed34c4 nonce-tracker - fix lock mechanism to be a real mutex 2017-07-18 15:11:29 -07:00
kumavis d249da77d7 nonce-tracker - return nonce as integer 2017-07-18 13:59:56 -07:00
kumavis 4f9fc8014a nonce-tracker - validate nonce calc components 2017-07-18 12:48:16 -07:00
frankiebee 948f3880a3 turn off auto faucet and remove file 2017-07-17 17:37:01 -04:00
frankiebee 7eccf5905a make publishTransaction and signTransaction async methods 2017-07-13 15:25:43 -04:00
frankiebee aeefcbd75b Fix test to match behavior 2017-07-12 15:10:52 -07:00
frankiebee da35f6744e use new nodeify 2017-07-12 15:06:49 -07:00
frankiebee 231ad48564 Use txParams 2017-07-11 12:52:56 -07:00
frankiebee 971d25a8ab Merge branch 'master' into nonce-tracker 2017-07-11 12:41:03 -07:00
Dan Finlay c7b9e3fb18 Improve insufficient balance checking in retry loop 2017-07-11 12:19:01 -07:00
frankiebee 6d2cddaac9 fix nonce calculation order 2017-07-05 12:00:42 -07:00
frankiebee 690685d20d nonce-tracker: only check transactions that are not supposed to be ignored 2017-06-27 16:46:33 -07:00
frankiebee 92df9965eb fix nonceTracker 2017-06-21 19:51:00 -07:00
frankiebee fa8c74fe9b add a test for #getNonceLock 2017-06-21 17:28:19 -07:00
kumavis dab2fccc78 introduce nonce-tracker 2017-06-14 22:16:14 -07:00
Thomas Huang 13e6672028 Linting 2017-06-12 11:08:32 -07:00
Kevin Serrano 2b7d842498
Update gasblocklimit params with every block. 2017-06-02 15:18:14 -07:00
Kevin Serrano 82cbfaa826
Convert gasLimit to not use muln in BN 2017-06-01 12:53:16 -07:00
Thomas Huang 8f9a230d8d Merge pull request #1500 from MetaMask/RemoveStreamingSubprovider
Remove streaming subprovider
2017-05-25 15:04:50 -07:00
Dan Finlay ad40e4d260 Remove stream subprovider
Since the polling leak seems to be coming from elsewhere, and new bugs came from this, I'm rolling back this change so that we can push the other improvements sooner and fix the bug at its true root.
2017-05-25 12:37:04 -07:00
frankiebee 717dceede8 fix spelling 2017-05-24 23:36:10 -04:00
frankiebee 3b06a29e1b Merge branch 'master' into reloadDapp 2017-05-24 23:10:58 -04:00
frankiebee 473b88f399 Reload the page when switching networks for sites that use web3 2017-05-24 23:00:58 -04:00
Dan Finlay 764806d211 Merge pull request #1494 from MetaMask/1472-gasceiling
Add Max GasLimit Ceiling
2017-05-24 16:36:00 -07:00
Kevin Serrano 26fd016b63
Add new blockGasLimit property to txMeta object. 2017-05-24 16:17:03 -07:00
kumavis e6b278569e inpage-provider - disable polling after first block 2017-05-24 11:34:26 -07:00
Frankie 97ea7454b3 Merge branch 'master' into networkController 2017-05-23 20:36:11 -04:00
frankiebee 243eeff7cb Fix for tests 2017-05-23 19:49:57 -04:00
frankiebee 529304c005 Wrap the provider in a proxy 2017-05-23 01:56:10 -04:00
frankiebee 13a41f3129 Merge branch 'master' into networkController 2017-05-22 19:48:10 -04:00
kumavis b217ad1ae8 clean - remove console logs 2017-05-22 16:06:22 -07:00
kumavis 1c1400b584 deps - use stream-subprovider from provider-engine 2017-05-22 15:59:07 -07:00
Dan Finlay cbfaa6f56f Rename stream to streamSubprovider 2017-05-22 15:41:13 -07:00
Dan Finlay 48d9a21071 Use filter subprovider in-page to avoid filter leaks 2017-05-22 15:23:29 -07:00
Dan Finlay c5432da567 Add new streaming subprovider but getting a loop
Regarding #1458

Uses a new streaming subprovider architecture on an experimental branch of StreamProvider:
https://github.com/flyswatter/web3-stream-provider/tree/StreamSubprovider
2017-05-20 20:38:38 -07:00
frankiebee f87ea49b5a Create a network controller to manage switcing networks an updating the provider 2017-05-19 00:14:10 +02:00
Thomas Huang 3367363b12 Remove all traces of testnet 2017-05-15 19:11:16 -07:00
Thomas Huang 4c10e2021a Change default network to rinkeby 2017-05-15 18:05:11 -07:00
kumavis 2c8bbe3b25 migrator - fix typo 2017-05-12 12:27:40 -07:00
kumavis 70a328e028 migrator - cleaner migration runner with es7 2017-05-11 18:15:59 -07:00
frankiebee 6c01b26845 use asyncQ.waterfall instead of asyncQ.eachSeries 2017-05-11 23:25:33 +02:00
frankiebee 1772d34e94 fix migrator 2017-05-11 10:10:50 +02:00
Kevin Serrano 833b9f183f
Minor lint 2017-05-03 07:22:36 -07:00
kumavis 6ace0c9afb notification-manager - remove promise listener
seems chrome changed their API?
MDN suggests that a Promise should be returned but getting `undefined`
https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/windows/create

Chrome docs suggest its a callback API lolwut
https://developer.chrome.com/extensions/windows#method-create
2017-04-28 16:04:00 -07:00
Dan Finlay d1a1069180 Merge branch 'master' into rinkeby 2017-04-27 14:50:19 -07:00
Thomas Huang 6bdb4c8728 Fix linting warnings 2017-04-26 21:05:45 -07:00
Kevin Serrano 242dc1e99f
Add missing changes. Create unique style for rinkeby icon. 2017-04-25 14:39:01 -07:00
Nickyg e9aa37b699 add rinkeby network 2017-04-26 01:40:33 +05:30
kumavis 9b9570fd2b auto-faucet - only skip faucet on explicit test environment 2017-04-04 18:48:33 -07:00
kumavis 5a91adf7d8 add platforms to mascara + move buyEther window open to ui 2017-04-04 18:23:46 -07:00
frankiebee f80d1ce3e6 Switch auto-faucet from XMLHttpRequest to fetch 2017-04-04 14:55:48 +02:00
kumavis 86e882c51a notification-manager - rename show -> showPoup + make getPopup private 2017-03-31 18:41:51 -07:00
kumavis 6259ffaef4 extension - remove local extension files, we use extensionizer 2017-03-30 18:35:22 -07:00
kumavis 5036263f88 introduce platform api and rename notifications to notification-manager 2017-03-30 18:33:19 -07:00
Kevin Serrano 9a6b84644a Merge pull request #1293 from MetaMask/ImproveGasEstimates
tx-utils - gas buffer ceiling at 90% of block gas limit
2017-03-30 09:25:28 -04:00
kumavis ff49e5e5cf tx-utils - gas buffer ceiling at 90% of block gas limit 2017-03-29 23:21:31 -07:00
Dan Finlay 98dd684524 Linted 2017-03-29 10:42:43 -07:00
Dan Finlay 610ec2bdf5 Fix popup behavior for Firefox
Firefox does not support the `focused` parameter when opening a new window, and we don't actually require it for Chrome either, new popups are at the foreground by default already.
2017-03-29 10:40:57 -07:00
kumavis 1495240969 tx manager - adjust new tx flow and txMeta decorations 2017-03-28 13:35:27 -07:00
Dan Finlay 81d3658343 Improve UI gas calculation logic
- Now striping hex prefixed gas values, which may have been causing mis-estimation.
- Unified calculation logic to be entirely functional.
- Greatly simplified how the pending-tx form keeps updated form state.

Still needs a commit from @kumavis to ensure the background passes in a txMeta.txParams.gasPrice value.
2017-03-28 11:52:15 -07:00
Dan Finlay 2cab2f767c Remove gas limit param
Fixes #1256 by removing redundant param.
2017-03-23 13:56:32 -07:00
Kevin Serrano 16bdfd3d6e Merge branch 'master' into i238-kovan 2017-03-22 15:41:38 -07:00
Kevin Serrano 1b7326048d
Add current block number and hash to the state. 2017-03-22 16:41:19 -04:00
Kevin Serrano 33dd7954a7
Add kovan config settings to config manager. 2017-03-22 16:00:50 -04:00
Dan Finlay b6e2eaf7b1 Remove eth-lightwallet 2017-03-16 11:16:03 -07:00
Dan Finlay 67c3126e63 Merge branch 'master' into kumavis-patch-1 2017-03-08 10:16:50 -08:00
Kevin Serrano 86f71d504c Merge branch 'master' into i1144-moarrpc 2017-03-08 09:28:36 -08:00
kumavis 92b8443824 tx-utils - add encoding utils 2017-03-07 22:51:39 -08:00
kumavis c063fab993 tx-utils - stricter naming type-based convention 2017-03-07 22:47:35 -08:00
kumavis 17b805c76e tx-utils - clean and comment 2017-03-07 22:18:14 -08:00
Jared Pereira 4916331c53 change BN.mul to BN.muln 2017-03-07 22:42:16 -05:00
Jared Pereira 4256e631a6 remove constant buffer and add multiplier 2017-03-07 19:57:57 -05:00
Kevin Serrano 08ca7dac5a
Merge branch 'master' into i1144-moarrpc 2017-03-07 10:37:31 -08:00
Dan Finlay e66e755766 Fix normalizeMsgData function to always return hex prefixed 2017-03-06 16:33:33 -08:00
Dan Finlay 9bd8c5f723 Render personal_sign messages as utf-8 text
Calls to `personal_sign` are now:

- When hex encoded, preserved as hex encoded, but displayed as utf-8 text.
- When not hex encoded, decoded as utf-8 text as hex for signing.
- The messages proposed for signing are displayed as UTF-8 text.
- When the message cannot be rendered as UTF-8 text, it is displayed as hexadecimal.

Fixes #1173
2017-03-06 15:04:11 -08:00
Kevin Serrano e66035254f
More conflict resolution. 2017-03-01 10:04:25 -08:00
Kevin Serrano 0a3849ec84
Fix merge conflicts. 2017-03-01 10:01:21 -08:00
Dan Finlay e07e4b7bc7 Linted 2017-02-28 14:13:58 -08:00
Dan Finlay da88481560 Remove gasMultiplier txMeta param
This was used by the custom gas slider on the `send` screen, and it was used to modify the gas value before sending it out, breaking our new custom gas field logic.

Removed it and the logic that referred to this now-outdated parameter.
2017-02-28 14:08:00 -08:00
Dan Finlay 2e16e1eb94 Fixed bug that made send screen sometimes transition to account detail 2017-02-28 12:00:07 -08:00
Dan Finlay b5d03cd524 add controllers to root scripts folder 2017-02-27 10:40:37 -08:00
Dan Finlay 5edb3db969 Merge branch 'master' into i1144-moarrpc 2017-02-27 10:36:48 -08:00
Dan Finlay 4697aca02c Got personal_sign working
Also fixed bug where signing would not close popup.
2017-02-23 14:23:45 -08:00
Kevin Serrano 62854398f1
Tested against code to play nice with unit tests. 2017-02-23 13:56:58 -08:00
Dan Finlay 7ec25526b7 Add alternate UI for pending personal_sign messages 2017-02-23 11:18:49 -08:00
Kevin Serrano 7a0ce31bd3
Implemented functionality for displaying recent custom RPCs 2017-02-22 15:12:56 -08:00
Dan Finlay 6c0916c28d Fix reference 2017-02-21 14:37:01 -08:00
Dan Finlay 0584988688 Move sigUtil and keyrings to external modules
These external modules now have their own test coverage and build enforcement. This allowed me to somewhat more easily add good tests around our personalSign strategy (held now in [eth-sig-util](https://github.com/flyswatter/eth-sig-util), and allow each of the keyrings to import that, etc.
2017-02-21 14:25:47 -08:00
Kevin Serrano 026e0e3383
Fix naming 2017-02-21 12:51:46 -08:00
Kevin Serrano db48f8984f
Basic infrasture for RPC list added. 2017-02-21 12:32:13 -08:00
Kevin Serrano f9601ac2dd
Merge branch 'dev' into disclaimer-notify 2017-02-09 19:04:17 -08:00
Kevin Serrano 65c84ac4b2
Delete all code related to disclaimers. 2017-02-09 18:17:50 -08:00
Kevin Serrano 4033b620bd
Allowed net_version to be called synchronously 2017-02-08 15:51:22 -08:00
Dan Finlay c0637f8d6a Fix typo 2017-02-04 16:32:09 -08:00
Dan Finlay 0c0c0051e4 Remove shapeshift tx list from idStore 2017-02-04 15:20:31 -08:00
Dan Finlay 89bbccb09c Stop removing old shapeshift txs 2017-02-04 15:15:50 -08:00
Dan Finlay af439cc6cf Do not remove completed shapeshift deposits 2017-02-03 21:40:27 -08:00
Dan Finlay 901eeb5c10 Fix bug when clearing old shapeshift txs 2017-02-03 21:39:22 -08:00
Dan Finlay 5d37f90787 Automatically remove shapeshift txs over 11 minutes old with no payment 2017-02-03 21:36:04 -08:00
Dan Finlay 4dc71ed57b Got ShapeShiftController back to working 2017-02-03 21:12:18 -08:00
Dan Finlay 13ee92909c Mostly got shapeshift tx management into its own controller
Rendering the list is still having issues, so this isn't done yet.
2017-02-03 20:45:20 -08:00
kumavis bc4efa1807 eth-store - update store state after manipulating 2017-02-03 16:07:58 -08:00
kumavis ff87b9dc7a id mgmt - update to latest eth_sign spec 2017-02-03 14:59:07 -08:00
kumavis 77f8995568 migrations - fix migration #9 and add safety checks to migrator 2017-02-03 14:00:30 -08:00
kumavis 99d6a329a2 eths-store - eagerly set current block 2017-02-03 12:35:01 -08:00
kumavis 9e4ef45b6a migration #9 - break out CurrencyController substate 2017-02-02 23:32:24 -08:00
kumavis b233e7e37c eth-store - cbs default to noop 2017-02-02 22:32:00 -08:00
kumavis 73edfc9f31 eth-store - convert to obs-store subclass 2017-02-02 22:05:06 -08:00
kumavis bcb86f38cb messageManager - move view state to obs-store 2017-02-02 18:21:22 -08:00
Frankie 10ce2a781f emit a update badge 2017-02-01 15:12:15 -08:00
Frankie d93708b553 put updateBadge back in 2017-02-01 15:08:06 -08:00
Frankie c7b9adbfcb swap out set state for updateState 2017-02-01 15:00:41 -08:00
Frankie ce0c3ed03c Merge branch 'dev' into messageManagerCleanUp 2017-02-01 12:03:42 -08:00
Frankie 1b16b46241 code clan up and tests 2017-02-01 11:54:01 -08:00
kumavis 2fa60cfcbf continue rename selectedAccount to selectedAddress 2017-01-30 15:25:12 -08:00
kumavis f9b31fe2c3 rename selectedAccount to selectedAddress 2017-01-30 15:08:31 -08:00
kumavis 0a1918f71a preferences - introduce preferences controller 2017-01-30 12:42:24 -08:00
Frankie fdee1e3701 Merge branch 'dev' into messageManagerCleanUp 2017-01-28 22:59:28 -08:00
Frankie 8be68575bb Clean up message manger includes:
Provider egine bump
Remove presence of message manger in keyring controller
Change the status wording fom conf to approved
make Message manager a class
fix messages not being apart of the badge
re write message manger to better reflect controller pattern
2017-01-28 20:28:20 -08:00
kumavis 3afd0ef27d tests - remove persistence and start with initial state 2017-01-27 23:04:34 -08:00
Frankie a8ed780d9b Merge branch 'dev' into messageManagerCleanUp 2017-01-27 14:17:12 -08:00
Frankie 451845142e Rewrite message controller to fit controller pattern 2017-01-27 14:16:35 -08:00
kumavis fc3a53ec7b background - stream disconnection fix 2017-01-26 20:18:28 -08:00
kumavis af115aa4c1 background - organize metamask instantiation 2017-01-26 15:09:31 -08:00
kumavis 76ce348a04 obs-store - use published module 2017-01-24 19:47:00 -08:00
kumavis 74dc20bdf1 Merge branch 'dev' into obs-store2 2017-01-21 10:06:50 -08:00
Dan Finlay c53932a19a Merge branch 'dev' into conversion-api-err 2017-01-17 12:08:47 -08:00
kumavis ef81bde98b eth-store - emit update on new account add 2017-01-14 21:46:40 -08:00
Frankie 580d93188c Satisfy review needs:
removed unnecessary this.query = opts.query from constructor
Created a tx error state for errors in approveTransaction
validateTxParams has been moved to tx-utils
removed "value" arg from _setTxStatus
2017-01-13 17:47:20 -08:00
kumavis 29e83d71a8 background - handle tx finalization in controllers instead of provider-engine 2017-01-13 02:00:11 -08:00
kumavis 80514d73b5 migrations - wip - 005 multivault migration 2017-01-12 02:24:33 -08:00
kumavis b33c51c0a6 migrations - introduce promise-based migrator 2017-01-12 01:17:05 -08:00
kumavis 3bc996878b background - move pojo migrator to outside of metamask controller 2017-01-11 22:47:56 -08:00
kumavis 8012ede126 background - introduce ObservableStore 2017-01-11 19:31:21 -08:00
kumavis 65ba9fc39e bugfix - portstream - dont wrap cb in try catch 2017-01-11 19:09:49 -08:00
kumavis 89a5eff270 currency conversion - less noisy error 2017-01-11 14:40:35 -08:00
Dan Finlay 21e2e4efd8 Remove erroneous OOG estimation logic. 2017-01-10 14:20:46 -08:00
kumavis b301c0fb48 deps - replace promise-request with fetch 2017-01-10 12:04:26 -08:00
Dan Finlay 6c99d09404 Fixed bugs with sanity-checking
- Was incorrectly calling some eth-query methods (left over from old local eth-query)
- Was still passing block to getAccount in addAccount
- Now emitting update only after all account balances are loaded, reducing UI update traffic.
2017-01-04 14:54:40 -08:00
Dan Finlay a107b66854 Caught typo 2017-01-04 14:15:53 -08:00
Dan Finlay 18e6d266c1 Add descriptive comment 2017-01-04 14:07:08 -08:00
Dan Finlay 381a60695d Linted 2017-01-04 14:05:00 -08:00
Dan Finlay 3588aabdf2 Removed reliance on eth-store internal custom eth-query 2017-01-04 14:01:32 -08:00
Dan Finlay 08351f801a Move eth-store@1.1.0 into local repo. 2017-01-04 13:56:21 -08:00
kumavis 616721f47d inpage-provider - add isMetaMask
adds `metamaskInpageProvider.isMetaMask === true`
Fixes #727
2017-01-02 12:20:09 -08:00
Frankie fa3e708f34 Merge branch 'dev' into TxManager 2016-12-23 12:48:36 -08:00
Dan Finlay 1861bf8e2b Remove log 2016-12-22 14:46:14 -08:00
Dan Finlay 898e96fd6a Merge pull request #948 from MetaMask/RecoverLostAccounts
Auto-Recover accounts lost to BIP44 derivation fix
2016-12-22 14:43:43 -08:00
Dan Finlay 98527c1c25 Fix account injection bug
It seems `selectedAddress` was removed from the keyring-controller’s state, and is used to populate the injected current account.

I couldn't help myself, I dug around, I found a PR named [changed all instances of selectedAddress to selectedAccount](f5b0795ac5) by @Zanibas.  Sorry, Kevin!  Had you actually changed all instances, this bug would not have happened.

Fixes #908
2016-12-22 14:43:00 -08:00
Dan Finlay ebeaf3b3d6 Restructured migration
Migrator now returns a lostAccount array that includes objects
these objects include keys of address and privateKey,
this allows the MetamaskController to restore the lost accounts
even without customizing the idStore or the KeyringController.

Also includes a patch that allows idStore to synchronously export private keys.
2016-12-21 17:21:10 -08:00
Dan Finlay a3a64afdd5 Return undefined when vault is uninitialized 2016-12-21 17:20:14 -08:00
Frankie 6f7c23fd28 Merge branch 'dev' into TxManager 2016-12-21 14:31:07 -08:00
Frances Pangilinan 6e78494846 First pass at revision requests 2016-12-21 13:41:32 -08:00
Dan Finlay 674b268982 Merge pull request #916 from MetaMask/i894-DetectBadAccounts
I894 detect bad accounts
2016-12-20 11:50:26 -08:00
Dan Finlay 26f1e6cbd2 Remove encryptor in favor of external browser-passworder
I broke out the encryptor lib into its own module on npm called browser-passworder.
2016-12-19 21:55:02 -08:00
Dan Finlay 20d2204ce6
Made changes according to feedback. 2016-12-19 19:32:59 -08:00
Kevin Serrano e9bea92ac3
Lint. 2016-12-19 14:55:52 -08:00
Frances Pangilinan 090935f90a Create a TxManager 2016-12-14 12:55:41 -08:00
Dan Finlay 7b9749e30c Got bad account detection working and added to state 2016-12-09 12:24:25 -08:00
Dan Finlay ab9e15b782 Mostly added bad account detection
Currently riddled with logs, because the migrator is inexplicably returning before generating the new style accounts for comparison.
2016-12-08 14:22:02 -08:00
Dan Finlay 1880cda9b9 Fix vault encrypting & unlocking bug
This is only a bug in dev, but was committed yesterday.

Sometimes the `encrypt` method was being passed values other than the password as the encryption key, leading to un-unlockable vaults.

To find this, and avoid it for all time hereafter, I added several more steps to our oft-neglected integration test suite, which now fully initializes a vault, locks it, and unlocks it again, to make sure all of those steps definitely work always.
2016-11-30 19:36:24 -08:00
Dan Finlay 95bcc21a06 Add useful nodeify error message
If a nodified method does not return a Promise, it will throw an error, like this:
```
Error in event handler for (unknown): Error: The function setSelectedAccount did not return a Promise, but was nodeified.
```
2016-11-29 15:54:10 -08:00
Dan Finlay 9e764b1935 Fix nodeify 2016-11-28 17:27:20 -08:00
Dan Finlay 80e76b45ee Denodeify most of KeyringController
Mostly Fixes #893

A couple methods cache callbacks, and will require a larger refactor to fully denodeify.

Specifically, our methods involving web3 requests to sign a tx, sign a message, and approve or cancel either of those.

I think we should postpone those until the TxManager refactor, since it will likely handle this response caching itself.
2016-11-28 16:13:03 -08:00
Dan Finlay b899119582 Merge branch 'master' into dev 2016-11-23 16:54:27 -08:00
kumavis c0a2eb146a rpc - add sync uninstallFilter support 2016-11-23 10:48:20 -08:00
Dan Finlay 05c8658ff3 Fix new encryptor migration logic 2016-11-22 17:41:54 -08:00
Dan Finlay de8da9ddf6 Simplify Encryptor API Surface
At least, the portion of it that we use.

Moved salting within the encryptor, so it does not need to be managed externally.

KeyringController now caches the password instead of a passwordDerivedKey, since it is ignorant of the salt.

Encryptor payload is now in a JSON format, so its portions are both base64 encoded *and* labeled appropriately.  The format is `{ "data": "0x0", "iv": "0x0", "salt": "string" }`.

Fixes #843
Fixes #859
2016-11-22 15:54:51 -08:00
kumavis 4669f262e2 Merge pull request #857 from MetaMask/i841-RenameMethod
Rename idStoreMigrator method for clarity
2016-11-22 15:55:48 -05:00
kumavis e61d792832 Merge pull request #869 from MetaMask/dev-cleanup
Dev Cleanup Package
2016-11-22 15:23:55 -05:00
kumavis fa2f0dee28 idStore - fix estimateGas calculation 2016-11-22 12:10:49 -08:00
Kevin Serrano 6dad4f1f20
Phase out ethereumjs-util from encryptor module. 2016-11-22 11:17:05 -08:00
Dan Finlay 9fb96128e6 Rename idStoreMigrator method for clarity
Fixes #841
2016-11-21 19:52:56 -08:00
Kevin Serrano f5b0795ac5
change all instances of selectedAddress to selectedAccount. 2016-11-21 16:21:16 -08:00
Kevin Serrano 9123e70434
Remove entropy from encryption and project. 2016-11-21 15:49:03 -08:00
Dan Finlay 7ab9d40820 Merge branch 'dev' into i831-AddRopsten-Dev 2016-11-21 11:03:32 -08:00
Dan Finlay e8a8302624 Begin adding Ropsten support
Ropsten links will still not work until Etherscan publishes their ropsten link format.

At that time we will need to update ui/lib/account-link.js

Otherwise, fixes #831
2016-11-21 10:58:49 -08:00
Kevin Serrano d6286cd13a
Maintain linting. 2016-11-18 16:27:26 -08:00
Dan Finlay ce1c5eb75a Update migration code for new hd wallet param name 2016-11-18 11:37:07 -08:00
Kevin Serrano bef023fb4a
Resolve merge conflict. 2016-11-18 09:23:20 -08:00
kumavis 39e0a33bba random-id - use Number.MAX_SAFE_INTEGER as max 2016-11-17 14:29:35 -08:00
Dan Finlay 8eb91e89bf Increment tx ids to avoid collisions
Fixes #791

It was possible for two requests to have the same ID, causing a crash and loss of StreamProvider connection.

This new id generation strategy creates a random ID, and increments it for each request.

In case the id generator is included from two different processes, I'm initializing the counter at a random number, and rolling it over a large number when it gets too big.
2016-11-17 14:05:12 -08:00
Dan Finlay 4352c7031a Merge branch 'i328-MultiVault' of github.com:MetaMask/metamask-plugin into i328-MultiVault 2016-11-17 13:51:32 -08:00
Dan Finlay f229d32442 Replace old random-id code with incrementing id generator 2016-11-17 13:49:46 -08:00
Kevin Serrano e18109f1ea
Fix semantics in comments 2016-11-15 13:45:21 -08:00
Kevin Serrano 585284cb88
Lints. 2016-11-15 13:44:22 -08:00
Kevin Serrano 64296df309
Resolve merge conflicts. 2016-11-15 13:43:15 -08:00
Kevin Serrano 7de6b12aad
Re-enable disclaimer screen. Rename variables to reflect role more clearly. 2016-11-14 16:49:16 -08:00
Kevin Serrano d891869eff
First attempt at fixing errors in confirmation screen. 2016-11-14 11:19:01 -08:00
Kevin Serrano 7012747fb5
Package normalize inside sig util file. 2016-11-11 15:37:54 -08:00
Kevin Serrano 23263bec7d
Linting to the max. 2016-11-11 10:26:12 -08:00
kumavis e123e3095b Merge branch 'master' into i328-MultiVault 2016-11-11 01:01:06 -05:00
kumavis 536cab0687 detect tx error - show warning and fix gasLimit 2016-11-10 21:19:34 -08:00
Frankie f665b779cb Merge branch 'master' into i328-MultiVault 2016-11-10 16:53:47 -08:00
Kevin Serrano e2b2083df0
remove gas field, due to alias redundancy. 2016-11-09 16:38:28 -08:00
Kevin Serrano b6b4be61d9
Fix bug for increasing gas by 20 percent. 2016-11-09 16:29:24 -08:00
Dan Finlay 7068d2e71c Adjust gas buffer to be 20% over estimate 2016-11-08 08:39:41 -08:00
Dan Finlay 6f39924e60 Increase gas buffer
Fixes #795
2016-11-08 08:32:34 -08:00
Dan Finlay 161ff62fdc Merge branch 'master' into i328-MultiVault 2016-11-07 15:38:25 -08:00
Dan Finlay 1896928562 Fix gas price buffering
Our gas price buffering logic had a bug, because bn.js has inconsistent behavior when using hex-prefixed output.  The issue has been opened with them here:
https://github.com/indutny/bn.js/issues/151

We've corrected our usage in the mean time.
2016-11-07 11:56:20 -08:00
Dan Finlay ba7d6b437f Fix password validation and persistence issue
Was wiping the vault on each successful password attempt... :P
2016-11-03 16:14:37 -07:00
Dan Finlay bd2a429a85 Fix account nicknaming bug
When nicknaming, we weren't normalizing the input, and so we were retrieving with differently formatted addresses than we were persisting.
2016-11-03 11:59:20 -07:00