Commit graph

254 commits

Author SHA1 Message Date
Job Evers-Meltzer
172f275bc7 Refactor _resolve_name.
Continue using the delegation/helper pattern for the daemon.
2016-07-16 09:24:27 -05:00
Job Evers-Meltzer
a15d7ca543 Refactor _download_name
Nested functions are the devil, especially ones that
use variables from the outer scope. Refactoring
_download_name to use a helper class helps make
the scoping more explicit and will undoubtably
prevent bugs in the future.

I think this makes _download_name drastically more readable.

Also cleaned up some duplicated code and
made download_directory respect the passed in parameter
instead of being the default.
2016-07-15 12:42:26 -05:00
Job Evers-Meltzer
a90029ec50 update doc string 2016-07-15 11:37:04 -05:00
Job Evers-Meltzer
563896b126 fix bug in reveal code 2016-07-15 11:33:38 -05:00
Job Evers-Meltzer
5aecd02668 Refactor jsonrpc_get.
Move parameter handling into its own function and
better use the `.get()` function for dictionaries.

Early return on the failed checks is more readable.

The lambda function in the callback was long and
hard to read so moved it out.
2016-07-15 11:32:46 -05:00
Jack
1b53e8e98c re-enable lbryum 2016-07-09 13:31:07 -04:00
Jack
5a703c116f linux lbrycrdd path 2016-07-06 22:46:59 -04:00
Alex Liebowitz
c58fc0781c Call xdg-open properly in jsonrpc_reveal() 2016-07-06 15:57:00 -04:00
Jack
03c02ff74f lbrycrdd path wierdness 2016-07-06 03:37:31 -04:00
Jack
1984132eae add update_available keys to version()
as to not require making the version string comparison in whatever is
making the daemon call
2016-07-06 01:46:49 -04:00
Jack
8b1d75ea98 check every 30 minutes for a new ui version
-previously the check for a new ui version was only at startup, which
resulted in bugs persisting after they’d been fixed

-add option to skip requirements check

-try to load an existing ui if it can’t be obtained from github
2016-07-06 01:27:25 -04:00
Jack
4c2ab23c1f write to the file that's supposed to be written to 2016-07-04 20:19:04 -04:00
Jack
0a3f81e364 fix download directory not existing problem 2016-07-04 20:02:38 -04:00
Jack
cca4331ac4 create lbrycrddpath.conf if it doesnt exist 2016-07-04 19:34:51 -04:00
Alex Liebowitz
e35dce530a Set default download dir to ~/Downloads on Linux 2016-07-04 17:49:48 -04:00
Job Evers‐Meltzer
d504c8f4a3 Merge pull request #50 from lbryio/lbrycrd-in-bundle
Add lbrycrd to app bundle on macos
2016-07-04 15:42:24 -05:00
Job Evers-Meltzer
16f48d0400 Add lbrycrd to app bundle on macos 2016-07-04 15:18:08 -05:00
Alex Liebowitz
6d7608d851 Create lbrycrd.conf if needed 2016-07-04 16:16:34 -04:00
Jack
7b9e3aace9 use lbrycrd 2016-07-04 05:43:26 -04:00
Jack
568737e123 change lbryum version constant name 2016-07-04 05:15:53 -04:00
Jack
808e3ea6e3 rename LBRYcrdWallet.py to LBRYWallet.py and change default wallet to lbrycrd 2016-07-04 04:57:30 -04:00
Jack
b80fe24179 tanstaafl 2016-07-01 02:55:20 -04:00
Jack
08b612575c update_claim fix and clean up publish keys
-replace ‘value’ key with ‘metadata’

-update claim metadata in db when an update is published
2016-06-28 23:20:28 -04:00
Jack
b3b804bf2d add update_name 2016-06-28 14:28:59 -04:00
Jack
09d8a86e30 rename variable 2016-06-28 02:06:04 -04:00
Jack
cc5d917c72 download fix 2016-06-28 01:51:05 -04:00
Jack
7cc3e9d5ef publish updates
-adds a base set of metadata fields required for results to be rendered
in conf.py, including language and content-type

-dont support old style claims on the new blockchain
2016-06-27 17:07:59 -04:00
Jack
f89486f5fe port and import name 2016-06-24 13:12:27 -04:00
Jack
3441dd4d2d don't mess with logging 2016-06-07 04:19:51 -04:00
Jack
8faa0d9e01 update lbryum log path 2016-06-06 15:24:29 -04:00
Jack
20ca2eac37 lbryum logging in lbryum.log, add to upload_log() 2016-06-04 17:05:14 -04:00
Jack
8c46dd194d save command line wallet choice to config 2016-06-04 14:18:58 -04:00
Jack
e224c33817 add mime_type to get_lbry_file 2016-06-03 03:45:46 -04:00
Jack
36787eeeeb default value 2016-06-01 21:05:38 -04:00
Jack
104cafedb0 --wallet fix 2016-06-01 20:52:15 -04:00
Jack
a4a5d63da7 fix update settings problem
also move log upload url constant to conf.py
2016-05-31 17:38:00 -04:00
Jack
9f0f9e0928 Merge remote-tracking branch 'origin/better_log_names' into add-tests-to-travis 2016-05-30 17:09:39 -04:00
Jack
2026024c8a updates from development 2016-05-30 15:49:25 -04:00
Alex Grintsvayg
f48c1562f3 better log names 2016-05-20 19:59:49 -04:00
Jack
be96c77467 add set_miner and get_miner_status
set_miner takes parameter key ‘run’, which is True or False
2016-05-14 17:57:34 -04:00
Jack
b5e8aec548 fix --wallet=lbrycrd 2016-05-14 17:36:30 -04:00
Jack
278c7dc836 have get() wait for file to have written data before returning by default
controlled by wait_for_write parameter
2016-05-13 19:35:38 -04:00
Jack
1425ad87ab fix get_lbry_file problem 2016-05-11 04:44:23 -04:00
Jack
f985a2a8ad add waiting_for_credits startup code 2016-05-11 02:47:33 -04:00
Jack
210c1215d6 add metadata to lbry_file 2016-05-11 01:48:23 -04:00
Jack
1c507393a9 fix problem with getting a stream where the file has been deleted 2016-05-10 21:01:53 -04:00
Jack
b04cfdc091 load uri and txid when stream is started 2016-05-10 20:47:35 -04:00
Jack
42a3006f6e add claim txid and uri to lbry_file 2016-05-10 19:03:18 -04:00
Jack
f3d3a0e57f Don't show 0 while downloading headers from amazon, fix uri handler 2016-05-06 14:31:44 -04:00
Jack
e32853744a better loading message 2016-05-05 22:26:25 -04:00
Jack
b017b63745 status code for previously downloaded file
also fix return for files downloaded manually with stream_info
2016-05-05 21:45:25 -04:00
Jack
d6983a25b0 fix metadata problem in downloader and publisher 2016-05-04 23:40:05 -04:00
Jack
509b8f3a29 add file_name and stream_info fields to get()
-file_name is the name of the file in the downloads folder

-stream_info is a dict of the metadata in a name claim, it can be used
to download streams where the claim hasn’t yet been added to the
nametrie
2016-05-04 21:25:46 -04:00
Jack
461c2f9055 add file download statuses for get_lbry_file
also clean up remaining fetcher stuff
2016-05-04 05:20:38 -04:00
Jack
c1d0f9cf1b get rid of autofetcher in daemon
the purpose of the autofetcher was to automatically back up and host
published content, it is simpler to do this in a separate script that
uses existing daemon functions than to have it be built in
2016-05-04 04:12:11 -04:00
Jack
019de08c64 add more transaction functions to daemon
also fix —wallet command line option
2016-05-03 23:13:31 -04:00
Jack
04ee9894c9 speed up streaming, off by one errors 2016-05-02 04:10:50 -04:00
Jack
226e9084c9 return false from get_lbry_file if the file doesnt exist 2016-04-30 23:43:02 -04:00
Jack
caf5d2f788 update uri handler to use /watch 2016-04-26 19:48:43 -04:00
Jack
591634f175 cache name claim info
-cache name claim info for an hour rather than looking it up each time
it’s required

-add default thumbnail to search results
2016-04-25 22:35:21 -04:00
Jack
dfaf51a432 lbry file improvements
-fix daemon functions to start/stop lbry files

-remove unused stuff in LBRYFileManager

-improve and use new get_lbry_file function instead of _check_history,
which didn’t use the lbry file manager

-use said function to let delete_lbry_file use the same search keys
(sd_hash, name, and file_name)

-logging in LBRYDownloader
2016-04-24 17:51:24 -04:00
Jack
c2ec066c85 add LBRYFileProducer
-Add LBRYFileProducer, to host the contents of a download without
having to keep re-opening it as it is added to

-included sd hash in ManagedLBRYFileDownloader, to make comparing the
contents of the file manager against name claims easier

-add get_lbry_file function, which returns information about a LBRY
file found by sd_hash, file name, or lbry uri
2016-04-24 04:42:42 -04:00
Jack
3e7c09bb44 fix duplicate/buffering problem
fix problem where get request takes time to respond, in this time it
can receive more get requests that each manage to start downloading
2016-04-22 18:48:44 -04:00
Jack
28f66e30dd improve timeouts 2016-04-22 18:18:17 -04:00
Jack
fecd29a967 only load /view page when file isn't empty 2016-04-22 02:45:05 -04:00
Jack
2c1ba623a4 add message key to upload_log
log the message which is then uploaded with a special file prefix, and
also send the message to slack
2016-04-20 23:50:13 -04:00
Jack
e5e25012ff move daemon server stuff into its own class 2016-04-20 22:02:52 -04:00
Jack
c5d653a51a add bug report page
adds a page to submit a message and upload log at /report
2016-04-20 14:44:26 -04:00
Jack
c4620a0b0c add problem_code to daemon_status 2016-04-20 04:24:32 -04:00
Jack
a82f85f058 bump version, increase log size, fix shutdown problem 2016-04-20 02:56:29 -04:00
Jack
29f7307f9d periodically check internet connection and for new versions 2016-04-18 13:21:53 -04:00
Jack
24eed71959 upload log function doc string 2016-04-18 03:41:16 -04:00
Jack
9341ccb643 Merge branch 'master' into transaction-explorer
fix conflicts in LBRYDaemonControl.py
2016-04-17 23:28:00 -04:00
Jack
4385b90cca add get transaction and history functions to daemon 2016-04-17 23:23:20 -04:00
Jack
5f49827bd2 fix lagging indicator and improve diagnostic
-make is_lagging more meaningful - it is set to true after 90 seconds
with no progress, this is to stop slow but steady catchups from
triggering it

-prevent situation where repeated shutdowns before wallet catchup
results in never receiving first run credits

-fix settings to write new defaults that aren’t already in the
configuration file

-report log of startup sequence if upload_log set to true

-redirect /view?name=lbry to the main UI page. This is to make the ui
accessible from a lbry:// link on linux
2016-04-17 19:54:04 -04:00
Jack
bac7ea5dc0 include platform information in version() 2016-04-15 22:31:06 -04:00
Jack
b3b5581f2d don't log to console, add --no-launch flag, fix help()
by default, the ui opens in the lbrynet-daemon startup sequence, the
—no-launch flag stops the ui from launching
2016-04-15 19:37:27 -04:00
Jack
9a26d869fe better first run message 2016-04-14 17:01:05 -04:00
Jack
57138d9629 is_lagging message 2016-04-14 16:50:11 -04:00
Jack
47d897b48d is_lagging indicator and internet connection check
-adds is_lagging indicator as a key from daemon_status, which is set to
True during a phase of the startup sequence, presently only during
loading_wallet if catching up with the blockchain takes longer than a
minute.

-checks if connected to internet before trying to start
2016-04-14 00:29:40 -04:00
Jack
6b9f1d519e remove null handling used to fix a now resolved bug, update daemon_status outputs per alex's suggestions 2016-04-13 23:10:17 -04:00
Jack
8b966c61d8 check version during startup 2016-04-13 22:07:27 -04:00
Jack
65a0583c85 add help function and documentation for functions
-calling help() will return the list of functions

-setting the ‘function’ param in the help function will return the doc
string for that function

-setting the ‘callable_on_startup’ in the help function will return the
list of functions callable during the startup sequence
2016-04-13 14:47:34 -04:00
Jack
df99d06d11 fix links in check_for_new_version and log version info
-also handle situation where function is given a null argument
2016-04-13 02:35:31 -04:00
Jack
59002413f8 organize daemon init, move more into daemon_settings.json
-also add wallet.catchup_progress to get a rough percentage of how
caught up the daemon is, this is accessed through daemon_status()
2016-04-12 02:03:57 -04:00
Jack
e04f35af4f fix check_for_new_version
returns true if new version is available, otherwise false

check_for_new_version is callable during startup
2016-04-11 23:13:26 -04:00
Jack
c50f83400a make version callable during startup 2016-04-11 22:37:42 -04:00
Jack
31fa974379 version function, ui version tracking, blocks behind blockchain during startup, cleaner set_vars
-adds version() function, which can be called after the daemon is
running and returns lbrynet, lbryum, and lbry ui version information.

-daemon_status now returns how far behind its behind the blockchain
when in the loading_wallet phase of startup

-cleans up set_vars by moving to init
2016-04-11 22:28:46 -04:00
Jack
e48cc40610 fix incorrect variable 2016-04-09 16:18:06 -04:00
Jack
a931f59dda only return first run message until credits arrive 2016-04-09 16:14:28 -04:00
Jack
f0d39e6081 log LBRYDaemonControl and return None from get_start_notice if there is no notice to give 2016-04-09 15:43:10 -04:00
Jack
c11872a229 default on no startup message 2016-04-09 04:35:34 -04:00
Jack
f4fe730dc9 add get_start_notice to return startup messages 2016-04-09 04:15:58 -04:00
Jack
a4c83a08c7 change name of check_first_run to is_first_run 2016-04-09 04:00:31 -04:00
Jack
c3277d24c3 use status_message and status_code return fields for daemon_status() 2016-04-09 02:09:30 -04:00
Jack
28a23590ef add message for startup status
-added daemon_status function that returns {'status': startup status
message, 'is_running': true/false}
2016-04-09 01:33:27 -04:00
Jack
162275992b return fail from check_first_run when is_first_run isn't callable 2016-04-08 23:52:43 -04:00
Jack
08e25f4622 convert ints to floats if given as settings params 2016-04-08 23:38:57 -04:00
Jack
9a300d773f optional download_directory parameter for get function
-optional download_directory parameter to choose the directory a file
is saved to, if not given or not a valid directory it uses the default
2016-04-08 22:23:37 -04:00
Jack
a5362f3170 daemon settings
-set_settings accepts a dict of settings
    -adds upload_log field, defaulting on true, this uploads the lbry
log file to lbry.io to help figure out if and where things aren’t
working
    -default_download_directory is the key of the path where files are
saved

-gets publish working with sources

-adds check_first_run function, returns True/False

-previously only is_running would work during startup, check_first_run,
 get_time_behind_blockchain, and stop have been added

-requires six 1.9, 1.10.0 produced errors
2016-04-07 03:12:09 -04:00
Jack
d4b7064d2f fix sources problems 2016-04-01 22:11:11 -04:00
Jack
4355b799cb before is_running is true all other methods return a failure 2016-03-29 22:02:36 -04:00
Jack
b3465f3bbf fix /view, improve is_running, clean function outputs
-Use localhost:5279/view?name=wonderfullife to download and render a
file

-is_running is now the only function that will work during startup

-functions output json, rather than json in your json
2016-03-29 16:42:47 -04:00
Jack
2670279b0d change access control allow origin to * 2016-03-28 16:49:51 -04:00
Jack
41a0590182 fix daemon directories for linux 2016-03-28 14:53:32 -04:00
Jack
a882bdb08c fix output of get_time_behind_blockchain function 2016-03-25 09:32:24 -04:00
Jack
c714a3f91c merge updates 2016-03-23 22:27:48 -04:00
Jimmy Kiselak
a68d891770 enable checking first run status multiple times 2016-03-19 21:24:44 -04:00
Jack
27ccb37646 update daemon
check that managed files still exist, if they don’t remove them from
the manager
2016-03-08 12:15:49 -05:00
Jack
e4f23b3fce better organize apps 2016-03-03 00:16:51 -05:00
Jack
02d8dc22e9 update daemon
-notify user when connected to lbrynet
-check for updates from status bar app
2016-03-02 18:32:48 -05:00
Jack
2fc3ec7224 update status bar app 2016-03-02 02:00:45 -05:00
Jack
6f1ee78623 update daemon 2016-02-29 13:25:47 -05:00
Jack
33c1a002da update daemon
only let local user connect to lbrynet-daemon
2016-02-27 13:19:26 -05:00
Jack
a18f3bf08a disable status bar 2016-02-26 10:59:09 -05:00
Jack
eeef183cc6 update lbrynet-daemon 2016-02-25 17:17:07 -05:00
Jack
485be533c9 make lbryum default wallet for daemon
with optional command line argument —wallet=
2016-02-22 22:32:07 -05:00
Jack
c63aa3033a install lbryum 2016-02-19 23:26:24 -05:00
Jack
0dbf810cfe move status bar stuff 2016-02-19 00:07:19 -05:00
Jack
58aa4887ad update daemon
Start status bar if possible
2016-02-18 20:55:59 -05:00
Jack
3ff0916f49 remove icon 2016-02-18 20:48:43 -05:00
Jack
cc9fb3ff41 fix icon path 2016-02-18 20:45:16 -05:00
Jack
2c51928b9d Status bar for lbrynet daemon 2016-02-18 20:41:23 -05:00
Jimmy Kiselak
ec3e365b3c fix up LBRYcrdWallet and split it into two classes 2016-02-16 23:10:26 -05:00
Jack
c245c69389 Add check-for-new-version function to daemon 2016-02-16 14:48:10 -05:00
Jack
9a9a7c9d7a update daemon 2016-02-16 13:55:46 -05:00
Jack
20b516b5fa automatic updates
Adds automatic updates to lbrynet-daemon, this will check if the
installed versions of LBRY applications as well as the lbrynet python
installation are up to date. If they aren’t, it downloads the new
versions, installs them, and restarts the daemon.
2016-02-16 13:39:08 -05:00
Jack
d544199eff Fix search issue and move some settings to conf.py 2016-02-15 10:12:49 -05:00
Jack
407ebeb699 Update daemon 2016-02-11 08:32:48 -05:00
Jack
cb5c772233 Have autofetcher use managed downloader 2016-01-27 11:05:40 -05:00
Jack
e25be5a522 Update lbrynet-daemon
Use PaymentRateManager
2016-01-25 23:59:57 -05:00
Jack
47ff64a9e9 Update lbrynet-daemon
Adds the following:

-Abandon claim from its txid
-Get your name claims
-Get time behind blockchain
-Fixes upload
2016-01-25 20:28:05 -05:00
Jack
35f3887d79 Don't try to download a blank name 2016-01-24 00:26:41 -05:00
Jack
dacfc8b00a Update lbrynet-daemon
-Add optional content_license to name claim

-Get a better cost estimate, if the sd blob takes longer than 5 seconds
to download just use the key fee

-Adds the free speech flag as the default thumbnail if none is provided
2016-01-24 00:10:39 -05:00
jackrobison
b48800049b fix url 2016-01-22 16:19:20 -05:00
jackrobison
7e5d4166d8 Use locally hosted gui 2016-01-22 16:04:23 -05:00
Jack
23b6a8c495 Add publish
Add publish function
2016-01-20 22:00:28 -05:00
Jack
888d77c96c Update lbrynet-daemon
-Get rid of separate db for daemon, instead use already existing files
-Simplify the get function
-Add start/stop functions for lbry files
2016-01-19 21:07:16 -05:00
Jack
e2ae1ca866 Remove file handle 2016-01-17 01:49:17 -05:00
Jack
885a0882f2 Update daemon and uri handler 2016-01-16 23:06:24 -05:00
Jack
2085012874 Get managed lbry files 2016-01-13 09:42:30 -05:00
Jack
905274d6d4 Use same downloader for daemon as is used for console
Use
lbrynet.lbryfilemanager.LBRYFileDownloader.ManagedLBRYFileDownloaderFact
ory instead of
lbrynet.lbryfile.client.LBRYFileDownloader.LBRYFileSaverFactory
2016-01-12 13:40:51 -05:00
Jack
120d7edf12 Better handle bad names, improve browser uri handler
Play videos in browser rather than in a separate application window
2016-01-12 12:42:32 -05:00
Jack
12cd06cae5 Add download history logging
Logs downloads as to not make duplicate files
2016-01-11 18:01:46 -05:00
Jack
42c26102d8 Make daemon shut down properly
Makes the daemon shutdown properly and adds better start/stop messages.
2016-01-11 15:52:38 -05:00
Jack
b8b2dc3b6d Fix daemon paths and add settings
Fixed lbrycrdd path in lbrynet-daemon, added configurable max key fee
and data payment rate
2016-01-07 10:24:55 -05:00
Jack
1ebf184e9f Add get function for daemon
Adds a ‘get’ function to the daemon, which downloads a file and returns
its file path.
2015-12-14 21:49:01 -05:00
Jack
e96dee478d Remove autofetcher from lbrynet-console
Disabled autofetcher in the console, moved getstream and fetcherdaemon
to their own file in lbrynet-daemon
2015-12-14 15:54:33 -05:00
Jack
a1861a2f84 Update lbrynet-daemon
Add auto fetcher to fetch new name claims
2015-12-14 12:59:44 -05:00
Jack
0eecfb52ed Update lbrynet-daemon
Daemon creates data directory if it doesn’t already exist
2015-12-14 10:22:52 -05:00