meilisearch-python-sdk 4.8.0__tar.gz → 4.10.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.
Potentially problematic release.
This version of meilisearch-python-sdk might be problematic. Click here for more details.
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/renovate.json5 +2 -1
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/workflows/docs_publish.yml +2 -2
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/workflows/nightly_testing.yml +2 -2
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/workflows/pypi_publish.yml +2 -2
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/workflows/testing.yml +18 -18
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.pre-commit-config.yaml +3 -3
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/PKG-INFO +1 -1
- meilisearch_python_sdk-4.10.0/docs/css/custom.css +45 -0
- meilisearch_python_sdk-4.10.0/docs/overrides/partials/footer.html +25 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/justfile +1 -4
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/_client.py +14 -4
- meilisearch_python_sdk-4.10.0/meilisearch_python_sdk/_version.py +1 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/models/search.py +1 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/mkdocs.yaml +4 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/pyproject.toml +10 -11
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_async_client.py +15 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_client.py +15 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/uv.lock +493 -463
- meilisearch_python_sdk-4.8.0/benchmark/run_benchmark.py +0 -236
- meilisearch_python_sdk-4.8.0/docs/css/custom.css +0 -14
- meilisearch_python_sdk-4.8.0/meilisearch_python_sdk/_version.py +0 -1
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/FUNDING.yml +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/release-draft-template.yaml +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/workflows/release-drafter.yml +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.gitignore +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/CONTRIBUTING.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/LICENSE +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/README.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/assets/add_in_batches.png +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/assets/searches.png +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/codecov.yml +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/datasets/small_movies.json +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docker-compose.https.yml +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docker-compose.yml +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/.nojekyll +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/CNAME +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/async_client_api.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/async_index_api.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/client_api.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/decorators_api.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/index.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/index_api.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/js/umami.js +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/json_handler.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/plugins.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/docs/pydantic.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/.gitignore +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/README.md +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/__init__.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/add_documents_decorator.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/add_documents_in_batches.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/async_add_documents_decorator.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/async_add_documents_in_batches.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/async_documents_and_search_results.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/async_search_tracker.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/async_update_settings.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/documents_and_search_results.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/fastapi_example.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/orjson_example.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/pyproject.toml +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/requirements.txt +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/search_tracker.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/tests/__init__.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/tests/conftest.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/tests/test_async_examples.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/tests/test_examples.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/ujson_example.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/examples/update_settings.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/__init__.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/_batch.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/_http_requests.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/_task.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/_utils.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/decorators.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/errors.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/index.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/json_handler.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/models/__init__.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/models/batch.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/models/client.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/models/documents.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/models/health.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/models/index.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/models/settings.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/models/task.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/models/version.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/plugins.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/py.typed +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/types.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/__init__.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/conftest.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_async_documents.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_async_index.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_async_index_plugins.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_async_search.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_decorators.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_documents.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_errors.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_index.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_index_plugins.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_search.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_settings_models.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_utils.py +0 -0
- {meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/tests/test_version.py +0 -0
{meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/workflows/docs_publish.yml
RENAMED
|
@@ -10,13 +10,13 @@ jobs:
|
|
|
10
10
|
deploy:
|
|
11
11
|
runs-on: ubuntu-latest
|
|
12
12
|
steps:
|
|
13
|
-
- uses: actions/checkout@
|
|
13
|
+
- uses: actions/checkout@v5
|
|
14
14
|
- name: Install uv
|
|
15
15
|
uses: astral-sh/setup-uv@v6
|
|
16
16
|
with:
|
|
17
17
|
enable-cache: true
|
|
18
18
|
- name: Set up Python
|
|
19
|
-
uses: actions/setup-python@
|
|
19
|
+
uses: actions/setup-python@v6
|
|
20
20
|
with:
|
|
21
21
|
python-version: ${{ env.PYTHON_VERSION }}
|
|
22
22
|
- name: Install Dependencies
|
{meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/workflows/nightly_testing.yml
RENAMED
|
@@ -12,7 +12,7 @@ jobs:
|
|
|
12
12
|
fail-fast: false
|
|
13
13
|
runs-on: ubuntu-latest
|
|
14
14
|
steps:
|
|
15
|
-
- uses: actions/checkout@
|
|
15
|
+
- uses: actions/checkout@v5
|
|
16
16
|
- name: Install uv
|
|
17
17
|
uses: astral-sh/setup-uv@v6
|
|
18
18
|
with:
|
|
@@ -20,7 +20,7 @@ jobs:
|
|
|
20
20
|
- name: install Just
|
|
21
21
|
uses: taiki-e/install-action@just
|
|
22
22
|
- name: Set up Python
|
|
23
|
-
uses: actions/setup-python@
|
|
23
|
+
uses: actions/setup-python@v6
|
|
24
24
|
with:
|
|
25
25
|
python-version: ${{ env.PYTHON_VERSION }}
|
|
26
26
|
- name: Install Dependencies
|
{meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/workflows/pypi_publish.yml
RENAMED
|
@@ -12,13 +12,13 @@ jobs:
|
|
|
12
12
|
# For PyPI's trusted publishing.
|
|
13
13
|
id-token: write
|
|
14
14
|
steps:
|
|
15
|
-
- uses: actions/checkout@
|
|
15
|
+
- uses: actions/checkout@v5
|
|
16
16
|
- name: Install uv
|
|
17
17
|
uses: astral-sh/setup-uv@v6
|
|
18
18
|
with:
|
|
19
19
|
enable-cache: true
|
|
20
20
|
- name: Set up Python
|
|
21
|
-
uses: actions/setup-python@
|
|
21
|
+
uses: actions/setup-python@v6
|
|
22
22
|
with:
|
|
23
23
|
python-version: ${{ env.PYTHON_VERSION }}
|
|
24
24
|
- name: Install Dependencies
|
{meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/.github/workflows/testing.yml
RENAMED
|
@@ -11,7 +11,7 @@ jobs:
|
|
|
11
11
|
linting:
|
|
12
12
|
runs-on: ubuntu-latest
|
|
13
13
|
steps:
|
|
14
|
-
- uses: actions/checkout@
|
|
14
|
+
- uses: actions/checkout@v5
|
|
15
15
|
- name: install Just
|
|
16
16
|
uses: taiki-e/install-action@just
|
|
17
17
|
- name: Install uv
|
|
@@ -19,7 +19,7 @@ jobs:
|
|
|
19
19
|
with:
|
|
20
20
|
enable-cache: true
|
|
21
21
|
- name: Set up Python
|
|
22
|
-
uses: actions/setup-python@
|
|
22
|
+
uses: actions/setup-python@v6
|
|
23
23
|
with:
|
|
24
24
|
python-version: ${{ env.PYTHON_VERSION }}
|
|
25
25
|
- name: Install Dependencies
|
|
@@ -34,7 +34,7 @@ jobs:
|
|
|
34
34
|
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
35
35
|
runs-on: ubuntu-latest
|
|
36
36
|
steps:
|
|
37
|
-
- uses: actions/checkout@
|
|
37
|
+
- uses: actions/checkout@v5
|
|
38
38
|
- name: install Just
|
|
39
39
|
uses: taiki-e/install-action@just
|
|
40
40
|
- name: Install uv
|
|
@@ -42,7 +42,7 @@ jobs:
|
|
|
42
42
|
with:
|
|
43
43
|
enable-cache: true
|
|
44
44
|
- name: Set up Python ${{ matrix.python-version }}
|
|
45
|
-
uses: actions/setup-python@
|
|
45
|
+
uses: actions/setup-python@v6
|
|
46
46
|
with:
|
|
47
47
|
python-version: ${{ matrix.python-version }}
|
|
48
48
|
- name: Install Dependencies
|
|
@@ -50,7 +50,7 @@ jobs:
|
|
|
50
50
|
- name: Test with pytest
|
|
51
51
|
run: just test-parallel-ci
|
|
52
52
|
- name: Upload coverage
|
|
53
|
-
uses: codecov/codecov-action@v5.
|
|
53
|
+
uses: codecov/codecov-action@v5.5.1
|
|
54
54
|
with:
|
|
55
55
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
56
56
|
fail_ci_if_error: true
|
|
@@ -62,7 +62,7 @@ jobs:
|
|
|
62
62
|
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
63
63
|
runs-on: ubuntu-latest
|
|
64
64
|
steps:
|
|
65
|
-
- uses: actions/checkout@
|
|
65
|
+
- uses: actions/checkout@v5
|
|
66
66
|
- name: install Just
|
|
67
67
|
uses: taiki-e/install-action@just
|
|
68
68
|
- name: Install uv
|
|
@@ -70,7 +70,7 @@ jobs:
|
|
|
70
70
|
with:
|
|
71
71
|
enable-cache: true
|
|
72
72
|
- name: Set up Python ${{ matrix.python-version }}
|
|
73
|
-
uses: actions/setup-python@
|
|
73
|
+
uses: actions/setup-python@v6
|
|
74
74
|
with:
|
|
75
75
|
python-version: ${{ matrix.python-version }}
|
|
76
76
|
- name: Install Dependencies
|
|
@@ -90,7 +90,7 @@ jobs:
|
|
|
90
90
|
- name: Test with pytest
|
|
91
91
|
run: just test-parallel-ci-http2
|
|
92
92
|
- name: Upload coverage
|
|
93
|
-
uses: codecov/codecov-action@v5.
|
|
93
|
+
uses: codecov/codecov-action@v5.5.1
|
|
94
94
|
with:
|
|
95
95
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
96
96
|
fail_ci_if_error: true
|
|
@@ -102,7 +102,7 @@ jobs:
|
|
|
102
102
|
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
103
103
|
runs-on: ubuntu-latest
|
|
104
104
|
steps:
|
|
105
|
-
- uses: actions/checkout@
|
|
105
|
+
- uses: actions/checkout@v5
|
|
106
106
|
- name: install Just
|
|
107
107
|
uses: taiki-e/install-action@just
|
|
108
108
|
- name: Install uv
|
|
@@ -110,7 +110,7 @@ jobs:
|
|
|
110
110
|
with:
|
|
111
111
|
enable-cache: true
|
|
112
112
|
- name: Set up Python ${{ matrix.python-version }}
|
|
113
|
-
uses: actions/setup-python@
|
|
113
|
+
uses: actions/setup-python@v6
|
|
114
114
|
with:
|
|
115
115
|
python-version: ${{ matrix.python-version }}
|
|
116
116
|
- name: Install Dependencies
|
|
@@ -118,7 +118,7 @@ jobs:
|
|
|
118
118
|
- name: Test with pytest
|
|
119
119
|
run: just test-no-parallel-ci
|
|
120
120
|
- name: Upload coverage
|
|
121
|
-
uses: codecov/codecov-action@v5.
|
|
121
|
+
uses: codecov/codecov-action@v5.5.1
|
|
122
122
|
with:
|
|
123
123
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
124
124
|
fail_ci_if_error: true
|
|
@@ -130,7 +130,7 @@ jobs:
|
|
|
130
130
|
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
131
131
|
runs-on: ubuntu-latest
|
|
132
132
|
steps:
|
|
133
|
-
- uses: actions/checkout@
|
|
133
|
+
- uses: actions/checkout@v5
|
|
134
134
|
- name: install Just
|
|
135
135
|
uses: taiki-e/install-action@just
|
|
136
136
|
- name: Install uv
|
|
@@ -138,7 +138,7 @@ jobs:
|
|
|
138
138
|
with:
|
|
139
139
|
enable-cache: true
|
|
140
140
|
- name: Set up Python ${{ matrix.python-version }}
|
|
141
|
-
uses: actions/setup-python@
|
|
141
|
+
uses: actions/setup-python@v6
|
|
142
142
|
with:
|
|
143
143
|
python-version: ${{ matrix.python-version }}
|
|
144
144
|
- name: Install Dependencies
|
|
@@ -158,7 +158,7 @@ jobs:
|
|
|
158
158
|
- name: Test with pytest
|
|
159
159
|
run: just test-no-parallel-ci-http2
|
|
160
160
|
- name: Upload coverage
|
|
161
|
-
uses: codecov/codecov-action@v5.
|
|
161
|
+
uses: codecov/codecov-action@v5.5.1
|
|
162
162
|
with:
|
|
163
163
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
164
164
|
fail_ci_if_error: true
|
|
@@ -169,11 +169,11 @@ jobs:
|
|
|
169
169
|
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
170
170
|
runs-on: ubuntu-latest
|
|
171
171
|
steps:
|
|
172
|
-
- uses: actions/checkout@
|
|
172
|
+
- uses: actions/checkout@v5
|
|
173
173
|
- name: install Just
|
|
174
174
|
uses: taiki-e/install-action@just
|
|
175
175
|
- name: Set up Python ${{ matrix.python-version }}
|
|
176
|
-
uses: actions/setup-python@
|
|
176
|
+
uses: actions/setup-python@v6
|
|
177
177
|
with:
|
|
178
178
|
python-version: ${{ matrix.python-version }}
|
|
179
179
|
cache: pip
|
|
@@ -183,7 +183,7 @@ jobs:
|
|
|
183
183
|
docs:
|
|
184
184
|
runs-on: ubuntu-latest
|
|
185
185
|
steps:
|
|
186
|
-
- uses: actions/checkout@
|
|
186
|
+
- uses: actions/checkout@v5
|
|
187
187
|
- name: install Just
|
|
188
188
|
uses: taiki-e/install-action@just
|
|
189
189
|
- name: Install uv
|
|
@@ -191,7 +191,7 @@ jobs:
|
|
|
191
191
|
with:
|
|
192
192
|
enable-cache: true
|
|
193
193
|
- name: Set up Python
|
|
194
|
-
uses: actions/setup-python@
|
|
194
|
+
uses: actions/setup-python@v6
|
|
195
195
|
with:
|
|
196
196
|
python-version: "3.13"
|
|
197
197
|
- name: Install Dependencies
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
repos:
|
|
2
2
|
- repo: https://github.com/pre-commit/pre-commit-hooks
|
|
3
|
-
rev:
|
|
3
|
+
rev: v6.0.0
|
|
4
4
|
hooks:
|
|
5
5
|
- id: check-added-large-files
|
|
6
6
|
- id: check-toml
|
|
@@ -9,12 +9,12 @@ repos:
|
|
|
9
9
|
- id: end-of-file-fixer
|
|
10
10
|
- id: trailing-whitespace
|
|
11
11
|
- repo: https://github.com/pre-commit/mirrors-mypy
|
|
12
|
-
rev: v1.
|
|
12
|
+
rev: v1.18.1
|
|
13
13
|
hooks:
|
|
14
14
|
- id: mypy
|
|
15
15
|
additional_dependencies: [pydantic, orjson, types-aiofiles, types-ujson]
|
|
16
16
|
- repo: https://github.com/astral-sh/ruff-pre-commit
|
|
17
|
-
rev: v0.
|
|
17
|
+
rev: v0.13.0
|
|
18
18
|
hooks:
|
|
19
19
|
- id: ruff-check
|
|
20
20
|
args: [--fix, --exit-non-zero-on-fix]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: meilisearch-python-sdk
|
|
3
|
-
Version: 4.
|
|
3
|
+
Version: 4.10.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
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
.md-source__repository {
|
|
2
|
+
overflow: visible;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.md-footer {
|
|
6
|
+
padding: 16px 0;
|
|
7
|
+
display: flex;
|
|
8
|
+
justify-content: center;
|
|
9
|
+
align-items: center;
|
|
10
|
+
background-color: #111317;
|
|
11
|
+
color: #ffffff;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.footer-buttons {
|
|
15
|
+
display: flex;
|
|
16
|
+
gap: 16px;
|
|
17
|
+
align-items: center;
|
|
18
|
+
flex-wrap: wrap;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.footer-btn,
|
|
22
|
+
.bmc-wrapper iframe {
|
|
23
|
+
height: 40px;
|
|
24
|
+
width: 150px;
|
|
25
|
+
min-width: 120px;
|
|
26
|
+
max-width: 100%;
|
|
27
|
+
border-radius: 6px;
|
|
28
|
+
display: block;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.bmc-wrapper {
|
|
32
|
+
display: flex;
|
|
33
|
+
align-items: center;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
div.autodoc-docstring {
|
|
37
|
+
padding-left: 20px;
|
|
38
|
+
margin-bottom: 30px;
|
|
39
|
+
border-left: 5px solid rgba(230, 230, 230);
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
div.autodoc-members {
|
|
43
|
+
padding-left: 20px;
|
|
44
|
+
margin-bottom: 15px;
|
|
45
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
<footer class="md-footer">
|
|
2
|
+
<div class="footer-buttons">
|
|
3
|
+
<iframe
|
|
4
|
+
src="https://github.com/sponsors/sanders41/button"
|
|
5
|
+
title="Sponsor sanders41"
|
|
6
|
+
class="footer-btn"
|
|
7
|
+
></iframe>
|
|
8
|
+
|
|
9
|
+
<div class="bmc-wrapper">
|
|
10
|
+
<script
|
|
11
|
+
type="text/javascript"
|
|
12
|
+
src="https://cdnjs.buymeacoffee.com/1.0.0/button.prod.min.js"
|
|
13
|
+
data-name="bmc-button"
|
|
14
|
+
data-slug="sanders41"
|
|
15
|
+
data-color="#87ceeb"
|
|
16
|
+
data-emoji=""
|
|
17
|
+
data-font="Cookie"
|
|
18
|
+
data-text="Buy me a coffee"
|
|
19
|
+
data-outline-color="#000000"
|
|
20
|
+
data-font-color="#000000"
|
|
21
|
+
data-coffee-color="#FFDD00"
|
|
22
|
+
></script>
|
|
23
|
+
</div>
|
|
24
|
+
</div>
|
|
25
|
+
</footer>
|
|
@@ -78,7 +78,7 @@
|
|
|
78
78
|
uv run mkdocs build --strict
|
|
79
79
|
|
|
80
80
|
@serve-docs:
|
|
81
|
-
mkdocs serve
|
|
81
|
+
uv run mkdocs serve
|
|
82
82
|
|
|
83
83
|
@install:
|
|
84
84
|
uv sync --frozen --all-extras
|
|
@@ -88,6 +88,3 @@
|
|
|
88
88
|
|
|
89
89
|
@lock-upgrade:
|
|
90
90
|
uv lock --upgrade
|
|
91
|
-
|
|
92
|
-
@benchmark: start-meilisearch-detached && stop-meilisearch
|
|
93
|
-
-uv run benchmark/run_benchmark.py
|
{meilisearch_python_sdk-4.8.0 → meilisearch_python_sdk-4.10.0}/meilisearch_python_sdk/_client.py
RENAMED
|
@@ -812,11 +812,13 @@ class AsyncClient(BaseClient):
|
|
|
812
812
|
|
|
813
813
|
return Health(**response.json())
|
|
814
814
|
|
|
815
|
-
async def swap_indexes(self, indexes: list[tuple[str, str]]) -> TaskInfo:
|
|
815
|
+
async def swap_indexes(self, indexes: list[tuple[str, str]], rename: bool = False) -> TaskInfo:
|
|
816
816
|
"""Swap two indexes.
|
|
817
817
|
|
|
818
818
|
Args:
|
|
819
819
|
indexes: A list of tuples, each tuple should contain the indexes to swap.
|
|
820
|
+
rename: Use rename false if you are swapping two existing indexes. Use rename true if
|
|
821
|
+
the second index in your array does not exist. Default = False
|
|
820
822
|
|
|
821
823
|
Returns:
|
|
822
824
|
The details of the task.
|
|
@@ -830,7 +832,10 @@ class AsyncClient(BaseClient):
|
|
|
830
832
|
>>> async with AsyncClient("http://localhost.com", "masterKey") as client:
|
|
831
833
|
>>> index = await client.swap_indexes([("index_a", "index_b")])
|
|
832
834
|
"""
|
|
833
|
-
|
|
835
|
+
if rename:
|
|
836
|
+
processed_indexes = [{"indexes": x, "rename": True} for x in indexes]
|
|
837
|
+
else:
|
|
838
|
+
processed_indexes = [{"indexes": x} for x in indexes]
|
|
834
839
|
response = await self._http_requests.post("swap-indexes", processed_indexes)
|
|
835
840
|
|
|
836
841
|
return TaskInfo(**response.json())
|
|
@@ -1775,11 +1780,13 @@ class Client(BaseClient):
|
|
|
1775
1780
|
|
|
1776
1781
|
return Health(**response.json())
|
|
1777
1782
|
|
|
1778
|
-
def swap_indexes(self, indexes: list[tuple[str, str]]) -> TaskInfo:
|
|
1783
|
+
def swap_indexes(self, indexes: list[tuple[str, str]], rename: bool = False) -> TaskInfo:
|
|
1779
1784
|
"""Swap two indexes.
|
|
1780
1785
|
|
|
1781
1786
|
Args:
|
|
1782
1787
|
indexes: A list of tuples, each tuple should contain the indexes to swap.
|
|
1788
|
+
rename: Use rename false if you are swapping two existing indexes. Use rename true if
|
|
1789
|
+
the second index in your array does not exist. Default = False
|
|
1783
1790
|
|
|
1784
1791
|
Returns:
|
|
1785
1792
|
The details of the task.
|
|
@@ -1793,7 +1800,10 @@ class Client(BaseClient):
|
|
|
1793
1800
|
>>> client = Client("http://localhost.com", "masterKey")
|
|
1794
1801
|
>>> index = client.swap_indexes([("index_a", "index_b")])
|
|
1795
1802
|
"""
|
|
1796
|
-
|
|
1803
|
+
if rename:
|
|
1804
|
+
processed_indexes = [{"indexes": x, "rename": True} for x in indexes]
|
|
1805
|
+
else:
|
|
1806
|
+
processed_indexes = [{"indexes": x} for x in indexes]
|
|
1797
1807
|
response = self._http_requests.post("swap-indexes", processed_indexes)
|
|
1798
1808
|
|
|
1799
1809
|
return TaskInfo(**response.json())
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
VERSION = "4.10.0"
|
|
@@ -4,6 +4,7 @@ site_url: https://meilisearch-python-sdk.paulsanders.dev
|
|
|
4
4
|
|
|
5
5
|
theme:
|
|
6
6
|
name: material
|
|
7
|
+
custom_dir: docs/overrides
|
|
7
8
|
locale: en
|
|
8
9
|
icon:
|
|
9
10
|
repo: fontawesome/brands/github
|
|
@@ -44,3 +45,6 @@ plugins:
|
|
|
44
45
|
|
|
45
46
|
extra_javascript:
|
|
46
47
|
- "js/umami.js"
|
|
48
|
+
|
|
49
|
+
extra_css:
|
|
50
|
+
- "css/custom.css"
|
|
@@ -41,19 +41,18 @@ all = ["orjson", "ujson"]
|
|
|
41
41
|
[dependency-groups]
|
|
42
42
|
dev = [
|
|
43
43
|
"mkdocs==1.6.1",
|
|
44
|
-
"mkdocs-material==9.6.
|
|
44
|
+
"mkdocs-material==9.6.20",
|
|
45
45
|
"mkdocstrings[python]==0.30.0",
|
|
46
|
-
"mypy[faster-cache]==1.
|
|
47
|
-
"pre-commit==4.
|
|
48
|
-
"pytest==8.4.
|
|
49
|
-
"pytest-cov==
|
|
50
|
-
"pytest-asyncio==1.
|
|
46
|
+
"mypy[faster-cache]==1.18.1",
|
|
47
|
+
"pre-commit==4.3.0",
|
|
48
|
+
"pytest==8.4.2",
|
|
49
|
+
"pytest-cov==7.0.0",
|
|
50
|
+
"pytest-asyncio==1.2.0",
|
|
51
51
|
"pytest-xdist==3.8.0",
|
|
52
|
-
"ruff==0.
|
|
53
|
-
"types-aiofiles==24.1.0.
|
|
54
|
-
"typing-extensions==4.
|
|
55
|
-
"types-ujson==5.10.0.
|
|
56
|
-
"meilisearch==0.36.0",
|
|
52
|
+
"ruff==0.13.0",
|
|
53
|
+
"types-aiofiles==24.1.0.20250822",
|
|
54
|
+
"typing-extensions==4.15.0",
|
|
55
|
+
"types-ujson==5.10.0.20250822",
|
|
57
56
|
"rich==14.1.0",
|
|
58
57
|
]
|
|
59
58
|
|
|
@@ -550,6 +550,21 @@ async def test_swap_indexes(async_client, async_empty_index):
|
|
|
550
550
|
assert task.task_type == "indexSwap"
|
|
551
551
|
|
|
552
552
|
|
|
553
|
+
@pytest.mark.no_parallel
|
|
554
|
+
async def test_swap_indexes_rename(async_client, async_empty_index):
|
|
555
|
+
new_name = str(uuid4())
|
|
556
|
+
index = await async_empty_index()
|
|
557
|
+
task = await index.add_documents([{"id": 1, "title": index.uid}])
|
|
558
|
+
await async_client.wait_for_task(task.task_uid)
|
|
559
|
+
swapTask = await async_client.swap_indexes([(index.uid, new_name)], rename=True)
|
|
560
|
+
task = async_client.wait_for_task(swapTask.task_uid)
|
|
561
|
+
|
|
562
|
+
indexes = await async_client.get_indexes()
|
|
563
|
+
uids = [index.uid for index in indexes]
|
|
564
|
+
assert index.uid not in uids
|
|
565
|
+
assert new_name in uids
|
|
566
|
+
|
|
567
|
+
|
|
553
568
|
@pytest.mark.usefixtures("create_tasks")
|
|
554
569
|
@pytest.mark.no_parallel
|
|
555
570
|
async def test_cancel_task_statuses(async_client):
|
|
@@ -547,6 +547,21 @@ def test_swap_indexes(client, empty_index):
|
|
|
547
547
|
assert task.task_type == "indexSwap"
|
|
548
548
|
|
|
549
549
|
|
|
550
|
+
@pytest.mark.no_parallel
|
|
551
|
+
def test_swap_indexes_rename(client, empty_index):
|
|
552
|
+
new_name = str(uuid4())
|
|
553
|
+
index = empty_index()
|
|
554
|
+
task = index.add_documents([{"id": 1, "title": index.uid}])
|
|
555
|
+
client.wait_for_task(task.task_uid)
|
|
556
|
+
swapTask = client.swap_indexes([(index.uid, new_name)], rename=True)
|
|
557
|
+
task = client.wait_for_task(swapTask.task_uid)
|
|
558
|
+
|
|
559
|
+
indexes = client.get_indexes()
|
|
560
|
+
uids = [index.uid for index in indexes]
|
|
561
|
+
assert index.uid not in uids
|
|
562
|
+
assert new_name in uids
|
|
563
|
+
|
|
564
|
+
|
|
550
565
|
@pytest.mark.usefixtures("create_tasks")
|
|
551
566
|
@pytest.mark.no_parallel
|
|
552
567
|
def test_cancel_statuses(client):
|