[Docs] Reorganise and add sections from wiki

- Change the layout and contents of docs to be better organised and
  follow ideas from: https://www.divio.com/blog/documentation/
- Use markdown for non-technical documents to speed up writing.
- Added new sections and imported documents from Trac wiki.

Build fixes:

- Added a patch to fix recommonmark 0.4 and doc referencing:
    https://github.com/rtfd/recommonmark/issues/93
- Set docs build in tox to Py2.7 since there are problems with autodoc
  mocking multiple inheritance on Python 3 resulting in metaclass errors.
- Supressed warning about `modules.rst` not in the toctree by creating
  a static `modules.rst` with `:orphan:` file directive and add to git.
  Also skip creating this toc file with sphinx-apidoc in setup and tox.
- Simplified finding exported RPC and JSON API methods by adding an
  autodoc custom class directive. Removed unneeded __rpcapi.py.
This commit is contained in:
Calum Lind
2018-11-01 17:38:10 +00:00
parent 9dcd90056d
commit 82ecf8a416
31 changed files with 728 additions and 101 deletions
+4
View File
@@ -0,0 +1,4 @@
# Packaging documentation
- [Release checklist](release.md)
- [Launchpad recipe](launchpad-recipe.md)
@@ -0,0 +1,43 @@
# Launchpad recipe
The launchpad build recipes are for build from source automatically to provide
ubuntu packages. They are used to create daily builds of a git repo branch.
Note these don't have the same control as a creating a publishing to PPA.
Main reference: https://help.launchpad.net/Packaging/SourceBuilds/Recipes
## Deluge launchpad build recipes
Recipe configuration: https://code.launchpad.net/~deluge-team/+recipes
An example for building the develop branch:
# git-build-recipe format 0.4 deb-version 2.0.0.dev{revno}+{git-commit}+{time}
lp:deluge develop
nest-part packaging lp:~calumlind/+git/lp_deluge_deb debian debian develop
There are two parts, first to get the source code branch and then the `debian`
files for building the package.
## Testing and building locally
Create a `deluge.recipe` file with the contents from launchpad and create the
build files with `git-build-recipe`:
git-build-recipe --allow-fallback-to-native deluge.recipe lp_build
Setup [pbuilder] and build the deluge package:
sudo pbuilder build lp_build/deluge*.dsc
Alternatively to build using local files with [pdebuild]:
cd lp_build/deluge/deluge
pdebuild
This will allow modifying the `debian` files to test changes to `rules` or
`control`.
[pbuilder]: https://wiki.ubuntu.com/PbuilderHowto
[pdebuild]: https://wiki.ubuntu.com/PbuilderHowto#pdebuild
+37
View File
@@ -0,0 +1,37 @@
# Release Checklist
## Pre-Release
- 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`
- Package for OSs, Ubuntu, Windows, OSX.
- Upload source tarballs and packages to ftp.
(_Ensure file permissions are global readable:_ `0644`)
## Post-Release
- Update with version, hashes and release notes:
- ReleaseNotes (Create new version page and add link to this page)
- Forum announcement
- IRC welcome message
- Website `index.php` and `version` files
- [Wikipedia](http://en.wikipedia.org/wiki/Deluge_%28software%29)
- Trac close the milestone and add new version for tickets.
- Ensure all stable branch commits are also applied to development branch.