Skip to content

Releases: dropbox/dropbox-sdk-obj-c

Global response handlers

29 Mar 20:23
Compare
Choose a tag to compare

Added

  • Added global error handling capability. Read more here.
  • Added easy task retry. Read more here.
  • Exposed access token in clients.
  • Added isRequiredDropboxAppInstalled for OpenWith partners.

Fixed

  • Improved token migration handler behavior.
  • Separate clients by auth-type, not namespace.
  • Fixed app-extension safety regression.
  • Improved batch upload to handle very large number of files.
  • Fixed redefining block variables, and added explicit self-> references.

Bug fixes

21 Mar 01:00
Compare
Choose a tag to compare

Bug fixes

  • Fixed isAuthorized bug.
  • Removed un-localized "Link to Dropbox" OAuth view title.

Bug fixes and feature requests

10 Mar 01:18
Compare
Choose a tag to compare

Bug fixes

  • Fix reauthorizeClient bug.
  • nil DBTransportConfig shared object after auth.
  • A few small assorted bugs.

Feature request

  • Expose sharedContainerIdentifier in DBTransportConfig object.
  • Separated relevant SDK constants into a public file.

Bug fixes and Feature Requests

01 Mar 04:40
Compare
Choose a tag to compare

Bug fixes

  • Batch upload bugs fixed (including response handler called too many times, not uploading files of size that is a multiple of the chunk upload size, and implementing a more granular progress handler).
  • SDK longpoll timeout extended to support API longpoll timeout length.

Feature requests

  • Support for partial download is exposed now for all download methods.
  • macOS example project is included in the SDK.
  • Controllers are now nullable in authorizeFromController for iOS and macOS.

Feature Requests

23 Feb 02:22
Compare
Choose a tag to compare

Feature Requests

  • OAuth token migration tool for migrating API v1 tokens to API v2 tokens (documentation here)
  • Tokens saved in the last 4 years via the iOS / OS X Core SDKs and iOS / OS X Sync SDKS are covered

Official Partner OpenWith logic

17 Feb 22:49
Compare
Choose a tag to compare

New Features

  • SDK now supports handling our "OpenWith" flow that Dropbox official partners use. Third-party developers should not need to use any of this logic (which is in Source/ObjectiveDropboxOfficial/Platform/ObjectiveDropboxOfficial_iOS/OfficialPartners/OpenWith/)

Breaking Changes, Bug Fixes and Public Spec Updates

17 Feb 19:44
Compare
Choose a tag to compare

Breaking Changes

We apologize for the breaking changes here, but a few classes and methods have been renamed in the latest version of the SDK, which will break your existing integrations. These changes reflect a change in naming philosophy to conform to platform-specific (here, Obj-C) standards, over our Dropbox API standards.

Here are the interface-breaking name changes:

Basic use cases:

  • DropboxClient class --> DBUserClient
  • DropboxTeamClient class --> DBTeamClient
  • DropboxClientsManager class --> DBClientsManager
  • DBTransportClient class --> DBTransportDefaultClient
  • DBError class --> DBRequestError
  • response: method for installing handlers --> setResponseBlock:
  • progress: method for installing progress handlers --> setProgressBlock:
  • unlinkClients method (in DBClientsManager) --> unlinkAndResetClients

Advanced use cases:

  • setupWithAppKey:transportClient method for customizing networking behavior --> setupWithTransportConfig: which takes a DBTransportDefaultConfig wrapper class around the networking parameters
  • All analogous setUpWith... methods (for Desktop, Team, and Multi-User) have been updated likewise.

There were several other renamings, but those shouldn't affect usage of the SDK by external parties.

We know these breaking changes can be a pain – sorry for the inconvenience! Hopefully, it should be a quick refactor in your existing code, and will make things clearer going forward, as we adopt a more consistent, understandable naming convention.

If you run into issues, please don't hesitate to reach out in the Issues section of our GitHub page.

Bug fixes

  • DB prefix more standardized now (removed Dropbox prefix), and name-collision likely names like DBBase have been renamed.
  • Fixed DBTask cancellation exception bug (now implements suspend, start, resume).
  • Compilation times much faster now (implementation logic has been consolidated into only a few files now).
  • Support locale in OAuth flow (defaults to current locale on device).
  • Fixed bug where cancel handler isn't executed when offline.
  • Fixed open Unions throwing exception for unseen field bug.
  • Fixed warnings when integrating with non-ARC project.
  • README updated and now up-to-date.
  • Example projects updated and now up-to-date.
  • Separated transport layer and generated/handwritten layers out more cleanly.

Spec update

Files namespace:

  • Added Sha256HexHash alias.
  • Added content_hash to FileMetadata.
  • Added upload_api_rate_limit feature attribute to upload_session/start, upload_session/append_v2, upload_session/append, upload, upload_session/finish_batch.
  • Added duplicated_or_nested_paths to RelocationError and removed from RelocationBatchError.
  • Added properties api_group attribute and is_preview attribute to properties/*.
  • Added disable_viewer_info and enable_viewer_info to CommitInfoWithProperties.
  • Added link_metadata to SharedFileMetadata.
  • Added ViewerInfoPolicy union.
  • Added no_explicit_access to MemberSelector.
  • Deprecated change_file_member_access.
  • Added update_file_member route and UpdateFileMemberArgs struct.

Sharing namespace:

  • Added viewer_info_policy, disable_viewer_info, enable_viewer_info to FolderPolicy.
  • Added team, is_inside_team_folder, path_lower to SharedLinkPolicy.
  • Added link_metadata, policy, shared_folder_id, time_invited to SharedFolderMetadata.
  • Added actions, link_settings, viewer_info_policy to ShareFolderArg and removed default values from policies in ShareFolderArg.
  • Added viewer_info_policy, link_settings to UpdateFolderPolicyArg.

Stone Cfg namespace:

  • Added attribute api_group, is_preview.
  • Removed attributes alpha_group, beta_group.

Team namespace:

  • Added joined_on, persistent_id to MemberProfile.
  • Added team_member_id, external_id to UserSelectorArg.
  • Added TeamMemberId, MemberExternalId, GroupExternalId, ResellerId aliases.
  • Added company_managed, system_managed to GroupManagementType.
  • Added TimeRange.
  • Added archive_in_progress to TeamFolderStatus, TeamFolderIdArg.
  • Added BaseTeamFolderError.
  • Added folder_name_reserved to TeamFolderCreateError.
  • TeamFolderRenameError, TeamFolderArchiveError, BaseTeamFolderError, TeamFolderPermanentlyDeleteError now extend BaseTeamFolderError.
  • Added folder_name_reserved to TeamFolderRenameError.
  • Added GroupSelectorWithTeamGroupError.
  • GroupMemberSelectorError, GroupMembersSelectorError now extends GroupSelectorWithTeamGroupError.
  • Removed alpha from alpha/groups/*.
  • GroupDeleteError, GroupUpdateError, GroupMembersAddError now extends GroupSelectorWithTeamGroupError.
  • Added members_not_in_team, users_not_found to GroupMembersAddError.
  • Added joined_on to TeamMemberProfile.
  • Added member_persistent_id, duplicate_member_persistent_id, persistent_id_disabled, new_persistent_id, persistent_id_disabled, persistent_id_used_by_other_user to MemberSelectorError.

Bug fixes

16 Dec 04:34
Compare
Choose a tag to compare

Bug fixes

  • Fixed bug with Keychain token storage.
  • Fixed bug with umbrella header.
  • Restructured network tasks to implement abstract class.
  • Fixed errors from analyzer (mostly around nullability).

Bug fixes

13 Dec 00:09
Compare
Choose a tag to compare

Bug fixes

  • Fixed bug with download to data method, where no error data was returned, even in the event of failure.
  • Reset resource timeout for background NSURLSession actions to its old default (1 week).

Bad Release

13 Dec 00:07
Compare
Choose a tag to compare

Bad release – please do not pull.