documente_shared 0.1.185b4__tar.gz → 0.1.186__tar.gz
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.
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/PKG-INFO +2 -1
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/query_params.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/constants.py +4 -1
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/document.py +1 -5
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/processing_case_item.py +0 -4
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/documente_client.py +28 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/pyproject.toml +2 -1
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/uv.lock +12 -1
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/.github/workflows/publish.yml +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/.gitignore +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/.vscode/settings.json +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/Dockerfile +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/Makefile +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/README.md +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/cases.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/docker-compose.yml +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/dates.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/digest.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/exceptions.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/files.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/json.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/logging.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/numbers.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/payloads.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/retry_utils.py +1 -1
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/time_utils.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/timezone.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/base_enum.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/document_metadata.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/document_type.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/in_memory_document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/processing_case.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/processing_case_filters.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/processing_case_item_filters.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/processing_documents.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/processing_event.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/processing_record.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/scaling.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/workspace.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/workspace_document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/workspace_document_page.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/circular_oficio.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/common.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/document_type_record.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/processing_case.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/processing_case_validator.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/workspace.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/exceptions.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/filters/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/filters/document_type.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/filters/workspace.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/filters/workspace_document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/filters/workspace_document_page.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/helpers/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/helpers/dicts.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/helpers/encoding.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/helpers/lists.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/helpers/values.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/interfaces/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/interfaces/queue.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/interfaces/scaling.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/pagination/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/pagination/entities.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/pagination/response.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/repositories/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/repositories/document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/repositories/document_type.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/repositories/processing_case.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/repositories/processing_case_item.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/repositories/processing_record.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/repositories/workspace.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/repositories/workspace_document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/repositories/workspace_document_page.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/batch_queue.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/dynamo_table.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/lambdas.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/dynamo_document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/dynamo_processing_case.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/dynamo_processing_case_item.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/http_document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/http_document_type.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/http_processing_case.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/http_processing_case_item.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/http_processing_record.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/http_workspace.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/http_workspace_document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/http_workspace_document_page.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/mem_document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/mem_processing_case.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/mem_processing_case_item.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/repositories/mem_processing_record.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/s3_bucket.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/services/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/services/http_scaling.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/sqs_queue.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/presentation/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/presentation/presenters.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/publish.sh +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/application/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/application/test_files.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/application/test_payloads.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/conftest.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/domain/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/domain/entities/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/domain/entities/test_in_memory_document.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/domain/entities/test_processing_case.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/domain/entities/test_processing_case_item.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/domain/entities/test_processing_record.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/domain/enums/test_processing_case_validator.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/infrastructure/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/infrastructure/repositories/__init__.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/infrastructure/repositories/test_http_processing_record.py +0 -0
- {documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documents.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: documente_shared
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.186
|
|
4
4
|
Summary: Shared utilities for LlamitAI projects
|
|
5
5
|
Author-email: Tech <tech@llamitai.com>
|
|
6
6
|
License: MIT
|
|
@@ -11,6 +11,7 @@ Requires-Dist: pydantic>=2.12.5
|
|
|
11
11
|
Requires-Dist: requests>=2.32.5
|
|
12
12
|
Requires-Dist: sentry-sdk>=2.52.0
|
|
13
13
|
Requires-Dist: structlog>=25.5.0
|
|
14
|
+
Requires-Dist: tenacity>=9.1.4
|
|
14
15
|
Requires-Dist: unidecode>=1.4.0
|
|
15
16
|
Description-Content-Type: text/markdown
|
|
16
17
|
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/query_params.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/constants.py
RENAMED
|
@@ -7,4 +7,7 @@ la_paz_tz = ZoneInfo("America/La_Paz")
|
|
|
7
7
|
DOCUMENTE_API_URL = environ.get("DOCUMENTE_API_URL")
|
|
8
8
|
DOCUMENTE_API_KEY = environ.get("DOCUMENTE_API_KEY")
|
|
9
9
|
|
|
10
|
-
DEFAULT_PAGINATION_PAGE_SIZE = 50
|
|
10
|
+
DEFAULT_PAGINATION_PAGE_SIZE = 50
|
|
11
|
+
|
|
12
|
+
HTTP_RETRY_TOTAL = 3
|
|
13
|
+
HTTP_RETRY_BACKOFF_FACTOR = 0.5
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/document.py
RENAMED
|
@@ -54,7 +54,6 @@ class DocumentProcessing(object):
|
|
|
54
54
|
metadata: Optional[dict] = None
|
|
55
55
|
document_size: Optional[Decimal] = None
|
|
56
56
|
document_pages: Optional[int] = None
|
|
57
|
-
ocr_render_text: Optional[str] = None
|
|
58
57
|
metadata_items: Optional[List[DocumentProcessingMetadata]] = None
|
|
59
58
|
|
|
60
59
|
def __post_init__(self):
|
|
@@ -303,7 +302,6 @@ class DocumentProcessing(object):
|
|
|
303
302
|
if self.document_size else None
|
|
304
303
|
),
|
|
305
304
|
'document_pages': self.document_pages,
|
|
306
|
-
'ocr_render_text': self.ocr_render_text,
|
|
307
305
|
}
|
|
308
306
|
|
|
309
307
|
@property
|
|
@@ -365,7 +363,6 @@ class DocumentProcessing(object):
|
|
|
365
363
|
'document_size',
|
|
366
364
|
'document_pages',
|
|
367
365
|
'completed_at',
|
|
368
|
-
'ocr_render_text',
|
|
369
366
|
]
|
|
370
367
|
for _property in instance_properties:
|
|
371
368
|
property_value = getattr(new_instance, _property)
|
|
@@ -424,7 +421,6 @@ class DocumentProcessing(object):
|
|
|
424
421
|
Decimal(data.get('document_size'))
|
|
425
422
|
if data.get('document_size') else None
|
|
426
423
|
),
|
|
427
|
-
document_pages=data.get('document_pages')
|
|
428
|
-
ocr_render_text=data.get('ocr_render_text'),
|
|
424
|
+
document_pages=data.get('document_pages')
|
|
429
425
|
)
|
|
430
426
|
|
|
@@ -32,7 +32,6 @@ class ProcessingCaseItem(object):
|
|
|
32
32
|
completed_at: Optional[datetime] = None
|
|
33
33
|
feedback: Optional[list | dict] = None
|
|
34
34
|
metadata: Optional[dict] = None
|
|
35
|
-
ocr_render_text: Optional[str] = None
|
|
36
35
|
|
|
37
36
|
def __post_init__(self):
|
|
38
37
|
self.feedback = self.feedback or []
|
|
@@ -108,7 +107,6 @@ class ProcessingCaseItem(object):
|
|
|
108
107
|
'completed_at',
|
|
109
108
|
'feedback',
|
|
110
109
|
'metadata',
|
|
111
|
-
'ocr_render_text',
|
|
112
110
|
]
|
|
113
111
|
for _property in instance_properties:
|
|
114
112
|
property_value = getattr(new_instance, _property)
|
|
@@ -207,7 +205,6 @@ class ProcessingCaseItem(object):
|
|
|
207
205
|
self.completed_at.isoformat()
|
|
208
206
|
if self.completed_at else None
|
|
209
207
|
),
|
|
210
|
-
'ocr_render_text': self.ocr_render_text,
|
|
211
208
|
}
|
|
212
209
|
|
|
213
210
|
@property
|
|
@@ -286,7 +283,6 @@ class ProcessingCaseItem(object):
|
|
|
286
283
|
feedback=data.get('feedback'),
|
|
287
284
|
metadata=data.get('metadata', {}),
|
|
288
285
|
completed_at=get_datetime_from_data(input_datetime=data.get('completed_at')),
|
|
289
|
-
ocr_render_text=data.get('ocr_render_text'),
|
|
290
286
|
)
|
|
291
287
|
|
|
292
288
|
@classmethod
|
|
@@ -1,9 +1,27 @@
|
|
|
1
|
+
import logging
|
|
1
2
|
from contextlib import contextmanager
|
|
2
3
|
from dataclasses import dataclass
|
|
3
4
|
from requests import Response, Session
|
|
5
|
+
from requests.exceptions import ConnectionError, Timeout
|
|
4
6
|
from typing import Callable, Optional
|
|
7
|
+
from tenacity import (
|
|
8
|
+
retry,
|
|
9
|
+
retry_if_exception_type,
|
|
10
|
+
stop_after_attempt,
|
|
11
|
+
wait_exponential,
|
|
12
|
+
before_sleep_log,
|
|
13
|
+
)
|
|
14
|
+
|
|
15
|
+
import structlog
|
|
5
16
|
|
|
6
17
|
from documente_shared.application.payloads import camel_to_snake
|
|
18
|
+
from documente_shared.domain.constants import (
|
|
19
|
+
HTTP_RETRY_BACKOFF_FACTOR,
|
|
20
|
+
HTTP_RETRY_TOTAL,
|
|
21
|
+
)
|
|
22
|
+
|
|
23
|
+
logger = structlog.get_logger()
|
|
24
|
+
_stdlib_logger = logging.getLogger(__name__)
|
|
7
25
|
|
|
8
26
|
|
|
9
27
|
@dataclass
|
|
@@ -19,6 +37,16 @@ class DocumenteClientMixin(object):
|
|
|
19
37
|
def _get_session(self) -> Session:
|
|
20
38
|
session = Session()
|
|
21
39
|
session.headers.update(self.get_common_headers())
|
|
40
|
+
session.request = retry(
|
|
41
|
+
stop=stop_after_attempt(HTTP_RETRY_TOTAL),
|
|
42
|
+
wait=wait_exponential(multiplier=HTTP_RETRY_BACKOFF_FACTOR),
|
|
43
|
+
retry=(
|
|
44
|
+
retry_if_exception_type(ConnectionError)
|
|
45
|
+
| retry_if_exception_type(Timeout)
|
|
46
|
+
),
|
|
47
|
+
before_sleep=before_sleep_log(_stdlib_logger, logging.WARNING),
|
|
48
|
+
reraise=True,
|
|
49
|
+
)(session.request)
|
|
22
50
|
return session
|
|
23
51
|
|
|
24
52
|
def get_common_headers(self) -> dict:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "documente_shared"
|
|
3
|
-
version = "0.1.
|
|
3
|
+
version = "0.1.186"
|
|
4
4
|
description = "Shared utilities for LlamitAI projects"
|
|
5
5
|
authors = [{ name = "Tech", email = "tech@llamitai.com" }]
|
|
6
6
|
license = { text = "MIT" }
|
|
@@ -14,6 +14,7 @@ dependencies = [
|
|
|
14
14
|
"requests>=2.32.5",
|
|
15
15
|
"structlog>=25.5.0",
|
|
16
16
|
"pydantic>=2.12.5",
|
|
17
|
+
"tenacity>=9.1.4",
|
|
17
18
|
]
|
|
18
19
|
|
|
19
20
|
[dependency-groups]
|
|
@@ -138,7 +138,7 @@ wheels = [
|
|
|
138
138
|
|
|
139
139
|
[[package]]
|
|
140
140
|
name = "documente-shared"
|
|
141
|
-
version = "0.1.
|
|
141
|
+
version = "0.1.186"
|
|
142
142
|
source = { editable = "." }
|
|
143
143
|
dependencies = [
|
|
144
144
|
{ name = "boto3" },
|
|
@@ -147,6 +147,7 @@ dependencies = [
|
|
|
147
147
|
{ name = "requests" },
|
|
148
148
|
{ name = "sentry-sdk" },
|
|
149
149
|
{ name = "structlog" },
|
|
150
|
+
{ name = "tenacity" },
|
|
150
151
|
{ name = "unidecode" },
|
|
151
152
|
]
|
|
152
153
|
|
|
@@ -165,6 +166,7 @@ requires-dist = [
|
|
|
165
166
|
{ name = "requests", specifier = ">=2.32.5" },
|
|
166
167
|
{ name = "sentry-sdk", specifier = ">=2.52.0" },
|
|
167
168
|
{ name = "structlog", specifier = ">=25.5.0" },
|
|
169
|
+
{ name = "tenacity", specifier = ">=9.1.4" },
|
|
168
170
|
{ name = "unidecode", specifier = ">=1.4.0" },
|
|
169
171
|
]
|
|
170
172
|
|
|
@@ -604,6 +606,15 @@ wheels = [
|
|
|
604
606
|
{ url = "https://files.pythonhosted.org/packages/a8/45/a132b9074aa18e799b891b91ad72133c98d8042c70f6240e4c5f9dabee2f/structlog-25.5.0-py3-none-any.whl", hash = "sha256:a8453e9b9e636ec59bd9e79bbd4a72f025981b3ba0f5837aebf48f02f37a7f9f", size = 72510, upload-time = "2025-10-27T08:28:21.535Z" },
|
|
605
607
|
]
|
|
606
608
|
|
|
609
|
+
[[package]]
|
|
610
|
+
name = "tenacity"
|
|
611
|
+
version = "9.1.4"
|
|
612
|
+
source = { registry = "https://pypi.org/simple" }
|
|
613
|
+
sdist = { url = "https://files.pythonhosted.org/packages/47/c6/ee486fd809e357697ee8a44d3d69222b344920433d3b6666ccd9b374630c/tenacity-9.1.4.tar.gz", hash = "sha256:adb31d4c263f2bd041081ab33b498309a57c77f9acf2db65aadf0898179cf93a", size = 49413, upload-time = "2026-02-07T10:45:33.841Z" }
|
|
614
|
+
wheels = [
|
|
615
|
+
{ url = "https://files.pythonhosted.org/packages/d7/c1/eb8f9debc45d3b7918a32ab756658a0904732f75e555402972246b0b8e71/tenacity-9.1.4-py3-none-any.whl", hash = "sha256:6095a360c919085f28c6527de529e76a06ad89b23659fa881ae0649b867a9d55", size = 28926, upload-time = "2026-02-07T10:45:32.24Z" },
|
|
616
|
+
]
|
|
617
|
+
|
|
607
618
|
[[package]]
|
|
608
619
|
name = "tomli"
|
|
609
620
|
version = "2.4.0"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/__init__.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/dates.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/digest.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/exceptions.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/files.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/json.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/logging.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/numbers.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/payloads.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/retry_utils.py
RENAMED
|
@@ -2,11 +2,11 @@ import time
|
|
|
2
2
|
import random
|
|
3
3
|
from functools import wraps
|
|
4
4
|
from typing import Optional, Callable
|
|
5
|
+
|
|
5
6
|
import structlog
|
|
6
7
|
|
|
7
8
|
logger = structlog.get_logger()
|
|
8
9
|
|
|
9
|
-
|
|
10
10
|
def retry_on_size_integrity(base_delay: float = 0.8, max_retries: int = 3):
|
|
11
11
|
def decorator(func: Callable):
|
|
12
12
|
@wraps(func)
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/time_utils.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/application/timezone.py
RENAMED
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/base_enum.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/entities/scaling.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/common.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/document.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/enums/workspace.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/exceptions.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/filters/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/filters/workspace.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/helpers/__init__.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/helpers/dicts.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/helpers/encoding.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/helpers/lists.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/helpers/values.py
RENAMED
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/domain/interfaces/queue.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/lambdas.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/s3_bucket.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/infrastructure/sqs_queue.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/presentation/__init__.py
RENAMED
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/documente_shared/presentation/presenters.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{documente_shared-0.1.185b4 → documente_shared-0.1.186}/tests/documente_shared/domain/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|