meilisearch-python-sdk 7.5.2__tar.gz → 8.0.1__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 (119) hide show
  1. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/.github/workflows/docs_publish.yml +2 -2
  2. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/.github/workflows/nightly_testing.yml +2 -2
  3. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/.github/workflows/prek_update.yml +1 -1
  4. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/.github/workflows/pypi_publish.yml +2 -2
  5. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/.github/workflows/testing.yml +17 -17
  6. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/PKG-INFO +3 -3
  7. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docker-compose.https.yml +1 -1
  8. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docker-compose.yml +1 -1
  9. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/_client/_async_client.py +1 -7
  10. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/_client/_base_client.py +2 -2
  11. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/_client/_client.py +1 -7
  12. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/_utils.py +2 -9
  13. meilisearch_python_sdk-8.0.1/meilisearch_python_sdk/_version.py +1 -0
  14. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/decorators.py +0 -6
  15. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/index/async_index.py +1 -437
  16. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/index/index.py +1 -7
  17. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/settings.py +2 -2
  18. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/prek.toml +3 -3
  19. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/pyproject.toml +6 -7
  20. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_async_client.py +4 -4
  21. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_async_search.py +2 -2
  22. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_client.py +4 -4
  23. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_search.py +2 -2
  24. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_utils.py +3 -3
  25. meilisearch_python_sdk-8.0.1/uv.lock +1268 -0
  26. meilisearch_python_sdk-7.5.2/codecov.yml +0 -6
  27. meilisearch_python_sdk-7.5.2/meilisearch_python_sdk/_version.py +0 -1
  28. meilisearch_python_sdk-7.5.2/uv.lock +0 -1261
  29. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/.github/FUNDING.yml +0 -0
  30. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/.github/release-draft-template.yaml +0 -0
  31. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/.github/renovate.json5 +0 -0
  32. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/.github/workflows/release-drafter.yml +0 -0
  33. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/.gitignore +0 -0
  34. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/CONTRIBUTING.md +0 -0
  35. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/LICENSE +0 -0
  36. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/README.md +0 -0
  37. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/assets/add_in_batches.png +0 -0
  38. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/assets/searches.png +0 -0
  39. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/datasets/small_movies.json +0 -0
  40. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/.nojekyll +0 -0
  41. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/CNAME +0 -0
  42. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/async_client_api.md +0 -0
  43. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/async_index_api.md +0 -0
  44. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/client_api.md +0 -0
  45. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/css/custom.css +0 -0
  46. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/decorators_api.md +0 -0
  47. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/errors_api.md +0 -0
  48. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/index.md +0 -0
  49. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/index_api.md +0 -0
  50. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/js/umami.js +0 -0
  51. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/json_handler.md +0 -0
  52. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/models_client.md +0 -0
  53. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/models_index.md +0 -0
  54. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/models_search.md +0 -0
  55. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/models_settings.md +0 -0
  56. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/models_task.md +0 -0
  57. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/overrides/partials/footer.html +0 -0
  58. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/plugins.md +0 -0
  59. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/docs/pydantic.md +0 -0
  60. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/.gitignore +0 -0
  61. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/README.md +0 -0
  62. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/__init__.py +0 -0
  63. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/add_documents_decorator.py +0 -0
  64. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/add_documents_in_batches.py +0 -0
  65. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/async_add_documents_decorator.py +0 -0
  66. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/async_add_documents_in_batches.py +0 -0
  67. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/async_documents_and_search_results.py +0 -0
  68. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/async_search_tracker.py +0 -0
  69. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/async_update_settings.py +0 -0
  70. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/documents_and_search_results.py +0 -0
  71. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/fastapi_example.py +0 -0
  72. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/orjson_example.py +0 -0
  73. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/pyproject.toml +0 -0
  74. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/requirements.txt +0 -0
  75. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/search_tracker.py +0 -0
  76. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/tests/__init__.py +0 -0
  77. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/tests/conftest.py +0 -0
  78. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/tests/test_async_examples.py +0 -0
  79. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/tests/test_examples.py +0 -0
  80. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/examples/update_settings.py +0 -0
  81. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/justfile +0 -0
  82. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/__init__.py +0 -0
  83. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/_batch.py +0 -0
  84. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/_client/__init__.py +0 -0
  85. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/_client/_common.py +0 -0
  86. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/_http_requests.py +0 -0
  87. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/_task.py +0 -0
  88. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/errors.py +0 -0
  89. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/index/__init__.py +0 -0
  90. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/index/_common.py +0 -0
  91. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/json_handler.py +0 -0
  92. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/__init__.py +0 -0
  93. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/batch.py +0 -0
  94. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/client.py +0 -0
  95. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/documents.py +0 -0
  96. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/health.py +0 -0
  97. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/index.py +0 -0
  98. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/search.py +0 -0
  99. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/task.py +0 -0
  100. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/version.py +0 -0
  101. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/models/webhook.py +0 -0
  102. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/plugins.py +0 -0
  103. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/py.typed +0 -0
  104. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/meilisearch_python_sdk/types.py +0 -0
  105. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/mkdocs.yaml +0 -0
  106. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/__init__.py +0 -0
  107. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/conftest.py +0 -0
  108. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_async_documents.py +0 -0
  109. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_async_index.py +0 -0
  110. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_async_index_plugins.py +0 -0
  111. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_decorators.py +0 -0
  112. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_documents.py +0 -0
  113. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_errors.py +0 -0
  114. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_http_requests.py +0 -0
  115. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_index.py +0 -0
  116. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_index_plugins.py +0 -0
  117. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_json_handler.py +0 -0
  118. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_settings_models.py +0 -0
  119. {meilisearch_python_sdk-7.5.2 → meilisearch_python_sdk-8.0.1}/tests/test_version.py +0 -0
@@ -5,7 +5,7 @@ on:
5
5
  - published
6
6
  workflow_dispatch:
7
7
  env:
8
- PYTHON_VERSION: "3.13"
8
+ PYTHON_VERSION: "3.14"
9
9
  permissions:
10
10
  pages: write
11
11
  id-token: write
@@ -16,7 +16,7 @@ jobs:
16
16
  steps:
17
17
  - uses: actions/checkout@v7
18
18
  - name: Install uv
19
- uses: astral-sh/setup-uv@v10.0.1
19
+ uses: astral-sh/setup-uv@v10.3.0
20
20
  with:
21
21
  enable-cache: true
22
22
  - name: Set up Python
@@ -5,7 +5,7 @@ on:
5
5
  # Set with UTC time
6
6
  - cron: "0 5 * * *"
7
7
  env:
8
- PYTHON_VERSION: "3.13"
8
+ PYTHON_VERSION: "3.14"
9
9
  jobs:
10
10
  random-test-order:
11
11
  strategy:
@@ -14,7 +14,7 @@ jobs:
14
14
  steps:
15
15
  - uses: actions/checkout@v7
16
16
  - name: Install uv
17
- uses: astral-sh/setup-uv@v10.0.1
17
+ uses: astral-sh/setup-uv@v10.3.0
18
18
  with:
19
19
  enable-cache: true
20
20
  - name: install Just
@@ -13,7 +13,7 @@ jobs:
13
13
  steps:
14
14
  - uses: actions/checkout@v7
15
15
  - name: Install uv
16
- uses: astral-sh/setup-uv@v10.0.1
16
+ uses: astral-sh/setup-uv@v10.3.0
17
17
  with:
18
18
  enable-cache: true
19
19
  - name: Set up Python
@@ -4,7 +4,7 @@ on:
4
4
  types:
5
5
  - published
6
6
  env:
7
- PYTHON_VERSION: "3.13"
7
+ PYTHON_VERSION: "3.14"
8
8
  jobs:
9
9
  deploy:
10
10
  runs-on: ubuntu-latest
@@ -14,7 +14,7 @@ jobs:
14
14
  steps:
15
15
  - uses: actions/checkout@v7
16
16
  - name: Install uv
17
- uses: astral-sh/setup-uv@v10.0.1
17
+ uses: astral-sh/setup-uv@v10.3.0
18
18
  with:
19
19
  enable-cache: true
20
20
  - name: Set up Python
@@ -6,7 +6,7 @@ on:
6
6
  - main
7
7
  pull_request:
8
8
  env:
9
- PYTHON_VERSION: "3.10"
9
+ PYTHON_VERSION: "3.11"
10
10
  jobs:
11
11
  linting:
12
12
  runs-on: ubuntu-latest
@@ -15,7 +15,7 @@ jobs:
15
15
  - name: install Just
16
16
  uses: taiki-e/install-action@just
17
17
  - name: Install uv
18
- uses: astral-sh/setup-uv@v10.0.1
18
+ uses: astral-sh/setup-uv@v10.3.0
19
19
  with:
20
20
  enable-cache: true
21
21
  - name: Set up Python
@@ -31,21 +31,21 @@ jobs:
31
31
  runs-on: ubuntu-latest
32
32
  steps:
33
33
  - uses: actions/checkout@v7
34
- - uses: j178/prek-action@v3.0.0
34
+ - uses: j178/prek-action@v3.0.1
35
35
  env:
36
36
  PREK_SKIP: no-commit-to-branch,pyrefly-check
37
37
  parallel-testing:
38
38
  strategy:
39
39
  fail-fast: false
40
40
  matrix:
41
- python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
41
+ python-version: ["3.11", "3.12", "3.13", "3.14", "3.15"]
42
42
  runs-on: ubuntu-latest
43
43
  steps:
44
44
  - uses: actions/checkout@v7
45
45
  - name: install Just
46
46
  uses: taiki-e/install-action@just
47
47
  - name: Install uv
48
- uses: astral-sh/setup-uv@v10.0.1
48
+ uses: astral-sh/setup-uv@v10.3.0
49
49
  with:
50
50
  enable-cache: true
51
51
  - name: Set up Python ${{ matrix.python-version }}
@@ -58,7 +58,7 @@ jobs:
58
58
  - name: Test with pytest
59
59
  run: just test-parallel-ci
60
60
  - name: Upload coverage
61
- uses: codecov/codecov-action@v7.0.0
61
+ uses: codecov/codecov-action@v7.1.1
62
62
  env:
63
63
  CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
64
64
  with:
@@ -67,14 +67,14 @@ jobs:
67
67
  strategy:
68
68
  fail-fast: false
69
69
  matrix:
70
- python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
70
+ python-version: ["3.11", "3.12", "3.13", "3.14", "3.15"]
71
71
  runs-on: ubuntu-latest
72
72
  steps:
73
73
  - uses: actions/checkout@v7
74
74
  - name: install Just
75
75
  uses: taiki-e/install-action@just
76
76
  - name: Install uv
77
- uses: astral-sh/setup-uv@v10.0.1
77
+ uses: astral-sh/setup-uv@v10.3.0
78
78
  with:
79
79
  enable-cache: true
80
80
  - name: Set up Python ${{ matrix.python-version }}
@@ -98,7 +98,7 @@ jobs:
98
98
  - name: Test with pytest
99
99
  run: just test-parallel-ci-http2
100
100
  - name: Upload coverage
101
- uses: codecov/codecov-action@v7.0.0
101
+ uses: codecov/codecov-action@v7.1.1
102
102
  env:
103
103
  CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
104
104
  with:
@@ -107,14 +107,14 @@ jobs:
107
107
  strategy:
108
108
  fail-fast: false
109
109
  matrix:
110
- python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
110
+ python-version: ["3.11", "3.12", "3.13", "3.14", "3.15"]
111
111
  runs-on: ubuntu-latest
112
112
  steps:
113
113
  - uses: actions/checkout@v7
114
114
  - name: install Just
115
115
  uses: taiki-e/install-action@just
116
116
  - name: Install uv
117
- uses: astral-sh/setup-uv@v10.0.1
117
+ uses: astral-sh/setup-uv@v10.3.0
118
118
  with:
119
119
  enable-cache: true
120
120
  - name: Set up Python ${{ matrix.python-version }}
@@ -127,7 +127,7 @@ jobs:
127
127
  - name: Test with pytest
128
128
  run: just test-no-parallel-ci
129
129
  - name: Upload coverage
130
- uses: codecov/codecov-action@v7.0.0
130
+ uses: codecov/codecov-action@v7.1.1
131
131
  env:
132
132
  CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
133
133
  with:
@@ -136,14 +136,14 @@ jobs:
136
136
  strategy:
137
137
  fail-fast: false
138
138
  matrix:
139
- python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
139
+ python-version: ["3.11", "3.12", "3.13", "3.14", "3.15"]
140
140
  runs-on: ubuntu-latest
141
141
  steps:
142
142
  - uses: actions/checkout@v7
143
143
  - name: install Just
144
144
  uses: taiki-e/install-action@just
145
145
  - name: Install uv
146
- uses: astral-sh/setup-uv@v10.0.1
146
+ uses: astral-sh/setup-uv@v10.3.0
147
147
  with:
148
148
  enable-cache: true
149
149
  - name: Set up Python ${{ matrix.python-version }}
@@ -167,7 +167,7 @@ jobs:
167
167
  - name: Test with pytest
168
168
  run: just test-no-parallel-ci-http2
169
169
  - name: Upload coverage
170
- uses: codecov/codecov-action@v7.0.0
170
+ uses: codecov/codecov-action@v7.1.1
171
171
  env:
172
172
  CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
173
173
  with:
@@ -176,7 +176,7 @@ jobs:
176
176
  strategy:
177
177
  fail-fast: false
178
178
  matrix:
179
- python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15-dev"]
179
+ python-version: ["3.11", "3.12", "3.13", "3.14", "3.15"]
180
180
  runs-on: ubuntu-latest
181
181
  steps:
182
182
  - uses: actions/checkout@v7
@@ -197,7 +197,7 @@ jobs:
197
197
  - name: install Just
198
198
  uses: taiki-e/install-action@just
199
199
  - name: Install uv
200
- uses: astral-sh/setup-uv@v10.0.1
200
+ uses: astral-sh/setup-uv@v10.3.0
201
201
  with:
202
202
  enable-cache: true
203
203
  - name: Set up Python
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: meilisearch-python-sdk
3
- Version: 7.5.2
3
+ Version: 8.0.1
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
@@ -34,13 +34,13 @@ Classifier: Development Status :: 5 - Production/Stable
34
34
  Classifier: Intended Audience :: Developers
35
35
  Classifier: License :: OSI Approved :: MIT License
36
36
  Classifier: Operating System :: OS Independent
37
- Classifier: Programming Language :: Python :: 3.10
38
37
  Classifier: Programming Language :: Python :: 3.11
39
38
  Classifier: Programming Language :: Python :: 3.12
40
39
  Classifier: Programming Language :: Python :: 3.13
41
40
  Classifier: Programming Language :: Python :: 3.14
41
+ Classifier: Programming Language :: Python :: 3.15
42
42
  Classifier: Typing :: Typed
43
- Requires-Python: >=3.10
43
+ Requires-Python: >=3.11
44
44
  Requires-Dist: aiofiles>=0.7
45
45
  Requires-Dist: camel-converter[pydantic]>=1.0.0
46
46
  Requires-Dist: httpx2[http2]>=2.0.0
@@ -1,6 +1,6 @@
1
1
  services:
2
2
  meilisearch:
3
- image: getmeili/meilisearch:v1.53.1
3
+ image: getmeili/meilisearch:v1.54.3
4
4
  ports:
5
5
  - "7700:7700"
6
6
  environment:
@@ -1,6 +1,6 @@
1
1
  services:
2
2
  meilisearch:
3
- image: getmeili/meilisearch:v1.53.1
3
+ image: getmeili/meilisearch:v1.54.3
4
4
  ports:
5
5
  - "7700:7700"
6
6
  environment:
@@ -1,7 +1,7 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  from datetime import datetime
4
- from typing import TYPE_CHECKING, Any, Literal
4
+ from typing import TYPE_CHECKING, Any, Literal, Self
5
5
 
6
6
  from camel_converter import dict_to_camel
7
7
  from httpx2 import AsyncClient as HttpxAsyncClient
@@ -45,18 +45,12 @@ from meilisearch_python_sdk.plugins import AsyncIndexPlugins
45
45
  from meilisearch_python_sdk.types import JsonDict
46
46
 
47
47
  if TYPE_CHECKING:
48
- import sys
49
48
  from ssl import SSLContext
50
49
  from types import TracebackType
51
50
 
52
51
  from meilisearch_python_sdk.models.batch import BatchResult, BatchStatus
53
52
  from meilisearch_python_sdk.types import JsonMapping
54
53
 
55
- if sys.version_info >= (3, 11):
56
- from typing import Self
57
- else:
58
- from typing_extensions import Self
59
-
60
54
 
61
55
  class AsyncClient(BaseClient):
62
56
  """Async client to connect to the Meilisearch API."""
@@ -1,6 +1,6 @@
1
1
  from __future__ import annotations
2
2
 
3
- from datetime import datetime, timezone
3
+ from datetime import UTC, datetime
4
4
  from typing import TYPE_CHECKING
5
5
 
6
6
  from meilisearch_python_sdk._utils import encode_jwt
@@ -106,7 +106,7 @@ class BaseClient:
106
106
 
107
107
  payload["apiKeyUid"] = api_key.uid
108
108
  if expires_at:
109
- if expires_at <= datetime.now(tz=timezone.utc):
109
+ if expires_at <= datetime.now(tz=UTC):
110
110
  raise ValueError("expires_at must be a time in the future")
111
111
 
112
112
  payload["exp"] = int(datetime.timestamp(expires_at))
@@ -1,7 +1,7 @@
1
1
  from __future__ import annotations
2
2
 
3
3
  from datetime import datetime
4
- from typing import TYPE_CHECKING, Any, Literal
4
+ from typing import TYPE_CHECKING, Any, Literal, Self
5
5
 
6
6
  from camel_converter import dict_to_camel
7
7
  from httpx2 import Client as HttpxClient
@@ -46,18 +46,12 @@ from meilisearch_python_sdk.plugins import IndexPlugins
46
46
  from meilisearch_python_sdk.types import JsonDict
47
47
 
48
48
  if TYPE_CHECKING:
49
- import sys
50
49
  from ssl import SSLContext
51
50
  from types import TracebackType
52
51
 
53
52
  from meilisearch_python_sdk.models.batch import BatchResult, BatchStatus
54
53
  from meilisearch_python_sdk.types import JsonMapping
55
54
 
56
- if sys.version_info >= (3, 11):
57
- from typing import Self
58
- else:
59
- from typing_extensions import Self
60
-
61
55
 
62
56
  class Client(BaseClient):
63
57
  """client to connect to the Meilisearch API."""
@@ -3,10 +3,8 @@ from __future__ import annotations
3
3
  import base64
4
4
  import hashlib
5
5
  import hmac
6
- import sys
7
6
  from calendar import timegm
8
- from datetime import datetime, timezone
9
- from functools import lru_cache
7
+ from datetime import UTC, datetime
10
8
  from typing import TYPE_CHECKING
11
9
 
12
10
  from httpx2 import AsyncClient as HttpxAsyncClient
@@ -46,11 +44,6 @@ def get_client(
46
44
  return client.http_client
47
45
 
48
46
 
49
- @lru_cache(maxsize=1)
50
- def use_task_groups() -> bool:
51
- return True if sys.version_info >= (3, 11) else False
52
-
53
-
54
47
  def _jwt_b64encode(data: bytes) -> str:
55
48
  return base64.urlsafe_b64encode(data).rstrip(b"=").decode()
56
49
 
@@ -97,7 +90,7 @@ def decode_jwt(
97
90
  if not isinstance(payload, dict):
98
91
  raise DecodeError("Invalid payload string: must be a json object")
99
92
 
100
- now = datetime.now(tz=timezone.utc).timestamp()
93
+ now = datetime.now(tz=UTC).timestamp()
101
94
 
102
95
  if "iat" in payload:
103
96
  try:
@@ -0,0 +1 @@
1
+ VERSION = "8.0.1"
@@ -6,7 +6,6 @@ from functools import wraps
6
6
  from typing import Any, NamedTuple
7
7
 
8
8
  from meilisearch_python_sdk import AsyncClient, Client
9
- from meilisearch_python_sdk._utils import use_task_groups
10
9
  from meilisearch_python_sdk.types import JsonMapping
11
10
 
12
11
 
@@ -210,11 +209,6 @@ async def _async_add_documents(
210
209
  )
211
210
 
212
211
  if wait_for_task:
213
- if not use_task_groups():
214
- waits = [async_client.wait_for_task(x.task_uid) for x in tasks]
215
- await asyncio.gather(*waits)
216
- return
217
-
218
212
  async with asyncio.TaskGroup() as tg: # type: ignore[attr-defined]
219
213
  [tg.create_task(async_client.wait_for_task(x.task_uid)) for x in tasks]
220
214