Skip to content

Commit 2c29d76

Browse files
authored
Merge pull request #423 from mabel-dev/ver0.6.30
0.6.30
2 parents 889550b + af4f148 commit 2c29d76

4 files changed

Lines changed: 24 additions & 14 deletions

File tree

mabel/data/writers/internals/blob_writer.py

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
import io
22
import json
33
import threading
4-
from typing import List, Optional, Union
4+
from typing import List
5+
from typing import Optional
6+
from typing import Union
57

68
import orjson
79
import orso
@@ -61,7 +63,12 @@ def arrow_append(self, record: dict = {}):
6163
self.records_in_buffer += 1
6264
self.wal.append(record) # type:ignore
6365
# if this write would exceed the blob size, close it
64-
if self.wal.nbytes() > self.maximum_blob_size:
66+
# check every 1000 records to reduce overhead.
67+
if (
68+
self.records_in_buffer > 0
69+
and self.records_in_buffer % 1000 == 0
70+
and self.wal.nbytes() > self.maximum_blob_size
71+
):
6572
self.commit()
6673
self.open_buffer()
6774

@@ -170,7 +177,9 @@ def commit(self):
170177
if self.sort_by:
171178
# Convert list of strings to PyArrow format
172179
sort_spec = self.sort_by
173-
if isinstance(self.sort_by, list) and all(isinstance(item, str) for item in self.sort_by):
180+
if isinstance(self.sort_by, list) and all(
181+
isinstance(item, str) for item in self.sort_by
182+
):
174183
# Convert list of strings to list of tuples with default ascending order
175184
sort_spec = [(col, "ascending") for col in self.sort_by]
176185
pytable = pytable.sort_by(sort_spec)

mabel/version.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Store the version here so:
22
# 1) we don't load dependencies by storing it in __init__.py
33
# 2) we can import it in setup.py for the same reason
4-
__version__ = "0.6.29"
4+
__version__ = "0.6.30"
55

66
# nodoc - don't add to the documentation wiki

tests/NFT/currency.py

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@
2727
import requests # type:ignore
2828
import logging
2929
import operator
30-
import pkg_resources # type:ignore
31-
from pkg_resources import parse_version # type:ignore
30+
from importlib.metadata import distributions # type:ignore
31+
from packaging.version import Version # type:ignore
3232

3333
logger = logging.getLogger("measures")
3434
logger.setLevel(10)
@@ -85,16 +85,16 @@ def get_latest_version(package_name):
8585

8686
def compare_versions(version_a, version_b):
8787
# default to equals
88-
operator = COMPARATORS["="]
88+
operator_func = COMPARATORS["="]
8989

9090
# find if it's a different operator
9191
find_operator = [c for c in COMPARATORS if version_a.startswith(c)]
9292
if len(find_operator):
9393
s = find_operator[0]
94-
operator = COMPARATORS[s]
94+
operator_func = COMPARATORS[s]
9595
version_a = version_a.lstrip(s)
9696

97-
return operator(parse_version(version_b), parse_version(version_a))
97+
return operator_func(Version(version_b), Version(version_a))
9898

9999

100100
def get_package_summary(package=None, installed_version=None, vuln_details={}):
@@ -157,11 +157,11 @@ def test(self):
157157
results = []
158158

159159
known_vulns = get_known_vulns()
160-
for package in pkg_resources.working_set:
160+
for dist in distributions():
161161
package_result = get_package_summary(
162-
package=package.project_name,
163-
installed_version=package.version,
164-
vuln_details=known_vulns.get(package.project_name),
162+
package=dist.metadata["Name"],
163+
installed_version=dist.version,
164+
vuln_details=known_vulns.get(dist.metadata["Name"]),
165165
)
166166

167167
if package_result["state"] == "VULNERABLE":

tests/test_utils_dates.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import numpy
99
import pandas
1010

11-
from mabel.utils import dates
11+
#from mabel.utils import dates
1212

1313
# fmt:off
1414
DATE_TESTS = [
@@ -40,6 +40,7 @@
4040

4141
@pytest.mark.parametrize("string, expect", DATE_TESTS)
4242
def test_date_parser(string, expect):
43+
from opteryx.utils import dates
4344
assert (
4445
dates.parse_iso(string) == expect
4546
), f"in:{string} res:{dates.parse_iso(string)} exp:{expect}"

0 commit comments

Comments
 (0)