Kinvey iOS SDK
The Kinvey iOS SDK is a package that can be used to develop iOS applications on the Kinvey platform. Refer to the Kinvey DevCenter for documentation on using Kinvey.
In the version 3 of the library, all new code is written in Swift and any application using v3 must also use Swift to access the API.
While we transition from Objective C to the latest Swift versions, we will use the following branching scheme. Please, pick the right version of our library depending of which langugage / version you are using:
| Language / Version | Kinvey SDK Version | Development Branch | | ------------------ | ------------------ | --------------- | | Swift 3 and Swift 4 | 3.3.0 and above | master | | Swift 2.3 | 3.2.x | 3.2 | | Objective-C | 1.x | 1.x |
masterbranch represents the latest release of the SDK. See the CONTRIBUTING guidelines for details on submitting code.
- On version 1.x, use the
KinveyKitworkspace. On all other versions, use the
carthage build: build the dependencies frameworks using
make: runs a script that compile and generate the documentation files using
Xcode to run the unit tests.
- Open the file
- Select the
- Select the menu item
Or run the command line:
Important Note: adding the environment variables KINVEY_APP_KEY, KINVEY_APP_SECRET and KINVEY_MIC_APP_KEY will allow you to run the tests against a real Kinvey environment.
We use GitFlow workflow for better management.
The workflow for releasing a new version of the SDK is as follows:
- Merge all waiting pull requests / feature branches on the develop branch.
- Bump the version running
make set-versionon the develop branch.
- Checkout the master branch and merge the develop branch.
- Tag the version with git.
- Push all changes.
- Upload the zip file containing all the binary files for Amazon AWS.
make deploy-cocoapodsin order to publish the new release for CocoaPods
API Reference Docs, and the
Downloadsection in the DevCenter repo.
- Push all changes to deploy.
- Send the email with the release notes for the
Updating the sdk version should follow Semantic Version 2.0.0:
- Major (x.0.0): when making an incompatible API changes.
- Minor (3.x.0): when adding functionality in a backwards-compatible manner.
- Patch (3.0.x): when making backwards-compatible bug fixes or enhancements.
See LICENSE for details.
See CONTRIBUTING.md for details on reporting bugs and making contributions.
Help us keep the lights on
3.24.0 - Apr 29, 2019
- New methods
clearSync()to match with other platforms. Auto
DataStoretests and changes around it. (#356)
Clientinstance usage for aggregate functions on
DataStore.syncCount()deprecated in favor of
3.23.0 - Apr 12, 2019
3.22.0 - Feb 27, 2019
- Avoiding block the UI thread when access to cache is required (#350)
publicso changes to the logged user can be listen (#352)
- Adding new
.auto, which prioritize network requests first and, if fails for network reasons, returns local cache data without call the callback twice (#337)
.cacheis now deprecated in favor of
3.21.3 - Feb 13, 2019
- Converting dates in queries to ISO 8601 format (#349)