-
Notifications
You must be signed in to change notification settings - Fork 90
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update key management v0.28 #1266
Update key management v0.28 #1266
Conversation
5de1bd2
to
02dadae
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good work! 🎉
actions: ['documents.add'], | ||
indexes: ['products'], | ||
expiresAt: '2050-11-13T00:00:00Z', // Test will fail in 2050 | ||
const customKeys = keys.results.filter( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why not just remove every key?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would lose the admin key and the search key that are used in other tests! I would have to re-create ones in every test
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, this way you can ensure each of your tests will have what they need no matter what is the state of your Meilisearch instance.
But since this could be led to a lot of changes I don't expect that for now, but could be in the future if you agree :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 🔥
6801047
to
ce300a1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎉
f4f6c34
to
0aa0749
Compare
1294: Update version for the next release (v0.27.0) r=bidoubiwa a=bidoubiwa This version makes this package compatible with Meilisearch v0.28.0 🎉 Check out the changelog of [Meilisearch v0.28.0](https://github.com/meilisearch/meilisearch/releases/tag/v0.28.0) for more information on the changes. ## 💥 Breaking changes - `client.updateKey(key: string, options: KeyPayload): Promise<Key>` now can just update the `description` and/or the name. #1266 - The type `EnqueuedTask` now returns an `taskUid` instead of an `uid` - `client.getTasks(...)` and `index.getTasks()` now returns a TasksResults type containing the following fields: `results`, `limit`, `from`, `next` #1269 - `index.search` changes in the response parameters: #1263 - `nbHits` replaced with `estimatedTotalHits` - `exhaustiveNbHits` is deleted - `exhaustiveFacetsCount` is deleted - `index.search` changes in the request parameters: #1263 - `matches` renamed `showMatchesPosition` - `_matchesInfo` response parameter is renamed `_matchesPosition` - `facetsDistribution` request parameter is renamed `facets`. - `facetsDistribution` response parameter is renamed `facetDistribution`. - The `Index` type and returned `IndexObject` does not contain a `name` field anymore - `client.getIndexes` and `client.getRawIndexes` now returns an `IndexesResults` type containing the following fields: `results`, `limit`, `offset`, `total` #1269 - `index.getDocuments` and `client.getDocuments` now returns an `DocumentsResults` type containing the following fields: `results`, `limit`, `offset`, `total` #1269 - `index.getDocuments` and `index.getDocument` query parameter `attributesToRetrieve` is now called `fields` #1264 - `client.getDumpStatus` has been removed #1267 - `client.createDump()` now returns an `EnqueuedTask` #1267 - `client.generateTenantToken(apiKeyUid, searchRules, options)` has now a mandatory `apiKeyUid` parameter which should contain the uid of a specific API key. #1268 ## 🚀 Enhancements - `client.getKeys(parameters: KeysQuery = {})` now accepts pagination parameters: `limit`, `offset` #1269 - `client.getKey(keyOrUid: string)` can now also find keys based on their key uid. #1266 - `client.createKey(options: KeyCreation)` lets you specify a custom uid (optionally) to create a new Key #1269 - The returned `Key` now has an additional `name` and `uid` string fields. #1266 - The `indexUid` field in both `EnqueuedTask` and `Task` can be null #1259 - `client.getTasks(parameters: TasksQuery = {})` and `index.getTasks(parameters: TasksQuery)` now accepts pagination parameters: `limit`, `from`, `next` and filters parameters: `type`, `status`, `indexUid` (same for `index.getTasks`) #1269 - `client.getIndexes` and `client.getRawIndexes` now accepts pagination parameters: `limit`, `offset` #1269 - `index.getDocuments` now accepts pagination parameters: `limit`, `offset` #1269 - `new MeiliSearch({ host, apiKey, headers, clientAgents })` now accept a new parameter `clientAgents` that should contain the agent from which the library is used. #1272 Analytics is enabled by default in the server, but you can disable them by following [this guide](https://docs.meilisearch.com/learn/what_is_meilisearch/telemetry.html#how-to-disable-data-collection) Also, of course, every analytics data we collect are **ANONYMOUS** [read the guide for more information](https://docs.meilisearch.com/learn/what_is_meilisearch/telemetry.html). Thanks again to `@bidoubiwa` ! 🎉 Co-authored-by: Charlotte Vermandel <[email protected]>
Changes related to the
keys
managementRelated to:
issue: meilisearch/meilisearch#2442
issue: meilisearch/meilisearch#2369
GET /keys/:uid_or_key
can receive either a:uid
or:key
to find the key, not just the:key
how it used to be.:uid
to generate deterministic API keys ifnull
Meilisearch generates one. It must be a UUID v4 value.:name
attribute to the resource (can be null).keys.get
,keys.create
,keys.update
andkeys.delete
.PATCH /keys/:uid_or_key
can update onlyname
anddescription
fields.