meilisearch-python-sdk 3.5.0__tar.gz → 3.6.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.

Files changed (99) hide show
  1. meilisearch_python_sdk-3.6.0/.github/release-draft-template.yaml +28 -0
  2. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/.github/workflows/nightly_testing.yml +3 -12
  3. meilisearch_python_sdk-3.5.0/.github/workflows/pypi_publish.yaml → meilisearch_python_sdk-3.6.0/.github/workflows/pypi_publish.yml +10 -8
  4. meilisearch_python_sdk-3.5.0/.github/workflows/testing.yaml → meilisearch_python_sdk-3.6.0/.github/workflows/testing.yml +24 -84
  5. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/.pre-commit-config.yaml +4 -4
  6. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/PKG-INFO +3 -2
  7. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docker-compose.https.yml +10 -2
  8. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docker-compose.yml +2 -1
  9. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/requirements.txt +1 -1
  10. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/justfile +15 -12
  11. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/_client.py +67 -244
  12. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/_task.py +1 -5
  13. meilisearch_python_sdk-3.6.0/meilisearch_python_sdk/_version.py +1 -0
  14. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/decorators.py +2 -10
  15. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/index.py +272 -966
  16. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/models/search.py +14 -1
  17. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/models/settings.py +8 -4
  18. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/pyproject.toml +6 -5
  19. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/conftest.py +4 -5
  20. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_async_search.py +56 -1
  21. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_search.py +33 -1
  22. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/uv.lock +45 -35
  23. meilisearch_python_sdk-3.5.0/.github/release-draft-template.yaml +0 -29
  24. meilisearch_python_sdk-3.5.0/meilisearch_python_sdk/_version.py +0 -1
  25. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/.github/FUNDING.yml +0 -0
  26. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/.github/dependabot.yaml +0 -0
  27. /meilisearch_python_sdk-3.5.0/.github/workflows/release-drafter.yaml → /meilisearch_python_sdk-3.6.0/.github/workflows/release-drafter.yml +0 -0
  28. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/.gitignore +0 -0
  29. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/CONTRIBUTING.md +0 -0
  30. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/LICENSE +0 -0
  31. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/README.md +0 -0
  32. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/assets/add_in_batches.png +0 -0
  33. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/assets/searches.png +0 -0
  34. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/benchmark/run_benchmark.py +0 -0
  35. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/codecov.yml +0 -0
  36. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/datasets/small_movies.json +0 -0
  37. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/.nojekyll +0 -0
  38. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/CNAME +0 -0
  39. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/async_client_api.md +0 -0
  40. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/async_index_api.md +0 -0
  41. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/client_api.md +0 -0
  42. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/css/custom.css +0 -0
  43. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/decorators_api.md +0 -0
  44. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/index.md +0 -0
  45. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/index_api.md +0 -0
  46. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/js/umami.js +0 -0
  47. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/json_handler.md +0 -0
  48. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/plugins.md +0 -0
  49. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/docs/pydantic.md +0 -0
  50. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/.gitignore +0 -0
  51. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/README.md +0 -0
  52. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/__init__.py +0 -0
  53. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/add_documents_decorator.py +0 -0
  54. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/add_documents_in_batches.py +0 -0
  55. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/async_add_documents_decorator.py +0 -0
  56. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/async_add_documents_in_batches.py +0 -0
  57. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/async_documents_and_search_results.py +0 -0
  58. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/async_search_tracker.py +0 -0
  59. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/async_update_settings.py +0 -0
  60. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/documents_and_search_results.py +0 -0
  61. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/fastapi_example.py +0 -0
  62. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/orjson_example.py +0 -0
  63. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/pyproject.toml +0 -0
  64. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/search_tracker.py +0 -0
  65. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/tests/__init__.py +0 -0
  66. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/tests/conftest.py +0 -0
  67. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/tests/test_async_examples.py +0 -0
  68. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/tests/test_examples.py +0 -0
  69. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/ujson_example.py +0 -0
  70. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/examples/update_settings.py +0 -0
  71. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/__init__.py +0 -0
  72. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/_http_requests.py +0 -0
  73. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/_utils.py +0 -0
  74. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/errors.py +0 -0
  75. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/json_handler.py +0 -0
  76. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/models/__init__.py +0 -0
  77. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/models/client.py +0 -0
  78. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/models/documents.py +0 -0
  79. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/models/health.py +0 -0
  80. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/models/index.py +0 -0
  81. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/models/task.py +0 -0
  82. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/models/version.py +0 -0
  83. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/plugins.py +0 -0
  84. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/py.typed +0 -0
  85. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/meilisearch_python_sdk/types.py +0 -0
  86. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/mkdocs.yaml +0 -0
  87. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/__init__.py +0 -0
  88. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_async_client.py +0 -0
  89. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_async_documents.py +0 -0
  90. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_async_index.py +0 -0
  91. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_async_index_plugins.py +0 -0
  92. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_client.py +0 -0
  93. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_decorators.py +0 -0
  94. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_documents.py +0 -0
  95. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_errors.py +0 -0
  96. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_index.py +0 -0
  97. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_index_plugins.py +0 -0
  98. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_utils.py +0 -0
  99. {meilisearch_python_sdk-3.5.0 → meilisearch_python_sdk-3.6.0}/tests/test_version.py +0 -0
@@ -0,0 +1,28 @@
1
+ name-template: "v$RESOLVED_VERSION"
2
+ tag-template: "v$RESOLVED_VERSION"
3
+ exclude-labels:
4
+ - "dependencies"
5
+ - "skip-changelog"
6
+ version-resolver:
7
+ major:
8
+ labels:
9
+ - "breaking-change"
10
+ minor:
11
+ labels:
12
+ - "enhancement"
13
+ - "feature"
14
+ default: patch
15
+ categories:
16
+ - title: "⚠️ Breaking changes"
17
+ label: "breaking-change"
18
+ - title: "Features"
19
+ labels:
20
+ - "feature"
21
+ - "enhancement"
22
+ - title: "Bug Fixes"
23
+ labels: "bug"
24
+ change-template: "- $TITLE @$AUTHOR (#$NUMBER)"
25
+ template: |
26
+ ## Changes
27
+
28
+ $CHANGES
@@ -5,7 +5,6 @@ on:
5
5
  # Set with UTC time
6
6
  - cron: "0 5 * * *"
7
7
  env:
8
- UV_CACHE_DIR: /tmp/.uv-cache
9
8
  PYTHON_VERSION: "3.12"
10
9
  jobs:
11
10
  random-test-order:
@@ -15,26 +14,18 @@ jobs:
15
14
  steps:
16
15
  - uses: actions/checkout@v4
17
16
  - name: Install uv
18
- run: curl -LsSf https://astral.sh/uv/install.sh | sh
17
+ uses: astral-sh/setup-uv@v3
18
+ with:
19
+ enable-cache: true
19
20
  - name: install Just
20
21
  uses: taiki-e/install-action@just
21
22
  - name: Set up Python
22
23
  uses: actions/setup-python@v5
23
24
  with:
24
25
  python-version: ${{ env.PYTHON_VERSION }}
25
- - name: Restore uv cache
26
- uses: actions/cache@v4
27
- with:
28
- path: ${{ env.UV_CACHE_DIR }}
29
- key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
30
- restore-keys: |
31
- uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
32
- uv-${{ runner.os }}
33
26
  - name: Install Dependencies
34
27
  run: |
35
28
  just install
36
29
  uv pip install pytest-randomly
37
30
  - name: Test with pytest in random order
38
31
  run: just test-ci
39
- - name: Minimize uv cache
40
- run: uv cache prune --ci
@@ -8,22 +8,24 @@ env:
8
8
  jobs:
9
9
  deploy:
10
10
  runs-on: ubuntu-latest
11
+ permissions:
12
+ # For PyPI's trusted publishing.
13
+ id-token: write
11
14
  steps:
12
15
  - uses: actions/checkout@v4
13
16
  - name: Install uv
14
- run: curl -LsSf https://astral.sh/uv/install.sh | sh
17
+ uses: astral-sh/setup-uv@v3
18
+ with:
19
+ enable-cache: true
15
20
  - name: Set up Python
16
21
  uses: actions/setup-python@v5
17
22
  with:
18
23
  python-version: ${{ env.PYTHON_VERSION }}
19
24
  - name: Install Dependencies
20
25
  run: uv sync --frozen --all-extras
21
- - name: Build and publish package
22
- env:
23
- TWINE_USERNAME: __token__
24
- TWINE_PASSWORD: "${{ secrets.PYPI_API_KEY }}"
25
- run: |
26
- uvx --from build pyproject-build --installer uv
27
- uvx twine upload dist/*
26
+ - name: Build package
27
+ run: uv build
28
+ - name: Publish package
29
+ run: uv publish
28
30
  - name: Deploy Docs
29
31
  run: uv run mkdocs gh-deploy --force
@@ -6,7 +6,6 @@ on:
6
6
  - main
7
7
  pull_request:
8
8
  env:
9
- UV_CACHE_DIR: /tmp/.uv-cache
10
9
  PYTHON_VERSION: "3.9"
11
10
  jobs:
12
11
  linting:
@@ -16,50 +15,36 @@ jobs:
16
15
  - name: install Just
17
16
  uses: taiki-e/install-action@just
18
17
  - name: Install uv
19
- run: curl -LsSf https://astral.sh/uv/install.sh | sh
18
+ uses: astral-sh/setup-uv@v3
19
+ with:
20
+ enable-cache: true
20
21
  - name: Set up Python
21
22
  uses: actions/setup-python@v5
22
23
  with:
23
24
  python-version: ${{ env.PYTHON_VERSION }}
24
- - name: Restore uv cache
25
- uses: actions/cache@v4
26
- with:
27
- path: ${{ env.UV_CACHE_DIR }}
28
- key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
29
- restore-keys: |
30
- uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
31
- uv-${{ runner.os }}
32
25
  - name: Install Dependencies
33
26
  run: just install
34
27
  - name: mypy check
35
28
  run: just mypy
36
- - name: Minimize uv cache
37
- run: uv cache prune --ci
38
29
 
39
30
  parallel-testing:
40
31
  strategy:
41
32
  fail-fast: false
42
33
  matrix:
43
- python-version: ["3.9", "3.10", "3.11", "3.12", "3.13-dev"]
34
+ python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
44
35
  runs-on: ubuntu-latest
45
36
  steps:
46
37
  - uses: actions/checkout@v4
47
38
  - name: install Just
48
39
  uses: taiki-e/install-action@just
49
40
  - name: Install uv
50
- run: curl -LsSf https://astral.sh/uv/install.sh | sh
41
+ uses: astral-sh/setup-uv@v3
42
+ with:
43
+ enable-cache: true
51
44
  - name: Set up Python ${{ matrix.python-version }}
52
45
  uses: actions/setup-python@v5
53
46
  with:
54
47
  python-version: ${{ matrix.python-version }}
55
- - name: Restore uv cache
56
- uses: actions/cache@v4
57
- with:
58
- path: ${{ env.UV_CACHE_DIR }}
59
- key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
60
- restore-keys: |
61
- uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
62
- uv-${{ runner.os }}
63
48
  - name: Install Dependencies
64
49
  run: just install
65
50
  - name: Test with pytest
@@ -69,33 +54,25 @@ jobs:
69
54
  with:
70
55
  token: ${{ secrets.CODECOV_TOKEN }}
71
56
  fail_ci_if_error: true
72
- - name: Minimize uv cache
73
- run: uv cache prune --ci
74
57
 
75
58
  parallel-testing-http2:
76
59
  strategy:
77
60
  fail-fast: false
78
61
  matrix:
79
- python-version: ["3.9", "3.10", "3.11", "3.12", "3.13-dev"]
62
+ python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
80
63
  runs-on: ubuntu-latest
81
64
  steps:
82
65
  - uses: actions/checkout@v4
83
66
  - name: install Just
84
67
  uses: taiki-e/install-action@just
85
68
  - name: Install uv
86
- run: curl -LsSf https://astral.sh/uv/install.sh | sh
69
+ uses: astral-sh/setup-uv@v3
70
+ with:
71
+ enable-cache: true
87
72
  - name: Set up Python ${{ matrix.python-version }}
88
73
  uses: actions/setup-python@v5
89
74
  with:
90
75
  python-version: ${{ matrix.python-version }}
91
- - name: Restore uv cache
92
- uses: actions/cache@v4
93
- with:
94
- path: ${{ env.UV_CACHE_DIR }}
95
- key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
96
- restore-keys: |
97
- uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
98
- uv-${{ runner.os }}
99
76
  - name: Install Dependencies
100
77
  run: just install
101
78
  - name: Install truststore
@@ -117,33 +94,25 @@ jobs:
117
94
  with:
118
95
  token: ${{ secrets.CODECOV_TOKEN }}
119
96
  fail_ci_if_error: true
120
- - name: Minimize uv cache
121
- run: uv cache prune --ci
122
97
 
123
98
  no-parallel-testing:
124
99
  strategy:
125
100
  fail-fast: false
126
101
  matrix:
127
- python-version: ["3.9", "3.10", "3.11", "3.12", "3.13-dev"]
102
+ python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
128
103
  runs-on: ubuntu-latest
129
104
  steps:
130
105
  - uses: actions/checkout@v4
131
106
  - name: install Just
132
107
  uses: taiki-e/install-action@just
133
108
  - name: Install uv
134
- run: curl -LsSf https://astral.sh/uv/install.sh | sh
109
+ uses: astral-sh/setup-uv@v3
110
+ with:
111
+ enable-cache: true
135
112
  - name: Set up Python ${{ matrix.python-version }}
136
113
  uses: actions/setup-python@v5
137
114
  with:
138
115
  python-version: ${{ matrix.python-version }}
139
- - name: Restore uv cache
140
- uses: actions/cache@v4
141
- with:
142
- path: ${{ env.UV_CACHE_DIR }}
143
- key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
144
- restore-keys: |
145
- uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
146
- uv-${{ runner.os }}
147
116
  - name: Install Dependencies
148
117
  run: just install
149
118
  - name: Test with pytest
@@ -153,33 +122,25 @@ jobs:
153
122
  with:
154
123
  token: ${{ secrets.CODECOV_TOKEN }}
155
124
  fail_ci_if_error: true
156
- - name: Minimize uv cache
157
- run: uv cache prune --ci
158
125
 
159
126
  no-parallel-testing-http2:
160
127
  strategy:
161
128
  fail-fast: false
162
129
  matrix:
163
- python-version: ["3.9", "3.10", "3.11", "3.12", "3.13-dev"]
130
+ python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
164
131
  runs-on: ubuntu-latest
165
132
  steps:
166
133
  - uses: actions/checkout@v4
167
134
  - name: install Just
168
135
  uses: taiki-e/install-action@just
169
136
  - name: Install uv
170
- run: curl -LsSf https://astral.sh/uv/install.sh | sh
137
+ uses: astral-sh/setup-uv@v3
138
+ with:
139
+ enable-cache: true
171
140
  - name: Set up Python ${{ matrix.python-version }}
172
141
  uses: actions/setup-python@v5
173
142
  with:
174
143
  python-version: ${{ matrix.python-version }}
175
- - name: Restore uv cache
176
- uses: actions/cache@v4
177
- with:
178
- path: ${{ env.UV_CACHE_DIR }}
179
- key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
180
- restore-keys: |
181
- uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
182
- uv-${{ runner.os }}
183
144
  - name: Install Dependencies
184
145
  run: just install
185
146
  - name: Install truststore
@@ -201,36 +162,23 @@ jobs:
201
162
  with:
202
163
  token: ${{ secrets.CODECOV_TOKEN }}
203
164
  fail_ci_if_error: true
204
- - name: Minimize uv cache
205
- run: uv cache prune --ci
206
165
  example-testing:
207
166
  strategy:
208
167
  fail-fast: false
209
168
  matrix:
210
- python-version: ["3.9", "3.10", "3.11", "3.12", "3.13-dev"]
169
+ python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
211
170
  runs-on: ubuntu-latest
212
171
  steps:
213
172
  - uses: actions/checkout@v4
214
173
  - name: install Just
215
174
  uses: taiki-e/install-action@just
216
- - name: Install uv
217
- run: curl -LsSf https://astral.sh/uv/install.sh | sh
218
175
  - name: Set up Python ${{ matrix.python-version }}
219
176
  uses: actions/setup-python@v5
220
177
  with:
221
178
  python-version: ${{ matrix.python-version }}
222
- - name: Restore uv cache
223
- uses: actions/cache@v4
224
- with:
225
- path: ${{ env.UV_CACHE_DIR }}
226
- key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
227
- restore-keys: |
228
- uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
229
- uv-${{ runner.os }}
179
+ cache: pip
230
180
  - name: Test with pytest
231
181
  run: just test-examples-ci
232
- - name: Minimize uv cache
233
- run: uv cache prune --ci
234
182
 
235
183
  docs:
236
184
  runs-on: ubuntu-latest
@@ -239,22 +187,14 @@ jobs:
239
187
  - name: install Just
240
188
  uses: taiki-e/install-action@just
241
189
  - name: Install uv
242
- run: curl -LsSf https://astral.sh/uv/install.sh | sh
190
+ uses: astral-sh/setup-uv@v3
191
+ with:
192
+ enable-cache: true
243
193
  - name: Set up Python
244
194
  uses: actions/setup-python@v5
245
195
  with:
246
196
  python-version: "3.11"
247
- - name: Restore uv cache
248
- uses: actions/cache@v4
249
- with:
250
- path: ${{ env.UV_CACHE_DIR }}
251
- key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
252
- restore-keys: |
253
- uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
254
- uv-${{ runner.os }}
255
197
  - name: Install Dependencies
256
198
  run: just install
257
199
  - name: Test Docs Build
258
200
  run: just build-docs
259
- - name: Minimize uv cache
260
- run: uv cache prune --ci
@@ -1,6 +1,6 @@
1
1
  repos:
2
2
  - repo: https://github.com/pre-commit/pre-commit-hooks
3
- rev: v4.6.0
3
+ rev: v5.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.11.2
12
+ rev: v1.13.0
13
13
  hooks:
14
14
  - id: mypy
15
- additional_dependencies: [pydantic, types-aiofiles, types-ujson]
15
+ additional_dependencies: [pydantic, orjson, types-aiofiles, types-ujson]
16
16
  - repo: https://github.com/astral-sh/ruff-pre-commit
17
- rev: v0.6.5
17
+ rev: v0.7.0
18
18
  hooks:
19
19
  - id: ruff
20
20
  args: [--fix, --exit-non-zero-on-fix]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: meilisearch-python-sdk
3
- Version: 3.5.0
3
+ Version: 3.6.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
@@ -37,10 +37,11 @@ Classifier: Programming Language :: Python :: 3.9
37
37
  Classifier: Programming Language :: Python :: 3.10
38
38
  Classifier: Programming Language :: Python :: 3.11
39
39
  Classifier: Programming Language :: Python :: 3.12
40
+ Classifier: Programming Language :: Python :: 3.13
40
41
  Classifier: Typing :: Typed
41
42
  Requires-Python: >=3.9
42
43
  Requires-Dist: aiofiles>=0.7
43
- Requires-Dist: camel-converter>=1.0.0
44
+ Requires-Dist: camel-converter[pydantic]>=1.0.0
44
45
  Requires-Dist: eval-type-backport>=0.2.0; python_version < '3.10'
45
46
  Requires-Dist: httpx[http2]>=0.17
46
47
  Requires-Dist: pydantic>=2.0.0
@@ -1,6 +1,7 @@
1
1
  services:
2
2
  meilisearch:
3
- image: getmeili/meilisearch:latest
3
+ # image: getmeili/meilisearch:latest
4
+ image: getmeili/meilisearch:v1
4
5
  ports:
5
6
  - "7700:7700"
6
7
  environment:
@@ -9,4 +10,11 @@ services:
9
10
  volumes:
10
11
  - ./meilisearch.key:/meilisearch.key
11
12
  - ./meilisearch.crt:/meilisearch.crt
12
- command: ["meilisearch", "--ssl-cert-path", "/meilisearch.crt", "--ssl-key-path", "/meilisearch.key"]
13
+ command:
14
+ [
15
+ "meilisearch",
16
+ "--ssl-cert-path",
17
+ "/meilisearch.crt",
18
+ "--ssl-key-path",
19
+ "/meilisearch.key",
20
+ ]
@@ -1,6 +1,7 @@
1
1
  services:
2
2
  meilisearch:
3
- image: getmeili/meilisearch:latest
3
+ # image: getmeili/meilisearch:latest
4
+ image: getmeili/meilisearch:v1
4
5
  ports:
5
6
  - "7700:7700"
6
7
  environment:
@@ -1,4 +1,4 @@
1
1
  ../.[all]
2
- fastapi==0.115.0
2
+ fastapi==0.115.4
3
3
  pytest==8.3.3
4
4
  pytest-asyncio==0.24.0
@@ -18,23 +18,23 @@
18
18
  @ruff-format:
19
19
  uv run ruff format meilisearch_python_sdk tests examples
20
20
 
21
- @test:
22
- -uv run pytest -x
21
+ @test *args="":
22
+ -uv run pytest {{args}}
23
23
 
24
- @test-http2:
25
- -uv run pytest -x --http2
24
+ @test-http2 *args="":
25
+ -uv run pytest --http2 {{args}}
26
26
 
27
- @test-parallel:
28
- -uv run pytest -n auto -x -m "not no_parallel"
27
+ @test-parallel *args="":
28
+ -uv run pytest -n auto -m "not no_parallel" {{args}}
29
29
 
30
- @test-no-parallel:
31
- -uv run pytest -x -m "no_parallel"
30
+ @test-no-parallel *args="":
31
+ -uv run pytest -m "no_parallel" {{args}}
32
32
 
33
- @test-parallel-http2:
34
- -uv run pytest -n auto -x -m "not no_parallel" --http2
33
+ @test-parallel-http2 *args="":
34
+ -uv run pytest -n auto -m "not no_parallel" --http2 {{args}}
35
35
 
36
- @test-no-parallel-http2:
37
- -uv run pytest -x -m "no_parallel" --http2
36
+ @test-no-parallel-http2 *args="":
37
+ -uv run pytest -m "no_parallel" --http2 {{args}}
38
38
 
39
39
  @test-ci: start-meilisearch-detached && stop-meilisearch
40
40
  uv run pytest --cov=meilisearch_python_sdk --cov-report=xml
@@ -83,5 +83,8 @@
83
83
  @install:
84
84
  uv sync --frozen --all-extras
85
85
 
86
+ @lock:
87
+ uv lock
88
+
86
89
  @benchmark: start-meilisearch-detached && stop-meilisearch
87
90
  -uv run benchmark/run_benchmark.py