Commit graph

1543 commits

Author SHA1 Message Date
Umpei Kay Kurokawa
dbd71c93e7 Merge pull request #458 from lbryio/connection_manager_tests
Connection Manager tests and upgrades
2017-02-13 13:55:33 -05:00
Jack Robison
d137528f67 convert Daemon._delete_lbry_file to inlineCallbacks 2017-02-13 13:07:27 -05:00
Jack Robison
e292abceee convert EncryptedFileManager to use inlineCallbacks 2017-02-13 13:07:27 -05:00
Jack Robison
8de6bd7c7a convert EncryptedFileDownloader to inlineCallbacks 2017-02-13 13:07:27 -05:00
jobevers
bb9b221cf6 convert publish_sd_blob to inlineCallback 2017-02-13 13:07:27 -05:00
Jack Robison
5a1bab2eaa refactor Publisher and jsonrpc_publish
-add get_read_handle to file_utils

-don’t leave read handle hanging after creating lbry file

-get rid of threaded weirdness

-remove reflector functionality from Publisher

-fix updating with an existing stream

-reflect new stream in thread after broadcasting name claim
2017-02-13 13:07:27 -05:00
Kay Kurokawa
4f87e87d3e Adding connection manager tests, and modifying connection manager to be testeable, fix bug where failed connection was not marked as down 2017-02-13 12:17:27 -05:00
Alex Grintsvayg
c7106dfc97 reduce loudness of reflector message 2017-02-13 12:12:32 -05:00
jobevers
71123c0de1 add warning log on EWOULDBLOCK 2017-02-11 13:04:36 -06:00
Alex Grintsvayg
35b2e56bd4 silence "[Errno 11] Resource temporarily unavailable" error 2017-02-11 13:04:35 -06:00
jobevers
41abd0a171 Bump version: 0.8.2 → 0.8.3rc0 2017-02-10 14:16:29 -06:00
Jack Robison
630d0bf5be convert Wallet.claim_name to use inlineCallbacks 2017-02-09 10:13:41 -05:00
Jack Robison
19fe101d73 fix claim update
dict.update does not return the dict, so this can’t be lambda’d
2017-02-09 10:11:46 -05:00
Alex Liebowitz
0e8e489ad6 Fix how the bug report code accesses Slack API key setting
It was trying to access this setting as an attribute, which doesn't
work anymore. (Not sure if this is an API change in conf.settings or
just a bug.)
2017-02-08 23:05:32 -05:00
Jack Robison
e2050b4fc1 fix get_count_for_stream returning [(count, )] instead an int 2017-02-08 20:58:45 -05:00
Jack Robison
7e2456fa69 convert _setup, _check_stream_is_managed, _check_stream_info_manager, and _start_lbry_files to inlineCallbacks
remove unused MissingLBRYFile exception
2017-02-08 19:34:54 -05:00
Jack Robison
bfc02dd3e5 fix streams in stream_info_manager not being loaded by lbry_file_manager 2017-02-08 17:02:02 -05:00
Jack Robison
777419b4a9 log traceback on failed blob upload
-move status message on connectionDone to client, indicate if blobs
were sent or not (and how many blobs reflector still needs, if any)

-only try uploading failed blob once after first failure, to prevent
indefinite retries
2017-02-08 16:18:34 -05:00
Jack Robison
f2ddc9bd98 fix recursion depth bug upon failed blob 2017-02-08 14:28:30 -05:00
Jack Robison
d053db8dfd add uri to stream reflector for better logging 2017-02-08 14:28:16 -05:00
Jack Robison
a58a81a841 stopProducing in reflector client file_sender when uploading is done
this fixes exceptions.ValueError: I/O operation on closed file in
twisted.protocols.basic.ResumeProducing
2017-02-08 14:09:03 -05:00
Jack Robison
f614a13db4 update documentation 2017-02-06 15:56:00 -05:00
Jack Robison
6fae07d29e reflector v2
-add {‘sd_blob_hash’: …, ‘sd_blob_size ‘: …} query type with
{‘send_sd_blob’: True/False, ‘needed_blobs’: []} response

this allows the reflector client to know how much of a stream reflector
already has covered, as to minimize the number of subsequent requests
and prevent streams from being partially reflected

-remove empty {} request
2017-02-06 15:55:46 -05:00
Jack Robison
2126f69c93 use only DBEncryptedFileMetadataManager in Daemon
-fix Daemon.stream_info_manager and Daemon.lbry_file_metadata_manager
being different
2017-02-06 13:15:50 -05:00
Jack Robison
6f0581104a Merge pull request #408 from lbryio/non-blocking-update-check
non-blocking version check
2017-02-05 15:44:29 -05:00
Jack Robison
06be60e3a3 Merge pull request #406 from lbryio/installation-id
add installation id, re-initialize lbryid on each start
2017-02-02 11:37:31 -05:00
Jack Robison
45a6228b58 fix threaded lbryum check 2017-02-02 11:31:31 -05:00
jobevers
773cbe3ace Bump version: 0.8.1 → 0.8.2 2017-02-02 07:43:28 -08:00
Jack Robison
c6648ff6bc add installation id, re-initialize lbryid on each start 2017-02-02 10:23:17 -05:00
Jack Robison
f737b3aaf7 non-blocking version check
this fixes a bug where if github is down the app will fail to start.

-check for new version every 30 min instead of every 12 hours

-check connection problems every 30 seconds instead of every second
2017-02-02 10:18:09 -05:00
jobevers
8e349f17c1 fixes for named parameter changes on api 2017-02-01 20:47:53 -08:00
jobevers
4ab5ace668 Bump version: 0.8.1rc0 → 0.8.1 2017-02-01 15:57:05 -08:00
Job Evers‐Meltzer
2c137a99d1 Merge pull request #453 from lbryio/add-details-to-error-event
Add details to error event
2017-02-01 14:23:26 -08:00
Job Evers‐Meltzer
d1ed8a769a Merge pull request #450 from lbryio/block-too-deep
Fix #449: Block to deep error
2017-02-01 13:45:12 -08:00
jobevers
4bb3e2a154 remove is_lagging wallet attribute 2017-02-01 12:13:43 -08:00
Kay Kurokawa
a5e8c561e4 Revert "adding connection manager tests, and modifying connection manager to be testeable"
This reverts commit 7b6e233d22, as it was an accidental push to master
2017-02-01 11:59:36 -05:00
Kay Kurokawa
7b6e233d22 adding connection manager tests, and modifying connection manager to be testeable 2017-02-01 11:52:16 -05:00
Job Evers‐Meltzer
ac8a63bc33 Merge pull request #455 from lbryio/better-defaults
Change default behavior with daemon cmdline args
2017-01-31 10:13:18 -08:00
Alex Grintsvayg
46cb6b204a nicer error output 2017-01-31 10:38:07 -05:00
jobevers
8fc6feb316 log to console by default 2017-01-30 12:08:32 -08:00
jobevers
7377158631 change no-launch to launchui 2017-01-30 12:04:07 -08:00
Alex Grintsvayg
86ba7ffd5c explicitly list jsonrpc params in function signature. add jsonrpc tests 2017-01-30 09:58:28 -08:00
jobevers
ed227a239e Fixes #449
What was happening was the wallet claimed to be caught up before it
actually was and so the wallet’s local_height was still the value from
when lbry was last run, frequently more than 20 or 50 blocks
behind. _get_value_for_name uses the block at local_height as the
basis for the proof.  If _get_value_for_name is called during that
time between when the wallet claims to be caught up and it actually
is, the “Block too deep error” happens.  And since the discover page
of the UI does name resolution right away, the error basically happens
anytime somebody starts the app after not using it for a few hours.

This changes the startup behaviour of the wallet to
- use the `update` callback provided by lbryum
- check that local_height and network_height match before declaring
  that the wallet has caught up

For reference, the error is raised here:
1b896ae75b/src/rpc/claimtrie.cpp (L688)
2017-01-30 09:32:04 -08:00
jobevers
7360015fa4 small refactor 2017-01-30 09:32:04 -08:00
jobevers
04ee2f786d remove backslash line continuation 2017-01-30 09:32:04 -08:00
jobevers
43451c485f change alerts to logs 2017-01-30 09:32:04 -08:00
jobevers
565f26bdad switch error event to use log record and add more details 2017-01-30 09:30:46 -08:00
jobevers
b7478ba817 replace send_error with log.error 2017-01-30 09:30:46 -08:00
jobevers
1c92b5d2ea retry startup 2017-01-30 09:25:44 -08:00
Job Evers‐Meltzer
139af85b52 Merge pull request #445 from lbryio/retry-get
Retry the get call three times before failing
2017-01-27 10:08:25 -06:00
Umpei Kay Kurokawa
893fe8823e Merge pull request #409 from lbryio/fix_wallet_race_condition
Fix wallet balance interfaces
2017-01-26 15:12:54 -05:00
jobevers
3dc1a523cf retry the get call three times before failing 2017-01-26 14:09:54 -06:00
Kay Kurokawa
90438ddf9f removing str() from logging functions 2017-01-26 12:14:33 -05:00
Kay Kurokawa
08e336e476 adding better debug logs for ConnectionManager and ClientProtocol 2017-01-26 12:09:55 -05:00
Kay Kurokawa
0e864f5df1 Update interface for wallet balance 2017-01-26 11:41:27 -05:00
Jack Robison
854dea797e Bump version: 0.8.0 → 0.8.1rc0 2017-01-25 17:49:52 -05:00
Alex Grintsvayg
c88631d910 fix long lines 2017-01-25 17:00:21 -05:00
Alex Grintsvayg
897fba35df fix formatting, reenable pylint 2017-01-25 15:33:46 -05:00
Jack Robison
74a872d763 fix pylint errors 2017-01-25 13:10:38 -05:00
Jack Robison
3b65f5962c disable verbose twisted logs 2017-01-25 13:04:02 -05:00
Jack Robison
5fa2dfeca7 try reflecting all the blobs in a stream
previously only the sd blob was reflected, if the server indicated it
needed the blob then the rest of the stream would follow. this allowed
for many streams to be partially reflected, where for whatever reason
the connection was broken before the full upload was completed. this
meant that on a subsequent run, the client would falsely believe
reflector had the whole stream when it actually only had some portion
of it.

this solution isn’t ideal, I’m most of the way done with a better one,
but this can be deployed now.
2017-01-25 13:03:48 -05:00
Job Evers-Meltzer
bb9d3bff74 Bump version: 0.8.0rc2 → 0.8.0 2017-01-24 11:56:36 -05:00
Job Evers‐Meltzer
ec873129d5 Merge pull request #434 from lbryio/ensure-tmp-blobs-deleted
Bug fix: delete empty blobs
2017-01-24 11:55:13 -05:00
Job Evers‐Meltzer
a90f413f94 Merge pull request #438 from lbryio/warn_large_wallet
Add warning for large wallet sizes
2017-01-24 11:54:53 -05:00
Kay Kurokawa
ee84253b90 add warning for large wallet sizes 2017-01-23 18:55:20 -05:00
Job Evers‐Meltzer
06e45ee32a Merge pull request #410 from lbryio/reveal-open-refactor
Add open() API method and refactor/update reveal() API method (WIP)
2017-01-23 16:44:31 -05:00
Job Evers-Meltzer
7696f30009 add debug log to hash announcing 2017-01-21 22:48:16 -06:00
Job Evers-Meltzer
c211d87164 Bug fix: delete empty blobs
When creating a CryptStream, the last blob is always empty. Previously, this
blob wouldn't be deleted and would instead just stick around in the blobfiles
directory.
2017-01-21 17:27:19 -06:00
Alex Liebowitz
d3a63c38fc Fix pylint errors 2017-01-20 22:36:31 -05:00
Alex Liebowitz
08aa024499 Use inlineCallbacks for jsonrpc_open() and jsonrpc_reveal() 2017-01-20 22:29:27 -05:00
Alex Liebowitz
5db1a4d328 Refactor and update open() and reveal() RPC methods
- Both methods now take an SD hash instead of a path (more logical API
   and avoids potential security problems)
 - Moves the core logic into functions on a new module,
   lbry.core.file_utils
 - Adds reveal support for Windows
2017-01-20 22:29:27 -05:00
Alex Liebowitz
e95adecd41 Rename jsonrpc_open_file to jsonrpc_open 2017-01-20 22:29:27 -05:00
Alex Liebowitz
8b68a752ed Add file_utils module 2017-01-20 22:29:27 -05:00
Alex Liebowitz
51a5510b38 Add open_file() RPC method 2017-01-20 22:29:27 -05:00
Job Evers-Meltzer
2c9c0da501 get_blob bug fix 2017-01-20 17:41:08 -06:00
Umpei Kay Kurokawa
60195ed6d4 Merge pull request #427 from lbryio/fix_new_address
Prevent excessive generation of new addresses
2017-01-20 17:14:21 -05:00
Job Evers-Meltzer
3e774fc158 missed another verified time check 2017-01-20 18:47:53 +00:00
Alex Grintsvayg
c62ee6bb0c fix loading settings from env 2017-01-20 13:38:49 -05:00
Alex Grintsvayg
3aea476014 ignore invalid config file keys 2017-01-20 12:39:59 -05:00
Job Evers-Meltzer
8c5f7a9849 fix missing arg in get_blob 2017-01-20 11:35:34 -06:00
Job Evers‐Meltzer
6c571b5227 Blob verification fixes (#428)
* Move the blob verification to the actual Blob object
 * remove the check on verification time
 * remove get_blob_length from BlobManager

Removed because I'm not sure what checking verification time against ctime gets us, except some protection against an accidental modification of the blob.
2017-01-20 10:54:36 -06:00
Kay Kurokawa
8628b127f7 do not create new addresses in lbryum, get unused ones 2017-01-18 20:48:23 -05:00
Job Evers-Meltzer
851ab7ba28 Safegaurd against there not being a wallet on status call
Also switch status call to an inlineCallback
2017-01-18 09:36:01 -06:00
Job Evers-Meltzer
7bc1bc487f Bump version: 0.8.0rc1 → 0.8.0rc2 2017-01-17 22:08:34 -06:00
Job Evers‐Meltzer
05d50c1821 Merge pull request #420 from lbryio/fix-watch-resource
fix resource needed for watch
2017-01-17 22:07:06 -06:00
Job Evers-Meltzer
13bfcb3561 fix missing id_ parameter to _render_error 2017-01-17 20:01:28 -06:00
Job Evers-Meltzer
1a850b0256 log exception on callback failure 2017-01-17 20:01:04 -06:00
Job Evers-Meltzer
78b0f923f4 fix resource needed for watch 2017-01-17 19:26:09 -06:00
Alex Grin
17d9c0ab97 Merge pull request #417 from lbryio/refactor_settings
refactor conf.settings
2017-01-17 14:53:01 -05:00
Alex Grintsvayg
23872c77e9 fix long lines 2017-01-17 12:31:48 -05:00
Alex Grintsvayg
cac8267e85 updates, more refactoring for greater clarity 2017-01-17 12:29:09 -05:00
Alex Grintsvayg
267c6cbaca refactor conf.settings 2017-01-16 22:32:54 -05:00
Kay Kurokawa
03b214a9d2 convert claim_out['fee'] to float 2017-01-16 15:36:37 -05:00
Job Evers-Meltzer
8a026071eb Bump version: 0.8.0rc0 → 0.8.0rc1 2017-01-16 12:01:35 -05:00
Job Evers-Meltzer
8a338b37b2 Bump version: 0.7.12 → 0.8.0rc0 2017-01-13 14:15:01 -06:00
Job Evers‐Meltzer
2b2fa29db5 Merge pull request #395 from lbryio/fix_publish_output
Fix Daemon RPC command publish output
2017-01-13 14:02:23 -06:00
Job Evers‐Meltzer
ddcfa7f97c Merge pull request #383 from lbryio/logging-improvements
Logging Improvements
2017-01-13 13:42:35 -06:00
Job Evers‐Meltzer
ddf24de16d Merge pull request #407 from lbryio/handle-closed-api-requests-rebase
handle dropped api requests
2017-01-13 13:33:42 -06:00
Alex Grintsvayg
8277df1034 minor nits 2017-01-13 12:26:37 -05:00
Jack Robison
e03bba0b62 handle dropped api requests 2017-01-13 10:41:59 -06:00
Job Evers-Meltzer
e61260a263 merge with change stop to be an inlineCallback 2017-01-13 08:24:07 -06:00
Job Evers-Meltzer
a9261b2032 change stop to be an inlineCallback 2017-01-13 08:24:07 -06:00
Job Evers-Meltzer
9366a6e561 bug fix: reset blob_requester between start/stop 2017-01-13 08:24:06 -06:00
Job Evers-Meltzer
488c04543d add TODO comment 2017-01-13 08:24:06 -06:00
Job Evers-Meltzer
cb2bb6ee6b bug fix: properly stop ConnectionManager
It is possible (likely) that a manage call is in progress when
`stop` is called. When that happens, _manage will continue to
run, and schedule another call - and the manager won't actually stop,
and will likely cause an error as other components have been torn down.

This fix adds a deferred that gets created when a manage call starts
and is fired when its done.  At this points its safe to start the
stopping process.  Also add a check to not schedule another manage
call if we're stopped

This fixes https://app.asana.com/0/142330900434470/239832897034382
2017-01-13 08:24:06 -06:00
Job Evers-Meltzer
0bb62515a8 reorder functions to match call order 2017-01-13 08:24:06 -06:00
Job Evers-Meltzer
f535d96929 switch stop to inlineCallback 2017-01-13 08:24:06 -06:00
Job Evers-Meltzer
15c5075d38 refactor closing peers 2017-01-13 08:24:06 -06:00
Job Evers-Meltzer
2449604844 fixup: bug fix for stopping downloads 2017-01-13 08:24:06 -06:00
Job Evers-Meltzer
6035a84675 bug fix for stopping downloads
deferredlist returns a tuple of (success, result) and the previous
code was looking at the entire tuple not the success values.
2017-01-13 08:24:05 -06:00
Job Evers-Meltzer
1151019186 Improve downloader error handling
Instead of having an error cause a timeout, send
the error directly to the callback
2017-01-13 08:24:05 -06:00
Job Evers-Meltzer
8075ced1af bug fix for file_seed
cannot return a deferred in inlineCallbacks, it must be a value
2017-01-13 08:23:52 -06:00
Job Evers-Meltzer
1b2c46e224 make _download_manager private 2017-01-13 08:19:23 -06:00
Job Evers-Meltzer
20f113d3da bug fix: jsonrpc methods no longer have a 'result' key 2017-01-12 09:55:38 -06:00
Job Evers‐Meltzer
61702ba1e4 Merge pull request #301 from lbryio/query-available-blobs
Query available blobs and Upload to Lighthouse Scripts
2017-01-12 08:42:08 -06:00
Alex Grintsvayg
d06211015d api doc generator 2017-01-11 17:30:16 -05:00
Alex Grintsvayg
86aa8e1de0 updates based on job's comments 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
495a48add1 appveyor is a line-length nazi 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
a6457d2c0a detect authentication error and warn accordingly 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
5c429e15bd remove authjsonrpc subhandlers. we dont use them 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
05725e0dc9 rpc works with authentication 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
53acb2d9cd restore one deprecated method (for now) 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
f050337dbc incorporate job's changes 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
6d7b09a3aa remove return codes that are not being used 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
dd87aa3ce6 make sure deprecated methods still return results 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
b602b09ca3 better cli help 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
628defa891 remove extraneous ellipses in messages 2017-01-11 15:39:28 -05:00
Alex Grintsvayg
962edb8e4c rename api endpoints 2017-01-11 15:39:28 -05:00
Job Evers-Meltzer
5dbf9034ec Add scripts related to querying / downloading sd blobs 2017-01-11 12:05:34 -06:00
Umpei Kay Kurokawa
a67aab0797 Merge pull request #393 from lbryio/fix_github_version_request
Fix obtaining version from github
2017-01-10 20:42:08 -05:00
Kay Kurokawa
52500bfbf5 use latest release for getting lbryum version, add a timeout when requesting lbrynet/lbryum version 2017-01-10 12:55:47 -05:00
Job Evers‐Meltzer
c393bd97e8 Merge pull request #388 from lbryio/hash-announce
ensure hash_announcer exists before announcing
2017-01-09 15:23:53 -06:00
Job Evers‐Meltzer
d32bb9270a Merge pull request #376 from lbryio/add-id
add id field to jsonrpc response
2017-01-09 15:23:24 -06:00
Kay Kurokawa
9e7b69f4a0 fix publish output 2017-01-09 14:35:29 -05:00
Job Evers-Meltzer
68887d145f cleanup whitespace for increased readability 2017-01-06 08:04:18 -06:00
Job Evers-Meltzer
f37808859f ensure hash_announcer exists before announcing 2017-01-06 08:00:22 -06:00
Job Evers
abc122f77b Don't send log messages to loggly in dev mode 2017-01-03 22:17:44 -06:00
Job Evers
0ababb7f3b Route twisted logging messages to the python stdlib logger 2017-01-03 22:16:57 -06:00
Job Evers-Meltzer
30af8a0e20 Bump version: 0.7.12rc4 → 0.7.12 2017-01-03 21:09:25 -06:00
Job Evers
c2fc15160f Fix watch
I changed the _download_name return type without realizing that
it was also used by the watch endpoint.  This switches the endpoint
to go through get so that watches can be tracked just like downloads
2017-01-03 18:08:31 -06:00
Job Evers-Meltzer
40d4f5a292 Bump version: 0.7.12rc3 → 0.7.12rc4 2017-01-03 15:29:20 -06:00
Job Evers‐Meltzer
38e6b4e6c6 Merge pull request #379 from lbryio/open-ui-asap
open the ui as soon as possible
2017-01-03 15:28:50 -06:00
Jack
3541625825 move launch into own function 2017-01-03 15:51:42 -05:00
Job Evers‐Meltzer
f8f83fccf1 Merge pull request #375 from lbryio/fix-stop-errors
Fix stop errors
2017-01-03 14:13:24 -06:00
Jack
5f8a06443c open the ui as soon as UIManager finishes setting itself up 2017-01-03 11:44:29 -05:00
Job Evers
4e0194d576 add id field to jsonrpc response 2017-01-02 20:12:37 -06:00
Job Evers
16fc416d88 more informative name error 2017-01-02 19:47:34 -06:00
Job Evers
6faee910de Raise exception if lbry_file can't be found 2017-01-02 19:46:40 -06:00
Job Evers
f7308beee9 upgrade txJson-RCP to 0.5
The older version we were running didn't support jsonrpc v2 for
error codes, which both the command line client and ui client
were expecting.
2017-01-02 19:15:25 -06:00
Job Evers-Meltzer
5233dc303e Bump version: 0.7.12rc2 → 0.7.12rc3 2017-01-02 17:18:46 -06:00
Job Evers‐Meltzer
3d0913ca94 Merge pull request #373 from lbryio/bundled-version
Set ui_version for Bundled UI
2017-01-02 17:17:31 -06:00
Job Evers‐Meltzer
c37bb0d1ed Merge pull request #372 from lbryio/fix-stop
fix the stop script
2017-01-02 16:50:34 -06:00
Job Evers-Meltzer
a4a9a2b0b0 fix the stop script 2017-01-02 16:40:50 -06:00
Job Evers-Meltzer
9e320921a9 Bump version: 0.7.12rc1 → 0.7.12rc2 2017-01-02 16:12:35 -06:00
Jack
2cf08fda2d use urllib for loggly url formatting 2017-01-02 16:09:28 -05:00
Jack
c2c7d2b327 send bug reports to slack 2017-01-02 14:52:24 -05:00
Job Evers‐Meltzer
585f802a91 Merge pull request #370 from lbryio/fail-wallet
Stop eating wallet connection error
2017-01-02 12:02:35 -06:00
Job Evers-Meltzer
26cf04e0c1 refactor requirements parsing 2017-01-02 12:01:55 -06:00
Job Evers-Meltzer
3bb8f4ac21 set ui_version for bundled ui 2017-01-02 12:01:55 -06:00
Job Evers-Meltzer
a5c25ff887 Stop eating wallet connection error 2016-12-30 22:34:08 -06:00
Job Evers-Meltzer
e823bb2012 Bug fix in auth.server
Fixes a mistake in fa8190356a,
where an usage of _log_and_render_error was overlooked
2016-12-30 16:48:44 -06:00
Job Evers-Meltzer
eec25791a5 fix lbryid in settings dict
The lbryid is stored as raw bytes, need to hexlify
it before sending it over to the client
2016-12-30 16:47:50 -06:00
Job Evers-Meltzer
18a47a048a Bump version: 0.7.12rc0 → 0.7.12rc1 2016-12-30 15:42:13 -06:00
Job Evers‐Meltzer
6936dbd588 Merge pull request #369 from lbryio/track-errors
track errors in analytics
2016-12-30 15:39:41 -06:00
Job Evers‐Meltzer
621530b3b8 Merge pull request #367 from lbryio/analytics-on-get
Analytics on get
2016-12-30 15:39:06 -06:00
Job Evers-Meltzer
123fda1844 track errors in analytics 2016-12-30 15:09:34 -06:00
Job Evers-Meltzer
1299c23bcc fix cli 2016-12-30 15:07:24 -06:00
Job Evers-Meltzer
1747f53276 Remove _set_events
Function was removed in 101985ca11,
but wasn't removed from setup()
2016-12-30 14:42:03 -06:00
Job Evers-Meltzer
669a567545 add id to link download events 2016-12-30 13:35:16 -06:00
Job Evers-Meltzer
6bdc9069c9 on get, first check if we already have the name 2016-12-30 13:35:16 -06:00
Job Evers-Meltzer
ad1e2650e3 add events for downloading stages 2016-12-30 13:31:20 -06:00
Job Evers-Meltzer
1bf1b7624c more inlineCallback cleanup 2016-12-30 13:28:38 -06:00
Job Evers-Meltzer
0b53fde352 refactor connectionmanager to use inlineCallbacks 2016-12-30 13:28:34 -06:00
Job Evers-Meltzer
4eb10b56c1 small changes 2016-12-30 13:27:17 -06:00
Job Evers-Meltzer
227323b7a4 convert more to inlineCallbacks 2016-12-30 13:27:16 -06:00
Job Evers-Meltzer
1256beea96 remove blob_requester from DownloadManager 2016-12-30 13:27:16 -06:00
Job Evers-Meltzer
01cc4f28e0 Refactor jsonrpc_get
Convert some of the calls to inlineCallbacks, which
allowed the code to be cleaned up and made more clear
2016-12-30 13:27:12 -06:00
Job Evers-Meltzer
689ac431d3 bug fix in log.fail()
The value of the callback needs to be returned.  In particular,
this allows the error to be passed along.
2016-12-30 13:22:06 -06:00
Job Evers-Meltzer
ccfb1f3921 refactor: name private/public variables 2016-12-30 13:22:06 -06:00
Job Evers-Meltzer
5eecae8889 record server startup event as part of start_server 2016-12-30 13:05:19 -06:00
Job Evers-Meltzer
5aa10031bc Move log_support import earlier
Since log_support configures the logging class, it needs
to be early in the initialization process.
2016-12-30 13:05:19 -06:00
Job Evers-Meltzer
52010ade41 add docstring 2016-12-30 13:05:19 -06:00
Job Evers-Meltzer
101985ca11 Remove analytics setup code from daemon
Now that lbryid and session_id are available at startup
we don't need to reconfigure the analytics manager
inside the daemon
2016-12-30 13:05:19 -06:00
Job Evers-Meltzer
8f61fb3fc4 Initialize settings, along with lbryid and session_id on startup 2016-12-30 13:05:19 -06:00
Job Evers-Meltzer
39b2e44492 Replace settings with conf.settings
In the next commit I change conf.settings to be initialized
at runtime instead of load time and so any import of
`from lbrynet.conf import settings` will be and stay None if
it happens before the initialization.
2016-12-30 13:05:18 -06:00
Job Evers-Meltzer
26bc6d05a0 Consistently use lbryid over lbry_id variable name 2016-12-30 12:40:36 -06:00
Job Evers‐Meltzer
47f71fd363 Merge pull request #360 from lbryio/store-offer
Only store the offer explicitly when its sent
2016-12-30 12:15:06 -06:00
Job Evers‐Meltzer
4574e3317c Merge pull request #363 from lbryio/wallet-storage
Wallet storage
2016-12-30 11:41:38 -06:00
Job Evers‐Meltzer
b59c098d58 Merge pull request #364 from lbryio/fix_serverprotocol
Fix bug in server protocol
2016-12-30 11:28:08 -06:00
Alex Liebowitz
da0b4e9a1a Fix typo in set_settings API method 2016-12-30 05:00:28 -05:00
Kay Kurokawa
7d5dd1ff51 fix bug in ServerProtocol 2016-12-28 14:34:38 -05:00
Job Evers-Meltzer
2c7fc3fb46 switch startup sequence to use inlineCallbacks
This cleans up the process, makes it more readable,
and better surfaces errors.
2016-12-28 11:21:10 -06:00
Job Evers-Meltzer
fc24d9b5aa pull out metadata storage from the wallet 2016-12-28 11:18:55 -06:00
Kay Kurokawa
da366495b0 fixing get_value_for_name bug 2016-12-28 10:37:53 -05:00
Umpei Kay Kurokawa
552ed77882 Merge pull request #358 from lbryio/fix_wallet_init_3
Fix wallet initialization
2016-12-22 12:12:27 -05:00
Jack Robison
aa3353ae49 Merge pull request #345 from lbryio/better-dht-shutdown
Better dht shutdown.
2016-12-21 17:15:17 -05:00
Job Evers-Meltzer
f7864e8cb7 Only store the offer explicitly when its sent
Ran into a situation where I was recieving an offer response without
something in protocol_offers. I think this was because
get_and_set_rate doesn't always populate that dictionary.

Worried that there still might be issues if the connection is
unreliable: if a response comes in twice it will error or
if a second offer is made without a response to the first
there will be an error.
2016-12-20 10:37:42 -08:00
Kay Kurokawa
1690e71ad1 setup Commands class on run, instead of on initialization 2016-12-19 19:15:59 -05:00
Kay Kurokawa
7d02e7d370 changing wallet initialization order 2016-12-19 19:15:50 -05:00
Kay Kurokawa
10810226ff Fixing bug in publisher 2016-12-19 18:41:35 -05:00
Jack Robison
c0f22decd7 Merge pull request #347 from lbryio/log-error-on-lbry-files
Log failure when attempting to get_lbry_files
2016-12-19 16:22:37 -05:00
Jack
618d0ebd5b newline 2016-12-19 13:40:33 -05:00
Jack
f301741807 re-use lbryid 2016-12-19 13:27:45 -05:00
Jack
0044d6cf75 BlobAvailabilityTracker.sample bug, remove whitespace 2016-12-17 20:05:27 -05:00
Jack
5a76a03cb6 remove unqlite requirement
-conditionally import PTCWallet (needed for testing, requires unqlite)

-install unqlite on travis and appveyor
2016-12-17 20:03:35 -05:00
Jack
09846413bd remove Settings.py
remove old settings class, which was only used for the lbryid and
required unqlite.

this allows the daemon startup to be simplified, it previously relied
on Settings in a few places. lbryid had been stored in the old
settings, this initializes it at startup.
2016-12-17 20:01:06 -05:00
Job Evers-Meltzer
a8cb255d24 Bump version: 0.7.11rc0 → 0.7.12rc0 2016-12-16 21:45:02 -06:00
Job Evers-Meltzer
6172924021 Bump version: 0.7.8 → 0.7.11rc0 2016-12-16 20:58:24 -06:00
Job Evers-Meltzer
d5d0d0e31c change error log on resolve-name to info 2016-12-16 19:51:10 -06:00
Job Evers-Meltzer
53df361d23 Log failure when attempting to get_lbry_files
I had an old version of lbryum installed and so no
names were coming back. But the daemon was failing
silently. This at least logs the error.
2016-12-16 00:32:06 -06:00
Job Evers-Meltzer
8fe15f507b Better dht shutdown.
The old code relied on the timing of DelayedCalls
to see what had been called or not, but unfortunately
we don't have a real-time OS so the timing on DelayedCalls
can only be approximate. Changed to explicitly keep
track of which calls had been made.

This simplifies the shutdown logic drastically, and I believe
we can take out the reactor.iterate() now
2016-12-15 23:44:35 -06:00
Job Evers‐Meltzer
3dde7af576 Merge pull request #339 from lbryio/all-prs
All The PRs
2016-12-15 19:42:35 -06:00
Job Evers-Meltzer
7af6e9e0dd Improve BlobAvailabilityTracker performance
For daemons with a lot of blobs, getting mean availabity
will be slow. Samples the blobs in an attempt at getting
better performance.
2016-12-15 19:03:37 -06:00
Job Evers-Meltzer
56d394fb5f Add timing to hash announcements
This could potentially be a performance issue
on reflector or any daemon with a large number of blobs.
2016-12-15 18:58:16 -06:00
Job Evers-Meltzer
3585d861ff Add TRACE level logging 2016-12-15 18:58:16 -06:00
Job Evers-Meltzer
f181af8547 Cleanup code in BlobManager 2016-12-15 18:58:16 -06:00
Job Evers-Meltzer
84baa5e065 dht: refactor _msgTimeout 2016-12-15 18:58:16 -06:00
Job Evers-Meltzer
781b915717 remove unused check_consistency function 2016-12-15 18:58:16 -06:00
Job Evers-Meltzer
fa29c92760 Add setting to disable reuploading to reflector 2016-12-15 18:58:16 -06:00
Job Evers-Meltzer
fec917b9c1 rename platform to system_info 2016-12-15 18:58:16 -06:00
Job Evers-Meltzer
4f3b5cd802 Better logging on DHT errors
Timeout errors are common on the dht so log those
at debug, but other errors need to (potentially) recieve
more attention
2016-12-15 18:58:16 -06:00
Job Evers-Meltzer
250831a86a remove unused distance function from routingtable 2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
323bccb0ae another distance optimization 2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
0084d4684f Add distance optimization 2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
740fad5cbe Refactor dht.node.iterativeFind
Move nested functions into a helper class.
Add new, smaller functions to increase readability
2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
fa8190356a replace log_support.failure calls 2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
4ca33505b5 logging: add kwargs to fail() call 2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
20b6b22334 Add callback functionality to log.fail
This enables the common pattern of being able to log a failure and
then do something.
2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
b8c91c61bb Make a new logger with a fail method that is useful for errbacks.
Extracting useful tracebacks and line numbers from failures
withing twisted's deferred can be a pain. Hopefully this is a step
in the right direction.
2016-12-15 18:58:15 -06:00
Job Evers-Meltzer
c30ea04959 Remove commented code
This is the result of running eradicate (https://github.com/myint/eradicate)
on the code and double-checking the changes.
2016-12-15 18:58:06 -06:00
Kay Kurokawa
23bf43f40c fixing bug where broadcast_transaction function would not return a deferred 2016-12-15 10:28:49 -05:00
Kay Kurokawa
6f60b8b827 work on resolving threading issues with lbryum in Wallet.py 2016-12-15 10:28:49 -05:00
Kay Kurokawa
965f8f1238 removing unused get_transaction function from daemon and wallet 2016-12-15 10:28:49 -05:00
Job Evers-Meltzer
7bce37a720 pylint: add check for missing-final-newline 2016-12-14 19:21:59 -06:00
Job Evers-Meltzer
14ac2bac39 pylint: fix trailing-whitespace 2016-12-14 19:21:59 -06:00
Jeremy Kauffman
32fa2460ff sort the help functions 2016-12-14 19:21:54 -06:00
Job Evers-Meltzer
f796f701f2 Immediately announce completed blobs
It doesn't seem necessary to wait up to 60 seconds for a new blob to
be announced to the dht. Immediately announce it and schedule the next
announce time as usual.
2016-12-14 19:05:24 -06:00
Kay Kurokawa
bce41ddab4 Do not return 'success' and 'reason' as outputs in claim commands
We throw an Exception instead
2016-12-14 19:05:05 -06:00
Jack
5bf20096b2 fix wallet_balance when checking fee amount 2016-12-12 14:32:33 -05:00
Job Evers-Meltzer
e8faadc324 fix more long lines 2016-12-07 10:10:46 -05:00
Job Evers-Meltzer
b64fa51567 fixup long lines 2016-12-07 09:38:34 -05:00
Job Evers-Meltzer
fe3e25982c don't lint unused files 2016-12-07 09:35:16 -05:00
Jack Robison
9ad55e93b9 Merge pull request #315 from kaykurokawa/fix_claim_bug
Fix bug to exclude support in get_my_claim
2016-12-07 09:25:44 -05:00
Jack Robison
9e7e168175 Merge pull request #319 from lbryio/reenable-startup-status-codes
Reenable startup status
2016-12-06 17:00:03 -05:00
Jack Robison
f84df50d7f Merge pull request #317 from lbryio/remove-lbrynet-console
Remove lbrynet-console
2016-12-06 16:59:52 -05:00
Jack
f0ed4e5513 move listen to DaemonServer startup 2016-12-06 16:34:50 -05:00
alexliebowitz
39005ffc14 Merge pull request #310 from lbryio/allow-cors-config
allow Access-Control-Allow-Origin to be configurable
2016-12-06 15:11:38 -05:00
Jack Robison
28e88d89a5 Merge pull request #313 from lbryio/config-bittrex
Add bittrex to conf
2016-12-06 12:41:45 -05:00
Jack
979f8efa79 remove unused lbrynet-console 2016-12-06 12:35:27 -05:00
Jack Robison
4c4bccfe73 Merge pull request #312 from lbryio/local-ui-conf
local_ui_path needs to be a str
2016-12-06 12:23:45 -05:00
Jack
8cb0f99e30 fix pylint errors 2016-12-06 12:22:43 -05:00
Umpei Kay Kurokawa
6076861cd0 Merge pull request #304 from kaykurokawa/remove_lbrycrd
Remove lbrycrdd
2016-12-06 12:06:09 -05:00
Job Evers‐Meltzer
8b427a92ac Merge pull request #311 from lbryio/fix-server-port
port needs to be an int
2016-12-06 09:48:08 -05:00
Kay Kurokawa
9c50cfdcdb fix bug in get_my_claim 2016-12-05 17:17:17 -05:00
Job Evers-Meltzer
8f80e8a3da add bittrex to conf 2016-12-05 17:14:25 -05:00
Job Evers-Meltzer
cd44ae02a3 __getattr__ should call __getattribute__ 2016-12-05 17:06:45 -05:00
Job Evers-Meltzer
848f1f025c local_ui_path needs to be a str 2016-12-05 16:29:18 -05:00
Job Evers-Meltzer
d2cc8355dc port needs to be an int 2016-12-05 16:20:16 -05:00
Job Evers
ee00d1984a allow Access-Control-Allow-Origin to be configurable 2016-12-05 15:34:48 -05:00
Jack
b9bb337a07 add tests for daemon.get_est_cost 2016-12-05 11:48:44 -05:00
Jack
d93f86030c clean up get_est_cost functions 2016-12-05 11:48:44 -05:00
Jack
d9e1e88c05 refactor get_est_cost
-add size parameter, if provided the sd blob won’t be downloaded (can
be used with size information from lighthouse)

-check if blob was already downloaded before trying to download it again
2016-12-05 11:48:43 -05:00
Job Evers-Meltzer
f579c8dbb8 Bump version: 0.7.7 → 0.7.8 2016-12-02 20:05:08 -06:00
Jack Robison
13d74d1f76 Merge pull request #297 from lbryio/better-name-error
Provide better feedback on why a name is invalid
2016-12-02 12:08:58 -05:00
Job Evers-Meltzer
ddf678af8a Bump version: 0.7.7rc0 → 0.7.7 2016-12-02 09:47:27 -06:00
Job Evers‐Meltzer
2c6d6d1602 Merge pull request #303 from lbryio/settings-api-fixes
Fixes to get_settings() and set_settings()
2016-12-02 09:41:22 -06:00
Alex Liebowitz
7d0e9f6ab9 Tweak logic in ApplicationSettings
Use self.environ instead of ENVIRONMENT to avoid global reference
2016-12-01 23:51:58 -05:00
Kay Kurokawa
200a22c93b Remove support for lbrycrdd wallet and related code 2016-12-01 16:45:48 -05:00
Alex Liebowitz
458561fe6f In AdjustableSettings, initialize all keys on init
Settings.update() method expects keys to already be present, so load
them all up front
2016-12-01 15:22:52 -05:00
Alex Liebowitz
157d6dca93 Save settings in conf.py 2016-12-01 15:22:52 -05:00
Alex Liebowitz
7b1b7fbf13 Call conf.settings.get_dict() in jsonrpc_get_daemon_settings() 2016-12-01 15:22:51 -05:00
Alex Liebowitz
876cdce51f Add Config.get_dict()
We don't want the version from DefaultSettings, so use super() to get
the standard functionality from conf.Settings.
2016-12-01 15:22:51 -05:00
Alex Liebowitz
205a10bc8e Refactor how adjustable settings are pulled out of config.settings
- Factor out this functionality into separate method
 - Change the set_settings() JSON-RPC method to use this (before, it was
   just returning all fields, which doesn't work anymore after the
   settings refactor)
2016-12-01 15:22:51 -05:00
Alex Liebowitz
ef8d1cfdc2 Rename var in Settings.update() 2016-12-01 15:22:51 -05:00
Alex Liebowitz
879c01ba00 Add separate list of excluded fields to AdjustableSettings
Adds "environ" field. Also renames __excluded to _excluded so it can
be overridden by child classes.
2016-12-01 15:22:44 -05:00
Alex Liebowitz
8bb7517f32 Merge pull request #300 from kaykurokawa/fix_claim_defer
Missing the return of a defer.fail when claim fails, changing to raise Exception
2016-12-01 13:49:29 -05:00
Job Evers-Meltzer
70d9b3ed74 Attempt to fix analytics badstatusline error
We've started seeing a lot of:
ConnectionError: ('Connection aborted.', BadStatusLine("''",))

Hopefully this fixes the problem. Its hard to test, so I'll
have to check the logs after releasing.
2016-12-01 12:13:12 -06:00
Job Evers-Meltzer
f39a21cf7b Provide better feedback on why a name is invalid 2016-12-01 11:02:37 -06:00
Umpei Kay Kurokawa
67b169c5a1 Merge pull request #300 from kaykurokawa/fix_claim_defer
Missing the return of a defer.fail when claim fails, changing to raise Exception
2016-11-30 23:08:48 -05:00
Kay Kurokawa
ff10546152 Missing the return of a defer.fail when claim fails, changing to raise Exception 2016-11-30 22:57:23 -05:00
Kay Kurokawa
360f4e50a0 converting some log.info to log.debug in Wallet 2016-11-30 16:37:28 -05:00
Job Evers‐Meltzer
f11f486f5a Merge pull request #292 from lbryio/allow-rc
allow for rc in version values
2016-11-30 14:16:17 -06:00
Jack Robison
fe53cc97d9 Merge pull request #285 from lbryio/more-flexible-origin-check
Allow 0.0.0.0 for api interface
2016-11-30 14:04:52 -05:00
Jack
051e63d76b don't allow 0 bid 2016-11-29 20:17:06 -05:00
Job Evers-Meltzer
8cdda7d845 Bump version: 0.7.6 → 0.7.7rc0 2016-11-28 23:33:57 -06:00
Job Evers-Meltzer
6a8789050c Allow 0.0.0.0 for api interface
For a host to be able to access the daemon running inside a docker
container the damon needs to be listening to 0.0.0.0

- move the API_INTERFACE setting to the adjustablesettings
- check the port matches as well as the interface
2016-11-28 19:19:05 -06:00
Job Evers‐Meltzer
9140c95a0c Merge pull request #291 from lbryio/fix-pylint
fix pylint errors
2016-11-28 15:32:16 -06:00
Job Evers-Meltzer
6f2e2e727e fix pylint errors 2016-11-28 13:33:34 -06:00
Jack Robison
48b137fe4c Merge pull request #287 from lbryio/version-add-lbry-id
get_lbry_session_info
2016-11-28 14:26:43 -05:00
Jack
a6326ee7a1 get_lbry_session_info 2016-11-28 14:16:21 -05:00
Jack
bfcd84a568 use nOut in addition with txid to identify claims 2016-11-25 16:59:23 -05:00
Alex Liebowitz
4cb2a8f2aa Include LBRY ID in version() API method result 2016-11-23 20:29:45 -05:00
Alex Liebowitz
9d272befcd Convert length of shortened plaintext LBRY ID to constant 2016-11-23 20:28:16 -05:00
Job Evers
91fb78b077 Update TODO with more useful info 2016-11-22 18:14:41 -06:00
Job Evers-Meltzer
464bd11c3a Improve parsing of environment variables
Switch adjustable settings to use the envparse library. This
provides more flexible and robust parsing.
2016-11-22 18:14:36 -06:00
Job Evers-Meltzer
b88e771eb2 bug fix: use proper settings dictionary 2016-11-22 16:03:37 -06:00
Job Evers-Meltzer
7a76763610 rename Setting to Settings 2016-11-22 16:03:37 -06:00
Job Evers-Meltzer
02d2bad03f allow json to be used to set settings 2016-11-22 16:03:37 -06:00
Jack Robison
f65a50a6a3 Merge pull request #260 from lbryio/error-messages
meaningful error messages, improve cli, remove unused search from daemon
2016-11-22 15:54:21 -05:00
Jack
0a9ef07787 Merge branch 'master' into error-messages
# Conflicts:
#	lbrynet/lbrynet_daemon/Daemon.py
#	lbrynet/lbrynet_daemon/auth/server.py
2016-11-22 15:44:47 -05:00