Skip to content
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.

Data Types - Add Nested Fields Support #121

Merged
merged 22 commits into from
May 13, 2022
Merged

Data Types - Add Nested Fields Support #121

merged 22 commits into from
May 13, 2022

Conversation

gmourier
Copy link
Member

@gmourier gmourier commented Mar 2, 2022

The definitive specification is due at 2022-04-01


Summary

Lists the different data types supported by Meilisearch and adds a specific section for nested structures.

Since the fields are recursively flattened at indexing time internally, it makes it possible for a user to express a nested field location in any API parameter accepting document attributes using the . (dot-notation).

Example:

{
    "id": 0,
    "person": {
         "firstname": "Guillaume"
    }
}

Is internally represented

{
    "id": 0,
    "person.firstname": "Guillaume"
}

It can be expressed this way in any API parameter accepting document attributes.

e.g. "sortableAttributes": ["person.firstname"]

Much more complete examples are present in the specification.

@gmourier gmourier added In Progress Feature specification is in elaboration. Important changes can still occurs in the specification. Q2:2022 v0.27 labels Mar 2, 2022
@gmourier
Copy link
Member Author

gmourier commented Mar 2, 2022

@Kerollmops and @irevoire, this is mostly taken from the documentation.

Can you double-check the given information from the specification POV before I ask other teams to review it?

Thanks!

@gmourier gmourier marked this pull request as ready for review March 2, 2022 10:49
@gmourier gmourier added Ready For Review Feature specification must be reviewed. and removed In Progress Feature specification is in elaboration. Important changes can still occurs in the specification. labels Mar 2, 2022
text/0000-data-types.md Outdated Show resolved Hide resolved
text/0000-data-types.md Outdated Show resolved Hide resolved
@gmourier gmourier changed the title Data Types Data Types - Add nested fields support Mar 2, 2022
@gmourier gmourier changed the title Data Types - Add nested fields support Data Types - Add Nested Fields Support Mar 2, 2022
@gmourier gmourier requested a review from Kerollmops March 2, 2022 13:04
@gmourier gmourier force-pushed the data-types branch 2 times, most recently from 3b09f8c to 6253736 Compare March 3, 2022 11:32
@gmourier
Copy link
Member Author

gmourier commented Mar 3, 2022

Additional questions


@meilisearch/docs-team I've added some examples on how to use dot-notation but I feel this is not the best place to write them. See 3.2.4.7. Dot-notation expression

Is it practical for you to have the information here?

Some API parameters where it could be described are not specified yet. (running late specification of already existing features, e.g. Indexes API, Documents API, Settings API)


@irevoire I've added an examples section that demonstrates that the dot-notation can be used to express all properties of an object. See 3.2.4.7. Dot-notation expression section.

e.g. ["person.*"] instead of ["person.firstname", "person.lastname"].

This notation could easily work on some parameters while not on others.

e.g. attributesToHighlight (works-well) vs searchableAttributes (impossible, it introduces equals field weight for a subset of document fields).

Is it possible to manage this notation for each parameter listed in 3.2.4.7.1. Concerned API parameters section and report errors in cases it can't be used? I can create a generic error message for this specific case.

@gmourier gmourier self-assigned this Mar 3, 2022
@gmourier gmourier added the P2 label Mar 7, 2022
qdequele
qdequele previously approved these changes Mar 8, 2022
Copy link
Member

@qdequele qdequele left a comment

Choose a reason for hiding this comment

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

I've read all the parts about nested fields, including the primitive types. I didn't find anything to complain about. I just wondered about the last example because using person to match all the subfields is not explicit in my opinion but it removes a lot of user frustration, so I like it.

text/0121-data-types.md Outdated Show resolved Hide resolved
@gmourier
Copy link
Member Author

gmourier commented Mar 8, 2022

I've read all the parts about nested fields, including the primitive types. I didn't find anything to complain about. I just wondered about the last example because using person to match all the subfields is not explicit in my opinion but it removes a lot of user frustration, so I like it.

Thanks @qdequele.

This part needs to be decided and precise.

e.g. ["person.*"] instead of ["person.firstname", "person.lastname"].

This notation could easily work on some parameters while not on others.

e.g. attributesToHighlight (works-well) vs searchableAttributes (difficult, it could be translated to having equal field weight for a subset of document fields).

We could first detect this expression on some parameters and block it with an error message, or simply ignore it and specify that each field must be expressly defined with the notation . for a first iteration.

I also like the fact that it allows going faster and that it could remove the frustration of having to explain everything in some cases.

@qdequele
Copy link
Member

qdequele commented Mar 8, 2022

The problem with doing different behaviors on different routes or resources is that you lose predictability. So it would be nice to have the person.* syntax everywhere.

@gmourier
Copy link
Member Author

gmourier commented Mar 8, 2022

What would be the order of importance of the person fields in this case according to you? e.g. searchableAttributes: ["fieldA", "fieldB", "person.*", "fieldD"]

In that case, I would imagine all person object properties to be defined with the same weight but it requires work that seems out-of-scope for the nested fields notation feature.

One solution for this parameter could be to have an "undefined" behavior in the same way as searchableAttributes: ["*"] which defines the order based on the position of the attributes received for the first time in a document. At least, there would be some consistency with the current * notation.

The .* (extended dot-notation) could be easily practicable on:

  • attributesToRetrieve (/search, /documents)
  • attributesToHighlight (/search)
  • facetsDistribution (/search)
  • attributesToCrop (/search)
  • displayedAttributes (/settings)
  • filterableAttributes (/settings)
  • sortableAttributes (/settings)

While it does not seems practicable on:

  • primaryKey (/index, /documents)
  • filter (/search)
  • sort (/search)
  • rankingRules (/settings - custom ranking rules)

In these cases, using the .* (extended dot-notation) could lead to weird behaviors or even is impossible (e.g. primaryKey).

@gmourier gmourier added P1 and removed P2 labels Mar 10, 2022
@gmourier
Copy link
Member Author

gmourier commented Mar 14, 2022

Tech Meeting 2022-03-14

Attendees: @irevoire, @gmourier

Following the previous comments on this specification, we have evaluated the notion of wildcarded dot-notation. We were able to make a decision on whether or not to handle wildcards on certain parameters, however, one question remains and we would like to hear your opinions on our various solutions. See searchableAttributes case section.

Decisions

The .* (extended dot-notation) is accepted on those fields:

  • attributesToRetrieve (/search, /documents)
  • attributesToHighlight (/search)
  • facetsDistribution (/search)
  • attributesToCrop (/search)
  • displayedAttributes (/settings)
  • filterableAttributes (/settings)
  • sortableAttributes (/settings)

The .* is not accepted and an error will be returned to guide the user for those fields:

  • primaryKey (/index, /documents)
  • filter (/search)
  • sort (/search)
  • rankingRules (/settings - custom ranking rules)

searchableAttributes case

Since Meilisearch cannot guarantee the order of arrival in the internal representation of the fields, users can't rely on properties position in their document to expect field weight to be applied following it.

We may want to deeply rework this further in the future.

The important thing to remember is that a user cannot rely on the * notation to determine the weight of fields for the Attribute ranking rule. This also extends to the .* notation regarding the nested object fields weights

Solution 1: Support the wildcard dot-notation as the current *. Vote with: 👍

{
     "searchableAttributes": ["a", "b.*", "c"]
}

Pros:

  • The user is able to make nested fields searchable easily and doesn't need to specify them one by one.
  • Consistent with the current "undefined" behavior regarding the field weight when * is specified.

Cons:

  • Priority of fields are set from their position from the internal representation of the document property. The flattening algorithm may reorder it in some cases and lead it to be "undefined". b.2 could be positioned before b.1 and being prioritized over b.1.

Solution 2: Throw an error when .* is used in searchableAttributes. Vote with: 🚀

Pros:

  • User is guided and can't have undefined behavior regarding the weight priority of nested fields.

Cons:

  • The user will not be able to make nested fields searchable easily and will have to specify them one by one.

Solution 3: Accept .* at the end of searchableAttributes, throw an error when specified in the middle of searchableAttributes. Vote with: ❤️

{
     "searchableAttributes": ["a", "c", "b.*"]
}

Pros:

  • The user is able to make nested fields searchable easily and doesn't need to specify them one by one.

Cons:

  • The user is forced to use the .* notation at the end of the searchableAttributes list and thus can't favor a nested object by priority over others fields.

Nested notations

Given a nested object b, we could support both b.* and b to specify that all fields from b are listed. There seem to be two schools of thought on this, why not support both?

@curquiza
Copy link
Member

Before voting, I need to know, maybe @irevoire can help

  • is the wildcard "easy" to implement, I mean, what is the charge of work?
  • also, what is the quickest one to implement?

@gmourier
Copy link
Member Author

gmourier commented Mar 16, 2022

Regarding the decision #121 (comment)

The .* is not accepted and an error will be returned to guide the user for those fields:
primaryKey (/indexes, /documents)
filter (/search)
sort (/search)
rankingRules (/settings - custom ranking rules)

This statement is not true and Meilisearch can't throw an error.

This is due to the fact that several documents may not share the same schema. Also the fact of being able to specify settings before indexing documents participates in this decision change.

Expected Behavior

For example, one document might have a non-nested field called person while another has a person object containing properties. The chosen behavior is not to force the user's hand.

E.g.

If a user specifies "filter": "person = 'Guillaume'" at search time, the document that would have a nested object person would not be brought up by the filter.

If person is not defined as a filterableAttributes, it will throw an invalid_filter error. This case is managed as today in case a field does not exist.

text/0121-data-types.md Outdated Show resolved Hide resolved
text/0123-ranking-rules-setting-api.md Outdated Show resolved Hide resolved
text/0121-data-types.md Show resolved Hide resolved
text/0121-data-types.md Show resolved Hide resolved
Co-authored-by: Clément Renault <renault.cle@gmail.com>
Copy link
Contributor

@dichotommy dichotommy left a comment

Choose a reason for hiding this comment

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

I wasn't clear from reading the PR comments, but based on the last three lines of the spec I understand that wildcard dot-notation will not be included in v0.27.

Pretty clear spec, as always! 🧱 🧱 🧱

text/0121-data-types.md Show resolved Hide resolved
text/0121-data-types.md Outdated Show resolved Hide resolved
text/0121-data-types.md Outdated Show resolved Hide resolved
text/0121-data-types.md Outdated Show resolved Hide resolved
text/0121-data-types.md Show resolved Hide resolved
text/0121-data-types.md Show resolved Hide resolved
text/0121-data-types.md Show resolved Hide resolved
gmourier and others added 2 commits March 29, 2022 17:26
Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>
Co-authored-by: Clément Renault <renault.cle@gmail.com>
bors bot added a commit to meilisearch/documentation that referenced this pull request May 9, 2022
1550: correct misunderstanding of default attribute ranking order r=maryamsulemani97 a=dichotommy

Default attribute ranking `searchableAttributes: ["*"]` is based on the order in which Meilisearch encounters attributes. This was clarified for me by meilisearch/specifications#121, line 316-317.

Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>
@gmourier gmourier merged commit 16bc9bd into develop May 13, 2022
@gmourier gmourier deleted the data-types branch May 13, 2022 10:00
@gmourier gmourier added Implemented Feature specification has been implemented. and removed Ready For Review Feature specification must be reviewed. P1 labels May 13, 2022
gmourier added a commit that referenced this pull request May 13, 2022
* Add a draft spec with nested fields flattening examples

* Consitent phrasing

* Fix markdown syntax

* Add null section

* Add Object example section

* Apply suggestions from code review

Co-authored-by: Clément Renault <renault.cle@gmail.com>

* Rename spec file to PR id

* Add special searchableAttributes default case with flattening alg

* Rephrase document structure representation

* Add a dotnotation section

* Add dot-notation section

* Update text/0121-data-types.md

Co-authored-by: Quentin de Quelen <quentin@meilisearch.com>

* Add Future Possibilities

* Rework nested notation sections

* Fix TODO and mention the . notation and all properties notation

* Add a edge case section

* Fix missing block code marker

* Update text/0123-ranking-rules-setting-api.md

Co-authored-by: Clément Renault <renault.cle@gmail.com>

* Apply suggestions from code review

Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>
Co-authored-by: Clément Renault <renault.cle@gmail.com>

* Fix section number

* Remove unclear sentence

* Remove dedicated object section

Co-authored-by: Clément Renault <renault.cle@gmail.com>
Co-authored-by: Quentin de Quelen <quentin@meilisearch.com>
Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>
gmourier added a commit that referenced this pull request May 16, 2022
* Instance Options (#119)

* Add instance options spec

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Numeric title + add dump options

* Add link to dump spec

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Update text/0119-instance-options.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Add title numerotations

* Add telemetry for new options

* Apply changes after the review

* Update text/0119-instance-options.md

* Update text/0119-instance-options.md

Co-authored-by: Many <legendre.maxime.isn@gmail.com>

* Update text/0119-instance-options.md

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Update text/0119-instance-options.md

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Change naming after the review

* Update text/0034-telemetry-policies.md

* Update text/0034-telemetry-policies.md

* Update text/0034-telemetry-policies.md

* Update text/0034-telemetry-policies.md

* Apply suggestions from code review

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Update text/0119-instance-options.md

Co-authored-by: Clémentine Urquizar - curqui <clementine@meilisearch.com>

* Update text/0119-instance-options.md

Co-authored-by: Clémentine Urquizar - curqui <clementine@meilisearch.com>

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>
Co-authored-by: Many <legendre.maxime.isn@gmail.com>
Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Settings API - v0.26.0 state (#123)

* Add a Settings API specification file

* Add distinct-attribute-setting-api.md

* Add displayed-attributes and searchable-attributes specification file

* Add stop-words setting api

* Add synonyms setting api

* Rename spec files and fix some typos

* Add ranking rules setting api

* Add filterable-attributes and sortable-attributes settings API

* Add a Triggering Documents Re-Indexing technical section

* Rephrase 202 Accepted Response for POST Methods

* Apply Triggering Documents Re-Indexing Technical part on related sub settings

* Update synonyms setting api file

* Precise and rephrase some sentences

* Remove bullet point title

* Add limitation about manually specifying searchableAttributes

* Update spec template according to our current usage (#127)

* Update spec template according to our current usage

* Update text/0000-specification-template.md

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Remove bullet point dedicated to title

* Rename Technical Aspects to Technical Details

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>

* Documents API (#133)

* Catch-up documents api specification

* Add precisions and examples

* Apply suggestions from code review

Co-authored-by: Many <legendre.maxime.isn@gmail.com>

Co-authored-by: Many <legendre.maxime.isn@gmail.com>

* Stats API (#134)

* Add Stats API specification

* Rename spec file with pr number

* Clean typo, add precisions and fix inner linking

* Apply suggestions from code review

Co-authored-by: maryamsulemani97 <90181761+maryamsulemani97@users.noreply.github.com>

* Change order of API endpoints

Co-authored-by: maryamsulemani97 <90181761+maryamsulemani97@users.noreply.github.com>

* Errors - Add variant for `invalid_filter`/`invalid_sort` when related settings are empty (#125)

* Add variant for invalid_sort and invalid_filter errors when settings are empty

* Update text/0061-error-format-and-definitions.md

Co-authored-by: gui machiavelli <hey@guimachiavelli.com>

Co-authored-by: gui machiavelli <hey@guimachiavelli.com>

* Add missing "v" in the user-agent data (#136)

Following the issue meilisearch/integration-guides#150 there is a "v" before the version of the package.

* Indexes API (#132)

* Catch-up Indexes API

* Add details by field for an Index API Resource

* fix typo

* Add future possibilities

* Apply suggestions from code review

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Add precisions from review

* lowercase type

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Remove never-implemented and deprecated 0042-paginated-search.md (#147)

* Settings API - Typo Tolerance (#117)

* Draft file for Typo Tolerance specification

* rename spec file

* Rename specification

* draft

* Add open-api.yaml prototype

* Add typoTolerance component on POST search

* Add typoTolerance object into search api parameters

* fix typos

* remove the past tense

* Add typoTolerance GET query parameters

* Fix description

* Add explanations for disableOnWords property

* Update spec href

* Describe indexes/:index_uid/settings/typo-tolerance endpoint

* Explain why it is useful to expose typo tolerance settings at search time

* Remove typoTolerance properties at search time

* Add a future possiblity to change POST verb to PATCH to edit a settings partially

* Sync spec with telemetry

* Mark TODO on technical details and rework structure of specification

* Specify properties required to false to allow partial updates

* Add error definitions for typoTolerance API resource properties

* Rename spec file

* Restore deleted metric

* Update text/0117-typo-tolerance-settings-api.md

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Update text/0117-typo-tolerance-settings-api.md

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Bruno Casali <brunoocasali@gmail.com>

* Replace W to w in telemtry

* Apply consistency on new errors message

* fix typo

* Add Async Errors and Lazy Index Creation

* Rename telemetry nodes

* Mention case insensivity of disableOnWords parameter

* Describes synchronous (type-checking)  and asynchronous (business logic) errors

* Add examples for minWordSizeFor1Typo and minWordSizeFor2Typos

* Elaborate on examples

* Remove title bullet point

* Apply naming suggestions

* Apply naming changes on telemetry and miss on OpenAPI

* Branch typo sub-ressource to settings-api specification

* Fix typo (lul)

* Add Technical Details

* Apply suggestions from code review

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Replace minWordSizeForXTypos fields by a minWordSizeForTypos object

* Update text/0034-telemetry-policies.md

Co-authored-by: ad hoc <postma.marin@protonmail.com>

* Apply suggestions from code review

Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>

* Remove dedicated error for type checking

* Update text/0034-telemetry-policies.md

Co-authored-by: Bruno Casali <brunoocasali@gmail.com>

* Bring naming changes

* Fix metrics name for typo_tolerance

* Update text/0034-telemetry-policies.md

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>
Co-authored-by: Bruno Casali <brunoocasali@gmail.com>
Co-authored-by: ad hoc <postma.marin@protonmail.com>
Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>

* Data Types - Add Nested Fields Support (#121)

* Add a draft spec with nested fields flattening examples

* Consitent phrasing

* Fix markdown syntax

* Add null section

* Add Object example section

* Apply suggestions from code review

Co-authored-by: Clément Renault <renault.cle@gmail.com>

* Rename spec file to PR id

* Add special searchableAttributes default case with flattening alg

* Rephrase document structure representation

* Add a dotnotation section

* Add dot-notation section

* Update text/0121-data-types.md

Co-authored-by: Quentin de Quelen <quentin@meilisearch.com>

* Add Future Possibilities

* Rework nested notation sections

* Fix TODO and mention the . notation and all properties notation

* Add a edge case section

* Fix missing block code marker

* Update text/0123-ranking-rules-setting-api.md

Co-authored-by: Clément Renault <renault.cle@gmail.com>

* Apply suggestions from code review

Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>
Co-authored-by: Clément Renault <renault.cle@gmail.com>

* Fix section number

* Remove unclear sentence

* Remove dedicated object section

Co-authored-by: Clément Renault <renault.cle@gmail.com>
Co-authored-by: Quentin de Quelen <quentin@meilisearch.com>
Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>

* Search API - Formatting Search Results (#120)

* Draft a revamp of the formatting search results spec

* Removes formatting-search-results specification

* wip

* Fix links

* Add precision

* Update OpenAPI

* Fix sentences

* Add consistency

* Add details and fix sentences

* Fix default value in OpenAPI spec

* Add Future Possibilities for _matchesInfo

* Remove bullet point title

* Add wip examples

* Add _formatted behavior regarding attributesToRetrieve, attributesToCrop and attributesToHighlight

* Apply suggestions from code review

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Fix typo

* Mention no effect case of  cropMarker / cropLength / highlightPostTag / highlightPreTag  on attributesToCrop  & attributesToHighlight

* Re-explain _formatted in details

* Mention Synonyms

* Add precision after team feedback

* Apply suggestions from code review

Co-authored-by: gui machiavelli <hey@guimachiavelli.com>

* Add precisions

* Add boolean analytics for fields dedicated to customize formatting of search results behaviors

* Precise behavior for _formatted

* Add clearer explanations for the cropping algorithm and the fact that it keep the phrase context when extending around

* Apply suggestions from code review

Co-authored-by: Many <legendre.maxime.isn@gmail.com>
Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>
Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>

* Precise highlighting around every matched query term

* Apply suggestions from code review

Co-authored-by: gui machiavelli <hey@guimachiavelli.com>
Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Precise cropLength behavior when 0 is specified

* Remove filter-and-facet-behavior spec to merge it into search-api, and correct some types description

* Improve formatted spec (#146)

* Improve formatted spec

* Update text/0118-search-api.md

Co-authored-by: Tamo <irevoire@protonmail.ch>

* Update text/0118-search-api.md

Co-authored-by: Tamo <irevoire@protonmail.ch>

* Update text/0118-search-api.md

Co-authored-by: Tamo <irevoire@protonmail.ch>

* Update text/0118-search-api.md

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Update text/0118-search-api.md

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Improve according to reviews

Co-authored-by: Tamo <irevoire@protonmail.ch>
Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>

* Add missing precision for highlightPostTag

* fix broken links

Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>
Co-authored-by: gui machiavelli <hey@guimachiavelli.com>
Co-authored-by: Many <legendre.maxime.isn@gmail.com>
Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>
Co-authored-by: Clémentine Urquizar - curqui <clementine@meilisearch.com>
Co-authored-by: Tamo <irevoire@protonmail.ch>

* Bump API to v0.27.0 version

Co-authored-by: Clémentine Urquizar - curqui <clementine@meilisearch.com>
Co-authored-by: Many <legendre.maxime.isn@gmail.com>
Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>
Co-authored-by: maryamsulemani97 <90181761+maryamsulemani97@users.noreply.github.com>
Co-authored-by: gui machiavelli <hey@guimachiavelli.com>
Co-authored-by: Bruno Casali <brunoocasali@gmail.com>
Co-authored-by: ad hoc <postma.marin@protonmail.com>
Co-authored-by: Tommy <68053732+dichotommy@users.noreply.github.com>
Co-authored-by: Clément Renault <renault.cle@gmail.com>
Co-authored-by: Quentin de Quelen <quentin@meilisearch.com>
Co-authored-by: Tamo <irevoire@protonmail.ch>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Implemented Feature specification has been implemented. Q2:2022 v0.27
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants