nucliadb 6.3.5.post3980__py3-none-any.whl → 6.3.5.post3990__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.
@@ -68,7 +68,9 @@ from nucliadb_protos.resources_pb2 import Metadata as PBMetadata
68
68
  from nucliadb_protos.resources_pb2 import Origin as PBOrigin
69
69
  from nucliadb_protos.resources_pb2 import Relations as PBRelations
70
70
  from nucliadb_protos.writer_pb2 import BrokerMessage
71
+ from nucliadb_utils import const
71
72
  from nucliadb_utils.storages.storage import Storage
73
+ from nucliadb_utils.utilities import has_feature
72
74
 
73
75
  if TYPE_CHECKING: # pragma: no cover
74
76
  from nucliadb.ingest.orm.knowledgebox import KnowledgeBox
@@ -156,6 +158,14 @@ class Resource:
156
158
  if basic_in_payload.HasField("metadata") and basic_in_payload.metadata.useful:
157
159
  current_basic.metadata.status = basic_in_payload.metadata.status
158
160
 
161
+ def has_index_message_v2_feature(self) -> bool:
162
+ return has_feature(
163
+ const.Features.INDEX_MESSAGE_GENERATION_V2,
164
+ context={
165
+ "kbid": self.kb.kbid,
166
+ },
167
+ )
168
+
159
169
  @processor_observer.wrap({"type": "set_basic"})
160
170
  async def set_basic(
161
171
  self,
@@ -208,27 +218,29 @@ class Resource:
208
218
  del self.basic.fieldmetadata[:]
209
219
  self.basic.fieldmetadata.extend(updated)
210
220
 
211
- # All modified field metadata should be indexed
212
- # TODO: could be improved to only index the diff
213
- for user_field_metadata in self.basic.fieldmetadata:
214
- field_id = self.generate_field_id(fieldmetadata.field)
215
- field_obj = await self.get_field(
216
- fieldmetadata.field.field, fieldmetadata.field.field_type
217
- )
218
- field_metadata = await field_obj.get_field_metadata()
219
- if field_metadata is not None:
220
- page_positions: Optional[FilePagePositions] = None
221
- if isinstance(field_obj, File):
222
- page_positions = await get_file_page_positions(field_obj)
223
-
224
- self.indexer.apply_field_metadata(
225
- field_id,
226
- field_metadata,
227
- page_positions=page_positions,
228
- extracted_text=await field_obj.get_extracted_text(),
229
- basic_user_field_metadata=user_field_metadata,
230
- replace_field=True,
221
+ if not self.has_index_message_v2_feature():
222
+ # TODO: Remove this when we remove the old indexer is removed
223
+ # All modified field metadata should be indexed
224
+ # TODO: could be improved to only index the diff
225
+ for user_field_metadata in self.basic.fieldmetadata:
226
+ field_id = self.generate_field_id(fieldmetadata.field)
227
+ field_obj = await self.get_field(
228
+ fieldmetadata.field.field, fieldmetadata.field.field_type
231
229
  )
230
+ field_metadata = await field_obj.get_field_metadata()
231
+ if field_metadata is not None:
232
+ page_positions: Optional[FilePagePositions] = None
233
+ if isinstance(field_obj, File):
234
+ page_positions = await get_file_page_positions(field_obj)
235
+
236
+ self.indexer.apply_field_metadata(
237
+ field_id,
238
+ field_metadata,
239
+ page_positions=page_positions,
240
+ extracted_text=await field_obj.get_extracted_text(),
241
+ basic_user_field_metadata=user_field_metadata,
242
+ replace_field=True,
243
+ )
232
244
 
233
245
  # Some basic fields are computed off field metadata.
234
246
  # This means we need to recompute upon field deletions.
@@ -300,7 +312,7 @@ class Resource:
300
312
  self.modified = True
301
313
  self.user_relations = payload
302
314
 
303
- @processor_observer.wrap({"type": "generate_index_message"})
315
+ @processor_observer.wrap({"type": "generate_index_message_old"})
304
316
  async def generate_index_message(self, reindex: bool = False) -> ResourceBrain:
305
317
  brain = ResourceBrain(rid=self.uuid)
306
318
  basic = await self.get_basic()
@@ -432,8 +444,10 @@ class Resource:
432
444
  if field in self.all_fields_keys:
433
445
  self.all_fields_keys.remove(field)
434
446
 
435
- field_key = self.generate_field_id(FieldID(field_type=type, field=key))
436
- self.indexer.delete_field(field_key=field_key)
447
+ # TODO: Remove this when we remove the old indexer
448
+ if not self.has_index_message_v2_feature():
449
+ field_key = self.generate_field_id(FieldID(field_type=type, field=key))
450
+ self.indexer.delete_field(field_key=field_key)
437
451
 
438
452
  await field_obj.delete()
439
453
 
@@ -814,34 +828,37 @@ class Resource:
814
828
  load=False,
815
829
  )
816
830
  metadata = await field_obj.set_field_metadata(field_metadata)
817
- field_key = self.generate_field_id(field_metadata.field)
818
831
 
819
- page_positions: Optional[FilePagePositions] = None
820
- if field_metadata.field.field_type == FieldType.FILE and isinstance(field_obj, File):
821
- page_positions = await get_file_page_positions(field_obj)
822
-
823
- user_field_metadata = next(
824
- (
825
- fm
826
- for fm in self.basic.fieldmetadata
827
- if fm.field.field == field_metadata.field.field
828
- and fm.field.field_type == field_metadata.field.field_type
829
- ),
830
- None,
831
- )
832
+ # TODO: Remove this when we remove the old indexer
833
+ if not self.has_index_message_v2_feature():
834
+ field_key = self.generate_field_id(field_metadata.field)
835
+
836
+ page_positions: Optional[FilePagePositions] = None
837
+ if field_metadata.field.field_type == FieldType.FILE and isinstance(field_obj, File):
838
+ page_positions = await get_file_page_positions(field_obj)
839
+
840
+ user_field_metadata = next(
841
+ (
842
+ fm
843
+ for fm in self.basic.fieldmetadata
844
+ if fm.field.field == field_metadata.field.field
845
+ and fm.field.field_type == field_metadata.field.field_type
846
+ ),
847
+ None,
848
+ )
832
849
 
833
- extracted_text = await field_obj.get_extracted_text()
834
- apply_field_metadata = partial(
835
- self.indexer.apply_field_metadata,
836
- field_key,
837
- metadata,
838
- page_positions=page_positions,
839
- extracted_text=extracted_text,
840
- basic_user_field_metadata=user_field_metadata,
841
- replace_field=True,
842
- )
843
- loop = asyncio.get_running_loop()
844
- await loop.run_in_executor(_executor, apply_field_metadata)
850
+ extracted_text = await field_obj.get_extracted_text()
851
+ apply_field_metadata = partial(
852
+ self.indexer.apply_field_metadata,
853
+ field_key,
854
+ metadata,
855
+ page_positions=page_positions,
856
+ extracted_text=extracted_text,
857
+ basic_user_field_metadata=user_field_metadata,
858
+ replace_field=True,
859
+ )
860
+ loop = asyncio.get_running_loop()
861
+ await loop.run_in_executor(_executor, apply_field_metadata)
845
862
 
846
863
  maybe_update_basic_thumbnail(self.basic, field_metadata.metadata.metadata.thumbnail)
847
864
 
@@ -895,8 +912,11 @@ class Resource:
895
912
  if vo is None:
896
913
  raise AttributeError("Vector object not found on set_vectors")
897
914
 
898
- # Prepare vectors to be indexed
915
+ if self.has_index_message_v2_feature():
916
+ continue
899
917
 
918
+ # TODO: Remove this when we remove the old indexer
919
+ # Prepare vectors to be indexed
900
920
  field_key = self.generate_field_id(field_vectors.field)
901
921
  dimension = vectorset.vectorset_index_config.vector_dimension
902
922
  if not dimension:
@@ -34,6 +34,7 @@ from nucliadb.ingest import SERVICE_NAME, logger
34
34
  from nucliadb.ingest.orm.broker_message import generate_broker_message
35
35
  from nucliadb.ingest.orm.entities import EntitiesManager
36
36
  from nucliadb.ingest.orm.exceptions import KnowledgeBoxConflict
37
+ from nucliadb.ingest.orm.index_message import get_resource_index_message
37
38
  from nucliadb.ingest.orm.knowledgebox import KnowledgeBox as KnowledgeBoxORM
38
39
  from nucliadb.ingest.orm.processor import Processor, sequence_manager
39
40
  from nucliadb.ingest.orm.resource import Resource as ResourceORM
@@ -444,9 +445,8 @@ class WriterServicer(writer_pb2_grpc.WriterServicer):
444
445
  kbobj = KnowledgeBoxORM(txn, self.storage, request.kbid)
445
446
  resobj = ResourceORM(txn, self.storage, kbobj, request.rid)
446
447
  resobj.disable_vectors = not request.reindex_vectors
447
- brain = await resobj.generate_index_message(reindex=True)
448
+ index_message = await get_resource_index_message(resobj, reindex=True)
448
449
  shard = await self.proc.get_or_assign_resource_shard(txn, kbobj, request.rid)
449
- index_message = brain.brain
450
450
  external_index_manager = await get_external_index_manager(kbid=request.kbid)
451
451
  if external_index_manager is not None:
452
452
  await self.proc.external_index_add_resource(
@@ -616,6 +616,7 @@ def needs_resource_reindex(item: UpdateResourcePayload) -> bool:
616
616
  or item.origin.metadata is not None
617
617
  )
618
618
  )
619
+ or item.security is not None
619
620
  )
620
621
 
621
622
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: nucliadb
3
- Version: 6.3.5.post3980
3
+ Version: 6.3.5.post3990
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.5.post3980
24
- Requires-Dist: nucliadb-utils[cache,fastapi,storages]>=6.3.5.post3980
25
- Requires-Dist: nucliadb-protos>=6.3.5.post3980
26
- Requires-Dist: nucliadb-models>=6.3.5.post3980
27
- Requires-Dist: nidx-protos>=6.3.5.post3980
23
+ Requires-Dist: nucliadb-telemetry[all]>=6.3.5.post3990
24
+ Requires-Dist: nucliadb-utils[cache,fastapi,storages]>=6.3.5.post3990
25
+ Requires-Dist: nucliadb-protos>=6.3.5.post3990
26
+ Requires-Dist: nucliadb-models>=6.3.5.post3990
27
+ Requires-Dist: nidx-protos>=6.3.5.post3990
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[standard]
@@ -19,7 +19,7 @@ migrations/0019_upgrade_to_paragraphs_v3.py,sha256=zP13_IKE7u4ox2gyc493L2_ewyiPl
19
19
  migrations/0020_drain_nodes_from_cluster.py,sha256=BeECAI0T8u14M2U5USl1fFNcsfmdMerNhisolYQN_eA,1411
20
20
  migrations/0021_overwrite_vectorsets_key.py,sha256=O6nb2a7kDFX9I3XFrVtudCUyKptpGyv2_GYvcvbQOI8,1583
21
21
  migrations/0022_fix_paragraph_deletion_bug.py,sha256=-tH342VXF-8xwc_h3P1cYaUtTT1wHSGf7ZoeVEpnaYs,1422
22
- migrations/0023_backfill_pg_catalog.py,sha256=gw22pU5cAtg2a7n7xVaVqT2itjAoDMNtzWwTllwqIvg,2993
22
+ migrations/0023_backfill_pg_catalog.py,sha256=QqsYEwGPXiunWZGnYjWVGZGcF4gvkhu81j_ypycXn2E,3102
23
23
  migrations/0025_assign_models_to_kbs_v2.py,sha256=QC6nDF2Wyc6zQMqNoKzvz-3507UpDyJztlbIsvlwHss,4678
24
24
  migrations/0026_fix_high_cardinality_content_types.py,sha256=BsbBkvZDzjRHQfoouZNNtHA1xMxTKm8wOVnp_WAS9j4,2322
25
25
  migrations/0027_rollover_texts3.py,sha256=J7tRVr-OooLuZCFkhYquOPHFRMiHNQT1klT8r0d8a_8,2815
@@ -64,9 +64,9 @@ nucliadb/common/cluster/exceptions.py,sha256=t7v_l93t44l2tQpdQXgO_w-c4YZRcaayOz1
64
64
  nucliadb/common/cluster/grpc_node_dummy.py,sha256=LxONv0mhDFhx7mI91qqGfQlQ-R0qOGDYaxhXoBHLXaE,3548
65
65
  nucliadb/common/cluster/manager.py,sha256=KIzqAYGgdVK3GicJ9LdLoei8arWZ7H60imbc32USPj4,12754
66
66
  nucliadb/common/cluster/rebalance.py,sha256=cLUlR08SsqmnoA_9GDflV6k2tXmkAPpyFxZErzp45vo,8754
67
- nucliadb/common/cluster/rollover.py,sha256=QCvns28pr81geSQvC37dGKa-nYGu4_IfZwJxyzKg6z4,26042
67
+ nucliadb/common/cluster/rollover.py,sha256=vrWdAL7Ad-Qvai1GXSZGOx_p0CNW-j095EMxvscQQ24,26069
68
68
  nucliadb/common/cluster/settings.py,sha256=JPwV_0U_i618Tn66GWUq6qCKNjy4TWkGEGld9GwH5uk,2048
69
- nucliadb/common/cluster/utils.py,sha256=7nQvnVFxM4XV7J560R8hUA-GPzrgD19UlQxHrl4mZUc,4687
69
+ nucliadb/common/cluster/utils.py,sha256=ap4gw691rtVJRQtVJICA1CNh22Njf9im-DyVTNy4u2Y,4842
70
70
  nucliadb/common/cluster/standalone/__init__.py,sha256=itSI7dtTwFP55YMX4iK7JzdMHS5CQVUiB1XzQu4UBh8,833
71
71
  nucliadb/common/cluster/standalone/utils.py,sha256=af3r-x_GF7A6dwIAhZLR-r-SZQEVxsFrDKeMfUTA6G0,1908
72
72
  nucliadb/common/context/__init__.py,sha256=ZLUvKuIPaolKeA3aeZa2JcHwCIaEauNu8WpdKsiINXo,3354
@@ -90,7 +90,7 @@ nucliadb/common/external_index_providers/__init__.py,sha256=cp15ZcFnHvpcu_5-aK2A
90
90
  nucliadb/common/external_index_providers/base.py,sha256=yfPkCigT4unXFvAyzy1tXSy2UgWC481GcZAS9bdE4NI,8871
91
91
  nucliadb/common/external_index_providers/exceptions.py,sha256=nDhhOIkb66hjCrBk4Spvl2vN1SuW5gbwrMCDmrdjHHE,1209
92
92
  nucliadb/common/external_index_providers/manager.py,sha256=aFSrrKKYG1ydpTSyq4zYD0LOxFS7P-CO6rcKC0hiF4I,4267
93
- nucliadb/common/external_index_providers/pinecone.py,sha256=19DIpgaItaWOwrcXsm3HnkbQrAjq-kG9Wehh38CcVbQ,40027
93
+ nucliadb/common/external_index_providers/pinecone.py,sha256=uR7d9UFWt3gj7vxl_We8PHF614i5vi6nIAHTgWH41Ao,38132
94
94
  nucliadb/common/external_index_providers/settings.py,sha256=EGHnIkwxqe6aypwKegXTlKO3AgUxNa-6GeAZG25Njis,2002
95
95
  nucliadb/common/http_clients/__init__.py,sha256=cp15ZcFnHvpcu_5-aK2A4uUyvuZVV_MJn4bIXMa20ks,835
96
96
  nucliadb/common/http_clients/auth.py,sha256=srfpgAbs2wmqA9u_l-HxsV4YoO77Tse4y3gm3q2YvYM,2112
@@ -135,29 +135,31 @@ nucliadb/ingest/consumer/utils.py,sha256=jpX8D4lKzuPCpArQLZeX_Zczq3pfen_zAf8sPJf
135
135
  nucliadb/ingest/fields/__init__.py,sha256=cp15ZcFnHvpcu_5-aK2A4uUyvuZVV_MJn4bIXMa20ks,835
136
136
  nucliadb/ingest/fields/base.py,sha256=DTXFu_g9vSU2h7S4PlYxd-hp4SDuM_EPf8y51ALgD8w,21654
137
137
  nucliadb/ingest/fields/conversation.py,sha256=0tVpHLvi3UmuO98puimBJUpPXv3qEOpqlWVXVYvz9Vw,7082
138
- nucliadb/ingest/fields/exceptions.py,sha256=2Cpntta3gNOnmGUdOe5ZMzP7k_308do14kaHVBPVCXs,1168
138
+ nucliadb/ingest/fields/exceptions.py,sha256=sZBk21BSrXFdOdo1qUdCAyD-9YMYakSLdn4_WdIPCIQ,1217
139
139
  nucliadb/ingest/fields/file.py,sha256=1v4jLg3balUua2VmSV8hHkAwPFShTUCOzufZvIUQcQw,4740
140
140
  nucliadb/ingest/fields/generic.py,sha256=elgtqv15aJUq3zY7X_g0bli_2BpcwPArVvzhe54Y4Ig,1547
141
141
  nucliadb/ingest/fields/link.py,sha256=kN_gjRUEEj5cy8K_BwPijYg3TiWhedc24apXYlTbRJs,4172
142
142
  nucliadb/ingest/fields/text.py,sha256=tFvSQJAe0W7ePpp2_WDfLiE2yglR1OTU0Zht9acvOFw,1594
143
143
  nucliadb/ingest/orm/__init__.py,sha256=cp15ZcFnHvpcu_5-aK2A4uUyvuZVV_MJn4bIXMa20ks,835
144
144
  nucliadb/ingest/orm/brain.py,sha256=8nXdxgI3zYn6DGnCq5ciq3PA7ouhcTW5dSgHaxAO6xg,29074
145
+ nucliadb/ingest/orm/brain_v2.py,sha256=3ejtH58X9Hkhvg2m7wrp2eEyIQybKSMHzoJBDtkL0b8,33065
145
146
  nucliadb/ingest/orm/broker_message.py,sha256=XWaiZgDOz94NPOPT-hqbRr5ZkpVimUw6PjUJNftfoVw,7514
146
147
  nucliadb/ingest/orm/entities.py,sha256=a-aYuKBUQhxDKFtXOzTAkLlY_t2JiTfaptw2vt3AQDQ,14915
147
148
  nucliadb/ingest/orm/exceptions.py,sha256=k4Esv4NtL4TrGTcsQpwrSfDhPQpiYcRbB1SpYmBX5MY,1432
149
+ nucliadb/ingest/orm/index_message.py,sha256=3Okq-POmGnxpgzysU1bvgj5skRLSDBUpP6dnTYqNA18,15821
148
150
  nucliadb/ingest/orm/knowledgebox.py,sha256=Bfb4-MIQWlaJrQAUDbgs_iIsXCYjS7s5YiiGl_Jb4jo,23887
149
- nucliadb/ingest/orm/metrics.py,sha256=OkwMSPKLZcKba0ZTwtTiIxwBgaLMX5ydhGieKvi2y7E,1096
150
- nucliadb/ingest/orm/resource.py,sha256=Y1WWE30E7mk0qFQ4xDfA29pNOnoHbLIwtNLgu2MUEME,45844
151
+ nucliadb/ingest/orm/metrics.py,sha256=z-xVOJWeWXZFPIzRg_NB8nlbkdJFs_myEwLROdTNp24,1110
152
+ nucliadb/ingest/orm/resource.py,sha256=GjxcEPuu8bM06Uea7_yJk0UFvOfiZNP9i_G4V-4D8_U,46845
151
153
  nucliadb/ingest/orm/utils.py,sha256=vCe_9UxHu26JDFGLwQ0wH-XyzJIpQCTK-Ow9dtZR5Vg,2716
152
154
  nucliadb/ingest/orm/processor/__init__.py,sha256=Aqd9wCNTvggkMkCY3WvoI8spdr94Jnqk-0iq9XpLs18,922
153
155
  nucliadb/ingest/orm/processor/auditing.py,sha256=TeYhXGJRyQ7ROytbb2u8R0fIh_FYi3HgTu3S1ribY3U,4623
154
156
  nucliadb/ingest/orm/processor/data_augmentation.py,sha256=HpSU9olDHcTfECDYCsmm4yA-Hu0mBrd_zTtx50XDGFE,5164
155
- nucliadb/ingest/orm/processor/pgcatalog.py,sha256=f32PIEXWktWzGDws6Ffife37OAfrseP5IOti_Cb4ir8,3012
156
- nucliadb/ingest/orm/processor/processor.py,sha256=Tb87wm9Yqd4sS_x_wFTaIG3Tn3sznG8AuLCOanYhVDQ,32536
157
+ nucliadb/ingest/orm/processor/pgcatalog.py,sha256=H-OCRz0RuTUb80LZBxDowLA9V7ECv1DWiXlnzKW5XGI,3103
158
+ nucliadb/ingest/orm/processor/processor.py,sha256=flw2U1OB6il9mP7h6fCY_dZX-Jo6XemWq1dAwtH7pMs,33202
157
159
  nucliadb/ingest/orm/processor/sequence_manager.py,sha256=uqEphtI1Ir_yk9jRl2gPf7BlzzXWovbARY5MNZSBI_8,1704
158
160
  nucliadb/ingest/service/__init__.py,sha256=MME_G_ERxzJR6JW_hfE2qcfXpmpH1kdG-S0a-M0qRm8,2043
159
161
  nucliadb/ingest/service/exceptions.py,sha256=cp15ZcFnHvpcu_5-aK2A4uUyvuZVV_MJn4bIXMa20ks,835
160
- nucliadb/ingest/service/writer.py,sha256=duFp2EOA52Mkz8kJcV1apCDgsUmkwpwGuubVra5Aa7o,22317
162
+ nucliadb/ingest/service/writer.py,sha256=6ZjIEkksy6sHo8W46Omlxf6i8i-B72jUNtQK7VnBunc,22359
161
163
  nucliadb/middleware/__init__.py,sha256=A8NBlBuEkunCFMKpR9gnfNELsVn0Plc55BIQMbWDM8Q,2202
162
164
  nucliadb/migrator/__init__.py,sha256=cp15ZcFnHvpcu_5-aK2A4uUyvuZVV_MJn4bIXMa20ks,835
163
165
  nucliadb/migrator/command.py,sha256=dKbJ1tAmP6X4lMVRSSlz351euaqs2wBPpOczLjATUes,2089
@@ -335,7 +337,7 @@ nucliadb/writer/api/v1/export_import.py,sha256=elf-EQY5DD3mhw8kWb9tQpDcbrF9sY6VF
335
337
  nucliadb/writer/api/v1/field.py,sha256=FySCMpcruSAKGeepeAlOihjwxyUPcDO73Uilq5VDWRk,18514
336
338
  nucliadb/writer/api/v1/knowledgebox.py,sha256=PHEYDFa-sN5JrI8-EiVVg5FDOsRuCLT43kyAB4xt-xA,9530
337
339
  nucliadb/writer/api/v1/learning_config.py,sha256=CKBjqcbewkfPwGUPLDWzZSpro6XkmCaVppe5Qtpu5Go,3117
338
- nucliadb/writer/api/v1/resource.py,sha256=jV9HM-ID1PPYypfy4Sl4_9aSPF87v7gSJZUSzHjHcQ4,19740
340
+ nucliadb/writer/api/v1/resource.py,sha256=r5YTAZuHzaiBz1dLstWxvG74_LJGl2mgjpEsDmRB2qY,19777
339
341
  nucliadb/writer/api/v1/router.py,sha256=RjuoWLpZer6Kl2BW_wznpNo6XL3BOpdTGqXZCn3QrrQ,1034
340
342
  nucliadb/writer/api/v1/services.py,sha256=3AUjk-SmvqJx76v7y89DZx6oyasojPliGYeniRQjpcU,13337
341
343
  nucliadb/writer/api/v1/slug.py,sha256=xlVBDBpRi9bNulpBHZwhyftVvulfE0zFm1XZIWl-AKY,2389
@@ -356,8 +358,8 @@ nucliadb/writer/tus/local.py,sha256=7jYa_w9b-N90jWgN2sQKkNcomqn6JMVBOVeDOVYJHto,
356
358
  nucliadb/writer/tus/s3.py,sha256=vF0NkFTXiXhXq3bCVXXVV-ED38ECVoUeeYViP8uMqcU,8357
357
359
  nucliadb/writer/tus/storage.py,sha256=ToqwjoYnjI4oIcwzkhha_MPxi-k4Jk3Lt55zRwaC1SM,2903
358
360
  nucliadb/writer/tus/utils.py,sha256=MSdVbRsRSZVdkaum69_0wku7X3p5wlZf4nr6E0GMKbw,2556
359
- nucliadb-6.3.5.post3980.dist-info/METADATA,sha256=FUj9jkftZSJQHktehmB7BYCmk2M4_LMtd-A733dLepM,4301
360
- nucliadb-6.3.5.post3980.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
361
- nucliadb-6.3.5.post3980.dist-info/entry_points.txt,sha256=XqGfgFDuY3zXQc8ewXM2TRVjTModIq851zOsgrmaXx4,1268
362
- nucliadb-6.3.5.post3980.dist-info/top_level.txt,sha256=hwYhTVnX7jkQ9gJCkVrbqEG1M4lT2F_iPQND1fCzF80,20
363
- nucliadb-6.3.5.post3980.dist-info/RECORD,,
361
+ nucliadb-6.3.5.post3990.dist-info/METADATA,sha256=nT9CHADQl_oE04SzbtUN2-ah8Rd2IHj9JnfasePEqy4,4301
362
+ nucliadb-6.3.5.post3990.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
363
+ nucliadb-6.3.5.post3990.dist-info/entry_points.txt,sha256=XqGfgFDuY3zXQc8ewXM2TRVjTModIq851zOsgrmaXx4,1268
364
+ nucliadb-6.3.5.post3990.dist-info/top_level.txt,sha256=hwYhTVnX7jkQ9gJCkVrbqEG1M4lT2F_iPQND1fCzF80,20
365
+ nucliadb-6.3.5.post3990.dist-info/RECORD,,