Skip to content
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 token creation v0.28.0 #1268

Merged
merged 12 commits into from
Jun 27, 2022

Conversation

bidoubiwa
Copy link
Contributor

@bidoubiwa bidoubiwa commented Jun 22, 2022

as per the spec

  • apiKeyPrefix claim is now named apiKeyUid and expects the uid of the signing API key as a value.

New usage

Function prototype:

generateTenantToken(
    apiKeyUid: string,
    searchRules: TokenSearchRules,
    options?: TokenOptions
  ): string

Usage example:

  const token = client.generateTenantToken(uid, ['*'], {
        expiresAt: date,
      })

@bidoubiwa bidoubiwa added the skip-changelog The PR will not appear in the release changelogs label Jun 22, 2022
@bidoubiwa bidoubiwa requested review from brunoocasali and mdubus June 22, 2022 14:48
src/clients/client.ts Outdated Show resolved Hide resolved
@bidoubiwa bidoubiwa requested a review from mdubus June 22, 2022 15:21
@bidoubiwa bidoubiwa force-pushed the update_token_creation_v0.28.0 branch from b4da369 to a19e0f4 Compare June 22, 2022 15:21
@bidoubiwa bidoubiwa added breaking-change The related changes are breaking for the users and removed skip-changelog The PR will not appear in the release changelogs labels Jun 23, 2022
Copy link
Member

@brunoocasali brunoocasali left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left some comments you may want to address then, in any case is good to me! 🎉

src/token.ts Show resolved Hide resolved
src/token.ts Show resolved Hide resolved
tests/token.test.ts Outdated Show resolved Hide resolved
tests/token.test.ts Outdated Show resolved Hide resolved
@bidoubiwa bidoubiwa requested a review from brunoocasali June 27, 2022 09:59
src/token.ts Outdated Show resolved Hide resolved
src/token.ts Outdated Show resolved Hide resolved
src/token.ts Outdated Show resolved Hide resolved
@bidoubiwa bidoubiwa merged commit b61f466 into bump-meilisearch-v0.28.0 Jun 27, 2022
@bidoubiwa bidoubiwa deleted the update_token_creation_v0.28.0 branch June 27, 2022 14:54
meili-bors bot added a commit that referenced this pull request Jul 11, 2022
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]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking-change The related changes are breaking for the users
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants