com.unity.localization@0.11.1-preview
## [0.11.1] - 2021-04-23 ### Fixed - Fixed errors being generated when using Play Mode with Domain and Scene reload disabled. ([LOC-165](https://issuetracker.unity3d.com/issues/errors-thrown-when-entering-playmode-and-using-enter-play-mode-options-experimental)) - Fixed `NotSupportedException: Collection is read-only` error sometimes being produced by preload operation. ## [0.11.0] - 2021-04-08 ### Added - Added **Addressable Group Rules** asset. This can be used to configure what Addressable groups assets should be placed into. See Addressables Integration docs for further details. - Added `CollectionExtension.Initialize`, this will be called when the extension is first added to a table collection. - Added `IEntryOverride`. This can be used to create overrides for table entries to direct to different localized values. - Added `Locale.LocaleName` property. This can be used to customize the name of the Locale instead of using the name of the Locale Asset in the `name` property. ([LOC-144](https://issuetracker.unity3d.com/issues/localization-locale-assets-name-is-not-saved-when-renaming-it-through-the-inspector)) - Added `LocalizationEditorSettings.GetPsuedoLocales`. This returns all Pseudo Locales that are included in the project. - Added `LocalizedGameObjectEvent` component. This can be used to localize Prefabs. - Added `LocalizedMaterial` & `LocalizedGameObject`. - Added `PlatformOverride` **Metadata**. This can be used to override the value for an entry for a chosen platform, the override can change the entry, table or both. - Added `ReleaseAsset` method in `AssetTable`. This can be used to release an asset from memory for the provided AssetTableEntry. - Added `ReleaseTables` to `LocalizedDatabase`. This can be used to force a table to be released from the database so that it may be unloaded providing there are no other references to it. - Added `SetEntryAssetType` and `GetEntryAssetType` to `AssetTableCollection.`. This can be used to control the expected asset type for an entry. - Added `SharedEntry` property to `StringTableEntry` and `AssetTableEntry`. This will return the `SharedTableData` entry for the current Locale specific entry. - Added `SharedStringTableEntry` and `SharedAssetTableEntry` to `MetadataType`. These can be used to only show **Metadata** for a shared table entry only. - Added 3 new Addressable Analyzer rules which can be used to check for Addressable issues and upgrade when changing the **Addressable Group Rules**. - Added additional override for `StringTableEntry.GetLocalized` which allows for passing in an optional **Pseudo Locale**. By default the **Selected Locale** will be used. (LOC-162) - Added constructors to `LocalizedString`, `LocalizedAsset`, `LocalizedStringTable` and `LocalizedAssetTable`. These show the minimum arguments required for the class to function correctly. - Added extra override for method `GetLocalizedString` which now accepts the parameters as list of objects [IList<object>]. - Added language change menu to Device Simulator window. - Added metadata support to **LocalizationSettings**. - Added method `TableEntryReference.ToString(TableReference)`. This will use the `TableReference` to gather additional data such as the **Key** or **Key Id**. - Added support for localizing **Android App name**. Only the **Display Name** is currently supported on the Android Platform. To configure the Android App add the **Android/AppInfo** metadata to the LocalizationSettings. - Added support for localizing Android app Icon. We currently support Adaptive Icon, Round Icon, and Legacy Icon on the Android Platform. To configure the Android app icons, add the Android/Android Adaptive Icon or Android/Android Round Icon or Android/Android Legacy Icon metadata to the LocalizationSettings. - Added support for localizing iOS App components. Display Name, Microphone description, Camera description and Location description are currently supported. To configure the iOS App, add the **iOS/AppInfo** metadata to the **LocalizationSettings**. - Added the functionality to **Preview Localization** without entering Play mode. Do this through the **Localization Scene Controls** window. See Edit Mode Support docs for further details. - Added UI validation hints for table collection creation. - When a `TableReference` is a Guid type, the `TableCollectionName` will now attempt to resolve the name from the `AssetDatabase` or `LocalizationSettings`. This is particularly helpful when debugging as `ToString` will now also contain the `TableCollectionName` as well as the `Guid`. ### Changed - `MetadataAttribute.AllowMultiple` is now respected. Metadata that already exists will now be disabled in the add menu. - Changed `LocalizedString.Arguments` to be an `IList<object>` instead of `object[]`. - Changed table collection names so they can no longer be comprised of whitespace, cannot contain invalid filename characters, and cannot contain "[]". - Changed table collections so you can no longer create table collections of the same type with duplicate names. - Changed the **Google Sheets Service - New Sheet Properties** field so it is now only visible when using **OAuth** authentication. - Moved `UnityEventAudioClip`, `UnityEventSprite`, `UnityEventString` and `UnityEventTexture` to `UnityEngine.Localization.Events` namespace. - Removed `LocaleIdentifier.Undefined`. You should compare against `default` to see if a `LocaleIdentifier` is defined. ([LOC-150](https://issuetracker.unity3d.com/issues/inconsistent-behaviour-between-localeidentifier-constructors-and-deserialization-when-using-different-empty-instances)) - Renamed `StringUnityEvent` to `UnityEventString`. - Updated **Addressables** to **1.17.15**. ### Fixed - `StringTableEntry.GetLocalizedString` variants now use the table's locale formatter if no formatter is provided. - Added new functionality, so loading a table via its **Table Collection Name Guid** will now complete immediately if it was previously loaded using the **Table Collection Name**. (LOC-172). (LOC-172) - Fixed **Psuedo Localization** so that when it is enabled, it will now be applied when calling `StringTableEntry.GetLocalized`. (LOC-162) - Fixed `AssetTypeMetadata` being added multiple times to **Shared Table Data** when adding new entries. - Fixed `CollectionExtension.TargetCollection` not being set when adding an extension via script. - Fixed `LocaleIdentifier` Equality comparisons when comparing undefined versions. ([LOC-150](https://issuetracker.unity3d.com/issues/inconsistent-behaviour-between-localeidentifier-constructors-and-deserialization-when-using-different-empty-instances)) - Fixed `LocaleIdentifier` property drawer not updating when changing the Locale object. ([LOC-148](https://issuetracker.unity3d.com/issues/localization-localizationsettings-slash-locale-id-field-is-not-updated-when-selecting-locale-with-object-picker)) - Fixed `MissingMethodException` exception being thrown when adding a **Smart String** Formatter that does not contain a default constructor. ([LOC-164](https://issuetracker.unity3d.com/issues/adding-smart-format-formatters-via-inspector-throws-exception)) - Fixed `NullReferenceException` being thrown when pulling from an empty Google Sheet. (LOC-161) - Fixed `ValueTupleSource` not being marked as `Serializable` which could cause serialization issues. ([LOC-147](https://issuetracker.unity3d.com/issues/unknown-managed-type-referenced-unity-dot-localization-unityengine-dot-localization-dot-smartformat-dot-extensions-dot-valuetuplesource)) - Fixed a bug where invoking `RemoveKey` was not removing the Keys from other tables. Now, this is handled by abstract overrides in StringTableCollection and AssetTableCollection. - Fixed corruption of PlayerSettings preloaded assets when building with the **InputSystem** package in the project. ([LOC-146](https://issuetracker.unity3d.com/issues/localization-slash-inputsystem-asset-is-not-removed-from-preloaded-assets-list)) - Fixed Editor becoming unresponsive when using the **Google Sheets Service Authorize** button. (LOC-166) - Fixed error regarding nested header foldouts in LocalizedString inspector. ([LOC-163](https://issuetracker.unity3d.com/product/unity/issues/guid/LOC-163)) - Fixed exception being thrown when adding a **CSV Extension** to a table collection. ([LOC-158](https://issuetracker.unity3d.com/issues/unityexception-is-thrown-while-moving-or-creating-scripts-after-adding-csv-extension-to-serialized-string-table-collection)) - Fixed incorrect formula syntax in Google Sheets duplicate key rule. This would cause errors when creating a new sheet and the default Google Sheet Language was not English. ([case 1286943](https://issuetracker.unity3d.com/product/unity/issues/guid/1286943)) - Fixed issue so that pulling from a **Google Sheet** with an **API Key** will no longer create an entry from the sheets header row. - Fixed Localization being applied twice when changing the reference on a `LocalizationStringEvent` or `LocalizedAssetBehaviour` on a disabled GameObject which was then activated. ([LOC-132](https://issuetracker.unity3d.com/issues/localizestringevent-applies-localization-twice-when-activating-object-if-stringreference-was-set-when-object-was-inactive)) - Fixed Localization Tables window not updating when a value was changed in the LocalizedString property drawer. - Fixed Localization Tables window not updating when Converting Table Entry to Smart String in the LocalizedString property drawer. - Fixed NullReferenceException when pulling from a **Google Sheet** that contains an empty row. (LOC-149) - Fixed NullReferenceException when pulling from a Google Sheet that contains an empty row. ([LOC-149](https://issuetracker.unity3d.com/issues/googlesheets-nullrefexception-when-pulling-empty-cell)) - Fixed possible infinite loop when calling `Locale.GetFallback()`. - Fixed the **Table Collection Editor** incorrectly showing the Tables field as a ReoderableList in 2020.2+. (LOC-167) - Regenerated Object Pool guids to prevent conflicts when using the package in a project with other packages that use the ObjectPool classes.
U
Unity Technologies committed
ac802141bdff72ad1016ea8d2c13fc7183a74dbd
Parent: d77c1a7