Commit graph

2875 commits

Author SHA1 Message Date
Jack Robison f1b19f10cc
Merge branch 'master' into greedy_search 2018-08-03 13:08:31 -04:00
Jack Robison e50ac69358
tests and pylint 2018-08-03 12:35:10 -04:00
Jack Robison aef561d78b
refactor status results 2018-08-03 12:33:31 -04:00
Jack Robison 4ef4a4816f
update component tests 2018-08-03 11:37:10 -04:00
Jack Robison 8533bfa7c5
refactor test_misc, remove Session
-use only the one process
2018-08-03 11:37:10 -04:00
Jack Robison 6389e961b9
update (and refactor) tests to not use Session 2018-08-03 11:37:10 -04:00
Jack Robison 6359fc608e
set download_mirrors upon making the downloader instead in the file manager globally 2018-08-03 11:37:10 -04:00
Jack Robison 314400a1bd
move looping call to check announcement status to SQLiteStorage 2018-08-03 11:37:10 -04:00
Jack Robison a3de065c93
use txupnp instead of miniupnpc 2018-08-03 11:37:07 -04:00
Jack Robison 99207b7221
delete Session.py
split Session into Components
2018-07-30 18:00:33 -04:00
Jack Robison e3c3fafa1e
split headers download into own component
-add component statuses
2018-07-30 18:00:33 -04:00
Victor Shyba 9742da348b do not consume errors on DeferredList 2018-07-30 13:53:58 -03:00
Victor Shyba 94a31922f7 fix unnecessary logging tag 2018-07-30 11:22:31 -03:00
Victor Shyba 1937eb17c4 adds a test for stopping 2018-07-30 11:22:31 -03:00
Victor Shyba f291ea515a add test for invalid content 2018-07-30 11:22:31 -03:00
Victor Shyba ff4aba9423 refactor mirroring 2018-07-30 11:22:31 -03:00
hackrush 9ab256df30 fixed improper error handling when data is not valid JSON (#1326) 2018-07-30 09:38:36 -04:00
Lex Berezhny 88b8ca8a49 Revert "negate wallet lock check in components"
This reverts commit 32507d7
2018-07-25 14:59:10 -04:00
Jack Robison 09f637496c
Bump version 0.21.0rc2 --> 0.21.0rc3
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-25 12:25:24 -04:00
Jack Robison 826d269e0e
Merge branch 'blobs_mirroring' 2018-07-25 12:24:37 -04:00
Victor Shyba ab27203100 improve exception logging and add a docstring on the interaction between downloaders 2018-07-25 13:01:13 -03:00
Victor Shyba 88c2051605 set download_mirror conf from components change 2018-07-25 12:23:15 -03:00
Victor Shyba f510c2a433 improve logging from review 2018-07-25 12:15:52 -03:00
Victor Shyba ec140d5d8a changes from code review 2018-07-25 12:15:52 -03:00
Victor Shyba ad96b006f9 adds http download support for blobs mirroring 2018-07-25 12:15:52 -03:00
Lex Berezhny 32507d74f7 negate wallet lock check in components 2018-07-25 01:28:19 -04:00
Jack Robison 40c5f6e3ab
Bump version 0.21.0rc1 --> 0.21.0rc2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-24 21:41:58 -04:00
Jack Robison c1b05402ef
add address and port arguments to peer_ping
allows directly pinging the peer without first doing an iterative find
2018-07-24 21:30:54 -04:00
Jack Robison 1dd1bad9c2
Bump version 0.20.4 --> 0.21.0rc1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-24 21:21:52 -04:00
Jack Robison 5984ae7ce9
fix 2018-07-24 21:10:53 -04:00
Jack Robison 5d9a187659
refactor required conditions and @requires decorator 2018-07-24 20:01:38 -04:00
Jack Robison a9c94ca22d
move setup and _shutdown to AuthJSONRPCServer 2018-07-24 20:01:38 -04:00
Jack Robison a285db1b08
pylint 2018-07-24 20:01:38 -04:00
Jack Robison 13bf8125e3
status doc, better determination of is_first_run
-add skipped_components to status response
-re-add run_reflector_server to settings
2018-07-24 20:01:38 -04:00
Jack Robison b06dcf0a0d
cancel starting components if the reactor is stopped before startup has finished
-don't block starting the dht component on having found enough peers, only on setting up the protocol
2018-07-24 20:01:38 -04:00
Jack Robison a800f6ddf0
update status command 2018-07-24 20:01:38 -04:00
Jack Robison a89306b6bf
reorganize daemon startup
-fix loggly not using the share usage setting

-delete more
2018-07-24 20:01:38 -04:00
Jack Robison c3120e93cf
delete unneeded daemon attributes 2018-07-24 20:01:38 -04:00
Jack Robison defe9506bb
set daemon attribute for each component as they start 2018-07-24 20:01:38 -04:00
Jack Robison 55d3bb0ec3
remove auto_renew 2018-07-24 20:01:38 -04:00
hackrush 005a8b3008
allow utf-8 characters in Daemon.py
-amit really wants the shrug emoji ¯\_(ツ)_/¯
2018-07-24 20:01:38 -04:00
hackrush a741fdfc44
update daemon unit tests 2018-07-24 20:01:38 -04:00
hackrush 944b94aae8
update logging tests 2018-07-24 20:01:38 -04:00
hackrush 37eaf634c4
update functional tests 2018-07-24 20:01:38 -04:00
hackrush edcb06a415
update mocks, add test_Component_Manager 2018-07-24 20:01:38 -04:00
hackrush 62b50dc0ae
move custom logger to lbrynet directory
-import on module level __init__
2018-07-24 20:01:38 -04:00
hackrush e7c57dcabc
add components_to_skip setting 2018-07-24 20:01:38 -04:00
hackrush 094d9c6497
update lbrynet-cli 2018-07-24 20:01:38 -04:00
hackrush 3dc5a9de7b
whitespace 2018-07-24 20:01:38 -04:00
hackrush 4e29041291
update status command 2018-07-24 20:01:38 -04:00
hackrush 6b6a29fdb7
update settings_set 2018-07-24 20:01:38 -04:00
hackrush 2d61ba629f
add requires decorator 2018-07-24 20:01:38 -04:00
hackrush 5a2075019c
update Wallet.check_locked 2018-07-24 20:01:38 -04:00
hackrush 944200ca8c
add all the daemon components 2018-07-24 20:01:38 -04:00
hackrush 40d8e96811
remove functions and attributes in Session and Daemon that are now part of components
-rename attributes in daemon to use components
2018-07-24 20:01:38 -04:00
Jack Robison 7e8ca842a2
change ComponentManager to use instance methods rather than class methods
-add get_component method to ComponentManager

-add override_components kwargs to ComponentManager

-add skip_components to ComponentManager

-change component_manager attribute to exist on the AuthJSONRPCServer instance instead of the class
2018-07-24 20:01:38 -04:00
Jack Robison b808d08eb3
support callbacks to component setups 2018-07-24 20:01:38 -04:00
Jack Robison eb11da9b19
convert directory and SQLiteStorage setup to be a Component 2018-07-24 20:01:38 -04:00
Jack Robison 68b31a09b4
add daemon Component and ComponentManager classes 2018-07-24 20:01:38 -04:00
Lex Berezhny cab8416596
api doc generator (#1290)
script to generate docs/api.json
2018-07-24 19:36:09 -04:00
Electron - Mark Firth 94f4e6714a A More Informative Error Message (#1309)
Additional information added to the balance error message when editing a claim.
2018-07-20 15:41:24 -04:00
Jack Robison 2ddd6b051d
Bump version 0.20.4rc4 --> 0.20.4
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-18 15:36:21 -04:00
Jack Robison c506fc5c75
lower peer finder timeout message to debug from warning 2018-07-18 15:32:45 -04:00
Jack Robison d306ece0d4
Bump version 0.20.4rc3 --> 0.20.4rc4
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-17 17:38:27 -04:00
Jack Robison d29f103910
pylint 2018-07-17 17:38:19 -04:00
Jack Robison 2386a3a79b
Bump version 0.20.4rc2 --> 0.20.4rc3
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-17 17:14:07 -04:00
Jack Robison ec51333b56
allow node udp interface to be configured 2018-07-17 17:13:33 -04:00
Victor Shyba 4d720370b1 fix where it called the wrong score method 2018-07-17 17:48:25 -03:00
Jack Robison 7d7dd665aa
Bump version 0.20.4rc1 --> 0.20.4rc2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-17 13:31:37 -04:00
Victor Shyba 5492ab9081
stop requesting peers which doesnt have a blob 2018-07-17 13:22:08 -04:00
Victor Shyba 562d23df11 remove nodes that went ignored during iteration 2018-07-16 17:22:46 -03:00
Jack Robison 2c13c04f86
Bump version 0.20.3 --> 0.20.4rc1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-13 12:02:50 -04:00
Victor Shyba 5c7d279104 prune failures during is_ignored calls 2018-07-12 18:24:59 -03:00
Victor Shyba cfe8e17223 filter out the bad node in results instead of punishing the node we trusted to contact 2018-07-12 18:24:18 -03:00
Victor Shyba c589e89bf0 greedy search with exclude filtering 2018-07-05 22:03:52 -03:00
Lex Berezhny 284264962d reflector test fix 2018-07-05 19:51:15 -04:00
Lex Berezhny 6952c2c07e
Revert "refactor lbrynet-daemon into modular components" (#1286)
* Revert "fix reflector test"

This reverts commit 6a15b51ac3.

* Revert "refactor lbrynet-daemon into modular components (#1164)"

This reverts commit 75a6ff269e.
2018-07-05 19:05:48 -04:00
Jack Robison 6a15b51ac3
fix reflector test 2018-07-05 15:40:13 -04:00
Jack Robison 75a6ff269e refactor lbrynet-daemon into modular components (#1164)
* add daemon Component and ComponentManager classes

* convert directory and SQLiteStorage setup to be a Component

* support callbacks to component setups

* Fixed typo in ComponentManager

* convert wallet to be Component

* Use storage from session.

* Remove create_session internal function and PEP8

* Starting to convert session to its own component. Removed ref to `self.storage` from Daemon.py

* Making DHT component(broken)

* Refactored classes to reduce redundancy in getting config setting

* DHT is now it's own component

* Fixed `test_streamify` test

* Fixed regression caused by removing `peer_manager` from session

* refactor ComponentManager and Component to use instance instead of class methods

* Hash announcer, file manager, stream identifier components

* Query Handler and server components

* Reflector Component

* Fixed test_streamify(well Jack did, but ¯\_(ツ)_/¯)

* All tests now passing

* Pylint fixes

* Oops(That's all you're gonna get :-P)

* Making decorators(WIP, commit so that I don't lose work)

* Decorator made and decorating of functions done(some other changes)

* import fixes and removed temporary test function

* Fixed new broken tests from daemon refactor

* Sanitization of modules

* Reworded errors

* wallet unlock condition checks, fixed breaking changes

* Rebased on amster and other crazy stuff

* Started writing tests

* Tests for component manager

* Fix Daemon Tests

* Fixed passing mutable args in init

* Using constants instead of strings. Added CHANGELOG.md

* Now components can be skipped by setting relevant config in file.

* P-Y-L-I-N-T #angry_emoji
2018-07-05 15:21:52 -04:00
ocornoc 148cc96025 Changed "cliam" to "claim" and added accurate info for nsfw. (#1285)
* Changed "cliam" to "claim" and added accurate info for nsfw.
* Update CHANGELOG.md
2018-07-05 12:00:43 -04:00
Jack Robison da7e7503b9
Bump version 0.20.3rc2 --> 0.20.3
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-03 14:32:38 -04:00
Jack Robison 5adcc86f40
Bump version 0.20.3rc1 --> 0.20.3rc2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-03 13:10:35 -04:00
Victor Shyba 1cc7ce69ab set the peer search timeout as configured and raise it to 30s 2018-07-03 13:47:00 -03:00
Victor Shyba 7e0784d8e0 log a warning when peer search times out for real 2018-07-03 12:20:33 -03:00
Victor Shyba 56613a71d5 let find value run until it finds a value 2018-07-03 11:51:39 -03:00
Jack Robison 2b0d4c1603
Bump version 0.20.2 --> 0.20.3rc1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-07-02 17:24:30 -04:00
Jack Robison 929a0cc5af
exclude self and querying node from closest contacts 2018-07-02 14:54:03 -04:00
Jack Robison b6289d101d
fix improper sorting when getting the closest peers to a hash 2018-07-02 14:54:03 -04:00
Jack Robison 7fe92d2df0
load all finished blobs into the node datastore 2018-07-02 14:31:09 -04:00
Jack Robison 03769b94b8
accept invalid store tokens for the first expire-time after startup
this is to better handle nodes storing to us after we've restarted our node
2018-07-02 13:26:38 -04:00
Jack Robison c2dc872a54
fix file manager startup locking up when there are many files in a channel 2018-06-29 21:45:30 -04:00
Jack Robison e0ceaba655
fix blob_list raising an error when blobs in a stream haven't yet been created 2018-06-25 16:47:23 -04:00
Victor Shyba c5f4f58221 collect finished deferred before cancel call 2018-06-23 18:23:25 -03:00
Jack Robison 12d1b93b5d
Bump version 0.20.2rc3 --> 0.20.2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-23 11:53:23 -04:00
Jack Robison 34febf75f9
Bump version 0.20.2rc2 --> 0.20.2rc3
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-22 19:15:46 -04:00
Jack Robison 140c45b01f
Revert "add download progress and is downloading flag to daemon status (#1266)"
This reverts commit 2fa2269
2018-06-22 18:54:22 -04:00
Akinwale Ariwodola 2fa2269cc7
add download progress and is downloading flag to daemon status (#1266) 2018-06-21 23:49:22 +01:00
Jack Robison 4bcf0ab7fb
Bump version 0.20.2rc1 --> 0.20.2rc2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-20 17:07:54 -04:00
Jack Robison 61a7fd66bf
batch insert/update claims to sqlite 2018-06-20 16:08:12 -04:00
Jack Robison 889b2facce
Bump version 0.20.1 --> 0.20.2rc1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-20 16:01:24 -04:00
Jack Robison e435a9f722
Bump version 0.20.1rc5 --> 0.20.1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-19 14:05:16 -04:00
Jack Robison ba52574091
Bump version 0.20.1rc4 --> 0.20.1rc5
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-19 13:51:12 -04:00
Jack Robison eb660e23b7
fix download being stopped if the sd blob downloaded and data did not start within the timeout
fixes https://github.com/lbryio/lbry/issues/1172
2018-06-19 13:38:25 -04:00
Jack Robison 89bc26191c
fix wallet startup locking up if a lbryumx server is unavailable 2018-06-18 18:42:48 -04:00
Jack Robison 5edd8deb63
fix blob client protocol not tearing itself down properly after a failure 2018-06-18 15:30:35 -04:00
hackrush 371b27b116 Fix approximations in bid during publish 2018-06-18 10:40:33 -04:00
Jack Robison db15169ca6
Bump version 0.20.1rc3 --> 0.20.1rc4
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-15 14:38:23 -04:00
Jack Robison 71e2c545fc
Merge branch 'fix-1165' 2018-06-15 14:38:01 -04:00
Jack Robison 3270693a8f
Bump version 0.20.1rc2 --> 0.20.1rc3
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-15 14:36:31 -04:00
Jack Robison c26816c92d
fix database error when updating a claim that we don't have a file for (https://github.com/lbryio/lbry/issues/1165) 2018-06-15 10:21:37 -04:00
Jack Robison e83ff47722
Bump version 0.20.1rc1 --> 0.20.1rc2
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-15 10:19:43 -04:00
Jack Robison 4c97d2af2e
fix request_needed_blobs for partially reflected streams 2018-06-15 10:10:49 -04:00
Jack Robison 42daf0fc3f
Bump version 0.20.0 --> 0.20.1rc1
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-14 17:55:10 -04:00
Jack Robison 70355145a0
fix race condition when inserting a blob to the database 2018-06-14 15:15:16 -04:00
Jack Robison e6df378e9e
fix token validation error when the dht node has just been started (https://github.com/lbryio/lbry/issues/1248) 2018-06-14 15:07:10 -04:00
Lex Berezhny e11a2e6f85
publish accepts decimal string for the bid value 2018-06-13 16:52:35 -04:00
Jack Robison 7030547849
Bump version 0.20.0rc14 --> 0.20.0
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-13 15:36:49 -04:00
Jack Robison df7a59f40a
skip test on appveyor 2018-06-13 14:04:14 -04:00
jleute 0dbd15df7b Merge remote-tracking branch 'upstream/master' 2018-06-12 00:27:08 +02:00
jleute 9735373eef remove dependency on server_list_reverse 2018-06-12 00:10:23 +02:00
jleute acbe3b0f65 updated test to compare original and saved config file 2018-06-12 00:06:49 +02:00
jleute ea7ef54174 remove unused import 2018-06-12 00:06:24 +02:00
jleute cfe5eb5d56 clean up temporary conf file 2018-06-12 00:06:21 +02:00
jleute e00238427b add assert to test_load_save_load_config_file test 2018-06-12 00:05:50 +02:00
jleute 5926b17871 Updated unittest for saving of server lists in the conf file 2018-06-12 00:05:49 +02:00
jleute 2e3ceedc17 added unit test for reversal of conversion of config file entries 2018-06-12 00:04:35 +02:00
jleute c411d8700b fixes #1109 2018-06-12 00:04:35 +02:00
Jack Robison 0ae89f01e6 Revert "WIP: feature/1098/sorted-claim-results" 2018-06-12 00:04:32 +02:00
Sergey Rozhnov d66bce814c refactored unit test for sort_claim_results 2018-06-12 00:03:30 +02:00
Sergey Rozhnov c290fb5908 refactored sorting of claims and unit tests 2018-06-12 00:02:48 +02:00
Sergey Rozhnov 156b132070 implemented additional test cases for claims sorting; updated changelog 2018-06-12 00:01:36 +02:00
Sergey Rozhnov b770b2de6a simplified claims comparison logic; refactored unit tests 2018-06-12 00:01:36 +02:00
Sergey Rozhnov c7ba82dc07 claim_list and claim_list_mine in Daemon return sorted results 2018-06-12 00:01:32 +02:00
Jack Robison c0c12adefa
Bump version 0.20.0rc13 --> 0.20.0rc14
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-09 11:26:41 -04:00
Jack Robison 9219e5976e
update default lbryum servers 2018-06-09 11:26:26 -04:00
Jack Robison 2619c396d9
Bump version 0.20.0rc12 --> 0.20.0rc13
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-08 13:50:35 -04:00
Jack Robison a1218ea565
Merge remote-tracking branch 'origin/fix_prm' 2018-06-08 13:50:23 -04:00
Jack Robison b92800158e
Bump version 0.20.0rc11 --> 0.20.0rc12
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-08 13:49:36 -04:00
Jack Robison d87d8875f6
fix migration error caused by using a current create tables query mid migration 2018-06-08 13:28:49 -04:00
Victor Shyba 8598280654 fix base brm to prm typo 2018-06-08 11:16:21 -03:00
Jack Robison f0c732644a
Bump version 0.20.0rc10 --> 0.20.0rc11
Signed-off-by: Jack Robison <jackrobison@lbry.io>
2018-06-07 15:18:30 -04:00
Jack Robison 1d0106929c
move daemon test to the same folder as the others 2018-06-07 15:02:47 -04:00
Jack Robison a821647fbc
pylint and appveyor 2018-06-07 15:02:47 -04:00
Jack Robison 7f3ead67bf
disable forced bucket refresh during join 2018-06-07 15:02:47 -04:00
Jack Robison f3e848b2e2
work around upnp bug
this fixes an incorrectly raised mapping conflict error which the router raises when there is a redirect for the same internal port and a different lan address.
2018-06-07 15:02:47 -04:00
Jack Robison b0e4fc4faa
fix iterative find lockup 2018-06-07 15:02:47 -04:00
Jack Robison af096aee41
update test 2018-06-07 15:02:47 -04:00
Jack Robison ae631f05c3
fix teardown error 2018-06-07 15:02:47 -04:00
Jack Robison bc0da5e2d1
only use seeds in iterative bootstrap if no contacts are known yet 2018-06-07 15:02:47 -04:00
Jack Robison 16cb6d8657
remove Session._join_deferred 2018-06-07 15:02:47 -04:00
Jack Robison 44644673d7
add profiler 2018-06-07 15:02:47 -04:00
Jack Robison e8b402f998
remove deferredLock from iterativeFind
-fire the first iteration right away
2018-06-07 15:02:47 -04:00
Jack Robison adca5f5993
fix routing_table_get 2018-06-07 15:02:47 -04:00
Jack Robison 4fbaaac3f3
default new contacts to protocol version 0 2018-06-07 15:02:47 -04:00
Jack Robison db06191c33
reduce default concurrent announcers to 10
-lower rpc timeout to what it originally was
2018-06-07 15:02:47 -04:00
Jack Robison b0a741b1f4
fix hash announcer semaphore 2018-06-07 15:02:47 -04:00
Jack Robison 537df6c8ad
log socket errors 2018-06-07 15:02:47 -04:00
Jack Robison 42eb172638
refactor announceHaveBlob
-add cached `token` to Contact objects to minimize findValue requests
-remove self_store, always store to remote contacts even if we're the closest known node to the hash
-move the store call and error handling from announceHaveBlob to a smaller function of its own
2018-06-07 15:02:47 -04:00
Jack Robison 9a63db4ec6
add protocol version to the dht and migrate old arg format for store 2018-06-07 15:02:47 -04:00
Jack Robison 7d21cc5822
pylint and more tests 2018-06-07 15:02:47 -04:00
Jack Robison cce3c8c7b5
increase kademlia rpc timeout to 8 seconds 2018-06-07 15:02:47 -04:00
Jack Robison 0e80123615
use 12 minutes instead of 15 as delay in contact_is_good 2018-06-07 15:02:47 -04:00
Jack Robison 659632b66c
fix and update tests 2018-06-07 15:02:47 -04:00
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