• v0.19.3 beab40a8dd

    v0.19.3 Stable

    jackrobison released this 2018-05-04 17:16:44 +02:00 | 5835 commits to master since this release

    [0.19.3] - 2018-05-04

    Changed

    Downloads
  • v0.20.0rc7 89b4487eb9

    v0.20.0rc7 Pre-release

    jackrobison released this 2018-04-19 17:05:42 +02:00 | 5760 commits to master since this release

    [0.20.0rc7] - 2018-04-19

    Fixed

    • handling error from dht clients with old ping method
    • blobs not being re-announced if no peers successfully stored, now failed announcements are re-queued
    • issue where an AuthAPIClient (used by lbrynet-cli) would fail to update its session secret and keep making new auth sessions, with every other request failing
    • use_auth_http in a config file being overridden by the default command line argument to lbrynet-daemon, now the command line value will only override the config file value if it is provided
    • lbrynet-cli not automatically switching to the authenticated client if the server is detected to be using authentication. This resulted in lbrynet-cli failing to run when lbrynet-daemon was run with the --http-auth flag

    Changed

    • several internal dht functions to use inlineCallbacks
    • DHTHashAnnouncer and Node manage functions to use LoopingCalls instead of scheduling with callLater.
    • store kademlia rpc method to block on the call finishing and to return storing peer information
    • refactored DHTHashAnnouncer to longer use locks, use a DeferredSemaphore to limit concurrent announcers
    • decoupled DiskBlobManager from DHTHashAnnouncer
    • blob hashes to announce to be controlled bySQLiteStorage
    • kademlia protocol to not delay writes to the UDP socket
    • reactor and callLater, listenUDP, and resolve functions to be configurable (to allow easier testing)
    • calls to get the current time to use reactor.seconds (to control callLater and LoopingCall timing in tests)
    • blob_announce to queue the blob announcement but not block on it
    • blob completion to not callLater an immediate announce, let SQLiteStorage and the DHTHashAnnouncer handle it
    • raise the default number of concurrent blob announcers to 100
    • dht logging to be more verbose with errors and warnings
    • added single_announce and last_announced_time columns to the blob table in sqlite
    • pass the sd hash to reflector ClientFactory instead of looking it up
    • if the use_authentication setting is configured, use authentication for all api methods instead of only those with the auth_required decorator
    • regenerate api keys on startup if the using authentication
    • support both positional and keyword args for api calls
    • peer_list to return a list of dictionaries instead of a list of lists, added peer node ids to the results

    Added

    • virtual kademlia network and mock udp transport for dht integration tests
    • integration tests for bootstrapping the dht
    • configurable concurrent_announcers setting
    • peer_ping command

    Removed

    • announce_all argument from blob_announce
    • old blob_announce_all command
    • AuthJSONRPCServer.auth_required decorator
    • unused --wallet argument to lbrynet-daemon, which used to be to support PTCWallet.
    Downloads
  • v0.20.0rc6 bb7e17e54a

    v0.20.0rc6 Pre-release

    jackrobison released this 2018-04-03 19:21:17 +02:00 | 5771 commits to master since this release

    [0.20.0rc6] - 2018-04-03

    Fixed

    • handling error from dht clients with old ping method
    • blobs not being re-announced if no peers successfully stored, now failed announcements are re-queued
    • issue where an AuthAPIClient (used by lbrynet-cli) would fail to update its session secret and keep making new auth sessions, with every other request failing
    • use_auth_http in a config file being overridden by the default command line argument to lbrynet-daemon, now the command line value will only override the config file value if it is provided
    • lbrynet-cli not automatically switching to the authenticated client if the server is detected to be using authentication. This resulted in lbrynet-cli failing to run when lbrynet-daemon was run with the --http-auth flag

    Changed

    • several internal dht functions to use inlineCallbacks
    • DHTHashAnnouncer and Node manage functions to use LoopingCalls instead of scheduling with callLater.
    • store kademlia rpc method to block on the call finishing and to return storing peer information
    • refactored DHTHashAnnouncer to longer use locks, use a DeferredSemaphore to limit concurrent announcers
    • decoupled DiskBlobManager from DHTHashAnnouncer
    • blob hashes to announce to be controlled bySQLiteStorage
    • kademlia protocol to not delay writes to the UDP socket
    • reactor and callLater, listenUDP, and resolve functions to be configurable (to allow easier testing)
    • calls to get the current time to use reactor.seconds (to control callLater and LoopingCall timing in tests)
    • blob_announce to queue the blob announcement but not block on it
    • blob completion to not callLater an immediate announce, let SQLiteStorage and the DHTHashAnnouncer handle it
    • raise the default number of concurrent blob announcers to 100
    • dht logging to be more verbose with errors and warnings
    • added single_announce and last_announced_time columns to the blob table in sqlite
    • pass the sd hash to reflector ClientFactory instead of looking it up
    • if the use_authentication setting is configured, use authentication for all api methods instead of only those with the auth_required decorator
    • regenerate api keys on startup if the using authentication
    • support both positional and keyword args for api calls
    • peer_list to return a list of dictionaries instead of a list of lists, added peer node ids to the results

    Added

    • virtual kademlia network and mock udp transport for dht integration tests
    • integration tests for bootstrapping the dht
    • configurable concurrent_announcers setting
    • peer_ping command

    Removed

    • announce_all argument from blob_announce
    • old blob_announce_all command
    • AuthJSONRPCServer.auth_required decorator
    • unused --wallet argument to lbrynet-daemon, which used to be to support PTCWallet.
    Downloads
  • v0.19.2 b75c8d96ce

    v0.19.2 Stable

    jackrobison released this 2018-03-28 21:35:47 +02:00 | 5845 commits to master since this release

    [0.19.2] - 2018-03-28

    Fixed

    • incorrectly raised download cancelled error for already verified blob files
    • infinite loop where reflector client keeps trying to send failing blobs, which may be failing because they are invalid and thus will never be successfully received
    • docstring bugs for stream_availability, channel_import, and blob_announce

    Added

    • blob_reflect command to send specific blobs to a reflector server
    • unit test for docopt

    Removed

    • flags decorator from server.py as short flags are no longer used when using api/cli methods

    Changed

    Downloads
  • v0.19.1 de280b5ebf

    v0.19.1 Stable

    jackrobison released this 2018-03-20 15:15:50 +01:00 | 5865 commits to master since this release

    [0.19.1] - 2018-03-20

    Fixed

    • Fixed the inconsistencies in API and CLI docstrings
    • blob_announce error when announcing a single blob
    • blob_list error when looking up blobs by stream or sd hash (1126)
    • Claiming a channel with the exact amount present in wallet would return a confusing error (1107)
    • Channel creation to use same bid logic as for claims (1148)

    Deprecated

    • report_bug jsonrpc command

    Changed

    • Bumped lbryschema requirement to 0.0.15 see changelog
    • Bumped lbryum requirement to 3.2.0 see changelog
    • Reflector server to periodically check and set should_announce for sd and head blobs instead of during each request
    • Reflector server to use SQLiteStorage to find needed blob hashes for a stream

    Added

    • Scripts to auto-generate documentation (1128)
    • Now updating new channel also takes into consideration the original bid amount, so now channel could be updated for wallet balance + the original bid amount (1137)
    • Forward-compatibility for upcoming DHT encoding changes

    Removed

    • Short(single dashed) arguments for lbrynet-cli
    Downloads
  • v0.19.0 67a3001a0b

    v0.19.0 Stable

    jackrobison released this 2018-03-03 05:01:23 +01:00 | 5917 commits to master since this release

    [0.19.0] - 2018-03-02

    Fixed

    Deprecated

    • channel_list_mine, replaced with channel_list
    • get_availability, replaced with stream_availability

    Changed

    • dht tests to only be in one folder
    • config file format of known_dht_nodes, lbryum_servers, and reflector_servers to lists of hostname:port strings
    • startup of lbrynet-daemon to block on the wallet being unlocked if it is encrypted
    • publish to verify the claim schema before trying to make the claim and to return better error messages
    • channel_list_mine to be instead named channel_list
    • channel_list to include channels where the certificate info has been imported but the claim is not in the wallet
    • file objects returned by file_list and get to contain claim_name field instead of name
    • name filter parameter for file_list, file_set_status, file_reflect, and file_delete to be named claim_name
    • metadata field in file objects returned by file_list and get to be a Metadata object
    • assumption for time it takes to announce single hash from 1 second to 5 seconds
    • HTTP error codes for failed api requests, conform to http://www.jsonrpc.org/specification#error_object (previously http errors were set for jsonrpc errors)
    • api requests resulting in errors to return less verbose tracebacks
    • logging about streams to not include file names (only include sd hashes)
    • wallet info exchange to re-use addresses, this was a significant source of address bloat in the wallet
    • lbrynet to not manually save the wallet file and to let lbryum handle it
    • internals to use reworked lbryum payto command
    • dht Node class to re-attempt joining the network every 60 secs if no peers are known
    • lbrynet database and file manager to separate the creation of lbry files (from downloading or publishing) from the handling of a stream. All files have a stream, but not all streams may have a file. (https://github.com/lbryio/lbry/issues/1020)
    • manager classes to use new SQLiteStorage for database interaction. This class uses a single lbrynet.sqlite database file.

    Added

    • link to instructions on how to change the default peer port
    • lbrynet-console, a tool to run or connect to lbrynet-daemon and launch an interactive python console with the api functions built in.
    • --conf CLI flag to specify an alternate config file
    • peer_port, disable_max_key_fee, auto_renew_claim_height_delta, blockchain_name, and lbryum_servers to configurable settings
    • wallet_unlock command (available during startup to unlock an encrypted wallet)
    • support for wallet encryption via new commands wallet_decrypt and wallet_encrypt
    • channel_import, channel_export, and claim_renew commands
    • blob_availability and stream_availability commands for debugging download issues
    • a new startup stage to indicate if the daemon is waiting for the wallet_unlock command.
    • abandon_info dictionary (containing claim_name, claim_id, address, amount, balance_delta and nout) for claims, supports, and updates returned by transaction_list
    • permanent_url string to channel_list_mine, claim_list, claim_show, resolve and resolve_name (see lbryio/lbryum#203)
    • is_mine boolean to channel_list results
    • txid, nout, channel_claim_id, channel_claim_name, status, blobs_completed, and blobs_in_stream fields to file objects returned by file_list and get
    • txid, nout, channel_claim_id, and channel_claim_name filters for file commands (file_list, file_set_status, file_reflect, and file_delete)
    • unit tests for SQLiteStorage and updated old tests for relevant changes (https://github.com/lbryio/lbry/issues/1088)

    Removed

    • seccure and gmpy dependencies
    • support for positional arguments in cli settings_set. Now only accepts settings changes in the form --setting_key=value
    • auto_re_reflect setting from the conf file, use the reflect_uploads setting instead
    • name argument for claim_show command
    • message response field in file objects returned by file_list and get
    • include_tip_info argument from transaction_list, which will now always include tip information.
    • old and unused UI related code
    • unnecessary TempBlobManager class
    • old storage classes used by the file manager, wallet, and blob manager
    • old .db database files from the data directory
    Downloads
  • v0.18.2 4e2b23d9e1

    v0.18.2 Stable

    jackrobison released this 2018-01-24 21:05:01 +01:00 | 6181 commits to master since this release

    [0.18.2] - 2018-01-24

    Fixed

    • Fixed import error in Wallet.py
    • Fixed fetching the external ip in v0.18.1
    Downloads
  • v0.18.1 c3d5014a08

    v0.18.1 Stable

    jackrobison released this 2018-01-22 21:57:49 +01:00 | 6184 commits to master since this release

    [0.18.1] - 2018-01-22

    Fixed

    • Fixed fetching the external ip
    Downloads
  • v0.18.0 28fea7093f

    v0.18.0 Stable

    jackrobison released this 2017-11-08 17:05:18 +01:00 | 6186 commits to master since this release

    [0.18.0] - 2017-11-08

    Fixed

    • Fixed amount of close nodes to add to list in case of extension to neighbouring k-buckets
    • Fixed external IP detection via jsonip.com (avoid detecting IPv6)
    • Fixed failing ConnectionManager unit test for parallel connections
    • Fixed race condition between publish and channel_new
    • Fixed incorrect response on attempting to delete blob twice
    • Fixed local node ID reporting in peer list

    Changed

    • Bumped lbryschema requirement to 0.0.14 see changelog
    • Bumped lbryum requirement to 3.1.11 see changelog
    • Moved BLOB_SIZE from conf.py to MAX_BLOB_SIZE in blob/blob_file.py

    Added

    • Added utxo_list command to list unspent transaction outputs
    • Added redundant API server for currency conversion

    Removed

    • Removed some alternate methods of reading from blob files
    • Removed @AuthJSONRPCServer.queued decorator
    Downloads
  • v0.17.1 203f2f8988

    v0.17.1 Stable

    jackrobison released this 2017-10-25 23:33:55 +02:00 | 6259 commits to master since this release

    [0.17.1] - 2017-10-25

    Fixed

    • Fixed slow startup for nodes with many lbry files
    • Fixed setting the external ip on startup
    • Fixed session startup not blocking on joining the dht
    • Fixed several parsing bugs that prevented replacing dead dht contacts
    • Fixed lbryid length validation
    • Fixed an old print statement that polluted logs
    • Fixed rpc id length for dht requests

    Changed

    • Bumped lbryschema requirement to 0.0.13 see changelog
    • Bumped lbryum requirement to 3.1.10 see changelog
    • Use the first port available for the peer and dht ports, starting with the provided values (defaults of 3333 and 4444). This allows multiple lbrynet instances in a LAN with UPnP.
    • Detect a UPnP redirect that didn't get cleaned up on a previous run and use it
    • Bumped jsonschema requirement to 2.6.0
    • Refactor some assert statements to accommodate the PYTHONOPTIMIZE flag set for Android.

    Added

    • Added wallet_prefill_addresses command, which distributes credits to multiple addresses
    Downloads