light.msstyles: Add nonclient metrics.
[wine.git] / ANNOUNCE
blob1c2985c89aacb6bec4d97699e8257c3c27e5b85f
1 The Wine development release 8.3 is now available.
3 What's new in this release:
4   - Support for the Low Fragmentation Heap.
5   - Smard card support using PCSC-Lite.
6   - Bundled Zydis library for more correct disassembly.
7   - Various bug fixes.
9 The source is available at:
11   https://dl.winehq.org/wine/source/8.x/wine-8.3.tar.xz
13 Binary packages for various distributions will be available from:
15   https://www.winehq.org/download
17 You will find documentation on https://www.winehq.org/documentation
19 You can also get the current source directly from the git
20 repository. Check https://www.winehq.org/git for details.
22 Wine is available thanks to the work of many people. See the file
23 AUTHORS in the distribution for the complete list.
25 ----------------------------------------------------------------
27 Bugs fixed in 8.3 (total 29):
29  - #24256  3D Sexvilla 2: extremely long loading times
30  - #34011  Path of Exile stutters constantly
31  - #37146  Untis 2015 (.NET 4.0 app) crashes on startup with Wine-Mono
32  - #37495  Multiple PC/SC applications need winscard.SCardEstablishContext implementation (AusweisApp2 1.x german identity card app, SmartCard test apps, Seneka EBDYS client, Aruba Key)
33  - #39113  Multiple PC/SC applications need winscard.SCardListReaders implementation (Aruba key, SmartCard test apps)
34  - #43224  Freelist scan can result in O(n) time when allocating
35  - #45756  Button not clickable when dpi setting changed in Office 2007 Installer
36  - #49113  Wine heap performs badly when multiple threads are concurrently allocating or freeing memory
37  - #51259  6.0.1 Introduces error causing Wavelab to close when loading presets
38  - #52506  Setup of game "What's the Secret?" fails to create icon
39  - #53094  ntdll:rtlstr test crashes on win32 arch with hi-IN locale
40  - #53176  KeePassXC needs Windows.Security.Credentials.KeyCredentialManager (UWP)
41  - #53504  Sacred:unhandled exception in Wine 7.14
42  - #53728  Escape from Tarkov needs DisplayConfigGetDeviceInfo(DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME) implementation
43  - #54112  rouvy : fails to update with server, unimplemented function bthprops.cpl.BluetoothRegisterForAuthenticationEx
44  - #54149  shlwapi:ordinal - test_SHFormatDateTimeA() fails on the mixed locales configuration
45  - #54338  Swift crashes due to unimplemented api-ms-win-core-realtime-l1-1-1.dll.QueryUnbiasedInterruptTimePrecise function
46  - #54432  Missing ntdll.RtlAddressInSectionTable() implementation causes all GraalVM Native Image exes to crash on load
47  - #54475  Hardwar UIM6.0 crashes in 8.0, doesn't in 6.0.3
48  - #54534  dbghelp:dbghelp - The test_loaded_modules() enumeration fails on Windows 10 1607
49  - #54559  riched20:editor - test_EM_GETSELTEXT() fails in the Hindi locale on Windows
50  - #54562  The 64-bit oleaut32:usrmarshal crashes in Wine
51  - #54564  Rich Edit crashes when Ctrl+Right is pressed at past the final paragraph
52  - #54565  riched20:richole - subtest_InsertObject() fails in the Hindi locale on Windows
53  - #54570  Saints Row: The Third heavy rain causes heavy fps reductions
54  - #54581  SpeedCommander 20 installer crashes on unimplemented function SHELL32.dll.Shell_GetCachedImageIndexW
55  - #54582  kernel32:locale - test_NLSVersion() fails on Windows 10 22H2
56  - #54583  kernel32:locale - The non-breaking space GetNumberFormatEx() test fails on Windows 11
57  - #54584  kernel32:locale - The NtGetNlsSectionPtr() test fails on Windows 11
59 ----------------------------------------------------------------
61 Changes since 8.2:
63 Adrian Thiele (2):
64       mfreadwrite/tests: Check refcount of device manager after release.
65       mfreadwrite/reader: Release device manager in source_reader_release.
67 Akihiro Sagawa (1):
68       msado15: Free recordset filter on close.
70 Alex Henrie (7):
71       include: Annotate CommandLineToArgvW with __WINE_DEALLOC.
72       shell32: Add support for Program Manager icons with arguments.
73       dsound: Use CRT functions for memory allocation.
74       winex11: Use RTL_CONSTANT_STRING instead of reimplementing it.
75       winex11: Avoid calling RtlInitUnicodeString on a static constant.
76       server: Annotate allocation functions with __WINE_(ALLOC_SIZE|DEALLOC|MALLOC).
77       ntoskrnl: Add ExGetPreviousMode and test.
79 Alexandre Julliard (33):
80       conhost: Use standard va_list instead of __ms_va_list.
81       notepad: Use standard va_list instead of __ms_va_list.
82       oleview: Use standard va_list instead of __ms_va_list.
83       start: Use standard va_list instead of __ms_va_list.
84       taskmgr: Use standard va_list instead of __ms_va_list.
85       winefile: Use standard va_list instead of __ms_va_list.
86       include: Move __builtin_ms_va_list definitions to vadefs.h.
87       ntdll: Pass the NtCreateNamedPipeFile disposition to the server.
88       ntdll: Return the correct IOSB information when creating a named pipe.
89       kernelbase: Set ERROR_ALREADY_EXISTS for existing pipe in CreateNamedPipeW().
90       makedep: Don't add dependencies for tests of disabled dlls.
91       kernel32/tests: Add a missing dependency comment.
92       ntdll: Stop loading libwine.so.
93       libwine: Remove obsolete library.
94       ntdll: Build an initial WoW context on ARM64.
95       ntdll: Implement getting/setting the WoW context on ARM64.
96       ntdll: Mark the Wow64 TLS slots as reserved.
97       makedep: Remove support for building shared libraries.
98       winegcc: Stop using the deprecated prelink tool.
99       winebuild: Only allow the stdcall calling convention for system calls.
100       libs: Import the Zydis library version 4.0.0.
101       winedbg: Use the Zydis library for disassembly.
102       ntdll: Update the IOSB status in NtCreateNamedPipeFile().
103       ntdll: Skip dependency only for the actually loaded ntdll and kernel32, instead of matching by name.
104       ntdll: Also check for data execution on x86-64.
105       wow64: Call the 32-bit KiRaiseUserExceptionDispatcher for invalid handle exceptions.
106       makedep: Store the list of .ok files per-architecture.
107       ntdll: Implement RtlAddProcessTrustLabelAce().
108       server: Fix another buffer overflow compiler warning.
109       wine.inf: Remove redundant platform-specific sections.
110       wine.inf: Set Program Files variables separately for all WoW platforms.
111       wine.inf: Add keys for the platform-specific Wow64 backend.
112       wow64: Get the backend dll name from the registry.
114 Alexandros Frantzis (2):
115       gdi32: Track ticks since draw start per window_surface.
116       win32u: Reset draw_start_ticks for new window_surface.
118 Alistair Leslie-Hughes (4):
119       msado15: Semi-stub _Recordset get/put Filter.
120       msado15: Field ActualSize return a default size.
121       msado15: Support "Optimize" in Properties get_Item.
122       include: Add DBCOLUMNFLAGS_ enums values.
124 Connor McAdams (14):
125       uiautomationcore: Register all UI Automation typelibs.
126       uiautomationcore: Add stub IUIAutomation implementation.
127       uiautomationcore: Implement IUIAutomation::ElementFromHandle.
128       uiautomationcore: Implement IUIAutomationElement::GetCurrentPropertyValueEx.
129       uiautomationcore: Implement UiaLookupId for AutomationIdentifierType_ControlType GUIDs.
130       uiautomationcore: Implement IUIAutomationElement::get_CurrentControlType.
131       uiautomationcore: Implement IUIAutomationElement::get_CurrentName.
132       uiautomationcore: Implement IUIAutomationElement::get_CurrentBoundingRectangle.
133       uiautomationcore/tests: Fix UiaHUiaNodeFromVariant tests on Windows 11.
134       uiautomationcore/tests: Fix UiaNodeFromHandle tests on Windows 11.
135       uiautomationcore: Implement IUIAutomation::IntSafeArrayToNativeArray.
136       uiautomationcore: Implement IUIAutomation::IntNativeArrayToSafeArray.
137       uiautomationcore: Implement IUIAutomation reserved value retrieval methods.
138       uiautomationcore: Implement IUIAutomation::CheckNotSupported.
140 David Gow (1):
141       dxgi: Don't warn on DXGI_ALPHA_MODE_UNSPECIFIED with wined3d.
143 Eric Pouech (11):
144       dbghelp/tests: Test that overlapped module is really unloaded.
145       include: Ensure that SymRefreshModuleList() is properly defined.
146       kernel32/tests: Don't let debugger tests fail on a 64bit only config.
147       dbghelp/tests: Fix failure on Win10 1607.
148       kernel32/tests: Fix debugger.c:test_kill_on_exit().
149       dbghelp/tests: Add wrapper for EnumerateLoadedModulesW64().
150       dbghelp/tests: Adapt test_modules_overlap() for Windows 11.
151       dbghelp/tests: Introduce ends_withW helper.
152       dbghelp/tests: Only retrieve the system directories once.
153       dbghelp/tests: Introduce get_machine_bitness() helper.
154       dbghelp/tests: Fix tests for process count in wow64.
156 Etaash Mathamsetty (1):
157       ntoskrnl.exe/tests: Add Driver Object Extension Tests.
159 Florian Will (2):
160       gdiplus/tests: Test for GdipPrivateAddFontFile() sharing violation.
161       gdiplus: Use FILE_SHARE_READ in GdipPrivateAddFontFile().
163 François Gouget (20):
164       jsproxy/tests: InternetInitializeAutoProxyDll() is no longer supported on Windows 11.
165       jsproxy/tests: Add more tests for InternetGetProxyInfo()'s length parameter.
166       gdi32/tests: Mark a couple other D3DKMTCheckOcclusion() tests as flaky.
167       vbscript/tests: Fix the testChrError() tests.
168       winmm/tests: Ignore spurious WM_DWMCOLORIZATIONCOLORCHANGED messages.
169       mscoree/tests: Trace the error when a Windows API fails.
170       kernel32/tests: Fix the NLSVersion test on Windows 10 22H2.
171       kernel32/tests: Fix the NtGetNlsSectionPtr() test on Windows 11.
172       kernel32/tests: Fix the French GetNumberFormatEx() test on Windows 11.
173       gdi32/tests: Simplify setting up the non uniform gamma ramps.
174       gdi32/tests: Make the gamma ramp failures more unique.
175       gdi32/tests: Fix the SetDeviceGammaRamp() tests on Windows 10 1909.
176       mscoree/tests: Trace the GetExitCodeProcess() error before it gets lost.
177       ntdll/tests: Minimize the stack size for test_tp_multi_wait().
178       riched32/tests: EM_GETSELTEXT's wparam is not used and should be 0.
179       riched20/tests: EM_GETSELTEXT's wparam is not used and should be 0.
180       riched20/tests: Fix the EM_GETSELTEXT tests in Hindi on Windows.
181       mmdevapi/tests: WoW64 processes can read the properties from the registry.
182       shlwapi/tests: Fix the date formatting tests when the locale does not match the code page.
183       shlwapi/tests: Make sure to test the formatting of troublesome dates.
185 Gabriel Ivăncescu (8):
186       mshtml: Use proper types for readystate_locked and readystate_pending.
187       mshtml: Free the task after the destructor.
188       mshtml: Pass optional args to XMLHttpRequest.open() correctly.
189       mshtml: Register all event handlers when creating the XMLHttpRequest.
190       mshtml: Track readyState in XHRs and report it manually.
191       mshtml: Add separate task list for tasks dispatching events.
192       mshtml: Implement synchronous XMLHttpRequest.
193       mshtml: Send all readystatechange events for synchronous XHRs in IE9 and below.
195 Gijs Vermeulen (1):
196       shell32: Add Shell_GetCachedImageIndexA/W exports.
198 Hans Leidekker (19):
199       include: Add missing smart card defines.
200       winscard: Implement SCardEstablish/ReleaseContext() on top of libpcsclite.
201       winscard: Implement SCardIsValidContext().
202       winscard: Implement SCardGetStatusChangeA/W().
203       winscard: Implement SCardCancel().
204       winscard: Implement SCardListReadersA/W().
205       winscard: Implement SCardListReaderGroupsA/W().
206       winscard: Implement SCardConnectA/W().
207       winscard: Implement SCardStatusA/W().
208       winscard: Implement SCardRe/Disconnect().
209       winscard: Implement SCardBegin/EndTransaction().
210       winscard: Implement SCardTransmit().
211       winscard: Implement SCardControl().
212       winscard: Implement SCardGet/SetAttrib().
213       winscard: Implement SCardFreeMemory().
214       winscard: Use string conversion helpers in SCardAddReaderToGroupA().
215       winscard: Improve traces.
216       winscard: Add wow64 thunks.
217       winscard/tests: Initial tests.
219 Henry Goffin (1):
220       win32u: Invalidate all cached keys after input.
222 Huw D. M. Davies (2):
223       winemac: Fix return type of ProcessEvents().
224       maintainers: Add myself to the Audio I/O section.
226 Illia Polishchuk (2):
227       d3d9/tests: Add test for non-indexed instancing drawing.
228       d3d9: Always draw only a single instance for non-indexed draws.
230 Ivan Chikish (1):
231       gdi32/tests: Check last error on ' '.
233 Jinoh Kang (2):
234       riched20/tests: Test for word movement across paragraph boundary.
235       riched20: Don't set para unless committing cursor move in ME_MoveCursorWords.
237 Marcus Meissner (1):
238       user32/tests: Fix size passed to ToUnicode.
240 Max Figura (15):
241       wined3d: Move the WINED3D_RS_ROP2 stub to wined3d_device_apply_stateblock.
242       wined3d: Move the WINED3D_RS_PLANEMASK stub to wined3d_device_apply_stateblock.
243       wined3d: Move the WINED3D_RS_LASTPIXEL stub to wined3d_device_apply_stateblock.
244       wined3d: Move the WINED3D_RS_ZVISIBLE stub to wined3d_device_apply_stateblock.
245       wined3d: Move the WINED3D_RS_SUBPIXEL stub to wined3d_device_apply_stateblock.
246       wined3d: Move the WINED3D_RS_SUBPIXELX stub to wined3d_device_apply_stateblock.
247       wined3d: Move the WINED3D_RS_STIPPLEDALPHA stub to wined3d_device_apply_stateblock.
248       wined3d: Move the WINED3D_RS_STIPPLEENABLE stub to wined3d_device_apply_stateblock.
249       wined3d: Move the WINED3D_RS_MIPMAPLODBIAS stub to wined3d_device_apply_stateblock.
250       wined3d: Move the WINED3D_RS_ANISOTROPY stub to wined3d_device_apply_stateblock.
251       wined3d: Move the WINED3D_RS_FLUSHBATCH stub to wined3d_device_apply_stateblock.
252       wined3d: Move the WINED3D_RS_TRANSLUCENTSORTINDEPENDENT stub to wined3d_device_apply_stateblock.
253       wined3d: Move the WINED3D_RS_WRAP15 stub to wined3d_device_apply_stateblock.
254       wined3d: Move the WINED3D_RS_WRAP14 stub to wined3d_device_apply_stateblock.
255       wined3d: Move the WINED3D_RS_WRAP13 stub to wined3d_device_apply_stateblock.
257 Mohamad Al-Jaf (15):
258       bthprops.cpl: Move implementations to bluetoothapis and import them.
259       include: Add BluetoothRegisterForAuthenticationEx prototype.
260       bluetoothapis: Add BluetoothRegisterForAuthenticationEx stub.
261       bluetoothapis: Add BluetoothUnregisterAuthentication stub.
262       include: Fix BluetoothRegisterForAuthentication prototype.
263       include: Add windows.security.credentials.idl file.
264       cryptowinrt/tests: Add ICryptographicBufferStatics interface test.
265       cryptowinrt: Add private.h file.
266       cryptowinrt: Stub IKeyCredentialManagerStatics interface.
267       cryptowinrt: Import IAsyncOperation from windows.gaming.input.
268       cryptowinrt: Implement IKeyCredentialManagerStatics::IsSupportedAsync().
269       cryptowinrt/tests: Add IKeyCredentialManagerStatics::IsSupportedAsync() tests.
270       widl: Use "i4" / "u4" for LONG parameterized type signature.
271       widl: Use "i2" / "u2" for INT16 parameterized type signature.
272       include: Add more Windows.Foundation.Numerics structs.
274 Paul Gofman (3):
275       server: Retry socket connection on ECONNABORTED error.
276       server: Set TCP SYN count on sockets.
277       win32u: Expose and use ProcessEvents from drivers instead of MsgWaitForMultipleObjectsEx.
279 Philip Gruebele (1):
280       dwrite: Pass correct font key when adding glyph to cache.
282 Piotr Caban (4):
283       winspool: Fix FILE: output handling in StartDocDlgW.
284       wineps: Remove no longer used output parameter handling from PSDRV_CreateDC.
285       localspl: Ignore an empty output string.
286       windowscodecs: Don't reorder gif extension blocks in GetReaderByIndex.
288 Rémi Bernon (23):
289       ntdll: Fix HeapWalk with empty uncommitted consecutive subheaps.
290       ntdll: Implement HeapCompatibilityInformation.
291       ntdll: Increase heap block tail_size capacity to 16 bits.
292       ntdll: Count allocations and automatically enable LFH.
293       ntdll: Split heap_resize_block into heap_resize_(block|large) helpers.
294       ntdll: Implement Low Fragmentation Heap frontend.
295       ntdll: Use atomics and lock-free list for bin groups.
296       ntdll: Add a heap thread affinity and per-affinity bin group cache.
297       ntdll: Avoid shrinking large heap block to small block.
298       msvcr80/tests: Test _dupenv_s outcome with missing env var.
299       msvcr80/tests: Test _wdupenv_s outcome with missing env var.
300       msvcrt: Fix _dupenv_s behavior with missing env var.
301       msvcrt: Fix _wdupenv_s behavior with missing env var.
302       include: Allow overriding LANGID in module VERSIONINFO.
303       oleaut32/tests: Test VARIANT_UserUnmarshal allocation sizes.
304       oleaut32: Allocate a full pointer when unmarshalling byref arrays.
305       winex11: Assume that Xkb extension is available.
306       widl: Use "g16" for GUID parameterized type signature.
307       user32/tests: Test VK_MENU effect on ToUnicode.
308       win32u: Map VK_MENU / KBDALT in kbdus_tables pCharModifiers.
309       win32u: Return the current display mode depth with nulldrv.
310       explorer: Use GUID_NULL display device GUID for nulldrv.
311       win32u: Check GUID_NULL display device if desktop atom is missing.
313 Serkan Önder (1):
314       po: Update Turkish translation.
316 Sven Baars (3):
317       bcrypt: Factor out wow64 padding conversion.
318       bcrypt: Add wow64 support for PSS padding.
319       bcrypt: Remove unused fields from struct key_asymmetric32.
321 Tingzhong Luo (2):
322       evr: Fix crash when clearing input type for the mixer.
323       winspool: Check dmSize in IsValidDevmodeW().
325 Torge Matthies (4):
326       kernelbase: Break out of inner for-loop early in find_substring.
327       kernelbase: Reuse the previous iteration's pos and sortkey state if possible in find_substring.
328       kernelbase: Fix WaitForThreadpoolIoCallbacks spec entry.
329       kernel32: Fix WaitForThreadpoolIoCallbacks spec entry.
331 Zebediah Figura (16):
332       user32: Map DEV_BROADCAST_DEVICEINTERFACE to ANSI for registered device notifications.
333       ntoskrnl/tests: Expand tests for device and interface naming.
334       ntoskrnl: Preserve the device instance ID case in IoRegisterDeviceInterface().
335       Revert "ntoskrnl.exe: Enforce path case in WM_DEVICECHANGE notifications.".
336       wined3d: Require fragment shader image stores and atomics to create a feature level 11.0 device.
337       wined3d: Require gather offset support to create a feature level 11.0 device.
338       wined3d: Require shader clip distance support to create a feature level 10.0 device.
339       wined3d: Require shader cull distance support to create a feature level 10.0 device.
340       wined3d: Disable 64-bit integer support.
341       ddraw/tests: Test that surface properties are retained across SetSurfaceDesc() calls.
342       ddraw/tests: Add more tests for mipmap surface creation flags.
343       ddraw: Forbid DDSCAPS_COMPLEX without any caps that merit a complex surface.
344       ddraw: Forbid DDSD_MIPMAPCOUNT without DDSCAPS_COMPLEX.
345       ddraw: Remove the redundant "desc" parameter to ddraw_surface_create_wined3d_texture().
346       d3d8/tests: Do not check for WM_MOVE in sc_maximize_messages.
347       d3d9/tests: Restore the focus window before sending SC_MAXIMIZE to it.
349 Zhiyi Zhang (4):
350       include: Add DirectComposition error codes.
351       include: Add dcomptypes.idl.
352       include: Add dcompanimation.idl.
353       include: Add dcomp.idl.
355 Ziqing Hui (4):
356       mf/tests: Add missing \n.
357       mf/tests: Correctly initialize DMO media type.
358       mf/tests: Test ProcessInput and ProcessOutput for WMV decoder DMO.
359       mf/tests: Test output data for WMV decoder DMO.