nucliadb 6.3.1.post3524__py3-none-any.whl → 6.3.1.post3526__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -36,7 +36,7 @@ from nucliadb_protos.utils_pb2 import Relation
36
36
 
37
37
 
38
38
  class DummyWriterStub: # pragma: no cover
39
- def __init__(self):
39
+ def __init__(self: "DummyWriterStub"):
40
40
  self.calls: dict[str, list[Any]] = {}
41
41
 
42
42
  async def NewShard(self, data): # pragma: no cover
@@ -82,7 +82,7 @@ class DummyWriterStub: # pragma: no cover
82
82
 
83
83
 
84
84
  class DummyReaderStub: # pragma: no cover
85
- def __init__(self):
85
+ def __init__(self: "DummyReaderStub"):
86
86
  self.calls: dict[str, list[Any]] = {}
87
87
 
88
88
  async def GetShard(self, data): # pragma: no cover
@@ -281,7 +281,7 @@ class KBShardManager:
281
281
  class StandaloneKBShardManager(KBShardManager):
282
282
  max_ops_before_checks = 200
283
283
 
284
- def __init__(self):
284
+ def __init__(self: "StandaloneKBShardManager"):
285
285
  super().__init__()
286
286
  self._lock = asyncio.Lock()
287
287
  self._change_count: dict[tuple[str, str], int] = {}
@@ -35,8 +35,12 @@ it's transaction
35
35
 
36
36
  """
37
37
 
38
- import sys
39
38
  from functools import wraps
39
+ from typing import Awaitable, Callable, TypeVar
40
+
41
+ from typing_extensions import Concatenate, ParamSpec
42
+
43
+ from nucliadb.common.maindb.driver import Transaction
40
44
 
41
45
  from . import kb as kb_dm
42
46
  from . import labels as labels_dm
@@ -44,34 +48,24 @@ from . import resources as resources_dm
44
48
  from . import synonyms as synonyms_dm
45
49
  from .utils import with_ro_transaction, with_transaction
46
50
 
47
- # XXX: we are using the not exported _ParamSpec to support 3.9. Whenever we
48
- # upgrade to >= 3.10 we'll be able to use ParamSpecKwargs and improve the
49
- # typing. We are abusing of ParamSpec anywat to better support text editors, so
50
- # we also need to ignore some mypy complains
51
-
52
- __python_version = (sys.version_info.major, sys.version_info.minor)
53
- if __python_version == (3, 9):
54
- from typing_extensions import ParamSpec
55
- else:
56
- from typing import ParamSpec # type: ignore
57
-
58
51
  P = ParamSpec("P")
52
+ T = TypeVar("T")
59
53
 
60
54
 
61
- def ro_txn_wrap(fun: P) -> P: # type: ignore
55
+ def ro_txn_wrap(fun: Callable[Concatenate[Transaction, P], Awaitable[T]]) -> Callable[P, Awaitable[T]]:
62
56
  @wraps(fun)
63
- async def wrapper(**kwargs: P.kwargs):
57
+ async def wrapper(*args: P.args, **kwargs: P.kwargs) -> T:
64
58
  async with with_ro_transaction() as txn:
65
- return await fun(txn, **kwargs)
59
+ return await fun(txn, *args, **kwargs)
66
60
 
67
61
  return wrapper
68
62
 
69
63
 
70
- def rw_txn_wrap(fun: P) -> P: # type: ignore
64
+ def rw_txn_wrap(fun: Callable[Concatenate[Transaction, P], Awaitable[T]]) -> Callable[P, Awaitable[T]]:
71
65
  @wraps(fun)
72
- async def wrapper(**kwargs: P.kwargs):
66
+ async def wrapper(*args: P.args, **kwargs: P.kwargs) -> T:
73
67
  async with with_transaction() as txn:
74
- result = await fun(txn, **kwargs)
68
+ result = await fun(txn, *args, **kwargs)
75
69
  await txn.commit()
76
70
  return result
77
71
 
@@ -41,7 +41,7 @@ class EntitiesMetaCache:
41
41
  change the structure of this class or we'll break the index.
42
42
  """
43
43
 
44
- def __init__(self):
44
+ def __init__(self: "EntitiesMetaCache") -> None:
45
45
  self.deleted_entities: dict[str, list[str]] = {}
46
46
  self.duplicate_entities: dict[str, dict[str, list[str]]] = {}
47
47
  # materialize by value for faster lookups
@@ -28,4 +28,4 @@ class InvalidPBClass(Exception):
28
28
  def __init__(self, source: Type, destination: Type):
29
29
  self.source = source
30
30
  self.destination = destination
31
- super().__init__("Source and destination does not match " f"{self.source} - {self.destination}")
31
+ super().__init__(f"Source and destination does not match {self.source} - {self.destination}")
@@ -858,9 +858,9 @@ class Resource:
858
858
  for field_vectors in fields_vectors:
859
859
  # Bw/c with extracted vectors without vectorsets
860
860
  if not field_vectors.vectorset_id:
861
- assert (
862
- len(vectorsets) == 1
863
- ), "Invalid broker message, can't ingest vectors from unknown vectorset to KB with multiple vectorsets"
861
+ assert len(vectorsets) == 1, (
862
+ "Invalid broker message, can't ingest vectors from unknown vectorset to KB with multiple vectorsets"
863
+ )
864
864
  vectorset = list(vectorsets.values())[0]
865
865
 
866
866
  else:
@@ -477,9 +477,9 @@ class ProcessingEngine:
477
477
 
478
478
 
479
479
  class DummyProcessingEngine(ProcessingEngine):
480
- def __init__(self):
480
+ def __init__(self: "DummyProcessingEngine"):
481
481
  self.calls: list[list[Any]] = []
482
- self.values = defaultdict(list)
482
+ self.values: dict[str, Any] = defaultdict(list)
483
483
  self.onprem = True
484
484
 
485
485
  async def initialize(self):
@@ -189,7 +189,7 @@ async def managed_serialize(
189
189
 
190
190
  include_values = ResourceProperties.VALUES in show
191
191
 
192
- include_extracted_data = ResourceProperties.EXTRACTED in show and extracted is not []
192
+ include_extracted_data = ResourceProperties.EXTRACTED in show and extracted != []
193
193
 
194
194
  if ResourceProperties.BASIC in show:
195
195
  await orm_resource.get_basic()
@@ -59,7 +59,7 @@ rag_histogram = metrics.Histogram(
59
59
 
60
60
 
61
61
  class RAGMetrics:
62
- def __init__(self):
62
+ def __init__(self: "RAGMetrics"):
63
63
  self.global_start = time.monotonic()
64
64
  self._start_times: dict[str, float] = {}
65
65
  self._end_times: dict[str, float] = {}
@@ -169,13 +169,16 @@ async def parse_filter_expression(expr: ResourceFilterExpression, kbid: str) ->
169
169
  elif isinstance(expr, Resource):
170
170
  if expr.id:
171
171
  cat.resource_id = expr.id
172
- else:
172
+ elif expr.slug:
173
173
  rid = await datamanagers.atomic.resources.get_resource_uuid_from_slug(
174
174
  kbid=kbid, slug=expr.slug
175
175
  )
176
176
  if rid is None:
177
177
  raise InvalidQueryError("slug", f"Cannot find slug {expr.slug}")
178
178
  cat.resource_id = rid
179
+ else: # pragma: nocover
180
+ # Cannot happen due to model validation
181
+ raise ValueError("Resource needs id or slug")
179
182
  elif isinstance(expr, DateCreated):
180
183
  cat.date = CatalogExpression.Date(field="created_at", since=expr.since, until=expr.until)
181
184
  elif isinstance(expr, DateModified):
@@ -102,13 +102,16 @@ async def parse_expression(
102
102
  elif isinstance(expr, Resource):
103
103
  if expr.id:
104
104
  f.resource.resource_id = expr.id
105
- else:
105
+ elif expr.slug:
106
106
  rid = await datamanagers.atomic.resources.get_resource_uuid_from_slug(
107
107
  kbid=kbid, slug=expr.slug
108
108
  )
109
109
  if rid is None:
110
110
  raise InvalidQueryError("slug", f"Cannot find slug {expr.slug}")
111
111
  f.resource.resource_id = rid
112
+ else: # pragma: nocover
113
+ # Cannot happen due to model validation
114
+ raise ValueError("Resource needs id or slug")
112
115
  elif isinstance(expr, Field):
113
116
  f.field.field_type = FIELD_TYPE_NAME_TO_STR[expr.type]
114
117
  if expr.name:
@@ -276,7 +276,7 @@ class GCloudFileStorageManager(FileStorageManager):
276
276
  if resp.status not in (200, 204, 404):
277
277
  if resp.status == 404:
278
278
  logger.error(
279
- f"Attempt to delete not found gcloud: {data}, " f"status: {resp.status}",
279
+ f"Attempt to delete not found gcloud: {data}, status: {resp.status}",
280
280
  exc_info=True,
281
281
  )
282
282
  else:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: nucliadb
3
- Version: 6.3.1.post3524
3
+ Version: 6.3.1.post3526
4
4
  Summary: NucliaDB
5
5
  Author-email: Nuclia <nucliadb@nuclia.com>
6
6
  License: AGPL
@@ -20,11 +20,11 @@ Classifier: Programming Language :: Python :: 3.12
20
20
  Classifier: Programming Language :: Python :: 3 :: Only
21
21
  Requires-Python: <4,>=3.9
22
22
  Description-Content-Type: text/markdown
23
- Requires-Dist: nucliadb-telemetry[all]>=6.3.1.post3524
24
- Requires-Dist: nucliadb-utils[cache,fastapi,storages]>=6.3.1.post3524
25
- Requires-Dist: nucliadb-protos>=6.3.1.post3524
26
- Requires-Dist: nucliadb-models>=6.3.1.post3524
27
- Requires-Dist: nidx-protos>=6.3.1.post3524
23
+ Requires-Dist: nucliadb-telemetry[all]>=6.3.1.post3526
24
+ Requires-Dist: nucliadb-utils[cache,fastapi,storages]>=6.3.1.post3526
25
+ Requires-Dist: nucliadb-protos>=6.3.1.post3526
26
+ Requires-Dist: nucliadb-models>=6.3.1.post3526
27
+ Requires-Dist: nidx-protos>=6.3.1.post3526
28
28
  Requires-Dist: nucliadb-admin-assets>=1.0.0.post1224
29
29
  Requires-Dist: nuclia-models>=0.24.2
30
30
  Requires-Dist: uvicorn
@@ -48,9 +48,9 @@ nucliadb/common/nidx.py,sha256=_LoU8D4afEtlW0c3vGUCoatDZvMr0-2l_GtIGap7VxA,10185
48
48
  nucliadb/common/cluster/__init__.py,sha256=cp15ZcFnHvpcu_5-aK2A4uUyvuZVV_MJn4bIXMa20ks,835
49
49
  nucliadb/common/cluster/base.py,sha256=kklDqyvsubNX0W494ttl9f3E58lGaX6AXqAd8XX8ZHE,5522
50
50
  nucliadb/common/cluster/exceptions.py,sha256=t7v_l93t44l2tQpdQXgO_w-c4YZRcaayOz1A2i0w4RQ,1258
51
- nucliadb/common/cluster/grpc_node_dummy.py,sha256=L85wBnfab7Rev0CfsfUjPxQC6DiHPsETKrZAOLx9XHg,3510
51
+ nucliadb/common/cluster/grpc_node_dummy.py,sha256=LxONv0mhDFhx7mI91qqGfQlQ-R0qOGDYaxhXoBHLXaE,3548
52
52
  nucliadb/common/cluster/index_node.py,sha256=g38H1kiAliF3Y6et_CWYInpn_xPxf7THAFJ7RtgLNZo,3246
53
- nucliadb/common/cluster/manager.py,sha256=TMPPfR_41922JiuGpKL5iqNBoZGmv8agfYxlnRQIVss,12726
53
+ nucliadb/common/cluster/manager.py,sha256=KIzqAYGgdVK3GicJ9LdLoei8arWZ7H60imbc32USPj4,12754
54
54
  nucliadb/common/cluster/rebalance.py,sha256=cLUlR08SsqmnoA_9GDflV6k2tXmkAPpyFxZErzp45vo,8754
55
55
  nucliadb/common/cluster/rollover.py,sha256=iTJ9EQmHbzXL34foNFto-hqdC0Kq1pF1mNxqv0jqhBs,25362
56
56
  nucliadb/common/cluster/settings.py,sha256=TMoym-cZsQ2soWfLAce0moSa2XncttQyhahL43LrWTo,3384
@@ -60,9 +60,9 @@ nucliadb/common/cluster/standalone/utils.py,sha256=af3r-x_GF7A6dwIAhZLR-r-SZQEVx
60
60
  nucliadb/common/context/__init__.py,sha256=ZLUvKuIPaolKeA3aeZa2JcHwCIaEauNu8WpdKsiINXo,3354
61
61
  nucliadb/common/context/fastapi.py,sha256=j3HZ3lne6mIfw1eEar2het8RWzv6UruUZpXaKieSLOs,1527
62
62
  nucliadb/common/datamanagers/__init__.py,sha256=U1cg-KvqbfzN5AnL_tFFrERmPb81w_0MNiTmxObmla4,2062
63
- nucliadb/common/datamanagers/atomic.py,sha256=DU7RihO8WaGNuh_GTEpQ-8hkoinY5GSpNSzVpLsZh30,3225
63
+ nucliadb/common/datamanagers/atomic.py,sha256=beMWAQUlS2-R8G77G5aNeCcxA0ik_IIYSISg_o2jUEA,3083
64
64
  nucliadb/common/datamanagers/cluster.py,sha256=psTwAWSLj83vhFnC1iJJ6holrolAI4nKos9PuEWspYY,1500
65
- nucliadb/common/datamanagers/entities.py,sha256=hqw4YcEOumGK_1vgNNfxP-WafHvWN5jf61n4U01WJtc,5311
65
+ nucliadb/common/datamanagers/entities.py,sha256=gI-0mbMlqrr9FiyhexEh6czhgYcMxE2s9m4o866EK9o,5340
66
66
  nucliadb/common/datamanagers/exceptions.py,sha256=Atz_PP_GGq4jgJaWcAkcRbHBoBaGcC9yJvFteylKtTE,883
67
67
  nucliadb/common/datamanagers/fields.py,sha256=9KqBzTssAT68FR5hd17Xu_CSwAYdKFuYic1ITnrfFNc,3971
68
68
  nucliadb/common/datamanagers/kb.py,sha256=P7EhF4tApIUG2jw_HH1oMufTKG9__kuOLKnrCNGbDM4,6156
@@ -106,9 +106,9 @@ nucliadb/ingest/__init__.py,sha256=fsw3C38VP50km3R-nHL775LNGPpJ4JxqXJ2Ib1f5SqE,1
106
106
  nucliadb/ingest/app.py,sha256=ErNd3q44xbBcUOl-Ae_lvcKPAsfFMSzb8zqWAjekrM4,7097
107
107
  nucliadb/ingest/cache.py,sha256=w7jMMzamOmQ7gwXna6Dqm6isRNBVv6l5BTBlTxaYWjE,1005
108
108
  nucliadb/ingest/partitions.py,sha256=2NIhMYbNT0TNBL6bX1UMSi7vxFGICstCKEqsB0TXHOE,2410
109
- nucliadb/ingest/processing.py,sha256=gg1DqbMFwqdOsmCSGsZc2abRdYz86xOZJun9vrHOCzs,20618
109
+ nucliadb/ingest/processing.py,sha256=8OggvuxNzktTTKDTUwsIuazhDParEWhn46CBZaMYAy8,20659
110
110
  nucliadb/ingest/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
111
- nucliadb/ingest/serialize.py,sha256=lIxPbt-Kz0eXXrefDltKbCRiyvkhHTR_AFwPUC6-nHU,16151
111
+ nucliadb/ingest/serialize.py,sha256=pTXpfoADsKax2gF5Xw5XAmn0ygRGxSC9vETv9y8xVH0,16147
112
112
  nucliadb/ingest/settings.py,sha256=0B-wQNa8FLqtNcQgRzh-fuIuGptM816XHcbH1NQKfmE,3050
113
113
  nucliadb/ingest/utils.py,sha256=l1myURu3r8oA11dx3GpHw-gNTUc1AFX8xdPm9Lgl2rA,2275
114
114
  nucliadb/ingest/consumer/__init__.py,sha256=cp15ZcFnHvpcu_5-aK2A4uUyvuZVV_MJn4bIXMa20ks,835
@@ -123,7 +123,7 @@ nucliadb/ingest/consumer/utils.py,sha256=jpX8D4lKzuPCpArQLZeX_Zczq3pfen_zAf8sPJf
123
123
  nucliadb/ingest/fields/__init__.py,sha256=cp15ZcFnHvpcu_5-aK2A4uUyvuZVV_MJn4bIXMa20ks,835
124
124
  nucliadb/ingest/fields/base.py,sha256=DTXFu_g9vSU2h7S4PlYxd-hp4SDuM_EPf8y51ALgD8w,21654
125
125
  nucliadb/ingest/fields/conversation.py,sha256=OcQOHvi72Pm0OyNGwxLo9gONo8f1NhwASq0_gS-E64A,7021
126
- nucliadb/ingest/fields/exceptions.py,sha256=LBZ-lw11f42Pk-ck-NSN9mSJ2kOw-NeRwb-UE31ILTQ,1171
126
+ nucliadb/ingest/fields/exceptions.py,sha256=2Cpntta3gNOnmGUdOe5ZMzP7k_308do14kaHVBPVCXs,1168
127
127
  nucliadb/ingest/fields/file.py,sha256=1v4jLg3balUua2VmSV8hHkAwPFShTUCOzufZvIUQcQw,4740
128
128
  nucliadb/ingest/fields/generic.py,sha256=elgtqv15aJUq3zY7X_g0bli_2BpcwPArVvzhe54Y4Ig,1547
129
129
  nucliadb/ingest/fields/link.py,sha256=kN_gjRUEEj5cy8K_BwPijYg3TiWhedc24apXYlTbRJs,4172
@@ -135,7 +135,7 @@ nucliadb/ingest/orm/entities.py,sha256=3_n6lKhBy2GsdmNmkh0_mvxP8md20OZsbtTNEmfJ8
135
135
  nucliadb/ingest/orm/exceptions.py,sha256=k4Esv4NtL4TrGTcsQpwrSfDhPQpiYcRbB1SpYmBX5MY,1432
136
136
  nucliadb/ingest/orm/knowledgebox.py,sha256=IGOPvBR1qXqDxE5DeiOdYCLdPgjzOVVpsASJ2zYvWwQ,23651
137
137
  nucliadb/ingest/orm/metrics.py,sha256=OkwMSPKLZcKba0ZTwtTiIxwBgaLMX5ydhGieKvi2y7E,1096
138
- nucliadb/ingest/orm/resource.py,sha256=pKDqw193lLR4dHlggNe0-V3d6UCoikSfhfmhpOvaDc0,44625
138
+ nucliadb/ingest/orm/resource.py,sha256=t2raRJpkJb5O8K4UhQdfyHx2e4JagcHS0eZqHV-a0io,44625
139
139
  nucliadb/ingest/orm/utils.py,sha256=vCe_9UxHu26JDFGLwQ0wH-XyzJIpQCTK-Ow9dtZR5Vg,2716
140
140
  nucliadb/ingest/orm/processor/__init__.py,sha256=Aqd9wCNTvggkMkCY3WvoI8spdr94Jnqk-0iq9XpLs18,922
141
141
  nucliadb/ingest/orm/processor/auditing.py,sha256=TeYhXGJRyQ7ROytbb2u8R0fIh_FYi3HgTu3S1ribY3U,4623
@@ -221,7 +221,7 @@ nucliadb/search/search/graph_strategy.py,sha256=ahwcUTQZ0Ll-rnS285DO9PmRyiM-1p4B
221
221
  nucliadb/search/search/hydrator.py,sha256=-R37gCrGxkyaiHQalnTWHNG_FCx11Zucd7qA1vQCxuw,6985
222
222
  nucliadb/search/search/ingestion_agents.py,sha256=NeJr4EEX-bvFFMGvXOOwLv8uU7NuQ-ntJnnrhnKfMzY,3174
223
223
  nucliadb/search/search/merge.py,sha256=i_PTBFRqC5iTTziOMEltxLIlmokIou5hjjgR4BnoLBE,22635
224
- nucliadb/search/search/metrics.py,sha256=81X-tahGW4n2CLvUzCPdNxNClmZqUWZjcVOGCUHoiUM,2872
224
+ nucliadb/search/search/metrics.py,sha256=GGGtXHLhK79_ESV277xkBVjcaMURXHCxYG0EdGamUd8,2886
225
225
  nucliadb/search/search/paragraphs.py,sha256=pNAEiYqJGGUVcEf7xf-PFMVqz0PX4Qb-WNG-_zPGN2o,7799
226
226
  nucliadb/search/search/pgcatalog.py,sha256=V1NYLEUSXHpWmgcPIo1HS2riK_HDXSi-uykJjSoOOrE,9033
227
227
  nucliadb/search/search/predict_proxy.py,sha256=IFI3v_ODz2_UU1XZnyaD391fE7-2C0npSmj_HmDvzS4,3123
@@ -238,10 +238,10 @@ nucliadb/search/search/chat/images.py,sha256=PA8VWxT5_HUGfW1ULhKTK46UBsVyINtWWqE
238
238
  nucliadb/search/search/chat/prompt.py,sha256=Jnja-Ss7skgnnDY8BymVfdeYsFPnIQFL8tEvcRXTKUE,47356
239
239
  nucliadb/search/search/chat/query.py,sha256=2QhVzvX12zLHOpVZ5MlBflqAauyCBl6dojhRGdm_6qU,16388
240
240
  nucliadb/search/search/query_parser/__init__.py,sha256=cp15ZcFnHvpcu_5-aK2A4uUyvuZVV_MJn4bIXMa20ks,835
241
- nucliadb/search/search/query_parser/catalog.py,sha256=EX6nDKH2qpMuuc7Ff0R_Ad78R4hj0JUDZp0ifUe1rrY,6963
241
+ nucliadb/search/search/query_parser/catalog.py,sha256=PtH5nb6UTzH8l7Lmdd1RgLVFsn9CN5M5-JkVq9YeR4k,7116
242
242
  nucliadb/search/search/query_parser/exceptions.py,sha256=szAOXUZ27oNY-OSa9t2hQ5HHkQQC0EX1FZz_LluJHJE,1224
243
243
  nucliadb/search/search/query_parser/fetcher.py,sha256=jhr__J0KmAzjdsTTadWQmD9qf6lZvqlKAfZdYjZH_UY,15742
244
- nucliadb/search/search/query_parser/filter_expression.py,sha256=Webr3GLZgVn0bK3900_orH3CumkM-uUAuHDwU14i3xY,6425
244
+ nucliadb/search/search/query_parser/filter_expression.py,sha256=rws5vsKTofX2iMUK4yvjmLZFxtcbWbyhIcwen4j0rQg,6578
245
245
  nucliadb/search/search/query_parser/models.py,sha256=VHDuyJlU2OLZN1usrQX53TZbPmWhzMeVYY0BiYNFzak,2464
246
246
  nucliadb/search/search/query_parser/old_filters.py,sha256=-zbfN-RsXoj_DRjh3Lfp-wShwFXgkISawzVptVzja-A,9071
247
247
  nucliadb/search/search/query_parser/parser.py,sha256=9TwkSNna3s-lCQIqBoSJzm6YbXdu8VIHJUan8M4ysfE,4667
@@ -334,13 +334,13 @@ nucliadb/writer/tus/__init__.py,sha256=huWpKnDnjsrKlBBJk30ta5vamlA-4x0TbPs_2Up8h
334
334
  nucliadb/writer/tus/azure.py,sha256=XhWAlWTM0vmXcXtuEPYjjeEhuZjiZXZu8q9WsJ7omFE,4107
335
335
  nucliadb/writer/tus/dm.py,sha256=bVoXqt_dpNvTjpffPYhj1JfqK6gfLoPr0hdkknUCZ9E,5488
336
336
  nucliadb/writer/tus/exceptions.py,sha256=WfZSSjsHfoy63wUFlH3QoHx7FMoCNA1oKJmWpZZDnCo,2156
337
- nucliadb/writer/tus/gcs.py,sha256=bprTnvAjDaTgiGOdy9HqFZi8joZBiYx7auevF4rwIXs,14083
337
+ nucliadb/writer/tus/gcs.py,sha256=yM9GSO0mV7c6ZFqK9LpjiBNu96uf1_rofAj9R0NC7xg,14079
338
338
  nucliadb/writer/tus/local.py,sha256=7jYa_w9b-N90jWgN2sQKkNcomqn6JMVBOVeDOVYJHto,5193
339
339
  nucliadb/writer/tus/s3.py,sha256=vF0NkFTXiXhXq3bCVXXVV-ED38ECVoUeeYViP8uMqcU,8357
340
340
  nucliadb/writer/tus/storage.py,sha256=ToqwjoYnjI4oIcwzkhha_MPxi-k4Jk3Lt55zRwaC1SM,2903
341
341
  nucliadb/writer/tus/utils.py,sha256=MSdVbRsRSZVdkaum69_0wku7X3p5wlZf4nr6E0GMKbw,2556
342
- nucliadb-6.3.1.post3524.dist-info/METADATA,sha256=xUkwyCqV6eEtWHmfzOv8QyE10WFOVjQGgj_xu_fIOac,4291
343
- nucliadb-6.3.1.post3524.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
344
- nucliadb-6.3.1.post3524.dist-info/entry_points.txt,sha256=XqGfgFDuY3zXQc8ewXM2TRVjTModIq851zOsgrmaXx4,1268
345
- nucliadb-6.3.1.post3524.dist-info/top_level.txt,sha256=hwYhTVnX7jkQ9gJCkVrbqEG1M4lT2F_iPQND1fCzF80,20
346
- nucliadb-6.3.1.post3524.dist-info/RECORD,,
342
+ nucliadb-6.3.1.post3526.dist-info/METADATA,sha256=eyuN6ZoyLypgZCawSpKtbge-d3fzg3KatkY51mDYxAc,4291
343
+ nucliadb-6.3.1.post3526.dist-info/WHEEL,sha256=jB7zZ3N9hIM9adW7qlTAyycLYW9npaWKLRzaoVcLKcM,91
344
+ nucliadb-6.3.1.post3526.dist-info/entry_points.txt,sha256=XqGfgFDuY3zXQc8ewXM2TRVjTModIq851zOsgrmaXx4,1268
345
+ nucliadb-6.3.1.post3526.dist-info/top_level.txt,sha256=hwYhTVnX7jkQ9gJCkVrbqEG1M4lT2F_iPQND1fCzF80,20
346
+ nucliadb-6.3.1.post3526.dist-info/RECORD,,