winmm/tests: Add MCI_DGV_WINDOW_STATE tests.
[wine.git] / ANNOUNCE
blob1b45434d81516634e28faf87dbc6e5ab092f0886
1 The Wine development release 7.15 is now available.
3 What's new in this release:
4   - Command lists in Direct2D.
5   - RSA encryption.
6   - Initial Wow64 thunking in WIN32U.
7   - Optional support for colors in test output.
8   - Various bug fixes.
10 The source is available at:
12   https://dl.winehq.org/wine/source/7.x/wine-7.15.tar.xz
14 Binary packages for various distributions will be available from:
16   https://www.winehq.org/download
18 You will find documentation on https://www.winehq.org/documentation
20 You can also get the current source directly from the git
21 repository. Check https://www.winehq.org/git for details.
23 Wine is available thanks to the work of many people. See the file
24 AUTHORS in the distribution for the complete list.
26 ----------------------------------------------------------------
28 Bugs fixed in 7.15 (total 22):
30  - #40444  Find doesn't jump to a found item in WinSCP when editing a file
31  - #47057  Call of Cthulhu fails to completely load levels and trigger cutscenes
32  - #49461  Gridrunner Revolution: sound effects stop working after a while
33  - #49678  Lost Chronicles of Zerzura hangs on startup
34  - #49692  Multiple applications need a Media Foundation media source implementation
35  - #50131  Remothered: Tormented Fathers crashes on video loading
36  - #50546  Persona 4 Golden requires notification message XACTNOTIFICATIONTYPE_WAVEBANKPREPARED to play sounds.
37  - #50593  Sforzando Sample Player don't draw text, needs font fallback support
38  - #52448  Multiple visual novels display videos inside separate ActiveMovie window (Hoshi Ori Yume Mirai)
39  - #52534  ListView: multi select never sends LVN_ODSTATECHANGED
40  - #52601  The Settlers V: crashes when starting
41  - #52610  Memory corruption in PE build, when using FIXME in krnl386.exe __wine_vxd_open() function
42  - #52933  windows.media.speech:speech: The IAsyncInfo_Close() tests fail on Windows
43  - #52957  Invisible pop-ups text in SeaMonkey 2.53.12
44  - #53123  ListView: Ctrl+Shift+LMouse multiselect on LVS_OWNERDATA listviews erroneously sends LVN_ODSTATECHANGED
45  - #53196  foobar2000: Crashes randomly when opening items in menu bar while playing audio
46  - #53275  emule crashes with ntdll_set_exception_jmp_buf error
47  - #53364  Mouse does not move scroll bar in multiple applications (Framemaker 8, Audacity, Visio 2003)
48  - #53366  Can't compile AES-CCM support prior to GNUTLS version 3.4.0
49  - #53483  CFB implementation partially missing
50  - #53487  Keyboard input doesn't work for a multiple games (Witcher 3, Just Cause 4, Unravel Two)
51  - #53495  "HP" text does not render in Vestaria Saga Non-Visual Battles
53 ----------------------------------------------------------------
55 Changes since 7.14:
57 Akihiro Sagawa (13):
58       winmm/tests: Add tests for visibility of video window.
59       mciqtz32: Don't hide video window when stopping.
60       winmm/tests: Add tests for window style of video window.
61       winmm/tests: Add tests for dimensions of video window.
62       winmm/tests: Add tests for destination of video window.
63       mciqtz32: Correct video window behavior by creating default window.
64       mciqtz32: Fix MCI_DGV_WHERE_WINDOW behavior.
65       mciqtz32: Reset the video size when changing video destination.
66       mciqtz32: Hide the default video window when switching to another one.
67       mciqtz32: Show the default video window when switching from another one.
68       ieframe/tests: Add more IPropertyStorage read/write tests.
69       ieframe/tests: Add a test for IPropertySetStorage::Open with STGM_WRITE.
70       ieframe: Allow STGM_WRITE in IPropertyStorage::Open.
72 Alexandre Julliard (4):
73       faudio: Import upstream release 22.08.
74       mpg123: Import upstream release 1.30.2.
75       tiff: Import upstream release 4.4.0.
76       gitlab: Disable building image in forks.
78 Alistair Leslie-Hughes (9):
79       xactengine3_7: Add helper function to add entries.
80       xactengine3_7: Map SoundBank interfaces.
81       xactengine3_7: Map IXACT3Cue interfaces.
82       xactengine3_7: Map IXACT3Wave interfaces.
83       xactengine3_7: Record context for each notications.
84       xactengine3_7: Implement callback for supported messages.
85       xactengine3_7: Return error on invalid notification value.
86       sapi: Add AudioInput registry key.
87       include: Add coclass SpMMAudioEnum.
89 Angelo Haller (6):
90       comctl32/listview: Send one deselect all items notification for LVS_OWNERDATA listviews.
91       comctl32/listview: Move sending LVN_ODSTATECHANGED notifications to a function.
92       comctl32/listview: Send LVN_ODSTATECHANGED only for LVS_OWNERDATA listviews.
93       comctl32/listview: Send LVN_ODSTATECHANGED notification for LVS_OWNERDATA listview on selection changes.
94       comctl32/listview: Don't send LVN_ODSTATECHANGED for empty ranges.
95       comctl32/tests: Add more ownerdata listview tests.
97 Arkadiusz Hiler (1):
98       winebus.sys/sdl: Use the 8 absolute axes supported by DIJOYSTATE2.
100 Brendan Shanks (4):
101       ntdll: Use correct mcontext struct on macOS under Wow64.
102       wow64: Copy floating point and extended registers in copy_context_64to32.
103       ntdll: Fix floating point and extended registers not being restored under Wow64.
104       wow64cpu: Use -norelay for BTCpuSimulate.
106 Connor McAdams (2):
107       include: Add UI Automation Event ID definitions.
108       include: Add UI Automation COM client interface definitions.
110 David Gow (2):
111       quartz: Open files with FILE_SHARE_DELETE in FileSource.
112       quartz: Test: Files opened with FileSource can be deleted.
114 Dmitry Timoshkov (2):
115       ntdll/tests: Fix compilation with PSDK.
116       ntdll/tests: Add a bunch of tests for creating kernel objects with the names containing '\0'.
118 Eric Pouech (3):
119       shlwapi/tests: Use wide strings literals.
120       urlmon/tests: Don't use read as a global variable.
121       test.h: WINETEST_COLOR=auto only outputs colors to a TTY.
123 Gabriel Ivăncescu (10):
124       mshtml: Implement window.matchMedia() with MediaQueryList stub.
125       mshtml: Implement MediaQueryList's media prop.
126       mshtml: Implement MediaQueryList's matches prop.
127       mshtml: Semi-implement non-string primitive data for postMessage.
128       mshtml: Implement targetOrigin for postMessage.
129       mshtml: Forward Document's Invoke to InvokeEx.
130       mshtml: Implement window.location setter with a hook.
131       mshtml: Implement window.setTimeout with a hook.
132       mshtml: Implement document.location with a hook.
133       mshtml: Return DISP_E_MEMBERNOTFOUND when not finding member by DISPID.
135 Georg Lehmann (1):
136       winevulkan: Update to VK spec version 1.3.224.
138 Hans Leidekker (3):
139       bcrypt: Add AES CFB chaining mode support.
140       bcrypt: Add compatibility defines for AES CFB8.
141       nsiproxy.sys: Support media connect state on Linux.
143 Jacek Caban (37):
144       user32: Forward more scroll bar messages to win32u.
145       win32u: Introduce NtUserGetWindowSysSubMenu.
146       user32: Store MDI client info on client heap.
147       user32: Use win32u to get and set MDI client info.
148       user32: Use GetClientRect in EDIT_WM_ContextMenu.
149       win32u: Introduce NtUserGetChildRect.
150       user32: Remove USER_CheckNotLock.
151       win32u: Move register_desktop_class implementation from user32.
152       user32: Always use 64-bit cbWndExtra for edit control.
153       win32u: Move builtin classes registration from user32.
154       win32u: Store DPI awareness in ntuser_thread_info.
155       win32u: Store wmchar_data in ntuser_thread_info.
156       win32u: Move msg_source and recursion_count to ntuser_thread_info.
157       win32u: Store receive_flags in ntuser_thread_info.
158       user32: Don't include ntuser_private.h.
159       win32u: Use platform-independent layout for DC_ATTR.
160       win32u: Support wow64 in NtAllocateVirtualMemory calls.
161       win32u: Use platform-independent layout for ntuser_thread_info.
162       win32u: Store thread info in 64-bit TEB on wow64.
163       win32u: Use NtUserMessageCall for NtUserSpyGetMsgName.
164       ntdll: Introduce RtlSetLastWin32Error for unixlibs that additionally sets 32-bit error on wow64.
165       include: Use RtlSetLastWin32Error in server.h.
166       win32u: Use RtlSetLastWin32Error.
167       winex11: Use RtlSetLastWin32Error.
168       wineandroid: Use RtlSetLastWin32Error.
169       winemac: Use RtlSetLastWin32Error.
170       wow64win: Set last error in 32-bit TEB in wow64 thunks.
171       wow64: Directly use CPU area in Wow64KiUserCallbackDispatcher for I386_CONTEXT.
172       wow64: Preserve TEB exception frame in Wow64KiUserCallbackDispatcher.
173       wow64win: Add initial user callbacks support.
174       win32u: Use NtUserCallMessage for passing packed winproc result.
175       wow64win: Implement more user thunks.
176       wow64win: Implement more user callbacks.
177       wow64win: Handle bitmaps and pens in wow64_NtGdiExtGetObjectW.
178       wow64win: Always set output bits pointer in wow64_NtGdiCreateDIBSection.
179       wow64win: Fix error handling in wow64_NtUserGetMessage.
180       wow64win: Fix NULL msg handling in wow64_NtUserPeekMessage.
182 Nikolay Sivov (40):
183       d2d1/tests: Use test context for command list test.
184       d2d1: Add a command list object stub.
185       d2d1: Allow setting command list as a target.
186       include: Fix ID2D1CommandSink definition.
187       d2d1/commandlist: Implement basic state recording commands.
188       d2d1/commandlist: Implement clipping commands recording.
189       d2d1/commandlist: Implement Clear() command.
190       d2d1/commandlist: Implement DrawLine() command.
191       d2d1/commandlist: Implement DrawGeometry() command.
192       d2d1/commandlist: Implement DrawRectangle() command.
193       d2d1/commandlist: Implement FillGeometry() command.
194       d2d1/commandlist: Implement FillRectangle() command.
195       d2d1/commandlist: Implement SetTextRenderingParams() command.
196       d2d1/commandlist: Handle recording in RestoreDrawingState().
197       d2d1/commandlist: Implement DrawGlyphRun() command.
198       d2d1/commandlist: Implement DrawBitmap() command.
199       d2d1/commandlist: Implement FillMesh() command.
200       d2d1: Add a helper for DrawGlyphRun().
201       d2d1/commandlist: Update text rendering params on DrawGlyphRun().
202       dwrite: Fix stretch value validation in CreateTextFormat().
203       include: Add newer D2D command sink interface definitions.
204       d2d1: Implement setting primitive blend mode.
205       d2d1/commandlist: Fix primitive blend playback.
206       d2d1: Remove warning message for glyph run description.
207       dwrite: Add ff00-ffef range to the fallback configuration.
208       d2d1: Add parameter validation to FillOpacityMask().
209       d2d1/commandlist: Implement FillOpacityMask() command.
210       dwrite/fallback: Consider character size for returned mapped length.
211       dwrite/fallback: Make sure all consecutively mapped characters belong to the same mapping.
212       include: Fix ID2D1CommandSink::DrawImage() prototype.
213       d2d1/commandlist: Implement DrawImage() command.
214       d2d1/commandlist: Implement layer commands.
215       dwrite/tests: Add a helper to create analyzer instance.
216       dwrite/fallback: Add mappings for some CJK ranges.
217       mfplat: Add some attributes related to transcoding.
218       dwrite/fallback: Fill in some more fallback ranges for various scripts.
219       dwrite/fallback: Add Georgian and Armenian ranges.
220       mf: Add archive sink creation exported functions.
221       mfreadwrite/writer: Create archive sink automatically when writer is created from url/bytestream.
222       mfreadwrite/writer: Create output stream if it wasn't provided.
224 Olivier F. R. Dierick (1):
225       secur32: Define AES-CCM ciphers missing from GNUTLS before 3.4.0.
227 Paul Gofman (4):
228       winhttp: Avoid invalid memory access in netconn_resolve().
229       ntdll: Also initialize icmp_over_dgram in sock_read().
230       ntdll: Remove redundant assignment in fixup_icmp_over_dgram().
231       d3d11: Validate layout description in d3d_input_layout_create().
233 Rafał Harabień (1):
234       include: Allow printing test failure messages in bright red.
236 Robert Wilhelm (1):
237       wshom: Use signed type for ExitCode in IWshShell3::Run().
239 Rémi Bernon (46):
240       mf/tests: Add required SAR media type attributes tests.
241       mf: Return MF_E_NO_MORE_TYPE from AudioRenderer GetMediaTypeByIndex.
242       winegstreamer: Set the MF_MT_AUDIO_AVG_BYTES_PER_SECOND attribute.
243       mf: Implement SAR media type required attributes checks.
244       mf: Increase min_buffer_size to MF_MT_AUDIO_AVG_BYTES_PER_SECOND.
245       winegstreamer: Use the correct name for WMADecMediaObject DMO.
246       winex11.drv: Use a local desired_rect variable when placing displays.
247       winex11.drv: Use DM_POSITION field bit to mark placed displays.
248       winex11.drv: Update devmode dmPosition instead of new_rect.
249       winex11.drv: Use DEVMODEW instead of x11drv_display_setting.
250       winex11.drv: Iterate display settings using dmDriverExtra.
251       winex11.drv: Constify set_current_mode DEVMODEW parameter.
252       wmvcore/tests: Add more IWMReader_(Open|Start|Stop|Close) async checks.
253       winegstreamer: Move IWMReaderCallbackAdvanced *callback_advanced to a local variable.
254       winegstreamer: Leave the stream CS while waiting for a sample.
255       winegstreamer: Make IWMReader state transitions asynchronous.
256       gitlab: Move build steps to the build-all script.
257       gitlab: Build every commit in a merge request.
258       mf/tests: Rotate test videos 90° to better show vertical flips.
259       mf/tests: Add video processor conversion tests.
260       mf/tests: Add topology loader tests with video formats.
261       winegstreamer: Better implement Video Processor MFT.
262       mf: Use the MFT_CATEGORY_VIDEO_PROCESSOR category for converters.
263       mf: Propagate missing attributes to downstream media types.
264       win32u: Ignore DM_POSITION mode fields for available modes.
265       winemac.drv: Split best display mode lookup to a separate helper.
266       wineandroid.drv: Return early on EnumDisplaySettingsEx error.
267       win32u: Split EnumDisplaySettingsEx into CurrentDisplaySettings entry.
268       wineandroid.drv: Add missing DM_DISPLAYORIENTATION | DM_POSITION flags.
269       winemac.drv: Avoid setting DM_POSITION on enumerated modes.
270       server: Avoid reallocating rawinput device array with zero size.
271       win32u: Avoid reallocating rawinput device array with zero size.
272       win32u: Send the total number of registered devices to the server.
273       win32u: Avoid invalid access when registered device alloc failed. (Coverity).
274       wmvcore/tests: Add some IWMOutputMediaProps_SetMediaType tests.
275       winegstreamer: Implement IWMOutputMediaProps_SetMediaType.
276       qasf: Implement ASF Reader filter pin_query_accept.
277       qasf: Implement ASF Reader filter pin_get_media_type.
278       qasf: Implement ASF Reader filter pin DecideBufferSize.
279       winegstreamer: Use a wg_audio_format switch rather than array indexes.
280       winegstreamer: Use a wg_video_format switch rather than array indexes.
281       qasf: Wait for IWMReader_Open to complete in ASF Reader Load.
282       qasf: Implement ASF Reader filter init_stream and cleanup_stream.
283       qasf: Start/stop the WM reader in asf_reader_init/cleanup_stream.
284       qasf: Configure WMReader stream format in asf_reader_init_stream.
285       qasf: Configure WMReader stream selection in asf_reader_init_stream.
287 Santino Mazza (4):
288       ncrypt/tests: Test for NCryptEncrypt with RSA and PKCS1 padding.
289       bcrypt/tests: Test for BCryptEncrypt with RSA keys.
290       bcrypt: Initial RSA encryption implementation.
291       ncrypt: Initial implementation for NCryptEncrypt.
293 Shaun Ren (10):
294       webservices: Handle in/out parameters properly in WsCall.
295       webservices: Write the correct headers when a request message is addressed.
296       webservices: Implement error strings.
297       webservices: Support faults in error.
298       webservices: Add support for reading WS_FAULT values.
299       webservices: Detect when a message contains a fault in read_envelope_start.
300       webservices: Fill in type description for WS_FAULT_TYPE if necessary in WsReadBody.
301       webservices/tests: Add a fault reading test for WsReadBody.
302       webservices: Address the request message in WsCall.
303       webservices: Add support for receiving fault messages.
305 Stefan Dösinger (2):
306       ddraw: Don't account video memory for sysmem surfaces' draw textures.
307       ddraw/tests: Add some video memory accounting tests.
309 Tim Clem (3):
310       ntdll: Fix leak of mach_thread_self port.
311       ntdll: Fix leak of mach_host_self port.
312       kernelbase: Don't assume the length of the process image name.
314 Zebediah Figura (14):
315       wined3d: Factor out mode_matches_filter().
316       wined3d: Build a list of wined3d_display_mode structures in wined3d_output_get_mode[_count]().
317       d3d9: Cache the output mode list.
318       d3d8: Cache the output mode list.
319       dxgi: Build the device list only once in dxgi_output_get_display_mode_list().
320       wined3d: Build the device list only once in wined3d_output_find_closest_matching_mode().
321       include: Print "succeeded inside todo block" messages in colour.
322       include: Print "test marked todo" messages in colour.
323       include: Print "test skipped" messages in colour.
324       include: Print "test succeeded" messages in colour.
325       winhttp/tests: Add some more tests for newline handling in custom header parsing.
326       winhttp: Allow custom headers to be separated by any sequence of \r and \n.
327       winhttp: Pass a length to parse_header().
328       winhttp: Don't make a copy of the string in add_request_headers().
330 Zhiyi Zhang (4):
331       include: Add IMediaParams definitions.
332       dsdmo: Add IMediaParams stub interface.
333       winegstreamer: Always check the return value from mf_media_type_from_wg_format().
334       winegstreamer: Trace mf_media_type_from_wg_format_{audio|video}().