From dac93b9840300ef96499354ddee0ca4e4a2dacaa Mon Sep 17 00:00:00 2001 From: Daniel Sheppard Date: Thu, 17 Dec 2020 16:11:16 -0600 Subject: [PATCH] Fixes #5254 - Require plugin authors to set zip_safe=False --- docs/plugins/development.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docs/plugins/development.md b/docs/plugins/development.md index d65e7d830..f008da2fb 100644 --- a/docs/plugins/development.md +++ b/docs/plugins/development.md @@ -63,11 +63,15 @@ setup( install_requires=[], packages=find_packages(), include_package_data=True, + zip_safe=False, ) ``` Many of these are self-explanatory, but for more information, see the [setuptools documentation](https://setuptools.readthedocs.io/en/latest/setuptools.html). +!!! note + `zip_safe=False` is **required** as the current plugin iteration is not zip safe due to upstream python issue [issue19699](https://bugs.python.org/issue19699) + ### Define a PluginConfig The `PluginConfig` class is a NetBox-specific wrapper around Django's built-in [`AppConfig`](https://docs.djangoproject.com/en/stable/ref/applications/) class. It is used to declare NetBox plugin functionality within a Python package. Each plugin should provide its own subclass, defining its name, metadata, and default and required configuration parameters. An example is below: