Skip to content
Snippets Groups Projects
Commit ce0c7366 authored by Daniel Silverstone's avatar Daniel Silverstone
Browse files

loadelement.py: Switch from roaringbitmap to pyroaring


The licence for roaringbitmap was not compatible.  pyroaring is
a similar project which is MIT licensed and is slightly better on
memory too.

Signed-off-by: default avatarDaniel Silverstone <daniel.silverstone@codethink.co.uk>
parent 0e471144
No related branches found
No related tags found
No related merge requests found
Pipeline #46384365 failed
......@@ -21,7 +21,7 @@
from collections.abc import Mapping
from itertools import count
from roaringbitmap import RoaringBitmap, ImmutableRoaringBitmap # pylint: disable=no-name-in-module
from pyroaring import BitMap, FrozenBitMap # pylint: disable=no-name-in-module
# BuildStream toplevel imports
from .._exceptions import LoadError, LoadErrorReason
......@@ -123,7 +123,7 @@ class LoadElement():
if self._dep_cache:
return
self._dep_cache = RoaringBitmap()
self._dep_cache = BitMap()
for dep in self.dependencies:
elt = dep.element
......@@ -137,7 +137,7 @@ class LoadElement():
# And we depend on everything this element depends on
self._dep_cache.update(elt._dep_cache)
self._dep_cache = ImmutableRoaringBitmap(self._dep_cache)
self._dep_cache = FrozenBitMap(self._dep_cache)
# _extract_depends_from_node():
......
......@@ -13,6 +13,4 @@ psutil
# See issues #571 and #790.
ruamel.yaml >= 0.15.41, < 0.15.52
setuptools
# (Potentially) short-term need for roaring bitmaps for the
# loader dependency sorting
roaringbitmap
pyroaring
......@@ -13,9 +13,7 @@ psutil==5.4.8
# See issues #571 and #790.
ruamel.yaml==0.15.51
setuptools==39.0.1
# (Potentially) short-term need for roaring bitmaps for the
# loader dependency sorting
roaringbitmap==0.6
pyroaring==0.2.6
## The following requirements were added by pip freeze:
MarkupSafe==1.1.0
six==1.12.0
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment