summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxime “pep” Buquet <pep@bouah.net>2020-02-17 03:03:47 +0100
committerMaxime “pep” Buquet <pep@bouah.net>2020-02-17 03:03:47 +0100
commit66323e32f0c3de16db476f6f15421169948173c2 (patch)
tree016e3d2dec435ceefc941883ceea3bd863de6d8f
parent3577f8877c099229828c426e0cd1e3706bf663b4 (diff)
downloadpoezio-66323e32f0c3de16db476f6f15421169948173c2.tar.gz
poezio-66323e32f0c3de16db476f6f15421169948173c2.tar.bz2
poezio-66323e32f0c3de16db476f6f15421169948173c2.tar.xz
poezio-66323e32f0c3de16db476f6f15421169948173c2.zip
plugins: doc for external plugins/entry points
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
-rw-r--r--doc/source/dev/plugin.rst20
1 files changed, 20 insertions, 0 deletions
diff --git a/doc/source/dev/plugin.rst b/doc/source/dev/plugin.rst
index 7a63ed8f..5ffe7ef5 100644
--- a/doc/source/dev/plugin.rst
+++ b/doc/source/dev/plugin.rst
@@ -1,6 +1,26 @@
Plugin API documentation
========================
+External plugins
+----------------
+
+It is possible to create external plugins easily using `setuptools'
+entry_point
+<https://setuptools.readthedocs.io/en/latest/setuptools.html#dynamic-discovery-of-services-and-plugins>`_
+feature. You can register your plugin against the ``poezio_plugins`` entry
+group with the following snippet in your project ``setup.py``:
+
+.. code-block:: python
+
+ setup(
+ ..
+ packages=['yourmodule'],
+ entry_points{'poezio_plugins': 'yourplugin = yourmodule'},
+ ..
+ )
+
+The plugin will then be available as ``yourplugin`` at runtime.
+
BasePlugin
----------