user32: Add partial stub for GetDpiForMonitorInternal().
[wine.git] / ANNOUNCE
blob107af40d22648a65fe4b0a40168ba8fe0364ae6e
1 The Wine development release 3.6 is now available.
3 What's new in this release (see below for details):
4   - Support for PNG format icons.
5   - Support for 1D textures.
6   - More infrastructure for high DPI support.
7   - OLE data cache improvements.
8   - Various bug fixes.
10 The source is available from the following locations:
12   https://dl.winehq.org/wine/source/3.x/wine-3.6.tar.xz
13   http://mirrors.ibiblio.org/wine/source/3.x/wine-3.6.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 3.6 (total 53):
31   19241  winemenubuilder crashes during extraction of high-res Windows Vista+ 256x256 PNG compressed icon resources
32   24011  Trackmania Nations Forever graphics test does not work
33   27151  Mafia Vizheneo (Мафия) bug
34   28520  Surface flips ignore vsync flags in ddraw (Claw, Diablo II, Imperium Galactica II, Incoming, Panzer General II, Unreal)
35   29999  Bloodrayne 2: text in the menus misplaced
36   30103  Static controls with bitmap do not display correct background.
37   33312  QQ International 1.6 can't load Bulletin
38   38147  Batman: Arkham Asylum (non-steam) Demo launcher (.NET 2.0 app) missing text
39   38496  Greek Holy Bible 13.0 crashes with System.TimeZoneNotFoundException when using Wine-Mono
40   38959  Microsoft .NET Framework 4.6 web installer fails silently (unable to load series of compressed PNG icon images from ICO files)
41   39011  Sierra Chart hangs when drawing polygon fill line type: gdi32.Polygon()
42   39452  mpr.WNetGetUniversalName() return value (causes Intel MPI to fail)
43   40156  AutoWikiBrowser database scanner fails with "no access to memory location"
44   40305  AutoWikiBrowser 5.8 (.NET app) needs riched20 ITextRange::ScrollIntoView
45   40976  Multiple games need d3d11_device_CreateTexture1D implementation
46   41279  Sonos Desktop Controller 6.x (.NET 4.x app) crashes with System.NotImplementedException (needs hnetcfg INetFwPolicy2::get_Rules)
47   41377  Windows 10 DISM fails to find its resources (kernel32 SetThreadUILanguage must return non-zero/best fit language identifier if zero is passed)
48   41398  Starcraft 2 Editor: Crashes when Battle.net login dialog is presented
49   42267  Rogue-Killer installer crashes on unimplemented function ntdll.dll._aulldvrm
50   42446  Native Instruments 'Native Access' 1.1.x fails to start, reports 'You cannot start Native Access from the mounted disk'
51   43051  Rise of the Tomb Raider needs unimplemented function msvcr110.dll.__crtCapturePreviousContext
52   43096  rtpMidi cannot install.
53   43468  The game StarCraft2 hang when I click on the "exit game" button. I have to kill the process.
54   43831  Cuphead (Steam) crashes on startup (needs setupapi.CM_Get_Parent stub to return CR_NO_SUCH_DEVNODE)
55   43863  Rollcage Redux needs correct include handling in D3DXCreateEffectFromFileExW()
56   43872  The Witcher 3: some monsters are completely invisible
57   43930  iCopy 1.6.x (.NET 2.0 app) crashes on startup (IWiaDevMgr::SelectDeviceDlg DeviceID pointer parameter can be NULL, needs be declared 'unique' for RPC marshalling)
58   43994  page fault when running droid4x-0-9-0.exe
59   44001  Empire of the Ants (french version "les fourmis") - game crashed
60   44135  Olive Tree Bible Software BibleStudySetup_6.0.23.exe fails to install
61   44404  Several .Net apps (e.g. Remembear) throw errors/crash,caused by msctf stubs TextStoreACPSink_{OnTextChange,OnSelectionChange,OnLayoutChange}
62   44500  BattlEye 'BEDaisy' kernel service crashes on unimplemented fltmgr.sys functions (FltRegisterFilter, FltStartFiltering, FltUnregisterFilter)
63   44530  64-bit Sentinel HASP hardlock.sys kernel driver tries to access to DR7 (not handled in ntoskrnl emulate_instruction)
64   44580  Outlook 2007 cannot read MSG files anymore
65   44645  Black border around tray icon
66   44680  Support for DTM_GETIDEALSIZE not implemented
67   44692  64-bit .NET apps crash on startup with Wine-Mono (Medieval Engineers, Dashware 1.9)
68   44818  ntdll.NtClose (kernel32.CloseHandle) should throw invalid handle exception (EXCEPTION_INVALID_HANDLE) for invalid handles when run under debugger
69   44837  BattlEye 'BEDaisy' kernel service fails in driver entry point due to missing 'ntoskrnl.exe.Ps{Acquire,Release}ProcessExitSynchronization'
70   44857  Visio 2003 - property dialogs buttons appear broken
71   44864  Incoming crashes after the intro video
72   44874  Phonetools 9.x crashes on unimplemented function KERNEL32.dll.RequestDeviceWakeup
73   44881  MidRadio Player doesn't send SysEx messages to the MIDI device.
74   44904  winebus blocks auto start up of scheduler service
75   44906  BattlEye 'BEDaisy' kernel service fails in driver entry point due to missing 'ntoskrnl.exe.ExfUnblockPushLock'
76   44907  BattlEye 'BEDaisy' kernel service crashes on unimplemented function 'fltmgr.sys.FltGetRoutineAddress'
77   44908  BattlEye 'BEDaisy' kernel service wants 'ntoskrnl.exe.ObGetObjectType'
78   44910  BattlEye 'BEDaisy' kernel service fails in driver entry point due to 'ntoskrnl.exe.ObReferenceObjectByHandle' stub (needs STATUS_SUCCESS)
79   44911  BattlEye 'BEDaisy' kernel service crashes on unimplemented function ntoskrnl.exe.PsGetProcessId
80   44923  Failing kernel driver services can stall WINEPREFIX bootstrapping/startup for a considerable time when configured as autostart
81   44924  StarForce v3 kernel drivers need ntoskrnl.IoCreateSynchronizationEvent to return a non-NULL handle
82   44932  limited list of available printer's paper/page size
83   44944  Adobe Premiere Elements 14 fails to install: ERROR: Third party payload installer pxengine5_08_13a.exe failed with exit code: -1
85 ----------------------------------------------------------------
87 Changes since 3.5:
89 Akihiro Sagawa (4):
90       winmm/tests: Add MIDI System Exclusive message tests.
91       midimap: Open lower devices when opening MIDI Mapper.
92       winmm/tests: Add more MIDI System Exclusive message tests.
93       winmm: Fix MEVT_LONGMSG handling in MIDI stream.
95 Alex Henrie (1):
96       ping: Distinguish between timeouts and other failures.
98 Alexander Morozov (1):
99       ntoskrnl.exe: Add stubs for ExAcquireFastMutexUnsafe and ExReleaseFastMutexUnsafe.
101 Alexandre Julliard (29):
102       user32: Support forcing the DPI awareness through the image file execution options.
103       user32: Implement Get/SetThreadDpiAwarenessContext().
104       user32: Partially implement GetWindowDpiAwarenessContext().
105       winegcc: Set page alignment to 4096 in all cases.
106       ntdll: Add support for loading IL-only dlls.
107       ntoskrnl: Add emulation of CRn and DRn registers on x86-64.
108       user32: Try to load libpng only once.
109       user32: Ignore PNG icons instead of failing if we don't have libpng.
110       user32: Add support for loading 256x256 icons.
111       user32/tests: Use the function pointer for GetWindowDpiAwarenessContext.
112       gdi32: Pre-allocate the points array in CreatePolyPolygonRgn.
113       gdi32: Build the region object directly instead of making a copy in CreatePolyPolygonRgn.
114       gdi32: Add a helper function to retrieve the DIB rectangle.
115       gdi32: Clip the computed region to the DIB rectangle in PolyPolygon().
116       winex11: Allow embedded windows to use an alpha channel with their surface.
117       user32: Implement Get/SetProcessDpiAwarenessInternal().
118       user32: Add more allowed values in GetAwarenessFromDpiAwarenessContext() and IsValidDpiAwarenessContext().
119       user32: Support returning to the process default in SetThreadDpiAwarenessContext().
120       shcore: Implement Get/SetProcessDpiAwareness().
121       user32/tests: Add tests for GetDpiForSystem().
122       user32: Get the system DPI from the registry instead of from GDI.
123       gdi32: Take DPI awareness into account for the LOGPIXELSX/Y device caps.
124       gdi32: Scale stock fonts based on the DPI awareness.
125       user32/tests: Cleanup helper macros.
126       user32/tests: Remove Win9x workarounds.
127       user32: Included padded border into the border width in NONCLIENTMETRICS.
128       user32: Fix position of the small icon in the caption bar.
129       user32: Implement SystemParametersInfoForDpi().
130       user32: Implement GetSystemMetricsForDpi().
132 Alistair Leslie-Hughes (16):
133       include/ddk: Add fltkernel.h.
134       fltmgr.sys: Add FltRegisterFilter stub.
135       fltmgr.sys: Add FltStartFiltering stub.
136       fltmgr.sys: Add FltUnregisterFilter stub.
137       wininet: Add support for FormatMessage.
138       ntoskrnl: Add PsAcquireProcessExitSynchronization/PsReleaseProcessExitSynchronization stub.
139       ntoskrnl: Add ExfUnblockPushLock stub.
140       ntoskrnl: Add PsGetProcessId stub.
141       ntoskrnl: Add ObGetObjectType stub.
142       winedevice: Improve error handling when a driver fails to load.
143       wpcap: Implement pcap_dump_open and pcap_dump.
144       d3d11: Add support for D3D11_FEATURE_D3D11_OPTIONS1 in CheckFeatureSupport().
145       d3d11: Add support for D3D11_FEATURE_D3D11_OPTIONS in CheckFeatureSupport().
146       msvcrtd: Forward operator_new_dbg to msvcrt.
147       maintainers: Update Staging branch.
148       fltmgr.sys: Implement FltGetRoutineAddress.
150 Andrey Gusev (1):
151       po: Update Ukrainian translation.
153 André Hentschel (3):
154       hlink/tests: Fix save data test on newer Windows 10.
155       progman: Fix warning in PUT_SHORT macro (clang).
156       msvcrt: Don't increment variables both in the loop header and body (clang).
158 Anton Romanov (2):
159       wmp: Add OPEN/PLAY state change notifications.
160       wmp: Add media completion notifications.
162 Aurimas Fišeras (1):
163       po: Update Lithuanian translation.
165 Dan Bassi (1):
166       comctl32/treeview: Improve item text change detection.
168 Dmitry Timoshkov (19):
169       taskschd: IRegistrationInfo::put_Description() should accept NULL input.
170       taskschd: IRegistrationInfo::put_Author() should accept NULL input.
171       taskschd: IRegistrationInfo::put_Version() should accept NULL input.
172       taskschd: IRegistrationInfo::put_Date() should accept NULL input.
173       taskschd: IRegistrationInfo::put_Documentation() should accept NULL input.
174       taskschd: IRegistrationInfo::put_URI() should accept NULL input.
175       taskschd: IRegistrationInfo::put_Source() should accept NULL input.
176       mstask: Store comment using IRegistrationInfo.
177       mstask: Store creator using IRegistrationInfo.
178       user32: Add support for PNG icons.
179       winspool.drv: Add A0, A1 and A2 paper sizes to generic.ppd.
180       schedsvc: Add ATSvc server side stubs.
181       schedsvc/tests: Add ATSvc RPC API tests.
182       netapi32: Implement NetScheduleJobAdd.
183       netapi32: Implement NetScheduleJobDel.
184       netapi32: Implement NetScheduleJobEnum.
185       netapi32: Implement NetScheduleJobGetInfo.
186       netapi32: Properly implement NetApiBufferFree.
187       services: Add a 3000 ms timeout to StartService.
189 Gijs Vermeulen (2):
190       ntoskrnl.exe: Improve ObReferenceObjectByHandle stub.
191       ntoskrnl.exe: Improve IoCreateSynchronizationEvent stub.
193 Giovanni Mascellani (1):
194       d2d1: Fix outline join drawing.
196 Hans Leidekker (6):
197       kernel32/tests: Fix typos.
198       kernel32: Implement GetNamedPipeClient/ServerProcessId.
199       kernel32: Add stub implementations of GetNamedPipeClient/ServerSessionId.
200       wtsapi32: Implement WTSFreeMemory.
201       wtsapi32: Improve the stub for WTSQuerySessionInformationW.
202       crypt32: Return success from the CERT_STORE_CTRL_NOTIFY_CHANGE stub.
204 Henri Verbeet (4):
205       wined3d: Get rid of the "binding" field from struct blt_info.
206       wined3d: Get rid of the "tex_type" field from struct blt_info.
207       wined3d: Select the correct texture level in draw_textured_quad().
208       wined3d: Invalidate the texture's U/V address modes in draw_textured_quad().
210 Huw D. M. Davies (1):
211       user32: Avoid using the comma operator in a while condition.
213 Ivan Kalvachev (1):
214       kernel32: Add DECL_HOTPATCH to OutputDebugString functions.
216 Jacek Caban (10):
217       windowscodecs: Store bitmap patterns in bitmap decoder info object.
218       windowscodecs: Directly use patterns stored in component info object in IWICBitmapDecoderInfo::MatchesPattern implementation.
219       windowscodecs: Store container formats in metadata component info object.
220       windowscodecs: Store metadata container patterns in meatadata reader info object.
221       windowscodecs: Directly use patterns stored in component info object in IWICMetadataReaderInfo::MatchesPattern implementation.
222       jscript: Allow using reserved words as identifiers in ES5 mode.
223       advapi32: Initialize svcctl_GetNotifyResults output parameter to NULL.
224       jscript: Properly support overloaded values in to_int32.
225       jscript: Properly parse large hexadecimal listerals.
226       jscript: Added Date.prototype.toISOString implementation.
228 Jactry Zeng (3):
229       riched20/tests: Add helpers for simplifying tests of ITextRange and ITextSelection.
230       riched20: Implement {ITextRange,ITextSelection}::MoveEnd.
231       riched20: Get ITextRange interface from QueryInterface instead of casting.
233 Józef Kucia (13):
234       winevulkan: Generate code for extension name and version constants.
235       winex11: Use VK_KHR_WIN32_SURFACE_* constants.
236       winevulkan: Support VK_NO_PROTOTYPES in our Vulkan header.
237       winevulkan: Add function pointer typedefs to Vulkan header.
238       winevulkan: Get rid of unused "phys_dev" field from VkDevice_T.
239       winevulkan: Pack structures better.
240       winevulkan: Fix typos.
241       wined3d: Require BPTC compression for SM5.
242       wined3d: Do not allocate system memory for resources by default.
243       d3d11/tests: Add additional tests for shader input/output matching.
244       d3d10core/tests: Make it possible to run test with different swapchain size.
245       d3d10core/tests: Add test for depth bias.
246       user32: Add stub for EnableMouseInPointer().
248 Lauri Kenttä (1):
249       po: Update Finnish translation.
251 Louis Lenders (9):
252       kernel32/tests: Add simple test for SetThreadUILanguage.
253       kernel32: Improve stub for SetThreadUILanguage.
254       kernel32: Add stub for RequestDeviceWakeup.
255       msctf: Return S_OK in TextStoreACPSink_OnTextChange.
256       msctf: Return S_OK in TextStoreACPSink_OnSelectionChange.
257       msctf: Return S_OK in TextStoreACPSink_OnLayoutChange.
258       iexplore/iexplore.inf: Add svcVersion reg key and update to win7.
259       wine.inf: Create catroot directory.
260       srclient: Add new stub dll.
262 Matteo Bruni (8):
263       wined3d: Disable sRGB writes in context_apply_blit_state().
264       wined3d: Move draw_textured_quad() to context.c.
265       wined3d: Introduce a function for drawing shaded quads.
266       wined3d: Introduce a GLSL-based blitter.
267       d3d9: Don't store currently used textures in the d3d9 device.
268       ddraw: Return error on NULL viewport in {Get, Set}Viewport[2]().
269       ddraw: Forbid setting viewport extents larger than the render target in SetViewport2().
270       ddraw/tests: Remove a few unnecessary render state settings.
272 Michael Stefaniuc (6):
273       wsdapi/tests: Remove redundant NULL checks before heap_free().
274       wsdapi: Remove redundant NULL checks before heap_free().
275       user32: Remove an ARRAY_SIZE()-like macro.
276       user32: Use the available ARRAY_SIZE() macro.
277       shell32: Remove redundant NULL checks before heap_free().
278       winex11.drv: Print a debugstr and not the pointer to it.
280 Nikolay Sivov (14):
281       shell32: Fix destination buffer size (Coverity).
282       comdlg32: Add some traces for custom Places (Coverity).
283       comdlg32: Fix some leaks on error paths (Coverity).
284       comctl32/button: Keep control style.
285       wincodecs: Add a helper for GetDecoderInfo().
286       user32/static: Use correct brush color for centered image background.
287       comctl32/static: Remove some misleading comments.
288       comctl32/tests: Remove useless trace() message.
289       user32/tests: Remove menu tests workarounds.
290       user32/tests: Remove the rest of skips in menu tests.
291       shell32/tests: Remove some tests workarounds.
292       po: Update Russian translation.
293       d3d11/tests: Add a test for setting multiple viewports.
294       d3d10core/tests: Add a test for setting multiple viewports.
296 Owen Rudge (3):
297       wsdapi/tests: Add test for Hello message Any header element.
298       wsdapi: Return HRESULT from add_child_element and create_soap_header_xml_elements.
299       wsdapi: Add support for custom elements in SOAP header.
301 Piotr Caban (4):
302       msvcr110: Add __crtCaptureCurrentContext implementation.
303       msvcr110: Add __crtCapturePreviousContext implementation.
304       msvcrt: Support "China" country name in setlocale function.
305       dwrite: Fix features dumping in analyzer_dump_user_features.
307 Sebastian Lackner (2):
308       ntdll: Throw exception if invalid handle is passed to NtClose and debugger enabled.
309       rpcrt4: Hold CS while iterating through protseqs list.
311 Sergio Gómez Del Real (6):
312       kernel32/tests: Add tests for NormalizeString API function.
313       ole32: Add support for loading enhmetafiles from presentation and contents streams to data cache.
314       ole32: Add support for loading dibs from presentation streams to data cache.
315       ole32: Add support for loading wmf from contents streams to data cache.
316       ole32: Reset CLSID of datacache so that automatic entry is re-created on load.
317       ole32/tests: Add tests for loading from presentation streams to data cache.
319 Stefan Dösinger (2):
320       ddraw: Fix D3DEXECUTEDATA.dwSize handling.
321       ddraw: Don't read past the end of the executebuffer.
323 Sven Hesse (8):
324       d3d11: Implement d3d11_device_CreateTexture1D().
325       d3d11: Implement d3d10_device_CreateTexture1D().
326       wined3d: Implement support for 1D textures.
327       d3d11: Create wined3d textures for 1D textures.
328       d3d11: Create DXGI surfaces for 1D textures.
329       d3d11: Implement d3d10_texture1d_GetDesc().
330       d3d11: Implement d3d10_texture1d_Unmap().
331       d3d11: Implement d3d10_texture1d_Map().
333 Tim Wanders (1):
334       setupapi: Return CR_NO_SUCH_DEVNODE from CM_Get_Parent stub.
336 Zebediah Figura (22):
337       dmusic: Call interface methods properly.
338       dsound/tests: Call interface methods properly.
339       quartz: Call interface methods properly.
340       devenum: Register waveOut devices as codec devices.
341       devenum: Register waveIn devices as codec devices.
342       devenum: Register midiOut devices as codec devices.
343       devenum: Register VFW codecs as codec devices.
344       ntdll: Implement _alldvrm() and _aulldvrm().
345       dmime: Call interface methods properly.
346       dsound: Call interface methods properly.
347       ole32: Always grab a reference to apt in CoGetClassObject().
348       ole32: Add a helper for grabbing the current apartment or MTA.
349       ole32: Allow more functions to use the implicit MTA.
350       ole32: Report the implicit MTA in CoGetApartmentType().
351       ole32/tests: Test CoWaitForMultipleHandles() in an uninitialized or MTA apartment.
352       ole32: Allow unmarshalling objects into an implicit MTA.
353       ole32: Allow marshalling objects from an implicit MTA.
354       widl: Generate correct alignment for encapsulated union tags.
355       rpcrt4: Dereference interface pointers in union arms.
356       rpcrt4: We don't need to marshal type 0.
357       widl: Size of an encapsulated union doesn't include the tag.
358       ole32: Fix conditions in HGLOBAL_User*().
360 Zhiyi Zhang (3):
361       comctl32/button: Remove style checking when handling BM_SETIMAGE.
362       comctl32/button: Implement BCM_{GET,SET}IMAGELIST message.
363       comctl32/button: Implement BCM_{GET,SET}TEXTMARGIN message.
366 Alexandre Julliard
367 julliard@winehq.org