Skip to content

Releases: algolia/algoliasearch-client-swift

3.6

09 Aug 09:23
Compare
Choose a tag to compare
3.6
  • Add explicit support for tvOS in the Cocoapods pod spec. (In fact, tvOS has been supported for a while in our code, but somehow never made it to the pod spec.) Note: not supported by the offline mode.
  • Add support for HTML documentation generation via Jazzy
  • Fix behavior of the exhaustiveFacetsCount response field when using disjunctive faceting
  • Migrate the User-Agent HTTP header to a new, more parseable format; now also includes the operating system's version.
  • Change value of ErrorDomain constant. Note: not a breaking change unless you relied on the value itself.
  • Update documentation

Offline mode

  • Expose last successful sync date (property MirroredIndex.lastSuccessfulSyncDate)

3.5

29 Jul 08:59
Compare
Choose a tag to compare
3.5
  • New multipleQueries() method at index level
  • Fix cancellation of requests: in some edge cases, the completion handler could be called after cancellation
  • Fix potential crash when cancelling requests (unsafe assertions were made)

The following changes are for the offline mode only:

  • New offline fallback strategy. Warning: breaking change: preventive search no longer supported.
  • Offline requests now also work for disjunctive faceting
  • The searchMirror() method has been renamed to searchOffline(), for better consistency with the newly introduced searchOnline() method.
  • Improve detection of non-existent indices

3.4

25 Jul 10:09
Compare
Choose a tag to compare
3.4
  • New Client.isAlive() method (/1/isalive endpoint)
  • Completion handler is now mandatory for multiple queries. Warning: breaking change
  • (#88) Fix passing of strategy parameter in multiple queries (should be POST instead of GET)
  • (#103) Fix URL encoding of path components (e.g. spaces in index names)
  • Add test case for TCP connection dropping

3.3

29 Jun 08:11
Compare
Choose a tag to compare
3.3
  • (#77) Support a list of languages as a value for the removeStopWords query parameter. Warning: The type of the
    corresponding property had to be degraded from Bool? to AnyObject?; as a consequence, the getter suffers from an
    incompatible change (but not the setter).
  • (#79) Support aroundRadius=all in query parameters
  • (#76) Support the exactOnSingleWordQuery query parameter
  • (#76) Support the alternativesAsExact query parameter
  • (#74) Support Swift 2.3
  • (#75) Fix iTunes Connect submission issue when using Carthage: minimum iOS version is now 8.0
  • Update documentation

3.2.1

27 May 09:59
Compare
Choose a tag to compare
  • Fix OS X support in Cocoapods

3.2

26 May 16:12
Compare
Choose a tag to compare
3.2
  • Support iOS 7.0
    • Warning: Because Cocoapods uses dynamic frameworks and Swift is not supported in dynamic frameworks on iOS 7,
      iOS 7 support is not possible through Cocoapods.
    • Warning: Due to unavailability of simulators earlier than iOS 8.1 in Xcode 7.3, iOS 7 remains untested.
  • README updated
  • [Test] Add test case for DNS time-out

Experimental features

  • Offline mode. Note: requires the Algolia Search Offline Core library. Warning: beta version.

3.1

09 May 08:43
Compare
Choose a tag to compare
3.1
  • Add tvOS target
  • Restore Carthage support
  • Add typed properties for query parameters filters and numericFilters
  • Shuffle host array at init time, for better load balancing
  • Update documentation
  • Fix unit tests: remove broken "keep alive" test case

3.0

13 Apr 10:19
Compare
Choose a tag to compare
3.0

This major version brings new features and bug fixes. In addition, a lot of refactoring has been performed to achieve
better Objective-C bridging, better maintainability, as well as to align the Swift client with the other Algolia API
clients.

As a consequence, the public interface has changed in an incompatible way. Please refer to our
Migration Guide for
detailed instructions.

New features

  • Allow arbitrary query parameters to be specified: the Query class provides low-level, untyped accessors in addition
    to the higher-level, typed properties.
  • Allow arbitrary HTTP headers to be specified (Client.headers)
  • Asynchronous requests are cancellable: asynchronous methods return an NSOperation instance, making it possible to
    call cancel() on it.
  • Timeout settings now user-configurable
  • Batch operation support
  • Multiple queries strategy parameter support
  • Disjunctive faceting helper
  • Delete by query helper
  • Browse iterator helper (BrowseIterator)

Changes

  • Asynchronous methods completion block argument renamed to completionHandler for better consistency with the
    system libraries (in particular NSURLSession)
  • Align Query class parameters with the REST API
  • Remove operations requiring an admin API key. (The admin key should never be used on the client side.)
  • Browse methods now only low-level. (For high-level iteration, use the BrowseIterator helper; see above.)
  • Remove accessors to deprecated HTTP headers

Fixes

  • Full Objective-C bridging: all features are now available from Objective-C.
  • More consistent error handling
  • Fix percent-escaping of query parameters in URLs
  • Fix Swift 2.2 deprecation warnings
  • HTTP headers can now be changed during the client's lifetime

Misc. improvements

  • Minimize public interface
  • Update documentation
  • Add test cases

1.2.2

16 Jun 09:56
Compare
Choose a tag to compare
Bump to 1.2.2

1.2.1

09 Jun 07:48
Compare
Choose a tag to compare
Rename fullTextQuery to query, close #6