Skip to content

Latest commit

 

History

History
732 lines (480 loc) · 24.1 KB

CHANGELOG.md

File metadata and controls

732 lines (480 loc) · 24.1 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

Important

Full Changelog

8.2.0

Changed

  • Remove SignalHandler to avoid hiding root cause of crashes caused by fatal signals.
  • Expose functions in FBSDKUserDataStore as public for apps using Audience Network SDK only to use advanced matching.

2020-11-10 | Full Changelog

8.1.0

Added

  • Introduced AppLinkResolverRequestBuilder for use in cleaning up and adding tests around AppLinkResolver

Changed

  • Removed version checks for iOS 9 since it’s the default version now.
  • Refactored AppLinkResolver to use a request builder
  • Refactored and added tests around FBSDKProfile and FBSDKProfilePictureView
  • Updated FBSDKSettings to use ADIdentifierManager for tracking status
  • Removes usages of deprecated UI_USER_INTERFACE_IDIOM()

Fixed

  • Issues with Swift names causing warnings - #1522
  • Fixes bugs related to crash handling - #1444
  • Fixes Carthage distribution to include the correct binary slices when building on Xcode12 - #1484
  • Fixes duplicate symbol for FBSDKVideoUploader bug #1512
  • GET requests now default to having a 'fields' parameter to avoid warnings about missing fields #1403
  • Fixes Multithreading issue related to crash reporting - #1550

2020-10-23 | Full Changelog

8.0.0

Added

  • Added timestamp for install event in iOS 14
  • Added method setAdvertiserTrackingEnabled to overwrite the advertiser_tracking_enabled flag
  • Added SKAdNetwork support for installs
  • Added SKAdNetwork support for conversion value in iOS 14
  • Added FBSDKReferralManager for integrating with the web referral dialog
  • Added method loginWithURL to FBSDKLoginManager for supporting deep link authentication
  • Added E2E tests for all in-market versions of the SDK that run on server changes to avoid regressions

Changed

  • Event handling in iOS 14: will drop events if setAdvertiserTrackingEnabled is called with false in iOS 14
  • FBSDKProfile - imageURLForPictureMode:size: - User profile images will only be available when an access or client token is available

Deprecated

  • FBSDKSettings - isAutoInitEnabled - Auto-initialization flag. Will be removed in the next major release. Future versions of the SDK will not utilize the + load method to automatically initialize the SDK.

Fixed / Patched

  • #1444 - Update crash handling to use sigaction in signal handler and respect SIG_IGN
  • #1447 - Login form automatically closing when SDK is not initialized on startup
  • #1478 - Minimum iOS deployment target is now 9.0
  • #1485 - StoreKit is now added as a weak framework for CocoaPods
  • Bug fix for Advanced Matching, which was not working on iOS 14

2020-09-22 | Full Changelog

7.1.1

Fixed

  • Fix data processing options issue

2020-06-25 | Full Changelog

7.1.0

Added

  • Introduce DataProcessingOptions

Deprecated

  • Remove UserProperties API

2020-06-23 | Full Changelog

7.0.1

🚨🚨🚨Attention! 🚨🚨🚨

This release fixes the ability to parse bad server configuration data. Please upgrade to at least this version to help avoid major outtages such as #1374 and #1427

Added

  • Added additional unit tests for FBSDKRestrictiveDataFilterManager
  • Added integration test for building with xcodebuild
  • Added safer implementation of NSJSONSerialization methods to FBSDKTypeUtility and changed callsites
  • Added 'fuzz' testing class to test our network response parsing won't crash from bad/unexpected values

Fixed

  • Issue #1401
  • Issue #1380
  • Previously, we could not remove AAM data if we opt out some rules. Now, we align with Android AAM and add an internalUserData to save AAM data. And we only send back the data of enabled AAM rules.
  • Fix a bug where we were not updating Event Deactivation or Restrictive Data Filtering if the enable() function was called after the update() function
  • Restrictive data filtering bug where updating filters would exit early on an empty eventInfo parameter.
  • Enabling bitcode by default; we used to disable bitcode globally and enable it for certain versions of iphoneos due to Xcode 6 issue, given we've dropped the support for Xcode 6, it's cleaner to enable bitcode by default.

Changed

  • Now using FBSDKTypeUtility to provide type safety for Dictionaries and Arrays
  • Updates code so that NSKeyedUnarchiver method calls will continue to work no matter what the iOS deployment target is set to.
  • Skips sending back app events when there are no encoded events.

Deprecated

  • MarketingKit

2020-06-08 | Full Changelog

7.0.0

Changed

  • Using version 7.0 of the Facebook Graph API
  • Dropping support for Xcode versions below 11. This is in line with Apple's plans to disallow submission of Apps that do not include the iOS 13 SDK. This means that from v7.0 on, all SDK kits will be built using Xcode 11 and Swift 5.1.
  • Include the enhanced Swift interfaces

This primarily matters for how you include CocoaPods

Distribution Channel Old way New Way
CocoaPods pod 'FBSDKCoreKit/Swift' pod 'FBSDKCoreKit'
Swift Package Manager No change No change
Carthage No change No change

Deprecated

  • FBSDKMarketingKit

2020-05-05 | Full Changelog

6.5.2

  • Various bug fixes

2020-04-29 | Full Changelog

6.5.1

Fixed

  • The Swift interface for SharingDelegate should not have a nullable error in the callback.
  • Fixes issue with login callback during backgrounding.
  • Minor fixes related to Integrity

2020-04-23 | Full Changelog

6.5.0

Added

  • More usecase for Integrity is supported.

2020-04-20 | Full Changelog

6.4.0

Added

FBSDKMessageDialog now accepts FBSDKSharePhotoContent.

FBSDKGamingServicesKit/FBSDKGamingImageUploader.h uploadImageWithConfiguration:andResultCompletionHandler: uploadImageWithConfiguration:completionHandler:andProgressHandler:

FBSDKGamingServicesKit/FBSDKGamingVideoUploader.h uploadVideoWithConfiguration:andResultCompletionHandler: uploadVideoWithConfiguration:completionHandler:andProgressHandler:

Deprecated

FBSDKGamingServicesKit/FBSDKGamingImageUploader.h uploadImageWithConfiguration:andCompletionHandler:

FBSDKGamingServicesKit/FBSDKGamingVideoUploader.h uploadVideoWithConfiguration:andCompletionHandler:

2020-03-25 | Full Changelog

Changed

Various bug fixes, CI improvements

6.3.0

Added

  • Support new event type for suggested events

2020-03-25 | Full Changelog

6.2.0

Added

  • Support for Gaming Video Uploads
  • Allow Gaming Image Uploader to accept a callback
  • Messenger Sharing

2020-03-09 | Full Changelog

6.0.0

Updated

  • Uses API version 6.0 by default

Fixed

  • FBSDKShareDialog delegate callbacks on apps using iOS 13

Removed

ShareKit

  • Facebook Messenger Template and OpenGraph Sharing
  • FBSDKMessengerActionButton
  • FBSDKShareMessengerGenericTemplateContent
  • FBSDKShareMessengerGenericTemplateElement
  • FBSDKShareMessengerMediaTemplateMediaType
  • FBSDKShareMessengerMediaTemplateContent
  • FBSDKShareMessengerOpenGraphMusicTemplateContent
  • FBSDKShareMessengerURLActionButton
  • FBSDKShareAPI since it exists to make sharing of open graph objects easier. It also requires the deprecated publish_actions permission which is deprecated.
  • Property pageID from FBSDKSharingContent since it only applies to sharing to Facebook Messenger
  • FBSDKShareOpenGraphAction
  • FBSDKShareOpenGraphContent
  • FBSDKShareOpenGraphObject
  • FBSDKShareOpenGraphValueContainer

CoreKit

  • FBSDKSettings property instrumentEnabled
  • Sharing of open graph objects. This is because the "publish_actions" permission is deprecated so we should not be providing helper methods that encourage its use. For more details see: https://developers.facebook.com/docs/sharing/opengraph
  • FBSDKAppEventNameSubscriptionHeartbeat

LoginKit

  • FBSDKLoginBehavior Login flows no longer support logging in through the native application. This change reflects that.

2020-02-03 | Full Changelog

5.15.1

Fixed

  • fix multi-thread issue for Crash Report
  • fix write to file issue for Crash Report

2020-01-28 | Full Changelog

5.15.0

Fixed

  • fix for CocoaPods (i.e. macro FBSDKCOCOAPODS)
  • fixes a bug in for sharing callbacks for apps using SceneDelegate

2020-01-21 | Full Changelog

5.14.0

Added

  • SPM Support for tvOS

Fixed

  • fix for CocoaPods static libs (i.e. no use-frameworks!)
  • various bug fixes and unit test additions

2020-01-14 | Full Changelog

5.13.1

Fixed

  • bug fix for address inferencer weights load

2019-12-16 | Full Changelog

5.13.0

2019-12-11 | Full Changelog

Added

  • Parameter deactivation

Fixed

  • Update ML model to support non-English input

5.12.0

Changed

  • Updated suggested events

2019-12-03 | Full Changelog

5.11.1

2019-11-19 | Full Changelog

Fixed

  • Accelerate automatically linked for SPM installs 6c1a7e
  • Fixes building for Unity 6a83270
  • Updates build scripts, various bug fixes

5.11.0

2019-11-14 | Full Changelog

Added

  • Launch event suggestions

5.10.1

2019-11-12 | Full Changelog

Fixed

  • Various bugfixes with SPM implementation

5.10.0

2019-11-06 | Full Changelog

Added

  • Support for Swift Package Manager

5.9.0

2019-10-29 | Full Changelog

Changed

  • Using Graph API version 5.0

5.8.0

2019-10-08 | Full Changelog

Added

5.7.0

2019-09-30 | Full Changelog

Changed

  • Nullability annotation in FBSDKCoreKit

Fixed

  • Various bug fixes
  • Build scripts (for documentation and to support libraries that include Swift)

5.6.0

2019-09-13 | Full Changelog

Changed

  • Fixed FB Login for multi-window apps that created via Xcode 11
  • Added support for generate_multiple_pod_projects for cocoapods 1.7.0
  • Improved performance and stability of crash reporting
  • Added user agent suffix for macOS

Fixed

  • Various bug fixes

5.5.0

2019-08-30 | Full Changelog

Changed

  • Replaced UIWebView with WKWebView as Apple will stop accepting submissions of apps that use UIWebView APIs
  • Added support for Catalyst

Fixed

  • Various bug fixes

5.4.1

2019-08-21 | Full Changelog

Changed

  • Deprecated +[FBSDKSettings isInstrumentEnabled], please use +[FBSDKSettings isAutoLogEnabled] instead

Fixed

  • Fix Facebook Login for iOS 13 beta
  • Various bug fixes

5.4.0

2019-08-15 | Full Changelog

Changed

  • Add handling for crash and error to make SDK more stable

5.3.0

2019-07-29 | Full Changelog

Changed

  • Graph API update to v4.0

5.2.3

2019-07-15 | Full Changelog

Fixed

  • Fixed Facebook Login issues

5.2.2

2019-07-14 | Full Changelog

Fixed

  • Fixed Facebook Login on iOS 13 beta
  • Various bug fixes

5.2.1

2019-07-02 | Full Changelog

Fixed

  • Various bug fixes

5.2.0

2019-06-30 | Full Changelog

Fixed

  • Fixed a crash caused by sensitive data filtering
  • Fixed FB Login for iOS 13

5.1.1

2019-06-22 | Full Changelog

5.1.0

2019-06-21 | Full Changelog

5.0.2

2019-06-05 | Full Changelog

Fixed

  • Various bug fixes

5.0.1

2019-05-21 | Full Changelog

Fixed

  • Various bug fixes

5.0.0

2019-04-30 | Full Changelog

Added

  • support manual SDK initialization

Changed

  • extend coverage of AutoLogAppEventsEnabled flag to all internal analytics events

Added

  • Typedefs for public Objective-C blocks
  • NS_DESIGNATED_INITIALIZER for required inits
  • NS_TYPED_EXTENSIBLE_ENUM where made sense
  • getter name for certain properties, like booleans
  • NS_ASSUME_NONNULL_BEGIN, NS_ASSUME_NONNULL_END, and other nullability annotations
  • Generics for Arrays, Sets, and Dictionaries
  • NS_SWIFT_NAME to remove the FBSDK prefix where necessary (left FB prefix for UI elements)
  • FBSDKLoginManager -logInWithPermissions:fromViewController:handler:
  • FBSDKLoginButton permissions
  • FBSDKDeviceLoginButton permissions
  • FBSDKDeviceLoginViewController permissions
  • New FBSDKAppEventName values

Changed

  • Using instancetype for inits
  • All NSError ** translate to throws on Swift
  • Updated Xcode Projects and Schemes to most Valid Project settings
  • Getter methods changed to readonly properties
  • Getter/Setter methods changed to readwrite properties
  • Dot notation for access to properties
  • Collections/Dictionaries became non null when at all possible
  • Class creation methods become Swift inits
  • Used NS_REFINED_FOR_SWIFT where advisable

Deprecated

  • FBSDKLoginManager -logInWithReadPermissions:fromViewController:handler:
  • FBSDKLoginManager -logInWithWritePermissions:fromViewController:handler:
  • FBSDKLoginButton readPermissions
  • FBSDKLoginButton writePermissions
  • FBSDKDeviceLoginButton readPermissions
  • FBSDKDeviceLoginButton writePermissions
  • FBSDKDeviceLoginViewController readPermissions
  • FBSDKDeviceLoginViewController writePermissions
  • FBSDKUtility SHA256HashString
  • FBSDKUtility SHA256HashData

Removed

  • Deprecated methods
  • Deprecated classes
  • Deprecated properties
  • Made init and new unavailable where necessary
  • Used NS_SWIFT_UNAVAILABLE where necessary

Fixed

  • Various bug fixes

5.X Upgrade Guide

All Developers

  • Light-weight generics have been added for Arrays, Sets, and Dictionaries. Make sure you're passing in the proper types.
  • Some methods used to have closures as arguments, but did not have them as the final argument. All these methods have been rearranged to have the closure as the final argument.

ObjC Developers

  • Certain string values, like App Event Names and HTTP Method, have been made NSString typedef with the NS_TYPED_EXTENSIBLE_ENUM attribute. All your existing code should work just fine.

Swift Developers

  • NS_SWIFT_NAME was applied where applicable. Most of these changes Xcode can fix automatically.
    • The FBSDK prefix for UI elements has been replaced with the simpler FB prefix.
    • The FBSDK prefix for all other types has been removed.
    • FBSDKError is now CoreError.
  • NS_ERROR_ENUM is used to handling errors now. For more details, view Apple's documentation on Handling Cocoa Errors in Swift.
  • Certain string values, like App Event Names and HTTP Method, have been made extensible structs with the NS_TYPED_EXTENSIBLE_ENUM attribute:
    • FBSDKAppEventNamePurchased -> AppEvents.Name.purchased
    • "custom_app_event" -> AppEvents.Name("custom_app_event")
  • Certain values have been annotated with NS_REFINED_FOR_SWIFT and can be customized via either:
    1. The Facebook SDK in Swift (Beta)
    2. Implementing custom extensions
// Custom extensions
public extension AccessToken {
  var permissions: Set<String> {
    return Set(__permissions)
  }
}

extension AppEvents.Name {
  static let customAppEvent = AppEvents.Name("custom_app_event")
}

extension ShareDialog.Mode: CustomStringConvertible {
  public var description: String {
    return __NSStringFromFBSDKShareDialogMode(self)
  }
}

// Later in code
let perms: Set<String> = AccessToken(...).permissions

let event: AppEvents.Name = .customAppEvent

let mode: ShareDialog.Mode = .native
let description: String = "\(mode)"

4.44.1

2019-04-11 | Full Changelog

Fixed

  • _inBackground now indicates correct application state

4.44.0

2019-04-02 | Full Changelog

Added

  • Add parameter _inBackground for app events

Fixed

  • Various bug fixes

4.43.0

2019-04-01 | Full Changelog

Added

  • Support for Xcode 10.2

Deprecated

  • FBSDKLoginBehaviorNative
  • FBSDKLoginBehaviorSystemAccount
  • FBSDKLoginBehaviorWeb
  • [FBSDKLoginManager renewSystemCredentials]

Fixed

  • Various bug fixes

4.42.0

2019-03-20 | Full Changelog

Changed

  • Moved directory structure for better separation

Fixed

  • Various bug fixes

4.41.2

2019-03-18 | Full Changelog

Fixed

  • Resolved issues with the release process
  • Various bug fixes

4.41.1

2019-03-18 | Full Changelog

Fixed

  • Resolved build failures with Carthage and Cocoapods
  • Various bug fixes

4.41.0

2019-03-13 | Full Changelog

Fixed

  • Various bug fixes

4.40.0

2019-01-17 | Full Changelog

Fixed

  • Various bug fixes

4.39.1

2019-01-08 | Full Changelog | Facebook Developer Docs Changelog