stevedore


Namestevedore JSON
Version 5.3.0 PyPI version JSON
download
home_pagehttps://docs.openstack.org/stevedore/latest/
SummaryManage dynamic plugins for Python applications
upload_time2024-08-22 13:45:52
maintainerNone
docs_urlNone
authorOpenStack
requires_python>=3.8
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ===========================================================
stevedore -- Manage dynamic plugins for Python applications
===========================================================

.. image:: https://img.shields.io/pypi/v/stevedore.svg
    :target: https://pypi.org/project/stevedore/
    :alt: Latest Version

.. image:: https://governance.openstack.org/tc/badges/stevedore.svg
    :target: https://governance.openstack.org/tc/reference/tags/index.html

Python makes loading code dynamically easy, allowing you to configure
and extend your application by discovering and loading extensions
("*plugins*") at runtime. Many applications implement their own
library for doing this, using ``__import__`` or ``importlib``.
stevedore avoids creating yet another extension
mechanism by building on top of `setuptools entry points`_. The code
for managing entry points tends to be repetitive, though, so stevedore
provides manager classes for implementing common patterns for using
dynamically loaded extensions.

.. _setuptools entry points: http://setuptools.readthedocs.io/en/latest/pkg_resources.html?#entry-points

* Free software: Apache license
* Documentation: https://docs.openstack.org/stevedore/latest
* Source: https://opendev.org/openstack/stevedore
* Bugs: https://bugs.launchpad.net/python-stevedore




            

Raw data

            {
    "_id": null,
    "home_page": "https://docs.openstack.org/stevedore/latest/",
    "name": "stevedore",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": null,
    "keywords": null,
    "author": "OpenStack",
    "author_email": "openstack-discuss@lists.openstack.org",
    "download_url": "https://files.pythonhosted.org/packages/c4/59/f8aefa21020054f553bf7e3b405caec7f8d1f432d9cb47e34aaa244d8d03/stevedore-5.3.0.tar.gz",
    "platform": null,
    "description": "===========================================================\nstevedore -- Manage dynamic plugins for Python applications\n===========================================================\n\n.. image:: https://img.shields.io/pypi/v/stevedore.svg\n    :target: https://pypi.org/project/stevedore/\n    :alt: Latest Version\n\n.. image:: https://governance.openstack.org/tc/badges/stevedore.svg\n    :target: https://governance.openstack.org/tc/reference/tags/index.html\n\nPython makes loading code dynamically easy, allowing you to configure\nand extend your application by discovering and loading extensions\n(\"*plugins*\") at runtime. Many applications implement their own\nlibrary for doing this, using ``__import__`` or ``importlib``.\nstevedore avoids creating yet another extension\nmechanism by building on top of `setuptools entry points`_. The code\nfor managing entry points tends to be repetitive, though, so stevedore\nprovides manager classes for implementing common patterns for using\ndynamically loaded extensions.\n\n.. _setuptools entry points: http://setuptools.readthedocs.io/en/latest/pkg_resources.html?#entry-points\n\n* Free software: Apache license\n* Documentation: https://docs.openstack.org/stevedore/latest\n* Source: https://opendev.org/openstack/stevedore\n* Bugs: https://bugs.launchpad.net/python-stevedore\n\n\n\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Manage dynamic plugins for Python applications",
    "version": "5.3.0",
    "project_urls": {
        "Homepage": "https://docs.openstack.org/stevedore/latest/"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ec5070762bdb23f6c2b746b90661f461d33c4913a22a46bb5265b10947e85ffb",
                "md5": "796eb30a5fb7f3007f8c827d32d16776",
                "sha256": "1efd34ca08f474dad08d9b19e934a22c68bb6fe416926479ba29e5013bcc8f78"
            },
            "downloads": -1,
            "filename": "stevedore-5.3.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "796eb30a5fb7f3007f8c827d32d16776",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 49661,
            "upload_time": "2024-08-22T13:45:50",
            "upload_time_iso_8601": "2024-08-22T13:45:50.804836Z",
            "url": "https://files.pythonhosted.org/packages/ec/50/70762bdb23f6c2b746b90661f461d33c4913a22a46bb5265b10947e85ffb/stevedore-5.3.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c459f8aefa21020054f553bf7e3b405caec7f8d1f432d9cb47e34aaa244d8d03",
                "md5": "f9117028291767cb5dfe665e3845c5ac",
                "sha256": "9a64265f4060312828151c204efbe9b7a9852a0d9228756344dbc7e4023e375a"
            },
            "downloads": -1,
            "filename": "stevedore-5.3.0.tar.gz",
            "has_sig": false,
            "md5_digest": "f9117028291767cb5dfe665e3845c5ac",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 513768,
            "upload_time": "2024-08-22T13:45:52",
            "upload_time_iso_8601": "2024-08-22T13:45:52.001989Z",
            "url": "https://files.pythonhosted.org/packages/c4/59/f8aefa21020054f553bf7e3b405caec7f8d1f432d9cb47e34aaa244d8d03/stevedore-5.3.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-22 13:45:52",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "stevedore"
}
        
Elapsed time: 0.72201s