25ec51e783
Merge #2601
...
2601: Ease search result pagination r=Kerollmops a=ManyTheFish
# Summary
This PR is a prototype enhancing search results pagination (#2577 )
# Todo
- [x] Update the API to return the number of pages and allow users to directly choose a page instead of computing an offset
- [x] Change computation of `total_pages` in order to have an exact count
- [x] compute query tree exhaustively
- [x] compute distinct exhaustively
# Small Documentation
## Default search query
**request**:
```sh
curl \
-X POST 'http://localhost:7700/indexes/movies/search ' \
-H 'Content-Type: application/json' \
--data-binary '{ "q": "botman" }'
```
**result**:
```json
{
"hits":[...],
"query":"botman",
"processingTimeMs":5,
"hitsPerPage":20,
"page":1,
"totalPages":4,
"totalHits":66
}
```
## Search query with offset parameter
**request**:
```sh
curl \
-X POST 'http://localhost:7700/indexes/movies/search ' \
-H 'Content-Type: application/json' \
--data-binary '{ "q": "botman", "offset": 0 }'
```
**result**:
```json
{
"hits":[...],
"query":"botman",
"processingTimeMs":3,
"limit":20,
"offset":0,
"estimatedTotalHits":66
}
```
## Search query selecting page with page parameter
**request**:
```sh
curl \
-X POST 'http://localhost:7700/indexes/movies/search ' \
-H 'Content-Type: application/json' \
--data-binary '{ "q": "botman", "page": 2 }'
```
**result**:
```json
{
"hits":[...],
"query":"botman",
"processingTimeMs":5,
"hitsPerPage":20,
"page":2,
"totalPages":4,
"totalHits":66
}
```
# Related
fixes #2577
## In charge of the feature
Core: `@ManyTheFish`
Docs: `@guimachiavelli`
Integration: `@bidoubiwa`
Co-authored-by: ManyTheFish <many@meilisearch.com >
2022-10-26 16:10:58 +00:00
4afed4de4f
stabilize milli
2022-10-24 14:16:41 +02:00
062d17fbc0
Use a milli version that compute exhaustivelly the number of hits
2022-10-19 14:05:42 +02:00
1a61209596
fix wrong variant returned for invalid_api_key_indexes error
2022-10-18 19:41:06 +05:30
1b72eba1f3
Merge #2867
...
2867: Bring back `stable` into `main` r=Kerollmops a=curquiza
Following hotfix for v0.29.1
Co-authored-by: Loïc Lecrenier <loic@meilisearch.com >
Co-authored-by: Clémentine Urquizar <clementine@meilisearch.com >
Co-authored-by: bors[bot] <26634292+bors[bot]@users.noreply.github.com>
2022-10-06 14:14:23 +00:00
05af8f0e46
Update version for next release (v0.29.1)
2022-10-06 10:27:11 +02:00
a2c91a87fe
Upgrade dependencies
...
Except:
- clap stays on 3.0 because it is more complicated to upgrade
- enum_iterator goes up to 1.1.2 instead of 1.2 because of the vergen
dependency
2022-10-05 15:53:02 +02:00
a7d2c9572e
Merge branch 'main' into stable
2022-10-04 14:20:10 +02:00
935f18efcf
Allow building without specialized tokenizations
...
(Some of) these specialized tokenizations include huge dictionaries
that currently account for 90% (!) of the meilisearch binary size.
This commit adds chinese, hebrew, japanese, and thai feature flags
that are propagated via milli down to the charabia crate. To keep it
backward compatible, they are enabled by default.
Related to meilisearch/milli#632
2022-09-14 21:16:34 +02:00
5b57114771
Bump milli from 0.33.0 to 0.33.4
2022-09-14 20:52:11 +02:00
268d59ccb1
Update milli version to v0.33.4
2022-09-13 18:01:09 +02:00
441492f1c8
Bump milli to v0.33.3
2022-09-07 18:23:49 +02:00
37dc6537c3
Fix api keys bugs ( #2734 )
...
* Add some tests
* Disallow index creation when API key doesn't havec explicitelly the right on the creating index
* Fix lazy index creation with `indexes.*` action
2022-09-06 15:13:09 +02:00
50434d35d0
Update milli v0.33.2
2022-09-01 13:15:05 +02:00
f0b2ac6efb
metrics.all must define metrics.get
2022-08-24 17:03:30 +02:00
2c2efc7ab6
Remove the hand written numbers of the actions rights
2022-08-24 16:33:12 +02:00
381df43be4
Change the metrics route API access rights
2022-08-24 16:28:33 +02:00
aff4b64265
Update dependencies
2022-08-23 16:39:39 +02:00
6fe3f285ce
Update version for next release (v0.29.0)
2022-08-23 13:39:56 +02:00
fe32097964
Update milli v0.32
2022-07-28 14:45:10 +02:00
9cf6acb671
Fix highlight issue by updating milli to v0.31.2
2022-07-21 14:11:24 +04:00
d01a3ab889
Update version for next release (v0.28.1)
2022-07-20 15:46:53 +04:00
8e370ed9ab
Merge branch 'main' into stable
2022-07-11 14:41:15 +02:00
074a6a0cce
Fix typos in HeadAuthStore::put_api_key
2022-07-06 22:24:46 -04:00
fb9b298645
Leave actions as HashSet
2022-07-05 21:52:50 -04:00
23f02f241e
Run the code formatter
2022-07-05 21:08:56 -04:00
5d80ff41a2
Clean up put_key impl
2022-07-05 21:06:58 -04:00
a146fd45b9
Format API keys in hexa instead of base64
2022-07-05 16:14:18 +02:00
63e1fb4f96
Run the code formatter
2022-07-04 21:49:40 -04:00
c251b527b0
Add iterators over * for stats, dumps, tasks, settings, and indexes; change documents impl to prevent duplication
2022-07-04 21:38:31 -04:00
1dc3724c1f
Added [...]_ALL enum members in action.rs
2022-07-04 21:38:21 -04:00
7feb15df28
Bump milli to 0.31.1
2022-06-23 10:47:48 +02:00
6f910f89eb
Ran formatter on the code.
2022-06-15 22:23:38 +01:00
9a8fb6c55a
Updated actions identifiers to be in a more pleasing order
2022-06-15 17:27:41 +01:00
4016161035
Provide all document related permissions for action document.*
2022-06-15 16:11:39 +01:00
2063fbd985
chore: bump milli
2022-06-09 18:34:03 +02:00
b8745420da
Use the IndexUid
and StarOr
in meilisearch_auth::Key
...
Move `meilisearch_http::routes::StarOr` to `meilisearch_types::star_or`
Fixes #2158
2022-06-09 16:14:15 +02:00
36cb09eb25
Add a new meilisearch_types
crate
...
Move `meilisearch_error` to `meilisearch_types::error`
Move `meilisearch_lib::index_resolver::IndexUid` to `meilisearch_types::index_uid`
Add a new `InvalidIndexUid` error in `meilisearch_types::index_uid`
2022-06-09 16:14:13 +02:00
b9b32d65a8
Merge #2494
...
2494: Introduce the new faceting and pagination settings r=ManyTheFish a=Kerollmops
This PR introduces two new settings following the newly created spec https://github.com/meilisearch/specifications/pull/157 :
- The `faceting.max_values_per_facet` one describes the maximum number of values (each with a count) associated with a value in a facet distribution query.
- The `pagination.limited_to` one describes the maximum number of documents that a search query can ever return.
Co-authored-by: Kerollmops <clement@meilisearch.com >
2022-06-09 12:09:21 +00:00
c924614527
Bump milli to 0.29.2
2022-06-09 10:54:28 +02:00
fc4990b968
Update version for next release (v0.28.0)
2022-06-08 17:59:18 +02:00
6171f17f1d
Merge #2468
...
2468: Update milli 0.29 r=Kerollmops a=ManyTheFish
- [x] Update milli to 0.29
- [x] Integrate charabia
- [x] Set disabled_words to default when Index::exact_words returns None
- [x] Fix ranking rules integration test
fixes #2375
fixes #2144
fixes #2417
fixes #2407
Co-authored-by: ManyTheFish <many@meilisearch.com >
2022-06-08 14:29:20 +00:00
1a7631c807
Hash master_key before passing it to HMAC
2022-06-08 14:54:47 +02:00
8d09772334
Update milli
2022-06-08 14:38:05 +02:00
987a7f8926
Wrap sha256 in HMAC instead of directly use sha256
2022-06-08 14:25:12 +02:00
3b01ed4fe8
feat(auth): remove dumps.get
action from keys
2022-06-07 10:49:28 +02:00
3e46543060
Improve Store Readability
...
Signed-off-by: Ryan Russell <git@ryanrussell.org >
2022-06-04 20:42:53 -05:00
9eea142e2b
feat(API-keys): Change immutable_field error message
...
Change the immutable_field error message to fit the recent changes in the spec:
aa0a148ee3..84a9baff68
2022-06-02 11:11:07 +02:00
4512eed8f5
Fix PR comments
2022-06-01 18:06:20 +02:00
7652295d2c
Encode key in base64 instead of hexa
2022-06-01 16:17:47 +02:00