Commit graph

2812 commits

Author SHA1 Message Date
Jack Robison
545930cea4
dht test environment fixes 2018-06-07 15:02:47 -04:00
Jack Robison
9582b7fcf5
use maybe_ping for refreshing stale buckets and storing peers
-move store refresh to its own looping call
2018-06-07 15:02:47 -04:00
Jack Robison
945da5985e
fix age used in datastore to determine if a value is expired 2018-06-07 15:02:47 -04:00
Jack Robison
921ee3c4c1
use refreshTimeout in getRefreshList 2018-06-07 15:02:47 -04:00
Jack Robison
8efede6ad6
maybe_ping bad and unknown contacts instead of only unknown 2018-06-07 15:02:47 -04:00
Jack Robison
fb3aac15fa
add optional delay argument to enqueue_maybe_ping, fix default value 2018-06-07 15:02:47 -04:00
Jack Robison
73e813f9ec
verify key size in Distance 2018-06-07 15:02:47 -04:00
Jack Robison
0d23c68797
raise attribute error for non-rpc functions in Contact 2018-06-07 15:02:47 -04:00
Jack Robison
ec1b6b2387
comments, cleaner key_bits constant 2018-06-07 15:02:47 -04:00
Jack Robison
29d5750371
pylint 2018-06-07 15:02:47 -04:00
Jack Robison
07f92014d7
omit bad contacts from getPeersForBlob
-refresh stored contacts to detect when they go offline or come back
2018-06-07 15:02:47 -04:00
Jack Robison
98e21cdba0
test re-join dht 2018-06-07 15:02:47 -04:00
Jack Robison
c521120b17
update and fix hash announcer test 2018-06-07 15:02:47 -04:00
Jack Robison
d02ed29e50
add kademlia store and expiration test 2018-06-07 15:02:47 -04:00
Jack Robison
470ebe2de3
remove unnecessary CallLaterManager from test_contact_rpc 2018-06-07 15:02:47 -04:00
Jack Robison
b5f3ed5542
update contact expiration test and add re-join after expiration test 2018-06-07 15:02:47 -04:00
Jack Robison
877da78505
ping contacts right away during refresh instead of using PingQueue
-fixes contact expiration test
2018-06-07 15:02:47 -04:00
Jack Robison
a952d2d2c8
reset _listeningPort and _listening Deferred on teardown 2018-06-07 15:02:47 -04:00
Jack Robison
3dfc6bd2cc
update CallLaterManager to be an object 2018-06-07 15:02:47 -04:00
Jack Robison
760417ff3a
pylint 2018-06-07 15:02:47 -04:00
Jack Robison
7da70cc02d
test peer expiration 2018-06-07 15:02:47 -04:00
Jack Robison
d3f4155a2b
add unit tests for contact_is_good 2018-06-07 15:02:47 -04:00
Jack Robison
d250e4d91a
add iterative find test 2018-06-07 15:02:47 -04:00
Jack Robison
950ec5bc9a
update mocks and dht tests
-reorganize dht tests
2018-06-07 15:02:47 -04:00
Jack Robison
bdd6f948ca
add port to routing_table_get 2018-06-07 15:02:47 -04:00
Jack Robison
cc32d987b2
update peer_list 2018-06-07 15:02:47 -04:00
Jack Robison
4f72098cad
use PingQueue to try refresh all contacts 2018-06-07 15:02:47 -04:00
Jack Robison
9920ff59d4
force KBucket refreshes 2018-06-07 15:02:47 -04:00
Jack Robison
ae22468fec
fix CallLaterManager trying to remove pending calls multiple times 2018-06-07 15:02:47 -04:00
Jack Robison
aee7a3aa38
simplify announceHaveBlob, remove unused getPeersForBlob 2018-06-07 15:02:47 -04:00
Jack Robison
372fb45e06
refactor dht bootstrap
after finding the closest nodes try to populate the buckets out by looking up random ids in their key ranges
2018-06-07 15:02:47 -04:00
Jack Robison
c65274e9e5
add PingQueue to KademliaProtocol 2018-06-07 15:02:47 -04:00
Jack Robison
1adf4f7818
fix constant used to check if a bucket is fresh 2018-06-07 15:02:47 -04:00
Jack Robison
05241012a2
update contact replacement in KBucket to follow BEP0005
http://www.bittorrent.org/beps/bep_0005.html
2018-06-07 15:02:47 -04:00
Jack Robison
cf3359044d
fix conditions for when a kbucket should be split
https://stackoverflow.com/a/32187456
2018-06-07 15:02:47 -04:00
Jack Robison
5631a24881
improve findCloseNodes, choose closest contacts from higher and lower buckets 2018-06-07 15:02:47 -04:00
Jack Robison
c654bfe296
use reactor clock in TreeRoutingTable instead of time module 2018-06-07 15:02:47 -04:00
Jack Robison
d4e28216a0
sort KBucket.getContacts 2018-06-07 15:02:47 -04:00
Jack Robison
95ed1e044b
raise TransportNotConnected instead of logging a warning
-add a _listening Deferred to KademliaProtocol which is called when the protocol is started
2018-06-07 15:02:47 -04:00
Jack Robison
f1e0a784d9
refactor iterativeFind, move to own file 2018-06-07 15:02:47 -04:00
Jack Robison
e5703833cf
prevent duplicate entries in the datastore 2018-06-07 15:02:47 -04:00
Jack Robison
23c202b5e4
refactor Contact class, DHT RPCs, and Contact addition/removal
-track contact failures, last replied, and last requested. use this to provide a 'contact_is_good' property on Contact objects
-ensure no duplicate contact objects are created
-remove confusing conflation of node id strings with Contact objects, update docstrings
-move RPC failure tracking to a callback/errback pair in sendRPC (so the contact is only updated once)
-handle seed nodes during the join sequence by setting their node ids after they initially reply to our ping
-name all of the kademlia RPC keyword args, remove confusing **kwargs and dictionary parsing
-add host ip/port to DHT send/receive logging to make the results comprehensible when running many nodes at once
2018-06-07 15:02:47 -04:00
Jack Robison
ad2dcf0893
add the parent node id to KBucket 2018-06-07 15:02:47 -04:00
Jack Robison
406ddaa4ef
use base class to simplify Node init
-add looping call helpers which use the same clock as the Node
2018-06-07 15:02:47 -04:00
Jack Robison
e52689a33d
remove OptimizedTreeRoutingTable for now, use TreeRoutingTable 2018-06-07 15:02:47 -04:00
Jack Robison
d65dc0aec3
disable loading DictDataStore in Node.__init__
-to be re-done when the datastore uses sqlite
2018-06-07 15:02:47 -04:00
Jack Robison
159e153393
make DataStore clock mockable 2018-06-07 15:02:47 -04:00
Jack Robison
9ed08f8fc9
remove unused constant 2018-06-07 15:02:47 -04:00
Jack Robison
a503a800ca
disable Cryptonator exchange rate feed 2018-06-07 15:02:47 -04:00
Jack Robison
b673c508cc
disable NegotiatedPaymentRateManager, use OnlyFreePaymentsManager for now 2018-06-07 15:02:47 -04:00
Jack Robison
4bd9f3bd68
remove popular hash tracking, simplify DHTPeerFinder 2018-06-07 15:02:47 -04:00
Jack Robison
e6ffd7caf8
remove hashwatcher 2018-06-07 15:02:47 -04:00
Victor Shyba
b91181e640 refactor: simplify add_completed_blob + changelog 2018-05-30 16:19:49 -03:00
Lex Berezhny
23df1d0316
Merge branch 'master' into feature/file_list_sorting 2018-05-29 22:47:09 -04:00
Lex Berezhny
3d17c92bd3 moved import certifi to run only on windows 2018-05-29 22:36:37 -04:00
Akinwale Ariwodola
c4550ef5b6 remove unused import in lbrynet.daemon.Daemon 2018-05-29 22:36:37 -04:00
Akinwale Ariwodola
97547e904e add os and sys imports 2018-05-29 22:36:37 -04:00
Victor Shyba
03968f377e change fix position to before anything else starts 2018-05-29 22:36:37 -04:00
Akinwale Ariwodola
513f5d0568 added certifi package for Twisted SSL verification on Windows 2018-05-29 22:36:37 -04:00
Jack Robison
02bcc98a6a
Bump version 0.20.0rc9 --> 0.20.0rc10
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-05-29 15:56:58 -04:00
Jack Robison
e3265714ee
Merge remote-tracking branch 'origin/1193' 2018-05-29 15:25:17 -04:00
Jack Robison
4b766eeea9
Merge remote-tracking branch 'origin/linux_analytics' 2018-05-29 15:20:46 -04:00
Lex Berezhny
6a344539a0 moved import distro into conditional statement that only runs on Linux 2018-05-29 14:49:06 -04:00
Jack Robison
9b1e687b9b
pylint 2018-05-29 14:36:00 -04:00
Sergey Rozhnov
11b882879a predictable result sorting for claim_list and claim_list_mine 2018-05-29 13:07:11 -04:00
Lex Berezhny
09e272a642 style fix 2018-05-29 12:45:42 -04:00
Lex Berezhny
d950a62200 include the new linux analytics in track events 2018-05-28 18:47:56 -04:00
Lex Berezhny
1b027fae87 add some extra linux meta data to analytics 2018-05-28 18:07:23 -04:00
Jack Robison
187f920961
disable Daemon headers check for now 2018-05-28 10:57:48 -04:00
Jack Robison
6d4b678b96
Revert "WIP: feature/1098/sorted-claim-results" 2018-05-22 17:15:34 -04:00
kafene
76a7cc4e58 refactor file list sorting per request 2018-05-21 00:24:18 -04:00
kafene
1790393273 remove unused attrgetter import 2018-05-21 00:04:27 -04:00
kafene
5069351287 refactor file_list sort to allow sorting by any field 2018-05-21 00:04:27 -04:00
kafene
72bae90e06 use range instead of xrange, list is only 10 elements and range works in python3 2018-05-21 00:04:27 -04:00
kafene
852354719f add unit test for file list sorting 2018-05-21 00:04:27 -04:00
kafene
eec3734d2f some semantic variable renaing 2018-05-21 00:04:27 -04:00
kafene
e7b22521ee remove pprint import 2018-05-21 00:04:27 -04:00
kafene
326d0cb8a3 initial naive implementation of file_list sorting 2018-05-21 00:04:21 -04:00
Sergey Rozhnov
13353bcfe4 refactored unit test for sort_claim_results 2018-05-18 18:51:28 +04:00
Sergey Rozhnov
40bcf96c3d refactored sorting of claims and unit tests 2018-05-18 12:53:32 +04:00
Victor Shyba
b48492c1d6 verify streams on a new migration instead 2018-05-17 12:29:12 -03:00
Sergey Rozhnov
3d0f74c8ce implemented additional test cases for claims sorting; updated changelog 2018-05-17 13:49:09 +04:00
Sergey Rozhnov
a7a5bb8887 simplified claims comparison logic; refactored unit tests 2018-05-17 13:36:32 +04:00
Sergey Rozhnov
208284a0f8 claim_list and claim_list_mine in Daemon return sorted results 2018-05-16 18:29:44 +04:00
Victor Shyba
b6cedfec56 batch-start the file manager 2018-05-11 12:17:55 -03:00
Victor Shyba
ca86af736e add batching support to get_supports and tests 2018-05-11 12:17:55 -03:00
Victor Shyba
d55ded78ee get claim with channel_name from a stream hash in a single query 2018-05-11 12:17:55 -03:00
Victor Shyba
acd330aa2a get claim info and channel name using a single query 2018-05-11 12:17:55 -03:00
Victor Shyba
df735252e5 verify streams only after migration 2018-05-11 12:17:55 -03:00
Jack Robison
b3bf193188
Merge remote-tracking branch 'origin/treq_and_cryptography' 2018-05-11 09:22:28 -04:00
Victor Shyba
a0a7187f7d add integrity checks after s3 download as well 2018-05-08 16:09:06 -03:00
Jack Robison
aa4240de85
track successful reflector uploads in sqlite to minimize how many streams are attempted by auto re-reflect
-increase the default `auto_re_reflect_interval` to a day
2018-05-08 14:41:56 -04:00
Victor Shyba
2299098884 add integrity check for the headers file 2018-05-07 15:10:19 -03:00
Victor Shyba
fd04c607b2 typos and fixes from code review 2018-05-07 13:11:31 -03:00
Victor Shyba
805bfbd18e remove point trader testing client 2018-05-07 11:49:54 -03:00
Victor Shyba
3ee0f9756d add treq as a dependency + pep8 2018-05-05 20:58:10 -03:00
Victor Shyba
c90140f701 make the exchange manager use treq instead of requests 2018-05-05 02:33:37 -03:00
Victor Shyba
e170f3db3e remove txrequests dependency 2018-05-05 02:20:21 -03:00
Victor Shyba
7f88dda0ae use treq on loggly 2018-05-05 02:18:03 -03:00
Victor Shyba
0bf65836c7 resume download from S3 instead of starting from scratch 2018-05-05 02:05:02 -03:00
Victor Shyba
3982e15091 download headers from s3 using treq 2018-05-05 01:16:26 -03:00
Victor Shyba
d03fc80eac make analytics use treq 2018-05-05 00:50:42 -03:00
Victor Shyba
fab932abb6 replace pycrypto->cryptography 2018-05-04 23:56:51 -03:00
Victor Shyba
b389e59452 replace pycrypto->cryptography on tests 2018-05-04 22:12:43 -03:00
Jack Robison
cc34c4b95f
Merge pull request #1189 from lbryio/faster-headers
magic
2018-05-04 11:10:43 -04:00
Thomas Zarebczan
df2339231a
magic 2018-05-04 00:47:08 -04:00
Jack Robison
6977d6944e
show local, remote, and s3 header heights in the log 2018-05-02 17:25:00 -04:00
Jack Robison
f1e3682302
socket might not have TCP_KEEPx attributes 2018-05-02 17:16:00 -04:00
Jack Robison
f42733ecba
fix tests 2018-05-02 15:00:57 -04:00
Jack Robison
129d2687b9
download headers from s3 when more than 10 chunks behind 2018-05-02 15:00:50 -04:00
Jack Robison
1f1b348638
fix handling ancient non-decodable claims 2018-04-19 17:37:23 -04:00
Jack Robison
8b7e86e046
fix appveyor? 2018-04-19 17:36:26 -04:00
Jack Robison
fe6a850fc5
appveyor 2018-04-19 17:11:27 -04:00
Jack Robison
9c25a37d4d
Bump version 0.20.0rc8 --> 0.20.0rc9
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-04-19 17:04:48 -04:00
Jack Robison
1e87767a0c
fix appveyor 2018-04-19 16:56:48 -04:00
Jack Robison
487ef6516e
fix reflector test 2018-04-19 16:35:15 -04:00
Jack Robison
4a1f3a79a5
fix mock announcer 2018-04-19 16:18:19 -04:00
Jack Robison
11aad04c31
datagram decode error logging 2018-04-19 15:47:42 -04:00
Jack Robison
b89823c968
fix blob announce locking up the daemon process 2018-04-19 15:47:19 -04:00
Jack Robison
baf55165aa
lint 2018-04-19 14:35:11 -04:00
Jack Robison
769bc2e36e
Revert "elif"
This reverts commit c3e047a2aa.
2018-04-19 14:34:49 -04:00
Alex Grintsvayg
c3e047a2aa elif 2018-04-19 13:47:24 -04:00
Jack Robison
1c793931ed
Bump version 0.20.0rc7 --> 0.20.0rc8
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-04-19 12:31:54 -04:00
Jack Robison
fa49b40389
fix claim_show 2018-04-19 12:31:36 -04:00
Jack Robison
89b4487eb9
Bump version 0.20.0rc6 --> 0.20.0rc7
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-04-19 11:05:42 -04:00
Jack Robison
450bed6350
fix kwargs bug 2018-04-19 11:00:44 -04:00
Alex Grintsvayg
f8e418fb44 undeprecated report_bug while app team works on a new bug reporting flow 2018-04-18 14:58:58 -04:00
Jack Robison
2655797692
move docs tests to own file 2018-04-12 14:04:22 -04:00
Niko
c089f1954a
fix documentation for blob_reflect 2018-04-12 13:27:06 -04:00
Niko
0a14d51b96
fix documentation for peer_ping command 2018-04-12 13:08:58 -04:00
Jack Robison
bb7e17e54a
Bump version 0.20.0rc5 --> 0.20.0rc6
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-04-03 13:21:17 -04:00
Jack Robison
5cea031f38
return list of dictionaries from peer_list, include peer node ids 2018-04-03 13:10:30 -04:00
Jack Robison
2903ccaeb4
add peer_ping 2018-04-03 13:10:30 -04:00
Jack Robison
eae97a8133
off by one 2018-04-03 13:08:36 -04:00
Jack Robison
bc3128ae3b
Bump version 0.20.0rc4 --> 0.20.0rc5
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-04-03 12:34:45 -04:00
Jack Robison
4e7bdafdcf
fix positional and keyword args 2018-04-03 12:27:49 -04:00
Jack Robison
12d378af13
show not connected error in lbrynet-cli when using auth 2018-04-03 12:25:18 -04:00
Jack Robison
ca73d632d3
Bump version 0.20.0rc3 --> 0.20.0rc4
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-04-02 10:13:02 -04:00
Jack Robison
743ae59d54
fix lbrynet-cli when using authentication
-add explanation of daemon authentication to AuthJSONRPCServer docstring
-remove auth_required decorator, use auth for all api methods if use_authentication is true
-fix issues with the command line --http-auth flag to lbrynet-daemon and the use_http_auth setting in the config file
2018-04-01 18:31:03 -04:00
Jack Robison
ea5190aa9a
Bump version 0.20.0rc2 --> 0.20.0rc3
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-29 15:06:41 -04:00
Jack Robison
51662b1e5b
re-add hash_queue_size function 2018-03-29 15:06:08 -04:00
Jack Robison
789ca3693f
Bump version 0.20.0rc1 --> 0.20.0rc2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-29 12:20:54 -04:00
Jack Robison
8c2b626f97
fix cli kwargs 2018-03-29 12:19:41 -04:00
Jack Robison
0279d37b32
fix status docstring 2018-03-29 12:19:18 -04:00
Jack Robison
f4aca40ff9
Bump version 0.19.3rc2 --> 0.20.0rc1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-29 09:55:34 -04:00
Jack Robison
08e9f9ac0e
Bump version 0.19.3rc1 --> 0.19.3rc2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-29 09:50:14 -04:00
Jack Robison
9a9b2f47ce
pass sd_hash to reflector client factory instead of looking it up 2018-03-29 09:46:34 -04:00
Jack Robison
b9600101ae
Bump version 0.19.2 --> 0.19.3rc1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-28 19:36:39 -04:00
Jack Robison
492858596e
add single_announce column to blob table
-remove deprecated blob_announce_all function
-remove announce_all parameter to blob_announce
-change blob_announce to be asynchronous
2018-03-28 18:50:24 -04:00
Jack Robison
dff1fd3fe9
logging, raise default concurrent announcers 2018-03-28 18:50:24 -04:00
Jack Robison
eabf4a0e40
remove delay from udp write 2018-03-28 18:50:24 -04:00
Jack Robison
5bab6f7d39
remove bandwidth stats 2018-03-28 18:50:24 -04:00
Jack Robison
a41bbd5e27
pylint and tests 2018-03-28 18:50:18 -04:00
Jack Robison
43d3f7c087
add concurrent_announcers to config 2018-03-28 15:53:51 -04:00
Jack Robison
c5bf64cf0a
refactor DHTHashAnnouncer
-remove hash_announcer from Node and DiskBlobManager
-remove announcement related functions from DiskBlobManager
-update SQLiteStorage to store announcement times and provide blob hashes needing to be announced
-use dataExpireTimeout from lbrynet.dht.constants for re-announce timing
-use DeferredSemaphore for concurrent blob announcement
2018-03-28 15:53:51 -04:00
Jack Robison
ea0ea704a2
refactor iterativeAnnounceHaveBlob
-change to only self_store if the number of contacts to store to is less than k and we are the closest node to the hash
2018-03-28 15:53:51 -04:00
Jack Robison
14f9bb7b82
log EWOULDBLOCK 2018-03-28 15:53:51 -04:00
Jack Robison
a8025b02c6
log invalid vs missing token 2018-03-28 15:53:51 -04:00
Jack Robison
333d70860b
add last_announced_time to blob table 2018-03-28 15:53:50 -04:00
Lex Berezhny
267f50474b
removing more references to PTCWallet 2018-03-28 15:53:50 -04:00
Lex Berezhny
866f220d9b
removed PTCWallet 2018-03-28 15:53:50 -04:00
Jack Robison
a96d827c0f
use reactor time in Delay 2018-03-28 15:53:50 -04:00
Jack Robison
4eab77fa10
safe start_listening 2018-03-28 15:53:50 -04:00
Jack Robison
5013426e02
logging and docstring 2018-03-28 15:53:50 -04:00
Jack Robison
cb09be5336
remove unused stuff 2018-03-28 15:53:50 -04:00
Lex Berezhny
339e666f38
+ Wallet.wait_for_tx_in_wallet 2018-03-28 15:53:49 -04:00
Jack Robison
ebe5dd0e68
better ping test 2018-03-28 15:53:49 -04:00
Jack Robison
1db44d5fb6
rename variable 2018-03-28 15:53:49 -04:00
Jack Robison
fd7a771f66
add sanity check to CreateEncryptedFileTest 2018-03-28 15:53:49 -04:00
Jack Robison
5628d0825b
add CallLaterManager 2018-03-28 15:53:49 -04:00
Jack Robison
88970cb0a8
move peer manager class to lbrynet.core 2018-03-28 15:53:49 -04:00
Jack Robison
d2a6dd3ed3
add dht functional tests 2018-03-28 15:53:49 -04:00
Jack Robison
1eff35ce76
update dht unit tests to use task.Clock 2018-03-28 15:53:49 -04:00
Jack Robison
0ab5dd28bc
update tests 2018-03-28 15:53:48 -04:00
Jack Robison
2e30ce9ae5
add mock udp transport layer 2018-03-28 15:53:48 -04:00
Jack Robison
87c69742cd
log packet encoding errors and warn if the transport is not connected 2018-03-28 15:53:48 -04:00
Jack Robison
b4bc5e2110
cancel callLater on error or timeout 2018-03-28 15:53:48 -04:00
Jack Robison
df78f7ff9f
add response assertion to announce_to_peer 2018-03-28 15:53:48 -04:00
Jack Robison
bdba263224
catch TimeoutError in _IterativeFindHelper 2018-03-28 15:53:48 -04:00
Jack Robison
16fcc3f5c1
findValue inlinecallbacks refactor 2018-03-28 15:53:48 -04:00
Jack Robison
43896c8d17
refactor joinNetwork into smaller functions
-try to re-join network if no contacts are known
2018-03-28 15:53:47 -04:00
Jack Robison
04e76443c6
move dht node component setup from Session into Node 2018-03-28 15:53:47 -04:00
Jack Robison
e6caedac91
remove DHTHashSupplier class, move former functions into DHTHashAnnouncer 2018-03-28 15:53:47 -04:00
Jack Robison
6666468640
add reactor arguments to Node
-adds reactor (clock) and reactor functions listenUDP, callLater, and resolve as arguments to Node.__init__
-set the reactor clock on LoopingCalls to make them easily testable
-convert callLater manage loops to LoopingCalls
2018-03-28 15:53:47 -04:00
Jack Robison
efaa97216f
move dht node setup back into node class 2018-03-28 15:53:47 -04:00
Jack Robison
e30ea50ef4
more 2018-03-28 15:53:47 -04:00
Jack Robison
3296c0fb3d
move dht related classes to lbrynet.dht 2018-03-28 15:53:47 -04:00
Jack Robison
54a152fa8e
fix merge conflict in dht tests 2018-03-28 15:53:46 -04:00
Kay Kurokawa
9088d152b5
better to keey track of retry count in function instead of unbounded dictionary 2018-03-28 15:53:46 -04:00
Kay Kurokawa
4cb461601e
result must be set here, otherwise it will not be defined when used later. Add test for it 2018-03-28 15:53:46 -04:00
Kay Kurokawa
0425c95b68
No need for clock now in test for DHTHashAnnouncer 2018-03-28 15:53:46 -04:00
Kay Kurokawa
75b977dff9
we just have one supplier not a list of suppliers 2018-03-28 15:53:46 -04:00
Kay Kurokawa
60c7261871
add single_hash_announce_duration as a field that gets return for API call status for dht status 2018-03-28 15:53:46 -04:00
Kay Kurokawa
0f3385e4dc
make the single hash announce duration adjustable in DHTHashSupplier 2018-03-28 15:53:46 -04:00
Jack Robison
ad6a2bef7f
handle error from old clients with a broken ping command 2018-03-28 15:53:45 -04:00
Jack Robison
446c3a88dc
refactor DHTHashAnnouncer and iterativeAnnounceHaveBlob
-use looping call for running manage function rather than a scheduled
callLater

-track announce speed

-retry store requests that failed up to 3 times

-return a dict of {blob_hash: [storing_node_id]} results from
_announce_hashes

_refreshRoutingTable inline cb refactor

-add and use DeferredLockContextManager

-don't trap errback from iterativeFindNode in iterativeAnnounceHaveBlob
2018-03-28 15:53:45 -04:00
Jack Robison
67ef8be7b7
convert node manage function to a looping call 2018-03-28 15:53:45 -04:00
Jack Robison
ecbe4113ce
move Distance to own file 2018-03-28 15:53:45 -04:00
Jack Robison
b75c8d96ce
Bump version 0.19.2rc3 --> 0.19.2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-28 15:35:46 -04:00
Jack Robison
cb83531d05
Bump version 0.19.2rc2 --> 0.19.2rc3
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-28 15:15:47 -04:00
Jack Robison
dc65fd148e
Bump version 0.19.2rc1 --> 0.19.2rc2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-26 13:36:51 -04:00
Jack Robison
439a0f8778
fix docstrings
-add docopt unit test
2018-03-26 13:20:33 -04:00
hackrush
aa7b440989 Fixed regression in stream_availablity command 2018-03-26 19:43:06 +05:30
Jack Robison
f0742675b8
Merge branch 'master' into no-short-flags 2018-03-23 14:59:53 -04:00
Alex Grintsvayg
9ee5a3511d missed this in dht-compat merge 2018-03-23 12:50:18 -04:00
Jack Robison
69657750b8
Bump version 0.19.1 --> 0.19.2rc1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-22 17:04:12 -04:00
Jack Robison
cb069ca002
add blob_reflect 2018-03-22 16:54:29 -04:00
Jack Robison
3085e28490
don't try to resend failed blobs to reflector
-fixes infinite loop where client keeps trying to send failing blobs, which may be failing because they are invalid

-return list of reflected blob hashes from BlobReflectorClient
2018-03-22 16:53:16 -04:00
Jack Robison
679c2f403f
fix incorrectly raised DownloadCanceledError for already verified blobs
-make InvalidDataError message clearer
-fix BlobReflectorClient result
2018-03-22 13:23:12 -04:00
Jack Robison
de280b5ebf
Bump version 0.19.1rc7 --> 0.19.1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-20 10:15:50 -04:00
Jack Robison
113cc8bb15
Bump version 0.19.1rc6 --> 0.19.1rc7
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-19 14:31:17 -04:00
Jack Robison
b28bdbd752
rename existing reupload.reflect_stream --> reupload.reflect_file, add a reupload.reflect_stream function 2018-03-19 13:55:11 -04:00
Jack Robison
f94a9e8729
start lbry files in parallel 2018-03-19 13:46:27 -04:00
Jack Robison
43c73b9abf
fix slow sqlite query 2018-03-19 13:31:05 -04:00
hackrush
3724fa1810 Removed last flag decorator 2018-03-18 16:11:19 +05:30
hackrush
f7f6770120 Removed flags decorator as short flags are no longer used. 2018-03-18 16:11:19 +05:30
hackrush
1d9c996217
Merge pull request #1148 from lbryio/channel-bid
Update channel balance checking to match claim balance checking
2018-03-17 09:05:08 +05:30
hackrush
2b69d2fad0
Fix pylint error 2018-03-16 21:42:40 +05:30
Jack Robison
0313f857ba
don't try to delete the stream terminator from the blob table when deleting a stream 2018-03-15 17:44:54 -04:00
Jack Robison
8af96a0c51
don't try to announce the stream terminator 2018-03-15 17:42:21 -04:00
Jack Robison
adb1291c09
fix blob list key error 2018-03-15 09:55:40 -04:00
Thomas Zarebczan
b218e84d29
update channel balance checking to match claim
Simple balance check before calling get_max_usable_balance_for_claim - matches what happens on the claim.

Also provide clearer error message about maximum amount
2018-03-15 09:42:17 -04:00
Jack Robison
80fcb760b7
Bump version 0.19.1rc5 --> 0.19.1rc6
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-14 16:45:39 -04:00
Jack Robison
bc2f5901a7
Merge branch 'add-txlbryum' 2018-03-14 15:07:57 -04:00
Lex Berezhny
633b49da92 removed RequestCounter 2018-03-14 15:01:47 -04:00
Jack Robison
76b3d219c8
Bump version 0.19.1rc4 --> 0.19.1rc5
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-14 13:54:05 -04:00
Jack Robison
e94d10d3eb
only call get_max_usable_balance_for_claim in Wallet.py if the bid looks too high for the balance 2018-03-14 13:47:34 -04:00
Jack Robison
25eb64b346
Bump version 0.19.1rc3 --> 0.19.1rc4
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-13 17:34:08 -04:00
Jack Robison
9b44ba7c84
only call get_max_usable_balance when the bid might be too high 2018-03-13 17:32:29 -04:00
Jack Robison
69ecc6ce90
Bump version 0.19.1rc2 --> 0.19.1rc3
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-13 11:44:27 -04:00
Jack Robison
cde78f8134
migrate configured download directory instead of assuming the default 2018-03-13 11:40:34 -04:00
Alex Grintsvayg
d0aa0a7d0c make dht forwards-compatible for upcoming switch to standardized bencode dict keys 2018-03-13 09:43:32 -04:00
Lex Berezhny
37bfed8aee
Merge pull request #1137 from lbryio/new-channel-fix
Error cleanly when claiming a new channel with exact or higher amount than balance
2018-03-12 16:17:18 -04:00
hackrush
16f2a5429b Name and output message fix. 2018-03-13 01:26:18 +05:30
Jack Robison
e881b608bf
Revert "don't block daemon startup on the file manager"
This reverts commit f25b772
2018-03-12 10:44:29 -04:00
Jack Robison
b41bb9beee
Bump version 0.19.1rc1 --> 0.19.1rc2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-09 14:14:02 -05:00
Jack Robison
f25b772b56
don't block daemon startup on the file manager 2018-03-09 14:09:07 -05:00
Jack Robison
f07e696c31
fix get_pending_blobs_for_stream 2018-03-09 14:07:26 -05:00
hackrush
f5aadf3918 Sanitized logged error for channel and name claims 2018-03-09 21:28:33 +05:30
hackrush
6d4af4ba90 Error cleanly when claiming a new channel with exact or higher amount than balance
fixes #1107
2018-03-09 21:28:33 +05:30
Jack Robison
96e30984c1
Bump version 0.19.0 --> 0.19.1rc1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-08 16:51:23 -05:00
Jack Robison
81de5fbbf4
verify_will_announce_head_and_sd_blobs 2018-03-08 16:46:39 -05:00
Jack Robison
cdfb7f4cb4
fix blob_list error 2018-03-08 16:43:22 -05:00
Jack Robison
3f1bcbffeb
fix blob_announce when announcing a single blob 2018-03-07 18:25:30 -05:00
Jack Robison
2040748c62
add stratum client protocol 2018-03-06 14:30:19 -05:00
hackrush
14c01b095b Added tests for removing short args in cli 2018-03-06 03:50:12 +05:30
hackrush
da4a24d79f Added scripts to autogenerate docs and api from docstring
Summary of changes
  Removed single dashed(short args) arguments(possibly breaking changes
for app side)
  Standardised the docstrings
  Added scripts to autogenerate API and CLI documentation using the
docstrings
2018-03-06 03:50:12 +05:30
Alex Grintsvayg
95e12a208d deprecate report_bug 2018-03-05 14:17:57 -05:00
Jack Robison
67a3001a0b
Bump version 0.19.0rc38 --> 0.19.0
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-02 23:01:23 -05:00
Jack Robison
a12b011b1e
get file claim info by outpoint 2018-03-02 18:25:53 -05:00
Jack Robison
2c91d30655
Bump version 0.19.0rc37 --> 0.19.0rc38
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-03-02 17:36:56 -05:00
Jack Robison
7862ee6715
fix blob_announce command 2018-03-02 16:46:07 -05:00
Jack Robison
01c4c6ed97
fetch claim heights 2018-03-02 16:46:02 -05:00
Jack Robison
6a4b65a796
have get fail when given a channel uri before attempting to resolve 2018-03-02 15:34:34 -05:00
Jack Robison
35426c7350
remove some unused code 2018-03-02 15:34:34 -05:00
Jack Robison
1958327796
comments and logging 2018-03-02 15:34:34 -05:00
Jack Robison
76cb674ebb
fix updating content claims for existing files
-update lbry file attributes as soon as a change to the content claim occurs
2018-03-02 15:34:20 -05:00
Jack Robison
d1240541c8
always update lbry file attributes after publishing 2018-03-02 15:33:48 -05:00
Jack Robison
91229aac6e
remove old stream on a publish update 2018-03-02 15:33:48 -05:00
Jack Robison
96d435cebd
don't import reactor, set in SqliteConnection 2018-03-02 15:15:42 -05:00
Jack Robison
bceaaa5724
delay re-running query after database locked error 2018-03-02 15:15:41 -05:00
Jack Robison
a1aadb0bce
fix join_dht attribute error 2018-03-02 15:13:22 -05:00
Alex Grintsvayg
d086fb9547 only log errors to loggly 2018-03-01 16:31:00 -05:00
Alex Grintsvayg
fa33110d04 stop spamming cryptonator errors. fixes #984 2018-02-27 14:06:45 -05:00
Jack Robison
dafa80ce29
Merge branch 'master' into update_fix 2018-02-22 14:10:51 -05:00
Jack Robison
21900b2e7f
Bump version 0.19.0rc36 --> 0.19.0rc37
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-02-22 10:50:03 -05:00
Jack Robison
741e395677
fix blob_list falsely returning an empty list for streams with known blobs
-remove get_blobs functions from Daemon, use functions in SQLiteStorage instead
2018-02-22 10:37:53 -05:00
Jack Robison
9a046fca0f
remove unused calculate_available_blob_size function 2018-02-22 10:22:53 -05:00
Jack Robison
3b369103a0
Bump version 0.19.0rc35 --> 0.19.0rc36
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-02-21 19:19:15 -05:00
Jack Robison
b1c66015e1
detect and remove invalid streams and sd blobs 2018-02-21 19:09:10 -05:00
Jack Robison
73eb66c0f2
pylint 2018-02-21 16:45:12 -05:00
Jack Robison
8b93fb5b13
update test
check sd info read from the blob and from the database
2018-02-21 16:41:15 -05:00
Jack Robison
d7bfeae6b8
fix position of stream terminator blob 2018-02-21 16:37:00 -05:00
Jack Robison
3e6b00ad00
remove sort from get_stream_hash
error on zero length data blobs or a non-zero length stream terminator blob
2018-02-21 16:34:48 -05:00
Jack Robison
0904c74273
remove unused create_plain_sd function 2018-02-21 16:33:15 -05:00
hackrush
3754f34f53 Review fixes and additional comments in test 2018-02-21 14:22:11 +05:30
hackrush
2368433b22 Check for max usable balance before updating 2018-02-20 08:54:03 +05:30
hackrush
d72ef784ed Removed daemon side bid checks during publish
Fixes #748

Fixed failing test, Yay!

Why CHANGELOG? Why not anarchy?
2018-02-20 08:54:03 +05:30
hackrush
5fee660c9c Fixed error types to be more appropriate 2018-02-17 20:18:55 +05:30
Jeremy Curcio
2621ba6982 Add exception for non-float bids when pubishing 2018-02-17 19:29:53 +05:30
Jack Robison
0edcf2dcc7
Bump version 0.19.0rc34 --> 0.19.0rc35
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-02-15 09:35:04 -05:00
Jack Robison
6ea5492ee5
dont delete old databases yet 2018-02-15 09:33:47 -05:00
Jack Robison
1a330fcb41
Bump version 0.19.0rc33 --> 0.19.0rc34
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-02-13 16:02:53 -05:00
Jack Robison
a7567361dc
fix file name for files that already exist 2018-02-13 15:02:06 -05:00
Jack Robison
e40d4f74d8
fix default db_revision 2018-02-13 14:42:53 -05:00
Jack Robison
73f09edcf0
fix setup and teardown for wallet tests
-also fixes a few wallet tests that weren't checking exceptions correctly
2018-02-13 14:22:52 -05:00
Jack Robison
9d87de1433
fix setup and teardown for blob manager tests 2018-02-13 14:22:40 -05:00
Jack Robison
3769287e88
fix setup and teardown for test_streamify 2018-02-13 14:22:21 -05:00
Jack Robison
68c906aff9
pylint 2018-02-13 10:27:52 -05:00
Jack Robison
9e11c075c6
cleaner foreign keys 2018-02-13 10:27:52 -05:00
Jack Robison
b7d0191e5d
update functional tests 2018-02-13 10:27:52 -05:00
Jack Robison
49507b98f4
update unit tests, add test_SQLiteStorage 2018-02-13 10:27:51 -05:00
Jack Robison
e9b9118c2a
whitespace 2018-02-13 10:27:51 -05:00
Jack Robison
9d539aaa16
migrate databases 2018-02-13 10:27:51 -05:00
Jack Robison
c15850ccab
re-enable filtering lbry files by claim attributes 2018-02-13 10:27:51 -05:00
Jack Robison
0df383b9f2
update Downloader and Publisher 2018-02-13 10:27:51 -05:00
Jack Robison
ce4b82d929
update Daemon to use SQLiteStorage 2018-02-13 10:27:51 -05:00
Jack Robison
9a8cac20e7
update reflector client and server to use SQLiteStorage 2018-02-13 10:27:51 -05:00
Jack Robison
68542f3ae1
refactor EncryptedFileDownloader and EncryptedFileManager
-remove stream info manager (DBEncryptedMetadataManager)
-split `add_lbry_file` into separate `add_published_file` and `add_downloaded_file` functions
-set the download path upon adding file to the db, use the source file path for publishes
-remove the lbry file manager-wide download directory, set for each file individually
-add claim `metadata`, `claim_name`, `claim_id`, `outpoint`, `txid`, `nout`, `channel_claim_id`, and `channel_name` attributes to EncryptedFileDownloader
2018-02-13 10:27:50 -05:00
Jack Robison
f8c33b6acb
refactor lbrynet.core.StreamDescriptor
-remove lbrynet/lbry_file/StreamDescriptor.py
2018-02-13 10:27:50 -05:00
Jack Robison
0b1f4192fc
update Wallet to use SQLiteStorage
-remove CachedClaim and wallet storage classes
2018-02-13 10:27:50 -05:00
Jack Robison
af87df3709
remove sqlite_helpers 2018-02-13 10:27:50 -05:00
Jack Robison
e671005c3c
update BlobManager to use SQLiteStorage, remove old database functions
-remove blob upload/download history
2018-02-13 10:27:50 -05:00
Jack Robison
db7061ce92
set up a SQLiteStorage object in Session 2018-02-13 10:27:50 -05:00
Jack Robison
2d462acefc
add SQLiteStorage 2018-02-13 10:27:50 -05:00
Jack Robison
e77e41fb6d
move migrators to lbrynet.database, remove lbrynet.db_migrator 2018-02-13 10:27:49 -05:00
Alex Grin
d6819d8091
Merge pull request #1086 from lbryio/add-conf-flag-to-cli
fixes for the --conf flag
2018-02-12 17:01:43 -05:00
Alex Grintsvayg
bb2efdcc7c fixed the error when trying to perform get on channels
now it states that get cannot be used on channels

closes #623
closes #1085
2018-02-12 16:40:29 -05:00
Jack Robison
bd6bd24478
Bump version 0.19.0rc32 --> 0.19.0rc33
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-02-12 13:24:19 -05:00
Antonio Quartulli
639744e047
conf: initialize IDs after reading config file
Installation_id and node_id are stored in the data dir.
For this reason they should be read/created only after the
config has been parsed.
This way they can be retrieved or stored at the right location.

Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
2018-02-10 16:22:33 +08:00
Antonio Quartulli
34976c7602
DaemonCLI: add --conf flag
When starting a daemon with a different configuration,
the same should also be used by the cli tool.

Add the --conf flag to the cli command to allow using a
custom config file.

Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
2018-02-10 16:22:32 +08:00
rick batka
69a99a61ba Fix issue #930. Disallow positional arguments for CLI settings_set and fix error reporting when settings_set fails. 2018-02-09 11:30:29 -05:00
Alex Grintsvayg
b3d3c1c93b drop commands list from cli help 2018-02-08 09:36:59 -05:00
Alex Grintsvayg
2f8c645edc download script now gets all blobs in stream if you give it an sd hash 2018-02-07 11:21:34 -05:00
Jack Robison
1c45cf05d7
Merge branch 'atiaxi-blob-list-uri-fix' 2018-02-06 22:55:02 -05:00
Jack Robison
0f46785739
Merge branch 'blob-list-uri-fix' of https://github.com/atiaxi/lbry into atiaxi-blob-list-uri-fix 2018-02-06 22:51:06 -05:00
Roger Ostrander
44df26abd3 Removing unused import 2018-02-06 01:32:10 -05:00
Roger Ostrander
d8e1738f27 Code review changes (removed safe_dict_descend) 2018-02-06 01:16:10 -05:00
Antonio Quartulli
8a7e707504
DHTPeerFinder: re-join the network if we have no peers
Periodically check if the routing table is empty and, if so,
re-attempt joining the DHT network.

This check is performed in the main DHTPeerFinder loop every 60 secs.

Closes: #1093
Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
2018-02-06 12:33:12 +08:00
Antonio Quartulli
4f7885e499
dht_node: add hasContacts method
This method can be used by other components to check
if in the Node routing table there is at least one peer.

Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
2018-02-06 12:33:10 +08:00
Antonio Quartulli
ce0af77aa9
dht_node: split network start and join procedures
In order to attempt to join the DHT several times
(i.e. when the first attempt has failed) we need to
split the components initialization from the real
joining operation.

Create node.startNetwork() to initialize the node
and keep the rest in node.joinNetwork()

Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
2018-02-06 12:19:33 +08:00
Jack Robison
1f68d29d73
Bump version 0.19.0rc31 --> 0.19.0rc32
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-02-05 21:25:33 -05:00
Roger Ostrander
a4343c3eb3 API call to blob_list with uri parameter now succeeds 2018-02-03 23:08:15 -05:00
Jack Robison
f918916160
remove gmpy and seccure dependencies 2018-02-01 12:39:00 -05:00
Jack Robison
1327757e35
Bump version 0.19.0rc30 --> 0.19.0rc31
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-01-31 19:52:24 -05:00
Jack Robison
b8accbb049
Bump version 0.19.0rc29 --> 0.19.0rc30
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-01-29 10:29:54 -05:00
hackrush
5a3a592df8 Related changlelog for the PR lbryio/lbryum#203 2018-01-26 15:52:25 +05:30
Alex Grintsvayg
3b5978992c no more lbryapi 2018-01-23 16:53:29 -05:00
Jack Robison
798d2c6984
Bump version 0.19.0rc28 --> 0.19.0rc29
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-01-22 16:04:54 -05:00
Jack Robison
973978c1e5
pylint 2018-01-22 16:04:08 -05:00
Jack Robison
52aa1ba3a0
Bump version 0.19.0rc27 --> 0.19.0rc28
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-01-22 15:59:54 -05:00
Jack Robison
eb4ba089ab
fix checking the external ip 2018-01-22 15:47:14 -05:00
Alex Grintsvayg
a6588f740a stop sending useless analytics event 2018-01-22 15:21:39 -05:00
Jack Robison
9121b79f22
Bump version 0.19.0rc26 --> 0.19.0rc27
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-01-18 13:44:15 -05:00
Jack Robison
edb0f8deed
changelog and doc 2018-01-18 13:41:17 -05:00
hackrush
7472d12644 Removed include_tip_info from transaction_list, goes with lbryum#183 2018-01-18 08:43:58 +05:30
Kay Kurokawa
1c608a09a9 use reworked lbryum payto command 2018-01-16 13:30:12 -05:00
Jack Robison
c29456b130
Bump version 0.19.0rc25 --> 0.19.0rc26
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-01-12 09:56:19 -05:00
Jack Robison
b6afc437e6
combine auto_re_reflect and reflect_uploads settings 2018-01-12 09:21:24 -05:00
Jack Robison
8a133f9749
use lists of hostname:port strings in conf file 2018-01-09 16:55:39 -05:00
Jack Robison
9302d71012
Bump version 0.19.0rc24 --> 0.19.0rc25
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-01-07 12:18:37 -05:00
akinwale
5677f6d00d
added a new startup stage for wallet_unlock (#1048)
* added a new startup stage to indicate if the daemon is waiting for wallet_unlock
2018-01-07 06:44:29 +01:00
Thomas Zarebczan
4b6d0d33ef
remove download_directory from options 2018-01-05 14:19:21 -05:00
Jack Robison
e4364a60c2
Bump version 0.19.0rc23 --> 0.19.0rc24
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-01-04 21:39:36 -05:00
Jack Robison
b046a6578b
add blockchain_name and lbryum_servers to the adjustable settings 2018-01-04 21:30:41 -05:00
Jack Robison
64e04f8a68
refactor start_lbry_file 2018-01-04 21:28:09 -05:00
Jack Robison
76de605b7f
refactor start_lbry_files 2018-01-04 21:25:56 -05:00
Jack Robison
2af61460a7
add attributes to lbry file base classes 2018-01-04 21:25:56 -05:00
Jack Robison
bc58add6de
logging 2018-01-04 21:25:56 -05:00
Jack Robison
ecb9909faa
fix node and installation id whitespace bugs 2018-01-04 21:25:55 -05:00