wined3d: Merge shader_load_constants() into shader_select().
[wine.git] / ANNOUNCE.md
bloba4a23c9610988d5a2e924504973f1eaa19ae728d
1 The Wine development release 9.2 is now available.
3 What's new in this release:
4   - Mono engine updated to version 9.0.0.
5   - A number of system tray fixes.
6   - Exception handling improvements on ARM platforms.
7   - Various bug fixes.
9 The source is available at <https://dl.winehq.org/wine/source/9.x/wine-9.2.tar.xz>
11 Binary packages for various distributions will be available
12 from <https://www.winehq.org/download>
14 You will find documentation on <https://www.winehq.org/documentation>
16 Wine is available thanks to the work of many people.
17 See the file [AUTHORS][1] for the complete list.
19 [1]: https://gitlab.winehq.org/wine/wine/-/raw/wine-9.2/AUTHORS
21 ----------------------------------------------------------------
23 ### Bugs fixed in 9.2 (total 15):
25  - #43993  Quick3270 5.21: crashes when using the Connect function
26  - #47521  digikam 6.10 crashes on start
27  - #51360  vkGetDeviceProcAddr invalid behavior for functions from extensions unsupported by host Vulkan instance
28  - #51770  digikam-7.1.0 freezes on start
29  - #51843  dlls/ws2_32/socket.c:839:17: error: ‘IP_ADD_SOURCE_MEMBERSHIP’ undeclared here
30  - #53934  __unDName fails to demangle a name
31  - #55997  Dolphin Emulator crashes from 5.0-17264
32  - #56122  LANCommander won't start, prints "error code 0x8007046C" (ERROR_MAPPED_ALIGNMENT)
33  - #56243  ShowSystray registry key was removed without alternative
34  - #56250  Elite Dangerous client gets stuck on black screen after launch
35  - #56256  Windows Sysinternals Process Explorer 17.05 shows incomplete user interface (32-bit).
36  - #56259  Microsoft Webview 2 installer hangs forever
37  - #56265  Epic Games Launcher 15.21.0 calls unimplemented function cfgmgr32.dll.CM_Get_Device_Interface_PropertyW
38  - #56291  Kodu game lab crashes (with xnafx40_redist+dotnet48 preinstalled): Object reference not set to an instance of an object.
39  - #56293  user32:msg test_recursive_hook fails on Windows 7
41 ### Changes since 9.1:
42 ```
43 Aida Jonikienė (1):
44       configure: Use YEAR2038 macro when it's available.
46 Alex Henrie (2):
47       krnl386: Emulate the VGA status register.
48       explorer: Handle the back and forward buttons of a 5-button mouse.
50 Alexandre Julliard (37):
51       configure: Reset host flags in all cross-compiler error paths.
52       winsta: Start time is an input parameter in WinStationGetProcessSid.
53       ntdll: Use the system setjmp/longjmp for exceptions in Unix libs.
54       ntdll: Use a .seh handler for the unwind exception handler.
55       ntdll: Avoid calling DbgBreakPoint() in process_breakpoint().
56       ntdll: Move DbgUiRemoteBreakin() to the CPU backends.
57       include: Include cfg.h from cfgmgr32.h.
58       ntdll: Report the correct address for breakpoint exception on ARM platforms.
59       kernel32/tests: Fix some test failures on ARM platforms.
60       ntdll: Use a .seh handler for DbgUiRemoteBreakin().
61       dbghelp/tests: Mark failing tests as todo.
62       Revert "loader: Associate folder with explorer".
63       configure: Require a PE compiler for 32-bit ARM.
64       ntdll: Share the is_valid_frame() helper function.
65       ntdll: Only call TEB handlers for frames inside the current stack.
66       winedump: Make the ARM exception information more compact.
67       winedump: Handle ARM64 exception unwind info with flag==3.
68       winebuild: Default to plain "clang" in find_clang_tool().
69       winebuild: Remove some no longer used code for ARM platforms.
70       winebuild: Add .seh annotations on ARM.
71       kernel32: Move Wow64Get/SetThreadContext implementation to kernelbase.
72       kernel32: Don't export RtlRaiseException on ARM64.
73       ntdll: Fix stack layout for ARM syscalls.
74       ntdll/tests: Add some process machine tests for ARM64X.
75       server: Don't report alternate 64-bit machines as supported.
76       ntdll: Update the image information when loading a builtin dll.
77       ntdll: Use the correct machine when loading ntdll on ARM64EC.
78       server: Don't update the machine in the image information for ARM64EC modules.
79       server: Don't update the entry point in the image information for ARM64EC modules.
80       ntdll: Redirect the module entry point for ARM64EC modules.
81       server: Add hybrid flag in image mapping information.
82       ntdll: Use the current machine by default to create an ARM64X process.
83       ntdll: Fix RtlWow64GetCurrentMachine() result on ARM64EC.
84       uxtheme: Use BOOLEAN instead of BOOL in ordinal functions.
85       gdi32/tests: Fix the expected GetTextMetrics() results on recent Windows.
86       user32/tests: Fix some sysparams results on recent Windows.
87       ntdll/tests: Mark a failing test as todo.
89 Alexandros Frantzis (2):
90       winewayland.drv: Track and apply latest window cursor on pointer enter.
91       win32u: Use consistent locking order for display related mutexes.
93 Arkadiusz Hiler (4):
94       winebus.sys: Fix units used for hat switches.
95       winebus.sys: Use 4 bits for hat switches.
96       wbemprox/tests: Test LIKE queries.
97       wbemprox: Reimplement LIKE.
99 Brendan Shanks (2):
100       winebuild: Refactor find_tool().
101       winebuild: As a last resort, search for tools un-prefixed using clang.
103 Daniel Lehman (9):
104       glu32/tests: Add a few tests for gluScaleImage.
105       glu32: Return GL_OUT_OF_MEMORY from gluScaleImage if no context.
106       glu32: Return GLU_INVALID_ENUM for illegal pixel types.
107       advapi32/tests: Reduce reallocations.
108       advapi32/tests: Add some more EventLog tests.
109       oleaut32/tests: Add tests for VarBstrFromR8.
110       oleaut32/tests: Add tests for VarBstrFromR4.
111       ucrtbase/tests: Add sprintf tests.
112       msvcrt/tests: Add sprintf tests.
114 David Kahurani (5):
115       gdiplus: Use GdipCreatePath2 in GdipClonePath.
116       gdiplus: Use GdipCreatePath2 when serializing paths.
117       gdiplus: Use path_list to path helper in GdipFlattenPath.
118       gdiplus: Use path_list to path helper in GdipWidenPath.
119       msvcrt: Free previous environment variable when clearing.
121 Eric Pouech (18):
122       dmime/tests: Fix copy & paste errors.
123       dmime/tests: Add some tests for loops on wave tracks.
124       dmime: Fix IDirectMusicAudioPath::GetObjectInPath() prototype.
125       dmime: Remove unused fields in segment.
126       dmime/tests: Add some tests about end-points.
127       dbghelp/tests: Use Unicode encoding for generated PDB filenames.
128       dbghelp/tests: Test SymSrvGetFileIndexInfo() on .dbg files.
129       dbghelp: Implement SymSrvGetFileIndexInfo() for .dbg files.
130       dbghelp: Implement SymSrvGetFileIndexInfo() for PDB/JG files.
131       kernel32/tests: Added tests about std handle flags inheritance.
132       kernel32/tests: Test DUPLICATE_SAME_ATTRIBUTES flag in DuplicateHandle().
133       server: Implement support for DUPLICATE_SAME_ATTRIBUTES in DuplicateHandle().
134       server: Preserve handle flags when inheriting a std handle.
135       dmime: Fully implement IDirectMusicSegmentState::GetRepeats().
136       dmime: Add tests about segment state's graph interface.
137       dmime: Add IDirectMusicGraph interface to segment state.
138       dmime: Generate track flags while in loop.
139       dmime: Use sent duration in loop's playback.
141 Esme Povirk (6):
142       gdiplus: Prefer Tahoma for generic sans serif font.
143       mscoree: Update Wine Mono to 9.0.0.
144       user32/tests: Accept EM_GETPASSWORDCHAR when edit is focused.
145       gdiplus: Fix some degenerate cases combining infinite regions.
146       gdiplus/tests: Thoroughly test region combines.
147       user32/tests: Fix flags on expected EM_GETPASSWORDCHAR message.
149 Fabian Maurer (1):
150       msi: Don't write past end of string when selecting parent directory.
152 Felix Münchhalfen (2):
153       ntdll: Use pagesize alignment if MEM_REPLACE_PLACEHOLDER is set in flags of NtMapViewOfSection(Ex).
154       kernelbase/tests: Add a test for MapViewOfFile3 with MEM_REPLACE_PLACEHOLDER.
156 Gabriel Ivăncescu (16):
157       mshtml: Forward the script site's QueryService to the document's.
158       mshtml: Forward SID_SInternetHostSecurityManager of the document obj to the doc node.
159       mshtml: Implement IActiveScriptSite service.
160       mshtml: Implement Exec for CGID_ScriptSite's CMDID_SCRIPTSITE_SECURITY_WINDOW.
161       vbscript: Implement IActiveScriptSite service.
162       jscript: Implement IActiveScriptSite service.
163       mshtml: Use a hook to implement postMessage.
164       mshtml: Implement `source` prop for MessageEvents.
165       mshtml: Return E_ABORT from postMessage called without a caller ServiceProvider.
166       mshtml: Implement `data` getter for MessageEvent objs.
167       mshtml: Implement `origin` prop for MessageEvents.
168       mshtml: Implement `initMessageEvent` for MessageEvents.
169       mshtml: Expose the IHTMLEventObj5 props to scripts.
170       mshtml/tests: Test builtin function default value getter with custom IOleCommandTarget.
171       explorer: Don't activate the systray icon when showing it.
172       explorer: Set layered style on systray icons only when it's actually layered.
174 Georg Lehmann (3):
175       winevulkan: Prepare for VK_KHR_calibrated_timestamps.
176       winevulkan: Update to VK spec version 1.3.277.
177       winevulkan: Enable VK_ARM_render_pass_striped.
179 Giovanni Mascellani (1):
180       d2d1: Compile vertex shaders with D3DCompile().
182 Hans Leidekker (1):
183       msxml3: Enable XPath object cache.
185 Helix Graziani (2):
186       cfgmgr32: Add CM_Get_Device_Interface_PropertyW stub.
187       windows.globalization: Add IIterable_HSTRING impl to IVectorView_HSTRING.
189 Ivo Ivanov (1):
190       winebus.sys: Prefer hidraw if it is the only backend enabled.
192 Jacek Caban (11):
193       ncrypt/tests: Don't use uninitialized variable in test_get_property.
194       windowscodecs: Pass result as void pointer to ComponentInfo_GetUINTValue.
195       mf: Avoid implicit enum to int pointer casts.
196       mfplat: Avoid implicit cast in IMFAttributes_GetUINT32 call.
197       mfplat/tests: Use MF_ATTRIBUTE_TYPE type in IMFMediaType_GetItemType call.
198       mfplat: Introduce media_type_get_uint32 helper.
199       mfmediaengine/tests: Use MF_MEDIA_ENGINE_CANPLAY type in IMFMediaEngine_CanPlayType call.
200       mfmediaengine: Avoid implicit casts in IMFAttributes_GetUINT32 calls.
201       include: Add RtlRestoreContext declaration.
202       d3d10/tests: Avoid implicit cast changing value.
203       dsound: Simplify f_to_32.
205 Louis Lenders (5):
206       ntdll: Add stub for RtlGetDeviceFamilyInfoEnum.
207       shcore: Add stub for RegisterScaleChangeNotifications.
208       wbemprox: Add property 'Caption' to Win32_PnPEntity.
209       wbemprox: Add property 'ClassGuid' to Win32_PnPEntity.
210       wbemprox: Add property 'Caption' to Win32_DiskDrive.
212 Marc-Aurel Zent (2):
213       ntdll: Reimplement set_native_thread_name() for macOS.
214       ntdll: Fix DW_OP_abs absolute value warning on labs() for clang.
216 Nikolay Sivov (3):
217       mfplat/tests: Skip device manager test if d3d11 device can't be created.
218       mfplat/tests: Skip tests that require d3d9 support.
219       d3d10/effect: Clarify constant buffer flags field meaning.
221 Paul Gofman (6):
222       ntdll/tests: Fix test_user_shared_data() for a more generic set of present features.
223       server: Check if we have waiting asyncs in (send_socket) before enforcing blocking send.
224       server: Check if we have waiting asyncs in sock_dispatch_asyncs() before clearing POLLOUT.
225       explorer: Don't pop start menu on "minimize all windows" systray command.
226       explorer: Don't pop start menu on "undo minimize all windows" systray command.
227       msvcrt: Adjust _gmtime64_s() accepted time limits.
229 Piotr Caban (6):
230       msvcrt: Store _unDName function parameter backreferences in parsed_symbol structure.
231       msvcrt: Remove no longer used parameters reference arguments from _unDname helpers.
232       winedump: Sync demangling code with msvcrt.
233       jsproxy: Don't ignore hostname and url length in InternetGetProxyInfo.
234       winhttp/tests: Add more WinHttpGetProxyForUrl tests.
235       winhttp: Add support for WINHTTP_AUTOPROXY_HOST_LOWERCASE flag in WinHttpGetProxyForUrl.
237 Rémi Bernon (48):
238       explorer: Restore a per-desktop ShowSystray registry setting.
239       mf/tests: Check inserted topology loader transforms explicitly.
240       mf/topology_loader: Use a local variable for the indirect connection method.
241       mf/topology_loader: Ignore SetOutputType errors when doing indirect connect.
242       mf/topology_loader: Initialize transform output type before adding converter.
243       mf/topology_loader: Try to connect transform nodes with their current types first.
244       winegstreamer: Implement H264 decoder GetInputCurrentType.
245       winegstreamer: Ask GStreamer to stop messing with signal handlers.
246       vulkan-1/tests: Enable VK_VERSION_1_1 as requested by validation layers.
247       vulkan-1/tests: Create surface and device before calling test_null_hwnd.
248       vulkan-1/tests: Test VK_KHR_win32_surface with windows in various states.
249       vulkan-1/tests: Add more VK_KHR_win32_surface surface formats tests.
250       vulkan-1/tests: Test VK_KHR_win32_surface WSI with swapchain functions.
251       imm32/tests: Also ignore NotifyIME calls when ignoring WM_IME_NOTIFY.
252       imm32/tests: Fix some spurious failures with Windows ko_KR IME.
253       win32u: Only queue a single IME update during ImeProcessKey.
254       winevulkan: Keep the create_info HWND on the surface wrappers.
255       winevulkan: Return VK_ERROR_SURFACE_LOST_KHR from surface functions.
256       winewayland: Remove now unnecessary VK_ERROR_SURFACE_LOST_KHR checks.
257       winevulkan: Remove now unnecessary vkGetPhysicalDeviceSurfaceSupportKHR driver entry.
258       winevulkan: Remove now unnecessary vkGetPhysicalDeviceSurfacePresentModesKHR driver entry.
259       winevulkan: Remove now unnecessary vkGetDeviceGroupSurfacePresentModesKHR driver entry.
260       user32/tests: Run rawinput device tests in the separate desktop.
261       user32/tests: Rewrite the rawinput buffer test with keyboard input.
262       dinput/tests: Add a helper to wait on HID input reads.
263       dinput/tests: Add more tests for HID rawinput buffer.
264       dinput/tests: Test rawinput messages with non-input desktop.
265       dinput/tests: Use a polled HID touchscreen device.
266       dinput/tests: Test rawinput with the virtual HID touchscreen.
267       winegstreamer: Trace wg_transform input and output caps.
268       winegstreamer: Handle allocation query in a separate helper.
269       winegstreamer: Handle sink caps query in a separate helper.
270       winegstreamer: Handle sink event caps in a separate helper.
271       winegstreamer: Use GST_PTR_FORMAT to trace GStreamer objects.
272       winegstreamer: Ignore wg_transform input / output video format fps.
273       winegstreamer: Allow wg_transform size changes with an explicit attribute.
274       mf/tests: Report more transform current type mismatches.
275       mf/tests: Add some tests with video processor aperture handling.
276       mfreadwrite/tests: Initialize test source stream types from descriptors.
277       mfreadwrite/tests: Test source reader exposed transforms and types.
278       mfreadwrite/tests: Test source reader transforms with MF_SOURCE_READER_ENABLE_VIDEO_PROCESSING.
279       mfreadwrite/tests: Test source reader transforms with MF_SOURCE_READER_ENABLE_ADVANCED_VIDEO_PROCESSING.
280       server: Combine HID usage page and usage together.
281       server: Stop using union rawinput in hw_input_t.
282       server: Stop using hardware_msg_data in rawinput_message.
283       server: Move rawinput message conversion from win32u.
284       server: Fix rawinput buffer sizes and alignment on WoW64.
285       win32u: Get rid of the rawinput thread data and buffer.
287 Shaun Ren (4):
288       sapi: Create a new engine only when needed in ISpVoice.
289       sapi: Add ISpeechObjectToken stub.
290       sapi: Add ISpeechObjectTokens stub.
291       sapi: Add stub implementation for ISpeechObjectTokens::get__NewEnum.
293 Tim Clem (1):
294       winebus.sys: Do not attempt to open keyboard and mouse HID devices on macOS.
296 Vibhav Pant (1):
297       configure: Correctly derive the target from CC if it's set to an absolute path.
299 Yuxuan Shui (2):
300       dmusic: Fix loading wave data from soundfont.
301       mf: Only preroll when starting from stopped state.
303 Zebediah Figura (8):
304       wined3d: Move state objects from state.c to device.c.
305       wined3d: Rename state.c to ffp_gl.c.
306       wined3d: Move sampler_texdim() and texture_activate_dimensions() to ffp_gl.c.
307       d3d8/tests: Add more tests for SPECULARENABLE.
308       wined3d/glsl: Always set WINED3D_SHADER_CONST_FFP_LIGHTS in FFP constant update masks.
309       wined3d/glsl: Pass through the specular varying when SPECULARENABLE is FALSE.
310       wined3d/arb: Always disable the fragment pipeline in shader_arb_select().
311       wined3d/arb: Compare the fragment pipe ops in shader_arb_select() instead of using an extra field.
313 Zhiyi Zhang (7):
314       winex11.drv: Translate whole_rect to x11 root coordinates in set_size_hints().
315       user32/tests: Fix test_recursive_messages() test failures on win7.
316       mf: Make session_get_node_object() more robust.
317       mf: Add a session_flush_nodes() helper.
318       mf/tests: Add a create_test_topology() helper.
319       mf: Support seeking while a session is started.
320       mf/tests: Test IMFMediaSession::Start().