meilisearch / meilisearch/meilisearch-java

[v1.12.0] New index settings: `facetSearch` and `prefixSearch`

Open
#797 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement good first issue
Dominant language
Java
Stars
245
Forks
152
PR merge metrics
No merged PRs in 30d

Description

Following the changes related to Meilisearch v1.12.0 mega issue

Description

Add features introduced in Meilisearch v1.12.0: the facetSearch and prefixSearch index settings.

For more information refer to the docs:

For reference, here is how these methods were implemented in JavaScript within meilisearch-js:

// get prefix search settings
const settings = await client.index('myIndex').getPrefixSearch()
// disable prefix search
await client.index('myIndex').updatePrefixSearch('disabled')
// reset prefix search settings
await client.index('myIndex').resetPrefixSearch()

// get facet search settings
const settings = await client.index('myIndex').getFacetSearch()
// disable facet search
await client.index('myIndex').updateFacetSearch(false)
// reset facet search settings
await client.index('myIndex').resetFacetSearch()

Implementation

Tasks:

  • Add the relevant methods to configure facetSearch and prefixSearch index settings. (Note: facetSearch is partially available via updateGranularFilterableAttributesSettings)
  • The methods associated with the /settings API route (to get, reset and update the settings globally) must be able to receive in the payload the new facetSearch and prefixSearch fields (in meilisearch-js, the equivalent methods are getSettings(), updateSettings(), and resetSettings())
  • ⚠️ Add integration tests ⚠️
  • Update the code samples in .code-samples.meilisearch.yaml to for the following keys, using the same example as their curl counterpart:
    • Add example for get_facet_search_settings_1
    • Add example for update_facet_search_settings_1
    • Add example for reset_facet_search_settings_1
    • Add example for get_prefix_search_settings_1
    • Add example for update_prefix_search_settings_1
    • Add example for reset_prefix_search_settings_1

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the Java client methods for index settings and the global /settings API, then inspect existing integration tests for comparable settings. Add get, update, and reset coverage for facetSearch and prefixSearch, update .code-samples.meilisearch.yaml with the six named examples, and run the integration tests to verify the new payloads and responses.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.