python3-commons 0.5.4__py2.py3-none-any.whl → 0.5.5__py2.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.

Potentially problematic release.


This version of python3-commons might be problematic. Click here for more details.

python3_commons/audit.py CHANGED
@@ -22,8 +22,9 @@ async def write_audit_data(settings: S3Settings, key: str, data: bytes):
22
22
  if settings.s3_secret_access_key:
23
23
  try:
24
24
  client = get_s3_client(settings)
25
+ absolute_path = object_storage.get_absolute_path(f'audit/{key}')
25
26
 
26
- client.put_object(settings.s3_bucket, f'audit/{key}', io.BytesIO(data), len(data))
27
+ client.put_object(settings.s3_bucket, absolute_path, io.BytesIO(data), len(data))
27
28
  except S3Error as e:
28
29
  logger.error(f'Failed storing object in storage: {e}')
29
30
  else:
@@ -3,7 +3,7 @@ import logging
3
3
  from datetime import datetime
4
4
  from typing import Generator, Iterable
5
5
 
6
- from minio import Minio, S3Error
6
+ from minio import Minio
7
7
  from minio.datatypes import Object
8
8
  from minio.deleteobjects import DeleteObject, DeleteError
9
9
 
@@ -43,6 +43,7 @@ def put_object(bucket_name: str, path: str, data: io.BytesIO, length: int) -> st
43
43
  s3_client = get_s3_client(s3_settings)
44
44
 
45
45
  if s3_client:
46
+ path = get_absolute_path(path)
46
47
  result = s3_client.put_object(bucket_name, path, data, length)
47
48
 
48
49
  logger.debug(f'Stored object into object storage: {bucket_name}:{path}')
@@ -56,6 +57,7 @@ def get_object_stream(bucket_name: str, path: str):
56
57
  s3_client = get_s3_client(s3_settings)
57
58
 
58
59
  if s3_client:
60
+ path = get_absolute_path(path)
59
61
  logger.debug(f'Getting object from object storage: {bucket_name}:{path}')
60
62
 
61
63
  try:
@@ -92,6 +94,8 @@ def list_objects(bucket_name: str, prefix: str, recursive: bool = True) -> Gener
92
94
 
93
95
  def get_objects(bucket_name: str, path: str,
94
96
  recursive: bool = True) -> Generator[tuple[str, datetime, bytes], None, None]:
97
+ path = get_absolute_path(path)
98
+
95
99
  for obj in list_objects(bucket_name, path, recursive):
96
100
  object_name = obj.object_name
97
101
 
@@ -113,6 +117,7 @@ def remove_objects(bucket_name: str, prefix: str = None,
113
117
  s3_client = get_s3_client(s3_settings)
114
118
 
115
119
  if prefix:
120
+ prefix = get_absolute_path(prefix)
116
121
  delete_object_list = map(
117
122
  lambda obj: DeleteObject(obj.object_name), s3_client.list_objects(bucket_name, prefix=prefix,
118
123
  recursive=True)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: python3-commons
3
- Version: 0.5.4
3
+ Version: 0.5.5
4
4
  Summary: Re-usable Python3 code
5
5
  Home-page: https://github.com/kamikaze/python3-commons
6
6
  Author: Oleg Korsak
@@ -1,10 +1,10 @@
1
1
  python3_commons/__init__.py,sha256=h-KTJUaQ50E3RmkTn_GO88IRunmDTEpNc3ylpFvCTOc,339
2
- python3_commons/audit.py,sha256=FgINOAeR1N1YzQfpno16hvMhxZFKlP93QCed70Uq32g,3608
2
+ python3_commons/audit.py,sha256=QkXok1Kn-8E043K6fu7oVC5UNOJMkOHQXkjyssuXHnM,3684
3
3
  python3_commons/conf.py,sha256=vSXyFwXx2wb1uy8IffeeI-RoTqhUZs0RLSSG2OLc2ss,598
4
4
  python3_commons/db.py,sha256=qhaDIdzBWgFyeP_XPKfHZlYVlwS2bpBPYMv84yV6820,738
5
5
  python3_commons/fs.py,sha256=wfLjybXndwLqNlOxTpm_HRJnuTcC4wbrHEOaEeCo9Wc,337
6
6
  python3_commons/helpers.py,sha256=wI7afc-8o-SBpLBHQnWXiudw456EAVKguJaeZiSNXwE,1377
7
- python3_commons/object_storage.py,sha256=xQy8Jzb0_nS6vxQ6RyNA5FV_ql3k88iZQ5RPWJJiBUo,3798
7
+ python3_commons/object_storage.py,sha256=6iXf5GyYKE40X4E0LbabpcseLzNYMJzGTVkyTdse64c,3946
8
8
  python3_commons/logging/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  python3_commons/logging/filters.py,sha256=fuyjXZAUm-i2MNrxvFYag8F8Rr27x8W8MdV3ke6miSs,175
10
10
  python3_commons/logging/formatter.py,sha256=UXmmh1yd5Kc2dpvSHn6uCWLDWE2LMjlYAaH8cg3siV4,720
@@ -12,9 +12,9 @@ python3_commons/serializers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMp
12
12
  python3_commons/serializers/json.py,sha256=P288wWz9ic38QWEMrpp_uwKPYkQiOgvE1cI4WZn6ZCg,808
13
13
  python3_commons/serializers/msgpack.py,sha256=P7CZoRTBeDtgALT5GTOZVCNM_3snOfCnfh5S3zcCIEY,1679
14
14
  python3_commons/serializers/msgspec.py,sha256=ZrfQWBz_67t3yjU_S6avnRJZzYN-HFzef2qGB5W21KI,2023
15
- python3_commons-0.5.4.dist-info/AUTHORS.rst,sha256=3R9JnfjfjH5RoPWOeqKFJgxVShSSfzQPIrEr1nxIo9Q,90
16
- python3_commons-0.5.4.dist-info/LICENSE,sha256=xxILuojHm4fKQOrMHPSslbyy6WuKAN2RiG74HbrYfzM,34575
17
- python3_commons-0.5.4.dist-info/METADATA,sha256=aRrFxWgZnCZf8XjoZT1t4PiOtwqYEyHzPUnXd6x9ilc,974
18
- python3_commons-0.5.4.dist-info/WHEEL,sha256=DZajD4pwLWue70CAfc7YaxT1wLUciNBvN_TTcvXpltE,110
19
- python3_commons-0.5.4.dist-info/top_level.txt,sha256=lJI6sCBf68eUHzupCnn2dzG10lH3jJKTWM_hrN1cQ7M,16
20
- python3_commons-0.5.4.dist-info/RECORD,,
15
+ python3_commons-0.5.5.dist-info/AUTHORS.rst,sha256=3R9JnfjfjH5RoPWOeqKFJgxVShSSfzQPIrEr1nxIo9Q,90
16
+ python3_commons-0.5.5.dist-info/LICENSE,sha256=xxILuojHm4fKQOrMHPSslbyy6WuKAN2RiG74HbrYfzM,34575
17
+ python3_commons-0.5.5.dist-info/METADATA,sha256=TB4VMzseDmaNHZRTJpFPcaWThzI0QENb1ycV3XH94ko,974
18
+ python3_commons-0.5.5.dist-info/WHEEL,sha256=DZajD4pwLWue70CAfc7YaxT1wLUciNBvN_TTcvXpltE,110
19
+ python3_commons-0.5.5.dist-info/top_level.txt,sha256=lJI6sCBf68eUHzupCnn2dzG10lH3jJKTWM_hrN1cQ7M,16
20
+ python3_commons-0.5.5.dist-info/RECORD,,