This repository has been archived on 2022-08-04. You can view files and clone it, but cannot push or open issues or pull requests.
twtxt-registry-client/docs/contributing.rst

67 lines
2.3 KiB
ReStructuredText
Raw Normal View History

2019-10-02 05:40:03 +00:00
Contributing
============
Contributions to the project are greatly appreciated.
Bugs and suggestions
--------------------
You may `submit an issue`_ to GitLab to warn of any bugs, ask for new features,
or ask any questions that are not answered in this documentation.
When reporting a bug, do not forget to put in your version of Python and your
version of *twtxt-registry-client*. This will greatly help when
troubleshooting, as most errors often come from version incompatibilities.
Development
-----------
Setup
^^^^^
You will need a virtual envionment to work properly. `virtualenvwrapper`_ is
recommended::
git clone https://gitlab.com/Lucidiot/twtxt-registry-client
cd twtxt-registry-client
mkvirtualenv -a . twtxt-registry-client
pip install -e .[dev]
This will clone the repository, create a virtual environment named
``twtxt-registry-client``, then tell pip to let the package be editable
(``-e``). The ``[dev]`` suffix adds the extra requirements useful for
development.
Linting
^^^^^^^
The source code follows the PEP 8 code style and performs CI checks using the
``flake8`` tool. To perform the same checks locally, run ``flake8`` on the root
directory of this repository.
2019-10-05 13:09:17 +00:00
Static typing
^^^^^^^^^^^^^
This package makes use of the standard `typing`_ module to include PEP 484
type annotations. Type checking is done using the ``mypy`` tool and everything
in this package should be typed; this allows other packages to use *objtools*
and use static typing themselves or benefit from the enhanced documentations
or IDE warnings. To run type checking locally, run ``mypy`` on the root
directory of the repository.
2019-10-02 05:40:03 +00:00
Documentation
-------------
The documentation you are reading is generated by the `Sphinx`_ tool.
The text files that hold the documentation's contents are written in
`reStructuredText`_ and are available under the ``/docs`` folder of the
`GitLab repository`_.
They are also subject to linting using the ``doc8`` tool.
.. _submit an issue: https://gitlab.com/Lucidiot/twtxt-registry-client/issues/new
.. _virtualenvwrapper: https://virtualenvwrapper.readthedocs.io
.. _GitLab repository: https://gitlab.com/Lucidiot/twtxt-registry-client
2019-10-05 13:09:17 +00:00
.. _typing: https://docs.python.org/3/library/typing.html
2019-10-02 05:40:03 +00:00
.. _Sphinx: http://www.sphinx-doc.org/
.. _reStructuredText: http://www.sphinx-doc.org/en/master/usage/restructuredtext/basics.html