Skip to content

Releases: meilisearch/meilisearch-php

v0.25.0 ๐Ÿ˜

03 Oct 14:25
95148ea
Compare
Choose a tag to compare

This version makes this package compatible with Meilisearch v0.29.0 ๐ŸŽ‰
Check out the changelog of Meilisearch v0.29.0 for more information on the changes.

๐Ÿš€ Enhancements

  • Ensure support to the new search query parameter matchingStrategy (#376) @brunoocasali
  • Ensure support to keys with wildcarded actions.
    • actions field during key creation now accepts wildcards on actions. For example, indexes.* provides rights to indexes.create, indexes.get,indexes.delete, indexes.delete, and indexes.update. (#377) @brunoocasali

โš ๏ธ Breaking Changes

This breaking change may not affect you, but in any case, you should check your search queries if you want to keep the same behavior from v0.28.

v0.24.2 ๐Ÿ˜

16 Aug 16:37
7f7b350
Compare
Choose a tag to compare

๐Ÿš€ Enhancements

Thanks again to @brunoocasali! ๐ŸŽ‰

v0.24.1 ๐Ÿ˜

09 Aug 13:52
43a5d1e
Compare
Choose a tag to compare

๐Ÿš€ Enhancements

  • Pass $options to Indexes#allRaw method (#360) @Jared87
  • Add faceting and pagination settings (#362) @tgalopin co-authored by @eelcol (#361)
    • getFaceting, updateFaceting, resetFaceting
    • getPagination, updatePagination, resetPagination
  • Fix bad typehint on IndexesResults constructor (#357) @norkunas
  • Use the correct notation for getting documents (#358) @brunoocasali

Thanks again to @Jared87, @brunoocasali, @eelcol, @norkunas and @tgalopin! ๐ŸŽ‰

v0.24.0 ๐Ÿ˜

11 Jul 15:59
072d430
Compare
Choose a tag to compare

This version makes this package only compatible with Meilisearch v0.28.0 ๐ŸŽ‰
Check out the changelog of Meilisearch v0.28.0 for more information on the changes.

๐Ÿ’ฅ Breaking changes

โš ๏ธ Small disclaimer: The rawSearch (and other raw* functions) are a direct connection between your PHP application and Meilisearch, you may find changes that are not present in this section.

  • MeiliSearch\Client->getDumpStatus method was removed. (#336) @brunoocasali
  • MeiliSearch\Client->getIndexes method now return a object type IndexesResults. (#341), (#345) @brunoocasali
  • MeiliSearch\Client->generateTenantToken now require a String apiKeyUid which is the uid of the Key instance used to sign the token. (#343) @brunoocasali
  • MeiliSearch\Client->createDump now responds with Task object. (#336, #337) @brunoocasali
  • MeiliSearch\Client->getKeys method now return a object type KeysResults. (#343), (#338) @brunoocasali
  • MeiliSearch\Client->updateKey now can just update a description and/or name, if there are other key/value will be silently ignored. (#343), (#338) @brunoocasali
  • MeiliSearch\Client->getTasks method now return a object type TasksResults. (#337), (#346) @brunoocasali
  • MeiliSearch\Index->getTasks method now return a object type TasksResults. (#337), (#346) @brunoocasali
  • MeiliSearch\Index->search facetsDistribution is now facets (#332) @curquiza
  • MeiliSearch\Index->search matches is now showMatchesPosition (#332) @curquiza
  • MeiliSearch\Index->getDocuments method now return a object type DocumentsResults.
  • MeiliSearch\Index->getDocuments method now accepts a object as a parameter and offset, limit, attributesToRetrieve were not longer accepted.
  • exhaustiveNbHits, facetsDistribution, exhaustiveFacetsCount were removed from SearchResult. (#332) @curquiza

๐Ÿš€ Enhancements

  • MeiliSearch\Client->getIndexes accepts a object IndexesQuery to filter and paginate the results.
  • MeiliSearch\Client->getKeys accepts a object KeysQuery to filter and paginate the results. (#343), (#338) @brunoocasali
  • MeiliSearch\Client->getKey accepts both a Key#uid or Key#key value. (#343), (#338) @brunoocasali
  • MeiliSearch\Client->getTasks accepts a object TasksQuery to filter and paginate the results. (#337), (#346) @brunoocasali
  • MeiliSearch\Index->getTasks accepts a object TasksQuery to filter and paginate the results. (#337), (#346) @brunoocasali
  • MeiliSearch\Client->createKey can specify a uid (optionally) to create a new Key. (#343), (#338) @brunoocasali
  • MeiliSearch\Index->getDocument accepts a fields list to compact the remap the response. (#340), (#344) @brunoocasali
  • MeiliSearch\Index->getDocuments accepts a object DocumentsQuery to filter and paginate the results. (#340), (#344) @brunoocasali
  • Key has now a name and uid string fields. (#343), (#338) @brunoocasali
  • estimatedTotalHits, facetDistribution were added to SearchResult (#332) @curquiza
    • nbHits is still defined and will contain the same value as estimatedTotalHits.
  • Sending a invalid uid or apiKey will raise InvalidApiKeyException. (#343) @brunoocasali

Thanks again to @brunoocasali, @curquiza! ๐ŸŽ‰

v0.23.3 ๐Ÿ˜

21 Jun 16:15
e993256
Compare
Choose a tag to compare

๐Ÿš€ Enhancements

๐Ÿ› Bug Fixes

  • Fix errors assigning bool to DateTime properties in Keys (#326) @Nextra

Thanks again to @Nextra, @brunoocasali ! ๐ŸŽ‰

v0.23.2 ๐Ÿ˜

09 May 11:35
e6048db
Compare
Choose a tag to compare

This version makes this package compatible with Meilisearch v0.27.0๐ŸŽ‰
Check out the changelog of Meilisearch v0.27.0 for more information about the changes.

๐Ÿš€ Enhancements

  • Add new methods for the new typo tolerance settings #316 @alallema
    index.getTypoTolerance()
    index.updateTypoTolerance(params)
    index.resetTypoTolerance()
  • Ensure nested field support #317 @alallema
  • Add new search parameters highlightPreTag, highlightPostTag and cropMarker #318 @alallema

๐Ÿ› Bug Fixes

v0.23.1 ๐Ÿ˜

17 Mar 09:32
dcd198b
Compare
Choose a tag to compare

๐Ÿ› Bug Fixes

  • Fix authorization header when no api key is provide (#305) @alallema

Thanks again to @alallema ! ๐ŸŽ‰

v0.23.0 ๐Ÿ˜

14 Mar 15:24
8a38493
Compare
Choose a tag to compare

This version makes this package compatible with MeiliSearch v0.25 up to v0.26.0
๐ŸŽ‰ Check out the changelog of MeiliSearch v0.26.0 for more information about the โš ๏ธ Breaking changes about the flag and dump new behavior. (#292)

โš ๏ธ Breaking changes

๐Ÿš€ Enhancements

  • Added new method generateTenantToken() as a result of the addition of the multi-tenant functionality.
    This method creates a JWT tenant token that will allow the user to have multi-tenant indexes and thus restrict access to documents based on the end-user making the search request. (#297) @alallema

Thanks again to @TeddyBear06, @alallema, @jonatanrdsantos! ๐ŸŽ‰

v0.22.0 ๐Ÿ˜

14 Feb 16:16
0229ce1
Compare
Choose a tag to compare

This package version is compatible with MeiliSearch v0.25.0

โš ๏ธ Breaking changes

๐Ÿš€ Enhancements

Thanks again to @alallema, @brunoocasali, @mmachatschek and @shahlin! ๐ŸŽ‰

v0.21.0 ๐Ÿ˜

12 Jan 15:13
4816d09
Compare
Choose a tag to compare

This package version is compatible with MeiliSearch v0.25.0 (#370)

โš ๏ธ Breaking changes

  • This package is only compatible with MeiliSearch v0.25.0 and later, but not with v0.24.0 and older. Be sure you are using at least MeiliSearch v0.25.0 or newer before doing the upgrade.
    Why isn't it compatible?
    • MeiliSearch v0.25.0 uses Authorization header instead of X-Meili-API-Key (#265)
    • MeiliSearch v0.25.0 has a new API regarding the updates that have been renamed into tasks. More details in the following points
  • Remove deleteIndexIfExists method (#266) @alallema
  • Remove getOrCreateIndex method (#267) @alallema
  • Redesign update API to task API (#268) @alallema
    • All the actions on indexes are now asynchronous check out the task API references and the asynchronous tasks guide
      • createIndex(), updateIndex(), deleteIndex() are now asynchrone and return a task response instead of an Index.
      • index.create and index.delete from index return a task.
      • waitForPendingUpdate() is renamed into waitForTask and is accessible from index and from client.
      • the current index.waitForTask() method call /tasks/:uid
      • index.getUpdateStatus is renamed index.getTask
      • index.getAllUpdateStatus is renamed index.getTasks
      • new method client.waitForTask() call /tasks/:uid
      • new method client.waitForTask()
      • new method client.getTasks that calls /tasks
      • new method client.getTask that calls /tasks/:uid
        Notes: The only two methods that now return an Index are client.index() and client.getIndex()
  • Change client.getKeys does not return an object of keys, but an array of keys. Check out keys API references.
  • Changes related to the next MeiliSearch release (v0.25.0) (#261)

๐Ÿš€ Enhancements

  • Extract functionality to a more specific class (#272) @jonatanrdsantos
  • Addition related to API keys (#269) @alallema
    • Granular management of API keys is now added to MeiliSearch. New methods have been created to manage this:
      • http.patch use by updateKey
      • client.getKey get information about a specific API key.
      • client.createKey create a new API key.
      • client.deleteKey delete an API key.
      • client.updateKey update an API key.
    • Check out the documentation guide.

Thanks again to @alallema, @curquiza, @jonatanrdsantos, @norkunas, and Jonatan Santos! ๐ŸŽ‰