### Improvements

*   Asset Bundles: Introduced the ability to use ShaderVariantCollection to ensure Shader variants are built when packing the Shader with ShaderVariantCollection seperate from the Material using the Shader.
*   Audio: Add support for streaming oggvorbis on tvOS.
*   Windows Store: introduced the ability to select which Universal Windows Platform SDK Unity should target when building the application.

### Fixes

*   (866556) - Android: Fixed a player crash when using Location services.
*   (877033) - Animation: Fixed a bug that was preventing AnimationEvents that were added to legacy AnimationClips during runtime from being called.
*   ([845966](https://issuetracker.unity3d.com/product/unity/issues/guid/845966/)) - Asset and Scene Management: Fixed a crash while importing an FBX where individual component X/Y/Z curves had different frame ranges.
*   (877407, 867093, [877210](https://issuetracker.unity3d.com/product/unity/issues/guid/877210/)) - DX11: Fixed D3D11 Device creation failures on Windows Vista and Windows 7 systems without DX11.1 runtime.
*   ([857117](https://issuetracker.unity3d.com/product/unity/issues/guid/857117/)) - Editor: Fixed a rare issue where building the player and saving the project later could cause the Editor to lock up.
*   (876733) - Editor: Fixed a crash whilst reloading scene(s) after using version control merge and resolve operations.
*   (799748) - Global Illumination: Fixed a rare issue where spawning external processes (such as GI Baking) could fail or cause a deadlock.
*   (849079) - Graphics: Fixed a crash in some circumstances if object disabled renderer when culling updated the visibility.
*   (871948) - IL2CPP: Corrected the behavior of Assembly.GetExecutingAssembly on platforms that did not support stack walking properly.
*   ([872641](https://issuetracker.unity3d.com/product/unity/issues/guid/872641/)) - IL2CPP: Prevented an error during code generation when IL code had a try/finally as the last block in a method.
*   (869676) - IL2CPP: Prevented an ExecutionEngineException from being thrown at run time when a virtual generic method was called via a delegate.
*   ([847494](https://issuetracker.unity3d.com/product/unity/issues/guid/847494/)) - iOS: Don't strip alpha channel out of launch screens.
*   (850619) - iOS: Fixed an exception when disposed ODR object was collected by GC.
*   ([824499](https://issuetracker.unity3d.com/product/unity/issues/guid/824499/)) - iOS: Fixed Application.isShowingSplashScreen to return the correct state and deprecated it in favour of SplashScreen.isFinished.
*   ([871989](https://issuetracker.unity3d.com/product/unity/issues/guid/871989/)) - iOS: Hide the status bar while playing movies with CancelOnInput or Hidden modes.
*   (843172) - iOS: Internal profiler reports non-sensical CPU time values in pretty much all cases.
*   ([851113](https://issuetracker.unity3d.com/product/unity/issues/guid/851113/)) - iOS: UnityEngine.iOS.Device.SetNoBackupFlag can now be called from background threads.
*   ([786455](https://issuetracker.unity3d.com/product/unity/issues/guid/786455/)) - iOS: Warn when CameraDepthTexture uses wrong sampler type.
*   ([809737](https://issuetracker.unity3d.com/product/unity/issues/guid/809737/)) - iOS: Warn when SV\_POSITION is used as input in vertex shader.
*   ([870498](https://issuetracker.unity3d.com/product/unity/issues/guid/870498/)) - Kernel: Fixed an issue when undoing the reverting of a prefab which added components with dependencies (such as ConfigurableJoint depending on RigidBody existing).
*   (876956) - Metal: Fixed lack of support for the Hidden/FastBloom shader on Metal devices.
*   ([865738](https://issuetracker.unity3d.com/product/unity/issues/guid/865738/)) - Particles: Fixed an issue whereby animation curves causing assert errors when using scripted emission.
*   ([869710](https://issuetracker.unity3d.com/product/unity/issues/guid/869710/)) - Particles: Fixed an issue whereby lights were not cleared when Stop() and Clear() were called.
*   ([869386](https://issuetracker.unity3d.com/product/unity/issues/guid/869386/)) - Particles: Particles Anim Shader now works when using mesh render mode.
*   ([878576](https://issuetracker.unity3d.com/product/unity/issues/guid/878576/)) - Physics: Fixed a crash when applying prefab changes in the editor when a component contains a Rigidbody2D.
*   ([866855](https://issuetracker.unity3d.com/product/unity/issues/guid/866855/)) - Prefabs: Fixed Editor crash when trying to connect a prefab to an instance marked with DontSave.
*   ([860750](https://issuetracker.unity3d.com/product/unity/issues/guid/860750/), [871607](https://issuetracker.unity3d.com/product/unity/issues/guid/871607/)) - SceneManagement: Fixed unloading Scene using Scene as parameter.
*   (699250) - Scripting: Allow serialization of classes extending Dictionary.
*   ([852360](https://issuetracker.unity3d.com/product/unity/issues/guid/852360/)) - Scripting: Fixed an issue with StopCoroutine not stopping IEnumerator and CustomYieldInstruction based coroutines.
*   ([852993](https://issuetracker.unity3d.com/product/unity/issues/guid/852993/)) - Scripting: Fixed a rare failure when building players.
*   ([856277](https://issuetracker.unity3d.com/product/unity/issues/guid/856277/)) - Scripting: Fixed RequireComponent not working with nested namespaces.
*   (878300) - UnityWebRequest: Fixed an issue with redirect in editor when not in play mode.
*   (876078) - Windows Store: Fixed building Windows Store player against Windows 10 "Creators Update" SDK.

Revision: f10174ef3e2d