Commit Graph

1098 Commits

Author SHA1 Message Date
Ivan Socolsky 89b2a08f9f rename sendTx -> publishTx 2015-12-08 12:01:49 -03:00
Ivan Socolsky 3f35d8f141 return upgrade_needed for legacy clients 2015-12-08 10:30:27 -03:00
Ivan Socolsky 0bb043d034 simplify proposal creation + allow non-validated outputs (external txps) 2015-12-08 10:30:27 -03:00
Ivan Socolsky 0a5e144f93 add express endpoint for sending tx 2015-12-08 10:30:27 -03:00
Ivan Socolsky 092c3ff37e make self contained signature keys optional 2015-12-08 10:30:27 -03:00
Ivan Socolsky 87d7a1bd92 tests for proposal signature & signing key 2015-12-08 10:30:27 -03:00
Ivan Socolsky 76831caf50 verify proposal signature over raw tx 2015-12-08 10:30:26 -03:00
Ivan Socolsky 4a7614e2d5 rename createTx -> createTxLegacy 2015-12-08 10:30:26 -03:00
Ivan Socolsky 8ef05c8841 check available utxos when sending temporary txp 2015-12-08 10:30:26 -03:00
Ivan Socolsky 30c8072b8b send tx (publish) + tests 2015-12-08 10:30:26 -03:00
Ivan Socolsky 5755b965e8 use TxProposal#fromObj as a factory for proposals 2015-12-08 10:30:26 -03:00
Ivan Socolsky 2211847d0c remove type from txproposal model 2015-12-08 10:30:26 -03:00
Ivan Socolsky 9db456550f create temporary proposal + test 2015-12-08 10:30:26 -03:00
Ivan Socolsky 6deb9e77f6 txproposalv3 -> txproposal 2015-12-08 10:30:26 -03:00
Ivan Socolsky 563ee14dc1 txproposal.js -> txproposal_legacy.js 2015-12-08 10:30:26 -03:00
Ivan Socolsky 63eca6b529 txProposal v3 2015-12-08 10:28:21 -03:00
Ivan Socolsky 92f9f0bc7d force ignoreMaxGap flag 2015-12-06 01:19:13 -03:00
Ivan Socolsky 98773fe40a handle invalid xpub on wallet join 2015-12-01 11:25:59 -03:00
Ivan Socolsky 1b6980fd1e call toObject before storing models 2015-11-23 17:28:02 -03:00
Ivan Socolsky 80d1d31130 Merge pull request #330 from troggy/txp/manual-outputs
Add EXTERNAL proposal type
2015-11-20 15:10:40 -03:00
Ivan Socolsky 524ed773e2 add WALLET_LOCKED error on lock timeout 2015-11-20 11:08:01 -03:00
Matias Alejo Garcia f8248a0eba Merge pull request #403 from isocolsky/fix/multi-output-no-change
Fix/multi output no change
2015-11-18 16:03:51 -03:00
Ivan Socolsky 5794883eb0 allow either script or toAddress 2015-11-16 18:39:51 -03:00
Ivan Socolsky 6476de0461 remove unused elements in output order array 2015-11-16 17:59:48 -03:00
Kosta Korenkov 2bdc6cf19d Make API.createTx accept preselected inputs
Add EXTERNAL tx type

It will allow clients to specify inputs and outputs when creating proposals

Extract _validateOutputs method

Use for-loop to simplify and make it fail-fast.

Do not validate outputs for EXTERNAL tx type

Outputs may be of any kind (e.g. OP_RETURN). It is assumed that outputs are validated by caller.

Move output validation to a single place

Check tx and estimate fees for EXTERNAL proposal

Set amount for external proposals

Use changeAddress to determine network

Do not shuffle outputs for EXTERNAL txp

Fix input selection to respect fees

Add more inputs, if we selected exactly the amount to spend, so we avoid 'Insufficient funds for a fee' error

Properly handle UTXO with 0 satoshis

Minor fixes

ignore invalid utxos
2015-11-11 21:23:44 +03:00
Ivan Socolsky 446d7ff2e5 tx.derivationStragegy = wallet.derivationSTrategy 2015-11-11 12:14:07 -03:00
Ivan Socolsky fa58b5b778 restore derivation strategy on txps 2015-11-11 11:59:34 -03:00
Matias Alejo Garcia a1f58a6c8c Merge pull request #393 from isocolsky/remove-bwu-dep
Remove BWU dependency
2015-11-09 10:48:09 -03:00
Ivan Socolsky 414b4403c4 remove unused method 2015-11-06 12:05:33 -03:00
Ivan Socolsky 714b95b32c remove derivationStrategy field from txp 2015-11-06 12:02:41 -03:00
Ivan Socolsky 2367365707 fix GET v1/addresses/ endpoint 2015-11-04 12:36:39 -03:00
Ivan Socolsky e55983b151 mv Utils.buildTx -> TxProposal 2015-11-03 13:01:12 -03:00
Ivan Socolsky 2bec543c6f mv Utils.deriveAddress -> Address.derive 2015-11-03 12:21:31 -03:00
Ivan Socolsky 795097bf04 refactor constants+defaults+utils -> common 2015-10-30 17:16:20 -03:00
Ivan Socolsky d451fff6fc clean up address scan config 2015-10-30 15:39:33 -03:00
Ivan Socolsky eb006c3db3 remove bitcore-wallet-utils dependency 2015-10-30 15:24:47 -03:00
Ivan Socolsky ea5926229c move constants definitions to own module 2015-10-30 15:24:28 -03:00
Ivan Socolsky 5fba6c7f75 redefine constants 2015-10-30 10:34:13 -03:00
Matias Alejo Garcia 3425f9ec57 Merge pull request #392 from isocolsky/feat/get-main-addresses-params
Add params to getMainAddresses
2015-10-29 16:38:22 -03:00
Matias Alejo Garcia 5edfe3d384 Merge pull request #390 from isocolsky/limit-address-gap
Limit nb of consecutive addresses without activity
2015-10-29 16:37:47 -03:00
Ivan Socolsky 69dda0ed6a remove unused walletId param 2015-10-29 16:35:30 -03:00
Ivan Socolsky 1872f07eed do not perform check on v1 API 2015-10-29 15:28:11 -03:00
Ivan Socolsky 5a3eef6c5c pass params from express endpoint 2015-10-29 15:19:32 -03:00
Ivan Socolsky ef18c786fb handle limit & reverse params 2015-10-29 15:17:39 -03:00
Matias Alejo Garcia ade6458b6c add tests 2015-10-28 18:34:05 -03:00
Matias Alejo Garcia eb4c1fda03 use blocktime if present 2015-10-28 17:46:48 -03:00
Ivan Socolsky 64a48db991 check single address activity on blockchain 2015-10-28 13:25:32 -03:00
Ivan Socolsky 0b43b3b85c cache address activity 2015-10-28 13:23:13 -03:00
Ivan Socolsky 89575da4e8 optimize activity check for single address 2015-10-27 16:51:15 -03:00
Ivan Socolsky cf37d013b6 changed stub methods & more tests 2015-10-27 16:22:42 -03:00
Ivan Socolsky a8a6962c74 check activity of previous addresses before generating a new one 2015-10-27 16:00:29 -03:00
Ivan Socolsky 2f990f42a8 test 2015-10-27 15:38:11 -03:00
Ivan Socolsky f00b5dbe68 refactor constant definition 2015-10-27 15:19:38 -03:00
Ivan Socolsky 5eb9976646 remove comments 2015-10-26 19:34:27 -03:00
Ivan Socolsky fb035c0ffc receive address activity as json 2015-10-26 19:30:57 -03:00
Ivan Socolsky 09d2ad3225 remove delay 2015-10-26 19:30:43 -03:00
Ivan Socolsky 284c2540f9 do not go beyond max gap addresses 2015-10-26 18:31:10 -03:00
Ivan Socolsky 9ffcb7e470 scan addresses 1 by 1 and rewind to last used one 2015-10-26 18:05:53 -03:00
Ivan Socolsky e7855e1e89 replace minTs with timeSpan (in secs) in /v1/notifications 2015-10-19 17:23:50 -03:00
Ivan Socolsky d6f9633a73 improve tests 2015-10-19 15:04:09 -03:00
Ivan Socolsky 09c5af073d accept minTs arg on v1/notifications but limit it to now - 60s 2015-10-19 14:58:38 -03:00
Ivan Socolsky 5c048e390c fetch new block notifications along with regular wallet notifications 2015-10-19 14:28:43 -03:00
Ivan Socolsky 92944d1d40 remove old fetchNotifications method 2015-10-19 14:27:29 -03:00
Ivan Socolsky bee66435e9 store new block notifications with walletId=network 2015-10-19 13:09:33 -03:00
Ivan Socolsky 781f2c44b7 rearrange static methods 2015-10-19 12:32:29 -03:00
Ivan Socolsky 19da3f8fd5 add x-service-version header 2015-10-19 11:18:26 -03:00
Ivan Socolsky 685df45e36 express endpoint + tests 2015-10-15 16:30:14 -03:00
Ivan Socolsky bf40b5a000 getLatestNotifications -> getNotifications 2015-10-15 16:01:23 -03:00
Ivan Socolsky 3bb097c7f4 rm getNotifications 2015-10-15 16:01:23 -03:00
Ivan Socolsky b23f412bf3 getLatestNotifications + tests 2015-10-15 16:01:23 -03:00
Braydon Fuller 7f6425c74a Start of BWS as a Bitcore Node Service. 2015-10-06 13:01:08 -04:00
Matias Alejo Garcia 7aa37c30e6 Merge pull request #372 from matiu/feat/logs
add walletId and copayerId to log
2015-10-06 13:53:39 -03:00
Matias Alejo Garcia 738418fd59 Merge pull request #361 from matiu/feat/log-txproposal
Feat/log txproposal
2015-10-06 13:53:22 -03:00
Matias Alejo Garcia ac5af8ed73 add walletId and copayerId to log 2015-09-29 10:54:06 -03:00
Ivan Socolsky 6df6c00821 do not send new txp email for 1-of-N 2015-09-25 17:07:41 -03:00
Ivan Socolsky 88240dce1a Merge pull request #362 from greggzigler/feat/get_version
clients want bws version for logging and debugging
2015-09-18 14:33:26 -03:00
Gregg Zigler 19cb11abeb rename server to service 2015-09-18 10:20:38 -07:00
Matias Alejo Garcia 0f25d315e9 monitor also p2pkh addresses 2015-09-18 13:23:09 -03:00
Ivan Socolsky e346184339 add dryRun param 2015-09-17 11:39:23 -03:00
Gregg Zigler bf76023869 use 'bws-' prefix to match style of bwc clientVersion values 2015-09-15 09:57:10 -07:00
Gregg Zigler 9b630002ae rename to disambiguate from clientVersion 2015-09-15 09:43:24 -07:00
Gregg Zigler 9a8c467a01 clients want bws version for logging and debugging 2015-09-15 09:28:08 -07:00
Matias Alejo Garcia 95e41050bd add log 2015-09-14 14:59:49 -03:00
Ivan Socolsky 4575262513 implement check 2015-09-11 11:15:46 -03:00
Matias Alejo Garcia 7c210db5ec add insight error log 2015-09-10 15:47:40 -03:00
Matias Alejo Garcia 0a09dac821 Merge pull request #357 from isocolsky/ref/bip44
Ref/bip44
2015-09-10 15:46:41 -03:00
Ivan Socolsky a77c81ee7a test legacy/new clients interacting 2015-09-10 14:53:33 -03:00
Ivan Socolsky bbd3689c54 v2 endpoints for create & join 2015-09-10 14:53:21 -03:00
Matias Alejo Garcia a1db2a44d4 fix v1/feelevels 2015-09-10 11:04:49 -03:00
Matias Alejo Garcia a8607fa11b better insight error handling
add check to getPending

add check to getPending

add tests

rm log

store TXID upon tx completion

monitor accepted txs

change delay

change _checkTxInBlockchain

change _checkTxInBlockchain

rm useless params, refactor txid param

complete tx at fetch
2015-09-09 15:14:11 -03:00
Matias Alejo Garcia 4baaa6dbab Merge pull request #336 from isocolsky/ref/feelevels
Replace feePerKB with feePerKb to match rest of API
2015-09-09 14:46:52 -03:00
Matias Alejo Garcia fdb3e35864 better insight error handling 2015-09-08 00:57:59 -03:00
Ivan Socolsky 3bf7b4d51f prioritize error messages 2015-09-07 18:52:07 -03:00
Ivan Socolsky 69ae9a63e7 add script type to address 2015-09-07 17:46:45 -03:00
Ivan Socolsky 97e63f9c6f enable both bip44/45 & p2sh/pkh 2015-09-07 17:18:32 -03:00
Ivan Socolsky 595a54322b correctly build tx proposal on P2PKH 2015-09-05 18:49:43 -03:00
Ivan Socolsky a197d5c98b add p2pkh flag to POST v2/wallets endpoint 2015-09-05 01:19:21 -03:00
Ivan Socolsky 45b7b65e99 allow p2pkh addresses in 1-of-1 2015-09-05 01:18:09 -03:00
Ivan Socolsky 27521d45b3 add POST v2/wallets endpoint 2015-09-05 00:56:37 -03:00
Ivan Socolsky a9ad04692b fix tests 2015-09-04 23:11:44 -03:00
Ivan Socolsky 765ccf33a0 restrict BIP44 usage to 1-of-1 wallets 2015-09-04 21:05:39 -03:00
Ivan Socolsky e21d6dabd6 fix scan when blockchain explorer error 2015-09-04 09:38:56 -03:00
Kosta Korenkov 20af02e24f Allow arbitrary customData for tx proposals
This way Copay addons may attach related data to proposals
2015-09-03 12:52:12 +03:00
Ivan Socolsky 3f1bae6f25 Merge pull request #340 from matiu/feat/rawTx
add transaction raw HEX if tx status is "accepted"
2015-09-02 13:36:03 -03:00
Matias Alejo Garcia 9de8cfcbf2 add raw HEX if tx is "accepted" 2015-09-02 12:38:28 -03:00
Ivan Socolsky c974cf791a default address manager to BIP45 2015-09-01 12:16:26 -03:00
Ivan Socolsky db5c452a74 replaced other regex checks for client version 2015-09-01 12:00:06 -03:00
Ivan Socolsky df5fdb1f75 parse client version 2015-09-01 11:53:07 -03:00
Ivan Socolsky e11da7cec5 remove AddressManager from copayers on BIP44 2015-08-31 17:38:39 -03:00
Ivan Socolsky d1e318a5b7 v0.2.0 2015-08-31 17:25:36 -03:00
Ivan Socolsky 094e19bc31 use constants form BWU 2015-08-31 17:13:46 -03:00
Ivan Socolsky fe46f95b32 test for legacy clients trying to join BIP44 wallet 2015-08-31 11:59:54 -03:00
Ivan Socolsky 3ac0bc5e27 switch tests to bip44 2015-08-28 14:54:36 -03:00
Ivan Socolsky 004890bd6b use BIP45 by default 2015-08-27 17:15:25 -03:00
Ivan Socolsky a4f1169aa9 allow addressManager to handle BIP44 derivations 2015-08-27 17:09:14 -03:00
Ivan Socolsky 7d9e43fccc initialize version field from #create method 2015-08-27 10:47:32 -03:00
Ivan Socolsky bafe84a2e0 replace feePerKB with feePerKb to match rest of API 2015-08-26 15:02:11 -03:00
Kosta Korenkov a5e44070b9 Allow to exclude certain UTXO from coin selection
Optional array of lockedUtxos (in ``txid:vout`` form) can be passed with tx proposal options.
When selecting inputs for proposal, these UTXOs will not be used.
2015-08-26 12:47:45 +03:00
Ivan Socolsky ab93d5c58e Merge pull request #335 from greggzigler/bug/cloudflareErrorLogging
errors from external services have different code and message props
2015-08-25 21:10:21 -03:00
Gregg Zigler f94c373031 errors from external services have different status and message property names 2015-08-25 16:51:54 -07:00
Ivan Socolsky 880f3185b5 fix api/v2/status 2015-08-25 18:33:39 -03:00
Ivan Socolsky 6317c65f2c fix api/v2/status 2015-08-25 17:11:36 -03:00
Ivan Socolsky 1dfc599ac4 fix arg in express 2015-08-25 16:29:40 -03:00
Ivan Socolsky 6cba8abc5c add custom data to copayers 2015-08-25 16:12:47 -03:00
Ivan Socolsky cffde9de82 rm leveldb storage 2015-08-25 15:15:41 -03:00
Ivan Socolsky 0ee0161e10 v2/wallets/ endpoint 2015-08-25 15:15:41 -03:00
Ivan Socolsky 1007ad1b05 includeExtendedInfo switch 2015-08-25 15:15:41 -03:00
Ivan Socolsky f8d9ca542d implement get status & improve tests 2015-08-25 15:15:40 -03:00
Matias Alejo Garcia c4e42da677 rm comment 2015-08-20 16:02:25 -03:00
Matias Alejo Garcia 637a1e2d8b refactor create/fromObj 2015-08-20 14:16:43 -03:00
Matias Alejo Garcia 72ba0b3a58 fix init 2015-08-20 14:16:43 -03:00
Matias Alejo Garcia ec3575e629 fix string 2015-08-20 14:16:43 -03:00
Matias Alejo Garcia aeaa513510 update type 2015-08-20 14:16:43 -03:00
Matias Alejo Garcia e5860141a3 ref mnemonic 2015-08-20 14:16:05 -03:00
Matias Alejo Garcia 0433dc05cb add backwards compat with bwc 2015-08-20 14:15:33 -03:00
Matias Alejo Garcia 0a1b9319e5 change endpoint for add access 2015-08-20 14:15:33 -03:00
Matias Alejo Garcia c0d2fca792 adds express endpoint for addAccess 2015-08-20 14:15:33 -03:00
Matias Alejo Garcia dac564f290 adds addAccess call and tests 2015-08-20 14:15:33 -03:00
Matias Alejo Garcia edc3bc6713 supports multiple pubkeys per copayer 2015-08-20 14:15:33 -03:00
Matias Alejo Garcia 3122e9ba7c test passing, rebased 2015-08-20 14:15:33 -03:00
Matias Alejo Garcia cfbf184502 removes isTemporaryRequestKey and replaceTemporaryRequestKey feature. No longer supports joining legacy (<0.9) copayers 2015-08-20 14:15:33 -03:00
Matias Alejo Garcia 3bcabaf9e4 Merge pull request #326 from isocolsky/fee_level_def
Redefine fee levels
2015-08-14 10:29:32 -03:00
Ivan Socolsky c0f673f1ed fix result type 2015-08-13 18:13:34 -03:00
Ivan Socolsky 3bd341c65f fee levels set to 1, 2, 6 2015-08-13 17:27:06 -03:00
Ivan Socolsky a8eedc8c01 rename internal constants 2015-08-13 17:24:49 -03:00
Ivan Socolsky 4502dd284a express endpoint 2015-08-13 16:08:27 -03:00
Ivan Socolsky a1835c76a2 broadcast raw tx 2015-08-13 16:06:22 -03:00
Ivan Socolsky 3f0cfbc7c1 listen to address param 2015-08-13 14:23:06 -03:00
Ivan Socolsky fca67fba8a implement utxos for external addresses 2015-08-13 12:01:22 -03:00
Ivan Socolsky 4dbcb639fe add opts param to getUtxos 2015-08-13 11:00:27 -03:00
Ivan Socolsky bb0e8d7093 change fee sampling 2015-08-12 18:39:19 -03:00
Ivan Socolsky 4c7e7a6d2f send list of nbBlocks to insight 2015-08-12 18:39:09 -03:00
Matias Alejo Garcia f9a33c3c93 Merge pull request #309 from isocolsky/block_event
Listen for new blocks and raise notification
2015-08-11 17:51:51 -03:00
Matias Alejo Garcia c5fc6be856 Merge pull request #322 from isocolsky/fix/fee_rounding
Fix/fee rounding
2015-08-11 17:48:43 -03:00
Ivan Socolsky 3533b60e6b change fee rounding strategy 2015-08-11 16:52:10 -03:00
Ivan Socolsky 256fb0095b improve error message 2015-08-11 16:26:16 -03:00
Ivan Socolsky af9dd5b3fe disallow signing newer txs from legacy clients 2015-08-11 14:16:58 -03:00
Ivan Socolsky c0779776c0 check for bw*- as client id 2015-08-10 22:25:13 -03:00
Ivan Socolsky e4e138e139 add TX_NOT_FOUND 2015-08-05 10:48:36 -03:00
Ivan Socolsky 76c545b110 add WALLET_NOT_COMPLETE 2015-08-05 10:44:09 -03:00
Ivan Socolsky 03fe48209e add WALLET_NOT_FOUND 2015-08-05 10:41:03 -03:00
Ivan Socolsky 14a08f2e0f listen for new blocks and raise notification 2015-08-04 16:10:48 -03:00
Ivan Socolsky 90dfc17ab5 new error for address network mismatch 2015-08-04 12:07:25 -03:00
Ivan Socolsky e1fac88a8e improve error codes 2015-08-03 16:11:09 -03:00
Ivan Socolsky 602bc9a9a3 rm BLOCKCHAINERROR error code 2015-08-02 19:48:18 -03:00
Ivan Socolsky e474c71a1e use predefined errors 2015-07-31 12:16:18 -03:00
Ivan Socolsky 86779303a9 add UPGRADENEEDED error code 2015-07-30 16:08:17 -03:00
Ivan Socolsky b659333c94 differentiate INSUFFICIENTFUNDS from INSUFFICIENTFUNDSFORFEE 2015-07-30 14:55:35 -03:00
Ivan Socolsky 87e3844e87 transaction proposals -> spend proposals 2015-07-30 11:47:16 -03:00
Ivan Socolsky 4f582382bc fix invalid fee on legacy txs 2015-07-29 18:19:53 -03:00
Ivan Socolsky 2558dcbbbd support legacy clients + tests 2015-07-29 17:45:25 -03:00
Matias Alejo Garcia 5b6ade382e Merge pull request #303 from greggzigler/feature/multi-outputs-history
getTxHistory for multiple outputs
2015-07-29 11:20:35 -03:00
Gregg Zigler 730a3269c9 include proposal type, exclude decorations, in txhistory results 2015-07-28 09:25:05 -07:00
Gregg Zigler 20487ab38a return output.message from txproposal if one exists 2015-07-28 08:45:46 -07:00
Ivan Socolsky 1a72bb9c18 BWU v0.0.23 2015-07-27 12:38:12 -03:00
Gregg Zigler 39ac518a61 let clients see multiple outputs 2015-07-27 08:24:16 -07:00
Ivan Socolsky 26aef25be6 compute total bytes to send max 2015-07-27 12:19:27 -03:00
Ivan Socolsky 5b3671b079 fix tests 2015-07-27 11:37:10 -03:00
Ivan Socolsky 344fc525e0 add fee estimation method to txp 2015-07-27 08:59:00 -03:00
Ivan Socolsky fc94c2e0cf return nbBlocks = null when fee level is unavailable 2015-07-23 11:06:04 -03:00
Ivan Socolsky 86d1818940 send back nbBlocks for each level 2015-07-23 11:05:00 -03:00
Ivan Socolsky c85111c5b2 remove emergency level 2015-07-23 11:05:00 -03:00
Ivan Socolsky 626e2a1b06 fix sum of locked confirmed utxos + tests 2015-07-20 21:35:34 -03:00
Ivan Socolsky 1603c200b6 add excludeUnconfirmedUtxos arg to txp creation 2015-07-20 21:35:34 -03:00
Ivan Socolsky 38868319b9 strip feePerKB 2015-07-20 21:35:34 -03:00
Ivan Socolsky 859b1cf042 cleaner code 2015-07-20 21:35:34 -03:00
Ivan Socolsky 9a5daa5bf4 add confirmed amounts to balance 2015-07-20 21:35:34 -03:00
Ivan Socolsky c22cfd561e fix tx history normalization 2015-07-20 16:10:08 -03:00
Kosta Korenkov 55f3a46b77 Expose getUtxos to public 2015-07-18 12:33:09 +03:00
Matias Alejo Garcia 4c74515f67 Merge pull request #285 from isocolsky/fee_levels
Dynamic fee levels
2015-07-17 16:21:05 -03:00
Ivan Socolsky efdd5d8761 avoid adding extra attributes to utxo list 2015-07-17 10:52:00 -03:00
Ivan Socolsky 15234bee6b add REST endpoint 2015-07-17 10:32:48 -03:00
Ivan Socolsky 28a6603032 log failed attempts to fetch network fee 2015-07-16 17:47:27 -03:00
Ivan Socolsky 6c6f726a06 return array instead of object 2015-07-16 16:22:55 -03:00
Ivan Socolsky b59a2a7d58 change fee levels 2015-07-16 16:22:55 -03:00
Ivan Socolsky 56f39087cb init blockchain explorer outside loop 2015-07-16 16:22:55 -03:00
Ivan Socolsky 2b243cb0a2 dynamic fees 2015-07-16 16:22:55 -03:00
Ivan Socolsky 1fd1fce82f prioritize 6+ conf 2015-07-16 15:41:05 -03:00
Ivan Socolsky 0cb085b325 change utxo selection order 2015-07-16 12:55:59 -03:00
Ivan Socolsky bdbbd8ac7a use firstSeenTs when available 2015-07-15 10:27:55 -03:00
Matias Alejo Garcia bbe6167bb2 fix syntax
Signed-off-by: Matias Alejo Garcia <ematiu@gmail.com>
2015-07-15 10:18:33 -03:00
Matias Alejo Garcia 0349076839 handle invalid txs in history 2015-07-15 10:05:40 -03:00
Matias Alejo Garcia 8403373ed3 Merge pull request #277 from matiu/bug/insight-response
fix insight response parsing with from/to are used
2015-07-13 18:07:16 -03:00
Ivan Socolsky a46c3aa34a fixes 2015-07-13 17:44:42 -03:00
Ivan Socolsky f8712795b2 remote pagination of tx history 2015-07-13 17:32:12 -03:00
Matias Alejo Garcia 80df5e2e31 fix insight response parsing with from/to are used 2015-07-13 16:37:21 -03:00
Ivan Socolsky 6e9630e0df Merge pull request #274 from greggzigler/bug/simpleProposalHash
proposals with explicit type = simple need legacy header
2015-07-13 13:56:18 -03:00
Ivan Socolsky 20b3d50ef9 use template for public tx url 2015-07-13 12:52:28 -03:00
Gregg Zigler bc565f671a get network from first output when multiple outputs in proposal 2015-07-09 12:02:04 -07:00
Gregg Zigler 3df035c5d9 proposals with explicit type = simple need legacy header 2015-07-07 14:25:34 -07:00
Ivan Socolsky 1494b82c35 generate tx url for emails 2015-07-03 15:08:32 -03:00
Ivan Socolsky b1cc7407ee remove subject from html templates 2015-07-03 14:24:24 -03:00
Ivan Socolsky 470df32a09 add getPublicUrlForTx to blockchain explorer 2015-07-03 13:59:45 -03:00
Ivan Socolsky c3a445a8c6 fix check 2015-07-02 12:09:43 -03:00
Gustavo Maximiliano Cortez a3d01f8988 Merge pull request #270 from isocolsky/fix/email_service
Fix/email service
2015-07-01 10:44:56 -03:00
Gustavo Maximiliano Cortez 44b71f2b64
Fixes reading from config.js 2015-06-30 19:17:52 -03:00
Ivan Socolsky 9c98502969 improve unit format in emails 2015-06-30 18:38:37 -03:00
Ivan Socolsky cbb1645369 try catch on formatAmount 2015-06-30 18:18:01 -03:00
Matias Alejo Garcia 1d7b635d2a Merge pull request #267 from isocolsky/client_version
Client version
2015-06-29 12:27:12 -03:00
Ivan Socolsky d76cd8ec5a add client-version to expressapp 2015-06-29 12:20:24 -03:00
Ivan Socolsky 8a8f4e7b48 avoid sending email if unable to apply template 2015-06-29 10:57:32 -03:00
Ivan Socolsky c7691400c2 improve error check 2015-06-29 10:32:12 -03:00
Matias Alejo Garcia 4552d3e524 Merge pull request #264 from isocolsky/ref/preferences
Incremental preferences
2015-06-29 09:38:14 -03:00
Ivan Socolsky fb0dcee054 combine new preferences with stored preferences 2015-06-29 09:11:03 -03:00
Matias Alejo Garcia 415d759fd0 Merge pull request #263 from isocolsky/client_version
Store client version
2015-06-29 09:09:08 -03:00
Ivan Socolsky 116bea1aa5 ignore unrecognized preferences 2015-06-29 08:57:53 -03:00
Ivan Socolsky efcabce315 store client version on every request 2015-06-29 08:41:59 -03:00
Kirvx d3404a0dda Add French to email templates 2015-06-28 00:54:50 +02:00
dabura667 1be10e2384 Add Japanese to email templates 2015-06-27 10:11:51 +09:00
Ivan Socolsky 15b0f45635 optional html body 2015-06-26 17:39:47 -03:00
Ivan Socolsky 2d5fdaca1b include unit when rendering template 2015-06-26 16:10:29 -03:00
Ivan Socolsky 044f511726 select template based on language 2015-06-26 16:10:29 -03:00
Ivan Socolsky 6609814840 test email preferences 2015-06-26 16:10:29 -03:00
Ivan Socolsky 1460bf2128 add language & unit to preferences
Signed-off-by: Ivan Socolsky <jungans@gmail.com>
2015-06-26 16:10:29 -03:00
Ivan Socolsky 7139847709 remove TxProposal#getHeader 2015-06-25 12:53:53 -03:00
Ivan Socolsky 48e0709607 simplify validations on createTx 2015-06-25 11:43:47 -03:00
Ivan Socolsky dee4a83ded refactor proposal hash 2015-06-25 11:03:11 -03:00
Gregg Zigler f324fd80cd replace missing and unsupported flags with output.valid, similar to each loops below 2015-06-23 17:11:14 -04:00
Gregg Zigler c64790f014 lodash each needs return-false to break out of loop, travis timeout debug 2015-06-22 15:02:28 -04:00
Gregg Zigler fa2170a5f3 avoid badFoo flags, avoid _.each() bug, use for-loop to check each output 2015-06-22 14:00:33 -04:00
Gregg Zigler 40dc1c095b Merge remote-tracking branch 'upstream/master' into feat/multOutputs
Conflicts:
	test/integration/server.js
2015-06-19 12:24:04 -07:00
Gregg Zigler 0a4bf8f77f proposal header hash and proposal amount should work with multi-output 2015-06-19 09:30:46 -07:00
Gregg Zigler ab33debdd1 move types to single object, remove default type assignment from proposal 2015-06-18 10:32:56 -07:00
Ivan Socolsky 999bcbbe7d refactor code 2015-06-18 13:39:16 -03:00
Ivan Socolsky 931923f585 compute kbs needed to send max in getBalance 2015-06-18 13:20:19 -03:00
Gregg Zigler 10644f7edc handle unknown proposal types 2015-06-18 07:57:07 -07:00
Gregg Zigler 453a7187b5 separate common properties from those that vary by proposal type 2015-06-17 13:33:43 -07:00
Gregg Zigler 6f43888176 txproposal with type=multiple-outputs needs an array of outputs 2015-06-17 12:07:31 -07:00
Ivan Socolsky ba54b01797 remove safety check, log error 2015-06-16 18:05:26 -03:00
Ivan Socolsky e349a10a67 simplify testing 2015-06-16 17:59:56 -03:00
Ivan Socolsky 366638b2d4 implement variable fee per kb 2015-06-16 17:59:56 -03:00
Ivan Socolsky 9f4ef16bba test fee behavior 2015-06-16 17:59:56 -03:00
Ivan Socolsky 622d7842b6 fix init & event redirection 2015-06-16 16:16:43 -03:00
Matias Alejo Garcia 20e4dd8da0 update fetched txs 2015-06-13 12:06:43 -03:00
Matias Alejo Garcia 4569f1d3c5 backoff time only active after backoffOffset 2015-06-13 12:03:04 -03:00
Matias Alejo Garcia 895c52bada exponential backoff 2015-06-12 16:11:42 -03:00
Matias Alejo Garcia caafaf25f6 add a reject / creation backoff time 2015-06-12 16:05:33 -03:00
Matias Alejo Garcia 6f13667912 Merge pull request #245 from isocolsky/rm_bitcore_explorers
Rm bitcore explorers
2015-06-12 11:30:16 -03:00
Matias Alejo Garcia dcfff424d7 fix err msg 2015-06-12 10:11:54 -03:00
Matias Alejo Garcia 94becc8960 fix notify order 2015-06-12 10:06:15 -03:00
Ivan Socolsky b45acded82 fix data parsing 2015-06-11 18:50:50 -03:00
Matias Alejo Garcia 139deac770 adds .deleteLockTime to getTxproposals 2015-06-11 18:38:42 -03:00
Ivan Socolsky 4f8faa826b implement Insight as a separate blockchain explorer 2015-06-11 18:24:58 -03:00
Matias Alejo Garcia 5d943a4b27 allow to remove creator, in tx without other signatures 2015-06-11 18:00:52 -03:00
Ivan Socolsky 470fd84ab7 refactor bcmonitor initialization 2015-06-11 17:43:27 -03:00
Matias Alejo Garcia 74c8b34188 allow delete proposals after 24hrs 2015-06-11 16:39:21 -03:00
Ivan Socolsky 23cca5a948 lock emailservice instances 2015-06-09 18:22:06 -03:00
Ivan Socolsky 8151f68c3c unique recipient list 2015-06-09 16:58:36 -03:00
Ivan Socolsky 8574fd5774 improve tx finally rejected email 2015-06-08 18:31:32 -03:00
Ivan Socolsky 638b90ed18 migrate templates to mustache 2015-06-08 17:51:07 -03:00
Ivan Socolsky 71d97f34f9 add amount to outgoingTx email 2015-06-01 12:16:34 -03:00
Ivan Socolsky 26cb34e2b7 include amount in incomingTx email 2015-06-01 11:28:31 -03:00
Ivan Socolsky 46b4652c8a test email for tx creation 2015-05-29 16:16:42 -03:00
Ivan Socolsky 5c6b5aeae2 send email from a separate service 2015-05-29 10:30:59 -03:00
Matias Alejo Garcia d12c0401dc Merge pull request #225 from isocolsky/safe_broadcast
Safe broadcast
2015-05-28 13:15:57 -03:00
Ivan Socolsky 83b65193af check blockchain if broadcast fails 2015-05-28 12:51:41 -03:00
Ivan Socolsky 33827c5b18 add getTransaction method 2015-05-28 12:50:58 -03:00
Ivan Socolsky c1f7ad360c spend proposal -> payment proposal 2015-05-28 11:57:18 -03:00
Ivan Socolsky 7e4a5f966a refactor REST endpoint 2015-05-26 14:59:55 -03:00
Ivan Socolsky 544f916f4f refactor statistics to filter at the db level 2015-05-22 17:24:52 -03:00
Ivan Socolsky 6fca11088c fix initialization 2015-05-19 15:30:27 -03:00
Ivan Socolsky f58f7eb7e4 call cb even if email service is not defined 2015-05-19 14:47:36 -03:00
Matias Alejo Garcia fcd410e6b1 Update stats.js
fix url
2015-05-19 10:25:21 -03:00
Ivan Socolsky 003f353022 allow for reinitialization 2015-05-18 10:48:01 -03:00
Ivan Socolsky d27a403b08 invoke cb 2015-05-15 12:08:36 -03:00
Ivan Socolsky ece903230b add BLOCKCHAINERROR error code 2015-05-15 11:25:54 -03:00
Matias Alejo Garcia 52a794bc0e Merge pull request #209 from isocolsky/notify_wallet_complete
Notify wallet complete
2015-05-14 13:32:01 -03:00
Ivan Socolsky 226f18d345 preserve order of notifications 2015-05-14 12:48:19 -03:00
Ivan Socolsky 2942d4dc05 add endpoint for preferences 2015-05-14 12:43:12 -03:00
Ivan Socolsky 0a0869c4fa add email notification & template 2015-05-14 11:57:23 -03:00
Ivan Socolsky 1f2ac1296e add WalletComplete notification 2015-05-14 11:55:05 -03:00
Matias Alejo Garcia 488e33e0e2 Merge pull request #205 from matiaspando/feat/stats2
Adding statistics to BWS
2015-05-12 11:58:58 -03:00
Matias Pando f8121a1133 Adding stats to /lib 2015-05-12 11:54:03 -03:00
Matias Pando 0412a35195 Added missing returns and moved to /lib 2015-05-12 11:47:51 -03:00
Matias Pando ade91a5612 Fixing minor issues 2015-05-12 11:26:06 -03:00
Matias Pando 2873fd8e40 Splitting stats by date 2015-05-12 11:26:06 -03:00
Matias Pando ee3e07eec7 Adding stats on bws 2015-05-12 11:26:06 -03:00
Matias Pando efbbc21a91 Moving stats.js to /scripts 2015-05-12 11:23:28 -03:00
Matias Pando d23075cadc Refactoring 2015-05-12 11:23:28 -03:00
Ivan Socolsky f3a3e0ff10 email validation using email-validator module 2015-05-11 16:51:02 -03:00
Ivan Socolsky fce1d4d7aa connect to locker server by default 2015-05-11 16:51:01 -03:00
Ivan Socolsky 87bba46515 send email on new copayer notification 2015-05-11 16:51:01 -03:00
Ivan Socolsky c864675b20 send email from blockchain monitor 2015-05-11 16:51:01 -03:00
Ivan Socolsky a643819b46 add email validation 2015-05-11 16:51:01 -03:00
Ivan Socolsky 910a1c8ddc update config 2015-05-11 16:51:01 -03:00
Ivan Socolsky 3202741a10 introduce message broker through rebase 2015-05-11 16:51:01 -03:00
Ivan Socolsky 897b39f8cd mark emails as sent/fail 2015-05-11 16:51:01 -03:00
Ivan Socolsky b83d220fa2 configure subject prefix 2015-05-11 16:51:01 -03:00
Ivan Socolsky 17d97430ad return after email 2015-05-11 16:51:01 -03:00
Ivan Socolsky 3d901852ab more robust send loop 2015-05-11 16:51:01 -03:00
Ivan Socolsky 8efc0065e6 improve template text 2015-05-11 16:51:01 -03:00
Ivan Socolsky fa9a8cd38c add tests 2015-05-11 16:51:00 -03:00
Ivan Socolsky 4a0a3f1bad filter recipient list 2015-05-11 16:51:00 -03:00
Ivan Socolsky b78395b851 add nodemailer + templates 2015-05-11 16:51:00 -03:00
Ivan Socolsky 12232dbe16 email service 2015-05-11 16:51:00 -03:00
Ivan Socolsky 39b254b163 fix tests 2015-05-11 16:51:00 -03:00
Ivan Socolsky 37a02c37ec refactor notification dispatching 2015-05-11 16:51:00 -03:00
Ivan Socolsky de037a3227 add email model 2015-05-11 16:51:00 -03:00
Ivan Socolsky eace1295ea add preferences to wallet status 2015-05-11 16:51:00 -03:00
Ivan Socolsky d616959320 add preferences 2015-05-11 16:49:56 -03:00
Matias Alejo Garcia ebc779fb02 Merge pull request #204 from isocolsky/ref/launcher
Refactor BWS launch script
2015-05-08 09:25:56 -03:00
Ivan Socolsky b39e719fce refactor express app 2015-05-07 18:30:08 -03:00
Ivan Socolsky 82d0ba7d27 remove index creation from query methods 2015-05-07 18:17:18 -03:00
Ivan Socolsky e6dba8c824 add indexes for commong db opperations 2015-05-07 18:16:35 -03:00
Ivan Socolsky 02755dbdd6 resubscribe when disconnected 2015-05-07 15:10:02 -03:00
Ivan Socolsky 75a834c4cf various fixes 2015-05-07 14:29:22 -03:00
Ivan Socolsky bfaf7ff5c4 refactor websockets app 2015-05-06 16:26:43 -03:00
Ivan Socolsky 86525ce6ef refactor bcmonitor 2015-05-06 16:03:58 -03:00
Ivan Socolsky cf8106eb3f ignore change addresses 2015-05-06 14:32:01 -03:00
Ivan Socolsky ae0114b17b broadcast blockchain events 2015-05-06 12:48:43 -03:00
Ivan Socolsky 756b82b370 update websocket app 2015-05-06 10:28:47 -03:00
Ivan Socolsky a0e21ed8e1 message broker 2015-05-06 10:00:09 -03:00
Ivan Socolsky cce8b64260 refactoring 2015-05-05 13:04:29 -03:00
Ivan Socolsky bd45f8ef99 add message queue service 2015-05-04 18:23:56 -03:00
Ivan Socolsky 1422107c6e return after generating notification 2015-04-30 20:31:45 -03:00
Ivan Socolsky 04ea2f62e1 fix typo 2015-04-29 12:11:29 -03:00
Matias Alejo Garcia 784e3d956c Merge pull request #195 from isocolsky/ref/mongo_uri
make mongodb uri configurable
2015-04-23 18:01:43 -03:00
Ivan Socolsky fd542db4a6 make mongodb uri configurable 2015-04-23 16:30:16 -03:00
Ivan Socolsky 4b53947ae6 add network to txproposal model 2015-04-23 12:33:01 -03:00
Ivan Socolsky d8524fed2a add network to address model 2015-04-23 12:25:36 -03:00
Matias Pando f9f7b9ff4b Adding stats on mondodb 2015-04-22 15:46:19 -03:00
Ivan Socolsky 4864e81fba migration script 2015-04-22 10:23:54 -03:00
Ivan Socolsky 95b0b72416 all tests passing with tingodb memStore 2015-04-21 23:16:18 -03:00
Ivan Socolsky 7a0ec9f111 first attempt at integrating tingodb 2015-04-21 16:24:01 -03:00
Matias Alejo Garcia b84c1dc178 async initialize 2015-04-21 14:43:35 -03:00
Ivan Socolsky d7ea3e48bb cleanup 2015-04-20 21:11:10 -03:00
Ivan Socolsky 498392e72c refactor storage initialization 2015-04-20 20:46:45 -03:00
Ivan Socolsky b3c33b2781 remove leveldb 2015-04-20 19:53:19 -03:00
Ivan Socolsky ea3d251c0d all tests passing 2015-04-20 19:45:45 -03:00
Ivan Socolsky 88c7323a0e add walletId to address 2015-04-20 17:48:06 -03:00
Ivan Socolsky 1b2b0dc146 implement mongodb storage 2015-04-20 17:04:26 -03:00
Ivan Socolsky 706079da82 fix opts passed to fetchTx 2015-04-20 16:05:02 -03:00
Ivan Socolsky b8501ddb1f unit tests for storage 2015-04-20 12:03:50 -03:00
Matias Alejo Garcia 56543d3907 add "trust proxy" 2015-04-18 13:37:04 -03:00
Matias Alejo Garcia 355290040a Merge pull request #189 from matiu/bug/sticky
better logs + init db after sticky
2015-04-18 06:56:12 -03:00
Matias Alejo Garcia 33eb17dd8d better logs + init db after sticky 2015-04-18 06:55:24 -03:00
Ivan Socolsky be0565fca0 test rewind 2015-04-17 18:31:47 -03:00
Ivan Socolsky 1a615e5bb5 discard blocks without activity 2015-04-17 18:25:41 -03:00
Matias Alejo Garcia 28969564bc Merge pull request #182 from isocolsky/scanning
save wallet inside lock
2015-04-16 01:44:52 -03:00
Matias Alejo Garcia 89e39eed16 fix config 2015-04-15 13:25:59 -03:00
Matias Alejo Garcia 238077a8bd refactor config 2015-04-15 10:59:25 -03:00
Ivan Socolsky 8195e067c3 save wallet inside lock 2015-04-15 10:57:18 -03:00
Matias Alejo Garcia 949b45fc9d Merge pull request #180 from isocolsky/scanning
Scanning
2015-04-14 16:04:50 -03:00
Ivan Socolsky 8a73672398 check for scan error 2015-04-14 15:49:51 -03:00
Ivan Socolsky 3678b27bf5 set scan status 2015-04-14 15:41:27 -03:00
Matias Alejo Garcia 629b1551a0 use Error 2015-04-14 15:28:29 -03:00
Matias Alejo Garcia 213451f0d6 handle error from blockexplores 2015-04-14 15:22:20 -03:00
Ivan Socolsky a643d62fb0 test scan status 2015-04-14 15:19:12 -03:00
Matias Alejo Garcia f51e7bd0e0 better event name 2015-04-13 10:46:31 -03:00
Ivan Socolsky 04d6597864 add json response on delete 2015-04-13 10:29:24 -03:00
Ivan Socolsky 70244cc413 select first external output as 'addressTo' 2015-04-10 21:19:46 -03:00
Matias Alejo Garcia 6beae7cf11 map getTx 2015-04-10 12:37:45 -03:00
Ivan Socolsky 59996ef073 refactor tests to use fake timers 2015-04-08 16:40:02 -03:00
Ivan Socolsky 34790ec2e2 increase wait & max time for locks 2015-04-08 15:28:35 -03:00
Ivan Socolsky 8e259c0e09 simplify locking syntax 2015-04-08 15:18:28 -03:00
Ivan Socolsky 1bbdd4c14c sample server 2015-04-08 15:02:33 -03:00
Ivan Socolsky 7a8a7ea997 timeouts 2015-04-08 11:39:15 -03:00
Ivan Socolsky c33e0b0de4 local lock 2015-04-08 10:21:01 -03:00
Ivan Socolsky 0631083bae common interface for locks 2015-04-07 17:02:08 -03:00
Ivan Socolsky 3e279e74f2 fix for 0 records retrieved 2015-04-06 17:41:04 -03:00
Ivan Socolsky 7243fcd32c Fix history 2015-04-06 15:15:32 -03:00
Ivan Socolsky c2484b3b7a Add error check on insight response for tx history 2015-04-06 13:29:02 -03:00
Matias Alejo Garcia fdb8285759 add multilevel support 2015-04-05 15:42:56 -03:00
Matias Alejo Garcia 3a45a2c416 add config.js file 2015-04-05 13:56:56 -03:00
Matias Alejo Garcia 7cbdf3c677 return on scan POST 2015-04-04 13:03:19 -03:00
Matias Alejo Garcia 9360144950 rm run locked 2015-04-03 18:49:08 -03:00
Matias Alejo Garcia ac24f66801 do not check name on replaceKey 2015-04-03 16:10:55 -03:00
Ivan Socolsky d27edeaa7e add delay in async scan execution 2015-04-03 15:43:22 -03:00
Ivan Socolsky 9e5a3485ce disable log during tests 2015-04-02 13:27:13 -03:00
Ivan Socolsky 47a7f5ef65 make ScanFinish a global notification 2015-04-02 13:27:13 -03:00
Ivan Socolsky 19f5e4b011 add rest method 2015-04-02 13:27:13 -03:00
Ivan Socolsky fe29fa107a start scan 2015-04-02 13:27:13 -03:00
Ivan Socolsky f37ec60951 fix unauthorized 2015-04-02 13:27:13 -03:00
Ivan Socolsky 2874f6745b store after each branch derivation to save progress 2015-04-02 13:27:13 -03:00
Matias Alejo Garcia ae2ec61de6 update error message 2015-04-02 13:08:27 -03:00
Matias Alejo Garcia c582842a99 update pkr signature 2015-04-02 13:08:27 -03:00
Matias Alejo Garcia 089ca1fec6 refactor update pkr 2015-04-02 13:08:27 -03:00
Matias Alejo Garcia ce53209a79 update fromObj 2015-04-02 13:08:27 -03:00
Matias Alejo Garcia 747762d114 add API entry point to update reqpubkey 2015-04-02 13:08:27 -03:00
Matias Alejo Garcia e59ff66a64 add notification 2015-04-02 13:08:27 -03:00