Releases: meilisearch/meilisearch-ruby
v0.23.0 π
This version introduces features released on Meilisearch v1.1.0 π
Check out the changelog of Meilisearch v1.1.0 for more information on the changes.
If you want to adopt new features of this release, update the Meilisearch server to the according version.
π Enhancements
-
Add a new optional argument to
add_documents_csv
. This argument allows you to customize the separator character in yourcsv
file. (#429) @brunoocasali. -
Add
client.multi_search()
method to execute multiple search requests simultaneously with different configurations. (#430) @brunoocasali
Usage example:client.multi_search([ { index_uid: 'books', q: 'prince' }, { index_uid: 'movies', q: 'prince' }, ])
β οΈ TheSearchQuery
was not meant to be used if the regular$index->search()
requests (yet).
Thanks again to @brunoocasali! π
v0.22.0 π
This version makes this package compatible with Meilisearch v1.0.0 π
Check out the changelog of Meilisearch v1.0.0 for more information on the changes.
β οΈ Breaking Changes
- Fails task when updating documents with a primary_key argument which already have a proper
primary_key
defined in the index (#410) @brunoocasali - New error codes check the full changed list here
If you would like to discover every potential breaking change, please check the Meilisearch engine CHANGELOG.
Thanks again to @brunoocasali! π
v0.21.1 π
π Enhancements
- Allow the latest httparty version because all lower ones have a vulnerability:
GHSA-5pq7-52mg-hr42 (#414) @bb
Thanks again to @bb, @brunoocasali! π
v0.21.0 π
This version makes this package compatible with Meilisearch v0.30.0 π
Check out the changelog of Meilisearch v0.30.0 for more information on the changes.
π Enhancements
- Add
MeilisearchClient#cancel_tasks
(#392) @brunoocasali - Add
MeilisearchClient#swap_indexes
(#393) @brunoocasali - Add
MeilisearchClient#delete_tasks
(#394) @brunoocasali - Add support to finite pagination by using
page
andhits_per_page
likeindex.search('', { page: 1, hits_per_page: 10 })
- Add filters for tasks resources (#391) @brunoocasali
uids
filter parameter forMeilisearchClient#get_tasks({ uids: [1, 2, 3] })
canceled_by
filter parameter forMeilisearchClient#get_tasks({ canceled_by: [99, 100]})
before_enqueued_at
andafter_enqueued_at
filter parameter forMeilisearchClient#get_tasks({ before_enqueued_at: DateTime.new(2022), after_enqueued_at: '2022-01-20' })
before_finished_at
andafter_finished_at
filter parameter forMeilisearchClient#get_tasks({ before_finished_at: DateTime.new(2022), after_finished_at: '2022-01-20' })
before_started_at
andafter_started_at
filter parameter forMeilisearchClient#get_tasks({ before_started_at: DateTime.new(2022), after_started_at: '2022-01-20' })
β οΈ Breaking Changes
- Update filters for tasks resources (#391) @brunoocasali
index_uid
query parameter is renamedindex_uids
when queryingMeilisearchClient#get_tasks
type
query parameter is renamedtypes
when queryingMeilisearchClient#get_tasks
status
query parameter is renamedstatuses
when queryingMeilisearchClient#get_tasks
π Misc
- Fix broken CI after rubocop upgrade (#381) @jonatanrdsantos
- Add new code-samples for matching_strategy (#384) @thicolares
- Improve indexes names in tests (#385) @thicolares
Thanks again to @brunoocasali, @dibashthapa, @jonatanrdsantos, and @thicolares! π
v0.20.0 π
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
(#364) @brunoocasali - Ensure support to keys with wildcarded actions.
actions
field during key creation now accepts wildcards on actions. For example,indexes.*
provides rights toindexes.create
,indexes.get
,indexes.delete
,indexes.delete
, andindexes.update
. (#365) @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
.
- The
NOT
filter keyword does not have an implicitlyEXIST
operator anymore. Check out for more information: meilisearch/meilisearch#2486
v0.19.2 π
π Enhancements
- Add typo tolerance customization settings (#350) @voloyev
- Add faceting settings customization (#352) @voloyev
- Support custom agents (#354) @brunoocasali
Thanks again to @brunoocasali, and @voloyev! π
v0.19.1 π
π Bug Fixes
- Add
nbHits
to keep backward compatibility (#349) @brunoocasali
π Enhancements
- Add methods related to pagination settings (#345) @Mcdostone
Thanks again to @Mcdostone, @brunoocasali! π
v0.19.0 π
This version makes this package compatible with Meilisearch v0.28.0 π
Check out the changelog of Meilisearch v0.28.0 for more information on the changes.
π₯ Breaking Changes
MeiliSearch::Client#keys
now returns a hash with: (#340) @brunoocasaliresults
arraylimit
integeroffset
integertotal
integer
MeiliSearch::Index#indexes
,MeiliSearch::Client#raw_indexes
now returns a hash with: (#342) @brunoocasaliresults
arraylimit
integeroffset
integertotal
integer
MeiliSearch::Client#create_dump
now responds with aTask
object. (#335) @brunoocasaliMeiliSearch::Client#get_dump_status
was removed. Use theMeiliSearch::Client#tasks
orMeiliSearch::Client#task
instead. (#335) @brunoocasaliMeiliSearch::Index#search
: (#331) @curquiza- Renamed
nbHits
response parameter toestimatedTotalHits
. - Deleted
exhaustiveNbHits
response parameter. - Deleted
exhaustiveFacetsCount
response parameter. _matchesInfo
response parameter is renamed_matchesPosition
.facetsDistribution
response parameter is renamedfacetDistribution
.facetsDistribution
request parameter is renamedfacets
.matches
request parameter is renamedshowMatchesPosition
.
- Renamed
MeiliSearch::Index#documents
now returns an hash with: (#342) @brunoocasaliresults
arraylimit
integeroffset
integertotal
integer
MeiliSearch::Index#tasks
now returns a hash with: (#336), (#341) @brunoocasaliresults
arraylimit
integerfrom
integernext
integer
add_documents
,create_dump
,update_settings
and other methods that "creates" a new task, now responds with ataskUid
instead ofuid
(#336), (#341) @brunoocasaliMeiliSearch::Client#generate_tenant_token(uid, search_rules, api_key: api_key, expires_at: expires_at)
now requires aapi key uid
to generate tenant tokens. (#340) @brunoocasali
π Enhancements
MeiliSearch::Client#indexes
,MeiliSearch::Client#raw_indexes
now accepts an hash with paginationlimit
,offset
.MeiliSearch::Client#documents
, now accepts an hash with paginationlimit
,offset
. (#342) @brunoocasaliMeiliSearch::Client#document
, now accepts a named param calledfields
which takes an array of strings to remap the response. (#342) @brunoocasaliMeiliSearch::Client#tasks
, now accepts these filtering parameters:type
,status
andindex_uid
. Usage example:tasks(status: ['processing'], type: ['documentAdditionOrUpdate'])
. (#336), (#341) @brunoocasaliMeiliSearch::Client#create_key
,MeiliSearch::Client#delete_key
,MeiliSearch::Client#update_key
accepts bothapi key
orapi key uid
. (#340) @brunoocasaliMeiliSearch::Client#create_key
can optionally specify auid:
to generate deterministic API keys. (#340) @brunoocasaliMeiliSearch::Client#update_key
only acceptsdescription
andname
, other keys will be removed silently. (#340) @brunoocasali
Thanks again to @brunoocasali, @curquiza! π
v0.18.3 π
This version makes this package compatible with Meilisearch v0.27.0 π
Check out the changelog of Meilisearch v0.27.0 for more information on the changes.
π Enhancements
- Ensure nested field support (#318) @brunoocasali
- Add
highlightPreTag
,highlightPostTag
,cropMarker
, parameters in the search request (#319) @brunoocasali - Create a helper module to reduce test duplication (#316) @brunoocasali
π Bug Fixes
- Improve error handling, rescue EPIPE and Net::* errors (#307) @brunoocasali
Thanks again to @brunoocasali! π
v0.18.2 π
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
π Enhancements
- Added new method
generate_tenant_token()
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. (#299) @brunoocasali
Thanks again to @brunoocasali! π