Development of an internal social media platform with personalised dashboards for students
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

METADATA 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348
  1. Metadata-Version: 2.1
  2. Name: BTrees
  3. Version: 4.5.1
  4. Summary: Scalable persistent object containers
  5. Home-page: https://github.com/zopefoundation/BTrees
  6. Author: Zope Foundation
  7. Author-email: zodb-dev@zope.org
  8. License: ZPL 2.1
  9. Platform: any
  10. Classifier: Development Status :: 6 - Mature
  11. Classifier: License :: OSI Approved :: Zope Public License
  12. Classifier: Programming Language :: Python
  13. Classifier: Programming Language :: Python :: 2
  14. Classifier: Programming Language :: Python :: 2.7
  15. Classifier: Programming Language :: Python :: 3
  16. Classifier: Programming Language :: Python :: 3.4
  17. Classifier: Programming Language :: Python :: 3.5
  18. Classifier: Programming Language :: Python :: 3.6
  19. Classifier: Programming Language :: Python :: 3.7
  20. Classifier: Programming Language :: Python :: Implementation :: CPython
  21. Classifier: Programming Language :: Python :: Implementation :: PyPy
  22. Classifier: Framework :: ZODB
  23. Classifier: Topic :: Database
  24. Classifier: Topic :: Software Development :: Libraries :: Python Modules
  25. Classifier: Operating System :: Microsoft :: Windows
  26. Classifier: Operating System :: Unix
  27. Provides-Extra: test
  28. Provides-Extra: ZODB
  29. Provides-Extra: docs
  30. Requires-Dist: persistent (>=4.1.0)
  31. Requires-Dist: zope.interface
  32. Provides-Extra: ZODB
  33. Requires-Dist: ZODB; extra == 'ZODB'
  34. Provides-Extra: docs
  35. Requires-Dist: Sphinx; extra == 'docs'
  36. Requires-Dist: repoze.sphinx.autointerface; extra == 'docs'
  37. Provides-Extra: test
  38. Requires-Dist: transaction; extra == 'test'
  39. Requires-Dist: zope.testrunner; extra == 'test'
  40. ``BTrees``: scalable persistent components
  41. ===========================================
  42. .. image:: https://travis-ci.org/zopefoundation/BTrees.svg?branch=master
  43. :target: https://travis-ci.org/zopefoundation/BTrees
  44. .. image:: https://ci.appveyor.com/api/projects/status/github/zopefoundation/BTrees?branch=master&svg=true
  45. :target: https://ci.appveyor.com/project/mgedmin/BTrees
  46. .. image:: https://coveralls.io/repos/github/zopefoundation/BTrees/badge.svg?branch=master
  47. :target: https://coveralls.io/github/zopefoundation/BTrees?branch=master
  48. .. image:: https://img.shields.io/pypi/v/BTrees.svg
  49. :target: https://pypi.org/project/BTrees/
  50. :alt: Current version on PyPI
  51. .. image:: https://img.shields.io/pypi/pyversions/BTrees.svg
  52. :target: https://pypi.org/project/BTrees/
  53. :alt: Supported Python versions
  54. This package contains a set of persistent object containers built around
  55. a modified BTree data structure. The trees are optimized for use inside
  56. ZODB's "optimistic concurrency" paradigm, and include explicit resolution
  57. of conflicts detected by that mechanism.
  58. Please see `the Sphinx documentation <http://btrees.readthedocs.io/>`_ for further
  59. information.
  60. ``BTrees`` Changelog
  61. ====================
  62. 4.5.1 (2018-08-09)
  63. ------------------
  64. - Produce binary wheels for Python 3.7.
  65. - Use pyproject.toml to specify build dependencies. This requires pip
  66. 18 or later to build from source.
  67. 4.5.0 (2018-04-23)
  68. ------------------
  69. - Add support for Python 3.6 and 3.7.
  70. - Drop support for Python 3.3.
  71. - Raise an ``ImportError`` consistently on Python 3 if the C extension for
  72. BTrees is used but the ``persistent`` C extension is not available.
  73. Previously this could result in an odd ``AttributeError``. See
  74. https://github.com/zopefoundation/BTrees/pull/55
  75. - Fix the possibility of a rare crash in the C extension when
  76. deallocating items. See https://github.com/zopefoundation/BTrees/issues/75
  77. - Respect the ``PURE_PYTHON`` environment variable at runtime even if
  78. the C extensions are available. See
  79. https://github.com/zopefoundation/BTrees/issues/78
  80. - Always attempt to build the C extensions, but make their success
  81. optional.
  82. - Fix a ``DeprecationWarning`` that could come from I and L objects in
  83. Python 2 in pure-Python mode. See https://github.com/zopefoundation/BTrees/issues/79
  84. 4.4.1 (2017-01-24)
  85. ------------------
  86. Fixed a packaging bug that caused extra files to be included (some of
  87. which caused problems in some platforms).
  88. 4.4.0 (2017-01-11)
  89. ------------------
  90. - Allow None as a special key (sorted smaller than all others).
  91. This is a bit of a return to BTrees 3 behavior in that Nones are
  92. allowed as keys again. Other objects with default ordering are
  93. still not allowed as keys.
  94. 4.3.2 (2017-01-05)
  95. ------------------
  96. - Make the CPython implementation consistent with the pure-Python
  97. implementation and only check object keys for default comparison
  98. when setting keys. In Python 2 this makes it possible to remove keys
  99. that were added using a less restrictive version of BTrees. (In
  100. Python 3 keys that are unorderable still cannot be removed.)
  101. Likewise, all versions can unpickle trees that already had such
  102. keys. See: https://github.com/zopefoundation/BTrees/issues/53 and
  103. https://github.com/zopefoundation/BTrees/issues/51
  104. - Make the Python implementation consistent with the CPython
  105. implementation and check object key identity before checking
  106. equality and performing comparisons. This can allow fixing trees
  107. that have keys that now have broken comparison functions. See
  108. https://github.com/zopefoundation/BTrees/issues/50
  109. - Make the CPython implementation consistent with the pure-Python
  110. implementation and no longer raise ``TypeError`` for an object key
  111. (in object-keyed trees) with default comparison on ``__getitem__``,
  112. ``get`` or ``in`` operations. Instead, the results will be a
  113. ``KeyError``, the default value, and ``False``, respectively.
  114. Previously, CPython raised a ``TypeError`` in those cases, while the
  115. Python implementation behaved as specified.
  116. Likewise, non-integer keys in integer-keyed trees
  117. will raise ``KeyError``, return the default and return ``False``,
  118. respectively, in both implementations. Previously, pure-Python
  119. raised a ``KeyError``, returned the default, and raised a
  120. ``TypeError``, while CPython raised ``TypeError`` in all three cases.
  121. 4.3.1 (2016-05-16)
  122. ------------------
  123. - Packaging: fix password used to automate wheel creation on Travis.
  124. 4.3.0 (2016-05-10)
  125. ------------------
  126. - Fix unexpected ``OverflowError`` when passing 64bit values to long
  127. keys / values on Win64. See:
  128. https://github.com/zopefoundation/BTrees/issues/32
  129. - When testing ``PURE_PYTHON`` environments under ``tox``, avoid poisoning
  130. the user's global wheel cache.
  131. - Ensure that the pure-Python implementation, used on PyPy and when a C
  132. compiler isn't available for CPython, pickles identically to the C
  133. version. Unpickling will choose the best available implementation.
  134. This change prevents interoperability problems and database corruption if
  135. both implementations are in use. While it is no longer possible to
  136. pickle a Python implementation and have it unpickle to the Python
  137. implementation if the C implementation is available, existing Python
  138. pickles will still unpickle to the Python implementation (until
  139. pickled again). See:
  140. https://github.com/zopefoundation/BTrees/issues/19
  141. - Avoid creating invalid objects when unpickling empty BTrees in a pure-Python
  142. environment.
  143. - Drop support for Python 2.6 and 3.2.
  144. 4.2.0 (2015-11-13)
  145. ------------------
  146. - Add support for Python 3.5.
  147. 4.1.4 (2015-06-02)
  148. ------------------
  149. - Ensure that pure-Python Bucket and Set objects have a human readable
  150. ``__repr__`` like the C versions.
  151. 4.1.3 (2015-05-19)
  152. ------------------
  153. - Fix ``_p_changed`` when removing items from small pure-Python
  154. BTrees/TreeSets and when adding items to small pure-Python Sets. See:
  155. https://github.com/zopefoundation/BTrees/issues/13
  156. 4.1.2 (2015-04-07)
  157. ------------------
  158. - Suppress testing 64-bit values in OLBTrees on 32 bit machines.
  159. See: https://github.com/zopefoundation/BTrees/issues/9
  160. - Fix ``_p_changed`` when adding items to small pure-Python
  161. BTrees/TreeSets. See:
  162. https://github.com/zopefoundation/BTrees/issues/11
  163. 4.1.1 (2014-12-27)
  164. ------------------
  165. - Accomodate long values in pure-Python OLBTrees.
  166. 4.1.0 (2014-12-26)
  167. ------------------
  168. - Add support for PyPy and PyPy3.
  169. - Add support for Python 3.4.
  170. - BTree subclasses can define ``max_leaf_size`` or ``max_internal_size``
  171. to control maximum sizes for Bucket/Set and BTree/TreeSet nodes.
  172. - Detect integer overflow on 32-bit machines correctly under Python 3.
  173. - Update pure-Python and C trees / sets to accept explicit None to indicate
  174. max / min value for ``minKey``, ``maxKey``. (PR #3)
  175. - Update pure-Python trees / sets to accept explicit None to indicate
  176. open ranges for ``keys``, ``values``, ``items``. (PR #3)
  177. 4.0.8 (2013-05-25)
  178. ------------------
  179. - Fix value-based comparison for objects under Py3k: addresses invalid
  180. merges of ``[OLI]OBTrees/OBuckets``.
  181. - Ensure that pure-Python implementation of ``OOBTree.byValue`` matches
  182. semantics (reversed-sort) of C implementation.
  183. 4.0.7 (2013-05-22)
  184. ------------------
  185. - Issue #2: compilation error on 32-bit mode of OS/X.
  186. - Test ``PURE_PYTHON`` environment variable support: if set, the C
  187. extensions will not be built, imported, or tested.
  188. 4.0.6 (2013-05-14)
  189. ------------------
  190. - Changed the ``ZODB`` extra to require only the real ``ZODB`` package,
  191. rather than the ``ZODB3`` metapackage: depending on the version used,
  192. the metapackage could pull in stale versions of **this** package and
  193. ``persistent``.
  194. - Fixed Python version check in ``setup.py``.
  195. 4.0.5 (2013-01-15)
  196. ------------------
  197. - Fit the ``repr`` of bucket objects, which could contain garbage
  198. characters.
  199. 4.0.4 (2013-01-12)
  200. ------------------
  201. - Emulate the (private) iterators used by the C extension modules from
  202. pure Python. This change is "cosmetic" only: it prevents the ZCML
  203. ``zope.app.security:permission.zcml`` from failing. The emulated
  204. classes are **not** functional, and should be considered implementation
  205. details.
  206. - Accomodate buildout to the fact that we no longer bundle a copy
  207. of 'persistent.h'.
  208. - Fix test failures on Windows: no longer rely on overflows from
  209. ``sys.maxint``.
  210. 4.0.3 (2013-01-04)
  211. ------------------
  212. - Added ``setup_requires==['persistent']``.
  213. 4.0.2 (2013-01-03)
  214. ------------------
  215. - Updated Trove classifiers.
  216. - Added explicit support for Python 3.2, Python 3.3, and PyPy.
  217. Note that the C extensions are not (yet) available on PyPy.
  218. - Python reference implementations now tested separately from the C
  219. verions on all platforms.
  220. - 100% unit test coverage.
  221. 4.0.1 (2012-10-21)
  222. ------------------
  223. - Provide local fallback for persistent C header inclusion if the
  224. persistent distribution isn't installed. This makes the winbot happy.
  225. 4.0.0 (2012-10-20)
  226. ------------------
  227. Platform Changes
  228. ################
  229. - Dropped support for Python < 2.6.
  230. - Factored ``BTrees`` as a separate distribution.
  231. Testing Changes
  232. ###############
  233. - All covered platforms tested under ``tox``.
  234. - Added support for continuous integration using ``tox`` and ``jenkins``.
  235. - Added ``setup.py dev`` alias (installs ``nose`` and ``coverage``).
  236. - Dropped dependency on ``zope.testing`` / ``zope.testrunner``: tests now
  237. run with ``setup.py test``.
  238. Documentation Changes
  239. #####################
  240. - Added API reference, generated via Spinx' autodoc.
  241. - Added Sphinx documentation based on ZODB Guide (snippets are exercised
  242. via 'tox').
  243. - Added ``setup.py docs`` alias (installs ``Sphinx`` and
  244. ``repoze.sphinx.autointerface``).