From 77ce68a6373d9f035392a17416a0da995b7537b6 Mon Sep 17 00:00:00 2001 From: Thomas Date: Thu, 8 Apr 2021 22:05:12 +0000 Subject: [PATCH] Release 1.0.0 Update the major version because the external API to play videos received non-backward compatible changes. --- README.md | 22 +++++++++++----------- addon.xml | 20 ++++++++++---------- fanart.jpg | Bin 21954 -> 0 bytes 3 files changed, 21 insertions(+), 21 deletions(-) delete mode 100644 fanart.jpg diff --git a/README.md b/README.md index cef5e8a..4a0a494 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,15 @@ -A Kodi add-on for watching content hosted on [Peertube](http://joinpeertube.org/). +A Kodi add-on for watching content hosted on [PeerTube](http://joinpeertube.org/). -This code is still proof-of-concept but it works, and you're welcome to improve -it. +This code is under development but some basic features work, and you're welcome +to improve it. + +[[_TOC_]] # Features * Browse all videos on a PeerTube instance * Search for videos on a PeerTube instance -* Select Peertube instance to use (Doesn't work yet) +* Select PeerTube instance to use (**doesn't work yet**) * Select the preferred video resolution: the plugin will try to play the select video resolution. If it's not available, it will play the lower resolution that is the closest @@ -47,14 +49,12 @@ the add-on with: # Limitations * This add-on doesn't support Webtorrent yet. So, it cannot download/share - from/to regular PeerTube clients. The reason is that it uses the libtorrent - python library which doesn't support it yet (see - https://github.com/arvidn/libtorrent/issues/223) + from/to regular PeerTube clients. * The add-on doesn't delete the downloaded files at the moment. So, it may fill up your disk. -# Requirements +# Installation and requirements -* Kodi 17 (Krypton) or above -* [libtorrent](https://libtorrent.org/) python bindings must be installed on - your machine (on Debian type `apt install python-libtorrent` as root). +Please read the +[wiki](https://framagit.org/StCyr/plugin.video.peertube/-/wikis/home) +for more information. diff --git a/addon.xml b/addon.xml index 80722e2..bde6cf2 100644 --- a/addon.xml +++ b/addon.xml @@ -1,5 +1,5 @@ - + @@ -19,16 +19,16 @@ https://joinpeertube.org https://framagit.org/StCyr/plugin.video.peertube - -0.3.2 -Bug fixes and improvements -Fixes: - - the search filter 'all-local' was selected by default which resulted in errors + 1.0.0 + +Important note: if you are migrating from a version older than 1.x.x, ensure the URL of your preferred instance is not prefixed with "https://" (you may reset the add-on settings to default to use a valid initial value). + +New features: +* Provide an external API requiring only the instance and the id of the video +* Guide the user when libtorrent cannot be imported + Improvements: - - Replace urllib with requests to simplify the code - - Handle better the errors when sending requests to the PeerTube instance - - Create a logging function to improve maintainability - - Warn the user that the 'all-local' filter requires admin privileges +* Speed up the listing of videos when searching or browsing (the resolution and the full URL are now defined only when the user plays a video) icon.png diff --git a/fanart.jpg b/fanart.jpg deleted file mode 100644 index 4f6f80790d90f5bd5268ab23e24d0e4aa2e186ca..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 21954 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