Deprecated


NameDeprecated JSON
Version 1.2.15 PyPI version JSON
download
home_pagehttps://github.com/laurent-laporte-pro/deprecated
SummaryPython @deprecated decorator to deprecate old python classes, functions or methods.
upload_time2024-11-15 14:42:06
maintainerNone
docs_urlNone
authorLaurent LAPORTE
requires_python!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7
licenseMIT
keywords deprecate deprecated deprecation warning warn decorator
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            
Deprecated Library
------------------

Deprecated is Easy to Use
`````````````````````````

If you need to mark a function or a method as deprecated,
you can use the ``@deprecated`` decorator:

Save in a hello.py:

.. code:: python

    from deprecated import deprecated


    @deprecated(version='1.2.1', reason="You should use another function")
    def some_old_function(x, y):
        return x + y


    class SomeClass(object):
        @deprecated(version='1.3.0', reason="This method is deprecated")
        def some_old_method(self, x, y):
            return x + y


    some_old_function(12, 34)
    obj = SomeClass()
    obj.some_old_method(5, 8)


And Easy to Setup
`````````````````

And run it:

.. code:: bash

    $ pip install Deprecated
    $ python hello.py
    hello.py:15: DeprecationWarning: Call to deprecated function (or staticmethod) some_old_function.
    (You should use another function) -- Deprecated since version 1.2.0.
      some_old_function(12, 34)
    hello.py:17: DeprecationWarning: Call to deprecated method some_old_method.
    (This method is deprecated) -- Deprecated since version 1.3.0.
      obj.some_old_method(5, 8)


You can document your code
``````````````````````````

Have you ever wonder how to document that some functions, classes, methods, etc. are deprecated?
This is now possible with the integrated Sphinx directives:

For instance, in hello_sphinx.py:

.. code:: python

    from deprecated.sphinx import deprecated
    from deprecated.sphinx import versionadded
    from deprecated.sphinx import versionchanged


    @versionadded(version='1.0', reason="This function is new")
    def function_one():
        '''This is the function one'''


    @versionchanged(version='1.0', reason="This function is modified")
    def function_two():
        '''This is the function two'''


    @deprecated(version='1.0', reason="This function will be removed soon")
    def function_three():
        '''This is the function three'''


    function_one()
    function_two()
    function_three()  # warns

    help(function_one)
    help(function_two)
    help(function_three)


The result it immediate
```````````````````````

Run it:

.. code:: bash

    $ python hello_sphinx.py

    hello_sphinx.py:23: DeprecationWarning: Call to deprecated function (or staticmethod) function_three.
    (This function will be removed soon) -- Deprecated since version 1.0.
      function_three()  # warns

    Help on function function_one in module __main__:

    function_one()
        This is the function one

        .. versionadded:: 1.0
           This function is new

    Help on function function_two in module __main__:

    function_two()
        This is the function two

        .. versionchanged:: 1.0
           This function is modified

    Help on function function_three in module __main__:

    function_three()
        This is the function three

        .. deprecated:: 1.0
           This function will be removed soon


Links
`````

* `Python package index (PyPi) <https://pypi.org/project/Deprecated/>`_
* `GitHub website <https://github.com/laurent-laporte-pro/deprecated>`_
* `Read The Docs <https://readthedocs.org/projects/deprecated>`_
* `EBook on Lulu.com <http://www.lulu.com/commerce/index.php?fBuyContent=21305117>`_
* `StackOverFlow Q&A <https://stackoverflow.com/a/40301488/1513933>`_
* `Development version
  <https://github.com/laurent-laporte-pro/deprecated/zipball/master#egg=Deprecated-dev>`_


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/laurent-laporte-pro/deprecated",
    "name": "Deprecated",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7",
    "maintainer_email": null,
    "keywords": "deprecate, deprecated, deprecation, warning, warn, decorator",
    "author": "Laurent LAPORTE",
    "author_email": "laurent.laporte.pro@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/2e/a3/53e7d78a6850ffdd394d7048a31a6f14e44900adedf190f9a165f6b69439/deprecated-1.2.15.tar.gz",
    "platform": "any",
    "description": "\nDeprecated Library\n------------------\n\nDeprecated is Easy to Use\n`````````````````````````\n\nIf you need to mark a function or a method as deprecated,\nyou can use the ``@deprecated`` decorator:\n\nSave in a hello.py:\n\n.. code:: python\n\n    from deprecated import deprecated\n\n\n    @deprecated(version='1.2.1', reason=\"You should use another function\")\n    def some_old_function(x, y):\n        return x + y\n\n\n    class SomeClass(object):\n        @deprecated(version='1.3.0', reason=\"This method is deprecated\")\n        def some_old_method(self, x, y):\n            return x + y\n\n\n    some_old_function(12, 34)\n    obj = SomeClass()\n    obj.some_old_method(5, 8)\n\n\nAnd Easy to Setup\n`````````````````\n\nAnd run it:\n\n.. code:: bash\n\n    $ pip install Deprecated\n    $ python hello.py\n    hello.py:15: DeprecationWarning: Call to deprecated function (or staticmethod) some_old_function.\n    (You should use another function) -- Deprecated since version 1.2.0.\n      some_old_function(12, 34)\n    hello.py:17: DeprecationWarning: Call to deprecated method some_old_method.\n    (This method is deprecated) -- Deprecated since version 1.3.0.\n      obj.some_old_method(5, 8)\n\n\nYou can document your code\n``````````````````````````\n\nHave you ever wonder how to document that some functions, classes, methods, etc. are deprecated?\nThis is now possible with the integrated Sphinx directives:\n\nFor instance, in hello_sphinx.py:\n\n.. code:: python\n\n    from deprecated.sphinx import deprecated\n    from deprecated.sphinx import versionadded\n    from deprecated.sphinx import versionchanged\n\n\n    @versionadded(version='1.0', reason=\"This function is new\")\n    def function_one():\n        '''This is the function one'''\n\n\n    @versionchanged(version='1.0', reason=\"This function is modified\")\n    def function_two():\n        '''This is the function two'''\n\n\n    @deprecated(version='1.0', reason=\"This function will be removed soon\")\n    def function_three():\n        '''This is the function three'''\n\n\n    function_one()\n    function_two()\n    function_three()  # warns\n\n    help(function_one)\n    help(function_two)\n    help(function_three)\n\n\nThe result it immediate\n```````````````````````\n\nRun it:\n\n.. code:: bash\n\n    $ python hello_sphinx.py\n\n    hello_sphinx.py:23: DeprecationWarning: Call to deprecated function (or staticmethod) function_three.\n    (This function will be removed soon) -- Deprecated since version 1.0.\n      function_three()  # warns\n\n    Help on function function_one in module __main__:\n\n    function_one()\n        This is the function one\n\n        .. versionadded:: 1.0\n           This function is new\n\n    Help on function function_two in module __main__:\n\n    function_two()\n        This is the function two\n\n        .. versionchanged:: 1.0\n           This function is modified\n\n    Help on function function_three in module __main__:\n\n    function_three()\n        This is the function three\n\n        .. deprecated:: 1.0\n           This function will be removed soon\n\n\nLinks\n`````\n\n* `Python package index (PyPi) <https://pypi.org/project/Deprecated/>`_\n* `GitHub website <https://github.com/laurent-laporte-pro/deprecated>`_\n* `Read The Docs <https://readthedocs.org/projects/deprecated>`_\n* `EBook on Lulu.com <http://www.lulu.com/commerce/index.php?fBuyContent=21305117>`_\n* `StackOverFlow Q&A <https://stackoverflow.com/a/40301488/1513933>`_\n* `Development version\n  <https://github.com/laurent-laporte-pro/deprecated/zipball/master#egg=Deprecated-dev>`_\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Python @deprecated decorator to deprecate old python classes, functions or methods.",
    "version": "1.2.15",
    "project_urls": {
        "Bug Tracker": "https://github.com/laurent-laporte-pro/deprecated/issues",
        "Documentation": "https://deprecated.readthedocs.io/en/latest/",
        "Homepage": "https://github.com/laurent-laporte-pro/deprecated",
        "Source": "https://github.com/laurent-laporte-pro/deprecated"
    },
    "split_keywords": [
        "deprecate",
        " deprecated",
        " deprecation",
        " warning",
        " warn",
        " decorator"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1d8fc7f227eb42cfeaddce3eb0c96c60cbca37797fa7b34f8e1aeadf6c5c0983",
                "md5": "af469d4c09de3a05346defeadb015ae3",
                "sha256": "353bc4a8ac4bfc96800ddab349d89c25dec1079f65fd53acdcc1e0b975b21320"
            },
            "downloads": -1,
            "filename": "Deprecated-1.2.15-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "af469d4c09de3a05346defeadb015ae3",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7",
            "size": 9941,
            "upload_time": "2024-11-15T14:42:03",
            "upload_time_iso_8601": "2024-11-15T14:42:03.315783Z",
            "url": "https://files.pythonhosted.org/packages/1d/8f/c7f227eb42cfeaddce3eb0c96c60cbca37797fa7b34f8e1aeadf6c5c0983/Deprecated-1.2.15-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2ea353e7d78a6850ffdd394d7048a31a6f14e44900adedf190f9a165f6b69439",
                "md5": "432cf87ac5dd772b62f6f0ed7a18ca57",
                "sha256": "683e561a90de76239796e6b6feac66b99030d2dd3fcf61ef996330f14bbb9b0d"
            },
            "downloads": -1,
            "filename": "deprecated-1.2.15.tar.gz",
            "has_sig": false,
            "md5_digest": "432cf87ac5dd772b62f6f0ed7a18ca57",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7",
            "size": 2977612,
            "upload_time": "2024-11-15T14:42:06",
            "upload_time_iso_8601": "2024-11-15T14:42:06.390141Z",
            "url": "https://files.pythonhosted.org/packages/2e/a3/53e7d78a6850ffdd394d7048a31a6f14e44900adedf190f9a165f6b69439/deprecated-1.2.15.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-11-15 14:42:06",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "laurent-laporte-pro",
    "github_project": "deprecated",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "tox": true,
    "lcname": "deprecated"
}
        
Elapsed time: 0.81096s