Releases: madewokherd/wine-mono
Releases · madewokherd/wine-mono
wine-mono-5.1.0
Changes since 5.0.1:
- Added the WpfGfx library based on upstream WPF. Unfortunately, without PresentationNative this isn't as helpful as I'd hoped. Our build also lacks audio/video playback support.
- To make WpfGfx build, we are now using llvm-mingw from https://github.com/mstorsjo/llvm-mingw. This is included in binary form in the tarball and will be automatically downloaded when building from the Git tree. To force the use of system mingw, set AUTO_LLVM_MINGW=0 in user-config.make. You may also set MINGW_PATH to point to the bin directory of a specific mingw build. If you are not using llvm-mingw, you should also set ENABLE_DOTNET_CORE_WPFGFX=0.
- Imported the System.Windows.Forms.DataVisualization library from .NET Core.
- The build system has been updated to reduce the number of unnecessary rebuilds. We also delete CMakeCache.txt before re-running cmake, to work around its unfortunate caching behavior.
- The "tests" zip file is now generated by the build system instead of being created manually.
- Fixed #62.
- Updated Mono from upstream.
- Updated FNA to 20.05.
wine-mono-5.0.1
Changes since 5.0.0:
- Upstream updates from .NET Core winforms have been reverted, back to what was in 4.9.4. This is because of a layout issue that was identified in the Fallout 2 launcher. While the cause is known (it was a change to the default font), upon reviewing the updates that have been merged in, most of them provide no value to Wine, and are more likely to break things than fix them. Unfortunately, .NET Core does not appear to be concerned with maintaining compatibility with .NET Framework applications, and so the more it develops, the worse it is for use in Wine Mono. This will probably also apply to WPF, and I am considering freezing our version of that as well. (The result won't be compatible with .NET Framework 5, but I do not believe Wine Mono will be the solution to replace .NET Framework 5 when it comes out. We may not need to replace it at all, given that .NET Core is mostly open source, and the binaries have a license that may be permissive enough for the purposes of most users. If we need something properly open source, without requiring any proprietary blobs, OS, or SDK to build, I believe the best path would start from .NET Core and replace the proprietary components, rather than starting from Wine Mono.)
- Updated SDL to 2.0.12.
- Updated FNA to 20.04.
- Cherry-picked a bugfix for instability on x64 from upstream.
- Added a test relating to wine bug 48174. I was hoping to include a fix, but it caused runtime instability.
wine-mono-5.0.0
Changes since 4.9.4:
- Most of WPF has been imported from .NET Core and added to Wine Mono. Notably lacking still is WpfGfx, which is required to successfully render UI. The source code to WpfGfx has been released, but currently it only builds with MSVC, which is not acceptable for us. I am working on building it using clang. Most applications will crash without WpfGfx. For now, binaries of WpfGfx, PresentationNative, and D3Dcompiler can be imported from .NET Core and used with Wine Mono, subject to the .NET Library License. For anyone who wants to script this, the binaries can be obtained in a convenient format from nuget. Unfortunately, this requires dropping the dll's into Wine Mono itself, except for their copy of D3Dcompiler which needs to be in the system directory.
- A test suite has been added and can be run in full on Windows using run-on-windows.bat or Wine using "make test". Every test that's expected to pass does pass in this release on my Windows and Wine test environments, though sadly not in a single run. It seems like every time I run them a new and strange thing happens, so I have had to re-run a few individually.
- The build artifact filenames have been changed to be more consistent with Wine Gecko.
- We now use .xz with maximum compression instead of .gz for tarballs.
- Debug symbols are stripped from PE files before installing. This behavior can be changed using a makefile variable.
- Updated Mono from upstream.
- Updated FNA to 20.03.
- Beginnings of support for building with clang.
- Marshal methods that do Ansi string conversion now use CP_ACP instead of UTF8.
- Updated winforms from upstream. We've effectively forked the project now, as upstream has removed APIs that we need for compatibility, and continuing to maintain them is not practical.
- We now use BTLS with Mono, instead of the managed implementation which has been deprecated.
wine-mono-4.9.4
Changes since 4.9.3:
- Fixed a bug where some .NET Framework dll's wouldn't install when initializing a new prefix.
- Switched to System.Random class from reference source, allowing serialization to work.
- Added fix for Path.GetFullPath breaking some special paths (mono/mono#16460).
- Fixed some possible GC errors during shutdown, although in practice they don't seem to happen in the 4.9.x series.
- Updated FNA to 19.11.
wine-mono-4.9.3
Changes since 4.9.2:
- Various bug fixes from upstream Mono.
- Many improvements to marshaling and COM interop code.
- Fixed an invalid IL error with C++/CLI compiler-generated code that attempts to return from a void function with a non-empty stack.
- Fixed a bug where some winforms controls would lose transparency information when rendering text.
- Updated FNA to version 19.09.
wine-mono-4.9.2
Changes since 4.9.1:
- Added a work-around for a mingw compiler bug causing crashes in SDL.
- Added mscorwks.dll to the Microsoft.NET directory.
- Fixed a bug where Wine fakedlls wouldn't install into Framework64 if msiexec is 32-bit.
- Fixed https://bugs.winehq.org/show_bug.cgi?id=47561 which caused winforms applications to fail in Imagelist_Read.
wine-mono-4.9.1
Changes since 4.9.0:
- Bug fixes from upstream Mono and FNA.
wine-mono-4.9.0
Changes since 4.8.3:
- Imported the System.Windows.Forms library from dotnet core.
- The build shell script has been replaced by a makefile. This adds some conveniences for development and should speed up parallel builds and rebuilds.
- Partial implementation of the System.Management library.
- Certificate authorities are now read from crypt32, effectively allowing https to work.
- Fixed a bug where some Mono libraries would try to invoke mono.exe, which doesn't exist.
- Updated Mono and FNA from upstream.
wine-mono-4.8.3
Changes since 4.8.2:
- Fixed a bug where the runtime msi wouldn't be removed when upgrading from a local install of 4.8.1 to a shared install of 4.8.2.
- A few bug fixes from upstream Mono.
wine-mono-4.8.2
Changes since 4.8.1:
- Fixed a bug where our csc.exe replacement would reference multiple conflicting versions of mscorlib.dll.
- Added options to the build script to allow building only the image/ directory, the msi, or the shared tarball.
- Updated FNA with upstream.
- Fixed image conversion in FNA.
- The Handle property in FNA will now return an HWND instead of an SDL window.
- The MONO_VERBOSE_METHOD environment variable can now specify methods with a dot (.) in the name.
- Fixed native methods that use an attribute to specify a calling convention. This fixes 32-bit Unreal Engine 3 games.