Releases: fuse-open/uno
Uno 1.14.0
Changes since v1.13.2
Android
- Added dynamic delivery options (#252).
- Added Android Go support (#255).
- Switched to Android X libraries (#254).
- Build Android AAR libraries (#258).
- Merged namespace
com.Bindingsintocom.foreign(#264). - Dropped legacy Java code (#263).
- Added generated Proguard file for optimizations (#266).
iOS
- Added
arm64edependencies (#270). - Fixed compile-time warnings (#271).
- Upgraded Xcode project format (#271).
.NET
- Build .NET library without AppLoader when
-DLIBRARY(#277).
Compiler
- Fixed bug with
abstract externmembers (#273). - Dropped legacy importer system (#272).
- Auto-detect main-class when building a library.
Standard library
- Fixed bug with UTF8 BOM in
Uno.IO.BundleFile(#251). - Dropped legacy code (#259).
GL.BufferData(GLBufferTarget target, int sizeInBytes, GLBufferUsage usage)GL.BufferData(GLBufferTarget target, byte[] data, GLBufferUsage usage)GL.BufferData(GLBufferTarget target, Buffer data, GLBufferUsage usage)GL.BufferSubData(GLBufferTarget target, int offset, byte[] data)GL.BufferSubData(GLBufferTarget target, int offset, Buffer data)GL.TexImage2D(GLTextureTarget target, int level, GLPixelFormat internalFormat, int width, int height, int border, GLPixelFormat format, GLPixelType type, byte[] data)GL.TexImage2D(GLTextureTarget target, int level, GLPixelFormat internalFormat, int width, int height, int border, GLPixelFormat format, GLPixelType type, Buffer data)GL.TexSubImage2D(GLTextureTarget target, int level, int xoffset, int yoffset, int width, int height, GLPixelFormat format, GLPixelType type, byte[] data)Uno.Compiler.Ast.BlockUno.Compiler.ExportTargetInterop.DontCopyStructUno.Compiler.ExportTargetInterop.ExportConditionAttributeUno.Compiler.ExportTargetInterop.ExportNameAttributeUno.Compiler.ExportTargetInterop.Foreign.ForeignDataView.ForeignDataView(Uno.Buffer buffer)Uno.Compiler.ExportTargetInterop.Foreign.ForeignDataView.Create(Uno.Buffer unoBuffer)Uno.Compiler.ImportServices.BlockFactoryUno.Compiler.ImportServices.BlockFactoryContextUno.Compiler.ImportServices.FilenameAttributeUno.Compiler.ImportServices.ImporterUno.Compiler.ImportServices.ImporterContextUno.Diagnostics.AllocateEventUno.Diagnostics.Debug.UndefinedUno.Diagnostics.Debug.Alert(string message, string caption, DebugMessageType type)Uno.Diagnostics.Debug.Alert(string message)Uno.Diagnostics.Debug.Confirm(string message, string caption, DebugMessageType type)Uno.Diagnostics.Debug.Confirm(string message)Uno.Diagnostics.EnterEventUno.Diagnostics.EventTypeUno.Diagnostics.ExitEventUno.Diagnostics.FreeEventUno.Diagnostics.ProfileUno.Diagnostics.ProfileDataUno.Diagnostics.ProfileEventUno.Diagnostics.ProfileSerializerUno.FakeTimeUno.Float.ZeroToleranceUno.Graphics.DeviceBuffer.Update(Buffer data)Uno.Graphics.Framebuffer.SupportsMipmapUno.Graphics.IndexBuffer.IndexBuffer(Buffer data, BufferUsage usage)Uno.Graphics.Texture2D.Load(BundleFile file)Uno.Graphics.Texture2D.Load(string filename)Uno.Graphics.Texture2D.Load(string filename, byte[] bytes)Uno.Graphics.Texture2D.Update(Buffer mip0)Uno.Graphics.Texture2D.Update(int firstMip, params Buffer[] mips)Uno.Graphics.Texture2D.SupportsMipmapUno.Graphics.TextureCube.Load(BundleFile file)Uno.Graphics.TextureCube.Load(string filename)Uno.Graphics.TextureCube.Load(string filename, byte[] bytes)Uno.Graphics.TextureCube.Update(Buffer mip0)Uno.Graphics.TextureCube.Update(int firstMip, params Buffer[] mips)Uno.Graphics.TextureCube.SupportsMipmapUno.Graphics.VertexBuffer.VertexBuffer(Buffer data, BufferUsage usage)Uno.Graphics.VideoTexture.SupportsMipmapUno.IO.BundleFileImporterUno.IO.TextWriter.InitialNewLineUno.Runtime.Implementation.BufferImplUno.Runtime.Implementation.Internal.BufferConvertersUno.Runtime.Implementation.Internal.BufferReader
- Extracted
Uno.Graphics.Utilslibrary fromUnoCore(#269). - Clean-ups in
Uno.Platform(#274).
Other improvements
Uno 1.13.2
Uno 1.13.1
Changes since v1.13.0
Android
In Android API 28, they changed the default value of android:usesCleartextTraffic from true to false. This means that use of cleartext network traffic, such as cleartext HTTP, are now refused by default.
Because we upgraded to API 28 in Uno v1.13.0, some code that used to work before no longer work. To solve this, we introduced a new project property to control the value of android:usesCleartextTraffic. You should try setting this to true if you experience problems with HTTP requests after upgrading Fuse SDK/Uno.
Your *.unoproj file:
"Android": {
"UsesCleartextTraffic": true
}
https://developer.android.com/guide/topics/manifest/application-element#usesCleartextTraffic
Uno 1.13.0
Changes since v1.12
Android
- Added support for CMake 3.10.2.4988404 (#219).
- Added support for Dark Theme (#236).
- Added support for Splash screen (#240).
- Added support for generating Android App Bundle on Release (#220).
- Fixed crash with
windowIsTranslucenttogether withscreenOrientation=portraiton Android 8 Oreo (#211). - Upgraded to Gradle 5.6, and Gradle-plugin 3.4.2 (#220).
- Upgraded build tools to version 28.0.3 (#220).
- Upgraded support libraries to version 28.0.0 (#220).
- Upgraded SDK compile and target versions to 28 (#220).
- Added the following build properties (#220).
BundleBundle.BuildNameBundle.Gradle.Task
- Renamed the following build properties (#220).
APK.Configuration -> Build.Configuration
- Set default versionCode to positive Integer (1) so
gradlewcommand doesn't produce error when building using latest Gradle (#220).
iOS
- Support for iPhone XR Launch Image has been added. This can be customized using the
iOS.LaunchImages.iPhone_Portrait_iPhoneXr_2xandiOS.LaunchImages.iPhone_Landscape_iPhoneXr_2xproject-setting (#225). - Support for iPhone XS Max Launch Image has been added. This can be customized using the
iOS.LaunchImages.iPhone_Portrait_iPhoneXsMax_3xandiOS.LaunchImages.iPhone_Landscape_iPhoneXsMax_3xproject-setting (#225). - Switched to user-installed
ios-deploy, for iOS 13 support (#226). - Added Sign-in with Apple capability (#233).
C++ backend
- Optimized
charandstringclasses, which gives less run-time overhead and faster code (#232). - Fixed a bug with
uMainLoop::OnClosingrelated to overload resolving, and warnings (#202).
UX markup
- Added
ux:Simulateattribute, to disable/enable the Fuse Studio simulator per UX class (#200).
Uno command
- Added
--build-onlyswitch foruno build(#245). - Added
--libsswitch foruno config(#244). - Added support for passing project files to
uno doctor(#237). - Dropped legacy package manager commands (#148).
uno installuno uninstalluno feeduno packuno pushuno stuff
Other improvements
- Automatically install Mono on macOS (#228).
- Detect required software and provide friendly hints on how to install missing software (#227, #243).
- Always run
cmakeandnodefrom PATH, droppingTools.CMakeandTools.Nodeproperties in.unoconfig(#243). - Fixed security warnings in JavaScript dependencies by upgrading to newest versions (#203, #204).
- Upgraded .NET dependencies to newest versions (#229).
- Various logging improvements and tweaks (#198, #242).
- Cleaned up config files (#230).
Uno 1.12.3
Changes since v1.12.2
In our previous patch release, --version reports incorrect information and looks like a developer build, because we accidentally shipped the wrong build. This patch release reports correct version information.
Uno 1.12.2
Changes since v1.12.1
Android
- Restored running on network devices, and introduced
Android.IgnoreNetworkDevicesconfig property (#207). - Restored default ABI for debug builds to
armeabi-v7afor better compatibility (#218). - Inform user about
--forceswitch when installingandroid-build-tools(#217).
macOS
- Disable some C++ warnings (regression after switching from Makefile to Xcode).
Other changes
- Automatically transpile TypeScript (
*.ts) files.
Uno 1.12.1
Changes since v1.12.0
Android
- Fixed a regression causing error when building some projects on Windows.
Windows
- Set the right startup project in the generated Visual Studio solution.
Uno 1.12.0
Changes since v1.11
FuseJS
- Added support for TypeScript, and new JavaScript feature sets ES2016, ES2017 and ES2018.
Project Format
- Added the following properties:
Android.Architectures.Debug(string array)Android.Architectures.Release(string array)Android.AssociatedDomains(string array)Android.Defines(string array)iOS.Defines(string array)DotNet.Defines(string array)Native.Defines(string array)Mac.Icon(path to .ICNS)Windows.Icon(path to .ICO)
- Removed the following properties:
HTML.TitleHTML.Favicon
Android
- Added support for App Links.
- Added support for targeting the following architectures (ABIs):
armeabi-v7aarm64-v8ax86x86_64
- Added support for multi-architecture (fat) builds, by default building:
on Debug (changed toarm64-v8aarmeabi-v7ain v1.12.2)armeabi-v7a+arm64-v8aon Release
- Added support for long filenames on Windows, and building of larger projects.
- Fixed launching Android Studio on Windows, when passing
--debug. Don't try to launch apps on network devices, when passing(use--runAndroid.IgnoreNetworkDevicesproperty introduced in v1.12.2).- Suggest installing
android-build-toolsusing NPM when SDK/NDK can't be found. - Deprecated
@(ABI)macro. Please use${ANDROID_ABI}instead.
iOS
- Added support for Universal Links.
Linux
- Added support for building on Linux (x86_64). Tested on Ubuntu 18.04 and 16.04.
macOS
- Switched to generating Xcode projects when using the Native target. This gives slightly faster builds.
UnoCore
- Performance improvements in
StringandStringBuilderclasses. - Added the following new methods:
Uno.Graphics.DeviceBuffer.Update(Array data, int elementSize, int index, int count)Uno.String.Join(string separator, params object[] value)Uno.Text.Ascii.GetString(byte[] value, int index, int count)Uno.Text.StringBuilder(string value)Uno.Text.Utf8.GetString(byte[] value, int index, int count)
Other improvements
- Now slightly faster subsequental builds when using the C++ backend.
- Don't show app window when running tests using
uno test. - Added
--only-buildoption foruno test. - Search for projects directly under
Packages.SourcePathsinuno doctor. - Fixed a problem when exporting documentation files.
- Fixed newlines in output when exporting documentation from Windows.
- Fixed several warnings.
- Removed the
uno stuffcommand. - Removed the
-DHEADLESSflag.
See also v1.11.1...v1.12.0.
Uno 1.11.1
Changes since v1.11.0
Dependencies
- Fixed issues when downloading dependencies from files.fusetools.com. The dependencies are now moved to nuget.org.
Uno 1.11.0
Changes since v1.10
Distribution
- Switched to NPM for distribution and standalone installation of
uno. Previously we had to install the complete Fuse Studio to get this component. - Automatically load
.unoconfigfiles found innode_modules, so we can now use NPM to conveniently install any Uno or Fuse component. - Added the android-build-tools package on NPM that automatically sets up Android SDK and NDK components, similar to the
fuse install androidfunctionality found in Fuse Studio.
Android build target
- Added support for both landscape modes when setting Landscape in the project file.
- Fixed a problem that happens sometimes when downloading packages during Gradle build.
Uno compiler
- Added a
metadatabuild target that can produce metadata for code-completion plugins. - Fixed a bug where the visibility of generic argument types were not validated correctly.
See also the full list of changes.