meilisearch-python-sdk 7.2.3__py3-none-any.whl → 7.4.0__py3-none-any.whl

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.
@@ -87,7 +87,7 @@ class AsyncClient(BaseClient):
87
87
  json_handler: The module to use for json operations. The options are BuiltinHandler
88
88
  (uses the json module from the standard library), or OrjsonHandler (uses orjson).
89
89
  Note that in order use orjson the corresponding extra needs to be included.
90
- Default: BuiltinHandler.
90
+ Default: OrjsonHandler if orjson is installed or BuiltinHandler if not.
91
91
  http2: Whether or not to use HTTP/2. Defaults to False.
92
92
  """
93
93
  super().__init__(api_key, custom_headers, json_handler)
@@ -11,6 +11,11 @@ from meilisearch_python_sdk.models.client import (
11
11
  )
12
12
  from meilisearch_python_sdk.types import JsonDict
13
13
 
14
+ try:
15
+ import orjson
16
+ except ImportError: # pragma: no cover
17
+ orjson = None # type: ignore
18
+
14
19
  if TYPE_CHECKING:
15
20
  from meilisearch_python_sdk.types import JsonMapping
16
21
 
@@ -22,7 +27,13 @@ class BaseClient:
22
27
  custom_headers: dict[str, str] | None = None,
23
28
  json_handler: BuiltinHandler | OrjsonHandler | None = None,
24
29
  ) -> None:
25
- self.json_handler = json_handler if json_handler else BuiltinHandler()
30
+ if json_handler is not None:
31
+ self.json_handler = json_handler
32
+ elif orjson is not None:
33
+ self.json_handler = OrjsonHandler()
34
+ else:
35
+ self.json_handler = BuiltinHandler()
36
+
26
37
  self._headers: dict[str, str] | None = None
27
38
  if api_key:
28
39
  self._headers = {"Authorization": f"Bearer {api_key}"}
@@ -88,7 +88,7 @@ class Client(BaseClient):
88
88
  json_handler: The module to use for json operations. The options are BuiltinHandler
89
89
  (uses the json module from the standard library), or OrjsonHandler (uses orjson).
90
90
  Note that in order use orjson the corresponding extra needs to be included.
91
- Default: BuiltinHandler.
91
+ Default: OrjsonHandler if orjson is installed or BuiltinHandler if not.
92
92
  http2: If set to True, the client will use HTTP/2. Defaults to False.
93
93
  """
94
94
  super().__init__(api_key, custom_headers, json_handler)
@@ -41,6 +41,9 @@ def build_multi_search_payload(
41
41
  if query.show_performance_details is None:
42
42
  del q["showPerformanceDetails"]
43
43
 
44
+ if query.personalize is None:
45
+ del q["personalize"]
46
+
44
47
  processed_queries.append(q)
45
48
 
46
49
  if federation:
@@ -1 +1 @@
1
- VERSION = "7.2.3"
1
+ VERSION = "7.4.0"
@@ -11,7 +11,7 @@ from pydantic import TypeAdapter
11
11
 
12
12
  from meilisearch_python_sdk.errors import MeilisearchError
13
13
  from meilisearch_python_sdk.json_handler import BuiltinHandler, OrjsonHandler
14
- from meilisearch_python_sdk.models.search import Hybrid
14
+ from meilisearch_python_sdk.models.search import Hybrid, Personalize
15
15
  from meilisearch_python_sdk.models.settings import (
16
16
  CompositeEmbedder,
17
17
  Embedders,
@@ -153,6 +153,7 @@ def process_search_parameters(
153
153
  exhaustive_facet_count: bool | None = None,
154
154
  media: JsonMapping | None = None,
155
155
  show_performance_details: bool = False,
156
+ personalize: Personalize | None = None,
156
157
  ) -> JsonDict:
157
158
  if attributes_to_retrieve is None:
158
159
  attributes_to_retrieve = ["*"]
@@ -213,6 +214,11 @@ def process_search_parameters(
213
214
  if show_performance_details:
214
215
  body["showPerformanceDetails"] = True
215
216
 
217
+ # no cover becuse personlized search requires an api key and any mocked test here would be
218
+ # pointless
219
+ if personalize is not None: # pragma: no cover
220
+ body["personalize"] = personalize.model_dump(by_alias=True)
221
+
216
222
  return body
217
223
 
218
224
 
@@ -36,6 +36,7 @@ from meilisearch_python_sdk.models.index import Field, FieldResults, FieldsFilte
36
36
  from meilisearch_python_sdk.models.search import (
37
37
  FacetSearchResults,
38
38
  Hybrid,
39
+ Personalize,
39
40
  SearchResults,
40
41
  SimilarSearchResults,
41
42
  )
@@ -44,6 +45,7 @@ from meilisearch_python_sdk.models.settings import (
44
45
  Faceting,
45
46
  FilterableAttributeFeatures,
46
47
  FilterableAttributes,
48
+ ForeignKey,
47
49
  LocalizedAttributes,
48
50
  MeilisearchSettings,
49
51
  Pagination,
@@ -593,6 +595,7 @@ class AsyncIndex(BaseIndex):
593
595
  retrieve_vectors: bool | None = None,
594
596
  media: JsonMapping | None = None,
595
597
  show_performance_details: bool = False,
598
+ personalize: Personalize | None = None,
596
599
  ) -> SearchResults:
597
600
  """Search the index.
598
601
 
@@ -663,6 +666,7 @@ class AsyncIndex(BaseIndex):
663
666
  without a major version bump so use with caution.
664
667
  show_performance_details: When set to true, the search response contains a performance
665
668
  trace. Default False.
669
+ personalize: Personalize the search results.
666
670
 
667
671
  Returns:
668
672
  Results of the search
@@ -709,6 +713,7 @@ class AsyncIndex(BaseIndex):
709
713
  retrieve_vectors=retrieve_vectors,
710
714
  media=media,
711
715
  show_performance_details=show_performance_details,
716
+ personalize=personalize,
712
717
  )
713
718
  search_url = f"{self._base_url_with_uid}/search"
714
719
 
@@ -739,6 +744,7 @@ class AsyncIndex(BaseIndex):
739
744
  show_ranking_score_details=show_ranking_score_details,
740
745
  vector=vector,
741
746
  hybrid=hybrid,
747
+ personalize=personalize,
742
748
  )
743
749
 
744
750
  if self._concurrent_search_plugins:
@@ -771,6 +777,7 @@ class AsyncIndex(BaseIndex):
771
777
  show_ranking_score=show_ranking_score,
772
778
  show_ranking_score_details=show_ranking_score_details,
773
779
  vector=vector,
780
+ personalize=personalize,
774
781
  )
775
782
  )
776
783
 
@@ -815,6 +822,7 @@ class AsyncIndex(BaseIndex):
815
822
  show_ranking_score=show_ranking_score,
816
823
  show_ranking_score_details=show_ranking_score_details,
817
824
  vector=vector,
825
+ personalize=personalize,
818
826
  )
819
827
  )
820
828
 
@@ -872,6 +880,7 @@ class AsyncIndex(BaseIndex):
872
880
  vector: list[float] | None = None,
873
881
  locales: list[str] | None = None,
874
882
  retrieve_vectors: bool | None = None,
883
+ personalize: Personalize | None = None,
875
884
  exhaustive_facet_count: bool | None = None,
876
885
  ) -> FacetSearchResults:
877
886
  """Search the index.
@@ -926,6 +935,7 @@ class AsyncIndex(BaseIndex):
926
935
  locales: Specifies the languages for the search. This parameter can only be used with
927
936
  Milisearch >= v1.10.0. Defaults to None letting the Meilisearch pick.
928
937
  retrieve_vectors: Return document vector data with search result.
938
+ personalize: Personalize the search results.
929
939
  exhaustive_facet_count: forcing the facet search to compute the facet counts the same
930
940
  way as the paginated search. This parameter can only be used with Milisearch >=
931
941
  v1.14.0. Defaults to None.
@@ -977,6 +987,7 @@ class AsyncIndex(BaseIndex):
977
987
  vector=vector,
978
988
  locales=locales,
979
989
  retrieve_vectors=retrieve_vectors,
990
+ personalize=personalize,
980
991
  exhaustive_facet_count=exhaustive_facet_count,
981
992
  )
982
993
  search_url = f"{self._base_url_with_uid}/facet-search"
@@ -1008,6 +1019,7 @@ class AsyncIndex(BaseIndex):
1008
1019
  ranking_score_threshold=ranking_score_threshold,
1009
1020
  vector=vector,
1010
1021
  exhaustive_facet_count=exhaustive_facet_count,
1022
+ personalize=personalize,
1011
1023
  )
1012
1024
 
1013
1025
  if self._concurrent_facet_search_plugins:
@@ -1041,6 +1053,7 @@ class AsyncIndex(BaseIndex):
1041
1053
  ranking_score_threshold=ranking_score_threshold,
1042
1054
  vector=vector,
1043
1055
  exhaustive_facet_count=exhaustive_facet_count,
1056
+ personalize=personalize,
1044
1057
  )
1045
1058
  )
1046
1059
 
@@ -1085,6 +1098,7 @@ class AsyncIndex(BaseIndex):
1085
1098
  ranking_score_threshold=ranking_score_threshold,
1086
1099
  vector=vector,
1087
1100
  exhaustive_facet_count=exhaustive_facet_count,
1101
+ personalize=personalize,
1088
1102
  )
1089
1103
  )
1090
1104
 
@@ -4665,6 +4679,81 @@ class AsyncIndex(BaseIndex):
4665
4679
 
4666
4680
  return TaskInfo(**self._http_requests.parse_json(response))
4667
4681
 
4682
+ async def get_foreign_keys(self) -> list[ForeignKey]:
4683
+ """Get foreign keys for the index.
4684
+
4685
+ Returns:
4686
+ A list of the foreign keys
4687
+
4688
+ Raises:
4689
+ MeilisearchCommunicationError: If there was an error communicating with the server.
4690
+ MeilisearchApiError: If the Meilisearch API returned an error.
4691
+
4692
+ Examples:
4693
+ >>> from meilisearch_async_client import AsyncClient
4694
+ >>> async with AsyncClient("http://localhost.com", "masterKey") as client:
4695
+ >>> index = await client.index("movies")
4696
+ >>> foreign_keys = await index.get_foreign_keys()
4697
+ """
4698
+ response = await self._http_requests.get(f"{self._settings_url}/foreign-keys")
4699
+ foreign_keys = self._http_requests.parse_json(response)
4700
+
4701
+ return [ForeignKey(**foreign_key) for foreign_key in foreign_keys]
4702
+
4703
+ async def update_foreign_keys(
4704
+ self,
4705
+ foreign_keys: Sequence[ForeignKey],
4706
+ *,
4707
+ compress: bool = False,
4708
+ ) -> TaskInfo:
4709
+ """Update setting for foreign key.
4710
+
4711
+ Args:
4712
+ foreign_keys: List of foreign keys.
4713
+ compress: If set to True the data will be sent in gzip format. Defaults to False.
4714
+
4715
+ Returns:
4716
+ The details of the task status.
4717
+
4718
+ Raises:
4719
+ MeilisearchCommunicationError: If there was an error communicating with the server.
4720
+ MeilisearchApiError: If the Meilisearch API returned an error.
4721
+
4722
+ Examples:
4723
+ >>> from meilisearch_python_sdk import AsyncClient
4724
+ >>> from meilisearch_python_sdk.models.settings import ForeignKey
4725
+ >>> async with AsyncClient("http://localhost.com", "masterKey") as client:
4726
+ >>> index = await client.index("movies")
4727
+ >>> await index.update_foreign_keys([ForeignKey(foreign_index_uid="title", field_name="title")])
4728
+ """
4729
+ response = await self._http_requests.put(
4730
+ f"{self._settings_url}/foreign-keys",
4731
+ [foreign_key.model_dump(by_alias=True) for foreign_key in foreign_keys],
4732
+ compress=compress,
4733
+ )
4734
+
4735
+ return TaskInfo(**self._http_requests.parse_json(response))
4736
+
4737
+ async def reset_foreign_keys(self) -> TaskInfo:
4738
+ """Reset the foreign keys setting.
4739
+
4740
+ Returns:
4741
+ The details of the task status.
4742
+
4743
+ Raises:
4744
+ MeilisearchCommunicationError: If there was an error communicating with the server.
4745
+ MeilisearchApiError: If the Meilisearch API returned an error.
4746
+
4747
+ Examples:
4748
+ >>> from meilisearch_async_client import AsyncClient
4749
+ >>> async with AsyncClient("http://localhost.com", "masterKey") as client:
4750
+ >>> index = await client.index("movies")
4751
+ >>> await index.reset_foreign_keys()
4752
+ """
4753
+ response = await self._http_requests.delete(f"{self._settings_url}/foreign-keys")
4754
+
4755
+ return TaskInfo(**self._http_requests.parse_json(response))
4756
+
4668
4757
  async def fields(
4669
4758
  self, offset: int = 0, limit: int = 20, filter: FieldsFilter | None = None
4670
4759
  ) -> FieldResults:
@@ -33,6 +33,7 @@ from meilisearch_python_sdk.models.index import Field, FieldResults, FieldsFilte
33
33
  from meilisearch_python_sdk.models.search import (
34
34
  FacetSearchResults,
35
35
  Hybrid,
36
+ Personalize,
36
37
  SearchResults,
37
38
  SimilarSearchResults,
38
39
  )
@@ -41,6 +42,7 @@ from meilisearch_python_sdk.models.settings import (
41
42
  Faceting,
42
43
  FilterableAttributeFeatures,
43
44
  FilterableAttributes,
45
+ ForeignKey,
44
46
  LocalizedAttributes,
45
47
  MeilisearchSettings,
46
48
  Pagination,
@@ -531,6 +533,7 @@ class Index(BaseIndex):
531
533
  retrieve_vectors: bool | None = None,
532
534
  media: JsonMapping | None = None,
533
535
  show_performance_details: bool = False,
536
+ personalize: Personalize | None = None,
534
537
  ) -> SearchResults:
535
538
  """Search the index.
536
539
 
@@ -601,6 +604,7 @@ class Index(BaseIndex):
601
604
  without a major version bump so use with caution.
602
605
  show_performance_details: When set to true, the search response contains a performance
603
606
  trace. Default False.
607
+ personalize: Personalize the search results.
604
608
 
605
609
  Returns:
606
610
  Results of the search
@@ -647,6 +651,7 @@ class Index(BaseIndex):
647
651
  retrieve_vectors=retrieve_vectors,
648
652
  media=media,
649
653
  show_performance_details=show_performance_details,
654
+ personalize=personalize,
650
655
  )
651
656
 
652
657
  if self._pre_search_plugins:
@@ -676,6 +681,7 @@ class Index(BaseIndex):
676
681
  show_ranking_score_details=show_ranking_score_details,
677
682
  vector=vector,
678
683
  hybrid=hybrid,
684
+ personalize=personalize,
679
685
  )
680
686
 
681
687
  response = self._http_requests.post(f"{self._base_url_with_uid}/search", body=body)
@@ -716,6 +722,7 @@ class Index(BaseIndex):
716
722
  vector: list[float] | None = None,
717
723
  locales: list[str] | None = None,
718
724
  retrieve_vectors: bool | None = None,
725
+ personalize: Personalize | None = None,
719
726
  exhaustive_facet_count: bool | None = None,
720
727
  ) -> FacetSearchResults:
721
728
  """Search the index.
@@ -773,6 +780,7 @@ class Index(BaseIndex):
773
780
  exhaustive_facet_count: forcing the facet search to compute the facet counts the same
774
781
  way as the paginated search. This parameter can only be used with Milisearch >=
775
782
  v1.14.0. Defaults to None.
783
+ personalize: Personalize the search results.
776
784
 
777
785
  Returns:
778
786
  Results of the search
@@ -821,6 +829,7 @@ class Index(BaseIndex):
821
829
  vector=vector,
822
830
  locales=locales,
823
831
  retrieve_vectors=retrieve_vectors,
832
+ personalize=personalize,
824
833
  exhaustive_facet_count=exhaustive_facet_count,
825
834
  )
826
835
 
@@ -850,6 +859,7 @@ class Index(BaseIndex):
850
859
  show_ranking_score_details=show_ranking_score_details,
851
860
  ranking_score_threshold=ranking_score_threshold,
852
861
  vector=vector,
862
+ personalize=personalize,
853
863
  exhaustive_facet_count=exhaustive_facet_count,
854
864
  )
855
865
 
@@ -3716,6 +3726,80 @@ class Index(BaseIndex):
3716
3726
 
3717
3727
  return TaskInfo(**self._http_requests.parse_json(response))
3718
3728
 
3729
+ def get_foreign_keys(self) -> list[ForeignKey]:
3730
+ """Get foreign keys for the index.
3731
+
3732
+ Returns:
3733
+ A list of the foreign keys
3734
+
3735
+ Raises:
3736
+ MeilisearchCommunicationError: If there was an error communicating with the server.
3737
+ MeilisearchApiError: If the Meilisearch API returned an error.
3738
+
3739
+ Examples:
3740
+ >>> from meilisearch_async_client import AsyncClient
3741
+ >>> with Client("http://localhost.com", "masterKey") as client:
3742
+ >>> index = client.index("movies")
3743
+ >>> foreign_keys = index.get_foreign_keys()
3744
+ """
3745
+ response = self._http_requests.get(f"{self._settings_url}/foreign-keys")
3746
+ foreign_keys = self._http_requests.parse_json(response)
3747
+
3748
+ return [ForeignKey(**foreign_key) for foreign_key in foreign_keys]
3749
+
3750
+ def update_foreign_keys(
3751
+ self,
3752
+ foreign_keys: Sequence[ForeignKey],
3753
+ *,
3754
+ compress: bool = False,
3755
+ ) -> TaskInfo:
3756
+ """Update setting for foreign key.
3757
+
3758
+ Args:
3759
+ foreign_keys: List of foreign keys.
3760
+ compress: If set to True the data will be sent in gzip format. Defaults to False.
3761
+
3762
+ Returns:
3763
+ The details of the task status.
3764
+
3765
+ Raises:
3766
+ MeilisearchCommunicationError: If there was an error communicating with the server.
3767
+ MeilisearchApiError: If the Meilisearch API returned an error.
3768
+
3769
+ Examples:
3770
+ >>> from meilisearch_python_sdk import AsyncClient
3771
+ >>> with Client("http://localhost.com", "masterKey") as client:
3772
+ >>> index = client.index("movies")
3773
+ >>> index.update_foreign_keys([ForeignKey(foreign_index_uid="title", field_name="title")])
3774
+ """
3775
+ response = self._http_requests.put(
3776
+ f"{self._settings_url}/foreign-keys",
3777
+ [foreign_key.model_dump(by_alias=True) for foreign_key in foreign_keys],
3778
+ compress=compress,
3779
+ )
3780
+
3781
+ return TaskInfo(**self._http_requests.parse_json(response))
3782
+
3783
+ def reset_foreign_keys(self) -> TaskInfo:
3784
+ """Reset the foreign keys setting.
3785
+
3786
+ Returns:
3787
+ The details of the task status.
3788
+
3789
+ Raises:
3790
+ MeilisearchCommunicationError: If there was an error communicating with the server.
3791
+ MeilisearchApiError: If the Meilisearch API returned an error.
3792
+
3793
+ Examples:
3794
+ >>> from meilisearch_async_client import AsyncClient
3795
+ >>> with Client("http://localhost.com", "masterKey") as client:
3796
+ >>> index = client.index("movies")
3797
+ >>> index.reset_foreign_keys()
3798
+ """
3799
+ response = self._http_requests.delete(f"{self._settings_url}/foreign-keys")
3800
+
3801
+ return TaskInfo(**self._http_requests.parse_json(response))
3802
+
3719
3803
  def fields(
3720
3804
  self, offset: int = 0, limit: int = 20, filter: FieldsFilter | None = None
3721
3805
  ) -> FieldResults:
@@ -46,6 +46,10 @@ class FederationOptions(CamelBase):
46
46
  weight: float
47
47
 
48
48
 
49
+ class Personalize(CamelBase):
50
+ user_context: str
51
+
52
+
49
53
  class SearchParams(CamelBase):
50
54
  index_uid: str
51
55
  query: str | None = Field(None, alias="q")
@@ -76,6 +80,7 @@ class SearchParams(CamelBase):
76
80
  retrieve_vectors: bool | None = None
77
81
  media: JsonMapping | None = None
78
82
  show_performance_details: bool | None = None
83
+ personalize: Personalize | None = None
79
84
 
80
85
  @field_validator("ranking_score_threshold", mode="before") # type: ignore[attr-defined]
81
86
  @classmethod
@@ -163,6 +163,11 @@ class FilterableAttributes(CamelBase):
163
163
  features: FilterableAttributeFeatures
164
164
 
165
165
 
166
+ class ForeignKey(CamelBase):
167
+ foreign_index_uid: str
168
+ field_name: str
169
+
170
+
166
171
  class MeilisearchSettings(CamelBase):
167
172
  synonyms: JsonDict | None = None
168
173
  stop_words: list[str] | None = None
@@ -195,3 +200,4 @@ class MeilisearchSettings(CamelBase):
195
200
  localized_attributes: list[LocalizedAttributes] | None = None
196
201
  facet_search: bool | None = None
197
202
  prefix_search: Literal["disabled", "indexingTime", "searchTime"] | None = None
203
+ foreign_keys: list[ForeignKey] | None = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: meilisearch-python-sdk
3
- Version: 7.2.3
3
+ Version: 7.4.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
@@ -53,7 +53,6 @@ Description-Content-Type: text/markdown
53
53
  # Meilisearch Python SDK
54
54
 
55
55
  [![Tests Status](https://github.com/sanders41/meilisearch-python-sdk/actions/workflows/testing.yml/badge.svg?branch=main&event=push)](https://github.com/sanders41/meilisearch-python-sdk/actions?query=workflow%3ATesting+branch%3Amain+event%3Apush)
56
- [![pre-commit.ci status](https://results.pre-commit.ci/badge/github/sanders41/meilisearch-python-sdk/main.svg)](https://results.pre-commit.ci/latest/github/sanders41/meilisearch-python-sdk/main)
57
56
  [![Coverage](https://codecov.io/github/sanders41/meilisearch-python-sdk/coverage.svg?branch=main)](https://codecov.io/gh/sanders41/meilisearch-python-sdk)
58
57
  [![PyPI version](https://badge.fury.io/py/meilisearch-python-sdk.svg)](https://badge.fury.io/py/meilisearch-python-sdk)
59
58
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/meilisearch-python-sdk?color=5cc141)](https://github.com/sanders41/meilisearch-python-sdk)
@@ -77,6 +76,12 @@ environment is created and activated, install the package with:
77
76
  pip install meilisearch-python-sdk
78
77
  ```
79
78
 
79
+ Installing with the orjson extra will make JSON serilization/deserilization faster.
80
+
81
+ ```sh
82
+ pip install meilisearch-python-sdk[orjson]
83
+ ```
84
+
80
85
  ## Run Meilisearch
81
86
 
82
87
  There are several ways to
@@ -3,7 +3,7 @@ meilisearch_python_sdk/_batch.py,sha256=PQyXyERVQwnxIFMthZ6zVqi2ZbQbMBs6TgUPdLbJ
3
3
  meilisearch_python_sdk/_http_requests.py,sha256=81UPpbNIHsEUlaue5Cgn8WZ4M6byVcrzA7lAEkcd10I,7852
4
4
  meilisearch_python_sdk/_task.py,sha256=lQp2n5ZjD8HboEP6Xid0Z275Jcr4GuXwh_LzpVY5LAo,13189
5
5
  meilisearch_python_sdk/_utils.py,sha256=6Yy0tRe6V0kocVmaYb0rO2Hw2GmvEeY_XLY05P5bMq0,4317
6
- meilisearch_python_sdk/_version.py,sha256=FIS2MIPS0ff2pJkakLh3vmrrmpjt06LAIj0_Uzp8a_E,18
6
+ meilisearch_python_sdk/_version.py,sha256=SfgjTp9PtjkUwBKjIBXtdYCfwqzAkRbzcf7Cq-wf4W4,18
7
7
  meilisearch_python_sdk/decorators.py,sha256=wgznbwCYRc1_nVfQaOgj7DcOMejB9mJIWqltW6CimnY,8836
8
8
  meilisearch_python_sdk/errors.py,sha256=8cJpHJbJR7t6Tyt15yXVUpNYKbfWt2HTKiBCISDIBrA,3352
9
9
  meilisearch_python_sdk/json_handler.py,sha256=lzwiBP4ASjdBiBLQAjp9akbL-9TnaWnu8Ayy380R_s0,2121
@@ -11,26 +11,26 @@ meilisearch_python_sdk/plugins.py,sha256=ACk07_3ySHnz_clF3IiJRKeAlSGhpyQfn4taqAo
11
11
  meilisearch_python_sdk/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
12
  meilisearch_python_sdk/types.py,sha256=nf-_ZjbPVGdVg-spkfFoaGebQvzmWqiDWuyBwR_qWJk,473
13
13
  meilisearch_python_sdk/_client/__init__.py,sha256=ld4FGQM5wt-Ygtt4z4UgZKL8dQ1jY98NY1Fst_-bhA4,164
14
- meilisearch_python_sdk/_client/_async_client.py,sha256=OCIDZFx-UdlWcyCmt8FVpxOw0ZpIA-Z2i170ifNmk00,48822
15
- meilisearch_python_sdk/_client/_base_client.py,sha256=FfNigpAOibsjkzlMf2FOv68DRcVYp4D0Nii0RW3C-Tc,3992
16
- meilisearch_python_sdk/_client/_client.py,sha256=hsOdiyery3I6ksOvoX2BQvz_LFojhoYQMKFp8t_fozc,47313
17
- meilisearch_python_sdk/_client/_common.py,sha256=7aMbLK5ZkuhA_I_2wUomgvVdGHVGF6DJgqfwzO7jnpw,3069
14
+ meilisearch_python_sdk/_client/_async_client.py,sha256=TAMXyPlTQRmUYliIZrA8f4HDzxZTnMUIjvQB8eCXsqk,48869
15
+ meilisearch_python_sdk/_client/_base_client.py,sha256=z5YYi_ke6SVd58kwlVTrlbA_2CnxwCMCoMZxJxg8Tuo,4238
16
+ meilisearch_python_sdk/_client/_client.py,sha256=DbQBaCEFKXBrrGWhX7aM6TTO13iwM_4bvcCBltPILDs,47360
17
+ meilisearch_python_sdk/_client/_common.py,sha256=WLssNzHkSRw_j98kTV-qfzqc5AcCZ_Utar2hn2fShso,3141
18
18
  meilisearch_python_sdk/index/__init__.py,sha256=sULiCF_Gqa66SDLuyvlHQ1NW-6ch5sWU6UNZ572sdEA,152
19
- meilisearch_python_sdk/index/_common.py,sha256=q6IqRpvmUIpOWuoa_XDuv_MsKB8XN1AQljgemN0Cha8,11009
20
- meilisearch_python_sdk/index/async_index.py,sha256=B1lSENtrPLx0W7VD3fyuh6lMsOx4zsGF_1N4nP93Ihk,208413
21
- meilisearch_python_sdk/index/index.py,sha256=Rd3VD64OggfYYC24EfJz3PYDW58XMFUOvK-VoS_4Org,158356
19
+ meilisearch_python_sdk/index/_common.py,sha256=zX0vE4C9dMYzijJzGFFVWDy5fw_xwP7ZCJFRMaprT58,11298
20
+ meilisearch_python_sdk/index/async_index.py,sha256=AaBWu0_z-fdu-ccIkwRDC_YTTnqpavrOEEmsSTSTD-U,212048
21
+ meilisearch_python_sdk/index/index.py,sha256=x4zqZYoC9E5Eq0kERjObHItEPA1axFeHQD8MsGIsrnM,161580
22
22
  meilisearch_python_sdk/models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
23
23
  meilisearch_python_sdk/models/batch.py,sha256=xgEfOuHKBmxzmzOddt6ZW-o1G6s0QVeIBt7S94k7QrE,1147
24
24
  meilisearch_python_sdk/models/client.py,sha256=BlYQtckkREp3_-kvxSqGfn2UhFvDp23QyxtlrSDwinA,1769
25
25
  meilisearch_python_sdk/models/documents.py,sha256=eT3FHrPND-g2IzNRyOHQApTTJ1WbFcGlqgxZ6aKrRgI,247
26
26
  meilisearch_python_sdk/models/health.py,sha256=hvruti7ylsk7bAh8RPOhTPcRrjx6MPgdkDFX9vZ5Qks,95
27
27
  meilisearch_python_sdk/models/index.py,sha256=7UpnXnstIFBysod_6ELy0723Oj8zXvGyJGla_T7sWn8,1745
28
- meilisearch_python_sdk/models/search.py,sha256=tdgzELIWTlZTJreA-vAb15QID7fXXuSWh3TpQ5YA7aY,3807
29
- meilisearch_python_sdk/models/settings.py,sha256=lc0YYnqpMF3szWuKWAiGMKJGmqHO6HzmjhKdLet2z0Y,5747
28
+ meilisearch_python_sdk/models/search.py,sha256=URNS9zlpyiic2IKNc8RNtHohLZqjrbC8GOQWR5RAUb0,3904
29
+ meilisearch_python_sdk/models/settings.py,sha256=kocYiTiAqPXi6-wCUs0sUkxJouks0747tnAW_iUATtY,5874
30
30
  meilisearch_python_sdk/models/task.py,sha256=nDD-S7K-uL4gcYU-tyPstBWcnJi_8MiDwc53GG6i304,1105
31
31
  meilisearch_python_sdk/models/version.py,sha256=ISU-ZHgpXLBFDuMpWWfKdVo9Dq1HcD7s6HFnCiGTF8Y,184
32
32
  meilisearch_python_sdk/models/webhook.py,sha256=zSkEJJdEflinW3_seJTLQ_ZWs4w-pjTD3SS1ZawC32k,455
33
- meilisearch_python_sdk-7.2.3.dist-info/METADATA,sha256=2HxF6rIEcTCw2S77NMx2rw6iTMoAizszeWlxtQWyXxA,9597
34
- meilisearch_python_sdk-7.2.3.dist-info/WHEEL,sha256=mffPy8wBnZQn2VnJUU5jE99KsxaSfiyMHV9Yt0aLVxs,87
35
- meilisearch_python_sdk-7.2.3.dist-info/licenses/LICENSE,sha256=xVzevI1TrlKfM0plmJ7vfK1Muu0V9n-dGE8RnDrOFlM,1069
36
- meilisearch_python_sdk-7.2.3.dist-info/RECORD,,
33
+ meilisearch_python_sdk-7.4.0.dist-info/METADATA,sha256=_xbodcFYsBKb5yTZTqY1x66JCFntyYhHDQdOOVWj3wc,9541
34
+ meilisearch_python_sdk-7.4.0.dist-info/WHEEL,sha256=lCkmxWfQsSc9CfIClYeavTdQeEX2toPqufh9gI35EQA,87
35
+ meilisearch_python_sdk-7.4.0.dist-info/licenses/LICENSE,sha256=xVzevI1TrlKfM0plmJ7vfK1Muu0V9n-dGE8RnDrOFlM,1069
36
+ meilisearch_python_sdk-7.4.0.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: hatchling 1.30.1
2
+ Generator: hatchling 1.31.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any