meilisearch-python-sdk 3.1.0__tar.gz → 3.3.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 (91) hide show
  1. meilisearch_python_sdk-3.3.0/.github/FUNDING.yml +1 -0
  2. meilisearch_python_sdk-3.3.0/.github/dependabot.yaml +16 -0
  3. meilisearch_python_sdk-3.3.0/.github/release-draft-template.yaml +29 -0
  4. meilisearch_python_sdk-3.3.0/.github/workflows/nightly_testing.yml +37 -0
  5. meilisearch_python_sdk-3.3.0/.github/workflows/pypi_publish.yaml +27 -0
  6. meilisearch_python_sdk-3.3.0/.github/workflows/release-drafter.yaml +16 -0
  7. meilisearch_python_sdk-3.3.0/.github/workflows/testing.yaml +135 -0
  8. meilisearch_python_sdk-3.3.0/.gitignore +137 -0
  9. meilisearch_python_sdk-3.3.0/.pre-commit-config.yaml +21 -0
  10. meilisearch_python_sdk-3.3.0/CONTRIBUTING.md +328 -0
  11. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/PKG-INFO +40 -20
  12. meilisearch_python_sdk-3.3.0/assets/add_in_batches.png +0 -0
  13. meilisearch_python_sdk-3.3.0/assets/searches.png +0 -0
  14. meilisearch_python_sdk-3.3.0/benchmark/run_benchmark.py +236 -0
  15. meilisearch_python_sdk-3.3.0/codecov.yml +6 -0
  16. meilisearch_python_sdk-3.3.0/datasets/small_movies.json +222 -0
  17. meilisearch_python_sdk-3.3.0/docker-compose.yml +8 -0
  18. meilisearch_python_sdk-3.3.0/docs/CNAME +1 -0
  19. meilisearch_python_sdk-3.3.0/docs/async_client_api.md +53 -0
  20. meilisearch_python_sdk-3.3.0/docs/async_index_api.md +9 -0
  21. meilisearch_python_sdk-3.3.0/docs/client_api.md +35 -0
  22. meilisearch_python_sdk-3.3.0/docs/css/custom.css +14 -0
  23. meilisearch_python_sdk-3.3.0/docs/decorators_api.md +5 -0
  24. meilisearch_python_sdk-3.3.0/docs/index.md +15 -0
  25. meilisearch_python_sdk-3.3.0/docs/index_api.md +8 -0
  26. meilisearch_python_sdk-3.3.0/docs/js/umami.js +7 -0
  27. meilisearch_python_sdk-3.3.0/docs/json_handler.md +83 -0
  28. meilisearch_python_sdk-3.3.0/docs/plugins.md +315 -0
  29. meilisearch_python_sdk-3.3.0/docs/pydantic.md +90 -0
  30. meilisearch_python_sdk-3.3.0/examples/.gitignore +5 -0
  31. meilisearch_python_sdk-3.3.0/examples/README.md +25 -0
  32. meilisearch_python_sdk-3.3.0/examples/add_documents_decorator.py +33 -0
  33. meilisearch_python_sdk-3.3.0/examples/add_documents_in_batches.py +20 -0
  34. meilisearch_python_sdk-3.3.0/examples/async_add_documents_decorator.py +37 -0
  35. meilisearch_python_sdk-3.3.0/examples/async_add_documents_in_batches.py +24 -0
  36. meilisearch_python_sdk-3.3.0/examples/async_documents_and_search_results.py +73 -0
  37. meilisearch_python_sdk-3.3.0/examples/async_search_tracker.py +63 -0
  38. meilisearch_python_sdk-3.3.0/examples/async_update_settings.py +32 -0
  39. meilisearch_python_sdk-3.3.0/examples/documents_and_search_results.py +67 -0
  40. meilisearch_python_sdk-3.3.0/examples/fastapi_example.py +74 -0
  41. meilisearch_python_sdk-3.3.0/examples/orjson_example.py +14 -0
  42. meilisearch_python_sdk-3.3.0/examples/requirements.txt +2 -0
  43. meilisearch_python_sdk-3.3.0/examples/search_tracker.py +53 -0
  44. meilisearch_python_sdk-3.3.0/examples/ujson_example.py +14 -0
  45. meilisearch_python_sdk-3.3.0/examples/update_settings.py +28 -0
  46. meilisearch_python_sdk-3.3.0/justfile +55 -0
  47. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/_client.py +58 -7
  48. meilisearch_python_sdk-3.3.0/meilisearch_python_sdk/_version.py +1 -0
  49. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/index.py +306 -2
  50. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/models/search.py +20 -0
  51. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/models/settings.py +11 -5
  52. meilisearch_python_sdk-3.3.0/meilisearch_python_sdk/py.typed +0 -0
  53. meilisearch_python_sdk-3.3.0/mkdocs.yaml +46 -0
  54. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/pyproject.toml +45 -43
  55. meilisearch_python_sdk-3.3.0/tests/__init__.py +0 -0
  56. meilisearch_python_sdk-3.3.0/tests/conftest.py +317 -0
  57. meilisearch_python_sdk-3.3.0/tests/test_async_client.py +977 -0
  58. meilisearch_python_sdk-3.3.0/tests/test_async_documents.py +1429 -0
  59. meilisearch_python_sdk-3.3.0/tests/test_async_index.py +932 -0
  60. meilisearch_python_sdk-3.3.0/tests/test_async_index_plugins.py +526 -0
  61. meilisearch_python_sdk-3.3.0/tests/test_async_search.py +603 -0
  62. meilisearch_python_sdk-3.3.0/tests/test_client.py +960 -0
  63. meilisearch_python_sdk-3.3.0/tests/test_decorators.py +131 -0
  64. meilisearch_python_sdk-3.3.0/tests/test_documents.py +1383 -0
  65. meilisearch_python_sdk-3.3.0/tests/test_errors.py +69 -0
  66. meilisearch_python_sdk-3.3.0/tests/test_index.py +918 -0
  67. meilisearch_python_sdk-3.3.0/tests/test_index_plugins.py +473 -0
  68. meilisearch_python_sdk-3.3.0/tests/test_search.py +604 -0
  69. meilisearch_python_sdk-3.3.0/tests/test_utils.py +35 -0
  70. meilisearch_python_sdk-3.3.0/tests/test_version.py +6 -0
  71. meilisearch_python_sdk-3.3.0/uv.lock +1450 -0
  72. meilisearch_python_sdk-3.1.0/meilisearch_python_sdk/_version.py +0 -1
  73. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/LICENSE +0 -0
  74. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/README.md +0 -0
  75. /meilisearch_python_sdk-3.1.0/meilisearch_python_sdk/models/__init__.py → /meilisearch_python_sdk-3.3.0/docs/.nojekyll +0 -0
  76. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/__init__.py +0 -0
  77. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/_http_requests.py +0 -0
  78. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/_task.py +0 -0
  79. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/_utils.py +0 -0
  80. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/decorators.py +0 -0
  81. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/errors.py +0 -0
  82. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/json_handler.py +0 -0
  83. /meilisearch_python_sdk-3.1.0/meilisearch_python_sdk/py.typed → /meilisearch_python_sdk-3.3.0/meilisearch_python_sdk/models/__init__.py +0 -0
  84. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/models/client.py +0 -0
  85. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/models/documents.py +0 -0
  86. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/models/health.py +0 -0
  87. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/models/index.py +0 -0
  88. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/models/task.py +0 -0
  89. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/models/version.py +0 -0
  90. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/plugins.py +0 -0
  91. {meilisearch_python_sdk-3.1.0 → meilisearch_python_sdk-3.3.0}/meilisearch_python_sdk/types.py +0 -0
@@ -0,0 +1 @@
1
+ github: [sanders41]
@@ -0,0 +1,16 @@
1
+ version: 2
2
+ updates:
3
+ - package-ecosystem: "pip"
4
+ directory: "/"
5
+ schedule:
6
+ interval: "daily"
7
+ labels:
8
+ - skip-changelog
9
+ - dependencies
10
+ - package-ecosystem: github-actions
11
+ directory: '/'
12
+ schedule:
13
+ interval: daily
14
+ labels:
15
+ - skip-changelog
16
+ - dependencies
@@ -0,0 +1,29 @@
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: 'Features'
17
+ labels:
18
+ - 'feature'
19
+ - 'enhancement'
20
+ - title: 'Bug Fixes'
21
+ labels:
22
+ - 'bug'
23
+ - title: '⚠️ Breaking changes'
24
+ label: 'breaking-change'
25
+ change-template: '- $TITLE @$AUTHOR (#$NUMBER)'
26
+ template: |
27
+ ## Changes
28
+
29
+ $CHANGES
@@ -0,0 +1,37 @@
1
+ name: Nightly Testing
2
+
3
+ on:
4
+ schedule:
5
+ # Set with UTC time
6
+ - cron: "0 5 * * *"
7
+ jobs:
8
+ random-test-order:
9
+ strategy:
10
+ fail-fast: false
11
+ runs-on: ubuntu-latest
12
+ steps:
13
+ - uses: actions/checkout@v4
14
+ - name: Install uv
15
+ run: curl -LsSf https://astral.sh/uv/install.sh | sh
16
+ - name: install Just
17
+ uses: taiki-e/install-action@just
18
+ - name: Set up Python
19
+ uses: actions/setup-python@v5
20
+ with:
21
+ python-version: 3.12
22
+ - name: Restore uv cache
23
+ uses: actions/cache@v4
24
+ with:
25
+ path: ${{ env.UV_CACHE_DIR }}
26
+ key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
27
+ restore-keys: |
28
+ uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
29
+ uv-${{ runner.os }}
30
+ - name: Install Dependencies
31
+ run: |
32
+ just install
33
+ uv add --dev pytest-randomly
34
+ - name: Test with pytest in random order
35
+ run: just test-ci
36
+ - name: Minimize uv cache
37
+ run: uv cache prune --ci
@@ -0,0 +1,27 @@
1
+ name: PyPi Publish
2
+ on:
3
+ release:
4
+ types:
5
+ - published
6
+ jobs:
7
+ deploy:
8
+ runs-on: ubuntu-latest
9
+ steps:
10
+ - uses: actions/checkout@v4
11
+ - name: Install uv
12
+ run: curl -LsSf https://astral.sh/uv/install.sh | sh
13
+ - name: Set up Python
14
+ uses: actions/setup-python@v5
15
+ with:
16
+ python-version: 3.12
17
+ - name: Install Dependencies
18
+ run: uv sync --frozen --all-extras
19
+ - name: Build and publish package
20
+ env:
21
+ TWINE_USERNAME: __token__
22
+ TWINE_PASSWORD: "${{ secrets.PYPI_API_KEY }}"
23
+ run: |
24
+ uvx --from build pyproject-build --installer uv
25
+ uvx twine upload dist/*
26
+ - name: Deploy Docs
27
+ run: uv run mkdocs gh-deploy --force
@@ -0,0 +1,16 @@
1
+ name: Release Drafter
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+
8
+ jobs:
9
+ update_release_draft:
10
+ runs-on: ubuntu-latest
11
+ steps:
12
+ - uses: release-drafter/release-drafter@v6
13
+ with:
14
+ config-name: release-draft-template.yaml
15
+ env:
16
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
@@ -0,0 +1,135 @@
1
+ name: Testing
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+ pull_request:
8
+ env:
9
+ UV_CACHE_DIR: /tmp/.uv-cache
10
+ jobs:
11
+ linting:
12
+ runs-on: ubuntu-latest
13
+ steps:
14
+ - uses: actions/checkout@v4
15
+ - name: install Just
16
+ uses: taiki-e/install-action@just
17
+ - name: Install uv
18
+ run: curl -LsSf https://astral.sh/uv/install.sh | sh
19
+ - name: Set up Python
20
+ uses: actions/setup-python@v5
21
+ with:
22
+ python-version: 3.9
23
+ - name: Restore uv cache
24
+ uses: actions/cache@v4
25
+ with:
26
+ path: ${{ env.UV_CACHE_DIR }}
27
+ key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
28
+ restore-keys: |
29
+ uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
30
+ uv-${{ runner.os }}
31
+ - name: Install Dependencies
32
+ run: just install
33
+ - name: mypy check
34
+ run: just mypy
35
+ - name: Minimize uv cache
36
+ run: uv cache prune --ci
37
+
38
+ parallel-testing:
39
+ strategy:
40
+ fail-fast: false
41
+ matrix:
42
+ python-version: ["3.9", "3.10", "3.11", "3.12", "3.13.0-beta.4"]
43
+ runs-on: ubuntu-latest
44
+ steps:
45
+ - uses: actions/checkout@v4
46
+ - name: install Just
47
+ uses: taiki-e/install-action@just
48
+ - name: Install uv
49
+ run: curl -LsSf https://astral.sh/uv/install.sh | sh
50
+ - name: Set up Python ${{ matrix.python-version }}
51
+ uses: actions/setup-python@v5
52
+ with:
53
+ python-version: ${{ matrix.python-version }}
54
+ - name: Restore uv cache
55
+ uses: actions/cache@v4
56
+ with:
57
+ path: ${{ env.UV_CACHE_DIR }}
58
+ key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
59
+ restore-keys: |
60
+ uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
61
+ uv-${{ runner.os }}
62
+ - name: Install Dependencies
63
+ run: just install
64
+ - name: Test with pytest
65
+ run: just test-parallel-ci
66
+ - name: Upload coverage
67
+ uses: codecov/codecov-action@v4
68
+ with:
69
+ token: ${{ secrets.CODECOV_TOKEN }}
70
+ fail_ci_if_error: true
71
+ - name: Minimize uv cache
72
+ run: uv cache prune --ci
73
+
74
+ no-parallel-testing:
75
+ strategy:
76
+ fail-fast: false
77
+ matrix:
78
+ python-version: ["3.9", "3.10", "3.11", "3.12", "3.13.0-beta.4"]
79
+ runs-on: ubuntu-latest
80
+ steps:
81
+ - uses: actions/checkout@v4
82
+ - name: install Just
83
+ uses: taiki-e/install-action@just
84
+ - name: Install uv
85
+ run: curl -LsSf https://astral.sh/uv/install.sh | sh
86
+ - name: Set up Python ${{ matrix.python-version }}
87
+ uses: actions/setup-python@v5
88
+ with:
89
+ python-version: ${{ matrix.python-version }}
90
+ - name: Restore uv cache
91
+ uses: actions/cache@v4
92
+ with:
93
+ path: ${{ env.UV_CACHE_DIR }}
94
+ key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
95
+ restore-keys: |
96
+ uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
97
+ uv-${{ runner.os }}
98
+ - name: Install Dependencies
99
+ run: just install
100
+ - name: Test with pytest
101
+ run: just test-no-parallel-ci
102
+ - name: Upload coverage
103
+ uses: codecov/codecov-action@v4
104
+ with:
105
+ token: ${{ secrets.CODECOV_TOKEN }}
106
+ fail_ci_if_error: true
107
+ - name: Minimize uv cache
108
+ run: uv cache prune --ci
109
+
110
+ docs:
111
+ runs-on: ubuntu-latest
112
+ steps:
113
+ - uses: actions/checkout@v4
114
+ - name: install Just
115
+ uses: taiki-e/install-action@just
116
+ - name: Install uv
117
+ run: curl -LsSf https://astral.sh/uv/install.sh | sh
118
+ - name: Set up Python
119
+ uses: actions/setup-python@v5
120
+ with:
121
+ python-version: "3.11"
122
+ - name: Restore uv cache
123
+ uses: actions/cache@v4
124
+ with:
125
+ path: ${{ env.UV_CACHE_DIR }}
126
+ key: uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
127
+ restore-keys: |
128
+ uv-${{ runner.os }}-${{ hashFiles('uv.lock') }}
129
+ uv-${{ runner.os }}
130
+ - name: Install Dependencies
131
+ run: just install
132
+ - name: Test Docs Build
133
+ run: just build-docs
134
+ - name: Minimize uv cache
135
+ run: uv cache prune --ci
@@ -0,0 +1,137 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # OS Files
7
+ *.swp
8
+ *.DS_Store
9
+
10
+ # C extensions
11
+ *.so
12
+
13
+ # Distribution / packaging
14
+ .Python
15
+ build/
16
+ develop-eggs/
17
+ dist/
18
+ downloads/
19
+ eggs/
20
+ .eggs/
21
+ lib/
22
+ lib64/
23
+ parts/
24
+ sdist/
25
+ var/
26
+ wheels/
27
+ pip-wheel-metadata/
28
+ share/python-wheels/
29
+ *.egg-info/
30
+ .installed.cfg
31
+ *.egg
32
+ MANIFEST
33
+
34
+ # PyInstaller
35
+ # Usually these files are written by a python script from a template
36
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
37
+ *.manifest
38
+ *.spec
39
+
40
+ # Installer logs
41
+ pip-log.txt
42
+ pip-delete-this-directory.txt
43
+
44
+ # Unit test / coverage reports
45
+ htmlcov/
46
+ .tox/
47
+ .nox/
48
+ .coverage
49
+ .coverage.*
50
+ .cache
51
+ nosetests.xml
52
+ coverage.xml
53
+ *.cover
54
+ *.py,cover
55
+ .hypothesis/
56
+ .pytest_cache/
57
+
58
+ # Translations
59
+ *.mo
60
+ *.pot
61
+
62
+ # Django stuff:
63
+ *.log
64
+ local_settings.py
65
+ db.sqlite3
66
+ db.sqlite3-journal
67
+
68
+ # Flask stuff:
69
+ instance/
70
+ .webassets-cache
71
+
72
+ # Scrapy stuff:
73
+ .scrapy
74
+
75
+ # Sphinx documentation
76
+ docs/_build/
77
+
78
+ # PyBuilder
79
+ target/
80
+
81
+ # Jupyter Notebook
82
+ .ipynb_checkpoints
83
+
84
+ # IPython
85
+ profile_default/
86
+ ipython_config.py
87
+
88
+ # pyenv
89
+ .python-version
90
+
91
+ # pipenv
92
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
93
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
94
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
95
+ # install all needed dependencies.
96
+ #Pipfile.lock
97
+
98
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow
99
+ __pypackages__/
100
+
101
+ # Celery stuff
102
+ celerybeat-schedule
103
+ celerybeat.pid
104
+
105
+ # SageMath parsed files
106
+ *.sage.py
107
+
108
+ # Environments
109
+ .env
110
+ .venv
111
+ env/
112
+ venv/
113
+ ENV/
114
+ env.bak/
115
+ venv.bak/
116
+
117
+ # Spyder project settings
118
+ .spyderproject
119
+ .spyproject
120
+
121
+ # Rope project settings
122
+ .ropeproject
123
+
124
+ # mkdocs documentation
125
+ /site
126
+
127
+ # mypy
128
+ .mypy_cache/
129
+ .dmypy.json
130
+ dmypy.json
131
+
132
+ # Pyre type checker
133
+ .pyre/
134
+
135
+ # editors
136
+ .idea
137
+ .vscode
@@ -0,0 +1,21 @@
1
+ repos:
2
+ - repo: https://github.com/pre-commit/pre-commit-hooks
3
+ rev: v4.6.0
4
+ hooks:
5
+ - id: check-added-large-files
6
+ - id: check-toml
7
+ - id: check-yaml
8
+ - id: debug-statements
9
+ - id: end-of-file-fixer
10
+ - id: trailing-whitespace
11
+ - repo: https://github.com/pre-commit/mirrors-mypy
12
+ rev: v1.11.1
13
+ hooks:
14
+ - id: mypy
15
+ additional_dependencies: [pydantic, types-aiofiles, types-ujson]
16
+ - repo: https://github.com/astral-sh/ruff-pre-commit
17
+ rev: v0.6.1
18
+ hooks:
19
+ - id: ruff
20
+ args: [--fix, --exit-non-zero-on-fix]
21
+ - id: ruff-format