Commit graph

485 commits

Author SHA1 Message Date
hackrush 6a8963d807
Added Authenticated API Client Integration Test 2018-08-24 11:42:08 -04:00
hackrush 083bf4f61d
aiohttp based Async Authenticated API Client 2018-08-24 11:42:08 -04:00
Victor Shyba 3b88d2465d
fixes and refactors from review 2018-08-24 11:42:08 -04:00
Victor Shyba 0841c90e6c
fix encoding on download 2018-08-24 11:42:06 -04:00
Victor Shyba a32a0c6401
fix peer_ping 2018-08-24 11:40:43 -04:00
Victor Shyba 95cb29d3c8
fix routing_table_get 2018-08-24 11:40:43 -04:00
Lex Berezhny a204f0d3e6
- replaced old lbryum function with struct.pack, per @BrannonKing review
- make copy of keys so we can modify the dictionary
2018-08-24 11:40:43 -04:00
Lex Berezhny 892758be65
account.from_dict() takes wallet as second arg 2018-08-24 11:40:43 -04:00
Lex Berezhny be248dc448
account command can now configure the default account 2018-08-24 11:40:43 -04:00
Lex Berezhny f79a49bbf4
added account management command 2018-08-24 11:40:43 -04:00
Lex Berezhny 6a5d88a0d5
new fund command and automatic account creation 2018-08-24 11:40:43 -04:00
hackrush 4165881d5f
Authenticated CLI works again 2018-08-24 11:40:43 -04:00
Lex Berezhny 8dc4e3be43
integration tests working again and daemon starts normally 2018-08-24 11:40:43 -04:00
Lex Berezhny 0dd6193eaa
FakeComponent was missing __lt__ comparison operator and couldnt be put in set() 2018-08-24 11:40:43 -04:00
Lex Berezhny da8e09846d
pylint fixed 2018-08-24 11:40:43 -04:00
Lex Berezhny 310fe4a42c
updated Headers component to use lbrynet.wallet 2018-08-24 11:40:43 -04:00
hackrush a7ef8889dd
Unified CLI, python 3(WIP) (#1330)
* Added new custom cli class using aiohttp
* Proper error handling in CLI based on RPC error codes(PoC)
* Auth API working
* UnitTests
2018-08-24 11:40:43 -04:00
Lex Berezhny f41229cb5b
tx.get_claim_id() -> txo.claim_id, claim update works now
channel_list encodes claim name and also added claim_id
fixed BlobManager foreign key error handling
2018-08-24 11:40:43 -04:00
Lex Berezhny fcd46629c4
refactored how transactions are created, fixed list addresses command 2018-08-24 11:40:43 -04:00
Lex Berezhny 47bb634035
abandon claims and chris45 epic adventure 2018-08-24 11:40:43 -04:00
Lex Berezhny 10b34d6b33
unnecessary list() added during py3 port
instead of recursive bytes2unicode use a proper JSONEncoder to conver bytes->unicode for json.dumps()
removing excessive isinstance(data, bytes) checks
py3: / -> // and list() around .items() that gets modified in loop
moved lbrynet.undecorated to where its actually used and hopefully we can delete it eventually
removed build/upload_assets.py, travis can do all this now
2018-08-24 11:40:43 -04:00
Lex Berezhny f061ca2b15
integration tests no longer mock Blob, BlobManager and Session 2018-08-24 11:40:43 -04:00
Lex Berezhny 91bf312e4d
fix for file open during publish 2018-08-24 11:40:43 -04:00
hackrush 1af6326b97
Fix account_balance's doc strings 2018-08-24 11:40:43 -04:00
Lex Berezhny 4da40e8d52
renamed build binary to lbrynet and other cleanup 2018-08-24 11:40:41 -04:00
Lex Berezhny d54d989c40
change stop command from daemon_stop to just stop lbrynet 2018-08-24 11:38:20 -04:00
Lex Berezhny 84d97ab323
+ account_max_gap command 2018-08-24 11:37:53 -04:00
Lex Berezhny aeaffd620e
simple cli implementation 2018-08-24 11:37:53 -04:00
hackrush 3f7091cbf2
Make curl work in py3 again 2018-08-24 11:37:53 -04:00
hackrush a95f791215
Make daemon work in py3 again 2018-08-24 11:37:53 -04:00
Lex Berezhny a937aff80f
pylint fixes 2018-08-24 11:37:53 -04:00
Lex Berezhny 5597d45aed
got integration tests to work again with rebased branch 2018-08-24 11:37:53 -04:00
hackrush 473d2eabfa
curl works with python3 now 2018-08-24 11:37:53 -04:00
Lex Berezhny 7335d012ef
replace miniupnpc with upnpclient
docker build with wine
2018-08-24 11:37:53 -04:00
Lex Berezhny d35d340613
fixing unit tests
fixing integration tests
skip running functional tests on travis until they are fixed
2018-08-24 11:37:53 -04:00
Lex Berezhny 693a3346d2
pylint fixes 2018-08-24 11:37:53 -04:00
Lex Berezhny 4ece422f48
No longer inheriting from object and added proper use of super(). 2018-08-24 11:37:53 -04:00
Lex Berezhny ba80c0e594
py2(iteritems, itervalues) -> py3(items, values) 2018-08-24 11:37:53 -04:00
Lex Berezhny 971252d5d1
undo simplejson commit 2018-08-24 11:37:53 -04:00
hackrush c01716a6c0
Using simplejson and fixed some encodes and decodes 2018-08-24 11:37:53 -04:00
hackrush 4bd0806e58
Fix metaclass not registering objects 2018-08-24 11:37:53 -04:00
Victor Shyba 78c560a3be
general incomplete porting of daemon booting ~> py3 2018-08-24 11:37:53 -04:00
Lex Berezhny a28c9d09c8
- fix and improvements related to the two balance command account_balance and wallet_balance
- working CommonWorkflowTests integration test
- pylint, unit and integration test fixes
- switch integration tests to use async/await
2018-08-24 11:37:53 -04:00
Victor Shyba 44bd0ae847
fix another forgotten claim id nbo conversion 2018-08-24 11:37:53 -04:00
Victor Shyba 5809ba093d
convert amount on channel_new 2018-08-24 11:37:53 -04:00
Lex Berezhny 17aee92dc9
wallet_balance --include-unconfirmed works now 2018-08-24 11:37:53 -04:00
Victor Shyba 75f57fc517
fix claim id handling during publish from the latest changes 2018-08-24 11:37:53 -04:00
Lex Berezhny f589410496
tests 2018-08-24 11:37:53 -04:00
Lex Berezhny adc92a2b52
fix for daemon.get_est_cost 2018-08-24 11:37:53 -04:00
Lex Berezhny 0442770c9d
pylint fixes 2018-08-24 11:37:53 -04:00
Lex Berezhny 076af7ef43
py3 compatibility updates 2018-08-24 11:37:53 -04:00
Lex Berezhny 43bef9447c
progress on publish command: py3 porting and integration tests 2018-08-24 11:37:53 -04:00
Lex Berezhny e175e43082
.decode() string for sqlite 2018-08-24 11:37:53 -04:00
Lex Berezhny cb9b320ed7
dropped make_claim in favor of wallet.claim_name 2018-08-24 11:37:53 -04:00
Lex Berezhny 1d906fb0c7
create_and_publish_stream fix 2018-08-24 11:37:53 -04:00
Lex Berezhny c544e26206
publish integration test works 2018-08-24 11:37:53 -04:00
Lex Berezhny 1eaac35a3e
claim_name does not take change_address anymore 2018-08-24 11:37:53 -04:00
Lex Berezhny cc7962fc2e
stringify address from sqlite 2018-08-24 11:37:53 -04:00
Lex Berezhny 688caf4453
+ save wallet after creating a channel 2018-08-24 11:37:53 -04:00
Lex Berezhny eeb5b3c139
publishing 2018-08-24 11:37:53 -04:00
Victor Shyba bdd271e78f
adds resolve 2018-08-24 11:37:53 -04:00
Lex Berezhny 70a7ca95fe
wip 2018-08-24 11:37:53 -04:00
Lex Berezhny 12ff7015cd
wallet tests and py3 compatibility 2018-08-24 11:37:53 -04:00
Lex Berezhny f2f212edba
switch component wallet to use the new wallet 2018-08-24 11:37:53 -04:00
Lex Berezhny 69446491b8
pylint and unit test fixes 2018-08-24 11:37:50 -04:00
Lex Berezhny d5beaa0937
jsonrpc_channel_new uses new wallet 2018-08-24 11:37:25 -04:00
Lex Berezhny cc970c499b
daemon/auth py3 conversion, this breaks the client for now 2018-08-24 11:37:25 -04:00
Lex Berezhny b3e9240aa8
wip, valuesforuris 2018-08-24 11:37:25 -04:00
Lex Berezhny 7d3daa9fe6
set the lbryschema BLOCKCHAIN_NAME global variable 2018-08-24 11:37:25 -04:00
Jack Robison a9774a293f
docs 2018-08-13 16:18:31 -04:00
Jack Robison ea481e6c5a
fix download_progress in blockchain_headers status
-use a 0-100 range for percentage regardless of how much we have to download (if we're resuming or starting fresh)
-prevent negative blocks or blocks_behind counts
2018-08-13 14:03:15 -04:00
Jack Robison 68f1dda7b0
initialize headers download progress 2018-08-12 22:05:07 -04:00
Jack Robison 153022a1a7
add is_locked to status 2018-08-12 22:04:48 -04:00
Lex Berezhny 1098ca0494 + convert float to decimal for wallet_send 2018-08-09 19:14:56 -04:00
Jack Robison dca4af942f
also try/except around upnp.discover
-catches edge case where miniupnpc fallback is used and a device is found but selectigd fails
2018-08-09 11:28:07 -04:00
Jack Robison 8b53140581
set downloading_headers to False after the download finishes or fails 2018-08-09 09:24:04 -04:00
Jack Robison 0501f52805
fix upnp edge case
-fixes https://github.com/lbryio/lbry/issues/1352
2018-08-09 08:42:51 -04:00
Jack Robison 65a02190dc
Merge remote-tracking branch 'origin/fix_1344' 2018-08-07 19:26:15 -04:00
Jack Robison 26e32472d5
fix upnp and peer port setup
-bump txupnp requirement
2018-08-07 19:04:54 -04:00
Victor Shyba 382226ff9a tells that an address is wrong earlier on publishing 2018-08-07 13:52:01 -03:00
Jack Robison 9511040d5a
fix upnp and peer port setup 2018-08-05 13:12:39 -04:00
Jack Robison 15161dd429
fix docstring 2018-08-03 13:31:51 -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 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
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 826d269e0e
Merge branch 'blobs_mirroring' 2018-07-25 12:24:37 -04:00
Victor Shyba 88c2051605 set download_mirror conf from components change 2018-07-25 12:23:15 -03:00
Lex Berezhny 32507d74f7 negate wallet lock check in components 2018-07-25 01:28:19 -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 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 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 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 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
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 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 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
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 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
hackrush 371b27b116 Fix approximations in bid during publish 2018-06-18 10:40:33 -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
Lex Berezhny e11a2e6f85
publish accepts decimal string for the bid value 2018-06-13 16:52:35 -04:00
Jack Robison adca5f5993
fix routing_table_get 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 a503a800ca
disable Cryptonator exchange rate feed 2018-06-07 15:02:47 -04: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 e3265714ee
Merge remote-tracking branch 'origin/1193' 2018-05-29 15:25:17 -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
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 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