twinapi.appcore: Add RegisterAppConstrainedChangeNotification() stub.
[wine.git] / ANNOUNCE
blobb2be84ba961f9fe9e24ea9b44a165341750a97c5
1 The Wine development release 8.11 is now available.
3 What's new in this release:
4   - More mouse cursor clipping improvements.
5   - Support for TLS alerts.
6   - Increased available address space in WoW64 mode.
7   - Various bug fixes.
9 The source is available at:
11   https://dl.winehq.org/wine/source/8.x/wine-8.11.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.11 (total 26):
29  - #48811  StarCraft II fails to load in staging
30  - #51640  LibreOffice 7.2.0 crashes while browsing directories
31  - #53682  wineboot shows "user_check_not_lock BUG: holding USER lock" on aarch64 since wine-7.14
32  - #54380  Installed windows driver triggers a window when running any program in winXP mode (unimplemented function ntoskrnl.exe.Ke386QueryIoAccessMap)
33  - #54442  experimental wow64 mode: doesn't show some graphical windows
34  - #54738  msi:action - The 64-bit test_register_class_info() fails in Wine
35  - #54742  The 64-bit advapi32:registry breaks the 32-bit test_redirection() in Wine
36  - #54751  The 64-bit advapi32:registry breaks test_CoGetPSClsid() in ole32:compobj in Wine
37  - #54797  Lunar Magic 3.33: Crashes with BadWindow unless WINEDEBUG=+all
38  - #54848  dnsapi:query - test_DnsQuery() fails on Rémi's Wine test machines
39  - #54980  wine lost ability to correctly handle printer(CUPS)-supplied fonts (several programs)
40  - #54993  Framemaker 8 crashes in internal search operation
41  - #55013  user32:monitor - test_EnumDisplayMonitors() sometimes fails on Linux
42  - #55016  xaudio2_8:xaudio2 - test_simple_streaming() crashes on Windows 8+
43  - #55027  Microsoft Office: IME result string may get doubled when edit is done
44  - #55042  IDictionary::Add() fails to add entries with numerical keys that have the same hashes
45  - #55043  Z-Vision for Windows: Assertion failed when clicking "LOAD" button.
46  - #55046  ALT-TAB broken with virtual desktop and capture mouse (regression: 8.9 -> 8.10)
47  - #55047  d3d test_cursor_clipping() fails
48  - #55050  Wine stucks when creating prefix
49  - #55051  Build regression in wine 8.10 using clang on aarch64 (error in backend: Invalid register name "x18")
50  - #55055  Japanese IME fails to clear composition string when deleting the only remaining character
51  - #55074  Multiple apps fail to show anything after launch in virtual desktop mode (Steam, Ubisoft Connect)
52  - #55088  Program crashes when Common Dialog File open function is called
53  - #55091  preloader build failure with GOTPCREL relocation
54  - #55097  cmd.exe does not handle PATH with leading or sequential semicolons
56 ----------------------------------------------------------------
58 Changes since 8.10:
60 Akihiro Sagawa (1):
61       commdlg: Fix dialog template parser when caption starts with a DBCS character.
63 Alex Henrie (21):
64       windows.media.speech: Fix memory leak on error path in session_worker_thread_cb (scan-build).
65       shell32: Fix memory leak on error path in FolderItems_Constructor (scan-build).
66       rpcrt4: Don't use GetProcAddress for ole32 functions.
67       wldap32: Clean up LDAP_OPT_API_INFO.
68       wusa: Zero out identity on error path in read_identity.
69       msi: Fix memory leak on error path in MSI_OpenPackageW (scan-build).
70       msi: Fix double free on error paths in TransformView_Create (scan-build).
71       winhttp: Fix memory leak on error path in request_get_codepage (scan-build).
72       msi: Fix memory leaks in HANDLE_CustomType23 (scan-build).
73       combase: Don't export hProxyDll or rpc_execute_call.
74       comdlg32: Don't use GetProcAddress for SHSimpleIDListFromPath.
75       comctl32: Remove duplicate declarations of MONTHCAL functions.
76       hhctrl: Initialize item->items to NULL in parse_index_sitemap_object (scan-build).
77       urlmon: Don't export urlmon_instance.
78       wininet: Don't overallocate in urlcache_encode_url_alloc (scan-build).
79       conhost: Use correct pointer type in edit_line_transpose_words (scan-build).
80       advpack: Check the return value of adv_install in DoInfInstallW (scan-build).
81       wbemprox: Fix memory leak on error path in enum_key (scan-build).
82       sane: Fix use after free in create_item (scan-build).
83       crypt32: Don't export CRYPT_CopyReversed.
84       ws2_32: Don't export num_startup.
86 Alexandre Julliard (39):
87       include: Remove redundant __WINE_USE_MSVCRT checks.
88       makefiles: Define WINE_UNIX_LIB for all files that are built for Unix.
89       loader: Make the loader position-independent on 64-bit.
90       winegcc: Fix an uninitialized variable warning in the PE build.
91       wow64: Don't force wow64 dlls to load at low addresses.
92       kernel32/tests: Fix the PROCESS_BASIC_INFORMATION exit status type.
93       server: Also enforce the size of varargs data structures.
94       ntdll: Support the lower memory limit in MEM_ADDRESS_REQUIREMENTS.
95       ntdll: Allocate 64-bit and kernel stacks in high memory.
96       ntdll: Load modules with a high base address in high memory.
97       ntdll: Make only the necessary pages writable in the ARM64EC code map.
98       kernelbase: Don't define stdcall functions on non-i386.
99       ntdll: Don't define stdcall functions on non-i386.
100       wow64cpu: Don't define stdcall functions on non-i386.
101       include: Don't support stdcall functions on non-i386.
102       makefiles: Pass the dll extension from configure.
103       makefiles: Make the dll extension a per-architecture variable.
104       makefiles: Don't build native import libraries for PE-only build.
105       makefiles: Disable native import libraries on ARM64.
106       conhost: Use nameless union/structs.
107       explorer: Use nameless union/structs.
108       ipconfig: Use nameless union/structs.
109       netstat: Use nameless union/structs.
110       oleview: Use nameless unions/structs.
111       regedit: Use nameless unions/structs.
112       services: Use nameless unions/structs.
113       include: Disallow fastcall functions in Unix libraries.
114       loader: Force building the main loader as PIE on 64-bit.
115       loader: Always build the main loader as PIE if we have a preloader.
116       loader: Build the preloader as PIE on 64-bit.
117       winecfg: Use nameless unions/structs.
118       winedbg: Use nameless unions/structs.
119       winefile: Use nameless unions/structs.
120       winemenubuilder: Use nameless unions/structs.
121       winhlp32: Use nameless unions/structs.
122       wordpad: Use nameless unions/structs.
123       wow64: Map a copy of ntdll to build the syscall table.
124       ntdll: Implement _errno().
125       wow64: Don't load the 32-bit ntdll as an image to avoid debugger notifications.
127 Alistair Leslie-Hughes (1):
128       wbemdisp: Support DISPATCH_PROPERTYGET in Object Invoke.
130 Andrey Gusev (1):
131       include: Add flags in D3D11_RESOURCE_MISC_FLAG.
133 Bernhard Kölbl (2):
134       mf: Clear queued topologies on session shutdown.
135       mf: Don't leak sink in session_get_renderer_node_service().
137 Connor McAdams (10):
138       uiautomationcore: Store all events in an event list.
139       uiautomationcore: Clone UiaCacheRequest structure passed to UiaAddEvent.
140       uiautomationcore: Add support for cloning UiaCondition structures.
141       uiautomationcore: Implement UiaRaiseAutomationEvent.
142       uiautomationcore: Unconditionally match all events registered on the desktop node with a scope of subtree.
143       uiautomationcore/tests: Add tests for cross-process events.
144       uiautomationcore: Add support for creating serverside events.
145       uiautomationcore: Prevent creation of duplicate serverside events.
146       uiautomationcore: Add support for advising providers of events on serverside events.
147       uiautomationcore: Implement UiaEventAddWindow.
149 Daniel Lehman (1):
150       wininet: Free temporary buffer in InternetQueryOptionW loop.
152 David Kahurani (3):
153       gdiplus: Allow NULL format in GdipAddPathString.
154       msi: Reject shorter/longer lines in MsiDatabaseImportA.
155       msi: Convert newlines to alternate representation when exporting.
157 Davide Beatrici (21):
158       winepulse: Move main loop logic into mmdevapi.
159       winealsa: Implement main_loop in unixlib.
160       winecoreaudio: Implement main_loop in unixlib.
161       wineoss: Implement main_loop in unixlib.
162       winepulse: Move AudioClient's Initialize's exclusive mode check into unixlib.
163       winepulse: Move get_application_name into mmdevapi.
164       winealsa: Call mmdevapi's get_application_name.
165       winecoreaudio: Call mmdevapi's get_application_name.
166       wineoss: Call mmdevapi's get_application_name.
167       winepulse: Move stream_release into mmdevapi.
168       winealsa: Use mmdevapi's stream_release.
169       winecoreaudio: Use mmdevapi's stream_release.
170       wineoss: Use mmdevapi's stream_release.
171       winealsa: Use mmdevapi's set_stream_volumes.
172       winecoreaudio: Use mmdevapi's set_stream_volumes.
173       wineoss: Use mmdevapi's set_stream_volumes.
174       winepulse: Use mmdevapi's set_stream_volumes.
175       winealsa: Use create_stream's channel count in AudioClient's Initialize.
176       winecoreaudio: Use create_stream's channel count in AudioClient's Initialize.
177       wineoss: Use create_stream's channel count in AudioClient's Initialize.
178       winepulse: Refactor AudioClient's Initialize to match other drivers.
180 Eric Pouech (9):
181       kernel32/tests: Extend console inheritance tests.
182       include/dbghelp.h: Added some missing definitions.
183       dbghelp: Create implementation basis for SymSrvGetFileIndex*().
184       dbghelp/tests: Add tests for SymSrvGetIndexesInfo.
185       dbghelp/tests: Add tests for SymSrvGetInfoIndexes.
186       dbghelp: Implement SymSrvGetFileIndexInfo for PE modules.
187       dbghelp/tests: Add explicit tests about loading ELF modules.
188       dbghelp: Fix reading Wine loader's base address.
189       winedump: Tidy up print out in minidumps.
191 Etaash Mathamsetty (2):
192       ntdll: Allow RtlAllocateHeap to crash with invalid handle.
193       user32: Add GetSystemDpiForProcess export.
195 Fabian Maurer (3):
196       wineps.drv: Use afm FamilyName instead of FullName.
197       mmdevapi: Don't redefine stream_handle (gcc 4.3).
198       gdiplus: Refactor and add comments for easier understanding.
200 Gabriel Ivăncescu (27):
201       jscript: Correctly implement context for indirect eval calls in ES5+ modes.
202       jscript: Fix addressing invalid memory if ref is an argument.
203       jscript: Fix function leak in scope_init_locals.
204       jscript: Get rid of jsobj in scope_chain_t.
205       jscript: Don't use iface_to_jsdisp where it's not necessary to grab it.
206       jscript: Store detached args into a scope's specialized buffer.
207       jscript: Start from the last argument when adding them to named locals.
208       jscript: Get rid of the function instance in arguments obj.
209       mshtml: Traverse and unlink AreaElements properly.
210       mshtml: Fix style declaration leak in HTMLStyle_Create.
211       mshtml: Fix nsIDOMNode leak when retrieving an item in the node list.
212       mshtml: Fix node leak when enumerating nodes.
213       mshtml: Handle failure and cleanup properly when enumerating nodes.
214       mshtml: Fix leaks in create_all_list.
215       mshtml: Fix element leaks in get_elem_source_index.
216       mshtml: Fix text node leak in Element innerText setter.
217       mshtml: Fix text node leak in OptionElement text setter.
218       mshtml/tests: Fix CurrentStyle leak in test_style_filters.
219       jscript: Use jsstr_empty instead of allocating empty string.
220       jscript: Implement `caller` for function instances and prototype.
221       jscript: Throw error when accessing `arguments` prop of bind functions.
222       jscript: Don't expose Function.prototype.arguments in non-html mode.
223       jscript: Store ref to scope directly instead of frame in arguments object.
224       jscript: Don't use detached arguments buffer in html mode.
225       jscript: Always create detached variable objects with no class.
226       jscript: Properly handle passing undefined value to Number.toPrecision.
227       jscript: Properly handle passing undefined value to Number.toString in ES5+ mode.
229 Georg Lehmann (1):
230       winevulkan: Update to VK spec version 1.3.254.
232 Giovanni Mascellani (5):
233       dxgi: Do not uselessly pass queue_family_index around.
234       dxgi: Remove now-useless function d3d12_swapchain_create_buffers().
235       dxgi: Do not destroy D3D12 resources unless requested.
236       dxgi: Only create D3D12 resources when necessary.
237       dxgi: Rename and split d3d12_swapchain_destroy_buffers().
239 Hans Leidekker (1):
240       secur32: Add support for sending TLS alerts.
242 Huw D. M. Davies (2):
243       winepulse: Don't overwrite the result in the insufficient buffer case.
244       winepulse: Return E_NOTIMPL when the property is not found.
246 Jacek Caban (3):
247       user32: Remove no longer used setupapi import.
248       win32u: Remove duplicated d3dkmdt.h include.
249       configure: Use -fvisibility=hidden when building with msvcrt and cross compiler is not available.
251 Jactry Zeng (2):
252       atl/tests: Move regular DWORD tests into a loop.
253       atl: Convert REG_DWORD to a correct type.
255 Jinoh Kang (1):
256       loader: Set the visibility of symbols in preloader to "hidden".
258 Liam Middlebrook (2):
259       cmd/tests: Add tests for PATH separator.
260       cmd: Fix empty strings between PATH separators.
262 Nikolay Sivov (4):
263       scrrun/dictionary: Compare key values in addition to their hashes.
264       oleaut32/recinfo: Use CRT allocation functions.
265       oleaut32/recinfo: Use CoTaskMem* allocations for the record data.
266       oleaut32: Trace typelib guid in GetRecordInfoFromGuids().
268 Olivier F. R. Dierick (1):
269       ntoskrnl.exe: Add Ke386QueryIoAccessMap stub.
271 Paul Gofman (1):
272       crypt32: Do not create persistent container in CRYPT_CreateKeyProv().
274 Rémi Bernon (41):
275       server: Pass the message code to get_hardware_msg_bit.
276       server: Use hardware message category when checking filter.
277       imm32: Avoid resizing IMCC to zero-size buffer.
278       winex11: Remove now unnecessary WM_X11DRV_CLIP_CURSOR_NOTIFY.
279       win32u: Move grab_pointer registry option from winex11.
280       win32u: Add a clipping_reset member to user_thread_info.
281       win32u: Add a clipping_cursor member to user_thread_info.
282       winex11: Move clip_fullscreen_window foreground check inside it.
283       win32u: Move fullscreen window cursor clipping from winex11.
284       server: Update desktop cursor window when cursor pos changes.
285       server: Keep track of the current desktop cursor handle.
286       server: Introduce and send new WM_WINE_SETCURSOR hardware message.
287       win32u: Add a hwnd parameter to SetCursor driver entry points.
288       win32u: Notify drivers of cursor changes on WM_WINE_SETCURSOR.
289       wineandroid: Set the window cursor immediately in SetCursor.
290       winex11: Set the window cursor immediately in SetCursor.
291       server: Update the DF_WINE_CREATE_DESKTOP desktop flag on opening.
292       win32u: NtUserGetObjectInformation returns a BOOL, not NTSTATUS.
293       winex11: Don't grab the cursor if another process is focused.
294       winex11: Simplify the cursor clipping retry mechanism.
295       winex11: Replace the clipping message HWND with a BOOL flag.
296       winegstreamer: Introduce new stream_descriptor_set_tag helper.
297       winegstreamer: Pass a struct wg_parser_stream to media_stream_create.
298       winegstreamer: Factor the creation of the first stream media type.
299       winegstreamer: Introduce new init_video_media_types helper.
300       winegstreamer: Introduce new init_audio_media_types helper.
301       winegstreamer: Pass the stream descriptor to media_stream_create.
302       win32u: Remove unnecessary set_cursor new_clip rect copy.
303       server: Pass set_cursor flags in WM_WINE_CLIPCURSOR wparam.
304       win32u: Use a specific flag instead of shrinking the clip rect.
305       winegstreamer: Remove colorimetry and chroma-site from wg_format caps.
306       winegstreamer: Remove the callback mechanism from wg_allocator.
307       winegstreamer: Move release_memory_sample helper around.
308       winegstreamer: Lazily allocate wg_allocator unix memory.
309       imm32/tests: Test how deleting a character can behave.
310       imm32: Use offsets instead of lengths to decide on sending updates.
311       winex11: Report empty preedit string when result string is committed.
312       winex11: Make sure HIMC is opened before sending IME updates.
313       win32u: Split default UpdateDisplayDevices implementation to a helper.
314       win32u: Move virtual desktop display settings logic from winex11.
315       configure: Build x86_64 PE code with mcmodel=small.
317 Shaun Ren (8):
318       sapi: Partially implement ISpMMSysAudio::SetState.
319       sapi: Free completed buffers asynchronously in SpMMAudio.
320       sapi: Implement ISpMMSysAudio::Write.
321       sapi: Implement ISpMMSysAudio::EventHandle.
322       sapi: Implement ISpVoice::SetOutput.
323       sapi: Implement ISpVoice::Set/GetVoice.
324       sapi: Implement ISpVoice::Set/GetRate.
325       sapi: Implement ISpVoice::Set/GetVolume.
327 Tatsuyuki Ishi (3):
328       win32u: Move QueryDisplayConfig from user32.
329       win32u: Cleanup naming and log messages for QueryDisplayConfig.
330       win32u: Avoid SEGV in QueryDisplayConfig when run as service.
332 Tim Clem (1):
333       ntdll: Treat read faults on readable pages as write faults on macOS.
335 Vladislav Timonin (2):
336       shell32: Show >4GB values in size columns of My Computer.
337       shell32: Don't show size for inaccessible drives in My Computer.
339 Zebediah Figura (1):
340       xaudio2/tests: Fix the IID_IXAudio28 declaration.
342 Ziqing Hui (1):
343       winegstreamer: Implement Flush for WMV decoder DMO.