com.ubisoft.hotel.core
Version:
Core features and utilities shared across Hotel packages.
633 lines (473 loc) • 20.4 kB
Markdown
Changelog
All notable changes to this project will be documented in this file.
More information [here](https://confluence.ubisoft.com/x/6j56Q)
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
# [Unreleased]
[0.10.9] - 2023-02-21
## Added
- Package: Add support to deploy asset bundles to Ubisoft Cloud organised by platform and game version.
[0.10.8] - 2023-02-17
## Fixed
- Package: Fix an issue that prevents Android builds from being signed automatically.
[0.10.7] - 2023-02-15
## Added
- Package: Allow consumers to define the Vault id that stores keystore and keyalias passwords to use to sign Android builds.
[0.10.6] - 2023-02-13
## Added
- Addressables: Add support to upload remote asset bundles to Ubisoft Cloud.
[0.10.5] - 2023-02-09
## Fixed
- Cache: Fix a crash when no cache settings are provided for a driver.
[0.10.4] - 2023-02-03
## Fixed
- Package: Fix an issue when mocking StandAlone platform from hotel settings.
[0.10.3] - 2023-02-02
## Fixed
- Package: Fix an issue that prevented from building for Android.
[0.10.2] - 2023-02-02
## Fixed
- Package: Fix an issue that prevented from building for iOS.
[0.10.1] - 2023-02-01
## Fixed
- Package: Fix an issue that prevented from building for StandAlone.
[0.10.0] - 2023-01-31
## Added
- Package: Add support for Amazon platform.
[0.9.4] - 2023-01-30
## Fixed
- Package: Patch FRAMEWORK_SEARCH_PATHS and LD_RUNPATH_SEARCH_PATHS to make sure Pods frameworks can be linked,
which we found out that wouldn't happen when Orion MonetisationCore package is included in the app's manifest.json
[0.9.3] - 2023-01-18
## Added
- Addressables: Add a constant for the remote asset bundles path.
[0.9.2] - 2023-01-13
## Added
- Addressables: Rename HT_ADDRESSABLES_DAD_ON for HT_ADDRESSABLES_STORE_CDN_ON.
[0.9.1] - 2023-01-13
## Added
- PlayerPrefs: Add a dummy implementation for those systems that don't care about IHtPlayerPrefs.
[0.9.0] - 2023-01-02
## Added
- UnityEditor: Add support for editing assembly definitions.
- Device: Add support for mocking networking capabilities.
## Fixed
- UnityEngine: Fix an issue that attempted to create 'HtSingletonHolder' twice.
- DotNet: Fix an issue that didn't handle the director separator char correctly on all platforms.
[0.8.14] - 2022-12-16
## Fixed
- Cache: Metadata file for filtered files not being stored with the right name
[0.8.13] - 2022-12-13
## Fixed
- UnityEditor: Fix an issue preventing 'CreateFolder()' from creating the path required when some folders in the path don't exist.
## Added
- DotNet: Add a method to create a directory.
- Addressables: Add support for Hotel Addressables which allows consumers to tailor Unity Addressables experience.
## Changed
- Package: Use 'EditorUserBuildSettings.standaloneBuildSubtarget' instead of the deprecated 'EditorUserBuildSettings.enableHeadlessMode' on Unity 2021.
[0.8.12] - 2022-08-11
## Added
- Cache: Add support for calling Init method multiple times
[0.8.11] - 2022-08-10
## Fixed
- Package: Fix an issue that prevented some Unity settings from being applied properly.
[0.8.10] - 2022-07-27
## Fixed
- Package: Fix an issue that prevented the right bundle id to be used when configuring Firebase.
[0.8.9] - 2022-07-25
## Added
- Package: Add support to customize whether to deploy symbols using a UnityBuildProperty.
[0.8.8] - 2022-07-21
## Added
- Package: Add support for generating Android symbols using a UnityBuildProperty.
[0.8.7] - 2022-07-20
## Added
- PlayerPrefs: Add support for HtPlayerPrefs_Unity_Cached, an implementation that allows using Unity's PlayerPrefs from non-main threads.
[0.8.6] - 2022-07-18
## Added
- Package: Add support to add stuff to base build.gradle.
## Changed
- Package: Refactor the way Firebase Android dependencies are handled.
[0.8.5] - 2022-07-14
## Added
- Package: Add support to encode the branch name of a 'PipelineJob' object so it can be used as part of a build file name so it can be copied around with no trouble.
[0.8.4] - 2022-07-14
## Changed
- Add "com.ubisoft.hotel.unitask" as a dependency (Required by Storage manager in Device package).
[0.8.3] - 2022-07-12
## Added
- Cache: New module to handle cache files
## Changed
- Device: Storage manager can now be used from secondary threads
[0.8.2] - 2022-07-08
## Fixed
- Package: Fix an issue that prevented Firebase manifest from being generated.
[0.8.1] - 2022-07-08
## Fixed
- Package: Fix an issue that prevented Firebase manifest from being generated.
[0.8.0] - 2022-07-08
## Changed
- Package: Refactor the way Firebase is supported.
[0.7.1] - 2022-07-08
## Changed
- Package: Refactor the way the pipeline job information is stored.
[0.7.0] - 2022-07-05
## Added
- Package: Add support to include pipeline job information (branch name and build number) in the build.
[0.6.4] - 2022-06-21
## Fixed
- Package: Fix an issue that printed an error when HT Crashlytics package is not installed.
[0.6.3] - 2022-06-21
## Fixed
- Package: Fix an issue that prevented Firebase manifest from being generated.
[0.6.2] - 2022-06-17
## Fixed
- Device: Fix an issue that prevented NativeDeviceIOS from compiling in non iOS platforms in Unity 2021.
[0.6.1] - 2022-06-08
## Fixed
- Fix an issue that prevented HtSingletonHolder from getting destroyed properly when used in editor mode.
[0.6.0] - 2022-06-07
## Added
- Package: Add 'SocialCoreBuildProperty' property to ease Orion SocialCore.PlayGames package configuration.
[0.5.12] - 2022-06-03
## Fixed
- Runtime: Fix an issue that prevented HtSingletonHolder from getting destroyed properly when the app was closed.
[0.5.11] - 2022-06-02
## Fixed
- Fix an issue that made WRITE_EXTERNAL_STORAGE and READ_PHONE_STATE Android permissions be added to AndroidManifest.xml although they are not required.
[0.5.10] - 2022-05-27
## Added
- Add some debug information when running a macOS command.
[0.5.9] - 2022-05-25
## Fixed
- Fix compilation error on Windows caused by missing ValidateRawProperty method
[0.5.8] - 2022-05-25
## Added
- Package: Add support to define nested dictionary/array Info plist properties.
## Fixed
- Device: Fix an issue that caused an Exception when finding out if an Android installation was legit upon installing via adb.
[0.5.7] - 2022-05-23
## Added
- Device: Add support to find out whether or not the build is legit (downloaded from the store).
[0.5.6] - 2022-05-20
## Changed
- Modify the way Android signing is handled.
[0.5.5] - 2022-05-19
## Changed
- Protect some accesses to avoid NullPointerExceptions.
- Make sure Firebase manifest is created, when required, upon applying a suite.
[0.5.4] - 2022-05-16
## Fixed
- Fix an issue that prevented Hotel from singing Android builds.
[0.5.3] - 2022-05-16
## Added
- Add support for signing Android builds via code.
[0.5.2] - 2022-05-05
## Fixed
- Fix a bug when using Firebase that prevented some dependencies from being included when building for Android.
# [0.5.1] - 2022-04-25
## Changed
- Update pluggable packages version to 0.5.0.
# [0.5.0] - 2022-04-25
## Added
- PlayerPrefs: Add support for HtPlayerPrefs_Memory.
## Changed
- Publish to npm-ubisoft repository.
# [0.3.6] - 2022-04-14
## Added
- Package: Add "Assets/Editor Default Resources/CrashlyticsSettings.asset" to .gitignore.
# [0.3.5] - 2022-04-11
## Fixed
- Package: Fix an issue that arose an exception when initialising PackageManagerHelper.
# [0.3.4] - 2022-04-11
## Fixed
- Package: Refactor suites to ease maintenance and to speed up performance.
# [0.3.3] - 2022-04-08
## Fixed
- Package: Fix an IO exception when copying Firebase build.gradle over the App space.
# [0.3.2] - 2022-04-08
## BREAKING CHANGES
- PlayerPrefs: Rename DeleteAll() to DeleteAllPlayerPrefs() and Save() to SaveAllPlayerPrefs() in HtPlayerPrefsService.cs for consistency.
## Added
- Package: Add support to define Firebase Android dependencies.
# [0.3.1] - 2022-04-05
## Fixed
- Package: Fix a compilation error.
# [0.3.0] - 2022-04-05
## Added
- Package: Add support to put Verbatim stuff inside modules besides in the root of the package.
- DotNet: Add support to create all inexistent folders in a destination path when copying a file.
# [0.2.11] - 2022-04-04
## Added
- Device: SRDebugger cheat to request Advertsing Info
- Device: New method to open the app in the store
- Device: SRDebugger cheat to open the app in the store
# [0.2.10] - 2022-04-04
## Added
- Support for HtPlayerPrefs
- PlayerPrefs sample scene
- UnityEngine: New method to destroy a component that was created through HtSingletonHolder
## Fixed
- UnityEditor: NullPointer when asset database returns null objects
# [0.2.9] - 2022-03-30
## Fixed
- Logger: Fix a compilation error because ZLogger wasn't implementing LogException() method.
# [0.2.8] - 2022-03-29
## Added
- UnityEngine: Add support for Debug.LogException().
# [0.2.7] - 2022-03-29
## Fixed
- Package: Fix an issue that threw an error when building without Hotel PackageManager package.
## Added
- Device: Enable AndroidX option, which is required by the function that retrieves the device marketing id, automatically.
# [0.2.6] - 2022-03-25
## Fixed
- Add missing Android dependency needed to retrieve Advertising ID
# [0.2.5] - 2022-03-23
## Added
- Device: Add method to retrieve Advertising ID
# [0.2.4] - 2022-03-21
## Added
- UnityEngine: Add methods to stop a coroutine.
# [0.2.3] - 2022-03-15
## Added
- Package: Add 'Assets/Hotel/GitIgnored' to .gitignore.
# [0.2.2] - 2022-03-09
## Added
- Package: Add support to add paths to .gitignore from an AssetBuildProperty.
- Package: Add FirebaseBuildProperty to ease Firebase setup.
- UnityEditor: Add a utility to delete an asset or folder easily.
# [0.2.1] - 2022-03-02
## Fixed
- UnityEngine: Fix a crash on device when creating the object that holds all singletons.
# [0.2.0] - 2022-02-28
## Changed
- UnityEngine: Change the way singletons are registered so they can be destroyed easily.
# [0.1.7] - 2022-02-22
## Changed
- Package: Simplify the way that pluggable packages are handled.
# [0.1.6] - 2022-02-16
## Changed
- Package: Non pluggable packages are listed on top of manifest.json dependencies section.
# [0.1.5] - 2022-02-14
## Changed
- Package: Define define symbols in PlayerSettings instead of in csc.rsp.
# [0.1.4] - 2022-02-08
## Changed
- Remove a workaround to use Unity logger instead of ZLogger when playing in Editor because it may lead to crashes when the very first log is triggered from a constructor.
# [0.1.3] - 2022-02-08
## Added
- Package: Allow consumers to define any root path for the source file/folder to copy/link over when using AssetBuildProperty.
## Changed
- Package: Refactor the way that packages define their properties so they are defined by code instead of by using a ScriptableObject.
# [0.1.2] - 2022-01-10
## Added
- Package: Add support for copying Runtime stuff verbatim from package space to app space.
# [0.1.1] - 2022-01-03
## Added
- Package: Add support for copying Editor stuff verbatim from package space to app space.
# [0.1.0] - 2022-01-03
## Added
- Package: Add support for native localised texts, typically for localising app name and permissions.
- Package: Add support for native Android settings.
# [0.0.56] - 2021-12-20
## Changed
- UnityEditor: Make csc.rsp path public so it can be added to .gitignore by Hotel PackageManager.
# [0.0.55] - 2021-12-20
## Fixed
- UnityEditor: Fix an issue that considered an empty string as a symbol to process.
# [0.0.54] - 2021-12-17
## Fixed
-UnityEditor: Fix a NullPointerException when no csc.rsp file was present in the project.
# [0.0.53] - 2021-12-03
## Added
- UnityEditor: Add support to use csc.rsp (https://docs.unity3d.com/Manual/PlatformDependentCompilation.html#:~:text=Global%20custom%20%23-,defines,-You%20can%20define)
## Refactor
- Package: Define symbols by using csc.rsp instead of defining them in ProjectSettings to avoid consumers from committing them.
# [0.0.52] - 2021-11-24
## Added
- Logger: Add support for channels preset, which allow consumers to enable/disable channels when playing in Unity Editor.
- UnityEditor: Add base class for writing custom inspectors.
## Fixed
- Logger: Fix an issue that prevented some logs from being printed in editor mode.
# [0.0.51] - 2021-09-08
## Added
- Package: Add StreamingAssets/Hotel path
# [0.0.50] - 2021-09-08
## Added
- DotNet: Add an extension to implement IndexOf for IReadOnlyList<T> types.
# [0.0.49] - 2021-09-30
## Added
- UnityEgine: Add support to enqueue calls to functions that need to run in the main thread from a worker thread.
- Package: Add support to let properties of the current suite copy stuff over to Resources folder.
# [0.0.48] - 2021-09-23
## Added
Add support to customise behaviour for a package upon installation or update.
# [0.0.47] - 2021-08-31
- Package: Fix an issue preventing 'Release version' script from working on Mac.
# [0.0.46] - 2021-08-30
- UnityEditor: Add support to run git commands.
# [0.0.45] - 2021-08-30
- Package: Generate a file that contains Unity Editor path and another that contains project root path so they can be used by tools that need to execute a Unity method from command line.
- DotNet: Revert 0.0.44 workaround.
# [0.0.44] - 2021-08-13
## Workaround
- DotNet: Add a class required by Fight, which still uses NetworkManager below 0.0.65. This workaround will be fixed once Fight updates to NetworkManager 0.0.65 or higher.
# [0.0.43] - 2021-08-11
## Fixed
- Fix an issue preventing the user from being able to apply a suite after having run a suite previously
- Fix an issue that made it impossible to disable bitcode on iOS builds
# [0.0.42] - 2021-08-10
## Fixed
- Fix an issue preventing transitive dependencies from being applied
# [0.0.41] - 2021-08-09
## Added
- Package: Add support to simulate PackageManager behaviour when this package is not installed
# [0.0.40] - 2021-08-06
## Fixed
- UnityEditor: Fix an issue preventing a folder from being copied properly when it contained any folders
# [0.0.39] - 2021-08-04
## Fixed
- UnityEditor: Fix a compilation error
- UnityEngine: Fix a compilation error
# [0.0.38] - 2021-08-03
## Fixed
- Package: Fix an issue when moving data from Hotel/Assets over Assets
# [0.0.37] - 2021-08-02
## Added
- Package: Add support to create symbolic links between Hotel/Assets and Assets
- Package: Add support to Plugins
- Package: Add support to Tools
## Changed
- Change namespaces and some classes names to make them easier to find for consumers
# [0.0.36] - 2021-07-20
## Added
- Package: Add support for a basic view for PackageSuiteEditor
- UnityEngine: Add support for editor logging which never gets stripped out, typically only for editor tools.
# [0.0.35] - 2021-07-12
## Added
- DotNet: Add support for HtLong
## Changed
- DotNet: Change HtBool.Parse to only support the following string values: "true", "True", "TRUE", "1", "false", "False", "FALSE", "0"
# [0.0.34] - 2021-07-07
## Added
- Package: Add "com.unity.addressables" to the list of packages that produce a define symbol (HT_PACKAGES_ADDRESSABLES)
# [0.0.33] - 2021-07-06
## Added
- DotNet: Add utilities to handle bool, byte, float, double, int, short and string types
## Changed
- DotNet: Refactor:
- Rename StringUtility to HtString to unify naming convention with HtInt, HtFloat,...
- Move SystemIO from Editor to Runtime to have the functionality in player too.
- Correct breaking changes after the above changes.
# [0.0.32] - 2021-07-02
## Added
- Device: Added method to retrieve a file's absolute path based on its FileDescriptor
# [0.0.31] - 2021-07-02
## Changed
- Update .editorconfig
- Device: Replace Debug.Log by Hotel Logger
## Breaking Changes
- Device: New API supporting FileDescriptor. Encryption and Compression are ignored for now and will be supported in future versions.
- Device: Improved error handling. All methods provide additional information through OperationStatus object.
# [0.0.30] - 2021-06-29
## Fixed
- Fix a compilation error when PackageManager package is not present
# [0.0.29] - 2021-06-29
## Added
- Add support for reusing the same suite regardless the platform
# [0.0.28] - 2021-06-23
## Added
- Device: Added instructions to sample scene
- Logger: Added method to create Hotel channels
# [0.0.27] - 2021-06-10
## Fixed
- Added missing StreamingAssets folder to Device sample scene
# [0.0.26] - 2021-06-10
## Added
- Device utilities to handle storage
- Device sample scene
# [0.0.25] - 2021-06-08
- Package: Fix an issue that made automatic symbols generated for Hotel packages (HT_PACKAGE_<package_name>) contains dashes, which messes up with preprocessor. Example: HT_PACKAGE_PROTOBUF-UNITY_PROD for com.ubisoft.hotel.protobuf-unity. Now HT_PACKAGE_PROTOBUF_UNITY_PROD is generated instead
# [0.0.24] - 2021-06-07
## Changes
- Package: Change IsDevelopmentBuild, IsConnectProfileEnabled, EnabledHeadlessMode, BuildAppBundle type (from bool to EBoolean) to avoid overriding Unity settings for these properties when the consumer doesn't mean to do that
# [0.0.23] - 2021-06-03
## Breaking Changes
- DotNet: Rename StringUtils for StringUtility to conform to naming conventions
- DotNet: Remove default value of isUtf8 parameter in StringUtility,GetBytes() in order to make consumers aware of what they're doing
# [0.0.22] - 2021-06-02
## Fixed
- UnityEditor: Fix an issue when attempting to return StandardOutput from a process on Windows
# [0.0.21] - 2021-06-02
## Fixed
- UnityEditor: Fix a compilation error in OSUtility.cs on Windows
# [0.0.20] - 2021-06-02
## Fixed
- Package: Fix an issue that let Consumer set 0 as a version code, which is not allowed for Android
- Package: Fix an issue preventing adding/removing packages from working properly in Unity 2020
# [0.0.19] - 2021-05-28
## Fixed
- Package: Fix an issue that prevented former configuration from getting cleared before creating a new one
# [0.0.18] - 2021-05-28
## Added
- Package: Add support for setting apple developer team id and provisioning profile id
## Changed
- Package: Prevent configuration from getting lost when a reference is missing
# [0.0.17] - 2021-05-27
## Added
- UnityEditor: Add support to delete a symbolic link
## Fixed
- UnityEditor: Fix an issue preventing a folder from being deleted when it contained a symbolic link on Windows
# [0.0.16] - 2021-05-21
## Changed
- UnityEditor: Hide 'Create Folder (Relative Symlink) ' to simplify usage
# [0.0.15] - 2021-05-21
## Added
- UnityEditor: Add ViaCodeSample to SymlinkUtility
## Changed
- UnityEditor: Rename StringUtils to StringUtility and SystemUtils to SystemUtility
# [0.0.14] - 2021-05-20
## Added
-Add support to create symbolic links via Unity context menu
# [0.0.13] - 2021-05-19
## Fixed
- Fix some compilation errors related to missing BuildSuite
# [0.0.12] - 2021-05-14
## Added
- Define HT_PACKAGE_CORE_PROD so other packages can know that Hotel is installed
# [0.0.11] - 2021-05-14
## Added
- Package: Move Package from its package to Core in order to ease dependency management
# [0.0.10] - 2021-05-13
## Added
- Logger: Add support for enabling logging when developing a package
# [0.0.9] - 2021-04-06
## Added
- Logger: Add support for handling listeners
# [0.0.8] - 2021-04-05
## Added
- Add support for handling symbolic links to UnityEditor extension
## Changed
- Enable all logger levels in development time so Hotel packages can log stuff when tested by themselves (with no need for PackageManager installed)
# [0.0.7] - 2021-04-15
## Changed
- Rename Logger to HtLogger so it won't collide with UnityEngine.Logger
# [0.0.6] - 2021-04-14
## Changed
- Extend samples
# [0.0.5] - 2021-04-14
## Added
- LOGGER: Add support for Assert()
# [0.0.4] - 2021-04-13
## Added
- Add Logger
# [0.0.3] - 2021-03-31
## Fixed
- Make the package compatible with Unity 2020
# [0.0.2] - 2021-03-25
## Added
- System utilities
# [0.0.1] - 2021-02-26
## Added
- Set up