- [DEPRECATED] This library is now deprecated and will be EOL on Dec 31 2021.
- [FIXED] Fixed scope of
Operation.Error
to be exposed as public. - [BREAKING CHANGE] Projects using older Swift tool and language versions will not work with versions newer than 0.8.0.
- [UPGRADED] Minimum Swift language version to 4.2.
- [UPGRADED] Swift tools version and package manifest to version 5.0.
- [NEW] Runs on Swift 4.x on Linux with some limitations (see note).
- [FIXED] Set the default Swift language version in the SwiftCloudant.podspec to 3.1.
- [FIXED] Fixed warning for non-exhaustive switch statement.
- [NOTE] The
GetChangesOperation
is not currently supported by the Linux platform, see issue #176.
- [NEW] Implement convenience init for creating client from VCAP services metadata.
- [NEW] Allow server to generate document IDs if they are set as
nil
in the documents being saved. - [FIXED] Access level warning in the ViewPager class.
- [FIXED] Crash on deallocate for unused client.
- [FIXED] Resolved issue where an infinite retry loop would be triggered if
a
401: Forbidden
response was always received from an endpoint.
- [NEW] Support for Swift 3.0 Release for Darwin Platforms.
- [NEW] New
PutBulkDocsOperation
API. - [NEW] Support for backing off when a 429 status code is encountered, optionally enabled by using
ClientConfiguration
struct. - [NEW] New
GetChangesOperation
API. - [NEW] New
ViewPager
API. - [FIXED] Correctly handle differences between CouchDb and Cloudant for cookie expiration.
- [NEW] Support Swift SNAPSHOT 2016-07-26
- [NEW] New
GetAllDocs
API. - [BREAKING]
skip
andlimit
properties onQueryViewOperation
are nowUInt
- [BREAKING] All APIs have changed to match the API guidelines laid down by the swift community. To see the full list of APIs which have changed, see issue #96
- [FIXED] Created explicit
Sort
andTextIndexField
initalizers so they are exposed as public.
- [FIXED] Fixed scope of members of
Sort
struct, they are now exposed correctly as public.
- [NEW] New FindDocumentsOperation API.
- [NEW] New DeleteAttachmentOperation API.
- [BREAKING]
Database
class has been removed - [BREAKING]
CouchOperation
is now a protocol, in order to useNSOperation
APIs you need to use theOperation
class in conjunction with objects that conform toCouchOperation
- [BREAKING]
CouchDatabaseOperation
is now a protocol. - [NEW]
JsonOperation
andDataOperation
protocols. - [BREAKING]
completionHandler
property is no longer defined onCouchOperation
its replacement iscompletionHander
defined onJsonOperation
andDataOperation
- [BREAKING] The following properties on
CouchOperation
have been renamed:
Previous Name | New Name |
---|---|
httpPath |
endpoint |
httpRequestData |
data |
httpContentType |
contentType |
httpMethod |
method |
- [BREAKING]
QueryItems
property has been removed. - [NEW] parameters property API, used to define HTTP query parameters for a CouchOperation request.
- [FIX] Fixed compatibility with Swift Development Snapshot from 2016-05-09
- [BREAKING CHANGE] Renamed and changed completion handler signatures for all
operations. They are now called
completionHandler
instead ofxxxxCompletionHandler
. Their signature is now(response:[String:AnyObject]?, httpInfo:HttpInfo?, error:ErrorProtocol?) -> Void
. - [IMPROVED] Error objects generated by the library now contain more information such as HTTP status code and the response received.
- [FIX] Fixed issue where the user agent wasn't being generated correctly.
- [FIX] Fixed issue where the
Content-Type
header was not being set correctly. - [FIX] Fixed issue where a
DatabaseOperation
subclass would pass validation when the database name was not set. - [FIX] Fixed issue where the session cookie was not created/set for requests to a protected CouchDB instance.
- [IMPROVED] Simplify operation subclasses processing responses in
CouchOperation
- [NEW] New Hook for operations subclasses to perform additional actions such as a handler for each row in a view response.
- [NEW] New
QueryViewOperation
, to query CouchDB views, see the class documentation for usage. - [NEW] New hook for operation subclasses,
serialise
, for usage see method documentation.
Initial Release