[Notes] [Git][BuildStream/buildstream][master] 3 commits: loadelement.py: Switch from roaringbitmap to pyroaring



Title: GitLab

Benjamin Schubert pushed to branch master at BuildStream / buildstream

Commits:

4 changed files:

Changes:

  • .gitlab-ci.yml
    1
    -image: buildstream/testsuite-debian:9-5da27168-32c47d1c
    
    1
    +image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:9-master-46405991
    
    2 2
     
    
    3 3
     cache:
    
    4 4
       key: "$CI_JOB_NAME-"
    
    ... ... @@ -46,23 +46,23 @@ variables:
    46 46
         - .coverage-reports
    
    47 47
     
    
    48 48
     tests-debian-9:
    
    49
    -  image: buildstream/testsuite-debian:9-5da27168-32c47d1c
    
    49
    +  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-debian:9-master-46405991
    
    50 50
       <<: *tests
    
    51 51
     
    
    52 52
     tests-fedora-27:
    
    53
    -  image: buildstream/testsuite-fedora:27-5da27168-32c47d1c
    
    53
    +  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:27-master-46405991
    
    54 54
       <<: *tests
    
    55 55
     
    
    56 56
     tests-fedora-28:
    
    57
    -  image: buildstream/testsuite-fedora:28-5da27168-32c47d1c
    
    57
    +  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:28-master-46405991
    
    58 58
       <<: *tests
    
    59 59
     
    
    60 60
     tests-ubuntu-18.04:
    
    61
    -  image: buildstream/testsuite-ubuntu:18.04-5da27168-32c47d1c
    
    61
    +  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-ubuntu:18.04-master-46405991
    
    62 62
       <<: *tests
    
    63 63
     
    
    64 64
     tests-python-3.7-stretch:
    
    65
    -  image: buildstream/testsuite-python:3.7-stretch-a60f0c39
    
    65
    +  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-python:3.7-stretch-master-46405991
    
    66 66
       <<: *tests
    
    67 67
     
    
    68 68
       variables:
    
    ... ... @@ -73,10 +73,10 @@ tests-python-3.7-stretch:
    73 73
     
    
    74 74
     tests-centos-7.6:
    
    75 75
       <<: *tests
    
    76
    -  image: buildstream/testsuite-centos:7.6-5da27168-32c47d1c
    
    76
    +  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-centos:7.6.1810-master-46405991
    
    77 77
     
    
    78 78
     overnight-fedora-28-aarch64:
    
    79
    -  image: buildstream/testsuite-fedora:aarch64-28-5da27168-32c47d1c
    
    79
    +  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:aarch64-28-master-46405991
    
    80 80
       tags:
    
    81 81
         - aarch64
    
    82 82
       <<: *tests
    
    ... ... @@ -95,7 +95,7 @@ overnight-fedora-28-aarch64:
    95 95
     tests-unix:
    
    96 96
       # Use fedora here, to a) run a test on fedora and b) ensure that we
    
    97 97
       # can get rid of ostree - this is not possible with debian-8
    
    98
    -  image: buildstream/testsuite-fedora:27-5da27168-32c47d1c
    
    98
    +  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:27-master-46405991
    
    99 99
       <<: *tests
    
    100 100
       variables:
    
    101 101
         BST_FORCE_BACKEND: "unix"
    
    ... ... @@ -105,7 +105,7 @@ tests-unix:
    105 105
         # We remove the Bubblewrap and OSTree packages here so that we catch any
    
    106 106
         # codepaths that try to use them. Removing OSTree causes fuse-libs to
    
    107 107
         # disappear unless we mark it as user-installed.
    
    108
    -    - dnf mark install fuse-libs
    
    108
    +    - dnf mark install fuse-libs systemd-udev
    
    109 109
         - dnf erase -y bubblewrap ostree
    
    110 110
     
    
    111 111
         # Since the unix platform is required to run as root, no user change required
    
    ... ... @@ -113,14 +113,14 @@ tests-unix:
    113 113
     
    
    114 114
     tests-fedora-missing-deps:
    
    115 115
       # Ensure that tests behave nicely while missing bwrap and ostree
    
    116
    -  image: buildstream/testsuite-fedora:28-5da27168-32c47d1c
    
    116
    +  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:28-master-46405991
    
    117 117
       <<: *tests
    
    118 118
     
    
    119 119
       script:
    
    120 120
         # We remove the Bubblewrap and OSTree packages here so that we catch any
    
    121 121
         # codepaths that try to use them. Removing OSTree causes fuse-libs to
    
    122 122
         # disappear unless we mark it as user-installed.
    
    123
    -    - dnf mark install fuse-libs
    
    123
    +    - dnf mark install fuse-libs systemd-udev
    
    124 124
         - dnf erase -y bubblewrap ostree
    
    125 125
     
    
    126 126
         - useradd -Um buildstream
    
    ... ... @@ -132,7 +132,7 @@ tests-fedora-update-deps:
    132 132
       # Check if the tests pass after updating requirements to their latest
    
    133 133
       # allowed version.
    
    134 134
       allow_failure: true
    
    135
    -  image: buildstream/testsuite-fedora:28-5da27168-32c47d1c
    
    135
    +  image: registry.gitlab.com/buildstream/buildstream-docker-images/testsuite-fedora:28-master-46405991
    
    136 136
       <<: *tests
    
    137 137
     
    
    138 138
       script:
    

  • buildstream/_loader/loadelement.py
    ... ... @@ -21,7 +21,7 @@
    21 21
     from collections.abc import Mapping
    
    22 22
     from itertools import count
    
    23 23
     
    
    24
    -from roaringbitmap import RoaringBitmap, ImmutableRoaringBitmap  # pylint: disable=no-name-in-module
    
    24
    +from pyroaring import BitMap, FrozenBitMap  # pylint: disable=no-name-in-module
    
    25 25
     
    
    26 26
     # BuildStream toplevel imports
    
    27 27
     from .._exceptions import LoadError, LoadErrorReason
    
    ... ... @@ -123,7 +123,7 @@ class LoadElement():
    123 123
             if self._dep_cache:
    
    124 124
                 return
    
    125 125
     
    
    126
    -        self._dep_cache = RoaringBitmap()
    
    126
    +        self._dep_cache = BitMap()
    
    127 127
     
    
    128 128
             for dep in self.dependencies:
    
    129 129
                 elt = dep.element
    
    ... ... @@ -137,7 +137,7 @@ class LoadElement():
    137 137
                 # And we depend on everything this element depends on
    
    138 138
                 self._dep_cache.update(elt._dep_cache)
    
    139 139
     
    
    140
    -        self._dep_cache = ImmutableRoaringBitmap(self._dep_cache)
    
    140
    +        self._dep_cache = FrozenBitMap(self._dep_cache)
    
    141 141
     
    
    142 142
     
    
    143 143
     # _extract_depends_from_node():
    

  • requirements/requirements.in
    ... ... @@ -13,6 +13,4 @@ psutil
    13 13
     # See issues #571 and #790.
    
    14 14
     ruamel.yaml >= 0.15.41, < 0.15.52
    
    15 15
     setuptools
    
    16
    -# (Potentially) short-term need for roaring bitmaps for the
    
    17
    -# loader dependency sorting
    
    18
    -roaringbitmap
    16
    +pyroaring

  • requirements/requirements.txt
    ... ... @@ -13,9 +13,7 @@ psutil==5.4.8
    13 13
     # See issues #571 and #790.
    
    14 14
     ruamel.yaml==0.15.51
    
    15 15
     setuptools==39.0.1
    
    16
    -# (Potentially) short-term need for roaring bitmaps for the
    
    17
    -# loader dependency sorting
    
    18
    -roaringbitmap==0.6
    
    16
    +pyroaring==0.2.6
    
    19 17
     ## The following requirements were added by pip freeze:
    
    20 18
     MarkupSafe==1.1.0
    
    21 19
     six==1.12.0



  • [Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]