python3-commons 0.6.4__tar.gz → 0.6.6__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 (47) hide show
  1. {python3_commons-0.6.4/src/python3_commons.egg-info → python3_commons-0.6.6}/PKG-INFO +3 -3
  2. {python3_commons-0.6.4 → python3_commons-0.6.6}/pyproject.toml +3 -3
  3. {python3_commons-0.6.4 → python3_commons-0.6.6}/requirements.txt +2 -2
  4. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/audit.py +11 -0
  5. {python3_commons-0.6.4 → python3_commons-0.6.6/src/python3_commons.egg-info}/PKG-INFO +3 -3
  6. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons.egg-info/requires.txt +2 -2
  7. {python3_commons-0.6.4 → python3_commons-0.6.6}/tests/test_msgspec.py +7 -0
  8. {python3_commons-0.6.4 → python3_commons-0.6.6}/.coveragerc +0 -0
  9. {python3_commons-0.6.4 → python3_commons-0.6.6}/.github/workflows/python-publish.yaml +0 -0
  10. {python3_commons-0.6.4 → python3_commons-0.6.6}/.gitignore +0 -0
  11. {python3_commons-0.6.4 → python3_commons-0.6.6}/AUTHORS.rst +0 -0
  12. {python3_commons-0.6.4 → python3_commons-0.6.6}/CHANGELOG.rst +0 -0
  13. {python3_commons-0.6.4 → python3_commons-0.6.6}/LICENSE +0 -0
  14. {python3_commons-0.6.4 → python3_commons-0.6.6}/README.md +0 -0
  15. {python3_commons-0.6.4 → python3_commons-0.6.6}/README.rst +0 -0
  16. {python3_commons-0.6.4 → python3_commons-0.6.6}/docs/Makefile +0 -0
  17. {python3_commons-0.6.4 → python3_commons-0.6.6}/docs/_static/.gitignore +0 -0
  18. {python3_commons-0.6.4 → python3_commons-0.6.6}/docs/authors.rst +0 -0
  19. {python3_commons-0.6.4 → python3_commons-0.6.6}/docs/changelog.rst +0 -0
  20. {python3_commons-0.6.4 → python3_commons-0.6.6}/docs/conf.py +0 -0
  21. {python3_commons-0.6.4 → python3_commons-0.6.6}/docs/index.rst +0 -0
  22. {python3_commons-0.6.4 → python3_commons-0.6.6}/docs/license.rst +0 -0
  23. {python3_commons-0.6.4 → python3_commons-0.6.6}/requirements_dev.txt +0 -0
  24. {python3_commons-0.6.4 → python3_commons-0.6.6}/requirements_test.txt +0 -0
  25. {python3_commons-0.6.4 → python3_commons-0.6.6}/setup.cfg +0 -0
  26. {python3_commons-0.6.4 → python3_commons-0.6.6}/setup.py +0 -0
  27. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/__init__.py +0 -0
  28. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/api_client.py +0 -0
  29. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/conf.py +0 -0
  30. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/db.py +0 -0
  31. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/fs.py +0 -0
  32. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/helpers.py +0 -0
  33. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/logging/__init__.py +0 -0
  34. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/logging/filters.py +0 -0
  35. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/logging/formatters.py +0 -0
  36. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/object_storage.py +0 -0
  37. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/serializers/__init__.py +0 -0
  38. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/serializers/json.py +0 -0
  39. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/serializers/msgpack.py +0 -0
  40. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons/serializers/msgspec.py +0 -0
  41. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons.egg-info/SOURCES.txt +0 -0
  42. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons.egg-info/dependency_links.txt +0 -0
  43. {python3_commons-0.6.4 → python3_commons-0.6.6}/src/python3_commons.egg-info/top_level.txt +0 -0
  44. {python3_commons-0.6.4 → python3_commons-0.6.6}/tests/conftest.py +0 -0
  45. {python3_commons-0.6.4 → python3_commons-0.6.6}/tests/test_audit.py +0 -0
  46. {python3_commons-0.6.4 → python3_commons-0.6.6}/tests/test_helpers.py +0 -0
  47. {python3_commons-0.6.4 → python3_commons-0.6.6}/tests/test_msgpack.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: python3-commons
3
- Version: 0.6.4
3
+ Version: 0.6.6
4
4
  Summary: Re-usable Python3 code
5
5
  Author-email: Oleg Korsak <kamikaze.is.waiting.you@gmail.com>
6
6
  License: gpl-3
@@ -12,9 +12,9 @@ Requires-Python: >=3.13
12
12
  Description-Content-Type: text/x-rst
13
13
  License-File: LICENSE
14
14
  License-File: AUTHORS.rst
15
- Requires-Dist: aiohttp[speedups]==3.11.11
15
+ Requires-Dist: aiohttp[speedups]==3.11.12
16
16
  Requires-Dist: asyncpg==0.30.0
17
- Requires-Dist: lxml==5.3.0
17
+ Requires-Dist: lxml==5.3.1
18
18
  Requires-Dist: minio==7.2.15
19
19
  Requires-Dist: msgpack==1.1.0
20
20
  Requires-Dist: msgspec==0.19.0
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "python3-commons"
7
- version = "0.6.4"
7
+ version = "0.6.6"
8
8
  description = "Re-usable Python3 code"
9
9
  authors = [
10
10
  {name = "Oleg Korsak", email = "kamikaze.is.waiting.you@gmail.com"}
@@ -17,9 +17,9 @@ classifiers = [
17
17
  ]
18
18
  keywords = []
19
19
  dependencies = [
20
- "aiohttp[speedups]==3.11.11",
20
+ "aiohttp[speedups]==3.11.12",
21
21
  "asyncpg==0.30.0",
22
- "lxml==5.3.0",
22
+ "lxml==5.3.1",
23
23
  "minio==7.2.15",
24
24
  "msgpack==1.1.0",
25
25
  "msgspec==0.19.0",
@@ -1,6 +1,6 @@
1
- aiohttp[speedups]==3.11.11
1
+ aiohttp[speedups]==3.11.12
2
2
  asyncpg==0.30.0
3
- lxml==5.3.0
3
+ lxml==5.3.1
4
4
  minio==7.2.15
5
5
  msgpack==1.1.0
6
6
  msgspec==0.19.0
@@ -92,6 +92,17 @@ def generate_archive(objects: Iterable[tuple[str, datetime, bytes]],
92
92
  buffer.seek(0)
93
93
  buffer.truncate(0)
94
94
 
95
+ while True:
96
+ chunk = buffer.read(chunk_size)
97
+
98
+ if not chunk:
99
+ break
100
+
101
+ yield chunk
102
+
103
+ buffer.seek(0)
104
+ buffer.truncate(0)
105
+
95
106
 
96
107
  def generate_bzip2(chunks: Generator[bytes, None, None]) -> Generator[bytes, None, None]:
97
108
  compressor = BZ2Compressor()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: python3-commons
3
- Version: 0.6.4
3
+ Version: 0.6.6
4
4
  Summary: Re-usable Python3 code
5
5
  Author-email: Oleg Korsak <kamikaze.is.waiting.you@gmail.com>
6
6
  License: gpl-3
@@ -12,9 +12,9 @@ Requires-Python: >=3.13
12
12
  Description-Content-Type: text/x-rst
13
13
  License-File: LICENSE
14
14
  License-File: AUTHORS.rst
15
- Requires-Dist: aiohttp[speedups]==3.11.11
15
+ Requires-Dist: aiohttp[speedups]==3.11.12
16
16
  Requires-Dist: asyncpg==0.30.0
17
- Requires-Dist: lxml==5.3.0
17
+ Requires-Dist: lxml==5.3.1
18
18
  Requires-Dist: minio==7.2.15
19
19
  Requires-Dist: msgpack==1.1.0
20
20
  Requires-Dist: msgspec==0.19.0
@@ -1,6 +1,6 @@
1
- aiohttp[speedups]==3.11.11
1
+ aiohttp[speedups]==3.11.12
2
2
  asyncpg==0.30.0
3
- lxml==5.3.0
3
+ lxml==5.3.1
4
4
  minio==7.2.15
5
5
  msgpack==1.1.0
6
6
  msgspec==0.19.0
@@ -1,6 +1,12 @@
1
+ from msgspec import Struct
2
+
1
3
  from python3_commons.serializers import msgspec
2
4
 
3
5
 
6
+ class AStruct(Struct):
7
+ pass
8
+
9
+
4
10
  def test_encode_decode_dict_to_msgpack(data_dict):
5
11
  expected_result = {
6
12
  'A': 1,
@@ -17,6 +23,7 @@ def test_encode_decode_dict_to_msgpack(data_dict):
17
23
 
18
24
  def test_encode_decode_dataclass_to_msgpack(data_dataclass):
19
25
  binary_data = msgspec.serialize_msgpack(data_dataclass)
26
+
20
27
  assert msgspec.deserialize_msgpack(binary_data, data_type=data_dataclass.__class__) == data_dataclass
21
28
 
22
29
 
File without changes