meilisearch-python-sdk 7.4.0__tar.gz → 7.5.0__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.
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/.github/workflows/testing.yml +1 -1
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/PKG-INFO +2 -7
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/README.md +0 -5
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docker-compose.https.yml +1 -1
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docker-compose.yml +1 -1
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/_http_requests.py +4 -2
- meilisearch_python_sdk-7.5.0/meilisearch_python_sdk/_version.py +1 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/index.py +2 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/prek.toml +3 -3
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/pyproject.toml +4 -4
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_async_index.py +2 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_index.py +2 -0
- meilisearch_python_sdk-7.5.0/tests/test_json_handler.py +13 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/uv.lock +228 -184
- meilisearch_python_sdk-7.4.0/meilisearch_python_sdk/_version.py +0 -1
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/.github/FUNDING.yml +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/.github/release-draft-template.yaml +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/.github/renovate.json5 +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/.github/workflows/docs_publish.yml +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/.github/workflows/nightly_testing.yml +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/.github/workflows/prek_update.yml +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/.github/workflows/pypi_publish.yml +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/.github/workflows/release-drafter.yml +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/.gitignore +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/CONTRIBUTING.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/LICENSE +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/assets/add_in_batches.png +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/assets/searches.png +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/codecov.yml +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/datasets/small_movies.json +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/.nojekyll +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/CNAME +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/async_client_api.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/async_index_api.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/client_api.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/css/custom.css +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/decorators_api.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/index.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/index_api.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/js/umami.js +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/json_handler.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/overrides/partials/footer.html +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/plugins.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/docs/pydantic.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/.gitignore +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/README.md +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/__init__.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/add_documents_decorator.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/add_documents_in_batches.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/async_add_documents_decorator.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/async_add_documents_in_batches.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/async_documents_and_search_results.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/async_search_tracker.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/async_update_settings.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/documents_and_search_results.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/fastapi_example.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/orjson_example.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/pyproject.toml +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/requirements.txt +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/search_tracker.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/tests/__init__.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/tests/conftest.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/tests/test_async_examples.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/tests/test_examples.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/examples/update_settings.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/justfile +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/__init__.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/_batch.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/_client/__init__.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/_client/_async_client.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/_client/_base_client.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/_client/_client.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/_client/_common.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/_task.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/_utils.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/decorators.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/errors.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/index/__init__.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/index/_common.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/index/async_index.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/index/index.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/json_handler.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/__init__.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/batch.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/client.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/documents.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/health.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/search.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/settings.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/task.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/version.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/webhook.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/plugins.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/py.typed +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/types.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/mkdocs.yaml +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/__init__.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/conftest.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_async_client.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_async_documents.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_async_index_plugins.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_async_search.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_client.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_decorators.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_documents.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_errors.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_http_requests.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_index_plugins.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_search.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_settings_models.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_utils.py +0 -0
- {meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/tests/test_version.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
2
|
Name: meilisearch-python-sdk
|
|
3
|
-
Version: 7.
|
|
3
|
+
Version: 7.5.0
|
|
4
4
|
Summary: A Python client providing both async and sync support for the Meilisearch API
|
|
5
5
|
Project-URL: repository, https://github.com/sanders41/meilisearch-python-sdk
|
|
6
6
|
Project-URL: homepage, https://github.com/sanders41/meilisearch-python-sdk
|
|
@@ -265,11 +265,6 @@ This test compares how long it takes to complete 1000 searches (lower is better)
|
|
|
265
265
|
to be ~30% faster than the sync client for data ingestion. You can find a good write-up of the
|
|
266
266
|
results how he tested them in his [blog post](https://thedataquarry.com/posts/meilisearch-async/).
|
|
267
267
|
|
|
268
|
-
## Testing
|
|
269
|
-
|
|
270
|
-
[pytest-meilisearch](https://github.com/sanders41/pytest-meilisearch) is a pytest plugin that can
|
|
271
|
-
help with testing your code. It provides a lot of the boiler plate code you will need.
|
|
272
|
-
|
|
273
268
|
## Documentation
|
|
274
269
|
|
|
275
270
|
See our [docs](https://meilisearch-python-sdk.paulsanders.dev) for the full documentation.
|
|
@@ -213,11 +213,6 @@ This test compares how long it takes to complete 1000 searches (lower is better)
|
|
|
213
213
|
to be ~30% faster than the sync client for data ingestion. You can find a good write-up of the
|
|
214
214
|
results how he tested them in his [blog post](https://thedataquarry.com/posts/meilisearch-async/).
|
|
215
215
|
|
|
216
|
-
## Testing
|
|
217
|
-
|
|
218
|
-
[pytest-meilisearch](https://github.com/sanders41/pytest-meilisearch) is a pytest plugin that can
|
|
219
|
-
help with testing your code. It provides a lot of the boiler plate code you will need.
|
|
220
|
-
|
|
221
216
|
## Documentation
|
|
222
217
|
|
|
223
218
|
See our [docs](https://meilisearch-python-sdk.paulsanders.dev) for the full documentation.
|
|
@@ -53,7 +53,7 @@ class AsyncHttpRequests:
|
|
|
53
53
|
response = await http_method(path)
|
|
54
54
|
elif content_type == "application/json" and not compress:
|
|
55
55
|
response = await http_method(
|
|
56
|
-
path, content=self.json_handler.
|
|
56
|
+
path, content=self.json_handler.dump_bytes(body), headers=headers
|
|
57
57
|
)
|
|
58
58
|
else:
|
|
59
59
|
if compress:
|
|
@@ -141,7 +141,9 @@ class HttpRequests:
|
|
|
141
141
|
if body is None:
|
|
142
142
|
response = http_method(path)
|
|
143
143
|
elif content_type == "application/json" and not compress:
|
|
144
|
-
response = http_method(
|
|
144
|
+
response = http_method(
|
|
145
|
+
path, content=self.json_handler.dump_bytes(body), headers=headers
|
|
146
|
+
)
|
|
145
147
|
else:
|
|
146
148
|
if compress:
|
|
147
149
|
if content_type == "application/json":
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
VERSION = "7.5.0"
|
{meilisearch_python_sdk-7.4.0 → meilisearch_python_sdk-7.5.0}/meilisearch_python_sdk/models/index.py
RENAMED
|
@@ -24,6 +24,8 @@ class IndexStats(CamelBase):
|
|
|
24
24
|
is_indexing: bool
|
|
25
25
|
field_distribution: dict[str, int]
|
|
26
26
|
internal_database_sizes: JsonDict | None = None
|
|
27
|
+
index_size: int | str | None = None
|
|
28
|
+
used_index_size: int | str | None = None
|
|
27
29
|
|
|
28
30
|
|
|
29
31
|
class FieldsFilter(CamelBase):
|
|
@@ -21,7 +21,7 @@ hooks = [
|
|
|
21
21
|
|
|
22
22
|
[[repos]]
|
|
23
23
|
repo = "https://github.com/facebook/pyrefly-pre-commit"
|
|
24
|
-
rev = "1.
|
|
24
|
+
rev = "1.2.0"
|
|
25
25
|
hooks = [
|
|
26
26
|
{
|
|
27
27
|
id = "pyrefly-check",
|
|
@@ -34,7 +34,7 @@ hooks = [
|
|
|
34
34
|
|
|
35
35
|
[[repos]]
|
|
36
36
|
repo = "https://github.com/astral-sh/ruff-pre-commit"
|
|
37
|
-
rev = "v0.16.
|
|
37
|
+
rev = "v0.16.2"
|
|
38
38
|
hooks = [
|
|
39
39
|
{
|
|
40
40
|
id = "ruff-check",
|
|
@@ -47,7 +47,7 @@ hooks = [
|
|
|
47
47
|
|
|
48
48
|
[[repos]]
|
|
49
49
|
repo = "https://github.com/rvben/rumdl-pre-commit"
|
|
50
|
-
rev = "v0.2.
|
|
50
|
+
rev = "v0.2.53"
|
|
51
51
|
hooks = [
|
|
52
52
|
{ id = "rumdl-fmt" }
|
|
53
53
|
]
|
|
@@ -37,16 +37,16 @@ all = ["orjson"]
|
|
|
37
37
|
[dependency-groups]
|
|
38
38
|
dev = [
|
|
39
39
|
"mkdocstrings[python]==1.0.6",
|
|
40
|
-
"pyrefly==1.
|
|
40
|
+
"pyrefly==1.2.0",
|
|
41
41
|
"pytest==9.1.1",
|
|
42
42
|
"pytest-cov==7.1.0",
|
|
43
43
|
"pytest-asyncio==1.4.0",
|
|
44
44
|
"pytest-xdist==3.8.0",
|
|
45
|
-
"prek==0.4.
|
|
46
|
-
"ruff==0.16.
|
|
45
|
+
"prek==0.4.13",
|
|
46
|
+
"ruff==0.16.2",
|
|
47
47
|
"types-aiofiles==25.1.0.20260518",
|
|
48
48
|
"typing-extensions==4.16.0",
|
|
49
|
-
"zensical==0.0.
|
|
49
|
+
"zensical==0.0.53",
|
|
50
50
|
]
|
|
51
51
|
|
|
52
52
|
[tool.hatch.version]
|
|
@@ -119,6 +119,8 @@ async def test_get_stats(async_empty_index, small_movies):
|
|
|
119
119
|
|
|
120
120
|
assert response.number_of_documents == 30
|
|
121
121
|
assert response.internal_database_sizes is None
|
|
122
|
+
assert response.index_size is not None
|
|
123
|
+
assert response.used_index_size is not None
|
|
122
124
|
|
|
123
125
|
|
|
124
126
|
@pytest.mark.parametrize("size_format", (None, "raw", "human"))
|
|
@@ -111,6 +111,8 @@ def test_get_stats(empty_index, small_movies):
|
|
|
111
111
|
|
|
112
112
|
assert response.number_of_documents == 30
|
|
113
113
|
assert response.internal_database_sizes is None
|
|
114
|
+
assert response.index_size is not None
|
|
115
|
+
assert response.used_index_size is not None
|
|
114
116
|
|
|
115
117
|
|
|
116
118
|
@pytest.mark.parametrize("size_format", (None, "raw", "human"))
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import json
|
|
2
|
+
|
|
3
|
+
import pytest
|
|
4
|
+
|
|
5
|
+
from meilisearch_python_sdk.json_handler import BuiltinHandler, OrjsonHandler
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
@pytest.mark.parametrize("json_handler", (BuiltinHandler(), OrjsonHandler()))
|
|
9
|
+
def test_dumps(json_handler):
|
|
10
|
+
result = json_handler.dumps({"id": 1, "title": "Shazam!"})
|
|
11
|
+
|
|
12
|
+
assert isinstance(result, str)
|
|
13
|
+
assert json.loads(result) == {"id": 1, "title": "Shazam!"}
|