arkindex-base-worker 0.3.7rc10__py3-none-any.whl → 0.4.0a1__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.
Files changed (30) hide show
  1. {arkindex_base_worker-0.3.7rc10.dist-info → arkindex_base_worker-0.4.0a1.dist-info}/METADATA +10 -16
  2. arkindex_base_worker-0.4.0a1.dist-info/RECORD +51 -0
  3. arkindex_worker/models.py +6 -0
  4. arkindex_worker/utils.py +3 -4
  5. arkindex_worker/worker/__init__.py +23 -2
  6. arkindex_worker/worker/base.py +3 -23
  7. arkindex_worker/worker/corpus.py +69 -0
  8. arkindex_worker/worker/image.py +21 -0
  9. arkindex_worker/worker/training.py +12 -0
  10. tests/__init__.py +8 -0
  11. tests/conftest.py +4 -8
  12. tests/test_base_worker.py +8 -9
  13. tests/test_dataset_worker.py +14 -41
  14. tests/test_elements_worker/test_classifications.py +22 -39
  15. tests/test_elements_worker/test_cli.py +3 -11
  16. tests/test_elements_worker/test_corpus.py +137 -0
  17. tests/test_elements_worker/test_dataset.py +6 -11
  18. tests/test_elements_worker/test_elements.py +106 -85
  19. tests/test_elements_worker/test_entities.py +15 -39
  20. tests/test_elements_worker/test_image.py +65 -0
  21. tests/test_elements_worker/test_metadata.py +6 -40
  22. tests/test_elements_worker/test_task.py +7 -17
  23. tests/test_elements_worker/test_training.py +35 -0
  24. tests/test_elements_worker/test_transcriptions.py +10 -27
  25. tests/test_elements_worker/test_worker.py +2 -1
  26. tests/test_image.py +3 -5
  27. arkindex_base_worker-0.3.7rc10.dist-info/RECORD +0 -47
  28. {arkindex_base_worker-0.3.7rc10.dist-info → arkindex_base_worker-0.4.0a1.dist-info}/LICENSE +0 -0
  29. {arkindex_base_worker-0.3.7rc10.dist-info → arkindex_base_worker-0.4.0a1.dist-info}/WHEEL +0 -0
  30. {arkindex_base_worker-0.3.7rc10.dist-info → arkindex_base_worker-0.4.0a1.dist-info}/top_level.txt +0 -0
@@ -136,7 +136,7 @@ def test_create_metadata_api_error(responses, mock_elements_worker):
136
136
  responses.add(
137
137
  responses.POST,
138
138
  "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/",
139
- status=500,
139
+ status=418,
140
140
  )
141
141
 
142
142
  with pytest.raises(ErrorResponse):
@@ -147,31 +147,14 @@ def test_create_metadata_api_error(responses, mock_elements_worker):
147
147
  value="La Turbine, Grenoble 38000",
148
148
  )
149
149
 
150
- assert len(responses.calls) == len(BASE_API_CALLS) + 5
150
+ assert len(responses.calls) == len(BASE_API_CALLS) + 1
151
151
  assert [
152
152
  (call.request.method, call.request.url) for call in responses.calls
153
153
  ] == BASE_API_CALLS + [
154
- # We retry 5 times the API call
155
- (
156
- "POST",
157
- "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/",
158
- ),
159
154
  (
160
155
  "POST",
161
156
  "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/",
162
- ),
163
- (
164
- "POST",
165
- "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/",
166
- ),
167
- (
168
- "POST",
169
- "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/",
170
- ),
171
- (
172
- "POST",
173
- "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/",
174
- ),
157
+ )
175
158
  ]
176
159
 
177
160
 
@@ -474,37 +457,20 @@ def test_create_metadata_bulk_api_error(responses, mock_elements_worker):
474
457
  responses.add(
475
458
  responses.POST,
476
459
  "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/bulk/",
477
- status=500,
460
+ status=418,
478
461
  )
479
462
 
480
463
  with pytest.raises(ErrorResponse):
481
464
  mock_elements_worker.create_metadata_bulk(element, metadata_list)
482
465
 
483
- assert len(responses.calls) == len(BASE_API_CALLS) + 5
466
+ assert len(responses.calls) == len(BASE_API_CALLS) + 1
484
467
  assert [
485
468
  (call.request.method, call.request.url) for call in responses.calls
486
469
  ] == BASE_API_CALLS + [
487
- # We retry 5 times the API call
488
- (
489
- "POST",
490
- "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/bulk/",
491
- ),
492
470
  (
493
471
  "POST",
494
472
  "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/bulk/",
495
- ),
496
- (
497
- "POST",
498
- "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/bulk/",
499
- ),
500
- (
501
- "POST",
502
- "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/bulk/",
503
- ),
504
- (
505
- "POST",
506
- "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/metadata/bulk/",
507
- ),
473
+ )
508
474
  ]
509
475
 
510
476
 
@@ -4,7 +4,7 @@ import pytest
4
4
  from apistar.exceptions import ErrorResponse
5
5
 
6
6
  from arkindex_worker.models import Artifact
7
- from tests.conftest import FIXTURES_DIR
7
+ from tests import FIXTURES_DIR
8
8
  from tests.test_elements_worker import BASE_API_CALLS
9
9
 
10
10
  TASK_ID = uuid.UUID("cafecafe-cafe-cafe-cafe-cafecafecafe")
@@ -33,22 +33,17 @@ def test_list_artifacts_api_error(responses, mock_dataset_worker):
33
33
  responses.add(
34
34
  responses.GET,
35
35
  f"http://testserver/api/v1/task/{TASK_ID}/artifacts/",
36
- status=500,
36
+ status=418,
37
37
  )
38
38
 
39
39
  with pytest.raises(ErrorResponse):
40
40
  mock_dataset_worker.list_artifacts(task_id=TASK_ID)
41
41
 
42
- assert len(responses.calls) == len(BASE_API_CALLS) + 5
42
+ assert len(responses.calls) == len(BASE_API_CALLS) + 1
43
43
  assert [
44
44
  (call.request.method, call.request.url) for call in responses.calls
45
45
  ] == BASE_API_CALLS + [
46
- # The API call is retried 5 times
47
- ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifacts/"),
48
- ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifacts/"),
49
- ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifacts/"),
50
- ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifacts/"),
51
- ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifacts/"),
46
+ ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifacts/")
52
47
  ]
53
48
 
54
49
 
@@ -153,7 +148,7 @@ def test_download_artifact_api_error(responses, mock_dataset_worker, default_art
153
148
  responses.add(
154
149
  responses.GET,
155
150
  f"http://testserver/api/v1/task/{TASK_ID}/artifact/dataset_id.tar.zst",
156
- status=500,
151
+ status=418,
157
152
  )
158
153
 
159
154
  with pytest.raises(ErrorResponse):
@@ -161,16 +156,11 @@ def test_download_artifact_api_error(responses, mock_dataset_worker, default_art
161
156
  task_id=TASK_ID, artifact=default_artifact
162
157
  )
163
158
 
164
- assert len(responses.calls) == len(BASE_API_CALLS) + 5
159
+ assert len(responses.calls) == len(BASE_API_CALLS) + 1
165
160
  assert [
166
161
  (call.request.method, call.request.url) for call in responses.calls
167
162
  ] == BASE_API_CALLS + [
168
- # The API call is retried 5 times
169
- ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifact/dataset_id.tar.zst"),
170
- ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifact/dataset_id.tar.zst"),
171
- ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifact/dataset_id.tar.zst"),
172
- ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifact/dataset_id.tar.zst"),
173
- ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifact/dataset_id.tar.zst"),
163
+ ("GET", f"http://testserver/api/v1/task/{TASK_ID}/artifact/dataset_id.tar.zst")
174
164
  ]
175
165
 
176
166
 
@@ -179,6 +179,41 @@ def test_validate_model_version_not_created(mock_training_worker):
179
179
  mock_training_worker.validate_model_version(hash="a", size=1, archive_hash="b")
180
180
 
181
181
 
182
+ @pytest.mark.parametrize("status_code", [403, 500])
183
+ def test_validate_model_version_catch_errors(
184
+ mocker, mock_training_worker, caplog, status_code
185
+ ):
186
+ mocker.patch(
187
+ "arkindex.client.ArkindexClient.request.retry.retry", return_value=False
188
+ )
189
+
190
+ mock_training_worker.model_version = {"id": "model_version_id"}
191
+ args = {
192
+ "hash": "hash",
193
+ "archive_hash": "archive_hash",
194
+ "size": 30,
195
+ }
196
+ mock_training_worker.api_client.add_error_response(
197
+ "ValidateModelVersion",
198
+ id="model_version_id",
199
+ status_code=status_code,
200
+ body=args,
201
+ )
202
+
203
+ mock_training_worker.validate_model_version(**args)
204
+ assert mock_training_worker.model_version == {"id": "model_version_id"}
205
+ assert [
206
+ (level, message)
207
+ for module, level, message in caplog.record_tuples
208
+ if module == "arkindex_worker"
209
+ ] == [
210
+ (
211
+ logging.WARNING,
212
+ "An error occurred while validating model version model_version_id, please check its status.",
213
+ ),
214
+ ]
215
+
216
+
182
217
  @pytest.mark.parametrize("deletion_failed", [True, False])
183
218
  def test_validate_model_version_hash_conflict(
184
219
  mock_training_worker, default_model_version, caplog, deletion_failed
@@ -200,7 +200,7 @@ def test_create_transcription_api_error(responses, mock_elements_worker):
200
200
  responses.add(
201
201
  responses.POST,
202
202
  f"http://testserver/api/v1/element/{elt.id}/transcription/",
203
- status=500,
203
+ status=418,
204
204
  )
205
205
 
206
206
  with pytest.raises(ErrorResponse):
@@ -210,16 +210,11 @@ def test_create_transcription_api_error(responses, mock_elements_worker):
210
210
  confidence=0.42,
211
211
  )
212
212
 
213
- assert len(responses.calls) == len(BASE_API_CALLS) + 5
213
+ assert len(responses.calls) == len(BASE_API_CALLS) + 1
214
214
  assert [
215
215
  (call.request.method, call.request.url) for call in responses.calls
216
216
  ] == BASE_API_CALLS + [
217
- # We retry 5 times the API call
218
- ("POST", f"http://testserver/api/v1/element/{elt.id}/transcription/"),
219
- ("POST", f"http://testserver/api/v1/element/{elt.id}/transcription/"),
220
- ("POST", f"http://testserver/api/v1/element/{elt.id}/transcription/"),
221
- ("POST", f"http://testserver/api/v1/element/{elt.id}/transcription/"),
222
- ("POST", f"http://testserver/api/v1/element/{elt.id}/transcription/"),
217
+ ("POST", f"http://testserver/api/v1/element/{elt.id}/transcription/")
223
218
  ]
224
219
 
225
220
 
@@ -620,7 +615,7 @@ def test_create_transcriptions_api_error(responses, mock_elements_worker):
620
615
  responses.add(
621
616
  responses.POST,
622
617
  "http://testserver/api/v1/transcription/bulk/",
623
- status=500,
618
+ status=418,
624
619
  )
625
620
  trans = [
626
621
  {
@@ -638,17 +633,10 @@ def test_create_transcriptions_api_error(responses, mock_elements_worker):
638
633
  with pytest.raises(ErrorResponse):
639
634
  mock_elements_worker.create_transcriptions(transcriptions=trans)
640
635
 
641
- assert len(responses.calls) == len(BASE_API_CALLS) + 5
636
+ assert len(responses.calls) == len(BASE_API_CALLS) + 1
642
637
  assert [
643
638
  (call.request.method, call.request.url) for call in responses.calls
644
- ] == BASE_API_CALLS + [
645
- # We retry 5 times the API call
646
- ("POST", "http://testserver/api/v1/transcription/bulk/"),
647
- ("POST", "http://testserver/api/v1/transcription/bulk/"),
648
- ("POST", "http://testserver/api/v1/transcription/bulk/"),
649
- ("POST", "http://testserver/api/v1/transcription/bulk/"),
650
- ("POST", "http://testserver/api/v1/transcription/bulk/"),
651
- ]
639
+ ] == BASE_API_CALLS + [("POST", "http://testserver/api/v1/transcription/bulk/")]
652
640
 
653
641
 
654
642
  def test_create_transcriptions(responses, mock_elements_worker_with_cache):
@@ -1275,7 +1263,7 @@ def test_create_element_transcriptions_api_error(responses, mock_elements_worker
1275
1263
  responses.add(
1276
1264
  responses.POST,
1277
1265
  f"http://testserver/api/v1/element/{elt.id}/transcriptions/bulk/",
1278
- status=500,
1266
+ status=418,
1279
1267
  )
1280
1268
 
1281
1269
  with pytest.raises(ErrorResponse):
@@ -1285,16 +1273,11 @@ def test_create_element_transcriptions_api_error(responses, mock_elements_worker
1285
1273
  transcriptions=TRANSCRIPTIONS_SAMPLE,
1286
1274
  )
1287
1275
 
1288
- assert len(responses.calls) == len(BASE_API_CALLS) + 5
1276
+ assert len(responses.calls) == len(BASE_API_CALLS) + 1
1289
1277
  assert [
1290
1278
  (call.request.method, call.request.url) for call in responses.calls
1291
1279
  ] == BASE_API_CALLS + [
1292
- # We retry 5 times the API call
1293
- ("POST", f"http://testserver/api/v1/element/{elt.id}/transcriptions/bulk/"),
1294
- ("POST", f"http://testserver/api/v1/element/{elt.id}/transcriptions/bulk/"),
1295
- ("POST", f"http://testserver/api/v1/element/{elt.id}/transcriptions/bulk/"),
1296
- ("POST", f"http://testserver/api/v1/element/{elt.id}/transcriptions/bulk/"),
1297
- ("POST", f"http://testserver/api/v1/element/{elt.id}/transcriptions/bulk/"),
1280
+ ("POST", f"http://testserver/api/v1/element/{elt.id}/transcriptions/bulk/")
1298
1281
  ]
1299
1282
 
1300
1283
 
@@ -1777,7 +1760,7 @@ def test_list_transcriptions_api_error(responses, mock_elements_worker):
1777
1760
  responses.add(
1778
1761
  responses.GET,
1779
1762
  "http://testserver/api/v1/element/12341234-1234-1234-1234-123412341234/transcriptions/",
1780
- status=500,
1763
+ status=418,
1781
1764
  )
1782
1765
 
1783
1766
  with pytest.raises(
@@ -6,6 +6,7 @@ from apistar.exceptions import ErrorResponse
6
6
 
7
7
  from arkindex_worker.cache import CachedElement
8
8
  from arkindex_worker.worker import ActivityState, ElementsWorker
9
+ from tests import CORPUS_ID
9
10
 
10
11
  from . import BASE_API_CALLS
11
12
 
@@ -478,7 +479,7 @@ def test_worker_config_multiple_source(
478
479
  "id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeffff",
479
480
  "state": "running",
480
481
  "mode": "workers",
481
- "corpus": "11111111-1111-1111-1111-111111111111",
482
+ "corpus": CORPUS_ID,
482
483
  "use_cache": False,
483
484
  "activity_state": "ready",
484
485
  "model_id": None,
tests/test_image.py CHANGED
@@ -47,8 +47,7 @@ def _root_mean_square(img_a, img_b):
47
47
 
48
48
  def test_download_tiles(responses):
49
49
  expected = Image.open(FULL_IMAGE).convert("RGB")
50
- with TILE.open("rb") as tile:
51
- tile_bytes = tile.read()
50
+ tile_bytes = TILE.read_bytes()
52
51
 
53
52
  responses.add(
54
53
  responses.GET,
@@ -76,9 +75,8 @@ def test_download_tiles_crop(responses):
76
75
  """
77
76
  expected = Image.open(FULL_IMAGE).convert("RGB")
78
77
  tile_bytes = BytesIO()
79
- with TILE.open("rb") as tile:
80
- # Add one extra pixel to each tile to return slightly bigger tiles
81
- ImageOps.pad(Image.open(tile), (181, 241)).save(tile_bytes, format="jpeg")
78
+ # Add one extra pixel to each tile to return slightly bigger tiles
79
+ ImageOps.pad(Image.open(TILE), (181, 241)).save(tile_bytes, format="jpeg")
82
80
 
83
81
  tile_bytes = tile_bytes.getvalue()
84
82
 
@@ -1,47 +0,0 @@
1
- arkindex_worker/__init__.py,sha256=OlgCtTC9MaWeejviY0a3iQpALcRQGMVArFVVYwTF6I8,162
2
- arkindex_worker/cache.py,sha256=FTlB0coXofn5zTNRTcVIvh709mcw4a1bPGqkwWjKs3w,11248
3
- arkindex_worker/image.py,sha256=5ymIGaTm2D7Sp2YYQkbuheuGnx5VJo0_AzYAEIvNGhs,14267
4
- arkindex_worker/models.py,sha256=xSvOadkNg3rgccic1xLgonzP28ugzmcGw0IUqXn51Cc,9844
5
- arkindex_worker/utils.py,sha256=0Mu7Fa8DVcHn19pg-FIXqMDpfgzQkb7QR9IAlAi-x_k,7243
6
- arkindex_worker/worker/__init__.py,sha256=U-_zOrQ09xmpBF9SmrTVj_UwnsCjFueV5G2hJAFEwv0,18806
7
- arkindex_worker/worker/base.py,sha256=qtkCGfpGn7SWsQZRJ5cpW0gQ4tV_cyR_AHbuHZr53z4,19585
8
- arkindex_worker/worker/classification.py,sha256=JVz-6YEeuavOy7zGfQi4nE_wpj9hwMUZDXTem-hXQY8,10328
9
- arkindex_worker/worker/dataset.py,sha256=roX2IMMNA-icteTtRADiFSZiZSRPClqS62ZPJm9s2JI,2923
10
- arkindex_worker/worker/element.py,sha256=AWK3YJSHWy3j4ajntJloi_2X4zxsgXZ6c6dzphgq3OI,33848
11
- arkindex_worker/worker/entity.py,sha256=suhycfikC9oTPEWmX48_cnvFEw-Wu5zBA8n_00K4KUk,14714
12
- arkindex_worker/worker/metadata.py,sha256=Bouuc_JaXogKykVXOTKDVP3tX--OUQeHoazxIGrGrJI,6702
13
- arkindex_worker/worker/task.py,sha256=cz3wJNPgogZv1lm_3lm7WScitQtYQtL6H6I7Xokq208,1475
14
- arkindex_worker/worker/training.py,sha256=SOs3YKGikTr3rdWYp9H-jbtgRnZxQAoqtwB26ztx9j8,10235
15
- arkindex_worker/worker/transcription.py,sha256=6R7ofcGnNqX4rjT0kRKIE-G9FHq2TJ1tfztNM5sTqYE,20464
16
- arkindex_worker/worker/version.py,sha256=cs2pdlDxpKRO2Oldvcu54w-D_DQhf1cdeEt4tKX_QYs,1927
17
- hooks/pre_gen_project.py,sha256=xQJERv3vv9VzIqcBHI281eeWLWREXUF4mMw7PvJHHXM,269
18
- tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
- tests/conftest.py,sha256=Oi5SJic4TNwDj8Pm0WHgg657yB7_JKxbLC0HYPI3RUc,22134
20
- tests/test_base_worker.py,sha256=Uq6_MpLW23gmKFXkU-SyDUaA_4dlViLBGG4e3gpBBz0,24512
21
- tests/test_cache.py,sha256=ii0gyr0DrG7ChEs7pmT8hMdSguAOAcCze4bRMiFQxuk,10640
22
- tests/test_dataset_worker.py,sha256=1joFRFmkL6XfPL9y1NYB_5QO-5FF56rwigAHrqtJMMA,23848
23
- tests/test_element.py,sha256=2G9M15TLxQRmvrWM9Kw2ucnElh4kSv_oF_5FYwwAxTY,13181
24
- tests/test_image.py,sha256=FZv8njLxh45sVgmY71UFHt0lv1cHr0cK4rrtPhQleX8,16262
25
- tests/test_merge.py,sha256=Q4zCbtZbe0wBfqE56gvAD06c6pDuhqnjKaioFqIgAQw,8331
26
- tests/test_utils.py,sha256=vpeHMeL7bJQonv5ZEbJmlJikqVKn5VWlVEbvmYFzDYA,1650
27
- tests/test_elements_worker/__init__.py,sha256=Fh4nkbbyJSMv_VtjQxnWrOqTnxXaaWI8S9WU0VrzCHs,179
28
- tests/test_elements_worker/test_classifications.py,sha256=vU6al1THtDSmERyVscMXaqiRPwTllcpRUHyeyBQ8M9U,26417
29
- tests/test_elements_worker/test_cli.py,sha256=BsFTswLti63WAZ2pf6ipiZKWJJyCQuSfuKnSlESuK8g,2878
30
- tests/test_elements_worker/test_dataset.py,sha256=hityecntzrldkuBHBWApYDkXSzSySdG3AZXJlM_sCOM,11777
31
- tests/test_elements_worker/test_elements.py,sha256=6XKtgXSVQJnTSgTHWwEVsAtIwLBapjYjUYPUdjxcHsY,84971
32
- tests/test_elements_worker/test_entities.py,sha256=yi1mXzvKvNwUNMzo0UZ56YOIJstYHcLyeepPJ8f10MQ,34557
33
- tests/test_elements_worker/test_metadata.py,sha256=YMYmkUSEp4WKNBm3QLcrg4yn6qVTWQ_aZzSu9Xygr80,18756
34
- tests/test_elements_worker/test_task.py,sha256=FCpxE9UpouKXgjGvWgNHEai_Hiy2d1YmqRG-_v2s27s,6312
35
- tests/test_elements_worker/test_training.py,sha256=WeG-cDuJ-YhPgfKH47TtXBxyargtLuk7c8tsik2WnL8,8414
36
- tests/test_elements_worker/test_transcriptions.py,sha256=WVJG26sZyY66fu-Eka9A1_WWIeNI2scogjypzURnp8A,73468
37
- tests/test_elements_worker/test_worker.py,sha256=7-jGJVT3yMGpIyN96Uafz5eIUrO4ieNLgw0k1D8BhGc,17163
38
- worker-demo/tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
39
- worker-demo/tests/conftest.py,sha256=XzNMNeg6pmABUAH8jN6eZTlZSFGLYjS3-DTXjiRN6Yc,1002
40
- worker-demo/tests/test_worker.py,sha256=3DLd4NRK4bfyatG5P_PK4k9P9tJHx9XQq5_ryFEEFVg,304
41
- worker-demo/worker_demo/__init__.py,sha256=2BPomV8ZMNf3YXJgloatKeHQCE6QOkwmsHGkO6MkQuM,125
42
- worker-demo/worker_demo/worker.py,sha256=Rt-DjWa5iBP08k58NDZMfeyPuFbtNcbX6nc5jFX7GNo,440
43
- arkindex_base_worker-0.3.7rc10.dist-info/LICENSE,sha256=NVshRi1efwVezMfW7xXYLrdDr2Li1AfwfGOd5WuH1kQ,1063
44
- arkindex_base_worker-0.3.7rc10.dist-info/METADATA,sha256=2o2yKl7p5h3ZPrMDZTnkXabR5WNGsmBCDwA7v8uAHyo,3563
45
- arkindex_base_worker-0.3.7rc10.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
46
- arkindex_base_worker-0.3.7rc10.dist-info/top_level.txt,sha256=58NuslgxQC2vT4DiqZEgO4JqJRrYa2yeNI9QvkbfGQU,40
47
- arkindex_base_worker-0.3.7rc10.dist-info/RECORD,,