AI-generated Key Takeaways
- 
          
Version 9.0.0 adds support for a custom
nonce, fixes an error code, supports GTMAppAuth 5 on macOS, and resolves Data Protected migration bugs. - 
          
Version 8.0.0 introduces Firebase App Check support to enhance application integrity during sign-in and updates the minimum iOS support to iOS 12.
 - 
          
Version 7.1.0 and related betas added Firebase App Check support and privacy manifest support.
 - 
          
Version 7.0.0 allows configuration via
Info.plist, adds Swift Concurrency support, and includes significant API surface improvements toGIDSignInandGIDGoogleUser. - 
          
Earlier versions introduced features such as macOS support, a SwiftUI sign-in button, the ability to request additional scopes, various bug fixes, open source release, Swift Package Manager support, and updates to dependencies and API structures.
 
9.0.0
- Allow providing a custom 
noncevia GSI to AppAuth (#402, #476) - Fix invalid error code in 
GIDSignIn(#472) - Add support for GTMAppAuth 5 on macOS (#522)
 - Fix Data Protected migration bugs (#533)
 - Internal
- Add AppAuthCore as explicit dependency (#470)
 - Update iPhone simulator from 14 to 15 (#494)
 - Fix swift button integration test (#497)
 - Update runner to macos-13 (#498)
 - Update 
scorecards.ymlto useupload-artifact@v4.6.2(#516) - Update AppAuth and GTMAppAuth dependencies (#517, #521)
 - Fix Swift integration tests for a returning user (#518)
 - Update 
.gitignoreto include .build and Package.resolved (#520) - Update GIDSignInTest to correctly setUp and tearDown NSUserDefaults (#527)
 
 
8.0.0
- General release adding Firebase App Check support to establish your application's integrity while signing in with Google
 - Update minimum iOS support to iOS 12 (#445)
 - Internal
- Update AppCheckCore dependency to v11.0 (#454)
 - Add instancetype return to test helper (#393)
 - Remove GTMSessionFetcher modular import (#403)
 - Bump activesupport from 5.2.5 to 5.2.8.1 in the bundler group (#429)
 - Remove deprecated macos-11 runner (#447)
 - Update deprecated archiving API usage in tests (#449)
 
 
7.1.0-fac-beta-1.1.0
- Beta release supporting Firebase App Check tokens used to establish your application's integrity while signing in with Google
 - Adds privacy manifest support released in v7.1.0
 - Internal
- Check integration test for presubmit instruction (#368)
 - Test skip integration key (#374)
 - Add Privacy Manifest to App Check Release Branch (#392)
 - Add return type to init in GIDFakeFetcherService header
 
 
7.1.0
- Update to Swift 5.0 in 
GoogleSignInSwiftSupportpod (#317) - Documentation updates (#351, #372)
 - Add Privacy Manifest (#382)
 - Internal
- Fix typo in 
SFSafariViewController(#291) - Fix 
OCMockusage in unit test (#298) - Use new delegate protocol from GTMAppAuth 4.0.0 (#299)
 - Ensure that 
completionis not nil before calling-[GIDSignIn restorePreviousSignIn:](#301) - Removes 
macos-11runner in GitHub workflows (#302) - Updates button name reference so UI automation tests pass (#308)
 
 - Fix typo in 
 
7.1.0-fac-beta-1.0.0
- Beta release supporting Firebase App Check tokens used to establish your application's integrity while signing in with Google
 - Internal
 
7.1.0-fac-eap-1.0.0
- Early Access Program (EAP) release supporting Firebase App Check tokens used
to establish your application's integrity while signing in with Google
- Use 
-[GIDSignIn configureWithCompletion:]to configure GSI to use Firebase App Check as early as possible in your app to minimize latency. - Use 
-[GIDSignIn configureDebugProviderWithAPIKey:completion:]in debug builds or continuous integration environments. - New sample app showing example of configuring GSI to use Firebase App Check.
 
 - Use 
 - Internal
- Fix typo in 
SFSafariViewController(#291) - Removes 
macos-11runner in GitHub workflows (#302) - Updates button name reference so UI automation tests pass (#308)
 - Ensure that 
completionis not nil before calling-[GIDSignIn restorePreviousSignIn:](#301) - Use new delegate protocol from GTMAppAuth 4.0.0 (#299)
 
 - Fix typo in 
 
7.0.0
- All configuration can now be provided via your 
Info.plistfile. (#228)- Use the following keys in 
<key>KEY</key><string>VALUE</string>pairs to configure the SDK:GIDClientID(required)GIDServerClientID(optional)GIDHostedDomain(optional)GIDOpenIDRealm(optional)
 
 - Use the following keys in 
 - Support for Swift Concurrency. (#187)
 - API surface improvements (#249, #228, #187)
GIDSignIn- New 
configurationproperty. - Removed 
Configuration:arguments fromsignIn:methods. - Removed 
addScopes:and added it toGIDGoogleUser. - Renamed 
callback:arguments tocompletion:for asynchronous methods taking blocks. 
- New 
 GIDGoogleUser- New 
configurationproperty. - New 
addScopes:method moved fromGIDSignIn. - Removed 
authenticationproperty and replaced it with:- New 
accessTokenproperty. - New 
refreshTokenproperty. - New 
idTokenproperty. - New 
fetcherAuthorizerproperty. - New 
refreshTokensIfNeededWithCompletion:method. 
 - New 
 
- New 
 - New 
GIDTokenclass to represent access, refresh, and ID tokens inGIDGoogleUser. - New 
GIDSignInResultclass to represent the result of a successful signIn or addScopes flow. - Removed 
GIDSignInCallback,GIDDisconnectCallback, andGIDAuthenticationActionblock type definitions. 
 
6.2.4
- Updated the GTMSessionFetcher dependency to allow 2.x versions. (#207)
 
6.2.3
- Fix resource loading in GoogleSignInSwift with CocoaPods use_frameworks! (#197)
 - Prevent build errors for GoogleSignInSwift in certain scenarios when using Swift Package Manager. (#166)
 
6.2.2
- Prevent build errors for GoogleSignInSwift when using Swift Package Manager. (#157)
 - Prevent a build error on Xcode 12 and earlier. (#158)
 
6.2.1
- Use 
GoogleSignInSwiftSupportas the name of the Swift support CocoaPod. (#137) 
6.2.0
- Support for macOS. (#104)
 - Added a SwiftUI "Sign in with Google" button. (#103)
 - Added the ability to request additional scopes at sign-in time. (#30)
 - Fixed several issues. (#87, #106)
 
6.1.0
- New Swift sample app demonstrating SwiftUI. (#63)
 - Support for Mac Catalyst.
 - Improvements to the 
addScopesimplementation. (#68, #70) 
6.0.2
- Ensure that module imports can be used when built as a library. (#53)
 
6.0.1
- Fixes nested callbacks not being called for signIn and addScopes methods. (#29)
 
6.0.0
- Google Sign-In for iOS is now open source.
 - Swift Package Manager support.
 - Support for Simulator on M1 Macs.
 - API surface updates
GIDSignInsharedInstanceis now a class property.signInis nowsignInWithConfiguration:presentingViewController:callback:and always requests basic profile scopes.addScopes:presentingViewController:callback:is the new way to add scopes beyond basic profile to a currently signed-in user.restorePreviousSignInis nowrestorePreviousSignInWithCallback:.disconnectis nowdisconnectWithCallback:.- The 
GIDSignInDelegateprotocol has been removed in favor ofGIDSignInCallbackandGIDDisconnectCallbackblocks. - All sign-in flow configuration properties have been moved to 
GIDConfiguration. 
- The 
GIDConfigurationclass had been added to represent the configuration needed to sign in a user. GIDAuthenticationgetTokensWithHandler:is nowdoWithFreshTokens:.- The 
GIDAuthenticationHandlertypedef has been renamedGIDAuthenticationAction. refreshTokensWithHandler:has been removed, usedoWithFreshTokens:instead.
GIDSignInButtonno longer makes calls toGIDSignIninternally and will need to be wired to anIBActionor similar in order for you to callsignInWithConfiguration:presentingViewController:callback:to initiate a sign-in flow.
 
5.0.2
- Fixes the wrong error code being sent to 
signIn:didSignInForUser:withError:when the user cancels iOS's consent dialog during the sign-in flow. 
5.0.1
- Fixes an issue that the sign in flow cannot be correctly started on iOS 13.
 - The zip distribution requires Xcode 11 or above.
 
5.0.0
- Changes to GIDSignIn
uiDelegatehas been replaced withpresentingViewController.hasAuthInKeychainhas been replaced withhasPreviousSignIn.signInSilentlyhas been replaced withrestorePreviousSignIn.- Removed deprecated 
kGIDSignInErrorCodeNoSignInHandlersInstallederror code. 
 - Changes to GIDAuthentication
- Removed deprecated methods 
getAccessTokenWithHandler:andrefreshAccessTokenWithHandler:. 
 - Removed deprecated methods 
 - Changes to GIDGoogleUser
- Removed deprecated property 
accessibleScopes, usegrantedScopesinstead. 
 - Removed deprecated property 
 - Adds dependencies on AppAuth and GTMAppAuth.
 - Removes the dependency on GoogleToolboxForMac.
 - Drops support for iOS 7.
 
4.4.0
- Removes the dependency on GTM OAuth 2.
 
4.3.0
- Supports Google's Enterprise Mobile Management.
 
4.2.0
- Adds 
grantedScopestoGIDGoogleUser, allowing confirmation of which scopes have been granted after a successful sign-in. - Deprecates 
accessibleScopesinGIDGoogleUser, usegrantedScopesinstead. - Localizes 
GIDSignInButtonfor hi (Hindi) and fr-CA (French (Canada)). - Adds dependency to the system 
LocalAuthenticationframework. 
4.1.2
- Add 
pod trysupport for the GoogleSignIn CocoaPod. 
4.1.1
- Fixes an issue that 
GIDSignInUIDelegate'ssignInWillDispatch:error:was not called on iOS 11. Please note that it is intended that neithersignIn:presentViewController:norsignIn:dismissViewController:is called on iOS 11 because SFAuthenticationSession is not presented by the app's view controller. 
4.1.0
- Uses SFAuthenticationSession on iOS 11.
 
4.0.2
- No longer depends on GoogleAppUtilities.
 
4.0.1
- Switches to open source pod dependencies.
 - Appearance of sign-in button no longer depends on requested scopes.
 
4.0.0
- GoogleSignIn pod now takes form of a static framework. Import with
#import <GoogleSignIn/GoogleSignIn.h>in Objective-C. - Adds module support. You can also use 
@import GoogleSignIn;in Objective-C, if module is enabled, andimport GoogleSignInin Swift without using a bridge-header. - For users of the stand-alone zip distribution, multiple frameworks are now provided and all need to be added to a project. This decomposition allows more flexibility in case of duplicated dependencies.
 - Removes deprecated method 
checkGoogleSignInAppInstalledfromGIDSignIn. - Removes 
allowsSignInWithBrowserandallowsSignInWithWebViewproperties fromGIDSignIn. - No longer requires adding bundle ID as a URL scheme supported by the app.
 
3.0.0
- Provides 
givenNameandfamilyNameproperties onGIDProfileData. - Allows setting the 
loginHintproperty onGIDSignInto prefill the user's ID or email address in the sign-in flow. - Removed the 
UIViewController(SignIn)category as well as thedelegateproperty fromGIDSignInButton. - Requires that 
uiDelegatehas been set properly onGIDSignInand that SafariServices framework has been linked. - Removes the dependency on StoreKit.
 - Provides bitcode support.
 - Requires Xcode 7.0 or above due to bitcode incompatibilities with Xcode 6.
 
2.4.0
- Updates sign-in button with the new Google logo.
 - Supports domain restriction for sign-in.
 - Allows refreshing ID tokens.
 
2.3.2
- No longer requires Xcode 7.
 
2.3.1
- Fixes a crash in 
GIDProfileData'simageURLWithDimension:. 
2.3.0
- Requires Xcode 7.0 or above.
 - Uses SFSafariViewController for signing in on iOS 9.  
uiDelegatemust be set for this to work. - Optimizes fetching user profile.
 - Supports GTMFetcherAuthorizationProtocol in GIDAuthentication.
 
2.2.0
- Compatible with iOS 9 (beta). Note that this version of the Sign-In SDK does not include bitcode, so you must set ENABLE_BITCODE to NO in your project if you use Xcode 7.
 - Adds descriptive identifiers for GIDSignInButton's Auto Layout constraints.
 signInSilentlyno longer requires settinguiDelegate.
2.1.0
- Fixes Auto Layout issues with GIDSignInButton.
 - Adds API to refresh access token in GIDAuthentication.
 - Better exception description for unassigned clientID in GIDSignIn.
 - Other minor bug fixes.
 
2.0.1
- Bug fixes
 
2.0.0
- Supports sign-in via UIWebView rather than app switching to a browser,
configurable with the new 
allowsSignInWithWebViewproperty. - Now apps which have disabled the app switch to a browser via the
allowsSignInWithBrowserand in-app web view viaallowsSignInWithWebViewproperties have the option to display a prompt instructing the user to download the Google app from the App Store. - Fixes sign-in button sizing issue when auto-layout is enabled
 signInSilentlynow calls the delegate with error whenhasAuthInKeychainisNOas documented- Other minor bug fixes
 
1.0.0
- New sign-in focused SDK with refreshed API
 - Dynamically rendered sign-in button with contextual branding
 - Basic profile support
 - Added allowsSignInWithBrowser property