Releases: madewokherd/wine-mono
wine-mono-7.4.0
Changes since 7.3.1:
- Fixed a regression in string formatting in WPF. The bug is in WPF code but was triggered by an implementation change in Wine's dwrite. (Winehq bug 53552)
- Fixed build on systems that have a "python3" command but no "python".
- Fixed build error with glibc 2.36.
- Updated the Vagrant build VM to Ubuntu 22.04.
- Some work on System.Configuration tests.
- Nunit tests now use .exe.config files.
- Stand-alone System.Configuration tests now run as part of the test suite.
- A default case was added to fix a failing test. It's not known if this helps any real application.
- IL code storing a 64-bit integer to a "function pointer" type field is now accepted. This fixes an Invalid IL error in Grounded.
- Imported System.Speech.dll from .NET Core. This does not work yet with Wine's SAPI implementation, but allows for further development.
- Updated SDL to 2.24.0.
- Updated FNA to 22.09.01.
- Updated Mono from upstream.
wine-mono-7.3.1
- Fixes for Warhammer: Vermintide 2 launcher crashing (Fixed vtblgap special methods)
- Fix Free Video Converter Converter .Net 2.0 install bug (Added
installutil.exe
to install) - Remove build-time dependency on dos2unix.
wine-mono-7.3.0
Changes since 7.2.0:
- Mono:
- Implemented [Out] conversion for more array types in managed-to-native wrappers. (from Rémi Bernon, for Space Engineers)
- Fixed a regression caused by the IsCopyConstructed mashaling implementation in 7.0.0, which affected types that have a copy constructor but no destructor. (for ValveSoftware/Proton#5007)
- Updated from upstream.
- Fixed output redirection when csc.exe is run without a console.
- The MSI packages now install globally by default and will automatically remove previous per-user installs. This is to address a bug caused by Proton changing the user SID after the prefix is created, which made it impossible to uninstall the support MSI package. (ValveSoftware/Proton#2699)
- Fixed theme: namespace in PresentationFramework.Aero's embedded xaml. (for ValveSoftware/Proton#1474)
- Added v3.5 directory to c:\Windows\Microsoft.NET\Framework[64]. (for winehq bug 52944)
- Fixed an error when reading string objects with mono-basic's FileGetObject method. (for ValveSoftware/Proton#5832)
- Updated FNA to 22.05.
wine-mono-7.2.0
Changes since 7.1.1:
- Mono:
- Updated from upstream.
- Imported System.DirectoryServices.AccountManagement.dll from corefx (resolves 50158).
- Imported NegotiateStream class from corefx.
- Imported System.IO.Ports from corefx (resolves 52340).
- Static class constructors on the entry point class are now executed before the entry point function (resolves 50158).
- Module constructors are now executed before invoking a method with reflection (resolves #133).
- Fixed a memory error in object marshaling for blittable types (for DayZ launcher).
- AppDomainSetup.TargetFrameworkName is now populated based on TargetFrameworkAttribute, allowing for quirks based on target framework.
- System.Drawing.Icon will check all icons directly for a PNG file signature, rather than guessing based on width/height (for Control launcher).
- The 1 MB limit on the size of value types has been removed. This limit is required by the spec, but .NET Framework doesn't seem to enforce it. In practice, this probably won't work in most cases, but it seems to be usable at least for RVA static fields.
- Hooks have been added to allow the AppDomain search path (usually the .exe directory) to be skipped in searching for assemblies. As of Wine 7.4, this can be used with the
WINE_MONO_OVERRIDES
environment variable. Example:WINE_MONO_OVERRIDES=System.*,PrivatePath=n
would ignore System.dll and System.*.dll in the application directory. This provides a work-around for applications affected by #138. - Fixed reflection calls with Pointer objects as parameters (for ELYON launcher).
- Implemented native-to-managed marshaling of pointers with IsCopyConstructed modifier (for ELYON launcher/CefSharp).
- NamedPipeChannelListener now treats Timeout.MaxValue as infinite (for ELYON launcher/CefSharp).
- The HttpClient class can now be constructed with a null message handler, which creates a default
HttpClientHandler
object (for ELYON launcher). - Imported the internal ClientConfigPaths class from corefx (for ELYON launcher). This does not integrate with the rest of System.Configuration.dll so for the moment its use (through reflection) doesn't affect the configuration.
- Implemented NamedPipeDuplexSessionChannel class (for ELYON launcher/CefSharp).
- Fixed a potential out-of-range memory access in trace code for non-void methods that have an unreachable return instruction without a value at the end.
- WPF:
- Optimizations to line wrap code (for Arma 3 launcher).
- Stubbed TextLine.Collapse (for Arma 3 launcher).
- If target framework is 4.5, two-way or one-way to source bindings are allowed on properties without a public setter (for Arma 3 launcher). This behavior is documented on msdn
- Newline characters embedded in
TextCharacters
objects are now treated as newlines (for Arma 3 and DayZ launchers).
- Many improvements to monoDX (for Sega Rally launcher).
- Added
Servicing
value to registry (resolves 52698). - The D3D11 graphics driver for FNA3D is built now and can be enabled by setting
FNA3D_FORCE_DRIVER=D3D11
. It doesn't currently work with Wine's d3dcompiler. - SDL has been updated with some work-arounds for window management regressions 52519 and 52532.
wine-mono-7.1.5
Added a change to fix options screens on the DayZ launcher that was supposed to be in 7.1.4, but wasn't because I made a Git mistake.
wine-mono-7.1.4
This adds fixes for the Control and DayZ launchers.
wine-mono-7.1.3
This release has some fixes for the Arma 3 and DayZ launchers in Proton:
- Optimized line wrap code in WPF.
- Improved stub for TextLine.Collapse().
- Fixed a memory corruption error when a class type with explicit blittable layout is used as an out or ref parameter to a pinvoke method.
wine-mono-7.1.2
The only change since 7.1.1 is reverting SDL from 2.0.18 back to 2.0.16. This change only affects games using XNA 4, for which we provide FNA as a replacement.
Explanation: It turns out that SDL 2.0.18 fixed a bug in focus change detection, so now window activation and deactivation are being detected in situations where they weren't before. This would be awesome, except that SDL responds to these focus changes in broken ways. If SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS is enabled (FNA enables it so in our case it is), focus loss causes a fullscreened window to unfullscreen, and it doesn't go back to fullscreen when activated again. Changing the hint is not a solution, as I've noticed other problems in that configuration. In the long term, this is going to require further investigation to understand what's going wrong and fix whatever bug in SDL, FNA, or Wine might be causing this.
wine-mono-7.1.1
Changes since 7.1.0:
- Uninstalling the package now removes and unregisters diasymreader.dll.
- FNA updated to 22.01.
- FAudio updated to latest Git revision.
wine-mono-7.1.0
Changes since 7.0.0:
- Build system updates:
- Monolite is now shipped via a Git repository, instead of being downloaded from upstream Mono CI. Our monolite binaries are no longer compatible with upstream.
- The test archive now contains a build of Mono's C# REPL, good for quick tests of API behaviors on Windows.
- The support package will attempt to install diasymreader.dll. This requires patches that add the dll to Wine (not sent yet).
- Mono updates:
- The Stack<> and Queue<> types have been moved from mscorlib.dll back to System.dll where they are in .NET Framework. This difference was causing incompatibilities between binaries built with Mono and .NET Framework. It also broke Space Engineers. Unfortunately, fixing this made wine-mono incompatible with monolite from upstream Mono, so we are no longer using that.
- Added private field IsolatedStorageFile.m_RootDir, used by Let's Build a Zoo.
- Fixed an out-of-range access in configuration code. (Fixes https://bugs.winehq.org/show_bug.cgi?id=51513)
- Added support for codepage 28603, Estonian.
- Encoding.Default now returns the Active Code Page instead of UTF8.
- Implemented Marshal.GetTypeFromCLSID.
- VB.NET updates:
- Implemented OptimisticSet on LateBinding.LateIndexSetComplex.
- Fixed behavior of "Option Compare Text" in VB.NET. (for #122)
- Added string resources to System.dll for applications that access these directly.
- WPF updates:
- Implemented GetWindowTextWrapper function in PresentationNative.
- Some optimizations to the WPF/dwrite layer.
- Added PresentationFramework.Aero.dll.
- Fixed failures to load PresentationFramework.Classic.dll and PresentationFramework.Aero.dll version 3. This now redirects to version 4.
- Fixed XamlParseException when creating a Calendar control. (Fixes https://bugs.winehq.org/show_bug.cgi?id=51754)
- Winforms updates:
- Fixed Clipboard class failing to paste.
- Fixed hang when attempting to use the SendKeys class.
- Upstream updates:
- Updated Mono and MonoDX from upstream.
- Updated SDL to 2.0.18.
- Updated FNA to 21.12. This includes the 21.09 release which had a refactor of Game.Tick to improve frame timing accuracy and input latency for some games.