Skip to content

Releases: meilisearch/meilisearch-swift

0.17.0 ๐Ÿ•Š

09 Jan 14:47
4b70780
Compare
Choose a tag to compare

โš ๏ธ Breaking changes

๐Ÿš€ Enhancements

โš™๏ธ Maintenance/misc

Thanks again to @MiaKoring, @Sherlouk, & @Strift ๐ŸŽ‰

0.16.0 ๐Ÿ•Š

20 Mar 14:41
26f30d1
Compare
Choose a tag to compare

โš ๏ธ Breaking changes

๐Ÿš€ Enhancements

โš™๏ธ Maintenance/misc

  • (Quick Wins) Fix Xcode 15, Reduce Search Requirements, Update README (#426) @Sherlouk

Thanks again to @Sherlouk, @berwyn, @brunoocasali, @curquiza, @dependabot, @dependabot[bot], @meili-bors[bot] ! ๐ŸŽ‰

0.15.0 ๐Ÿ•Š

07 Mar 18:39
062fd1d
Compare
Choose a tag to compare

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

  • search<T> returns a Searchable<T> instead SearchResult<T> directly. Now the SearchResult contains the implementation handler of a request with estimated pagination (limit/offset), and FiniteSearchResult contains the implementation for finite pagination page/hitsPerPage. (#369) @brunoocasali
  • This is the list of the accepted parameters for getTasks (TasksQuery) (#365) @brunoocasali:
limit: Int?
from: Int?
next: Int?
statuses: [String]?
types: [String]?
indexUids: [String]?
uids: [Int]?
canceledBy: [Int]?
beforeEnqueuedAt: Date?
afterEnqueuedAt: Date?
afterFinishedAt: Date?
beforeStartedAt: Date?
afterStartedAt: Date?
beforeFinishedAt: Date?

๐Ÿš€ Enhancements

๐Ÿ› Bug Fixes

Thanks again to @Dishant10, @aronbudinszky, @bidoubiwa, @brunoocasali, @curquiza, @mannuch, @meili-bors[bot], and @zt4ff! ๐ŸŽ‰

0.14.1 ๐Ÿ•Š

10 Aug 12:36
f9fb100
Compare
Choose a tag to compare

๐ŸŽ‰ This release adds support to Linux environments. Let us know if there is something not working ;)

๐Ÿš€ Enhancements

๐Ÿ’… Misc

  • Added the try keyword in front of MeiliSearch() constructor in the code samples (#325) @mgregoire254

Thanks again to @aronbudinszky, @bidoubiwa, @brunoocasali, and @mgregoire254! ๐ŸŽ‰

0.14.0 ๐Ÿ•Š

08 Aug 17:51
d0e1279
Compare
Choose a tag to compare

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#getKeys now returns a KeysResults. (#319, #321, #313) @brunoocasali
  • MeiliSearch#getIndexes now returns a IndexesResults (#319, #321, #314) @brunoocasali
  • MeiliSearch#createDump now responds with a Result<TaskInfo, Swift.Error> object. (#319, #321, #311) @brunoocasali
  • MeiliSearch#getDumpStatus was removed. Use the MeiliSearch#getTasks or MeiliSearch#getTask instead. (#311) @brunoocasali
  • Add TaskInfo type to handle enqueued tasks. (#310) @brunoocasali
  • Dump type was removed (#311) @brunoocasali.
  • SearchParameters changes (#317) @brunoocasali
    • Renamed facetsDistribution field to facets.
    • Renamed matches field to showMatchesPosition.
  • SearchResult<T> changes (#317) @brunoocasali
    • Renamed nbHits field to estimatedTotalHits.
    • Removed exhaustiveFacetsCount field.
    • Removed exhaustiveNbHits field.
  • Index#getDocuments<T> now returns an object DocumentsResults<T> (#319, #321, #312) @brunoocasali
  • MeiliSearch#getTasks and Index#getTasks now returns an object TasksResults (#319, #321, #310, #315) @brunoocasali
  • addDocuments<T>, createDump, updateSettings and other methods that "creates" a new task, now responds with a Result<TaskInfo, Swift.Error> and therefore they have a taskUid instead of uid (#310) @brunoocasali
  • MeiliSearch#updateKey method to update keys now receive a new object KeyUpdateParams (#313, #319) @brunoocasali

๐Ÿš€ Enhancements

  • MeiliSearch#getIndexes now accepts an object with pagination IndexesQuery. (#314) @brunoocasali
  • MeiliSearch#getDocuments<T> now accepts an object with pagination DocumentsQuery. (#312) @brunoocasali
  • MeiliSearch#getDocument<T> now accepts a param called fields which takes an array of strings to remap the response. (#312) @brunoocasali
    โš ๏ธ Be careful with this option since T should be able to handle the missing fields.
  • MeiliSearch#createKey and MeiliSearch#deleteKey accepts both api key or api key uid. (#319, #313) @brunoocasali
  • MeiliSearch#createKey can optionally specify a uid: to generate deterministic API keys. (#319, #313) @brunoocasali
  • Refactor the request function to use a simple request builder (#283) @ppamorim
  • Add a new step into the linter action to validate Podspec (#298) @brunoocasali
  • Remove all the types from the code samples to make them simpler (#306) @brunoocasali
  • Replace all print(error) with dump(error) in the tests (#301) @nicolasvienot

Thanks again to @bidoubiwa, @brunoocasali, @meili-bors[bot], @nicolasvienot and @ppamorim! ๐ŸŽ‰

0.13.2 ๐Ÿ•Š

09 May 12:00
05279fe
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 on the changes.

๐Ÿš€ Enhancements

  • Add new search parameters highlightPreTag, highlightPostTag and cropMarker (#288) @bidoubiwa
  • Ensure nested fields support (#287)
    @bidoubiwa

Thanks again to @bidoubiwa ๐ŸŽ‰

0.13.1 ๐Ÿ•Š

08 May 16:24
f4ad485
Compare
Choose a tag to compare

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

๐Ÿš€ Enhancements

Analytics is enabled by default in the server, but you can disable them by following this guide
Also, of course, every analytics data we collect are ANONYMOUS read the guide for more information.

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

0.13.0 ๐Ÿ•Š

14 Feb 20:27
f66a420
Compare
Choose a tag to compare

This package version is compatible with MeiliSearch v0.25.0 ๐ŸŽ‰

โš ๏ธ Breaking changes

  • Update api to task api (#248) @bidoubiwa

    • Task structure introduced
    • all actions on Indexes except get now return a Task :
      • updateIndex
      • createIndex
      • deleteIndex
    • waitForPendingUpdate is removed and waitForTask is introduced as replacement
    • getStatusUpdate and getAllStatusUpdates are removed.
    • getTask and getTasks and waitForTask are introduced on Indexes and Client instances.
    • All routes returning an Update return now a Task
  • Update keys api (#252) @bidoubiwa

    • New Key structure
    • client.getkeys now returns a Results<Key> object see specification
    • client.getKey returns a Key object of a specific key
    • client.createKey returns a Key object created with a KeyParams object
    • client.updateKey returns a Key object with the updated key
    • client.deleteKey returns void as the chosen key has been deleted
  • Remove GetOrCreateIndex and DeleteIfExistsIndex (#256) @bidoubiwa

    • getOrCreateIndex no longer exists.
    • deleteIfExistsIndex no longer exists. Because deleting an index is now an asynchronous task it will either delete the index or the task will fail. But it will not block any other action.

Thanks again to @alallema, @aronbudinszky, @bidoubiwa, @brunoocasali, @curquiza, @dichotommy, @fatihyildizhan ! ๐ŸŽ‰

0.12.0 ๐Ÿ•Š

22 Nov 14:00
e9d038a
Compare
Choose a tag to compare

This package version is compatible with MeiliSearch v0.24.0 ๐ŸŽ‰

โš ๏ธ Breaking changes

  • Changes related to the next MeiliSearch release (v0.24.0) (#224)

Errors API changes

MeiliSearchApiError interface receives an update in the fields naming. Error fields are replaced by the following:

  • errorCode -> code
  • errorLink -> link
  • errorType -> type
  struct MSErrorResponse: Decodable, Encodable, Equatable {
    public let message: String
    public let code: String
    public let type: String
    public let link: String?
  }

When an update fails, previously the error fields in the update body were also namederrorCode, errorLink, ...
Now error fields are moved inside the error with the same MSErrorResponse type.

  /// Result type for the Update.
  public struct Result: Codable, Equatable {
    /// ...
    /// Error information in case of failed update.
    public let error: MeiliSearch.MSErrorResponse?
  }

Thanks everyone!

0.11.1 ๐Ÿ•Š

11 Nov 18:21
ed4e9c5
Compare
Choose a tag to compare

๐Ÿš€ Enhancements

Thanks again to @Ethenyl, @Hard-Coder05, @IgorChernyshov, @bidoubiwa, @brunoocasali, @curquiza, @edinapap ! ๐ŸŽ‰