335 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			335 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| Metadata-Version: 2.1
 | ||
| Name: bidict
 | ||
| Version: 0.21.2
 | ||
| Summary: The bidirectional mapping library for Python.
 | ||
| Home-page: https://bidict.readthedocs.io
 | ||
| Author: Joshua Bronson
 | ||
| Author-email: jabronson@gmail.com
 | ||
| License: MPL 2.0
 | ||
| Keywords: dict dictionary mapping datastructure bimap bijection bijective injective inverse reverse bidirectional two-way 2-way
 | ||
| Platform: UNKNOWN
 | ||
| Classifier: Development Status :: 4 - Beta
 | ||
| Classifier: Intended Audience :: Developers
 | ||
| Classifier: License :: OSI Approved :: Mozilla Public License 2.0 (MPL 2.0)
 | ||
| Classifier: Operating System :: OS Independent
 | ||
| Classifier: Programming Language :: Python :: 3 :: Only
 | ||
| Classifier: Programming Language :: Python :: 3.6
 | ||
| Classifier: Programming Language :: Python :: 3.7
 | ||
| Classifier: Programming Language :: Python :: 3.8
 | ||
| Classifier: Programming Language :: Python :: Implementation :: CPython
 | ||
| Classifier: Programming Language :: Python :: Implementation :: PyPy
 | ||
| Classifier: Topic :: Software Development :: Libraries :: Python Modules
 | ||
| Requires-Python: >=3.6
 | ||
| Description-Content-Type: text/x-rst
 | ||
| Provides-Extra: coverage
 | ||
| Requires-Dist: coverage (<6) ; extra == 'coverage'
 | ||
| Requires-Dist: pytest-cov (<3) ; extra == 'coverage'
 | ||
| Provides-Extra: dev
 | ||
| Requires-Dist: setuptools-scm ; extra == 'dev'
 | ||
| Requires-Dist: hypothesis (<6) ; extra == 'dev'
 | ||
| Requires-Dist: py (<2) ; extra == 'dev'
 | ||
| Requires-Dist: pytest (<7) ; extra == 'dev'
 | ||
| Requires-Dist: pytest-benchmark (<4,>=3.2.0) ; extra == 'dev'
 | ||
| Requires-Dist: sortedcollections (<2) ; extra == 'dev'
 | ||
| Requires-Dist: sortedcontainers (<3) ; extra == 'dev'
 | ||
| Requires-Dist: Sphinx (<4) ; extra == 'dev'
 | ||
| Requires-Dist: sphinx-autodoc-typehints (<2) ; extra == 'dev'
 | ||
| Requires-Dist: coverage (<6) ; extra == 'dev'
 | ||
| Requires-Dist: pytest-cov (<3) ; extra == 'dev'
 | ||
| Requires-Dist: pre-commit (<3) ; extra == 'dev'
 | ||
| Requires-Dist: tox (<4) ; extra == 'dev'
 | ||
| Provides-Extra: docs
 | ||
| Requires-Dist: Sphinx (<4) ; extra == 'docs'
 | ||
| Requires-Dist: sphinx-autodoc-typehints (<2) ; extra == 'docs'
 | ||
| Provides-Extra: precommit
 | ||
| Requires-Dist: pre-commit (<3) ; extra == 'precommit'
 | ||
| Provides-Extra: test
 | ||
| Requires-Dist: hypothesis (<6) ; extra == 'test'
 | ||
| Requires-Dist: py (<2) ; extra == 'test'
 | ||
| Requires-Dist: pytest (<7) ; extra == 'test'
 | ||
| Requires-Dist: pytest-benchmark (<4,>=3.2.0) ; extra == 'test'
 | ||
| Requires-Dist: sortedcollections (<2) ; extra == 'test'
 | ||
| Requires-Dist: sortedcontainers (<3) ; extra == 'test'
 | ||
| Requires-Dist: Sphinx (<4) ; extra == 'test'
 | ||
| Requires-Dist: sphinx-autodoc-typehints (<2) ; extra == 'test'
 | ||
| 
 | ||
| .. Forward declarations for all the custom interpreted text roles that
 | ||
|    Sphinx defines and that are used below. This helps Sphinx-unaware tools
 | ||
|    (e.g. rst2html, PyPI's and GitHub's renderers, etc.).
 | ||
| .. role:: doc
 | ||
| 
 | ||
| .. Use :doc: rather than :ref: references below for better interop as well.
 | ||
| 
 | ||
| 
 | ||
| ``bidict``
 | ||
| ==========
 | ||
| 
 | ||
| The bidirectional mapping library for Python.
 | ||
| 
 | ||
| .. image:: https://raw.githubusercontent.com/jab/bidict/master/assets/logo-sm.png
 | ||
|    :target: https://bidict.readthedocs.io/
 | ||
|    :alt: bidict logo
 | ||
| 
 | ||
| 
 | ||
| Status
 | ||
| ------
 | ||
| 
 | ||
| .. image:: https://img.shields.io/pypi/v/bidict.svg
 | ||
|    :target: https://pypi.org/project/bidict
 | ||
|    :alt: Latest release
 | ||
| 
 | ||
| .. image:: https://img.shields.io/readthedocs/bidict/master.svg
 | ||
|    :target: https://bidict.readthedocs.io/en/master/
 | ||
|    :alt: Documentation
 | ||
| 
 | ||
| .. image:: https://api.travis-ci.org/jab/bidict.svg?branch=master
 | ||
|    :target: https://travis-ci.org/jab/bidict
 | ||
|    :alt: Travis-CI build status
 | ||
| 
 | ||
| .. image:: https://codecov.io/gh/jab/bidict/branch/master/graph/badge.svg
 | ||
|    :target: https://codecov.io/gh/jab/bidict
 | ||
|    :alt: Test coverage
 | ||
| 
 | ||
| .. Hide to reduce clutter
 | ||
|    .. image:: https://img.shields.io/lgtm/alerts/github/jab/bidict.svg
 | ||
|       :target: https://lgtm.com/projects/g/jab/bidict/
 | ||
|       :alt: LGTM alerts
 | ||
|    .. image:: https://bestpractices.coreinfrastructure.org/projects/2354/badge
 | ||
|       :target: https://bestpractices.coreinfrastructure.org/en/projects/2354
 | ||
|       :alt: CII best practices badge
 | ||
|    .. image:: https://img.shields.io/badge/tidelift-pro%20support-orange.svg
 | ||
|       :target: https://tidelift.com/subscription/pkg/pypi-bidict?utm_source=pypi-bidict&utm_medium=referral&utm_campaign=docs
 | ||
|       :alt: Paid support available via Tidelift
 | ||
|    .. image:: https://ci.appveyor.com/api/projects/status/gk133415udncwto3/branch/master?svg=true
 | ||
|       :target: https://ci.appveyor.com/project/jab/bidict
 | ||
|       :alt: AppVeyor (Windows) build status
 | ||
|    .. image:: https://img.shields.io/pypi/pyversions/bidict.svg
 | ||
|       :target: https://pypi.org/project/bidict
 | ||
|       :alt: Supported Python versions
 | ||
|    .. image:: https://img.shields.io/pypi/implementation/bidict.svg
 | ||
|       :target: https://pypi.org/project/bidict
 | ||
|       :alt: Supported Python implementations
 | ||
| 
 | ||
| .. image:: https://img.shields.io/pypi/l/bidict.svg
 | ||
|    :target: https://raw.githubusercontent.com/jab/bidict/master/LICENSE
 | ||
|    :alt: License
 | ||
| 
 | ||
| .. image:: https://static.pepy.tech/badge/bidict
 | ||
|    :target: https://pepy.tech/project/bidict
 | ||
|    :alt: PyPI Downloads
 | ||
| 
 | ||
| 
 | ||
| ``bidict``:
 | ||
| ^^^^^^^^^^^
 | ||
| 
 | ||
| - has been used for many years by several teams at
 | ||
|   **Google, Venmo, CERN, Bank of America Merrill Lynch, Bloomberg, Two Sigma,** and many others
 | ||
| - has carefully designed APIs for
 | ||
|   **safety, simplicity, flexibility, and ergonomics**
 | ||
| - is **fast, lightweight, and has no runtime dependencies** other than Python's standard library
 | ||
| - **integrates natively** with Python’s ``collections.abc`` interfaces
 | ||
| - provides **type hints** for all public APIs
 | ||
| - is implemented in **concise, well-factored, pure (PyPy-compatible) Python code**
 | ||
|   that is **optimized for running efficiently**
 | ||
|   as well as for **reading and learning** [#fn-learning]_
 | ||
| - has **extensive docs and test coverage**
 | ||
|   (including property-based tests and benchmarks)
 | ||
|   run continuously on all supported Python versions
 | ||
| 
 | ||
| 
 | ||
| Note: Python 3 Required
 | ||
| ~~~~~~~~~~~~~~~~~~~~~~~
 | ||
| 
 | ||
| As promised in the 0.18.2 release (see :doc:`changelog` [#fn-changelog]_),
 | ||
| **Python 2 is no longer supported**.
 | ||
| Version 0.18.3
 | ||
| is the last release of ``bidict`` that supports Python 2.
 | ||
| This makes ``bidict`` more efficient on Python 3
 | ||
| and enables further improvement to bidict in the future.
 | ||
| See `python3statement.org <https://python3statement.org>`__
 | ||
| for more info.
 | ||
| 
 | ||
| 
 | ||
| Installation
 | ||
| ------------
 | ||
| 
 | ||
| ``pip install bidict``
 | ||
| 
 | ||
| 
 | ||
| Quick Start
 | ||
| -----------
 | ||
| 
 | ||
| .. code:: python
 | ||
| 
 | ||
|    >>> from bidict import bidict
 | ||
|    >>> element_by_symbol = bidict({'H': 'hydrogen'})
 | ||
|    >>> element_by_symbol['H']
 | ||
|    'hydrogen'
 | ||
|    >>> element_by_symbol.inverse['hydrogen']
 | ||
|    'H'
 | ||
| 
 | ||
| 
 | ||
| For more usage documentation,
 | ||
| head to the :doc:`intro` [#fn-intro]_
 | ||
| and proceed from there.
 | ||
| 
 | ||
| 
 | ||
| Community Support
 | ||
| -----------------
 | ||
| 
 | ||
| .. image:: https://img.shields.io/badge/chat-on%20gitter-5AB999.svg?logo=gitter-white
 | ||
|    :target: https://gitter.im/jab/bidict
 | ||
|    :alt: Chat
 | ||
| 
 | ||
| If you are thinking of using ``bidict`` in your work,
 | ||
| or if you have any questions, comments, or suggestions,
 | ||
| I'd love to know about your use case
 | ||
| and provide as much voluntary support for it as possible.
 | ||
| 
 | ||
| Please feel free to leave a message in the
 | ||
| `chatroom <https://gitter.im/jab/bidict>`__
 | ||
| or open a new issue on GitHub.
 | ||
| You can search through
 | ||
| `existing issues <https://github.com/jab/bidict/issues>`__
 | ||
| before creating a new one
 | ||
| in case your questions or concerns have been adressed there already.
 | ||
| 
 | ||
| 
 | ||
| Enterprise-Grade Support via Tidelift
 | ||
| -------------------------------------
 | ||
| 
 | ||
| .. image:: https://img.shields.io/badge/tidelift-pro%20support-orange.svg
 | ||
|    :target: https://tidelift.com/subscription/pkg/pypi-bidict?utm_source=pypi-bidict&utm_medium=referral&utm_campaign=readme
 | ||
|    :alt: Paid support available via Tidelift
 | ||
| 
 | ||
| If your use case requires a greater level of support,
 | ||
| enterprise-grade support for ``bidict`` can be obtained via the
 | ||
| `Tidelift subscription <https://tidelift.com/subscription/pkg/pypi-bidict?utm_source=pypi-bidict&utm_medium=referral&utm_campaign=readme>`__.
 | ||
| 
 | ||
| 
 | ||
| Notice of Usage
 | ||
| ---------------
 | ||
| 
 | ||
| If you use ``bidict``,
 | ||
| and especially if your usage or your organization is significant in some way,
 | ||
| please let me know.
 | ||
| 
 | ||
| You can:
 | ||
| 
 | ||
| - `star bidict on GitHub <https://github.com/jab/bidict>`__
 | ||
| - `create an issue <https://github.com/jab/bidict/issues/new?title=Notice+of+Usage&body=I+am+using+bidict+for...>`__
 | ||
| - leave a message in the `chat room <https://gitter.im/jab/bidict>`__
 | ||
| - `email me <mailto:jabronson@gmail.com?subject=bidict&body=I%20am%20using%20bidict%20for...>`__
 | ||
| 
 | ||
| 
 | ||
| Changelog
 | ||
| ---------
 | ||
| 
 | ||
| See the :doc:`changelog` [#fn-changelog]_
 | ||
| for a history of notable changes to ``bidict``.
 | ||
| 
 | ||
| 
 | ||
| Release Notifications
 | ||
| ---------------------
 | ||
| 
 | ||
| .. duplicated in CHANGELOG.rst:
 | ||
|    (would use `.. include::` but GitHub doesn't understand it)
 | ||
| 
 | ||
| .. image:: https://img.shields.io/badge/libraries.io-subscribe-5BC0DF.svg
 | ||
|    :target: https://libraries.io/pypi/bidict
 | ||
|    :alt: Follow on libraries.io
 | ||
| 
 | ||
| Subscribe to releases
 | ||
| `on GitHub <https://github.blog/changelog/2018-11-27-watch-releases/>`__ or
 | ||
| `libraries.io <https://libraries.io/pypi/bidict>`__
 | ||
| to be notified when new versions of ``bidict`` are released.
 | ||
| 
 | ||
| 
 | ||
| Learning from ``bidict``
 | ||
| ------------------------
 | ||
| 
 | ||
| One of the best things about ``bidict``
 | ||
| is that it touches a surprising number of
 | ||
| interesting Python corners,
 | ||
| especially given its small size and scope.
 | ||
| 
 | ||
| Check out :doc:`learning-from-bidict` [#fn-learning]_
 | ||
| if you're interested in learning more.
 | ||
| 
 | ||
| 
 | ||
| Contributing
 | ||
| ------------
 | ||
| 
 | ||
| ``bidict`` is currently a one-person operation
 | ||
| maintained on a voluntary basis.
 | ||
| 
 | ||
| Your help would be most welcome!
 | ||
| 
 | ||
| 
 | ||
| Reviewers Wanted!
 | ||
| ^^^^^^^^^^^^^^^^^
 | ||
| 
 | ||
| One of the most valuable ways to contribute to ``bidict`` –
 | ||
| and to explore some interesting Python corners [#fn-learning]_
 | ||
| while you're at it –
 | ||
| is to review the relatively small codebase.
 | ||
| 
 | ||
| Please create an issue or pull request with any improvements you'd propose
 | ||
| or any other results you found.
 | ||
| Submitting a `draft PR <https://github.blog/2019-02-14-introducing-draft-pull-requests/>`__
 | ||
| with feedback in inline code comments, or a
 | ||
| `"Review results" issue <https://github.com/jab/bidict/issues/new?title=Review+results>`__,
 | ||
| would each work well.
 | ||
| 
 | ||
| You can also
 | ||
| +1 `this issue <https://github.com/jab/bidict/issues/63>`__
 | ||
| to sign up to give feedback on future proposed changes
 | ||
| that are in need of a reviewer.
 | ||
| 
 | ||
| 
 | ||
| Giving Back
 | ||
| ^^^^^^^^^^^
 | ||
| 
 | ||
| .. duplicated in CONTRIBUTING.rst
 | ||
|    (would use `.. include::` but GitHub doesn't understand it)
 | ||
| 
 | ||
| ``bidict`` is the product of hundreds of hours of unpaid, voluntary work.
 | ||
| 
 | ||
| If ``bidict`` has helped you accomplish your work,
 | ||
| especially work you've been paid for,
 | ||
| please consider chipping in toward the costs
 | ||
| of its maintenance and development
 | ||
| and/or ask your organization to do the same.
 | ||
| 
 | ||
| .. image:: https://raw.githubusercontent.com/jab/bidict/master/assets/support-on-gumroad.png
 | ||
|    :target: https://gumroad.com/l/bidict
 | ||
|    :alt: Support bidict
 | ||
| 
 | ||
| 
 | ||
| Finding Documentation
 | ||
| ---------------------
 | ||
| 
 | ||
| If you're viewing this on `<https://bidict.readthedocs.io>`__,
 | ||
| note that multiple versions of the documentation are available,
 | ||
| and you can choose a different version using the popup menu at the bottom-right.
 | ||
| Please make sure you're viewing the version of the documentation
 | ||
| that corresponds to the version of ``bidict`` you'd like to use.
 | ||
| 
 | ||
| If you're viewing this on GitHub, PyPI, or some other place
 | ||
| that can't render and link this documentation properly
 | ||
| and are seeing broken links,
 | ||
| try these alternate links instead:
 | ||
| 
 | ||
| .. [#fn-learning] `<docs/learning-from-bidict.rst>`__ | `<https://bidict.readthedocs.io/learning-from-bidict.html>`__
 | ||
| 
 | ||
| .. [#fn-changelog] `<CHANGELOG.rst>`__ | `<https://bidict.readthedocs.io/changelog.html>`__
 | ||
| 
 | ||
| .. [#fn-intro] `<docs/intro.rst>`__ | `<https://bidict.readthedocs.io/intro.html>`__
 | ||
| 
 | ||
| 
 | ||
| ----
 | ||
| 
 | ||
| Next: :doc:`intro` [#fn-intro]_
 | ||
| 
 | ||
| 
 |