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.20.4 - Nov 15, 2018
3.20.3 - Nov 1, 2018
- Prevent multiple calls to initialize client (#333)
3.20.2 - Oct 26, 2018
3.20.1 - Oct 18, 2018
- Minor fix and improvement for observe objects (#329)
3.20.0 - Oct 3, 2018
- Adding basic support for command line apps (#324)
- Replace logger library dependency
XCGLoggerin favor of
- Reduce unused space in the cache file during launch. New optional parameter named
Client.initialize()method with the default value
Codablesupport for Social Identities (#323)
- Bugfix for crash when a non-objc property is set. Please override the
User.refresh(anotherUser: refreshCustomProperties:)method in your
Usersubclass if you have non-objc properties in your subclass (#326)