1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
|
Metadata-Version: 1.1
Name: orderedset
Version: 2.0.3
Summary: An Ordered Set implementation in Cython.
Home-page: https://github.com/simonpercivall/orderedset
Author: Simon Percivall
Author-email: percivall@gmail.com
License: BSD
Description: ===========
Ordered Set
===========
.. image:: https://badge.fury.io/py/orderedset.png
:target: http://badge.fury.io/py/orderedset
.. image:: https://travis-ci.org/simonpercivall/orderedset.png?branch=master
:target: https://travis-ci.org/simonpercivall/orderedset
.. image:: https://pypip.in/d/orderedset/badge.png
:target: https://crate.io/packages/orderedset?version=latest
An Ordered Set implementation in Cython. Based on `Raymond Hettinger's OrderedSet recipe`_.
Example:
.. code-block:: python
>>> from orderedset import OrderedSet
>>> oset = OrderedSet([1, 2, 3])
>>> oset
OrderedSet([1, 2, 3])
>>> oset | [5, 4, 3, 2, 1]
OrderedSet([1, 2, 3, 5, 4])
* Free software: BSD license
* Documentation: http://orderedset.rtfd.org.
Features
--------
* Works like a regular set, but remembers insertion order;
* Is approximately 5 times faster than the pure Python implementation overall
(and 5 times slower than `set`);
* Compatible with Python 2.7 through 3.8;
* Supports the full set interface;
* Supports some list methods, like `index` and `__getitem__`.
* Supports set methods against iterables.
.. _`Raymond Hettinger's OrderedSet recipe`: http://code.activestate.com/recipes/576694/
Changelog
=========
2.0.3 - 2020-02-26
~~~~~~~~~~~~~~~~~~
* bugfix: Generate new C file to fix compile issues
2.0.2 - 2020-02-25
~~~~~~~~~~~~~~~~~~
* bugfix: Fix deprecation warning for collections.abc in Python 3.8+
2.0.1 - 2018-03-20
~~~~~~~~~~~~~~~~~~
* bugfix: Fix `isdisjoint` to return True when the sets are disjoint
* build: Include 3.6 when testing
* dist: Include test files in sdist
* docs: Make the Readme a bit prettier
2.0 - 2016-02-02
~~~~~~~~~~~~~~~~
* breaking change: All comparisons, other than `eq`, against other ordered sets
are now performed unordered; i.e., they are treated as regular sets.
* `isorderedsubset` and `isorderedsuperset` have been added to perform ordered
comparisons against other sequences. Using these methods with unordered
collections wield yield arbitrary (and depending on Python implementation,
unstable) results.
1.2 - 2015-09-29
~~~~~~~~~~~~~~~~
* bugfix: Set operations only worked with iterables if the OrderedSet was on the
left-hand side. They now work both ways.
* bugfix: The order of an intersection was the right-hand side's order. It is now
fixed to be the left-hand side's order.
1.1.2 - 2014-10-02
~~~~~~~~~~~~~~~~~~
* Make comparisons work with sets and lists, and not crash when compared with None.
1.1.1 - 2014-08-24
~~~~~~~~~~~~~~~~~~
* Add pickle/copy support to OrderedSet
1.1 - 2014-06-04
~~~~~~~~~~~~~~~~
* Make OrderedSets handle slicing in __getitem__().
1.0.2 - 2014-05-14
~~~~~~~~~~~~~~~~~~
* Add proper attribution and licenses.
1.0.1 - 2014-05-13
~~~~~~~~~~~~~~~~~~
* Don't require Cython to build an sdist.
1.0 - 2014-05-11
~~~~~~~~~~~~~~~~
* First implementation.
Keywords: orderedset
Platform: UNKNOWN
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
|