The bidirectional mapping library for Python.
Go to file
jab 887e078907 squashed changes for 0.13.0
- support Python 3.6, refactor CI/test setup, increase test coverage
- refactor BidirectionalMapping, BidictBase, OrderedBidictBase,
  FrozenBidictBase, and subclasses
- move frozenorderedbidict into _frozen and looseorderedbidict into _loose
- register bidict as a virtual subclass of MutableMapping rather than
  inheriting from it directly. This makes it clearer that it does not use any
  of the concrete generic methods that MutableMapping provides.
- improve performance and flexibility of frozenbidict and
  frozenorderedbidict hashing
- docs, including new type-hierarchy.png diagram
- rm unused imap, ifilter, izip_longest from compat, add PYPY
- update to latest versions of dependencies
- restore benchmarking on travis
2017-01-09 10:37:31 -05:00
_static squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
bidict squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
docs squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
tests squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
.editorconfig refactor, tests + docs improvements 2015-04-27 11:08:27 -04:00
.gitignore squashed changes for 0.12.0 2016-06-28 00:05:23 -04:00
.pre-commit-config.yaml implement stricter 1-to-1 checking + many fixes + improvements 2015-12-20 22:05:22 -05:00
.travis.yml squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
CHANGELOG.rst squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
CODE_OF_CONDUCT.rst deps, docs linking fixes/improvements, skip benchmarking for now 2016-12-06 18:09:45 -05:00
CONTRIBUTING.rst squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
LICENSE add license title 2016-07-31 12:31:44 +01:00
MANIFEST.in prepare 0.9.0rc0 2015-05-30 16:26:28 -04:00
PYPI_DOWNLOAD_STATS.rst document retrieving pypi download stats 2016-09-16 16:06:40 -04:00
README.rst squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
build-docs.sh squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
pytest.ini squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
setup.cfg squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
setup.py squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
test.sh squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00
tox.ini squashed changes for 0.13.0 2017-01-09 10:37:31 -05:00

README.rst

bidict
======
 
Efficient, Pythonic bidirectional map implementation and related functionality.

.. image:: https://raw.githubusercontent.com/jab/bidict/master/_static/logo-256.png
    :target: https://bidict.readthedocs.io/
    :alt: bidict logo


Status
------

.. Hide until https://github.com/badges/shields/issues/716 is fixed
.. .. image:: https://img.shields.io/pypi/dm/bidict.svg
..     :target: https://pypi.python.org/pypi/bidict
..     :alt: Downloads per month

.. image:: https://img.shields.io/pypi/v/bidict.svg
    :target: https://pypi.python.org/pypi/bidict
    :alt: Latest release

.. image:: https://img.shields.io/badge/VersionEye-follow-brightgreen.svg
    :target: https://www.versioneye.com/python/bidict
    :alt: Follow on VersionEye

.. image:: https://readthedocs.org/projects/bidict/badge/?version=master
    :target: https://bidict.readthedocs.io/en/master/
    :alt: Documentation

.. image:: https://travis-ci.org/jab/bidict.svg?branch=master
    :target: https://travis-ci.org/jab/bidict
    :alt: Build status

.. image:: https://coveralls.io/repos/jab/bidict/badge.svg?branch=master
    :target: https://coveralls.io/github/jab/bidict
    :alt: Test coverage

.. Hide to reduce clutter
.. .. image:: https://img.shields.io/pypi/pyversions/bidict.svg
..     :target: https://pypi.python.org/pypi/bidict
..     :alt: Supported Python versions

.. image:: https://img.shields.io/pypi/implementation/bidict.svg
    :target: https://pypi.python.org/pypi/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://badges.gitter.im/join%20chat.svg
    :target: https://gitter.im/jab/bidict
    :alt: Chat

The bidict codebase is mature, well-tested, and well-reviewed.
If you have a question or find an issue,
please don't hesitate to
`ask in the chat room <https://gitter.im/jab/bidict>`_,
`file an issue <https://github.com/jab/bidict/issues/new>`_,
or submit a pull request
(but first see the contributing_ section below).


Installation
------------

``pip install bidict``


Usage Documentation
-------------------

For usage documentation, please start at the :ref:`intro`
and proceed from there. *Problems with that link? Note the following:*

If you're reading this on GitHub, PyPI, in your code editor,
or in some other place that can't render/link the full docs properly,
you can find the bidict documentation on Read the Docs at:

    `<https://bidict.readthedocs.io>`_

*Note: multiple versions of the documentation are published on Read the Docs,
and by default you will be taken to the version built from the master branch.
You can choose different versions from the pop-up menu in the lower-right.*

If you have the `bidict source code <https://github.com/jab/bidict>`_  handy,
you can also browse the docs insde the ``docs`` directory,
and build them yourself by running ``make html`` from within that directory
(requires `Sphinx <https://pypi.python.org/pypi/Sphinx>`_).


Contributing
------------

Contributions are gratefully received!
For information about contributing,
please see the :ref:`contributors-guide`.
If that link does not work, see ``CONTRIBUTING.rst`` or
`<https://bidict.readthedocs.io/contributors-guide.html>`_.

.. image:: https://raw.githubusercontent.com/jab/bidict/master/_static/support-on-gumroad.png
    :target: https://gumroad.com/l/bidict
    :alt: Support bidict


Changelog
---------

For a history of notable changes to bidict,
check out the :ref:`changelog`.
If that link does not work, see ``CHANGELOG.rst`` or
`<https://bidict.readthedocs.io/changelog.html>`_.