Commit graph

173 commits

Author SHA1 Message Date
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
Victor Shyba
1cc7ce69ab set the peer search timeout as configured and raise it to 30s 2018-07-03 13:47:00 -03:00
jleute
0dbd15df7b Merge remote-tracking branch 'upstream/master' 2018-06-12 00:27:08 +02:00
jleute
5926b17871 Updated unittest for saving of server lists in the conf file 2018-06-12 00:05:49 +02:00
jleute
c411d8700b fixes #1109 2018-06-12 00:04:35 +02:00
Jack Robison
9219e5976e
update default lbryum servers 2018-06-09 11:26:26 -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
b3bf193188
Merge remote-tracking branch 'origin/treq_and_cryptography' 2018-05-11 09:22:28 -04: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
Jack Robison
129d2687b9
download headers from s3 when more than 10 chunks behind 2018-05-02 15:00:50 -04:00
Jack Robison
dff1fd3fe9
logging, raise default concurrent announcers 2018-03-28 18:50:24 -04:00
Jack Robison
43d3f7c087
add concurrent_announcers to config 2018-03-28 15:53:51 -04: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
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
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
b046a6578b
add blockchain_name and lbryum_servers to the adjustable settings 2018-01-04 21:30:41 -05:00
Jack Robison
ecb9909faa
fix node and installation id whitespace bugs 2018-01-04 21:25:55 -05:00
Antonio Quartulli
79054037a7
conf: make config file a CLI parameter
The config file might be stores in an alternate location for several
reasons (i.e. testing different configs or running multiple nodes on the
same host). Make the config file a CLI parameter so that it can be
specified when launching the lbrynet-daemon.

Related to #1039

Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
2017-12-30 04:11:06 +08:00
Antonio Quartulli
0d3493ef73
conf: add method to check if a setting has default value
Sometimes it might be helpful to check if a given config
setting is still the default or if it was touched by the user
in any way (e.g. env, config file, ...).

Add is_default() method to Config object to perform such check.

Signed-off-by: Antonio Quartulli <antonio@mandelbit.com>
2017-12-29 19:49:59 +08:00
Alex Grintsvayg
21d9b9bc71 minor fixes 2017-12-28 10:08:30 -05:00
Jack Robison
8c2d381aee Wallet encryption (#783)
* update known commands
* add wallet_unlock, block wallet startup on being unlocked
* add wallet_decrypt and wallet_encrypt
* wallet encryption unit tests
* added use_keyring configuration option in order to make keyring password storage optional
2017-12-17 07:00:12 +01:00
Kay Kurokawa
e4e60ebe9b
add auto_renew_claim_height_delta to configuration and auto renew after startup if necessary 2017-12-05 09:41:42 -05:00
Kay Kurokawa
9470b318b0 moved BLOB_SIZE in conf to MAX_BLOB_SIZE constant in blob.blob_file 2017-10-31 15:38:00 -04:00
Akinwale Ariwodola
0291482abb raised errors directly instead of wrapping with AssertionError 2017-10-11 07:59:30 +01:00
Akinwale Ariwodola
fb6545481b refactored one more assert 2017-10-09 20:41:08 +01:00
Akinwale Ariwodola
4f6f226b18 refactor asserts due to PYTHONOPTIMIZE flag 2017-10-09 20:20:58 +01:00
Kay Kurokawa
0fc116fbdb Change to reflector2 in conf 2017-09-25 13:18:07 -04:00
Kay Kurokawa
cc98cdf933
announce_head_blobs_only is True by default 2017-09-22 14:46:28 -04:00
Kay Kurokawa
66152a8f93 turn on head blob announce seek for clients 2017-09-11 11:34:26 -04:00
Kay Kurokawa
a31b6b192f Create an optional way of downloading by head blob first in ConnectionManager 2017-08-28 10:46:47 -04:00
Kay Kurokawa
0639bb9865 add support for should_announce feature 2017-08-28 10:43:57 -04:00
Jack Robison
5fc55fc482
Merge branch 'master' into android_platform_paths 2017-08-22 15:39:02 -04:00
Akinwale Ariwodola
6252184699 fix pylint error 2017-08-18 15:09:08 +01:00
Akinwale Ariwodola
70881dab6e added Android platform detection and androidhelpers module which will be used to determine base paths 2017-08-18 11:52:03 +01:00
Jack Robison
d1b7de1807
persist dht node id 2017-08-16 21:18:10 -04:00
Kay Kurokawa
9d92fba02e add ability to control re-reflects through config 2017-08-03 23:44:20 -04:00
hackrush
ecd602e5fb Added validation for currencies.
Now while setting currency via API/CLI it is checked that the user has
not entered any currency other that LBC, BTC or USD.

Fixes #778
2017-07-24 16:38:15 -04:00
Jack Robison
5e2e96b1ff
fix directories 2017-07-19 18:52:48 -04:00
Zestyr
bfa626c6e6 Update default directories
Fixes #574
2017-07-17 21:50:58 +02:00
Jack Robison
dfedb6cd01
update loggly token 2017-07-14 14:29:12 -04:00
hackrush
f7b6a09110 Updated max_key_fee_setting
Added an option to disable max key fee check.
Did the required docs changes.
2017-07-14 14:09:30 -04:00
Kay Kurokawa
2730aa9ad6 make sure window paths of directories are in string not unicode 2017-07-03 16:01:18 -04:00
Umpei Kay Kurokawa
4e42ae97ea Revert "Fix default directories (fixes #574)" 2017-07-03 11:09:59 -04:00
Zestyr
091c49115c Merge remote-tracking branch 'upstream/master' 2017-06-28 17:54:42 +02:00
hackrush
9743162cda Increased max_key_fee
The default max_key_fee value is increased to US$ 50.
Fixes #721
2017-06-27 21:48:42 +05:30
Zed
9caea54490 Merge branch 'master' into master 2017-06-23 02:45:12 +02:00
Jack Robison
bc34c22e58 update daemon settings and settings_set 2017-06-21 22:54:47 -04:00
Zestyr
6a1a91f8f1 Fix old legacy Windows location 2017-06-22 02:28:32 +02:00