#Change Log All notable changes to this project will be documented in this file. Particle iOS Cloud SDK adheres to Semantic Versioning.
Cocoapod Library has been deprecated in favor of the renamed library Particle-SDK
Updated: Product endpoints depracates Org endpoints
Added: Raspberry pi platform 31 support
Added: accountInfo field to createUser (add optional first/last name, company name and business account info to every user signup)
Bigfix: SparkDevice.refresh() now does not nullify the delegate property
Bigfix: Internal device maptable issue
Bigfix: System events subscribe only when SDK has an active access token
Added: Syntax changes for interoperability with Xcode 8 / Swift 3.0
Bigfix: MBs Usage for Electron endpoint API response fix
Bigfix: Functions (Array) and Variables (Dictionary) in a SparkDevice instance will sometimes contain unknown type values for offline devices, this might cause problems with Swift - fixed.
Added: Set both those fields to nonnull for better Swift interoperability.
Added: SparkDevice API function: getCurrentDataUsage for Electron devices
Added: SparkDevice API function: Signal device (make on board LED shout rainbows)
Added: SparkDeviceDelegate protocol - allow SDK user to register for device system events (offline/online/flashing etc)
Bigfix: Critical event subsystem bugfixes
Added: Additional supported device types (P1, RedBear, Bluz, etc)
Added: Support for additional SparkDevice properties (ICCID, IMEI, status, platformId, productId, lastIPAddress)
Added: Automatically Determine device type (family) through platform_id
Bugfix: Correctly encode organization and product names in request URL
Bugfix: FlashFiles API now works
Removed: systemFirmwareVersion property for SparkDevice
Fix a bug with password reset API endpoint
Added support for injecting Session access tokens for two legged auth
SDK no longer saves user password in keychain
SDK will now try to auto refresh expired access token using the OAuth "refresh token"
Merged the SparkUser and SparkAccessToken classes into one SparkSession class
Nullability support for even better Swift interoperability. No more implicitly unwrapped arguments in Swift from SDK callbacks!
Carthage dependency manager support! SDK can now be added as a dynamic framework to ease pain when integrating with Swift dependencies.
AFNetworking 3.0 support - SDK now returns NSURLSessionDataTask object from every network operation function.
SDK now knows about Particle Electrons!
Force AFNetworking pod version to 2.x.x to until migration to 3.x.x requirements is complete
Fix crash in case error object is nil across cloud SDK functions failure blocks
Get rid of compiler warnings
README documentation for OAuth credentials
Signup customers/password reset for user
Detailed error logging from cloud SDK functions
document generateClaimCodeForOrganization func
remove OAuth credentials plist file in favor of new class variables (used to 'feed' client/secret to SparkCloud class)
README fixes, CHANGELOG added
Events pub/sub system added to the Cloud SDK - see here
Continous integration in Travis-CI.
Unit tests added.
Add flash files to device API call (flashFiles:)
Add flash known firmware images to device API call (flashKnownApp:)
Internal isFlashing timer
License updated to Apache 2.0
Added device type field to SparkDevice
Bug fix rename device API call
Device refresh API call available
getDevice API call passes access token as URL parameter