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

Settings API - Specify handling of null values when patching settings #202

Merged
merged 2 commits into from
Nov 29, 2022

Conversation

dureuill
Copy link
Contributor

🤖 API Diff Put the link of the GitHub comment generated by bump.sh if generated; Apply the OpenApi label


Summary

This PR is related to meilisearch/meilisearch#2929, where a reading of the specification was reported that excludes the null value from being sent to fields of settings that are JSON objects, although the implementation currently allows these values, with the effect of resetting the value of the setting to its default value.

This PR aims at being more explicit about what happens when null is sent as the value of a setting at whichever level.


Changes

  • Adds clarification sentences in the text/0123-settings-api.md file that indicate what happens when a setting is missing from a PATCH request (its value is left unchanged) or a setting has the null value in a PATCH request (its value is reset to default).
  • Edit the error listings in the subsettings (text/0117-typo-tolerance-setting-api.md, text/157-faceting-setting-api.md and text/157-pagination-setting-api.md) to specify that a null value is allowed.

Out Of Scope

N/A


Attention To Reviewers

N/A


Misc

  • [] Update OpenAPI specification file (if needed; Apply the OpenApi label)
  • [] Update telemetry datapoints (if needed; Apply the Telemetry label)

@dureuill dureuill added Patch This PR patch a feature specification Q4:2022 v0.30 labels Nov 10, 2022
… values.

- Partial value: the setting is unchanged.
- null value: the setting is reset to default.
Copy link
Member

@gmourier gmourier left a comment

Choose a reason for hiding this comment

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

LGTM! Thanks, @dureuill 🔥

@gmourier gmourier mentioned this pull request Nov 10, 2022
1 task
@gmourier gmourier changed the title Specify handling of null values when patching settings Settings API - Specify handling of null values when patching settings Nov 10, 2022
@gmourier gmourier merged commit 3eb3d16 into release-v0.30.0 Nov 29, 2022
@gmourier gmourier deleted the settings_patch_null_handling branch November 29, 2022 15:13
gmourier added a commit that referenced this pull request Nov 29, 2022
* Bump Meilisearch OpenAPI spec to v0.30.0

* Compression Headers (#178)

* Start specification

* Rename spec file

* Rephrase summary

* Rephrase receiving a compressed response section

* Add links to RFC9910

* Introduce missing_master_key error (#179)

* Update error message (#180)

* Specify the error variant (#181)

* replaces 127.0.0.1 by localhost (#184)

* Configuration File Support (#185)

* init spec file

* Fill-in spec

* Fix typing errors

* adds errors case

* Update text/0185-configuration-file.md

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

* Replace config file by configuration file in the error message

* Update text/0185-configuration-file.md

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

* Update text/0185-configuration-file.md

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

* Update text/0185-configuration-file.md

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

* Update text/0185-configuration-file.md

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

* Add infos.with_configuration_file to telemetry-policies

* Update text/0185-configuration-file.md

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

* Update text/0185-configuration-file.md

Co-authored-by: Tamo <tamo@meilisearch.com>

* Update text/0185-configuration-file.md

Co-authored-by: Tamo <tamo@meilisearch.com>

* Update text/0185-configuration-file.md

Co-authored-by: Tamo <tamo@meilisearch.com>

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

* Telemetry - Missing events and options (#186)

* wip spec changes

* update telemetry

* add missing property to the full properties table

* Update text/0034-telemetry-policies.md

Co-authored-by: Tamo <tamo@meilisearch.com>

* Update text/0034-telemetry-policies.md

Co-authored-by: Tamo <tamo@meilisearch.com>

* Add distrinct_attribute.set property, Task Seen becomes an aggregated event, add missing sub settings properties to Settings Updated event

* Add requests.total_received property to Tasks Seen event

* add missing ranking rules metrics

* Update text/0034-telemetry-policies.md

Co-authored-by: Tamo <tamo@meilisearch.com>

* Update text/0034-telemetry-policies.md

Co-authored-by: Tamo <tamo@meilisearch.com>

* Update text/0034-telemetry-policies.md

Co-authored-by: Tamo <tamo@meilisearch.com>

* Precise max-index-size option (#187)

* Tasks API - Rename `receivedDocumentsIds` by `providedIds` (#188)

* Rename receivedDocumentsIds by matchedDocuments

* Update open-api.yaml

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

* Update open-api.yaml

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

* Update text/0060-tasks-api.md

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

* Add missing env vars, brings consistency (#190)

* Swap Indexes API (#192)

* Add new spec file as draft file

* Add specification file

* update spec

* draft open-api.yml changes

* Add errors

* fix typos

* Add Indexes Swapped event

* duplicate_index_found is synchronous

* Apply suggestions from code review

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

* Add review suggestions

* Precis mention for tasks indexUid target swap in the history

* Update open-api.yaml

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

* Update open-api.yaml

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

* Update open-api.yaml

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

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

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

* Update text/0191-swap-indexes-api.md

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

Co-authored-by: Clémentine Urquizar - curqui <clementine@meilisearch.com>
Co-authored-by: Clément Renault <renault.cle@gmail.com>

* Add snapshotCreation as a new task type to make it visible in the task history (#193)

* Tasks API - Add task priority order section (#194)

* Add 2.1 Task Priority section

* Precise other tasks priority ordering

* Search API - Page Selection Component (#196)

* Search API - numbered pagination

* Improve numbered pagination explaination

* Update text/0118-search-api.md

* Update text/0118-search-api.md

* Apply suggestions from code review

* Add links

* Update open api

* Add a dot at the end of the title

* Fix links

* Improve page and hitsperpage query params

* Refactor pagination guide

* Fix wording

* Add corner case

* Update open-api.yaml

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

* Update open-api.yaml

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

* Update open-api.yaml

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

* Apply wording changes from code review

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

* Apply suggestions from code review

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>
Co-authored-by: Bruno Casali <brunoocasali@gmail.com>

* Fix example

* Apply suggestions from code review

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

* Update open-api.yaml

* Update text/0118-search-api.md

* Update links

* Add link to maxtotalhits

* Update text/0118-search-api.md

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

* Improve message in page reference

* Update text/0118-search-api.md

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

* Add telemetry to know the most used search results navigation methods in a batch

* Update text/0118-search-api.md

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

* Update text/0118-search-api.md

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

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>
Co-authored-by: Bruno Casali <brunoocasali@gmail.com>
Co-authored-by: Many the fish <legendre.maxime.isn@gmail.com>

* Tasks API - Add task cancelation capability (#195)

* Add cancel to task spec

* Remove missing error

* Fix typo on cancels

* Fix IndexUid always null

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Add canceledBy and missing_filters error

* Merge 11.1 filter iwth get and 11.2 filter with post

* Specified every date filter

* Change uid as integer and not as string

* Add auto-batching and error

* Add new route task/cancel api-key

* Add global task note

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

* Update text/0060-tasks-api.md

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

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

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

* Modification due to review

* Modification due to review

* Modification due to review

* Modification due to review

* Fix global task link

* Fix format link

* Add open-api modification

* Remove trailing space

* Add clarification

* Add errors definition

* Update open-api.yml

* fix task uid query parameter name

* Fix collission between url path and query parameters

* fmt open-api.yml

* Add telemetry details

* Add 202_taskCancelation example

* Update originalQuery to originalFilters and update missing_task_filter to missing_task_filters

* matchedTasks is computed when the task is enqueued

* Apply suggestions from code review

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

* Apply suggestions from code review

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

* Recall explanation for filter query parameter and mentions that limit and from are valid on

* Fix typo in property name

* Update query paramters name and related error codes when invalid

* Fix missing part of error msg

* Precise valid date formats

* Add supported format for date filters in open-api.yml

* Update open-api.yaml

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

* Update text/0060-tasks-api.md

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

* fix typo

* Update open-api.yaml

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

* Update text/0060-tasks-api.md

* Update text/0060-tasks-api.md

* Tasks API - Add task deletion capability (#198)

* Describes task deletion feature additions

* Update open-api.yml

* Update telemetry-policies

* Update originalQuery to originalFilters

* Follow title structure

* Introduce review feedback

* Branch the right components

* Update text/0060-tasks-api.md

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

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

Co-authored-by: Guillaume Mourier <guillaume@meilisearch.com>
Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>
Co-authored-by: Clément Renault <renault.cle@gmail.com>

* Update the dump support table with the dumpv6 (#199)

* Settings API - Specify handling of null values when patching settings (#202)

* Specify behavior when patching a setting with partial values and null values.

- Partial value: the setting is unchanged.
- null value: the setting is reset to default.

* Settings: Update error messages to accept the null value

* Add missing task types

* Add canceledTasks details

Co-authored-by: Clémentine Urquizar - curqui <clementine@meilisearch.com>
Co-authored-by: Tamo <tamo@meilisearch.com>
Co-authored-by: Clément Renault <renault.cle@gmail.com>
Co-authored-by: cvermand <33010418+bidoubiwa@users.noreply.github.com>
Co-authored-by: Bruno Casali <brunoocasali@gmail.com>
Co-authored-by: Many the fish <legendre.maxime.isn@gmail.com>
Co-authored-by: Amélie <alallema@users.noreply.github.com>
Co-authored-by: Louis Dureuil <louis.dureuil@gmail.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Patch This PR patch a feature specification Q4:2022 v0.30
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants