123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- Metadata-Version: 2.1
- Name: jaraco.context
- Version: 6.0.1
- Summary: Useful decorators and context managers
- Author-email: "Jason R. Coombs" <jaraco@jaraco.com>
- Project-URL: Source, https://github.com/jaraco/jaraco.context
- Classifier: Development Status :: 5 - Production/Stable
- Classifier: Intended Audience :: Developers
- Classifier: License :: OSI Approved :: MIT License
- Classifier: Programming Language :: Python :: 3
- Classifier: Programming Language :: Python :: 3 :: Only
- Requires-Python: >=3.8
- Description-Content-Type: text/x-rst
- License-File: LICENSE
- Requires-Dist: backports.tarfile ; python_version < "3.12"
- Provides-Extra: doc
- Requires-Dist: sphinx >=3.5 ; extra == 'doc'
- Requires-Dist: jaraco.packaging >=9.3 ; extra == 'doc'
- Requires-Dist: rst.linker >=1.9 ; extra == 'doc'
- Requires-Dist: furo ; extra == 'doc'
- Requires-Dist: sphinx-lint ; extra == 'doc'
- Requires-Dist: jaraco.tidelift >=1.4 ; extra == 'doc'
- Provides-Extra: test
- Requires-Dist: pytest !=8.1.*,>=6 ; extra == 'test'
- Requires-Dist: pytest-checkdocs >=2.4 ; extra == 'test'
- Requires-Dist: pytest-cov ; extra == 'test'
- Requires-Dist: pytest-mypy ; extra == 'test'
- Requires-Dist: pytest-enabler >=2.2 ; extra == 'test'
- Requires-Dist: portend ; extra == 'test'
- Requires-Dist: pytest-ruff >=0.2.1 ; (sys_platform != "cygwin") and extra == 'test'
- .. image:: https://img.shields.io/pypi/v/jaraco.context.svg
- :target: https://pypi.org/project/jaraco.context
- .. image:: https://img.shields.io/pypi/pyversions/jaraco.context.svg
- .. image:: https://github.com/jaraco/jaraco.context/actions/workflows/main.yml/badge.svg
- :target: https://github.com/jaraco/jaraco.context/actions?query=workflow%3A%22tests%22
- :alt: tests
- .. image:: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json
- :target: https://github.com/astral-sh/ruff
- :alt: Ruff
- .. image:: https://readthedocs.org/projects/jaracocontext/badge/?version=latest
- :target: https://jaracocontext.readthedocs.io/en/latest/?badge=latest
- .. image:: https://img.shields.io/badge/skeleton-2024-informational
- :target: https://blog.jaraco.com/skeleton
- .. image:: https://tidelift.com/badges/package/pypi/jaraco.context
- :target: https://tidelift.com/subscription/pkg/pypi-jaraco.context?utm_source=pypi-jaraco.context&utm_medium=readme
- Highlights
- ==========
- See the docs linked from the badge above for the full details, but here are some features that may be of interest.
- - ``ExceptionTrap`` provides a general-purpose wrapper for trapping exceptions and then acting on the outcome. Includes ``passes`` and ``raises`` decorators to replace the result of a wrapped function by a boolean indicating the outcome of the exception trap. See `this keyring commit <https://github.com/jaraco/keyring/commit/a85a7cbc6c909f8121660ed1f7b487f99a1c2bf7>`_ for an example of it in production.
- - ``suppress`` simply enables ``contextlib.suppress`` as a decorator.
- - ``on_interrupt`` is a decorator used by CLI entry points to affect the handling of a ``KeyboardInterrupt``. Inspired by `Lucretiel/autocommand#18 <https://github.com/Lucretiel/autocommand/issues/18>`_.
- - ``pushd`` is similar to pytest's ``monkeypatch.chdir`` or path's `default context <https://path.readthedocs.io/en/latest/api.html>`_, changes the current working directory for the duration of the context.
- - ``tarball`` will download a tarball, extract it, change directory, yield, then clean up after. Convenient when working with web assets.
- - ``null`` is there for those times when one code branch needs a context and the other doesn't; this null context provides symmetry across those branches.
- For Enterprise
- ==============
- Available as part of the Tidelift Subscription.
- This project and the maintainers of thousands of other packages are working with Tidelift to deliver one enterprise subscription that covers all of the open source you use.
- `Learn more <https://tidelift.com/subscription/pkg/pypi-jaraco.context?utm_source=pypi-jaraco.context&utm_medium=referral&utm_campaign=github>`_.
|