From d4185505d1845c59881518b8699868a867fdbe75 Mon Sep 17 00:00:00 2001 From: Calum Lind Date: Wed, 5 Jun 2019 23:32:37 +0100 Subject: [PATCH] [Docs] Cleanup changelog and docs --- CHANGELOG.md | 20 +++++---- DEPENDS.md | 2 +- deluge/ui/gtk3/aboutdialog.py | 2 +- docs/man/deluge-console.1 | 2 +- docs/man/deluge-gtk.1 | 2 +- docs/man/deluge-web.1 | 2 +- docs/man/deluge.1 | 2 +- docs/man/deluged.1 | 2 +- docs/source/changelog.md | 1 + docs/source/conf.py | 4 ++ docs/source/devguide/how-to/index.md | 7 ++- docs/source/devguide/index.md | 4 +- docs/source/devguide/packaging/release.md | 21 ++++----- docs/source/how-to/index.md | 5 +++ docs/source/how-to/set-mime-type.md | 6 +-- docs/source/index.rst | 8 ++-- docs/source/intro/01-install.md | 52 ++++++++++++++--------- docs/source/intro/index.md | 7 ++- tox.ini | 4 +- 19 files changed, 91 insertions(+), 62 deletions(-) create mode 120000 docs/source/changelog.md create mode 100644 docs/source/how-to/index.md diff --git a/CHANGELOG.md b/CHANGELOG.md index ab69d46cd..333a4b15b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,12 @@ -# Deluge Changelog +# Changelog -## Deluge 2.0.0 - (In Development) +## 2.0.0 (In Development) + +### Codebase + +- Ported to Python 3 + +### Core - Improved Logging - Removed the AutoAdd feature on the core. It's now handled with the AutoAdd @@ -8,14 +14,7 @@ now, it even supports multiple users perfectly. - Authentication/Permission exceptions are now sent to clients and recreated there to allow acting upon them. -- Enforced the use of the "deluge.plugins" namespace to reduce package - names clashing beetween regular packages and deluge plugins. -- Fix potential for host_id collision when creating hostlist entries. -- Add Option To Specify Outgoing Connection Interface. - Updated SSL/TLS Protocol parameters for better security. - -### Core - - Make the distinction between adding to the session new unmanaged torrents and torrents loaded from state. This will break backwards compatability. - Pass a copy of an event instead of passing the event arguments to the @@ -29,9 +28,12 @@ which sould then ask the username/password to the user. - Implemented sequential downloads. - Provide information about a torrent's pieces states +- Add Option To Specify Outgoing Connection Interface. +- Fix potential for host_id collision when creating hostlist entries. ### GtkUI +- Ported to GTK3 (3rd-party plugins will need updated). - Allow changing ownership of torrents. - Host entries in the Connection Manager UI are now editable. - Implemented sequential downloads UI handling. diff --git a/DEPENDS.md b/DEPENDS.md index 4895b0c1b..8f39eeb2d 100644 --- a/DEPENDS.md +++ b/DEPENDS.md @@ -7,7 +7,7 @@ All modules will require the [common](#common) section dependencies. ## Prerequisite -- [Python] _>= 2.7.7 or >= 3.5_ +- [Python] _>= 3.5_ ## Build diff --git a/deluge/ui/gtk3/aboutdialog.py b/deluge/ui/gtk3/aboutdialog.py index 2c4800ef7..9974a13de 100644 --- a/deluge/ui/gtk3/aboutdialog.py +++ b/deluge/ui/gtk3/aboutdialog.py @@ -38,7 +38,7 @@ class AboutDialog(object): self.about.set_copyright( _('Copyright %(year_start)s-%(year_end)s Deluge Team') - % {'year_start': 2007, 'year_end': 2015} + % {'year_start': 2007, 'year_end': 2019} ) self.about.set_comments( _('A peer-to-peer file sharing program\nutilizing the BitTorrent protocol.') diff --git a/docs/man/deluge-console.1 b/docs/man/deluge-console.1 index 73ce15896..75ab1f0bf 100644 --- a/docs/man/deluge-console.1 +++ b/docs/man/deluge-console.1 @@ -1,4 +1,4 @@ -.TH DELUGE-CONSOLE 1 "January 2017" "2.0-dev" +.TH DELUGE-CONSOLE 1 .SH NAME deluge-console - A BitTorrent client console interface diff --git a/docs/man/deluge-gtk.1 b/docs/man/deluge-gtk.1 index e1a72abec..a27b0c913 100644 --- a/docs/man/deluge-gtk.1 +++ b/docs/man/deluge-gtk.1 @@ -1,4 +1,4 @@ -.TH DELUGE-GTK 1 "January 2017" "2.0-dev" +.TH DELUGE-GTK 1 .SH NAME deluge-gtk - A BitTorrent client Gtk interface diff --git a/docs/man/deluge-web.1 b/docs/man/deluge-web.1 index c7d8bcd46..f9f83aee8 100644 --- a/docs/man/deluge-web.1 +++ b/docs/man/deluge-web.1 @@ -1,4 +1,4 @@ -.TH DELUGE-WEB 1 "January 2017" "2.0-dev" +.TH DELUGE-WEB 1 .SH NAME deluge-web - A BitTorrent client web interface diff --git a/docs/man/deluge.1 b/docs/man/deluge.1 index c0acae088..19aef4f98 100644 --- a/docs/man/deluge.1 +++ b/docs/man/deluge.1 @@ -1,4 +1,4 @@ -.TH DELUGE 1 "January 2017" "2.0-dev" +.TH DELUGE 1 .SH NAME deluge - A BitTorrent client diff --git a/docs/man/deluged.1 b/docs/man/deluged.1 index 2e1c17d04..a1877a4b9 100644 --- a/docs/man/deluged.1 +++ b/docs/man/deluged.1 @@ -1,4 +1,4 @@ -.TH DELUGED 1 ""January 2099" "2.0-dev" +.TH DELUGED 1 .SH NAME deluged - A BitTorrent client daemon diff --git a/docs/source/changelog.md b/docs/source/changelog.md new file mode 120000 index 000000000..699cc9e7b --- /dev/null +++ b/docs/source/changelog.md @@ -0,0 +1 @@ +../../CHANGELOG.md \ No newline at end of file diff --git a/docs/source/conf.py b/docs/source/conf.py index 44b0f3f5d..6db6da02a 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -114,6 +114,10 @@ html_theme = 'sphinx_rtd_theme' # given in html_static_path. # html_style = 'default.css' +# Add font-mfizz for icons. +html_css_files = [ + 'https://cdnjs.cloudflare.com/ajax/libs/font-mfizz/2.4.1/font-mfizz.min.css' +] # The name for this set of Sphinx documents. If None, it defaults to # " v documentation". # html_title = None diff --git a/docs/source/devguide/how-to/index.md b/docs/source/devguide/how-to/index.md index 6260d3ccc..93a43fce1 100644 --- a/docs/source/devguide/how-to/index.md +++ b/docs/source/devguide/how-to/index.md @@ -1,7 +1,6 @@ # How-to guides -This is a collection of guides for specific issues or cover more details than -the tutorials. +A collection of guides for specific issues or to cover more detail than the tutorials. ## Web JSON-RPC @@ -9,4 +8,8 @@ the tutorials. ## Plugins + + - [Update 1.3 plugin for 2.0](update-1.3-plugin.md) diff --git a/docs/source/devguide/index.md b/docs/source/devguide/index.md index 136993ade..e69db080b 100644 --- a/docs/source/devguide/index.md +++ b/docs/source/devguide/index.md @@ -1,7 +1,7 @@ -# Deluge Development Guide +# Development guide This is a guide to help with developing Deluge. - [Tutorials](tutorials/index.md) -- [How-to](how-to/index.md) +- [How-to guides](how-to/index.md) - [Packaging](packaging/index.md) diff --git a/docs/source/devguide/packaging/release.md b/docs/source/devguide/packaging/release.md index 4ecb93872..d83f02b20 100644 --- a/docs/source/devguide/packaging/release.md +++ b/docs/source/devguide/packaging/release.md @@ -5,24 +5,21 @@ - Update [translation](../contributing/translations.md) `po` files from [Launchpad](https://translations.launchpad.net/deluge) account. - Changelog is updated with relevant commits and release date is added. -- Version number increment: - - setup.py - - man pages - - osx/Info.plist - - Version and month `sed` commands: - - `git grep -l '2\.0\.0' | grep -v CHANGELOG.md | xargs sed -i 's/2\.0\.0/2\.0\.1/g'` - - `git grep -l 'October' docs/man | xargs sed -i 's/October/November/g'` -- Increment copyright year: - - osx/Info.plist - Tag release in git and push upstream. - e.g. `git tag -a deluge-2.0.0 -m "Deluge 2.0.0 Release"` ## Release -- Run `make_release` script on extracted tarball e.g. - - `make_release deluge-2.0.0` +- Create source and wheel distributions: + + python setup.py sdist bdist_wheel + +- Upload to PyPi: + + twine upload dist/deluge-2.0.0.tar.xz dist/deluge-2.0.0-py3-none-any.whl + - Package for OSs, Ubuntu, Windows, OSX. -- Upload source tarballs and packages to ftp. +- Upload source tarballs and packages. (_Ensure file permissions are global readable:_ `0644`) ## Post-Release diff --git a/docs/source/how-to/index.md b/docs/source/how-to/index.md new file mode 100644 index 000000000..289f028f2 --- /dev/null +++ b/docs/source/how-to/index.md @@ -0,0 +1,5 @@ +# How-to guides + +A collection of guides covering common issues that might be encountered using Deluge. + +- [Set default torrent application](set-mime-type.md) diff --git a/docs/source/how-to/set-mime-type.md b/docs/source/how-to/set-mime-type.md index fb3edfa68..7d5ebd8bd 100644 --- a/docs/source/how-to/set-mime-type.md +++ b/docs/source/how-to/set-mime-type.md @@ -10,15 +10,15 @@ gio mime x-scheme-handler/magnet gio mime x-scheme-handler/magnet deluge.desktop gio mime application/x-bittorrent deluge.desktop -## Troubleshoot +## Troubleshooting update-mime-database ~/.local/share/mime update-desktop-database ~/.local/share/applications -# XDG +### XDG Check xdg-mime query default x-scheme-handler/magnet -References: +## References https://help.gnome.org/admin/system-admin-guide/stable/mime-types-custom-user.html.en diff --git a/docs/source/index.rst b/docs/source/index.rst index da1fdfa8a..5b68effe4 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -1,4 +1,4 @@ -Deluge Documentation +Deluge documentation ==================== Contents @@ -7,9 +7,11 @@ Contents .. toctree:: :maxdepth: 2 - Getting Started + Getting started + How-to guides + Changelog Contributing - Developer Guide + Developer guide Reference * :ref:`genindex` diff --git a/docs/source/intro/01-install.md b/docs/source/intro/01-install.md index a60380f91..28941796f 100644 --- a/docs/source/intro/01-install.md +++ b/docs/source/intro/01-install.md @@ -1,43 +1,52 @@ # Installing Deluge -These are the instructions for installer Deluge. They are a work-in-progress and feel -free to make suggestions for improvement. +These are the instructions for installing Deluge. Consider them a work-in-progress and +feel free to make suggestions for improvement. -## Ubuntu +## Ubuntu ### PPA -https://launchpad.net/~deluge-team/+archive/ubuntu/develop/ +Until the stable PPA is updated, the development version of Deluge can be used: -### PyPi + sudo add-apt-repository -u ppa:deluge-team/develop + sudo apt install deluge -Deluge requires the following system installed packages: +### PyPi + +To install from Python PyPi, Deluge requires the following system installed packages: sudo apt install python3-pip python3-libtorrent python3-gi python3-gi-cairo gir1.2-gtk-3.0 gir1.2-appindicator3 Install with pip: - pip install --user deluge + pip install deluge -## Windows +## Windows There is no installer package currently for Windows, but can try Deluge as follows. -1. Install Python 3.6. -2. Download and extract the `gvsbuild`. -3. Open a terminal. -4. Add directory to PATH: `set PATH=C:\gvsbuild\release;%PATH%` -5. Install Python wheels from gvsbuild: - pip install C:\gvsbuild\release\python\pycairo-1.17.1-cp36-cp36m-win_amd64.whl - pip install C:\gvsbuild\release\python\PyGObject-3.28.3-py3.6-win-amd64.whl -6. Install Deluge - pip install deluge deluge-libtorrent +1. Download and install [Python 3.6]. +2. Download and extract [gvsbuild] tarball to `C:\`. +3. Open a terminal. +4. Run this command to add `gvsbuild` directory to `PATH`: -## macOS + set PATH=C:\gvsbuild\release;%PATH% + +5. Install `gvsbuild` Python wheels: + + pip install C:\gvsbuild\release\python\pycairo-1.18.0-cp36-cp36m-win_amd64.whl + pip install C:\gvsbuild\release\python\PyGObject-3.32.0-cp36-cp36m-win_amd64.whl + +6. Install Deluge: + + pip install deluge deluge-libtorrent + +## macOS There is no `.app` package currently for macOS, but can try Deluge with homebrew. -1. Install [Homebrew](https://brew.sh/) +1. Install [Homebrew] 2. Open a terminal. 3. Run the following to install required packages: @@ -51,3 +60,8 @@ There is no `.app` package currently for macOS, but can try Deluge with homebrew 5. Install Deluge: pip3 install deluge + +[develop ppa]: https://launchpad.net/~deluge-team/+archive/ubuntu/develop/ +[homebrew]: https://brew.sh/ +[python 3.6]: https://www.python.org/downloads/release/python-368/ +[gvsbuild]: https://ci.appveyor.com/api/buildjobs/b0y2sttcq3t1071q/artifacts/gvsbuild-vs14-x64.tar.gz diff --git a/docs/source/intro/index.md b/docs/source/intro/index.md index 32d51ea4e..8342cec1e 100644 --- a/docs/source/intro/index.md +++ b/docs/source/intro/index.md @@ -1,8 +1,11 @@ -# Getting Started with Deluge +# Getting started with Deluge This is a starting point if you are new to Deluge where we will walk you through getting up and running with our BitTorrent client. -1. [Installing Deluge](01-install.md) +- [1. Installing Deluge](01-install.md) + + diff --git a/tox.ini b/tox.ini index 6286578d6..ba71c0028 100644 --- a/tox.ini +++ b/tox.ini @@ -149,7 +149,6 @@ commands = [testenv:docs] # Exclude site-packages so local builds have a similar environment to ReadTheDocs. sitepackages = False -skip_install = True deps = {[basedocs]deps} commands = python setup.py clean_docs @@ -157,12 +156,11 @@ commands = [testenv:docscoverage] sitepackages = False -skip_install = True deps = {[basedocs]deps} pytest-cov commands = - sphinx-build -W -b coverage -d docs/build/doctrees docs/source docs/build/doccoverage + sphinx-build -b coverage -d docs/build/doctrees docs/source docs/build/doccoverage pytest --doctest-glob='*.rst' # ========================