mirror of
				https://github.com/meilisearch/meilisearch.git
				synced 2025-10-30 23:46:28 +00:00 
			
		
		
		
	Bump serde-cs to simplify our usage of the star_or function
This commit is contained in:
		
							
								
								
									
										4
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										4
									
								
								Cargo.lock
									
									
									
										generated
									
									
									
								
							| @@ -3078,9 +3078,9 @@ dependencies = [ | ||||
|  | ||||
| [[package]] | ||||
| name = "serde-cs" | ||||
| version = "0.2.2" | ||||
| version = "0.2.3" | ||||
| source = "registry+https://github.com/rust-lang/crates.io-index" | ||||
| checksum = "18d5b0435c9139761fbe5abeb1283234bcfbde88fadc2ae432579648fbce72ad" | ||||
| checksum = "8202c9f3f58762d274952790ff8a1f1f625b5664f75e5dc1952c8dcacc64a925" | ||||
| dependencies = [ | ||||
|  "serde", | ||||
| ] | ||||
|   | ||||
| @@ -62,7 +62,7 @@ rustls = "0.20.4" | ||||
| rustls-pemfile = "0.3.0" | ||||
| segment = { version = "0.2.0", optional = true } | ||||
| serde = { version = "1.0.136", features = ["derive"] } | ||||
| serde-cs = "0.2.2" | ||||
| serde-cs = "0.2.3" | ||||
| serde_json = { version = "1.0.79", features = ["preserve_order"] } | ||||
| sha2 = "0.10.2" | ||||
| siphasher = "0.3.10" | ||||
|   | ||||
| @@ -99,7 +99,7 @@ pub async fn get_document( | ||||
|     let index = path.index_uid.clone(); | ||||
|     let id = path.document_id.clone(); | ||||
|     let GetDocument { fields } = params.into_inner(); | ||||
|     let attributes_to_retrieve = fields.map(CS::into_inner).and_then(fold_star_or); | ||||
|     let attributes_to_retrieve = fields.and_then(fold_star_or); | ||||
|  | ||||
|     let document = meilisearch | ||||
|         .document(index, id, attributes_to_retrieve) | ||||
| @@ -143,7 +143,7 @@ pub async fn get_all_documents( | ||||
|         offset, | ||||
|         fields, | ||||
|     } = params.into_inner(); | ||||
|     let attributes_to_retrieve = fields.map(CS::into_inner).and_then(fold_star_or); | ||||
|     let attributes_to_retrieve = fields.and_then(fold_star_or); | ||||
|  | ||||
|     let (total, documents) = meilisearch | ||||
|         .documents(path.into_inner(), offset, limit, attributes_to_retrieve) | ||||
|   | ||||
| @@ -50,23 +50,6 @@ pub struct SearchQueryGet { | ||||
|  | ||||
| impl From<SearchQueryGet> for SearchQuery { | ||||
|     fn from(other: SearchQueryGet) -> Self { | ||||
|         let attributes_to_retrieve = other | ||||
|             .attributes_to_retrieve | ||||
|             .map(CS::into_inner) | ||||
|             .and_then(fold_star_or); | ||||
|  | ||||
|         let attributes_to_crop = other | ||||
|             .attributes_to_crop | ||||
|             .map(CS::into_inner) | ||||
|             .and_then(fold_star_or); | ||||
|  | ||||
|         let attributes_to_highlight = other | ||||
|             .attributes_to_highlight | ||||
|             .map(CS::into_inner) | ||||
|             .and_then(fold_star_or); | ||||
|  | ||||
|         let facets = other.facets.map(CS::into_inner).and_then(fold_star_or); | ||||
|  | ||||
|         let filter = match other.filter { | ||||
|             Some(f) => match serde_json::from_str(&f) { | ||||
|                 Ok(v) => Some(v), | ||||
| @@ -75,20 +58,18 @@ impl From<SearchQueryGet> for SearchQuery { | ||||
|             None => None, | ||||
|         }; | ||||
|  | ||||
|         let sort = other.sort.map(|attr| fix_sort_query_parameters(&attr)); | ||||
|  | ||||
|         Self { | ||||
|             q: other.q, | ||||
|             offset: other.offset, | ||||
|             limit: other.limit.unwrap_or_else(DEFAULT_SEARCH_LIMIT), | ||||
|             attributes_to_retrieve, | ||||
|             attributes_to_crop, | ||||
|             attributes_to_retrieve: other.attributes_to_retrieve.and_then(fold_star_or), | ||||
|             attributes_to_crop: other.attributes_to_crop.and_then(fold_star_or), | ||||
|             crop_length: other.crop_length, | ||||
|             attributes_to_highlight, | ||||
|             attributes_to_highlight: other.attributes_to_highlight.and_then(fold_star_or), | ||||
|             filter, | ||||
|             sort, | ||||
|             sort: other.sort.map(|attr| fix_sort_query_parameters(&attr)), | ||||
|             show_matches_position: other.show_matches_position, | ||||
|             facets, | ||||
|             facets: other.facets.and_then(fold_star_or), | ||||
|             highlight_pre_tag: other.highlight_pre_tag, | ||||
|             highlight_post_tag: other.highlight_post_tag, | ||||
|             crop_marker: other.crop_marker, | ||||
|   | ||||
| @@ -81,9 +81,9 @@ async fn get_tasks( | ||||
|  | ||||
|     // We first transform a potential indexUid=* into a "not specified indexUid filter" | ||||
|     // for every one of the filters: type, status, and indexUid. | ||||
|     let type_: Option<Vec<_>> = type_.map(CS::into_inner).and_then(fold_star_or); | ||||
|     let status: Option<Vec<_>> = status.map(CS::into_inner).and_then(fold_star_or); | ||||
|     let index_uid: Option<Vec<_>> = index_uid.map(CS::into_inner).and_then(fold_star_or); | ||||
|     let type_: Option<Vec<_>> = type_.and_then(fold_star_or); | ||||
|     let status: Option<Vec<_>> = status.and_then(fold_star_or); | ||||
|     let index_uid: Option<Vec<_>> = index_uid.and_then(fold_star_or); | ||||
|  | ||||
|     // Then we filter on potential indexes and make sure that the search filter | ||||
|     // restrictions are also applied. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user