Commit Graph

688 Commits

Author SHA1 Message Date
Jude Nelson
bdaef1e7c6 refactor data interfaces to take a set of public keys and device IDs, and authenticate inodes by trying each public key with its assigned device ID 2017-06-18 22:07:59 -04:00
Jude Nelson
02f688da0e include supported storage driver classes 2017-06-18 22:07:35 -04:00
Jude Nelson
cfc2edbcc7 add the ability to write entire config sections 2017-06-18 22:07:23 -04:00
Jude Nelson
07e88d81e0 add driver classes so we can select drivers by capabilities instead of by name. Also, add an index_check_setup() method to avoid re-building an index 2017-06-18 22:06:49 -04:00
Jude Nelson
73e5d94d91 expose getting the index manifest URL 2017-06-18 22:06:34 -04:00
Jude Nelson
5da7de4695 include storage driver classification in core session tokens 2017-06-18 22:06:20 -04:00
Jude Nelson
10922c8cd9 deactivate add/remove/list device IDs (for now, since we're refactoring it); require a session token on datastore write, and require app public keys and device IDs on datastore read 2017-06-18 22:05:41 -04:00
Jude Nelson
e22e0de3fd Merge remote-tracking branch 'origin/rc-0.14.2-portal' into rc-0.14.2 2017-06-16 18:43:40 -04:00
Jude Nelson
99afdb165d possible that there are not UTXOs 2017-06-16 18:40:07 -04:00
Jude Nelson
0f0e05be15 subsidize, not subsidized 2017-06-16 18:39:56 -04:00
Jude Nelson
a8271d7fc9 include BLOCKSTACK_DEBUG 2017-06-16 18:39:38 -04:00
Jude Nelson
b1f669aecd expect authentication supplicants like the portal to supply a list of device IDs and public keys 2017-06-15 22:24:23 -04:00
Jude Nelson
2e2931f295 sync with new auth schemas 2017-06-15 22:24:10 -04:00
Jude Nelson
71768b95a1 fix bugs found in testing 2017-06-15 22:23:58 -04:00
Jude Nelson
120f20e609 fix bugs found in testing 2017-06-15 22:23:47 -04:00
Jude Nelson
91edca709c print full usage string in interactive mode 2017-06-15 22:23:32 -04:00
Jude Nelson
1adc0b6407 handle the case where the queue doesn't exist yet 2017-06-15 22:23:22 -04:00
Jude Nelson
9733be1cf4 return None on programmed failure 2017-06-15 22:23:11 -04:00
Jude Nelson
9c88cb3420 sync with data API and new schemas for authentication 2017-06-15 22:22:56 -04:00
Jude Nelson
a51570c33a fix CLI interface to datastores to include device and blockstack IDs 2017-06-15 22:22:38 -04:00
Jude Nelson
c5c0b57575 Merge remote-tracking branch 'origin/rc-0.14.2-portal' into rc-0.14.2 2017-06-15 11:35:37 -04:00
Jude Nelson
71264ffe5c assume https:// if there is no protocol scheme in a zone file URL 2017-06-15 11:30:22 -04:00
Jude Nelson
247a19345f there is only one blockchain ID per session 2017-06-15 11:29:15 -04:00
Jude Nelson
711cc5af2d take device IDs from API calls when creating session tokens and datastores 2017-06-15 11:28:48 -04:00
Jude Nelson
18f35a192c move account-query logic for the profile to profile.py; add stub methods for looking up device IDs 2017-06-15 11:28:26 -04:00
Jude Nelson
ab5aaac98e make sure log messages are not zero-length when sent to portal 2017-06-15 11:28:11 -04:00
Jude Nelson
64562fe002 mutable data operations take device IDs as explicit arguments 2017-06-15 11:27:54 -04:00
Jude Nelson
49c8ddaa62 add default API host 2017-06-15 11:27:33 -04:00
Jude Nelson
30aecc91fb remove default_devices; add default API host/port 2017-06-15 11:27:18 -04:00
Jude Nelson
9c8d9bdf38 remove unneeded imports 2017-06-15 11:27:10 -04:00
Jude Nelson
6aef9e4b51 print out method usage in the CLI 2017-06-15 11:26:59 -04:00
Jude Nelson
36dc6e9945 include built-in indexed read/write logic 2017-06-15 11:26:40 -04:00
Jude Nelson
9668421e2a don't care about unsent txs in the queue 2017-06-15 11:26:04 -04:00
Jude Nelson
c97c096f61 debug return values 2017-06-15 11:25:49 -04:00
Jude Nelson
29ef0b801e use new built-in index handlers 2017-06-15 11:25:15 -04:00
Jude Nelson
95879e88c7 WIP: use the indexing system (DRIVER IS STILL NOT WORKING) 2017-06-15 11:24:59 -04:00
Jude Nelson
82ab59b1b2 get bucket, then create bucket 2017-06-15 11:24:47 -04:00
Jude Nelson
73f782a730 don't clean out queues automatically; let individual state-transition steps do this. 2017-06-15 11:24:22 -04:00
Jude Nelson
315405d28b remove unnecessary expiry logic 2017-06-15 11:23:54 -04:00
Jude Nelson
7939388302 use default API host/port; take device information when creating a session 2017-06-15 11:23:12 -04:00
Jude Nelson
7db80c614b move account processing into profiles.py; stub out methods for getting device IDs 2017-06-15 11:22:44 -04:00
Jude Nelson
e927d4d104 sort UTXOs by decreasing value 2017-06-15 11:05:11 -04:00
Jude Nelson
903e329935 switch 'subsidized' to 'subsidize' 2017-06-15 11:04:57 -04:00
Jude Nelson
de882f3186 add subsidize= kwarg 2017-06-15 11:04:46 -04:00
Jude Nelson
e6fcd2ee46 Calculate the set of UTXOs that will be used over a sequence of transactions, including the ones that will be generated by transactions within the sequence. Do not assume that the whole set of UTXOs will be used by each transaction. 2017-06-15 11:04:14 -04:00
Jude Nelson
4a9143f610 refactor most of the fee estimation logic to generate the actual transaction we'll send, and use that as the basis of fee estimation (i.e. no more "rough estimates" and padding). Also, minimize the number of UTXOs that will be consumed in each transaction. 2017-06-15 11:02:56 -04:00
Jude Nelson
1582000327 sort UTXOs in the method that actually queries them 2017-06-15 11:02:33 -04:00
Jude Nelson
cabc4799b0 require the wallet keys to estimate prices 2017-06-15 11:02:16 -04:00
Jude Nelson
bcb1759d21 when subsidizing a transaction, select UTXOs from biggest to smallest and don't try to use them all 2017-06-07 19:17:48 -04:00
Jude Nelson
32cfa44884 do not accept tx fees from library clients 2017-06-07 19:17:33 -04:00