Release 6.23.
[wine.git] / ANNOUNCE
blob11243aedcb4c6c940feff493429e420f0cbb9d8f
1 The Wine development release 6.23 is now available.
3 What's new in this release (see below for details):
4   - Mount manager and CoreAudio driver converted to PE.
5   - Support for exception handling in Wow64 mode.
6   - Optional support for using the distribution's PE libraries.
7   - A number of UI improvements in WineDbg.
8   - Various bug fixes.
10 The source is available from the following locations:
12   https://dl.winehq.org/wine/source/6.x/wine-6.23.tar.xz
13   http://mirrors.ibiblio.org/wine/source/6.x/wine-6.23.tar.xz
15 Binary packages for various distributions will be available from:
17   https://www.winehq.org/download
19 You will find documentation on https://www.winehq.org/documentation
21 You can also get the current source directly from the git
22 repository. Check https://www.winehq.org/git for details.
24 Wine is available thanks to the work of many people. See the file
25 AUTHORS in the distribution for the complete list.
27 ----------------------------------------------------------------
29 Bugs fixed in 6.23 (total 48):
31   25193  ICC Dasher 1.5.4 doesn't render main UI correctly and appears to be non responsive
32   32991  win32-arm applications need ntdll.dll.RtlUnwindEx implementation for exception handling/unwinding
33   43456  Serif WebPlus X8 fails to install
34   44427  Internet Chess Club (ICC) Dasher 1.5.8 crashes after online login
35   46017  Layers of Fear areas are almost entirely black rendered
36   47287  Accessible Event Watcher Tool 'accevent.exe' from Windows 10 SDK (10.0.17763.x) crashes on unimplemented function oleacc.dll.AccessibleObjectFromEvent
37   47843  Rockstar Game Launcher is unable to download a game completely
38   48119  The tests sometimes trigger "critical section is not acquired" errors
39   48950  NVDA needs oleacc.AccessibleObjectFromPoint implementation for mouse tracking
40   49181  msvcrt_test.exe: missing entry point _point_get_sbh_threshold on Windows RT 8.x devices
41   49426  Sookasa calls unimplemented functions and ntoskrnl.exe.RtlGetElementGenericTable ntoskrnl.exe.RtlLookupElementGenericTable
42   50540  Windows PowerShell Core 6.2 Preview 2 for ARM32 crashes on unimplemented function KERNEL32.dll.RtlVirtualUnwind
43   50985  ns_name_skip is glibc specific, causes failure to build on musl
44   51183  Navicat V15.0.25 crashes when attempting to open database: "Unhandled exception: page fault...."
45   51307  msvcp140:msvcp140 fails on msvcp140 >= 14.25
46   51415  Windows PC Health Check requires msvcp_win.dll
47   51490  dinput:device has a random failure in overlapped_format_tests() on Windows 8.1
48   51557  GetSystemFirmwareTable fails to return SMBIOS on Apple Silicon Macs
49   51624  TETRIS (16bit) shows wrong background for scoreboard
50   51647  Gimp deadlocks when opening image or createing image from screenshot
51   51716  gameux:gamestatistics fails on Windows 10 1809+
52   51733  CreateProcess does not properly set the current directory of the new process.
53   51832  Fork: "The selection contains a non-folder object" when selecting a folder
54   51834  EMF DC emits invalid EMF when calling StretchDiBits with info->bmiHeader.biSizeImage = 0
55   51873  Joy.cpl crashes on the FFB tab when the FFB device is selected in the drop down list
56   51895  ucrtbase:misc fma(inf, 0, 0) 'succeeds' unexpectedly on some machines
57   51959  Missing procedure GetDayLightFlag
58   51971  postgresql-9.3 installer needs scrrun:folder_CreateTextFile implementation
59   51986  Extremely small fonts when using a theme
60   51989  pen-related tests (gdiplus:graphics and gdiplus:graphicspath) fail on latest Windows 10
61   51993  Ashlar Vellum/DrawingBoard 1.00 redraws incorrectly tooltip bar
62   51996  aarch64: NtGetContextThread/NtSetContextThread on another thread ignores FPU state due to buggy SIGUSR1 handler
63   52023  VirtualFree returning error when it should not
64   52025  Regression: Custom color configuration resets if custom theme is applied
65   52028  Regression: Themed contents doesn't displays correctly in some themes
66   52036  Match the pairs card game crashes on start
67   52058  GTA 1997 autorun.exe does not work
68   52061  dinput HID joystick sends unnecessary effect update reports.
69   52067  ntdll MEM_DECOMMIT change breaks d3d10_1:d3d10_1, d3d8:device, d3d8:visual, d3d9:device, d3d9:visual, ddraw:ddraw1, ddraw:dsurface and dxgi:dxgi
70   52068  hid:device times out randomly in test_get_input_report()
71   52069  ntdll:virtual fails in test_NtAllocateVirtualMemory() on Windows 10 1709 and older
72   52072  winmm:mci fails in wow64 Wine
73   52075  dinput8:device, dinput8:dinput and dinput8:hid cannot run on Windows 7 anymore
74   52077  Windows PC Health Check crashes on unimplemented function api-ms-win-core-featurestaging-l1-1-0.dll.SubscribeFeatureStateChangeNotification
75   52093  Installing Insta360 pro stitcher breaks  wine completely ( e.g. winecfg gives:  malloc(): invalid size (unsorted) Aborted)
76   52102  outSPOKEN 3.0 demo crashes on unimplemented function krnl386.exe16.GetLPErrMode
77   52103  Crazy Stone crashes after splash screen
78   52133  winhttp/wininet should not query mDNS for proxy auto-detection
80 ----------------------------------------------------------------
82 Changes since 6.22:
84 Alex Henrie (6):
85       oleacc/tests: Fix failure messages in test_AccessibleObjectFromEvent.
86       oleacc/tests: Add AccessibleObjectFromPoint tests.
87       include: Add featurestagingapi.h.
88       shcore: Add SubscribeFeatureStateChangeNotification stub.
89       shcore: Add GetFeatureEnabledState stub.
90       krnl386: Add GetLPErrMode stub.
92 Alexandre Julliard (56):
93       makefiles: Stop creating importlib symlinks.
94       makefiles: Don't append .fake extension to fake dlls.
95       makefiles: Add a separate variable to keep track of source test files.
96       makefiles: Don't use bundled libraries to build native programs.
97       winmm: Command resources should not depend on pointer size.
98       ntdll/tests: Fix a test failure on older Windows versions.
99       makefiles: Don't use bundled libraries to build native Unix libraries.
100       makedep: Unify the various code paths for module generation.
101       opencl: Don't call callback functions from the Unix side.
102       opencl: Convert the Unix library to the __wine_unix_call interface.
103       wpcap: Convert the Unix library to the __wine_unix_call interface.
104       ntdll: Fix a buffer overflow in environment variable expansion.
105       ntdll: Add a helper function to build an import dll name.
106       ntdll: Add a helper function to append .dll to a module name.
107       ntdll: Merge the calls to find_builtin_without_file().
108       wnaspi32: Remove Linux-specific SCSI ioctls.
109       wnaspi32: Build with msvcrt.
110       mountmgr: Pass a Unix interface name in the dhcp_request_params ioctl.
111       mountmgr: Remove the obsolete libhal support.
112       mountmgr: Pass the SCSI device information when creating a volume.
113       mountmgr: Add some helpers to abstract the Unix calls from device.c.
114       mountmgr: Add some helpers to abstract the Unix calls from mountmgr.c.
115       mountmgr: Move the macOS credentials support to a separate file.
116       mountmgr: Put the Unix helpers in a separate Unix library.
117       mountmgr: Return a Unix file name in the IOCTL_MOUNTMGR_QUERY_SYMBOL_FILE request.
118       mountmgr: Move the DBus support to the Unix library.
119       mountmgr: Move the DiskArbitration support to the Unix library.
120       mountmgr: Move the macOS credentials support to the Unix library.
121       mountmgr: Move the macOS device access check to the Unix library.
122       mountmgr: Build with msvcrt.
123       mountmgr: Use wide character string literals.
124       wineqtdecoder: Remove the QuickTime decoder.
125       strmbase: Move to the libs directory.
126       winemac.drv: Fix RegQueryValueExW size handling.
127       ntdll: Export some Unicode string functions for use in other Unix libraries.
128       bcrypt: Use the ntdll Unicode string functions instead of wine/unicode.h.
129       mountmgr: Use the ntdll Unicode string functions instead of wine/unicode.h.
130       netapi32: Use the ntdll Unicode string functions instead of wine/unicode.h.
131       winspool: Use the ntdll Unicode string functions instead of wine/unicode.h.
132       wow64cpu: Implement BTCpuResetToConsistentState().
133       wow64cpu: Add a stub for BTCpuTurboThunkControl().
134       wow64: Implement Wow64PrepareForException().
135       ntdll: Add support for dispatching exception from 32-bit code in Wow64 mode.
136       ntdll: Don't clear x86-64 registers when receiving a 32-bit context.
137       wow64: Add handler for exceptions happening in 32-bit mode.
138       include: Remove some no longer used Unicode functions.
139       include: Remove wine/port.h.
140       configure: Fix the netapi check.
141       wow64: Map the parent process handle in NtCreateUserProcess().
142       wow64: Add support for user callbacks.
143       ntdll: Don't try to convert binaries to 64-bit in Wow64 mode.
144       ntdll: Set the TEB offset for Wow64 mode also in 64-bit.
145       ntdll: Add fallback implementations for the Unix library functions.
146       makefiles: Support per-platform values for EXTRADLLFLAGS.
147       kernel32/tests: Use the correct scanf format for a handle.
148       rpcrt4/tests: Use the correct scanf format for a handle.
150 Alistair Leslie-Hughes (1):
151       dxgi: Silence a noisy fixme.
153 Andrew Eikum (1):
154       quartz: Allow time format change while running.
156 Andrey Gusev (1):
157       winecoreaudio.drv: Place output message before return statement.
159 André Zwing (5):
160       ucrtbase/tests: Don't test functions directly when reporting GetLastError().
161       sechost: Fix some spec file entries.
162       wineps: Fix some spec file entries.
163       iphlpapi: Fix some spec file entries.
164       gameux/tests: Skip gamestatistic tests on win10 >= 1803.
166 Aurimas Fišeras (1):
167       po: Update Lithuanian translation.
169 Bernhard Kölbl (2):
170       gdiplus: Introduce dst palette parameter to convert_pixels().
171       gdiplus: Add simple test for bitmap clone from rgb values to indexed.
173 Brendan Shanks (4):
174       server: Remove workarounds for Mac OS X 10.4.
175       ntdll: Rename ThreadDescription to ThreadNameInformation.
176       include: Update the THREADINFOCLASS enumeration.
177       ntdll: Rename THREAD_DESCRIPTION_INFORMATION to THREAD_NAME_INFORMATION.
179 Byeong-Sik Jeon (2):
180       po: Update Korean translation.
181       po: Update Korean translation.
183 Chilung Chan (2):
184       po: Update Traditional Chinese translation.
185       po: Update Traditional Chinese translation.
187 Connor McAdams (2):
188       oleaut32: Implement LPSAFEARRAY user marshal interface marshaling.
189       oleaut32/tests: Add tests for LPSAFEARRAY user marshal interface marshaling.
191 Daniel Lehman (2):
192       kernelbase: Handle UNC path in UrlApplySchemeW.
193       mscms: Fix uninitialized variable warning.
195 Dmitry Timoshkov (2):
196       user32: Add exception handler to GetWindowText.
197       ole32: Add CreateObjrefMoniker() stub implementation..
199 Eric Pouech (30):
200       dbghelp: Fix potential crash when loading a builtin PE module embedded in an ELF image.
201       dbghelp: Protect against missing compiland when adding global function.
202       dbghelp/dwarf: Don't unmap the fmap of a DWZ module twice.
203       dbghelp: Remove incorrect FIXME in SymEnumerateLoadedModules.
204       dbghelp: In SymEnumerateLoadedModules, don't limit the number of modules.
205       dbghelp: Fix allocation error in image_load_debugaltlink.
206       dbghelp: Simplify code for searching alternate debug info files.
207       configure: Make Dwarf4 the default debug format.
208       winedbg: Use wide-char string literals.
209       winedbg: Use I width modifier for DWORD_PTR printf's args.
210       winedbg: Print 'module+disp' instead of 'func+disp' when the address is after the function.
211       winedbg: Replace wine_dbgstr_longlong with I64 width modifier.
212       winedbg: Use macros when manipulating variants.
213       winedbg: Get size of underlying integral types in enums.
214       winedbg: Use debuggee pointer size when extracting typed value.
215       winedbg: Protect against incorrect integer size in be_cpu.fetch_integer() method.
216       winedbg: Protect fetch_float() in CPU backends against buffer overflow.
217       winedbg: Be more strict when detecting a string from an array.
218       winedbg: Support # as comment delimiter in commands.
219       winedbg: Display line number of syntax errors when reading a command file.
220       winedbg: Move YY_INPUT implementation to dbg.y.
221       winedbg: Move lex buffers inside struct parser_context.
222       winedbg: Don't repeat last command (from empty input) when parsing a file.
223       winedbg: Properly escape debuggee arguments.
224       winedbg: Properly handle escaped characters inside strings.
225       winedbg: Support 'run' command with arguments to restart current debuggee.
226       winedbg: When enumerating symbols, only search for locals when name doesn't refer to a module.
227       winedbg: Fixed missing test.
228       winedbg: Use %ls to print wide character strings.
229       winedbg: In print_hex, don't print bits not included in size.
231 Esme Povirk (1):
232       gdiplus: Mark a Windows behavior as broken.
234 Florian Will (1):
235       win32u: Only retrieve the dc size if needed.
237 Floris Renaud (1):
238       po: Update Dutch translation.
240 Gabriel Ivăncescu (25):
241       jscript: Treat prototype refs as non-existent when deleting.
242       jscript: Fixup PROTREF props when looking them up.
243       jscript: Throw when defining a PROTREF prop on a non-extensible object.
244       jscript: Support deletion for accessor, builtin and idx props.
245       jscript: Use to_primitive when getting the default value.
246       jscript: Use ~0 to mark invalid bucket.
247       jscript: Access the PROTREF with proper index instead of get_prop.
248       jscript: Get rid of the value_prop from jsdisp props.
249       jscript: Replace the value_prop in builtin_info with a call method.
250       mshtml: Handle VT_DISPATCH in variant_to_nsstr.
251       nsiproxy: Move set_reply_ip_status to a family op.
252       nsiproxy: Fill the reply when it's not pending on the unix-side.
253       nsiproxy: Use a context and fill the reply using a family op.
254       nsiproxy: Fill the reply with the exact ICMP_ECHO_REPLY in the output buffer.
255       iphlpapi: Implement async requests for IcmpSendEcho2Ex.
256       mshtml: Stringify attribute values in setAttribute using string hints in IE10+.
257       mshtml: Don't populate the props at all on IE9+ modes.
258       mshtml: Restructure element setAttribute.
259       mshtml: Restructure element getAttribute.
260       mshtml: Restructure element removeAttribute.
261       mshtml: Associate props with attributes for IE8 mode, but keep them stringified.
262       mshtml: Fix style attribute removal in IE8 mode.
263       mshtml: Implement value construction for HTMLOptionElementFactory.
264       mshtml: Implement index access for HTMLStyleSheetsCollection.
265       mshtml: Implement index access for HTMLStyleSheetRulesCollection.
267 Georg Lehmann (3):
268       winevulkan: Update to VK spec version 1.2.200.
269       winevulkan: Update to VK spec version 1.2.201.
270       winevulkan: Fix concurrent modification in struct decoupling.
272 Gerald Pfeifer (1):
273       configure: Diagnose if NetAPI is not present.
275 Hans Leidekker (8):
276       ws2_32: Implement AI_DNS_ONLY using DNS APIs.
277       winhttp: Use DNS only for proxy auto-detection.
278       wininet: Use DNS only for proxy auto-detection.
279       wbemprox: Add a stub MSSMBios_RawSMBiosTables implementation.
280       bcrypt: Return export size from export_gnutls_datum().
281       bcrypt: Add support for exporting RSA private keys.
282       bcrypt/tests: Link directly to functions available since Windows 7.
283       bcrypt: Use CRT memory allocators.
285 Henri Verbeet (10):
286       wined3d: Respect the BO buffer offset in create_buffer_texture().
287       wined3d: Respect the BO buffer offset in wined3d_unordered_access_view_gl_clear().
288       wined3d: Respect the BO buffer offset in wined3d_buffer_gl_upload_ranges().
289       wined3d: Respect the BO buffer offset in wined3d_context_gl_copy_bo_address().
290       wined3d: Do not add the BO address offset when calling glFlushMappedBufferRange().
291       wined3d: Don't return the BO address offset if glMapBuffer() fails.
292       wined3d: Always map the whole OpenGL buffer.
293       wined3d: Do not pass an offset and size to wined3d_bo_gl_map().
294       wined3d: Respect the BO memory offset in wined3d_context_gl_map_bo_address().
295       wined3d: Map OpenGL adapter BOs persistently on 64-bit architectures.
297 Hugh McMaster (6):
298       kernel32/tests: Test whether every element of the CPINFO.LeadByte array is NUL.
299       kernelbase: Write NUL bytes to CPINFO.LeadByte for the CP_UTF7 and CP_UTF8 code pages.
300       conhost: Only use the maximum character width if a double-byte character set is in use.
301       chcp: Add internationalization support.
302       chcp: Print the active code page after successfully setting the new one.
303       chcp: Add a help string.
305 Huw D. M. Davies (64):
306       winecoreaudio: Use NtAllocateVirtualMemory() for local and tmp buffers.
307       winecoreaudio: Move creation of the audio unit to IAudioClient_Initialize().
308       winecoreaudio: Pass the stream directly to silence_buffer().
309       winecoreaudio: Pass the stream separately to ca_setvol().
310       winecoreaudio: Use the presence of stream to indicate the init state.
311       winecoreaudio: Move create_stream and release_stream to the unixlib.
312       winecoreaudio: Move get_mix_format to the unixlib.
313       winecoreaudio: Move is_format_supported to the unixlib.
314       winecoreaudio: Add a temporary capture_resample syscall.
315       winecoreaudio: Move get_buffer_size to the unixlib.
316       winecoreaudio: Move get_latency to the unixlib.
317       winecoreaudio: Move get_current_padding to the unixlib.
318       winecoreaudio: Move start to the unixlib.
319       winecoreaudio: Move stop to the unixlib.
320       winecoreaudio: Move reset to the unixlib.
321       winecoreaudio: Move get_render_buffer to the unixlib.
322       winecoreaudio: Move release_render_buffer to the unixlib.
323       winecoreaudio: Move get_capture_buffer to the unixlib.
324       winecoreaudio: Move release_capture_buffer to the unixlib.
325       winecoreaudio: Release the critical section in the no interface case.
326       winecoreaudio: Release the correct stream on init failure.
327       winecoreaudio: Move get_next_packet_size to the unixlib.
328       winecoreaudio: Move get_position to the unixlib.
329       winecoreaudio: Move get_frequency to the unixlib.
330       winecoreaudio: Move is_started to the unixlib.
331       winecoreaudio: Move set_volumes to the unixlib.
332       winecoreaudio: Make the coreaudio_stream structure private to the unixlib.
333       winecoreaudio: Store the device id as a DWORD.
334       winecoreaudio: Remove system includes.
335       winecoreaudio: Avoid 64-bit ptr truncation.
336       winecoreaudio: Temporarily move MIDIOut_Send() to audiounit.c.
337       winecoreaudio: Combine MIDIIn_SendMessage into MIDIIn_ReadProc.
338       winecoreaudio: Move midi_init and midi_release to the unixlib.
339       winecoreaudio: Move midi_out_open to the unixlib.
340       winecoreaudio: Move midi_out_close to the unixlib.
341       winecoreaudio: Move midi_out_data to the unixlib.
342       winecoreaudio: Move midi_out_long_data to the unixlib.
343       winecoreaudio: Move midi_out_prepare and midi_out_unprepare to the unixlib.
344       winecoreaudio: Move midi_out_get_devcaps to the unixlib.
345       winecoreaudio: Move midi_out_get_num_devs to the unixlib.
346       winecoreaudio: Move midi_out_[gs]et_volume to the unixlib.
347       winecoreaudio: Move midi_out_reset to the unixlib.
348       winecoreaudio: Move midi_in_open to the unixlib.
349       winecoreaudio: Move midi_in_close to the unixlib.
350       winecoreaudio: Move midi_in_prepare and midi_in_unprepare to the unixlib.
351       winecoreaudio: Move midi_in_get_devcaps to the unixlib.
352       winecoreaudio: Move midi_in_get_num_devs to the unixlib.
353       winecoreaudio: Move midi_in_start and midi_in_stop to the unixlib.
354       winecoreaudio: Move the midi in lock to the unixlib.
355       winecoreaudio: Move midi_in_add_buffer to the unixlib.
356       winecoreaudio: Pass the time relative to the start time to the callback.
357       winecoreaudio: Move midi_in_reset to the unixlib.
358       winemac: Remove unused variable.
359       ntdll: Move the FILE ptr into the blocks that use it.
360       winecoreaudio: Introduce a helper to retrieve the time.
361       winecoreaudio: Introduce a notification thread.
362       winecoreaudio: Move the midi input event processing to the unixlib.
363       winecoreaudio: Switch midi_in_lock() away from a syscall prototype.
364       winecoreaudio: Always start the notification thread.
365       winecoreaudio: Build with msvcrt.
366       netapi32: Return the length in characters not bytes.
367       winemac: Include missing dlfcn.h.
368       winealsa: Don't acquire the sessions lock after the client lock.
369       wineoss: Don't acquire the sessions lock after the client lock.
371 Ivo Ivanov (8):
372       winebus.sys: Support arbitrary effect parameter updates.
373       dinput: Send only the reports that have been modified.
374       dinput: Mark effect parameters as modified when duration is set.
375       dinput8/tests: Add a device gain report to test_device_managed_effect.
376       dinput8/tests: Add some more GetForceFeedbackState / GetEffectStatus tests.
377       dinput: Send Device Gain Reports only on DISFFC_RESET command.
378       dinput: Fix incorrect use of constant_force instead of ramp_force.
379       dinput: Check cbTypeSpecificParams before lpvTypeSpecificParams.
381 Jacek Caban (24):
382       win32u: Implement NtUserGetDisplayConfigBufferSizes.
383       win32u: Introduce UpdateDisplayDevice user driver entry point.
384       win32u: Implement GPU registration.
385       win32u: Implement display adapter registration.
386       win32u: Implement monitor registration.
387       winex11.drv: Use gdi driver types for display device handler.
388       win32u: Implement NtUserEnumDisplayDevices.
389       user32: Invalidate cache in update_monitor_cache when modification time matches current time.
390       winex11.drv: Use UpdateDisplayDevices driver entry point for registering devices.
391       user.exe: Use WINPROC_CallProc16To32A for DefWindowProc16.
392       user32: Use NtUserGetDisplayConfigBufferSizes.
393       win32u: Move NtUserEnumDisplaySettings implementation from user32.
394       wineandroid.drv: Use UpdateDisplayDevices driver entry point for registering devices.
395       winemac.drv: Use UpdateDisplayDevices driver entry point for registering devices.
396       win32u: Move GetMonitorInfo implementation from user32.
397       win32u: Move NtUserEnumDisplayMonitors implementation from user32.
398       win32u: Handle invisible winstations in lock_display_devices.
399       win32u: Introduce get_virtual_screen_rect.
400       win32u: Move NtUserChangeDisplaySettings implementation from user32.
401       win32u: Move NtUserShowCursor implementation from user32.
402       win32u: Move NtUserGetCursor implementation from user32.
403       win32u: Move NtUserGetKeyboardLayoutName implementation from user32.
404       win32u: Use NtUserCallOneParam instead of GDIRealizePalette.
405       win32u: Use NtUserSelectPalette instead of GDISelectPalette.
407 Jactry Zeng (2):
408       include: Add ISharedPropertyGroupManager interface.
409       comsvcs: Stub ISharedPropertyGroupManager interface.
411 Jan Sikorski (2):
412       ntdll: Save status from attaching dependencies in process_attach().
413       wined3d: Always set GL_PIXEL_UNPACK_BUFFER binding before calling wined3d_texture_gl_upload_bo().
415 Jinoh Kang (17):
416       winedbg: Refactor gdb_context::out_{buf*,len} into reply_buffer.
417       winedbg: Use exponential growth in gdbproxy reply_buffer_grow.
418       winedbg: Buffer output of GDB qXfer commands for proper slicing.
419       winedbg: Escape XML special characters in qXfer reply.
420       winedbg: Define table for GDB qXfer command handlers.
421       winedbg: Cache GDB qXfer command result for chunked fetching.
422       winedbg: Implement GDB qXfer object exec-file.
423       ntdll: Save/restore FPU context in arm64 signal handlers.
424       server: Implement the \??\GLOBALROOT symbolic link.
425       msi/tests: Add tests for MsiViewFetch wraparound behaviour.
426       msi: Wrap around to first record at end of view in MSI_ViewFetch.
427       ntdll/tests: Add tests for NtCompareObjects.
428       ntdll: Implement NtCompareObjects.
429       kernelbase/tests: Add tests for CompareObjectHandles.
430       kernelbase: Implement CompareObjectHandles.
431       kernel32/tests: Add tests for EnumCalendarInfo(Ex).
432       kernelbase: Fix infinite loop in Internal_EnumCalendarInfo.
434 Matteo Bruni (5):
435       d3dx9/tests: Clean up GetMatrixTransposePointerArray() tests.
436       d3dx9/tests: Clean up test_update_semantics() a bit.
437       Revert "ntdll: Implement NtYieldExecution() as usleep().".
438       ntdll: Call usleep() instead of NtYieldExecution() in NtDelayExecution().
439       wined3d: Declare gl_Position as invariant.
441 Michael Stefaniuc (1):
442       dmloader: Drop ifdef'ed out dead code.
444 Mohamad Al-Jaf (3):
445       api-ms-win-appmodel-runtime-l1-1-0: Add new dll.
446       uiautomationcore: Add UiaRaiseAutomationPropertyChangedEvent stub.
447       kernelbase: Add SetCachedSigningLevel stub.
449 Nick Fox (2):
450       kernel32: Add tests for LdrGetDllPath with LOAD_WITH_ALTERED_SEARCH_PATH.
451       ntdll: Fix LdrGetDllPath with LOAD_WITH_ALTERED_SEARCH_PATH without a path.
453 Nikolay Sivov (21):
454       mf/tests: Attempt to fix test crashes on some test boxes.
455       include: Add mfd3d12.idl.
456       mfplat: Add mfd3d12 attributes to tracing.
457       dxva2: Introduce progressive processor device.
458       d3d10/effect: Fix freed register table pointer (Coverity).
459       d3d10/effect: Parse through value expressions.
460       d3d10/effect: Handle vector arguments in expression instructions.
461       mfplat: Explicitly check for d3d device interface in ResetDevice().
462       mfplat/tests: Split video sample allocator tests per device type.
463       mfplat/tests: Add some tests for video sample allocator using D3D12 device.
464       dxva2/tests: Fix some test failures on HW devices.
465       user.exe: Fix WM_ERASEBKGND HDC param conversion in WINPROC_CallProc16To32A.
466       dwrite: Create backend font objects for faces.
467       dwrite: Use per-instance font object for GetGlyphCount().
468       dwrite: Do not use freetype cache for design glyph metrics.
469       dwrite: Allocate outline buffers on PE side.
470       dwrite: Use CRT allocation functions.
471       mfplat/tests: Add a test for buffers created for d3d12 resources.
472       d3d10/effect: Use first element when index expression evaluates to out of bounds value.
473       mfplat: Trace types passed to MFTEnum*.
474       include: Add print document package interfaces.
476 Paul Gofman (15):
477       advapi32: Improve perflib provider registration stubs.
478       advapi32: Improve PerfSetCounterSetInfo() stub.
479       advapi32: Improve PerfCreateInstance() stub.
480       advapi32: Improve PerfSetCounterRefValue() stub.
481       kernelbase: Add stub for PrefetchVirtualMemory().
482       ntdll: Fix context arch flag cleanup for AMD64 in context_from_server().
483       windowscodecs: Return stub IEnumString from mqr_GetEnumerator().
484       windowscodecs: Return stub IEnumString from mqw_GetEnumerator().
485       windowscodecs/tests: Add basic test for IWICMetadataQueryWriter_GetEnumerator().
486       include: Define ISpeechSynthesizer interface.
487       windows.media.speech: Add stub SpeechSynthesizer class.
488       d3d9/tests: Add more tests for fullscreen window size reset.
489       kernel32: Use uppercase ntdll name in forwarded exports.
490       ntdll/tests: Fix iret to invalid selector test on x64.
491       ntdll: Set rcx on exit from syscall dispatcher on x64.
493 Piotr Caban (5):
494       msvcp140: Fix time_get<char>::get_monthname spec file entry.
495       oleacc: Add partial Window_accHitTest implementation.
496       oleacc: Add AccessibleObjectFromPoint implementation.
497       make_specfiles: Merge -arch options if there are multiple exports with the same name.
498       msvcr100: Add _Timer class implementation.
500 Robert Wilhelm (2):
501       scrrun: Extract code to new helper function build_path.
502       scrrun: Implement folder_CreateTextFile.
504 Rémi Bernon (22):
505       winebus.sys: Initialize last_report length and buffer.
506       dinput8/tests: Use WaitForSingleObject instead of GetOverlappedResultEx.
507       dinput8/tests: Add some partial effect update tests.
508       dinput: Send -1 for infinite durations in HID reports.
509       dinput8/tests: Add some GetForceFeedbackState / GetEffectStatus tests.
510       dinput: Stub support for DIPROP_FFLOAD device property.
511       dinput: Stub IDirectInputDevice8_GetForceFeedbackState implementation.
512       dinput: Stub HID joystick GetEffectStatus implementation.
513       dinput8/tests: Provide an explicit test context to the driver.
514       dinput8/tests: Add a check_buffer helper to print buffer data.
515       dinput8/tests: Add dwStartDelay / dwDuration GetEffectStatus tests.
516       dinput: Improve GetForceFeedbackState / GetEffectStatus stubs.
517       dinput8/tests: Add more effect direction tests.
518       winebus.sys: Rotate directions to match the backend conventions.
519       hidclass.sys: Only drop input reports when length is too short.
520       winebus.sys: Add a PID effect state input report.
521       dinput: Look for the PID effect state input report.
522       dinput: Fully implement GetForceFeedbackState / GetEffectStatus.
523       winebus.sys: Send PID effect state reports for SDL devices.
524       winebus.sys: Send PID effect state reports for UDEV lnxev devices.
525       dinput: Set internal params lpvTypeSpecificParams in Initialize.
526       dinput: Factor all type specific parameter handling together.
528 Thomas Faber (1):
529       comctl32/tests: Fix DC handle leak.
531 Vijay Kiran Kamuju (4):
532       ntdll: Implement RtlInitializeGenericTable.
533       ntdll: Implement RtlNumberGenericTableElements.
534       ntdll: Add stub RtlGetElementGenericTable function.
535       ntdll: Add stub RtlLookupElementGenericTable function.
537 Zebediah Figura (33):
538       wined3d: Move the "buffer_offset" field to struct wined3d_bo.
539       wined3d: Respect the BO address offset when uploading data from the CPU in wined3d_texture_gl_download_data_slow_path().
540       wined3d: Allow OpenGL pixel unpack buffer objects to be suballocated from a larger buffer.
541       wined3d: Allow OpenGL indirect dispatch buffer objects to be suballocated from a larger buffer.
542       wined3d: Allow OpenGL indirect draw buffer objects to be suballocated from a larger buffer.
543       gdi32/tests: Test whether D3DKMTDestroyDCFromMemory() frees the DC memory.
544       win32u: Do not free user memory when deleting dibs created with NtGdiDdDDICreateDCFromMemory().
545       wined3d: Respect the BO address offset when flipping the framebuffer in software.
546       wined3d: Allow OpenGL pixel pack buffer objects to be suballocated from a larger buffer.
547       wined3d: Respect the BO buffer offset in wined3d_buffer_gl_download_ranges().
548       ntdll: Allow loading system DLLs from a path specified at configure time.
549       ntdll: Prevent loading Wine system dependencies in place of identically named application DLLs.
550       ddraw/tests: Pass the correct size to VirtualQuery().
551       strmbase: Remove the no longer used output queue helper.
552       include: Do not include wine/list.h in wine/strmbase.h.
553       configure: Fix the makefile path for libxml2 and libxslt.
554       makedep: Check for external libraries instead of include paths when determining whether to allow external includes.
555       configure: Don't use a bundled include path if external linker flags are specified.
556       wined3d: Always set GL_PIXEL_PACK_BUFFER binding before downloading texture data.
557       wined3d: Always set GL_PIXEL_PACK_BUFFER binding in texture2d_read_from_framebuffer().
558       include: Add _fpreset().
559       ntdll: Remove the no longer used "mutex" argument to server_select().
560       wined3d: Always set GL_PIXEL_UNPACK_BUFFER binding in wined3d_texture_gl_allocate_mutable_storage().
561       wined3d: Always set GL_PIXEL_UNPACK_BUFFER binding in glsl_blitter_upload_palette().
562       configure: Try to detect MinGW zlib using pkg-config if --with-system-dllpath is specified.
563       configure: Try to detect MinGW FAudio using pkg-config if --with-system-dllpath is specified.
564       configure: Try to detect MinGW libjpeg using pkg-config if --with-system-dllpath is specified.
565       configure: Try to detect MinGW liblcms2 using pkg-config if --with-system-dllpath is specified.
566       configure: Try to detect MinGW libmpg123 using pkg-config if --with-system-dllpath is specified.
567       configure: Try to detect MinGW libpng using pkg-config if --with-system-dllpath is specified.
568       configure: Try to detect MinGW libtiff using pkg-config if --with-system-dllpath is specified.
569       configure: Try to detect MinGW libxml2 using pkg-config if --with-system-dllpath is specified.
570       configure: Try to detect MinGW libxslt using pkg-config if --with-system-dllpath is specified.
572 Zhiyi Zhang (6):
573       comctl32/tests: Add an optional message to avoid test failures.
574       explorerframe/tests: Add ITaskbarList tests.
575       explorerframe: Implement taskbar_list_DeleteTab() for x11 driver.
576       explorerframe: Implement taskbar_list_AddTab() for x11 driver.
577       uxtheme: Use StretchBlt() when resizing a source image for tiling.
578       uxtheme: Call DefDlgProc() if drawing tab body in a dialog fails.
581 Alexandre Julliard
582 julliard@winehq.org