python3-commons 0.17.3__tar.gz → 0.17.4__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.
Files changed (73) hide show
  1. {python3_commons-0.17.3/src/python3_commons.egg-info → python3_commons-0.17.4}/PKG-INFO +1 -1
  2. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/conf.py +5 -6
  3. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/object_storage.py +4 -7
  4. {python3_commons-0.17.3 → python3_commons-0.17.4/src/python3_commons.egg-info}/PKG-INFO +1 -1
  5. {python3_commons-0.17.3 → python3_commons-0.17.4}/.coveragerc +0 -0
  6. {python3_commons-0.17.3 → python3_commons-0.17.4}/.devcontainer/Dockerfile +0 -0
  7. {python3_commons-0.17.3 → python3_commons-0.17.4}/.devcontainer/devcontainer.json +0 -0
  8. {python3_commons-0.17.3 → python3_commons-0.17.4}/.devcontainer/docker-compose.yml +0 -0
  9. {python3_commons-0.17.3 → python3_commons-0.17.4}/.env_template +0 -0
  10. {python3_commons-0.17.3 → python3_commons-0.17.4}/.github/workflows/checks.yml +0 -0
  11. {python3_commons-0.17.3 → python3_commons-0.17.4}/.github/workflows/python-publish.yaml +0 -0
  12. {python3_commons-0.17.3 → python3_commons-0.17.4}/.github/workflows/release-on-tag-push.yml +0 -0
  13. {python3_commons-0.17.3 → python3_commons-0.17.4}/.gitignore +0 -0
  14. {python3_commons-0.17.3 → python3_commons-0.17.4}/.pre-commit-config.yaml +0 -0
  15. {python3_commons-0.17.3 → python3_commons-0.17.4}/.python-version +0 -0
  16. {python3_commons-0.17.3 → python3_commons-0.17.4}/AUTHORS.rst +0 -0
  17. {python3_commons-0.17.3 → python3_commons-0.17.4}/CHANGELOG.rst +0 -0
  18. {python3_commons-0.17.3 → python3_commons-0.17.4}/LICENSE +0 -0
  19. {python3_commons-0.17.3 → python3_commons-0.17.4}/README.md +0 -0
  20. {python3_commons-0.17.3 → python3_commons-0.17.4}/README.rst +0 -0
  21. {python3_commons-0.17.3 → python3_commons-0.17.4}/docs/Makefile +0 -0
  22. {python3_commons-0.17.3 → python3_commons-0.17.4}/docs/_static/.gitignore +0 -0
  23. {python3_commons-0.17.3 → python3_commons-0.17.4}/docs/authors.rst +0 -0
  24. {python3_commons-0.17.3 → python3_commons-0.17.4}/docs/changelog.rst +0 -0
  25. {python3_commons-0.17.3 → python3_commons-0.17.4}/docs/conf.py +0 -0
  26. {python3_commons-0.17.3 → python3_commons-0.17.4}/docs/index.rst +0 -0
  27. {python3_commons-0.17.3 → python3_commons-0.17.4}/docs/license.rst +0 -0
  28. {python3_commons-0.17.3 → python3_commons-0.17.4}/pyproject.toml +0 -0
  29. {python3_commons-0.17.3 → python3_commons-0.17.4}/setup.cfg +0 -0
  30. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/__init__.py +0 -0
  31. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/api_client.py +0 -0
  32. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/async_functools.py +0 -0
  33. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/audit.py +0 -0
  34. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/auth.py +0 -0
  35. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/cache.py +0 -0
  36. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/db/__init__.py +0 -0
  37. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/db/helpers.py +0 -0
  38. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/db/models/__init__.py +0 -0
  39. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/db/models/auth.py +0 -0
  40. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/db/models/common.py +0 -0
  41. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/db/models/rbac.py +0 -0
  42. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/db/models/users.py +0 -0
  43. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/exceptions.py +0 -0
  44. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/fs.py +0 -0
  45. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/generators.py +0 -0
  46. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/helpers.py +0 -0
  47. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/log/__init__.py +0 -0
  48. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/log/filters.py +0 -0
  49. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/log/formatters.py +0 -0
  50. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/permissions.py +0 -0
  51. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/serializers/__init__.py +0 -0
  52. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/serializers/common.py +0 -0
  53. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/serializers/json.py +0 -0
  54. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/serializers/msgpack.py +0 -0
  55. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons/serializers/msgspec.py +0 -0
  56. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons.egg-info/SOURCES.txt +0 -0
  57. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons.egg-info/dependency_links.txt +0 -0
  58. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons.egg-info/requires.txt +0 -0
  59. {python3_commons-0.17.3 → python3_commons-0.17.4}/src/python3_commons.egg-info/top_level.txt +0 -0
  60. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/__init__.py +0 -0
  61. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/integration/__init__.py +0 -0
  62. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/integration/test_cache.py +0 -0
  63. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/integration/test_osc.py +0 -0
  64. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/unit/__init__.py +0 -0
  65. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/unit/conftest.py +0 -0
  66. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/unit/log/__init__.py +0 -0
  67. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/unit/log/test_formatters.py +0 -0
  68. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/unit/test_async_functools.py +0 -0
  69. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/unit/test_audit.py +0 -0
  70. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/unit/test_helpers.py +0 -0
  71. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/unit/test_msgpack.py +0 -0
  72. {python3_commons-0.17.3 → python3_commons-0.17.4}/tests/unit/test_msgspec.py +0 -0
  73. {python3_commons-0.17.3 → python3_commons-0.17.4}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python3-commons
3
- Version: 0.17.3
3
+ Version: 0.17.4
4
4
  Summary: Re-usable Python3 code
5
5
  Author-email: Oleg Korsak <kamikaze.is.waiting.you@gmail.com>
6
6
  License-Expression: GPL-3.0
@@ -58,11 +58,11 @@ class DBSettings(BaseSettings):
58
58
  @model_validator(mode='after')
59
59
  def build_dsn_if_missing(self) -> DBSettings:
60
60
  if self.dsn is None and all(
61
- (
62
- self.user,
63
- self.password,
64
- self.name,
65
- )
61
+ (
62
+ self.user,
63
+ self.password,
64
+ self.name,
65
+ )
66
66
  ):
67
67
  self.dsn = PostgresDsn.build(
68
68
  scheme=self.scheme,
@@ -82,7 +82,6 @@ class S3Settings(BaseSettings):
82
82
  aws_access_key_id: SecretStr | None = None
83
83
  aws_secret_access_key: SecretStr | None = None
84
84
 
85
- s3_endpoint_url: str | None = None
86
85
  s3_addressing_style: Literal['path', 'virtual'] = 'virtual'
87
86
  s3_secure: bool = True
88
87
  s3_bucket: str | None = None
@@ -50,9 +50,6 @@ class ObjectStorage(metaclass=SingletonMeta):
50
50
  'config': Config(s3={'addressing_style': settings.s3_addressing_style}, signature_version='s3v4'),
51
51
  }
52
52
 
53
- if s3_endpoint_url := settings.s3_endpoint_url:
54
- config['endpoint_url'] = s3_endpoint_url
55
-
56
53
  if aws_access_key_id := settings.aws_access_key_id:
57
54
  config['aws_access_key_id'] = aws_access_key_id.get_secret_value()
58
55
 
@@ -143,7 +140,7 @@ async def list_objects(bucket_name: str, prefix: str, *, recursive: bool = True)
143
140
 
144
141
 
145
142
  async def get_object_streams(
146
- bucket_name: str, path: str, *, recursive: bool = True
143
+ bucket_name: str, path: str, *, recursive: bool = True
147
144
  ) -> AsyncGenerator[tuple[str, datetime, StreamingBody]]:
148
145
  async for obj in list_objects(bucket_name, path, recursive=recursive):
149
146
  object_name = obj['Key']
@@ -154,7 +151,7 @@ async def get_object_streams(
154
151
 
155
152
 
156
153
  async def get_objects(
157
- bucket_name: str, path: str, *, recursive: bool = True
154
+ bucket_name: str, path: str, *, recursive: bool = True
158
155
  ) -> AsyncGenerator[tuple[str, datetime, bytes]]:
159
156
  async for object_name, last_modified, stream in get_object_streams(bucket_name, path, recursive=recursive):
160
157
  data = await stream.read()
@@ -176,7 +173,7 @@ async def remove_object(bucket_name: str, object_name: str) -> None:
176
173
 
177
174
 
178
175
  async def remove_objects(
179
- bucket_name: str, prefix: str | None = None, object_names: Iterable[str] | None = None
176
+ bucket_name: str, prefix: str | None = None, object_names: Iterable[str] | None = None
180
177
  ) -> Sequence[Mapping] | None:
181
178
  storage = ObjectStorage(s3_settings)
182
179
 
@@ -199,7 +196,7 @@ async def remove_objects(
199
196
  chunk_size = 1000
200
197
 
201
198
  for i in range(0, len(objects_to_delete), chunk_size):
202
- chunk = objects_to_delete[i : i + chunk_size]
199
+ chunk = objects_to_delete[i: i + chunk_size]
203
200
 
204
201
  response = await s3_client.delete_objects(Bucket=bucket_name, Delete={'Objects': chunk})
205
202
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python3-commons
3
- Version: 0.17.3
3
+ Version: 0.17.4
4
4
  Summary: Re-usable Python3 code
5
5
  Author-email: Oleg Korsak <kamikaze.is.waiting.you@gmail.com>
6
6
  License-Expression: GPL-3.0