include: Add more d3d12 logic ops.
[wine.git] / ANNOUNCE
blob1d537ee19d5585cf6e884d00765d316c6b3f0e42
1 The Wine development release 7.3 is now available.
3 What's new in this release:
4   - More large scale cleanups to support 'long' type.
5   - Proper support for API sets.
6   - Progress on the PE conversion of USER32 and WineALSA.
7   - A number of HID joystick fixes.
8   - Various bug fixes.
10 The source is available from the following locations:
12   https://dl.winehq.org/wine/source/7.x/wine-7.3.tar.xz
13   http://mirrors.ibiblio.org/wine/source/7.x/wine-7.3.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 7.3 (total 15):
31   38210  WshScriptExec's StdIn StdOut and StdErr are missing.
32   41386  Motocross Madness 2 crashes on start
33   44635  Multiple games need ID3DXEffect CloneEffect (Gray Matter, Black and White 2)
34   44658  Multiple Win7+ APIset lookup/resolver tools need 'ApiSetMap' field in PEB (ApiSetView, Dependencies)
35   48096  Mulle Meck: Unhandled exception when starting game
36   48201  Unimplemented function KERNEL32.dll.SetCurrentConsoleFontEx
37   48733  Microsoft Visual Studio 2019 web-installer needs ncrypt.dll.NCryptOpenStorageProvider implementation
38   48760  ConEmu shows 'GetConsoleProcessList failed' at startup
39   51103  d3d11:d3d11 crashes on Windows + NVidia
40   52155  kernel32:pipe times out on 64-bit Wine
41   52290  Playground Sessions crashes on startup
42   52434  Light Blue theme has rendering errors in tree views
43   52526  Trails to Azure (Geofront patch) crashes on unimplemented function KERNEL32.dll.InitializeContext
44   52561  d3dx9_36:math crashes on Windows 8.1 and cw-rx460
45   52583  ApiSetView does not display export ordinals correctly
47 ----------------------------------------------------------------
49 Changes since 7.2:
51 Alex Henrie (1):
52       comctl32/tests: Drop mru test workarounds for Windows <= 2000.
54 Alexandre Julliard (63):
55       kernel32: Forward SetThreadToken() to kernelbase.
56       make_specfiles: Sort the ApiSet dlls by name.
57       make_specfiles: Move some ApiSet dlls to the ntdll section.
58       api-ms-*: Forward to kernelbase instead of kernel32.
59       api-ms-*: Forward to kernelbase instead of advapi32.
60       api-ms-*: Forward to kernelbase instead of shlwapi.
61       api-ms-*: Forward to kernelbase instead of user32.
62       api-ms-*: Forward to kernelbase instead of version.
63       api-ms-*: Forward to combase instead of ole32.
64       api-ms-*: Forward to shcore instead of shlwapi.
65       api-ms-*: Forward to shcore instead of shell32.
66       api-ms-*: Forward to cfgmgr32 instead of setupapi.
67       api-ms-*: Forward to sechost instead of advapi32.
68       api-ms-*: Forward to cryptsp instead of advapi32.
69       secur32: Add stubs for DeleteSecurityPackageA/W.
70       winebuild: Add support for generating data-only DLLs.
71       winegcc: Add support for winebuild --data-only option.
72       makedep: Add support for winebuild --data-only option.
73       activeds.tlb: Build in data-only mode.
74       icmp: Build in data-only mode.
75       light.msstyles: Build in data-only mode.
76       lz32: Build in data-only mode.
77       mferror: Build in data-only mode.
78       mshtml.tlb: Build in data-only mode.
79       msimsg: Build in data-only mode.
80       normaliz: Build in data-only mode.
81       security: Build in data-only mode.
82       sfc: Build in data-only mode.
83       shdoclc: Build in data-only mode.
84       stdole2.tlb: Build in data-only mode.
85       stdole32.tlb: Build in data-only mode.
86       tzres: Build in data-only mode.
87       usp10: Build in data-only mode.
88       wmi: Build in data-only mode.
89       kernel32/tests: Add a few more tests for apisets.
90       kernel32: Move some more console functions to kernelbase.
91       winedump: Add dumping of the .apiset PE section.
92       winebuild: Add support for building apiset data.
93       apisetschema: Add dll.
94       kernel32/tests: Add tests for apiset query functions.
95       include: Add API set definitions.
96       ntdll: Add a global variable for the WoW PEB.
97       ntdll: Load the apiset schema at startup.
98       ntdll: Map imported apiset dlls to their target library.
99       ntdll: Map explicitly loaded apiset dlls to their target library.
100       ntdll: Implement ApiSetQueryApiSetPresence/Ex().
101       kernelbase: Implement IsApiSetImplemented().
102       apisetchema: Add some more kernelbase apisets.
103       apisetchema: Add some more kernel32 apisets.
104       apisetchema: Add some more combase apisets.
105       apisetchema: Add some more ole32 apisets.
106       apisetchema: Add some more advapi32 apisets.
107       apisetchema: Add some more gdi32 apisets.
108       apisetchema: Add some more user32 apisets.
109       apisetchema: Add some more sechost apisets.
110       apisetchema: Add some more shcore apisets.
111       apisetchema: Add some more shlwapi apisets.
112       apisetchema: Add some more winmm apisets.
113       apisetchema: Add some more comctl32 apisets.
114       apisetchema: Add some more misc apisets.
115       api-ms-*: Get rid of the apiset placeholder files.
116       include: Add a few locale definitions.
117       include: Update __MSABI_LONG definition for WINE_NO_LONG_TYPES support.
119 Alistair Leslie-Hughes (3):
120       include: Add AACMFTEncoder coclass.
121       mfplat: Correctly calculate url scheme length.
122       mfuuid: Add more schema CLSIDs.
124 Bernhard Kölbl (1):
125       include: Add missing required iface and retval for IMapView<K, V>.
127 Connor McAdams (1):
128       wined3d: Fix comment in wined3d_texture_vk_download_data().
130 Damjan Jovanovic (1):
131       krnl386.exe: Fix VxD filename format checks in __wine_vxd_open().
133 Daniel Lehman (1):
134       msxml3/tests: Fix some double-frees of BSTRs.
136 Dmitry Timoshkov (6):
137       riched20/tests: Add a test to see what richedit class flavours should be available.
138       comctl32/tests: Print id value as decimal.
139       comctl32/tests: Add iItem and uChanged to LVN_ITEMCHANGING/LVN_ITEMCHANGED context.
140       comctl32/tests: Add more LVM_INSERTITEM tests.
141       comctl32/listview: Send change notifications when inserting (LVIS_SELECTED|LVIS_FOCUSED) items.
142       comctl32/listview: Fix changed notification mask for inserted items.
144 Eric Pouech (231):
145       mapi32: Enable compilation with long types.
146       mciavi32: Enable compilation with long types.
147       mcicda: Enable compilation with long types.
148       mciqtz32: Enable compilation with long types.
149       mciseq: Enable compilation with long types.
150       mciwave: Enable compilation with long types.
151       midimap: Enable compilation with long types.
152       mlang: Enable compilation with long types.
153       mmdevldr.vxd: Enable compilation with long types.
154       mmsystem.dll16: Enable compilation with long types.
155       monodebg.vxd: Enable compilation with long types.
156       mountmgr.sys: Enable compilation with long types.
157       mp3dmod: Enable compilation with long types.
158       mprapi: Enable compilation with long types.
159       mpr: Enable compilation with long types.
160       msacm32.drv: Enable compilation with long types.
161       msacm.dll16: Enable compilation with long types.
162       dsound: Enable compilation with long types.
163       dwrite: Enable compilation with long types.
164       gdiplus: Enable compilation with long types.
165       msacm32: Use extended structure definition for driver configuration.
166       http.sys: Build without -DWINE_NO_LONG_TYPES.
167       msado15: Enable compilation with long types.
168       msasn1: Enable compilation with long types.
169       msctf: Enable compilation with long types.
170       msctfmonitor: Enable compilation with long types.
171       msdaps: Enable compilation with long types.
172       msdmo: Enable compilation with long types.
173       msident: Enable compilation with long types.
174       msimtf: Enable compilation with long types.
175       msisip: Enable compilation with long types.
176       msnet32: Enable compilation with long types.
177       mspatcha: Enable compilation with long types.
178       msrle32: Enable compilation with long types.
179       msscript.ocx: Enable compilation with long types.
180       mssign32: Enable compilation with long types.
181       mstask: Enable compilation with long types.
182       msvfw32: Enable compilation with long types.
183       msvidc32: Enable compilation with long types.
184       msvideo.dll16: Enable compilation with long types.
185       httpapi: Build without -DWINE_NO_LONG_TYPES.
186       mfreadwrite: Enable compilation with long types.
187       msacm32: Enable compilation with long types.
188       mshtml: Enable compilation with long types.
189       mmdevapi: Enable compilation with long types.
190       gdiplus/tests: Get rid of some GCC11 warnings (-Warray-bounds).
191       gdiplus: Get rid of gcc11 warnings (-Warray-bounds).
192       mscoree: Enable compilation with long types.
193       nddeapi: Enable compilation with long types.
194       ndis.sys: Enable compilation with long types.
195       netapi32: Enable compilation with long types.
196       netcfgx: Enable compilation with long types.
197       netio.sys: Enable compilation with long types.
198       netprofm: Enable compilation with long types.
199       newdev: Enable compilation with long types.
200       ntdsapi: Enable compilation with long types.
201       ntoskrnl.exe: Enable compilation with long types.
202       ntprint: Enable compilation with long types.
203       odbc32: Enable compilation with long types.
204       odbccp32: Enable compilation with long types.
205       ole2disp.dll16: Enable compilation with long types.
206       ole2.dll16: Enable compilation with long types.
207       olecli32: Enable compilation with long types.
208       olecli.dll16: Enable compilation with long types.
209       oledb32: Enable compilation with long types.
210       oledlg: Enable compilation with long types.
211       olesvr32: Enable compilation with long types.
212       olesvr.dll16: Enable compilation with long types.
213       mfplat: Enable compilation with long types.
214       msadp32.acm: Enable compilation with long types.
215       msg711.acm: Enable compilation with long types.
216       msgsm32.acm: Enable compilation with long types.
217       cmd: Enable compilation with long types.
218       cmd/tests: Enable compilation with long types.
219       packager: Enable compilation with long types.
220       pdh: Enable compilation with long types.
221       powrprof: Enable compilation with long types.
222       printui: Enable compilation with long types.
223       prntvpt: Enable compilation with long types.
224       propsys: Enable compilation with long types.
225       pstorec: Enable compilation with long types.
226       qmgr: Enable compilation with long types.
227       query: Enable compilation with long types.
228       qwave: Enable compilation with long types.
229       rasapi32: Enable compilation with long types.
230       rpcrt4: Enable compilation with long types.
231       rsaenh: Enable compilation with long types.
232       rstrtmgr: Enable compilation with long types.
233       rtutils: Enable compilation with long types.
234       sane.ds: Enable compilation with long types.
235       sapi: Enable compilation with long types.
236       schannel: Enable compilation with long types.
237       schedsvc: Enable compilation with long types.
238       sechost: Enable compilation with long types.
239       secur32: Enable compilation with long types.
240       scrobj: Enable compilation with long types.
241       serialui: Enable compilation with long types.
242       setupapi: Enable compilation with long types.
243       setupx.dll16: Enable compilation with long types.
244       riched20: Enable compilation with long types.
245       quartz: Always allocate the entire VIDEOINFO structure.
246       ntdll/tests: Fully allocate SYSTEM_FIRMWARE_TABLE_INFORMATION.
247       kernel32/tests: Fully allocate SYSTEM_FIRMWARE_TABLE_INFORMATION.
248       kernel32/test: Fully allocate KEY_VALUE_*_INFORMATION.
249       oledb32/tests: Silence some gcc11 warnings (-Warray-bounds).
250       sfc_os: Enable compilation with long types.
251       shdocvw: Enable compilation with long types.
252       shell32: Enable compilation with long types.
253       shell.dll16: Enable compilation with long types.
254       shlwapi: Enable compilation with long types.
255       snmpapi: Enable compilation with long types.
256       sound.drv16: Enable compilation with long types.
257       spoolss: Enable compilation with long types.
258       sppc: Enable compilation with long types.
259       sti: Enable compilation with long types.
260       storage.dll16: Enable compilation with long types.
261       stress.dll16: Enable compilation with long types.
262       sxs: Enable compilation with long types.
263       tapi32: Enable compilation with long types.
264       taskschd: Enable compilation with long types.
265       toolhelp.dll16: Enable compilation with long types.
266       traffic: Enable compilation with long types.
267       twain_32: Enable compilation with long types.
268       typelib.dll16: Enable compilation with long types.
269       uianimation: Enable compilation with long types.
270       uiautomationcore: Enable compilation with long types.
271       uiribbon: Enable compilation with long types.
272       url: Enable compilation with long types.
273       urlmon: Enable compilation with long types.
274       wusa: Set subsystem to GUI.
275       uninstaller: Set subsystem to GUI.
276       usbd.sys: Enable compilation with long types.
277       userenv: Enable compilation with long types.
278       user.exe16: Enable compilation with long types.
279       uxtheme: Enable compilation with long types.
280       vbscript: Enable compilation with long types.
281       vcomp*: Enable compilation with long types.
282       vcruntime140: Enable compilation with long types.
283       vcruntime140_1: Enable compilation with long types.
284       vdhcp.vxd: Enable compilation with long types.
285       vdmdbg: Enable compilation with long types.
286       ver.dll16: Enable compilation with long types.
287       version: Enable compilation with long types.
288       virtdisk: Enable compilation with long types.
289       vmm.vxd: Enable compilation with long types.
290       vnbt.vxd: Enable compilation with long types.
291       vnetbios.vxd: Enable compilation with long types.
292       vssapi: Enable compilation with long types.
293       vtdapi.vxd: Enable compilation with long types.
294       vwin32.vxd: Enable compilation with long types.
295       w32sys.dll16: Enable compilation with long types.
296       wer: Enable compilation with long types.
297       wevtapi: Enable compilation with long types.
298       wevtsvc: Enable compilation with long types.
299       ctapi32: Enable compilation with long types.
300       nsi: Enable compilation with long types.
301       comctl32/tests: Don't outdent todo_wine*.
302       kernel32/tests: Don't outdent todo_wine*.
303       ole32/tests: Don't outdent todo_wine*.
304       advapi32/tests: Don't outdent todo_wine*.
305       bcrypt/tests: Don't outdent todo_wine*.
306       oledb32/tests: Don't outdent todo_wine*.
307       shell32/tests: Don't outdent todo_wine*.
308       user32/tests: Don't outdent todo_wine*.
309       msxml3/tests: Don't outdent todo_wine*.
310       dwrite/tests: Don't outdent todo_wine*.
311       msacm32/tests: Don't outdent todo_wine*.
312       windowscodecs/tests: Don't outdent todo_wine*.
313       wiaservc: Enable compilation with long types.
314       wimgapi: Enable compilation with long types.
315       win87em.dll16: Enable compilation with long types.
316       windows.media.devices: Enable compilation with long types.
317       windows.devices.enumeration: Enable compilation with long types.
318       windows.globalization: Enable compilation with long types.
319       windows.media.speech: Enable compilation with long types.
320       wing.dll16: Enable compilation with long types.
321       wininet: Enable compilation with long types.
322       winscard: Enable compilation with long types.
323       winsta: Enable compilation with long types.
324       wintab32: Enable compilation with long types.
325       wintab.dll16: Enable compilation with long types.
326       wintrust: Enable compilation with long types.
327       wlanapi: Enable compilation with long types.
328       wmp: Enable compilation with long types.
329       wmvcore: Enable compilation with long types.
330       wnaspi32: Enable compilation with long types.
331       winmm: Enable compilation with long types.
332       wineps.drv: Enable compilation with long types.
333       windowscodecs: Enable compilation with long types.
334       oleacc: Enable compilation with long types.
335       wsdapi: Enable compilation with long types.
336       wsock32: Enable compilation with long types.
337       wtsapi32: Enable compilation with long types.
338       winemapi: Enable compilation with long types.
339       activeds/tests: Enable compilation with long types.
340       adsldp/tests: Enable compilation with long types.
341       advapi32/tests: Enable compilation with long types.
342       advpack/tests: Enable compilation with long types.
343       amstream/tests: Enable compilation with long types.
344       apphelp/tests: Enable compilation with long types.
345       atl100/tests: Enable compilation with long types.
346       atl/tests: Enable compilation with long types.
347       avifil32/tests: Enable compilation with long types.
348       cabinet/tests: Enable compilation with long types.
349       comcat/tests: Enable compilation with long types.
350       comdlg32/tests: Enable compilation with long types.
351       comsvcs/tests: Enable compilation with long types.
352       credui/tests: Enable compilation with long types.
353       crypt32/tests: Enable compilation with long types.
354       cryptnet/tests: Enable compilation with long types.
355       cryptui/tests: Enable compilation with long types.
356       comctl32/tests: Use correct integral type.
357       comctl32/tests: Use inline function in expect*() macros to handle integral conversion.
358       dbghelp/tests: Enable compilation with long types.
359       dhcpcsvc/tests: Enable compilation with long types.
360       directmanipulation/tests: Enable compilation with long types.
361       dpvoice/tests: Enable compilation with long types.
362       dsdmo/tests: Enable compilation with long types.
363       dssenh/tests: Enable compilation with long types.
364       dwmapi/tests: Enable compilation with long types.
365       dxdiagn/tests: Enable compilation with long types.
366       explorerframe/tests: Use correct integral type.
367       explorerframe/tests: Enable compilation with long types.
368       faultrep/tests: Enable compilation with long types.
369       fusion/tests: Enable compilation with long types.
370       dplayx/tests: Use correct integral type.
371       dplayx/tests: Use function in checkFlags macro to handle integral conversion.
372       dplayx/tests: Enable compilation with long types.
373       dpnet/tests: Use correct integral type.
374       dpnet/tests: Enable compilation with long types.
375       dwrite/tests: Enable compilation with long types.
377 François Gouget (19):
378       msi/tests: Fix the trailing linefeed in an ok() message.
379       dinput/tests: Remove spaces before linefeeds.
380       dinput/tests: Remove an unneeded NULL cast.
381       d2d1/tests: Fix the spelling of an ok() message.
382       d3d11/tests: Fix the spelling of a couple of comments.
383       msdasql: Remove a couple of unneeded NULL casts.
384       kernel32/tests: Add a trailing linefeed to an ok() message.
385       hnetcfg: Fix the spelling of a TRACE() message.
386       ntdll: Fix the spelling of SystemPrioritySeparation.
387       iphlpapi: Fix ULONG comparisons, most notably for IPv4 addresses.
388       iphlpapi: Fix the IPv4 address network order for comparisons.
389       inetmib1: Avoid overflows in IPv4 address comparisons.
390       inetmib1: Fix the IPv4 address network order for comparisons.
391       ws2_32/tests: Remove the todo_wine on a test_recv() ok() call.
392       xinput1_3: Fix the spelling of a WARN() message and helper.
393       winebus.sys: Make hid_device_get_report_descriptor() static.
394       dbghelp: Fix the spelling and tweak the wording of a comment.
395       ncrypt: Add trailing linefeeds to ERR() messages.
396       winetest: Also trace the country and ANSI code page.
398 Gabriel Ivăncescu (3):
399       winepulse.drv: Expose audio devices to the application.
400       winepulse.drv: Cache the devices looked up in the registry.
401       winepulse.drv: Implement GetPropValue.
403 Giovanni Mascellani (2):
404       mfplat: Fix MFGetPlaneSize() behavior for invalid formats.
405       winegstreamer: Do not block forever if EOS races with command queue.
407 Hans Leidekker (9):
408       wbemprox: Build without -DWINE_NO_LONG_TYPES.
409       wbemprox/tests: Build without -DWINE_NO_LONG_TYPES.
410       wbemdisp: Build without -DWINE_NO_LONG_TYPES.
411       wmiutils: Build without -DWINE_NO_LONG_TYPES.
412       wldap32: Build without -DWINE_NO_LONG_TYPES.
413       webservices: Build without -DWINE_NO_LONG_TYPES.
414       webservices/tests: Build without -DWINE_NO_LONG_TYPES.
415       ncrypt: Build without -DWINE_NO_LONG_TYPES.
416       ncrypt: Fix resizing property array.
418 Henri Verbeet (1):
419       wined3d: Use the chunk allocator for GL vertex buffers.
421 Huw D. M. Davies (28):
422       winealsa: Remove alsa-pulse handle underrun workaround.
423       winealsa: Pass EDataFlow to alsa_try_open().
424       winealsa: Introduce a helper to retrieve the card name.
425       winealsa: Pass a unicode chunk2 to construct_device_id().
426       winealsa: Rewrite get_reg_devices() using the Nt registry api.
427       winealsa: Move get_endpoints_id to the unixlib.
428       winealsa: Explicitly store the name and channel count in the audio client.
429       winealsa: Use the global lock to lock the session.
430       winealsa: Introduce a stream structure.
431       winealsa: Move the pcm device opening to a helper.
432       winealsa: Move get_mix_format to the unixlib.
433       winealsa: Move is_format_supported to the unixlib.
434       winealsa: Move the stream creation to AudioClient_Initialize().
435       winealsa: Use the stream ptr to indicate the init state.
436       winealsa: Store the channel volumes in the stream.
437       winealsa: Remove an unnecessary check on the session channel count.
438       winealsa: Store the session channel vols in the stream.
439       winealsa: Store the session master volume in the stream.
440       winealsa: Store the session mute state in the stream volumes.
441       winealsa: Pass a stream ptr to alsa_{read|write}_data().
442       winealsa: Keep a copy of the dataflow in the stream.
443       winealsa: Use the sessions lock to lock the client's data.
444       winealsa: Use a pthread mutex for the stream lock.
445       winealsa: Use NtAllocateVirtualMemory() to alloc the buffers returned to the user.
446       winealsa: Move create_stream and release_stream to the unixlib.
447       winealsa: Move get_buffer_size to the unixlib.
448       winealsa: Move get_latency to the unixlib.
449       winealsa: Move get_current_padding to the unixlib.
451 Jacek Caban (60):
452       win32u: Move monitor_from_rect implementation from user32.
453       win32u: Move NtUserClipCursor implementation from user32.
454       win32u: Move GetClipCursor implementation from user32.
455       win32u: Move NtUserSetCursorPos implementation from user32.
456       win32u: Move MessageBeep implementation from user32.
457       win32u: Move GetCursorPos implementation from user.
458       win32u: Move window surfaces list from user32.
459       win32u: Move NtUserGetQueueStatus implementation from user32.
460       win32u: Move GetInputState implementation from user32.
461       win32u: Reset thread info in NtUserSetThreadDesktop.
462       win32u: Move NtUserGetAsyncKeyState implementation from user32.
463       win32u: Move ThreadDetach driver call from user32.
464       win32u: Move NtUserUnhookWinEvent implementation from user32.
465       win32u: Move NtUserSetWinEventHook implementation from user32.
466       win32u: Move NtUserNotifyWinEvent implementation from user32.
467       win32u: Move NtUserSetWindowsHookEx implementation from user32.
468       win32u: Move NtUserUnhookWindowsHookEx implementation from user32.
469       win32u: Move UnhookWindowsHook implementation from user32.
470       user32: Delay load setupapi.
471       gdi32: Link directly to user32.
472       win32u: Set user callbacks from user32 DllMain.
473       win32u: Move NtUserGetForegroundWindow implementation from user32.
474       win32u: Move primary palette handling from user32.
475       winex11: Get virtual screen rect from win32u.
476       winex11: Get primary monitor rect from win32u.
477       win32u/tests: Build without -DWINE_NO_LONG_TYPES.
478       user32: Use a single struct for static and animated cursor icons.
479       user32: Store module as unicode string in cursoricon_object.
480       user32: Use ntuser object type constants.
481       user32: Simplify cursor hotspot handling.
482       user32: Factor out create_icon_frame.
483       user32: Introduce NtUserSetCursorIconData.
484       user32: Use create_cursoricon_object in CreateIconIndirect.
485       user32: Use create_cursoricon_object in CURSORICON_CreateIconFromANI.
486       user32: Simplify icon delay handling.
487       win32u: Move user lock from user32.
488       win32u: Move user_handles from user32.
489       win32u: Move cursor icon handle management from user32.
490       win32u: Move NtUserSetCursor implementation from user32.
491       win32u: Move NtUserGetIconSize implementation from user32.
492       win32u/tests: Add cursor icon tests.
493       win32u: Move NtUserGetCursorFrameInfo implementation from user32.
494       win32u: Move NtUserGetIconInfo implementation from user32.
495       user32: Directly use NtUserGetIconInfo in GetIconInfo.
496       user32: Use GetIconInfo in CopyIcon.
497       win32u: Move NtUserDrawIconEx implementation from user32.
498       mshtml: Don't try to bind custom events to Gecko event target.
499       user32: Don't access cursoricon_object directly in CopyImage.
500       win32u: Move get_icon_param and set_icon_param from user32.
501       win32u: Move NtUserRegisterHotKey implementation from user32.
502       win32u: Move NtUserGetCursorInfo implementation from user32.
503       win32u: Move NtUserGetGUIThreadInfo implementation from user32.
504       user32: Use NtUserGetGUIThreadInfo in GetActiveWindow.
505       user32: Use NtUserGetGUIThreadInfo in GetFocus.
506       win32u: Partially move handle_internal_message from user32.
507       win32u: Move call_current_hook implementation from user32.
508       win32u: Move NtUserCallNextHookEx implementation from user32.
509       win32u: Move call_hooks implementation from user32.
510       win32u: Move GetWindowThreadProcessId implementation from user32.
511       win32u: Move IsWindow implementation from user32.
513 Lauri Kenttä (1):
514       po: Update Finnish translation.
516 Mark Harmstone (2):
517       winepulse.drv: Fetch actual application name, if possible.
518       winepulse.drv: Implement PKEY_AudioEndpoint_PhysicalSpeakers device prop.
520 Matteo Bruni (7):
521       include: Add missing CreateProcessWithTokenW() declaration.
522       ddraw: Filter out redundant discard maps.
523       d3dx9/tests: Fix initialization of texture levels > 0 in test_D3DXSHProjectCubeMap().
524       d3dx9/tests: Initialize an input variable.
525       d3dx9/tests: Get rid of unnecessary ifs.
526       d3dx9: Build with nameless unions.
527       d3dx9: Handle D3DXCONSTTABLE_LARGEADDRESSAWARE flag.
529 Michael Stefaniuc (5):
530       dmsynth: Implement the synth GetFormat method.
531       dmsynth/tests: Add synth GetFormat tests.
532       dmsynth: Implement the sink GetDesiredBufferSize method.
533       dmusic: Forward GetFormat() to the corresponding synth & sink methods.
534       dmusic: Sync up the dmobject.c files.
536 Mohamad Al-Jaf (2):
537       wusa: Use case insensitive comparison for expressions.
538       ntdll: Fix the spelling of a comment.
540 Nikolay Sivov (39):
541       oleaut32: Build without -DWINE_NO_LONG_TYPES.
542       mfmediaengine/tests: Build without -DWINE_NO_LONG_TYPES.
543       mfreadwrite/tests: Build without -DWINE_NO_LONG_TYPES.
544       mfplay: Implement UpdateVideo().
545       mfplay: Handle shutdown state in media item methods.
546       mfplay: Fix IsProtected() return value.
547       mfplat/tests: Add a separate test function for MFGetPlaneSize().
548       winepulse: Use FAILED() instead of non-zero result check.
549       winegstreamer: Raise MESourceRateChanged on SetRate().
550       mf/session: Use nameless union for command structure.
551       mf/session: Initial implementation of playback rate change.
552       mfplay: Enable rate control methods.
553       mf/evr: Implement IsRateSupported().
554       mf/evr: Fix rate limits methods.
555       winegstreamer: Maintain playback rate value for the media source.
556       mfplay: Shutdown sources when media items are released.
557       mfplat: Fix playback rate handling in system time source.
558       mf/tests: Add some tests for rate support in SAR.
559       scrrun: Add a stub for pipe-based text stream.
560       mfmediaengine: Shutdown media source when clearing current presentation.
561       mfmediaengine: Implement GetResourceCharacteristics().
562       mfmediaengine: Handle realtime mode flag.
563       mfmediaengine: Implement GetPresentationAttribute().
564       mfmediaengine: Implement GetStreamAttribute().
565       usp10/tests: Build without -DWINE_NO_LONG_TYPES.
566       usp10/tests: Remove workarounds for missing functions.
567       scrrun: Move IO mode check to writing helper.
568       scrrun: Use same write implementation for pipe stream.
569       wshom: Create standard streams when starting new process with Exec().
570       wshom: Implement standard streams properties for Exec object.
571       mfplat: Add VT_R4 case for propvariant tracing.
572       shcore/tests: Build without -DWINE_NO_LONG_TYPES.
573       dxva2/tests: Build without -DWINE_NO_LONG_TYPES.
574       t2embed/tests: Build without -DWINE_NO_LONG_TYPES.
575       browseui/tests: Build without -DWINE_NO_LONG_TYPES.
576       atlthunk/tests: Build without -DWINE_NO_LONG_TYPES.
577       dispex/tests: Build without -DWINE_NO_LONG_TYPES.
578       msxml3/tests: Build without -DWINE_NO_LONG_TYPES.
579       comctl32/listview: Initialize subitem text buffer before drawing each subitem.
581 Paul Gofman (4):
582       wined3d: Clear GL backbuffer in wined3d_context_gl_init().
583       ntdll: Do not force 2G stack limit for the main thread of 64 bit process.
584       kernel32: Import RtlCaptureContext() instead of forwarding.
585       kernel32: Import RtlRestoreContext() instead of forwarding.
587 Piotr Caban (13):
588       concrt140/tests: Build without -DWINE_NO_LONG_TYPES.
589       msvcp120/tests: Build without -DWINE_NO_LONG_TYPES.
590       msvcp140_atomic_wait/tests: Build without -DWINE_NO_LONG_TYPES.
591       msvcp140/tests: Build without -DWINE_NO_LONG_TYPES.
592       msvcp90/tests: Build without -DWINE_NO_LONG_TYPES.
593       msvcr100/tests: Build without -DWINE_NO_LONG_TYPES.
594       msvcr120/tests: Build without -DWINE_NO_LONG_TYPES.
595       msvcrtd/tests: Build without -DWINE_NO_LONG_TYPES.
596       msvcr90/tests: Build without -DWINE_NO_LONG_TYPES.
597       msvcrt/tests: Build without -DWINE_NO_LONG_TYPES.
598       ucrtbase/tests: Build without -DWINE_NO_LONG_TYPES.
599       msvcirt/tests: Fix uninitialized variable warning.
600       msvcirt/tests: Build without -DWINE_NO_LONG_TYPES.
602 Rafał Harabień (7):
603       user32/tests: Add tests for more static control styles.
604       user32/tests: Test static control exstyle.
605       user32/tests: Check client rect in static control tests.
606       user32: Fix handling of SS_ETCHEDHORZ/SS_ETCHEDVERT static control styles.
607       user32: Send WM_CTLCOLORSTATIC for all static control types.
608       user32/tests: Fix invalidation in static control tests.
609       user32/tests: Remove now unused TODO_COUNT in static tests.
611 Roman Pišl (3):
612       kernel32/tests: Add test for GetConsoleProcessList.
613       server: Add console process list ioctl.
614       kernel32: Implement GetConsoleProcessList.
616 Rémi Bernon (56):
617       winebus.sys: Only call SDL_HapticRumbleInit if supported, as a fallback.
618       winebus.sys: Request haptics effect to stop when only when needed.
619       winebus.sys: Stop haptics effects using the right function.
620       winebus.sys: Fix HID haptics waveform NONE / STOP ordinals.
621       xinput1_3: Use _ordinal rather than _index suffix for haptics waveforms.
622       mf: Handle MESourceSeeked and MEStreamSeeked state change events.
623       xinput1_3: Use the implicit Stop waveform ordinal to stop the effects.
624       winebus.sys: Use a separate hid_device_vtbl function to stop haptics.
625       winebus.sys: Pack the HID haptics waveform report struct.
626       winebus.sys: Add a repeat count value to haptics output report.
627       xinput1_3: Use the implicit None waveform to trigger both waveforms.
628       xinput1_3: Use WM_DEVICECHANGE device path to add or remove devices.
629       xinput1_3: Only write haptics waveform reports when needed.
630       winebus.sys: Add missing static qualifiers in bus_sdl.c.
631       dinput: Set HID joystick internal ref before trying to open it.
632       dinput: Ignore override flag for non-XInput devices.
633       dinput: Use DIEFT_GETTYPE instead masking bits.
634       winegstreamer: Remove unnecessary DECLSPEC_HIDDEN qualifier.
635       winegstreamer: Move format helpers to a dedicated source.
636       winegstreamer: Introduce new WG_MAJOR_TYPE_WMA major type.
637       winegstreamer: Introduce new wg_transform struct.
638       winegstreamer: Create static pads on wg_transform struct.
639       dinput: Also trace report buffers on immediate ReadFile success.
640       dinput: Only read effect state reports when exclusively acquired.
641       dinput: Remove unnecessary critical section entry.
642       dinput: Report optional force feedback state only if supported.
643       mf/tests: Add some H264 decoder creation tests.
644       mf/tests: Add some H264 decoder GetInputAvailableType tests.
645       mf/tests: Add some H264 decoder SetInputType tests.
646       mf/tests: Add some H264 decoder GetOutputAvailableType tests.
647       mf/tests: Add some H264 decoder SetOutputType tests.
648       include: Use fully qualified names in windows.foundation.collections.idl.
649       widl: Support declaring multiple namespaces at once.
650       include: Remove nested namespaces in windows.gaming.input.idl.
651       include: Add Windows.Devices.Haptics.SimpleHapticsController definition.
652       include: Add Windows.Gaming.Input.IRawGameController2 definition.
653       dinput: Avoid invalid rglDirection access when effect cAxes is 0.
654       winebus.sys: Use a local variable to access hid_device_state.
655       winebus.sys: Link the first two absolute axes to the effect directions.
656       dinput/tests: Add more tests for simulation HID usages.
657       winegstreamer: Remove \n at the end of GST log messages.
658       winegstreamer: Move the conditional cleanup to the create error path.
659       winegstreamer: Add a bin container element to wg_transform.
660       winegstreamer: Append audioconvert and audioresample elements.
661       winegstreamer: Lookup and instantiate a WMA decoder element.
662       mf/tests: Add some H264 decoder GetInputStreamInfo tests.
663       mf/tests: Add some H264 decoder GetOutputStreamInfo tests.
664       mf/tests: Always initialize sample data in create_sample helper.
665       mf/tests: Add some H264 decoder Process(Input|Output) tests.
666       dinput/tests: Add some windows.gaming.input hotplug tests.
667       dinput/tests: Add some windows.gaming.input device tests.
668       dinput/tests: Add tests for IRawGameControllerStatics_FromGameController.
669       dinput/tests: Add tests for IGamepadStatics_get_Gamepads.
670       winegstreamer: Link the container pads and activate ours.
671       winegstreamer: Send stream-start, caps, and segment events on creation.
672       mf/tests: Check H264 decoder formats after stream change.
674 Santino Mazza (14):
675       bcrypt: Add BCRYPT_KEY_BLOB struct definition.
676       ncrypt/tests: Test key import of an rsa key.
677       ncrypt: Make NCryptOpenStorageProvider return a valid stub pointer.
678       ncrypt: Implement NCryptImportKey function.
679       ncrypt/tests: Test NCryptFreeObject function.
680       ncrypt: Implement NCryptFreeObject.
681       ncrypt: Implement NCryptGetProperty and NCryptSetProperty.
682       ncrypt: Set a couple of key properties.
683       ncrypt: NCryptGetProperty should always fill result size.
684       ncrypt: Add NCryptVerifySignature stub.
685       ncrypt: Validate existence of property before creating one.
686       ncrypt: Check null handle when setting or getting properties.
687       ncrypt/tests: Test for NCryptCreatePersistedKey.
688       ncrypt/tests: Test for NCryptSetProperty.
690 Sven Baars (5):
691       ntoskrnl.exe/tests: Fix some memory leaks (Valgrind).
692       rsaenh: Store a BCRYPT_HASH_HANDLE in CRYPTHASH.
693       rsaenh: Properly destroy hashes created by CPCreateHash() (Valgrind).
694       ntoskrnl.exe/tests: Let CertCloseStore() delete the certificate context.
695       crypt32/tests: Fix a memory leak (Valgrind).
697 Zebediah Figura (62):
698       kernelbase: Include the null terminator in the length passed to WideCharToMultiByte() in UrlGetPartA().
699       kernelbase: Ignore URL_PARTFLAG_KEEPSCHEME when used with URL_PART_SCHEME or URL_PART_QUERY.
700       kernelbase: Ignore URL_PARTFLAG_KEEPSCHEME for file URLs.
701       kernelbase: Also parse hostnames for news schemes in UrlGetPart().
702       kernelbase: Do not initialize output params on failure in UrlGetPart().
703       wined3d: Allow up to 128 MiB of persistently mapped memory on 32-bit architectures.
704       wined3d: Keep a client reference count for the BO map pointer.
705       wined3d: Allow NOOVERWRITE maps to be accelerated on 32-bit architectures.
706       d3dx9: Do not use d3dx_effect_cleanup() in D3DXCreateEffectEx().
707       d3dx9: Separate out d3dx9_effect_init_from_dxbc().
708       d3dx9/tests: Add more tests for ID3DXEffect::CloneEffect().
709       d3dx9: Implement ID3DXEffect::CloneEffect().
710       ntdll: Use YieldProcessor() in RtlEnterCriticalSection().
711       kernelbase: Also return E_FAIL when trying to parse username, password, or port for non-Internet URLs.
712       kernelbase: Allow hostnames to contain any characters in UrlGetPart().
713       kernelbase: Allow ports to contain any characters in UrlGetPart().
714       kernelbase: Allow usernames and passwords to contain any characters in UrlGetPart().
715       kernelbase: Do not return the question mark as part of the query string from UrlGetPart().
716       wined3d: Move struct wined3d_buffer_ops to buffer.c.
717       wined3d: Pass a wined3d_range array to wined3d_context_copy_bo_address().
718       wined3d: Use wined3d_context_copy_bo_address() to upload buffer ranges.
719       wined3d: Use wined3d_context_copy_bo_address() to download buffer ranges.
720       kernelbase: Parse query strings even without a slash after the host in UrlGetPart().
721       kernelbase: Return void from parse_url().
722       kernelbase: Return E_INVALIDARG when requesting URL_PART_USERNAME and there is no username.
723       kernelbase: Return E_INVALIDARG when requesting URL_PART_PASSWORD and there is no password.
724       kernelbase: Return E_INVALIDARG when requesting URL_PART_PORT and there is no port.
725       wined3d: Pass a wined3d_device_gl pointer to wined3d_context_gl_create_bo().
726       wined3d: Protect access to the OpenGL wined3d_allocator with a critical section.
727       wined3d: Allow passing a NULL context to wined3d_device_gl_create_bo().
728       wined3d: Don't use persistent BOs from the client thread if we might need to do vertex attribute conversion.
729       kernelbase: Allow the two initial slashes to be backslashes in UrlGetPart().
730       kernelbase: Get rid of the "size" and "type" arguments to scan_url().
731       kernelbase: Allow schemes to contain uppercase characters in UrlGetPart().
732       kernelbase: Prepend the scheme even if the requested URL part is empty.
733       wined3d: Protect wined3d_chunk_gl map fields with a mutex.
734       wined3d: Move the "pin sysmem" flag to struct wined3d_resource.
735       wined3d: Do not allocate upload bufers for resources pinned to system memory.
736       wined3d: Try to allocate new OpenGL BOs from the client thread for DISCARD maps.
737       wined3d: Treat NOOVERWRITE maps on a previously discarded buffer as if they were DISCARD maps.
738       wined3d: Set a valid map pointer in adapter_gl_alloc_bo() if possible.
739       wined3d: Introduce a wined3d_texture_update_sub_resource() helper.
740       quartz/tests: Reset sink event counters when initializing the stream.
741       quartz/tests: Test the timestamps associated with new segments.
742       winegstreamer: Manually send new segment events.
743       winegstreamer: No longer queue WG_PARSER_EVENT_SEGMENT.
744       winegstreamer: Explicitly sleep in the DirectShow streaming thread after receiving EOS.
745       winegstreamer: Remove support for flushing the wg_parser object.
746       winegstreamer: Return S_FALSE from wg_parser_stream_get_event() if the stream is EOS.
747       winegstreamer: Get rid of the queue_stream_event() helper.
748       winegstreamer: Flatten wg_parser_event into a wg_parser_buffer structure.
749       wined3d: Introduce a wined3d_texture_get_bo_address() helper.
750       wined3d: Remove the now redundant "locations" parameter from wined3d_texture_get_memory().
751       wined3d: Handle WINED3D_LOCATION_CLEARED in wined3d_texture_load_location().
752       wined3d: Handle DISCARDED and CLEARED locations in wined3d_texture_get_memory().
753       wined3d: Consider WINED3D_LOCATION_CLEARED to be a CPU-accessible location.
754       wined3d: Use WINED3D_LOCATION_CLEARED for the initial location of textures.
755       wined3d: Allocate texture BOs from heap.
756       wined3d: Accelerate texture DISCARD maps as well.
757       winegstreamer: Don't unlink pads before dereferencing them.
758       winegstreamer: Do not use multiple cleanup labels in wg_transform_create().
759       wined3d: Allocate a heap memory buffer in wined3d_cs_map_upload_bo() if possible.
761 Ziqing Hui (1):
762       wininet: Support more internet time format.
765 Alexandre Julliard
766 julliard@winehq.org