Releases: box/box-ios-sdk
v3.0.0-alpha.3
Box iOS Swift SDK for Limited Beta Release
Disclaimer:
- This is beta software. It has not been not fully tested, and may not be at a level of performance or compatibility of generally available software or services Box offers.
- Any use of this software is governed by the attached Box SDK Beta Agreement. If you do not accept the terms of the Box SDK Beta Agreement, you may not use this software.
- This beta software should not be used in live/production environments; it is for development / test only.
- This beta software will be updated frequently and breaking changes should be expected
- This limited beta is intended for select Box customers
- Please send all feedback / questions to: [email protected]
Breaking Changes:
- Changed File Entry Container "entries" from optional to not optional
New Features and Enhancements:
- Added support for Web Links
- Added support for Trash endpoints
- Added support for Recent Items
- Added support for File Version endpoints
- Added support for Delete File endpoint
- Added support for Chunked Upload Endpoints
- Added support for upload preflight check
- Added support for downloading a representation of a file
- Added support for custom OAuth2 Callback URL
- Added KeychainTokenStore for OAuth2SampleApp
v3.0.0-alpha.2
Box iOS Swift SDK for Limited Beta Release
Disclaimer:
- This is beta software. It has not been not fully tested, and may not be at a level of performance or compatibility of generally available software or services Box offers.
- Any use of this software is governed by the attached Box SDK Beta Agreement. If you do not accept the terms of the Box SDK Beta Agreement, you may not use this software.
- This beta software should not be used in live/production environments; it is for development / test only.
- This beta software will be updated frequently and breaking changes should be expected
- This limited beta is intended for select Box customers
- Please send all feedback / questions to: [email protected]
Breaking Changes:
- Moved some constants to different namespaces:
Box.rootFolder
is nowBoxSDK.Constants.rootFolder
Box.currentUser
is nowBoxSDK.Constants.currentUser
- Updated the arguments that
client.files.updateFileInfo()
takes for consistency with the rest of the SDK - Changed the type of the
expiresAt
arguments inclient.files.lockFile()
fromString
toDate
- Removed unused arguments from
client.files.unlockFile()
- Changed the type of the
unsharedAt
andpassword
arguments ofclient.files.setSharedLink()
and
client.folders.setSharedLink()
to accept.null
values - Replaced the
access
,password
,unsharedAt
, andcanDownload
arguments ofclient.folders.updateFolder()
with
a singlesharedLink
argument to enable setting the entire shared link field to.null
in order to remove the
shared link - Replaced
client.getFavoritesCollectionId()
withclient.collections.getFavoritesCollection()
- Removed
client.collections.addItemsToCollection()
andclient.collections.deleteItemsFromCollection()
- Changed the result type for
client.files.addFileToFavorites()
,client.files.addFileToCollection()
,
client.files.removeFileFromFavorites()
, andclient.files.removeFileFromCollection()
fromVoid
toFile
- Changed the result type for
client.folders.addFolderToFavorites()
,client.folders.addFolderToCollection()
,
client.folders.removeFolderFromFavorites()
, andclient.folders.removeFolderFromCollection()
fromVoid
to
Folder
New Features and Enhancements:
- Added support for token downscoping
- Added a
KeychainTokenStore
implementation to enable persisting authentication state on the Keychain - The SDK now automatically clears the token store after destroying a client and revoking its tokens
v3.0.0-alpha.1
Box iOS Swift SDK for Limited Beta Release
Disclaimer:
- This is beta software. It has not been not fully tested, and may not be at a level of performance or compatibility of generally available software or services Box offers.
- Any use of this software is governed by the attached Box SDK Beta Agreement. If you do not accept the terms of the Box SDK Beta Agreement, you may not use this software.
- This beta software should not be used in live/production environments; it is for development / test only.
- This beta software will be updated frequently and breaking changes should be expected
- This limited beta is intended for select Box customers
- Please send all feedback / questions to: [email protected]
v2.4.0
- Added functionality for getting the current version of a file
v2.3.0
- Slightly updated App Auth interface to be more ergonomic
- Added ability to get information for a User by ID
- Allowed caching Item responses from shared link creation requests
- Added the
defaultInviteeRole
field onBOXItem
and the ability to request this field - Added a method to refresh the user avatar in a
BOXUserAvatarImageView
Better support for App Users
For details about 'App User' inplementation, please reference 'Multi-Account Mode' found in /doc/Authentication.md
Using this release, you will have to migrate any code that reference BOXUser properties directly from BOXContentClient. The BOXUser model now conforms to the UniqueSDKUser protocol. In cases where you only support a single user or [BOXContentClient defaultClient], you can reference the BOXUser properties simply by casting. Please see the multi-account mode reference for support of multi-user accounts.
/*
The Box user associated with this SDK client. This will be nil if no user has been authenticated yet.
*/
@Property (nonatomic, readonly, strong) id user;
For code that referenced the BOXUser model properties directly from the BOXContentClient instance (defaultClient), you can cast the results to a BOXUser and reference the user properties.
You may have had:
BOXContentClient.defaultClient.user.modelID
To migrate your code, check for type and then proceed to cast for use
if ([(id)self.client.user isKindOfClass:[BOXUserMini class]]) {
NSString *currentUserID =((BOXUserMini*)self.client.user).modelID;
}
Although BOXUserMini suffices, you can also check for class type against BOXUser.
v2.1.0
v2.0.0
Notable changes
- Update sample app for build compatibility
- Update original file url reference to use authenticated_download_url (#547)
- Update reps interface in content SDK remove ns_options to enum and remove variadic list methods to use array list (#546)
- undo commit 252e6e deprecating foreground uploads (#545)
- IOS-15890 Video conversion in progress should check 'viewable' status as well as 'success' for reps status (#543)
- Removing the set representation option method that used va_list parameters to support the swift bridge, changing the method to an NSSet parameter. For consitentcy we should follow up migrating the objc set represetation option method as well. (#541)
- Support the ability to preview original file formats (#539)
- Add digest check to representation file downloads (#538)
- Replaces SHA_DIGEST_LENGTH to CC_SHA1_DIGEST_LENGTH
- Minor cleanup in codebase.
- Prefer hls video playback representations for iOS 11
- Add md5 header to uploads and content processor to streaming multipart upload to calculate digest (#530)
- Remove dicom representation since it is unused
- Adding a swift compatible set representation options method to the file request class
- Allow File Provider to use representations endpoints for download to retrieve assets with the addition of background tasks awareness.
- IOS-15606: part 3 to register background/foreground notification instead of resign/active (#520)
- IOS-15615 offline and preview of word documents representations error handling
- IOS-15606: part 2 to fix sso login issue if app goes into background (#517) (#518)
- IOS-15615 Offline, preview of video files hls v mp4 v content playback issue
- IOS-15205: part2 make sure token request's associated access token is set correctly
- IOS-15543 switching out authenticated_download_url to download_url
- IOS-15543 Add static representation strings for a file
- Add background task to fix potential SSO failure (#510)
- add repsInfoRequest and model
- IOS-15205-analytics: add analytics to verify the logout fix
- IOS-15205: fix random logout by refreshing session's tokens if there is newer access token in keychain
- fix representation test
- Downgrade testApp to Xcode 8.3
- Fix BOXContentSDK Tests. Added TestApp to fix keychain tests.
- Fix parse and add tests.
- Add new search func to included unified meta data template keys
- Add unified metadata properties to boxItem and metadata search
- Moving original document field request into the File Request from the default all fields
- Addresses various CR responses
- IOS-15063 Download the best available file format on demand
v1.1.3
Notable changes
- Fix a potential issue with putting the operation on the wrong queue.
- Modify BOXMetadata model to support new API models.
- Added new setting to toggle NSURL cache
- Fixed a potential race condition when caching URLSession requests responses.
- Removed unnecessary line in session task cancel request error handling
- Update Cartfile
- Update simulator used by travis CI
v1.1.2
Notable changes
- Correct BOX0Auth2Session Header comments names
- Add headers for shared links
- Add BOXLog support
- Adds 1024, 2048 thumbnail sizes support
- Update the UIDevice category to include the latest version and device information
- Updated base URL path versioning
- Be tolerant of null values for user created/modified dates. We would get those values from the API for special cases such as 'prior collboarator' and 'anonomyous user'.
- Allow permanent deletes on trashed files and folders
- Unversioned base URL support
- Allow trashedFolderInfoRequest associatedID to be nullable
- Remove unused schedule on runloop when serializing multipart request
- Adding background session capabilities to file/folder restore item
- Fix nullable warnings in BOXContentClient+Folder
- Bug fix removing request serialization on main thread
- Adding background session functionality to folder delete requests
- Adding background tasks to delete and trash file requests
- Add BOXUserAvatarImageView
- Update cache protocol to provide the total item count for a paginated folder items request.
- Don't try to load a nil user
- Delay the keychain read in the case of a race condition, to be more confident that we'll recover.
- Addressed code review comments.
- Make sure we do not immediately logout in case of refresh token being invalidated by race condition.
- Remove invalid entry in proj file for NSString+BOXURLHelper
- Update the App Users documentation links
- Add caching protocol for BOXUserAvatarRequest.