{ "info": { "author": "", "author_email": "\"Guido van Rossum, Jukka Lehtosalo, \u0141ukasz Langa, Michael Lee\" ", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved :: Python Software Foundation License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Topic :: Software Development" ], "description": "=================\nTyping Extensions\n=================\n\n.. image:: https://badges.gitter.im/python/typing.svg\n :alt: Chat at https://gitter.im/python/typing\n :target: https://gitter.im/python/typing?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge\n\nOverview\n========\n\nThe ``typing_extensions`` module serves two related purposes:\n\n- Enable use of new type system features on older Python versions. For example,\n ``typing.TypeGuard`` is new in Python 3.10, but ``typing_extensions`` allows\n users on Python 3.6 through 3.9 to use it too.\n- Enable experimentation with new type system PEPs before they are accepted and\n added to the ``typing`` module.\n \nNew features may be added to ``typing_extensions`` as soon as they are specified\nin a PEP that has been added to the `python/peps `_\nrepository. If the PEP is accepted, the feature will then be added to ``typing``\nfor the next CPython release. No typing PEP has been rejected so far, so we\nhaven't yet figured out how to deal with that possibility.\n\nStarting with version 4.0.0, ``typing_extensions`` uses\n`Semantic Versioning `_. The\nmajor version is incremented for all backwards-incompatible changes.\nTherefore, it's safe to depend\non ``typing_extensions`` like this: ``typing_extensions >=x.y, <(x+1)``,\nwhere ``x.y`` is the first version that includes all features you need.\n\n``typing_extensions`` supports Python versions 3.7 and higher. In the future,\nsupport for older Python versions will be dropped some time after that version\nreaches end of life.\n\nIncluded items\n==============\n\nThis module currently contains the following:\n\n- Experimental features\n\n - ``@dataclass_transform()`` (see PEP 681)\n\n- In ``typing`` since Python 3.11\n\n - ``assert_never``\n - ``assert_type``\n - ``clear_overloads``\n - ``get_overloads``\n - ``LiteralString`` (see PEP 675)\n - ``Never``\n - ``NotRequired`` (see PEP 655)\n - ``reveal_type``\n - ``Required`` (see PEP 655)\n - ``Self`` (see PEP 673)\n - ``TypeVarTuple`` (see PEP 646)\n - ``Unpack`` (see PEP 646)\n\n- In ``typing`` since Python 3.10\n \n - ``Concatenate`` (see PEP 612)\n - ``ParamSpec`` (see PEP 612)\n - ``ParamSpecArgs`` (see PEP 612)\n - ``ParamSpecKwargs`` (see PEP 612)\n - ``TypeAlias`` (see PEP 613)\n - ``TypeGuard`` (see PEP 647)\n - ``is_typeddict``\n\n- In ``typing`` since Python 3.9\n\n - ``Annotated`` (see PEP 593)\n\n- In ``typing`` since Python 3.8\n\n - ``final`` (see PEP 591)\n - ``Final`` (see PEP 591)\n - ``Literal`` (see PEP 586)\n - ``Protocol`` (see PEP 544)\n - ``runtime_checkable`` (see PEP 544)\n - ``TypedDict`` (see PEP 589)\n - ``get_origin`` (``typing_extensions`` provides this function only in Python 3.7+)\n - ``get_args`` (``typing_extensions`` provides this function only in Python 3.7+)\n\n- In ``typing`` since Python 3.7\n\n - ``OrderedDict``\n\n- In ``typing`` since Python 3.5 or 3.6 (see `the typing documentation\n `_ for details)\n\n - ``AsyncContextManager``\n - ``AsyncGenerator``\n - ``AsyncIterable``\n - ``AsyncIterator``\n - ``Awaitable``\n - ``ChainMap``\n - ``ClassVar`` (see PEP 526)\n - ``ContextManager``\n - ``Coroutine``\n - ``Counter``\n - ``DefaultDict``\n - ``Deque``\n - ``NewType``\n - ``NoReturn``\n - ``overload``\n - ``Text``\n - ``Type``\n - ``TYPE_CHECKING``\n - ``get_type_hints``\n\nOther Notes and Limitations\n===========================\n\nCertain objects were changed after they were added to ``typing``, and\n``typing_extensions`` provides a backport even on newer Python versions:\n\n- ``TypedDict`` does not store runtime information\n about which (if any) keys are non-required in Python 3.8, and does not\n honor the \"total\" keyword with old-style ``TypedDict()`` in Python\n 3.9.0 and 3.9.1.\n- ``get_origin`` and ``get_args`` lack support for ``Annotated`` in\n Python 3.8 and lack support for ``ParamSpecArgs`` and ``ParamSpecKwargs``\n in 3.9.\n- ``@final`` was changed in Python 3.11 to set the ``.__final__`` attribute.\n- ``@overload`` was changed in Python 3.11 to make function overloads\n introspectable at runtime. In order to access overloads with\n ``typing_extensions.get_overloads()``, you must use\n ``@typing_extensions.overload``.\n\nThere are a few types whose interface was modified between different\nversions of typing. For example, ``typing.Sequence`` was modified to\nsubclass ``typing.Reversible`` as of Python 3.5.3.\n\nThese changes are _not_ backported to prevent subtle compatibility\nissues when mixing the differing implementations of modified classes.\n\nCertain types have incorrect runtime behavior due to limitations of older\nversions of the typing module:\n\n- ``ParamSpec`` and ``Concatenate`` will not work with ``get_args`` and\n ``get_origin``. Certain PEP 612 special cases in user-defined\n ``Generic``\\ s are also not available.\n\nThese types are only guaranteed to work for static type checking.\n\nRunning tests\n=============\n\nTo run tests, navigate into the appropriate source directory and run\n``test_typing_extensions.py``.\n\n", "description_content_type": "text/x-rst", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "annotations,backport,checker,checking,function,hinting,hints,type,typechecking,typehinting,typehints,typing", "license": "", "maintainer": "", "maintainer_email": "", "name": "typing-extensions", "package_url": "https://pypi.org/project/typing-extensions/", "platform": null, "project_url": "https://pypi.org/project/typing-extensions/", "project_urls": { "Home": "https://github.com/python/typing/blob/master/typing_extensions/README.rst" }, "release_url": "https://pypi.org/project/typing-extensions/4.2.0/", "requires_dist": null, "requires_python": ">=3.7", "summary": "Backported and Experimental Type Hints for Python 3.7+", "version": "4.2.0", "yanked": false, "yanked_reason": null }, "last_serial": 13540123, "releases": { "3.10.0.0": [ { "comment_text": "", "digests": { "md5": "19760404c4469cae06305e99a3f484c2", "sha256": "0ac0f89795dd19de6b97debb0c6af1c70987fd80a2d62d1958f7e56fcc31b497" }, "downloads": -1, "filename": "typing_extensions-3.10.0.0-py2-none-any.whl", "has_sig": false, "md5_digest": "19760404c4469cae06305e99a3f484c2", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9291, "upload_time": "2021-05-01T18:03:16", "upload_time_iso_8601": "2021-05-01T18:03:16.560286Z", "url": "https://files.pythonhosted.org/packages/dd/3a/b2cfe97bec9e7c317af222f0cee66a37b68bfa52e743c675bdc881ce1aeb/typing_extensions-3.10.0.0-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "9fd2a2ae09511032a1d2ed40cd45713a", "sha256": "779383f6086d90c99ae41cf0ff39aac8a7937a9283ce0a414e5dd782f4c94a84" }, "downloads": -1, "filename": "typing_extensions-3.10.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "9fd2a2ae09511032a1d2ed40cd45713a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 26127, "upload_time": "2021-05-01T18:03:18", "upload_time_iso_8601": "2021-05-01T18:03:18.151721Z", "url": "https://files.pythonhosted.org/packages/2e/35/6c4fff5ab443b57116cb1aad46421fb719bed2825664e8fe77d66d99bcbc/typing_extensions-3.10.0.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "9b5b33ae64c94479fa0862cf8ae89d58", "sha256": "50b6f157849174217d0656f99dc82fe932884fb250826c18350e159ec6cdf342" }, "downloads": -1, "filename": "typing_extensions-3.10.0.0.tar.gz", "has_sig": false, "md5_digest": "9b5b33ae64c94479fa0862cf8ae89d58", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45509, "upload_time": "2021-05-01T18:03:19", "upload_time_iso_8601": "2021-05-01T18:03:19.646727Z", "url": "https://files.pythonhosted.org/packages/aa/55/62e2d4934c282a60b4243a950c9dbfa01ae7cac0e8d6c0b5315b87432c81/typing_extensions-3.10.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "3.10.0.1": [ { "comment_text": "", "digests": { "md5": "731477c84a2115a42e5c0dcfa95990f4", "sha256": "8bbffbd37fbeb9747a0241fdfde5ae99d4531ad1d1a41ccaea62100e15a5814c" }, "downloads": -1, "filename": "typing_extensions-3.10.0.1-py2-none-any.whl", "has_sig": false, "md5_digest": "731477c84a2115a42e5c0dcfa95990f4", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9291, "upload_time": "2021-08-29T15:53:51", "upload_time_iso_8601": "2021-08-29T15:53:51.580982Z", "url": "https://files.pythonhosted.org/packages/df/93/ef0c164cd0bab2937275daf59b4c284331332d12f9e21866a56f5beb8ded/typing_extensions-3.10.0.1-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c4c0d8cb7984a1b9c50e6a20c1a0cc9d", "sha256": "045dd532231acfa03628df5e0c66dba64e2cc8fc8b844538d4ad6d5dd6cb82dc" }, "downloads": -1, "filename": "typing_extensions-3.10.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "c4c0d8cb7984a1b9c50e6a20c1a0cc9d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 26278, "upload_time": "2021-08-29T15:53:53", "upload_time_iso_8601": "2021-08-29T15:53:53.093781Z", "url": "https://files.pythonhosted.org/packages/e8/ee/237d13b6d3d532778a57df23e6df4b2a82fbbeb833c4016054c6b6730d56/typing_extensions-3.10.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "534781b600f62d5850f22f47949ba744", "sha256": "83af6730a045fda60f46510f7f1f094776d90321caa4d97d20ef38871bef4bd3" }, "downloads": -1, "filename": "typing_extensions-3.10.0.1.tar.gz", "has_sig": false, "md5_digest": "534781b600f62d5850f22f47949ba744", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 45309, "upload_time": "2021-08-29T15:53:54", "upload_time_iso_8601": "2021-08-29T15:53:54.868331Z", "url": "https://files.pythonhosted.org/packages/a5/50/6fbfb5a45d4d8024222849f0731f8d8ddc5c7fe657a8f799bd4c605e93e0/typing_extensions-3.10.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "3.10.0.2": [ { "comment_text": "", "digests": { "md5": "96296851ac46115ff8ae00bf2f4f574d", "sha256": "d8226d10bc02a29bcc81df19a26e56a9647f8b0a6d4a83924139f4a8b01f17b7" }, "downloads": -1, "filename": "typing_extensions-3.10.0.2-py2-none-any.whl", "has_sig": false, "md5_digest": "96296851ac46115ff8ae00bf2f4f574d", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9291, "upload_time": "2021-08-30T18:46:23", "upload_time_iso_8601": "2021-08-30T18:46:23.064211Z", "url": "https://files.pythonhosted.org/packages/cc/1e/0310dee9d86a41f003c519ce263f3b931c54852fcb15ec780137b2e53d4e/typing_extensions-3.10.0.2-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "7b84c09a94faa790c0daa8fec9cc36c9", "sha256": "f1d25edafde516b146ecd0613dabcc61409817af4766fbbcfb8d1ad4ec441a34" }, "downloads": -1, "filename": "typing_extensions-3.10.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "7b84c09a94faa790c0daa8fec9cc36c9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 26288, "upload_time": "2021-08-30T18:46:26", "upload_time_iso_8601": "2021-08-30T18:46:26.221036Z", "url": "https://files.pythonhosted.org/packages/74/60/18783336cc7fcdd95dae91d73477830aa53f5d3181ae4fe20491d7fc3199/typing_extensions-3.10.0.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ed80ecc8eac5cb15840535ca54eb43f3", "sha256": "49f75d16ff11f1cd258e1b988ccff82a3ca5570217d7ad8c5f48205dd99a677e" }, "downloads": -1, "filename": "typing_extensions-3.10.0.2.tar.gz", "has_sig": false, "md5_digest": "ed80ecc8eac5cb15840535ca54eb43f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 46048, "upload_time": "2021-08-30T18:46:27", "upload_time_iso_8601": "2021-08-30T18:46:27.766165Z", "url": "https://files.pythonhosted.org/packages/ed/12/c5079a15cf5c01d7f4252b473b00f7e68ee711be605b9f001528f0298b98/typing_extensions-3.10.0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "3.6.2": [ { "comment_text": "", "digests": { "md5": "37f5357d7c43b4d1642b99b38a158e56", "sha256": "a13d47e36fb70d00de1fd111beea96cace79f5fcaa2c5381a75fc419ad50907d" }, "downloads": -1, "filename": "typing_extensions-3.6.2-py2-none-any.whl", "has_sig": false, "md5_digest": "37f5357d7c43b4d1642b99b38a158e56", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 7723, "upload_time": "2017-09-17T12:25:17", "upload_time_iso_8601": "2017-09-17T12:25:17.911412Z", "url": "https://files.pythonhosted.org/packages/7a/d2/776076bc80b5006c327c4106ccc8a6d645ccfae57ca72eee0ec98ea19ab0/typing_extensions-3.6.2-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "7ab46a053e420150656fea1f6c7a199e", "sha256": "9d1f70ae4b349f2040e8ca4acf1e7f8edceeff5f8aa49fbef9f9e39116312418" }, "downloads": -1, "filename": "typing_extensions-3.6.2-py3-none-any.whl", "has_sig": false, "md5_digest": "7ab46a053e420150656fea1f6c7a199e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11492, "upload_time": "2017-09-17T12:25:19", "upload_time_iso_8601": "2017-09-17T12:25:19.280623Z", "url": "https://files.pythonhosted.org/packages/cb/cc/4db345e919daa930cb4352e8b2e273bdb9e6d2a72c6e09da811a6127278f/typing_extensions-3.6.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "16976ca13bd31dd1af42dfd2318d5bbb", "sha256": "e83f825d3ecb61443cf18639f499cabd02d87274e594de3728a1a07bc08a566d" }, "downloads": -1, "filename": "typing_extensions-3.6.2.tar.gz", "has_sig": false, "md5_digest": "16976ca13bd31dd1af42dfd2318d5bbb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6790, "upload_time": "2017-09-17T12:25:20", "upload_time_iso_8601": "2017-09-17T12:25:20.236441Z", "url": "https://files.pythonhosted.org/packages/d0/53/db3c6bf3fc6a57cda61117dc84eb96de7586e2a43ab12e332a91570c5867/typing_extensions-3.6.2.tar.gz", "yanked": false, "yanked_reason": null } ], "3.6.2.1": [ { "comment_text": "", "digests": { "md5": "981b4fd002e0bdea8aed79e409007a31", "sha256": "3f917fa1eb17b7dc09f19e01b52bfe15e7bc67c34cc3cf63613c8a37ce953b59" }, "downloads": -1, "filename": "typing_extensions-3.6.2.1-py2-none-any.whl", "has_sig": false, "md5_digest": "981b4fd002e0bdea8aed79e409007a31", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 7751, "upload_time": "2017-09-30T08:53:23", "upload_time_iso_8601": "2017-09-30T08:53:23.924418Z", "url": "https://files.pythonhosted.org/packages/1d/5a/9ce4a5ed063f4590a0ac37e984a679930cd46faeab4b7b16f0c8c90a027d/typing_extensions-3.6.2.1-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "4e2d8b7e1301b1bea5501e7e2a9274fb", "sha256": "a685d27cadf53b99a18e953697e859f09478912efcbd8c86b89af9f6402dc301" }, "downloads": -1, "filename": "typing_extensions-3.6.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "4e2d8b7e1301b1bea5501e7e2a9274fb", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11521, "upload_time": "2017-09-30T08:53:25", "upload_time_iso_8601": "2017-09-30T08:53:25.345851Z", "url": "https://files.pythonhosted.org/packages/66/5c/605dd55fcc9a8925f19263d5a74ddec06b9eab304d9fe64c956e85b7aa6c/typing_extensions-3.6.2.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "0cf451b9182c32dacaad90eb2d0b696c", "sha256": "dc18da05be5c924538481f6761700757eb36415213350d5e15b9cbd72e46ffe3" }, "downloads": -1, "filename": "typing_extensions-3.6.2.1.tar.gz", "has_sig": false, "md5_digest": "0cf451b9182c32dacaad90eb2d0b696c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24828, "upload_time": "2017-09-30T08:53:26", "upload_time_iso_8601": "2017-09-30T08:53:26.724178Z", "url": "https://files.pythonhosted.org/packages/bc/24/dd74d7d91f460b682492d146e15b943392d73b91c021557186dc810a264a/typing_extensions-3.6.2.1.tar.gz", "yanked": false, "yanked_reason": null } ], "3.6.5": [ { "comment_text": "", "digests": { "md5": "780e7eacbfc0752b1fc8864cd19baf9a", "sha256": "8b0962ecb92847974514b1724c8ae2b6dd1ffe86bcdfac429517f5e583ada658" }, "downloads": -1, "filename": "typing_extensions-3.6.5-py2-none-any.whl", "has_sig": false, "md5_digest": "780e7eacbfc0752b1fc8864cd19baf9a", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 6231, "upload_time": "2018-05-07T22:16:09", "upload_time_iso_8601": "2018-05-07T22:16:09.460292Z", "url": "https://files.pythonhosted.org/packages/30/37/65f28f32654bee9a21951a8b07a70e1348dea00991d57d151cb49f2c108b/typing_extensions-3.6.5-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "4611e7342c9bcc4eddfbba0582726d83", "sha256": "be7b05ddab71727fabf1f071365043cf034e4cdac9cade1f1d61a6cc526aaafe" }, "downloads": -1, "filename": "typing_extensions-3.6.5-py3-none-any.whl", "has_sig": false, "md5_digest": "4611e7342c9bcc4eddfbba0582726d83", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 11447, "upload_time": "2018-05-07T22:16:10", "upload_time_iso_8601": "2018-05-07T22:16:10.524123Z", "url": "https://files.pythonhosted.org/packages/15/f1/ef4e69d77cd850af1cb7d6de62fc8a0e92eb6fe7b37e3dc563b41378b567/typing_extensions-3.6.5-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "b89c0965d85245fc05f1cf4c5f8aa9ab", "sha256": "1c0a8e3b4ce55207a03dd0dcb98bc47a704c71f14fe4311ec860cc8af8f4bd27" }, "downloads": -1, "filename": "typing_extensions-3.6.5.tar.gz", "has_sig": false, "md5_digest": "b89c0965d85245fc05f1cf4c5f8aa9ab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 27146, "upload_time": "2018-05-07T22:16:11", "upload_time_iso_8601": "2018-05-07T22:16:11.447691Z", "url": "https://files.pythonhosted.org/packages/a9/b0/c98f86c94706784699bff1262506ceab6e8101386e984a773b10be7500fc/typing_extensions-3.6.5.tar.gz", "yanked": false, "yanked_reason": null } ], "3.6.6": [ { "comment_text": "", "digests": { "md5": "c57ff533ff96d6829d78941229b4ecdd", "sha256": "2a6c6e78e291a4b6cbd0bbfd30edc0baaa366de962129506ec8fe06bdec66457" }, "downloads": -1, "filename": "typing_extensions-3.6.6-py2-none-any.whl", "has_sig": false, "md5_digest": "c57ff533ff96d6829d78941229b4ecdd", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 11126, "upload_time": "2018-10-06T22:03:23", "upload_time_iso_8601": "2018-10-06T22:03:23.629524Z", "url": "https://files.pythonhosted.org/packages/48/59/6cef806c06dddd3ccb08890419a9fe6a4dc0dc5d3e3598621fb5627e874f/typing_extensions-3.6.6-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "dce42ca126e9b4de55a8da59aaa3352c", "sha256": "55401f6ed58ade5638eb566615c150ba13624e2f0c1eedd080fc3c1b6cb76f1d" }, "downloads": -1, "filename": "typing_extensions-3.6.6-py3-none-any.whl", "has_sig": false, "md5_digest": "dce42ca126e9b4de55a8da59aaa3352c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16218, "upload_time": "2018-10-06T22:03:25", "upload_time_iso_8601": "2018-10-06T22:03:25.173704Z", "url": "https://files.pythonhosted.org/packages/62/4f/392a1fa2873e646f5990eb6f956e662d8a235ab474450c72487745f67276/typing_extensions-3.6.6-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "9509b7ff9cbd479d195e61b04d70cd3a", "sha256": "51e7b7f3dcabf9ad22eed61490f3b8d23d9922af400fe6656cb08e66656b701f" }, "downloads": -1, "filename": "typing_extensions-3.6.6.tar.gz", "has_sig": false, "md5_digest": "9509b7ff9cbd479d195e61b04d70cd3a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32610, "upload_time": "2018-10-06T22:03:30", "upload_time_iso_8601": "2018-10-06T22:03:30.354432Z", "url": "https://files.pythonhosted.org/packages/fc/e6/3d2f306b12f01bde2861d67458d32c673e206d6fcc255537bf452db8f80c/typing_extensions-3.6.6.tar.gz", "yanked": false, "yanked_reason": null } ], "3.7.2": [ { "comment_text": "", "digests": { "md5": "7fd2d0a56096e1e6c81d61727f7176cb", "sha256": "07b2c978670896022a43c4b915df8958bec4a6b84add7f2c87b2b728bda3ba64" }, "downloads": -1, "filename": "typing_extensions-3.7.2-py2-none-any.whl", "has_sig": false, "md5_digest": "7fd2d0a56096e1e6c81d61727f7176cb", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 11418, "upload_time": "2019-01-12T18:17:33", "upload_time_iso_8601": "2019-01-12T18:17:33.193920Z", "url": "https://files.pythonhosted.org/packages/69/60/84116ab2840fda8414cbc92c2a63adfa71e9bafb2d305b467fadb20ec2a8/typing_extensions-3.7.2-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "7b265f15d4eed8d014f8db21263c5bb5", "sha256": "f3f0e67e1d42de47b5c67c32c9b26641642e9170fe7e292991793705cd5fef7c" }, "downloads": -1, "filename": "typing_extensions-3.7.2-py3-none-any.whl", "has_sig": false, "md5_digest": "7b265f15d4eed8d014f8db21263c5bb5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 16710, "upload_time": "2019-01-12T18:17:34", "upload_time_iso_8601": "2019-01-12T18:17:34.672850Z", "url": "https://files.pythonhosted.org/packages/0f/62/c66e553258c37c33f9939abb2dd8d2481803d860ff68e635466f12aa7efa/typing_extensions-3.7.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "33815f263f3e00ec63b9d9d26eea95de", "sha256": "fb2cd053238d33a8ec939190f30cfd736c00653a85a2919415cecf7dc3d9da71" }, "downloads": -1, "filename": "typing_extensions-3.7.2.tar.gz", "has_sig": false, "md5_digest": "33815f263f3e00ec63b9d9d26eea95de", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34042, "upload_time": "2019-01-12T18:17:36", "upload_time_iso_8601": "2019-01-12T18:17:36.336518Z", "url": "https://files.pythonhosted.org/packages/fa/aa/229f5c82d17d10d4ef318b5c22a8626a1c78fc97f80d3307035cf696681b/typing_extensions-3.7.2.tar.gz", "yanked": false, "yanked_reason": null } ], "3.7.4": [ { "comment_text": "", "digests": { "md5": "bda2643d914905854872c0e5e7575285", "sha256": "b1edbbf0652660e32ae780ac9433f4231e7339c7f9a8057d0f042fcbcea49b87" }, "downloads": -1, "filename": "typing_extensions-3.7.4-py2-none-any.whl", "has_sig": false, "md5_digest": "bda2643d914905854872c0e5e7575285", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 8935, "upload_time": "2019-06-19T23:58:56", "upload_time_iso_8601": "2019-06-19T23:58:56.983660Z", "url": "https://files.pythonhosted.org/packages/b8/4d/eddc8b3c539cd79a31987ffc96ccd62ecc35f637d5d4fdaa37e4b64a2e5b/typing_extensions-3.7.4-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "6ef332311f9864fa0ab45ad7d95e6bde", "sha256": "d8179012ec2c620d3791ca6fe2bf7979d979acdbef1fca0bc56b37411db682ed" }, "downloads": -1, "filename": "typing_extensions-3.7.4-py3-none-any.whl", "has_sig": false, "md5_digest": "6ef332311f9864fa0ab45ad7d95e6bde", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20721, "upload_time": "2019-06-19T23:58:58", "upload_time_iso_8601": "2019-06-19T23:58:58.535041Z", "url": "https://files.pythonhosted.org/packages/27/aa/bd1442cfb0224da1b671ab334d3b0a4302e4161ea916e28904ff9618d471/typing_extensions-3.7.4-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "98510adbacf8ea74f46f98b0a5cbdf73", "sha256": "2ed632b30bb54fc3941c382decfd0ee4148f5c591651c9272473fea2c6397d95" }, "downloads": -1, "filename": "typing_extensions-3.7.4.tar.gz", "has_sig": false, "md5_digest": "98510adbacf8ea74f46f98b0a5cbdf73", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36058, "upload_time": "2019-06-19T23:59:00", "upload_time_iso_8601": "2019-06-19T23:59:00.097528Z", "url": "https://files.pythonhosted.org/packages/59/b6/21774b993eec6e797fbc49e53830df823b69a3cb62f94d36dfb497a0b65a/typing_extensions-3.7.4.tar.gz", "yanked": false, "yanked_reason": null } ], "3.7.4.1": [ { "comment_text": "", "digests": { "md5": "76b86c0334cf6f2abf692e7d850d89c1", "sha256": "910f4656f54de5993ad9304959ce9bb903f90aadc7c67a0bef07e678014e892d" }, "downloads": -1, "filename": "typing_extensions-3.7.4.1-py2-none-any.whl", "has_sig": false, "md5_digest": "76b86c0334cf6f2abf692e7d850d89c1", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 8993, "upload_time": "2019-10-28T13:29:12", "upload_time_iso_8601": "2019-10-28T13:29:12.505359Z", "url": "https://files.pythonhosted.org/packages/89/0b/611af6b186e4e59e290fee1a5b4a6c47a4ce29d7cb9b5141fc73c38d8b65/typing_extensions-3.7.4.1-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "cb8d1ddc981bd1ca7ccd9304146a3361", "sha256": "cf8b63fedea4d89bab840ecbb93e75578af28f76f66c35889bd7065f5af88575" }, "downloads": -1, "filename": "typing_extensions-3.7.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "cb8d1ddc981bd1ca7ccd9304146a3361", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20901, "upload_time": "2019-10-28T13:29:13", "upload_time_iso_8601": "2019-10-28T13:29:13.949779Z", "url": "https://files.pythonhosted.org/packages/03/92/705fe8aca27678e01bbdd7738173b8e7df0088a2202c80352f664630d638/typing_extensions-3.7.4.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "566292497a533981216e1d05a7c00fd3", "sha256": "091ecc894d5e908ac75209f10d5b4f118fbdb2eb1ede6a63544054bb1edb41f2" }, "downloads": -1, "filename": "typing_extensions-3.7.4.1.tar.gz", "has_sig": false, "md5_digest": "566292497a533981216e1d05a7c00fd3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36357, "upload_time": "2019-10-28T13:29:15", "upload_time_iso_8601": "2019-10-28T13:29:15.822245Z", "url": "https://files.pythonhosted.org/packages/e7/dd/f1713bc6638cc3a6a23735eff6ee09393b44b96176d3296693ada272a80b/typing_extensions-3.7.4.1.tar.gz", "yanked": false, "yanked_reason": null } ], "3.7.4.2": [ { "comment_text": "", "digests": { "md5": "2da788f5f35d15b52bcb7ce0f5584e59", "sha256": "f8d2bd89d25bc39dabe7d23df520442fa1d8969b82544370e03d88b5a591c392" }, "downloads": -1, "filename": "typing_extensions-3.7.4.2-py2-none-any.whl", "has_sig": false, "md5_digest": "2da788f5f35d15b52bcb7ce0f5584e59", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9005, "upload_time": "2020-04-02T17:40:28", "upload_time_iso_8601": "2020-04-02T17:40:28.249155Z", "url": "https://files.pythonhosted.org/packages/55/17/3f65ede2450a51ab7b8c6f9f4aa1ba07cddd980422e2409ea5d68ccdf38d/typing_extensions-3.7.4.2-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "800bf9c0ee2a28f610a6b7c0c266e85d", "sha256": "6e95524d8a547a91e08f404ae485bbb71962de46967e1b71a0cb89af24e761c5" }, "downloads": -1, "filename": "typing_extensions-3.7.4.2-py3-none-any.whl", "has_sig": false, "md5_digest": "800bf9c0ee2a28f610a6b7c0c266e85d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22089, "upload_time": "2020-04-02T17:40:29", "upload_time_iso_8601": "2020-04-02T17:40:29.760003Z", "url": "https://files.pythonhosted.org/packages/0c/0e/3f026d0645d699e7320b59952146d56ad7c374e9cd72cd16e7c74e657a0f/typing_extensions-3.7.4.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "f2674282966dc088d10170c2347431cc", "sha256": "79ee589a3caca649a9bfd2a8de4709837400dfa00b6cc81962a1e6a1815969ae" }, "downloads": -1, "filename": "typing_extensions-3.7.4.2.tar.gz", "has_sig": false, "md5_digest": "f2674282966dc088d10170c2347431cc", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38427, "upload_time": "2020-04-02T17:40:31", "upload_time_iso_8601": "2020-04-02T17:40:31.250116Z", "url": "https://files.pythonhosted.org/packages/6a/28/d32852f2af6b5ead85d396249d5bdf450833f3a69896d76eb480d9c5e406/typing_extensions-3.7.4.2.tar.gz", "yanked": false, "yanked_reason": null } ], "3.7.4.3": [ { "comment_text": "", "digests": { "md5": "e59526817794f0f6455be69d863b8ce3", "sha256": "dafc7639cde7f1b6e1acc0f457842a83e722ccca8eef5270af2d74792619a89f" }, "downloads": -1, "filename": "typing_extensions-3.7.4.3-py2-none-any.whl", "has_sig": false, "md5_digest": "e59526817794f0f6455be69d863b8ce3", "packagetype": "bdist_wheel", "python_version": "py2", "requires_python": null, "size": 9264, "upload_time": "2020-08-23T16:44:06", "upload_time_iso_8601": "2020-08-23T16:44:06.187895Z", "url": "https://files.pythonhosted.org/packages/be/e1/8fe3f8a8aa3380f2a92b0075406c49f96fcc2b256f5c92d09571d2ab7847/typing_extensions-3.7.4.3-py2-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "cbf20d17c294eb6a2d5e98669cfe67a6", "sha256": "7cb407020f00f7bfc3cb3e7881628838e69d8f3fcab2f64742a5e76b2f841918" }, "downloads": -1, "filename": "typing_extensions-3.7.4.3-py3-none-any.whl", "has_sig": false, "md5_digest": "cbf20d17c294eb6a2d5e98669cfe67a6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 22544, "upload_time": "2020-08-23T16:44:07", "upload_time_iso_8601": "2020-08-23T16:44:07.642919Z", "url": "https://files.pythonhosted.org/packages/60/7a/e881b5abb54db0e6e671ab088d079c57ce54e8a01a3ca443f561ccadb37e/typing_extensions-3.7.4.3-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "5fcbfcb22e6f8c9bf23fb9f8e020f6ee", "sha256": "99d4073b617d30288f569d3f13d2bd7548c3a7e4c8de87db09a9d29bb3a4a60c" }, "downloads": -1, "filename": "typing_extensions-3.7.4.3.tar.gz", "has_sig": false, "md5_digest": "5fcbfcb22e6f8c9bf23fb9f8e020f6ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38979, "upload_time": "2020-08-23T16:44:09", "upload_time_iso_8601": "2020-08-23T16:44:09.060142Z", "url": "https://files.pythonhosted.org/packages/16/06/0f7367eafb692f73158e5c5cbca1aec798cdf78be5167f6415dd4205fa32/typing_extensions-3.7.4.3.tar.gz", "yanked": false, "yanked_reason": null } ], "4.0.0": [ { "comment_text": "", "digests": { "md5": "33a3059e2a2bee4359600b1ed3bd57e0", "sha256": "829704698b22e13ec9eaf959122315eabb370b0884400e9818334d8b677023d9" }, "downloads": -1, "filename": "typing_extensions-4.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "33a3059e2a2bee4359600b1ed3bd57e0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 22615, "upload_time": "2021-11-14T22:11:20", "upload_time_iso_8601": "2021-11-14T22:11:20.075965Z", "url": "https://files.pythonhosted.org/packages/17/61/32c3ab8951142e061587d957226b5683d1387fb22d95b4f69186d92616d1/typing_extensions-4.0.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "80c0839d184acb59e00b72ccfbbdafa7", "sha256": "2cdf80e4e04866a9b3689a51869016d36db0814d84b8d8a568d22781d45d27ed" }, "downloads": -1, "filename": "typing_extensions-4.0.0.tar.gz", "has_sig": false, "md5_digest": "80c0839d184acb59e00b72ccfbbdafa7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 37038, "upload_time": "2021-11-15T15:23:58", "upload_time_iso_8601": "2021-11-15T15:23:58.981523Z", "url": "https://files.pythonhosted.org/packages/1a/23/748b0c9a5578110b31580c8d2643319adcb3ec91f601b50a955051b51f1d/typing_extensions-4.0.0.tar.gz", "yanked": false, "yanked_reason": null } ], "4.0.1": [ { "comment_text": "", "digests": { "md5": "716362736bf3143f3f8e68924c4f1c6e", "sha256": "7f001e5ac290a0c0401508864c7ec868be4e701886d5b573a9528ed3973d9d3b" }, "downloads": -1, "filename": "typing_extensions-4.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "716362736bf3143f3f8e68924c4f1c6e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 22816, "upload_time": "2021-12-01T01:45:37", "upload_time_iso_8601": "2021-12-01T01:45:37.772785Z", "url": "https://files.pythonhosted.org/packages/05/e4/baf0031e39cf545f0c9edd5b1a2ea12609b7fcba2d58e118b11753d68cf0/typing_extensions-4.0.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "33f184a97b6833fc99838c23acad2332", "sha256": "4ca091dea149f945ec56afb48dae714f21e8692ef22a395223bcd328961b6a0e" }, "downloads": -1, "filename": "typing_extensions-4.0.1.tar.gz", "has_sig": false, "md5_digest": "33f184a97b6833fc99838c23acad2332", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 22706, "upload_time": "2021-12-01T01:45:39", "upload_time_iso_8601": "2021-12-01T01:45:39.576912Z", "url": "https://files.pythonhosted.org/packages/0d/4a/60ba3706797b878016f16edc5fbaf1e222109e38d0fa4d7d9312cb53f8dd/typing_extensions-4.0.1.tar.gz", "yanked": false, "yanked_reason": null } ], "4.1.0": [ { "comment_text": "", "digests": { "md5": "b3a23ac6e9e242855386f6386eecd2d5", "sha256": "c13180fbaa7cd97065a4915ceba012bdb31dc34743e63ddee16360161d358414" }, "downloads": -1, "filename": "typing_extensions-4.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "b3a23ac6e9e242855386f6386eecd2d5", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 26845, "upload_time": "2022-02-12T21:35:42", "upload_time_iso_8601": "2022-02-12T21:35:42.540804Z", "url": "https://files.pythonhosted.org/packages/6a/1e/df241fd31424de8c834a6c0281652a13a30191bdb10c600c35cef02cd160/typing_extensions-4.1.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a54a596ca4685baa98390956818dc55a", "sha256": "ba97c5143e5bb067b57793c726dd857b1671d4b02ced273ca0538e71ff009095" }, "downloads": -1, "filename": "typing_extensions-4.1.0.tar.gz", "has_sig": false, "md5_digest": "a54a596ca4685baa98390956818dc55a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 26686, "upload_time": "2022-02-12T21:35:44", "upload_time_iso_8601": "2022-02-12T21:35:44.238220Z", "url": "https://files.pythonhosted.org/packages/0b/61/f231a1297068b3c0544577c997e558cbfafe49e750cc7fcb503224df23c4/typing_extensions-4.1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "4.1.1": [ { "comment_text": "", "digests": { "md5": "51e77e114d727c80f57551ca7aabb015", "sha256": "21c85e0fe4b9a155d0799430b0ad741cdce7e359660ccbd8b530613e8df88ce2" }, "downloads": -1, "filename": "typing_extensions-4.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "51e77e114d727c80f57551ca7aabb015", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6", "size": 26844, "upload_time": "2022-02-14T03:19:55", "upload_time_iso_8601": "2022-02-14T03:19:55.773679Z", "url": "https://files.pythonhosted.org/packages/45/6b/44f7f8f1e110027cf88956b59f2fad776cca7e1704396d043f89effd3a0e/typing_extensions-4.1.1-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "3cd9b7b9a465afbcca8548e11668ca64", "sha256": "1a9462dcc3347a79b1f1c0271fbe79e844580bb598bafa1ed208b94da3cdcd42" }, "downloads": -1, "filename": "typing_extensions-4.1.1.tar.gz", "has_sig": false, "md5_digest": "3cd9b7b9a465afbcca8548e11668ca64", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6", "size": 26694, "upload_time": "2022-02-14T03:19:57", "upload_time_iso_8601": "2022-02-14T03:19:57.426277Z", "url": "https://files.pythonhosted.org/packages/b1/5a/8b5fbb891ef3f81fc923bf3cb4a578c0abf9471eb50ce0f51c74212182ab/typing_extensions-4.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "4.2.0": [ { "comment_text": "", "digests": { "md5": "95fc87a08006c5249ae13b8a1c3770b9", "sha256": "6657594ee297170d19f67d55c05852a874e7eb634f4f753dbd667855e07c1708" }, "downloads": -1, "filename": "typing_extensions-4.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "95fc87a08006c5249ae13b8a1c3770b9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 24207, "upload_time": "2022-04-17T21:27:21", "upload_time_iso_8601": "2022-04-17T21:27:21.545483Z", "url": "https://files.pythonhosted.org/packages/75/e1/932e06004039dd670c9d5e1df0cd606bf46e29a28e65d5bb28e894ea29c9/typing_extensions-4.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "197fb153e3720a3f6e0c85bb47f9c2b5", "sha256": "f1c24655a0da0d1b67f07e17a5e6b2a105894e6824b92096378bb3668ef02376" }, "downloads": -1, "filename": "typing_extensions-4.2.0.tar.gz", "has_sig": false, "md5_digest": "197fb153e3720a3f6e0c85bb47f9c2b5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 42982, "upload_time": "2022-04-17T21:27:23", "upload_time_iso_8601": "2022-04-17T21:27:23.671483Z", "url": "https://files.pythonhosted.org/packages/fe/71/1df93bd59163c8084d812d166c907639646e8aac72886d563851b966bf18/typing_extensions-4.2.0.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "95fc87a08006c5249ae13b8a1c3770b9", "sha256": "6657594ee297170d19f67d55c05852a874e7eb634f4f753dbd667855e07c1708" }, "downloads": -1, "filename": "typing_extensions-4.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "95fc87a08006c5249ae13b8a1c3770b9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 24207, "upload_time": "2022-04-17T21:27:21", "upload_time_iso_8601": "2022-04-17T21:27:21.545483Z", "url": "https://files.pythonhosted.org/packages/75/e1/932e06004039dd670c9d5e1df0cd606bf46e29a28e65d5bb28e894ea29c9/typing_extensions-4.2.0-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "197fb153e3720a3f6e0c85bb47f9c2b5", "sha256": "f1c24655a0da0d1b67f07e17a5e6b2a105894e6824b92096378bb3668ef02376" }, "downloads": -1, "filename": "typing_extensions-4.2.0.tar.gz", "has_sig": false, "md5_digest": "197fb153e3720a3f6e0c85bb47f9c2b5", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 42982, "upload_time": "2022-04-17T21:27:23", "upload_time_iso_8601": "2022-04-17T21:27:23.671483Z", "url": "https://files.pythonhosted.org/packages/fe/71/1df93bd59163c8084d812d166c907639646e8aac72886d563851b966bf18/typing_extensions-4.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }