diff --git a/CHANGELOG.md b/CHANGELOG.md
index 595036bc..a7216a93 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,6 +6,39 @@ This library provides official bindings to the Airship SDK, as well as sample ap
### Release Notes
+Versions 12.0.0 (.NETStandard & PCL), 13.1.0 (iOS) - February 10, 2020
+======================================================================
+Major release to support iOS SDK 13.1. Notable changes since the previous (12.1.2) release:
+- Split the iOS SDK into packages. Apps can continue to use a single Airship package in basic integration scenarios,
+but as of SDK 13 it is now possible to create custom integrations by selecting feature packages.
+- Adds support for number attributes & data privacy controls.
+
+This release also fixes the following issues:
+- nupkg installations failing to link with missing symbol errors.
+- .NETStandard and PCL app crashes when adding a custom event (`Airship.Instance.AddCustomEvent();`)
+Apps experiencing either of these issues should update to this version.
+
+Changes
+-------
+- Updated iOS SDK to 13.1.0
+- Created new package layout for the new iOS SDK modules:
+ - New packages
+ - urbanairship.ios.automation
+ - urbanairship.ios.core
+ - urbanairship.ios.extendedactions
+ - urbanairship.ios.messagecenter
+ - urbanairship.ios.notificationcontentextension
+ - A new content extension for iOS apps.
+ - Renamed packages
+ - urbanairship.ios.locationkit -> urbanairship.ios.location
+ - urbanairship.ios.appextensions -> urbanairship.ios.notificationserviceextension
+ - urbanairship.ios
+ - A container package with urbanairship.ios.automation, urbanairship.ios.core, urbanairship.ios.extendedactions and urbanairship.ios.messagecenter
+ - Apps can use this to replace the previous urbanairship.ios package.
+ - Removed undefined constants from iOS bindings.
+ - Changes handling of CustomEvent generics in .NETStandard and PCL libraries.
+
+
Versions 11.1.0 (.NETStandard & PCL), 12.1.2 (iOS) - December 9, 2019
=====================================================================
Patch release to fix a bug affecting loss of tags on iOS during app migration to
diff --git a/samples/ios-unified/Sample.csproj b/samples/ios-unified/Sample.csproj
index b2eaf1c7..ce1debf4 100644
--- a/samples/ios-unified/Sample.csproj
+++ b/samples/ios-unified/Sample.csproj
@@ -193,11 +193,6 @@
{AC22EEC5-DCA6-49D3-8B37-533B5565E2CF}
AirshipBindings.iOS.MessageCenter
-
- true
- {5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}
- SampleContentExtension
-
\ No newline at end of file
diff --git a/samples/ios-unified/SampleContentExtension/Entitlements.plist b/samples/ios-unified/SampleContentExtension/Entitlements.plist
deleted file mode 100644
index 9ae59937..00000000
--- a/samples/ios-unified/SampleContentExtension/Entitlements.plist
+++ /dev/null
@@ -1,6 +0,0 @@
-
-
-
-
-
-
diff --git a/samples/ios-unified/SampleContentExtension/Info.plist b/samples/ios-unified/SampleContentExtension/Info.plist
deleted file mode 100644
index 3a02ac55..00000000
--- a/samples/ios-unified/SampleContentExtension/Info.plist
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-
- CFBundleDisplayName
- SampleContentExtension
- CFBundleName
- SampleContentExtension
- CFBundleIdentifier
- com.urbanairship.richpush.SampleContentExtension
- CFBundleDevelopmentRegion
- en
- CFBundleInfoDictionaryVersion
- 6.0
- CFBundlePackageType
- XPC!
- CFBundleShortVersionString
- 1.0
- CFBundleVersion
- 1.0
- MinimumOSVersion
- 11.0
- NSExtension
-
- NSExtensionAttributes
-
- UNNotificationExtensionCategory
- myNotificationCategory
- UNNotificationExtensionInitialContentSizeRatio
- 1
-
- NSExtensionMainStoryboard
- MainInterface
- NSExtensionPointIdentifier
- com.apple.usernotifications.content-extension
-
-
-
diff --git a/samples/ios-unified/SampleContentExtension/MainInterface.storyboard b/samples/ios-unified/SampleContentExtension/MainInterface.storyboard
deleted file mode 100644
index 2812d46d..00000000
--- a/samples/ios-unified/SampleContentExtension/MainInterface.storyboard
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/samples/ios-unified/SampleContentExtension/NotificationViewController.cs b/samples/ios-unified/SampleContentExtension/NotificationViewController.cs
deleted file mode 100644
index a9294a69..00000000
--- a/samples/ios-unified/SampleContentExtension/NotificationViewController.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-using System;
-using Foundation;
-using UIKit;
-using UserNotifications;
-using UserNotificationsUI;
-using UrbanAirship;
-
-namespace SampleContentExtension
-{
- public partial class NotificationViewController : UAContentExtensionViewController
- {
- protected NotificationViewController (IntPtr handle) : base(handle)
- {
- // Note: this .ctor should not contain any initialization logic.
- }
-
- public override void ViewDidLoad ()
- {
- base.ViewDidLoad();
-
- // Do any required interface initialization here.
- }
-
- public void DidReceiveNotification (UNNotification notification)
- {
- label.Text = notification.Request.Content.Body;
- }
- }
-}
diff --git a/samples/ios-unified/SampleContentExtension/NotificationViewController.designer.cs b/samples/ios-unified/SampleContentExtension/NotificationViewController.designer.cs
deleted file mode 100644
index f30b2c15..00000000
--- a/samples/ios-unified/SampleContentExtension/NotificationViewController.designer.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-//
-// This file has been generated automatically by MonoDevelop to store outlets and
-// actions made in the Xcode designer. If it is removed, they will be lost.
-// Manual changes to this file may not be handled correctly.
-//
-using Foundation;
-
-namespace SampleContentExtension
-{
- [Register("NotificationViewController")]
- partial class NotificationViewController
- {
- [Outlet]
- UIKit.UILabel label { get; set; }
-
- void ReleaseDesignerOutlets ()
- {
- }
- }
-}
diff --git a/samples/ios-unified/SampleContentExtension/SampleContentExtension.csproj b/samples/ios-unified/SampleContentExtension/SampleContentExtension.csproj
deleted file mode 100644
index d4049284..00000000
--- a/samples/ios-unified/SampleContentExtension/SampleContentExtension.csproj
+++ /dev/null
@@ -1,114 +0,0 @@
-
-
-
- Debug
- iPhoneSimulator
- 8.0.30703
- 2.0
- {5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}
- {EE2C853D-36AF-4FDB-B1AD-8E90477E2198};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
- Library
- SampleContentExtension
- SampleContentExtension
- Resources
-
-
- true
- full
- false
- bin\iPhoneSimulator\Debug
- DEBUG;
- prompt
- 4
- iPhone Developer
- true
- true
- true
- 25128
- None
- x86_64
- NSUrlSessionHandler
- false
-
-
-
- pdbonly
- true
- bin\iPhone\Release
-
- prompt
- 4
- iPhone Developer
- true
- true
- Entitlements.plist
- SdkOnly
- ARM64
- NSUrlSessionHandler
-
-
-
- pdbonly
- true
- bin\iPhoneSimulator\Release
-
- prompt
- 4
- iPhone Developer
- true
- None
- x86_64
- NSUrlSessionHandler
-
-
-
- true
- full
- false
- bin\iPhone\Debug
- DEBUG;
- prompt
- 4
- iPhone Developer
- true
- true
- true
- true
- true
- Entitlements.plist
- 37953
- SdkOnly
- ARM64
- NSUrlSessionHandler
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- NotificationViewController.cs
-
-
-
-
- {C9325C9E-B43A-4BE8-AD68-B7BF6942F9F8}
- AirshipBindings.iOS.NotificationContentExtension
-
-
-
-
\ No newline at end of file
diff --git a/samples/ios-unified/iOSSample.sln b/samples/ios-unified/iOSSample.sln
index 127e0737..b417390c 100644
--- a/samples/ios-unified/iOSSample.sln
+++ b/samples/ios-unified/iOSSample.sln
@@ -17,10 +17,6 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AirshipBindings.iOS.Automat
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AirshipBindings.iOS.ExtendedActions", "..\..\src\AirshipBindings.iOS.ExtendedActions\AirshipBindings.iOS.ExtendedActions.csproj", "{BFFFE653-04CD-4563-BF2D-B6F31349F30D}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AirshipBindings.iOS.NotificationContentExtension", "..\..\src\AirshipBindings.iOS.NotificationContentExtension\AirshipBindings.iOS.NotificationContentExtension.csproj", "{C9325C9E-B43A-4BE8-AD68-B7BF6942F9F8}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SampleContentExtension", "SampleContentExtension\SampleContentExtension.csproj", "{5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}"
-EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|iPhoneSimulator = Debug|iPhoneSimulator
@@ -93,21 +89,5 @@ Global
{BFFFE653-04CD-4563-BF2D-B6F31349F30D}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
{BFFFE653-04CD-4563-BF2D-B6F31349F30D}.Debug|iPhone.ActiveCfg = Debug|Any CPU
{BFFFE653-04CD-4563-BF2D-B6F31349F30D}.Debug|iPhone.Build.0 = Debug|Any CPU
- {C9325C9E-B43A-4BE8-AD68-B7BF6942F9F8}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
- {C9325C9E-B43A-4BE8-AD68-B7BF6942F9F8}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
- {C9325C9E-B43A-4BE8-AD68-B7BF6942F9F8}.Release|iPhone.ActiveCfg = Release|Any CPU
- {C9325C9E-B43A-4BE8-AD68-B7BF6942F9F8}.Release|iPhone.Build.0 = Release|Any CPU
- {C9325C9E-B43A-4BE8-AD68-B7BF6942F9F8}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
- {C9325C9E-B43A-4BE8-AD68-B7BF6942F9F8}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
- {C9325C9E-B43A-4BE8-AD68-B7BF6942F9F8}.Debug|iPhone.ActiveCfg = Debug|Any CPU
- {C9325C9E-B43A-4BE8-AD68-B7BF6942F9F8}.Debug|iPhone.Build.0 = Debug|Any CPU
- {5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator
- {5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator
- {5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}.Release|iPhone.ActiveCfg = Release|iPhone
- {5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}.Release|iPhone.Build.0 = Release|iPhone
- {5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator
- {5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
- {5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}.Debug|iPhone.ActiveCfg = Debug|iPhone
- {5C3CE6CF-6D6E-4C73-9F24-EF8CDBFE64E2}.Debug|iPhone.Build.0 = Debug|iPhone
EndGlobalSection
EndGlobal