Release 2.18.
[wine.git] / ANNOUNCE
blobdd2229dd92b6849510d8879e5f7390197ee4d3ba
1 The Wine development release 2.18 is now available.
3 What's new in this release (see below for details):
4   - Radial gradients in Direct2D.
5   - Asynchronous message support in WebServices.
6   - Virtual memory write watches improvements.
7   - FreeType 2.8.1 compatibility fixes.
8   - Various bug fixes.
10 The source is available from the following locations:
12   http://dl.winehq.org/wine/source/2.x/wine-2.18.tar.xz
13   http://mirrors.ibiblio.org/wine/source/2.x/wine-2.18.tar.xz
15 Binary packages for various distributions will be available from:
17   http://www.winehq.org/download
19 You will find documentation on http://www.winehq.org/documentation
21 You can also get the current source directly from the git
22 repository. Check http://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 2.18 (total 22):
31   24281  Mafia 2 to slow to play
32   36359  valgrind shows a couple possible leaks in dsound/tests/dsound.c
33   37160  If D3D_DISABLE_9EX is defined, d3d9.h can't be compiled
34   37321  foobar2000 'Scheduler' plugin crashes on unimplemented function shell32.dll.ShellExec_RunDLLW
35   37418  Unable to paste images from linux clipboard to Wine apps workspace (affects Photoshop, Powerpoint etc.)
36   41380  Xenia emulator don't run (needs _register_thread_local_exe_atexit_callback implementation)
37   42154  Multiple games crash with built-in xinput (Deus Ex: Human Revolution, Thief (2014), Tomb Raider (2013), Bejeweled 3)
38   42715  Cxbx (Xbox emulator) doesn`t start (wine: Invalid address)
39   42983  Abwrite crashes with exception 0x40000015
40   43324  Beamng.drive requires msvcr120.dll.vsscanf
41   43326  Uplay (July 2017) needs dwmapi.DwmSetIconicLivePreviewBitmap
42   43453  Magic Online  (Magic The Gathering: Online) Crashes due to race condition in secur32
43   43487  Magic Online  (Magic The Gathering: Online) Crashes in dwrite
44   43549  Wickr 4.0.5: Crashes upon run
45   43699  Blackscreen in visual novel Hanahira
46   43701  Half-Life 2 (Counter-Strike:Source, Day of Defeat:Source) crash on start
47   43707  [GdiPlus] HatchStyle is incorrectly named in Wine. Should be GpHatchStyle
48   43714  ImageMagick crashes with msvcr120.dll._vfprintf_l
49   43715  Many applications (winecfg, ...) crash on startup with freetype 2.8.1
50   43716  freetype 2.8.1 breaks Wine build during font conversion with sfnt2fon
51   43774  Chromium-based browser engine (CEFv3) used by several games randomly crashes on shutdown (World of Warships 0.6.x)
52   43779  In ole32/storage32.c , miss check for the result of HeapAlloc
54 ----------------------------------------------------------------
56 Changes since 2.17:
58 Alex Henrie (5):
59       msvcrt: Set the correct error number in pow(f).
60       advapi32: Add stub for LsaLookupPrivilegeName.
61       include: Add D3D_DISABLE_9EX checks to d3d9.h.
62       shell32: Implement ShellExec_RunDLL.
63       ntdll: Add stub for RtlIpv4StringToAddressW.
65 Alexandre Julliard (32):
66       winebuild: Put the thunk hint/name in FirstThunk too instead of zero.
67       libwine: Also apply the load delta to the FirstThunk table.
68       server: Don't return debug registers unless explicitly requested.
69       kernel32/tests: Add tests for the register values at process start.
70       ntdll: Store the kernel32 process entry point in a global variable.
71       ntdll: Don't clear the last page of the initial stack.
72       ntdll: Add support for setting a platform-specific initial context.
73       ntdll: Set the initial process context on i386.
74       ntdll: Set the initial process context on x86_64.
75       ntdll: Suspend the process before attaching dlls, using the process initial context.
76       kernel32/tests: Add some more tests for write watches.
77       ws2_32/tests: Add some tests for write watches.
78       ntdll: Remove some unnecessary parameters in helper functions.
79       ntdll: Handle stack faults without fetching the view pointer.
80       ntdll: Handle pages faults without fetching the view pointer when possible.
81       ntdll: Add helper functions for verifying write access to a memory range.
82       ntdll: Add a helper to lock the user output buffer during a server call.
83       ntdll: Add helpers to lock the user output buffer during file reads.
84       server: Always make pipes non-blocking.
85       kernel32/tests: Fix some confusing WRITECOPY tests.
86       kernel32/tests: Add more WRITECOPY tests.
87       server: Keep track of mapped memory views.
88       server: Make the memory ranges structure into a proper object.
89       server: Access the list of committed ranges directly from the mapped view.
90       server: Store the mapped file descriptor in the memory view.
91       server: Implement NtAreMappedFilesTheSame functionality on the server side.
92       server: Remove no longer used is_same_file() function.
93       server: No longer store the mapping object in the dll structure.
94       ntdll: No longer store the mapping handle with the view.
95       dwmapi: Update the spec file.
96       ntdll: Support loading binaries that start inside the DOS area.
97       README: Remove references to removed Wiki pages.
99 Alistair Leslie-Hughes (6):
100       qedit/tests: Add test for the IAMTimelineGroup interface.
101       include: Add uianimation.idl.
102       msvcrt: Implement clearerr_s.
103       hnetcfg: Implement INetFwPolicy2 get_Rules.
104       ole32: Add pointer check.
105       advapi32/tests: Added GetTokenInformation TokenLogonSid test.
107 Andrew Eikum (2):
108       wineandroid: Create OpenSL outputmix object globally.
109       wineandroid: Don't use deprecated SLDataFormat_PCM struct.
111 Andrey Gusev (2):
112       api-ms-win-mm-joystick-l1-1-0: Add dll.
113       dwmapi: Add DwmSetIconicLivePreviewBitmap and DwmSetIconicThumbnail stubs.
115 Anton Romanov (2):
116       secur32: Fix race between schan_(Encrypt|Decrypt)Message.
117       secur32: Protect SSLRead/Write with cs on OSX.
119 Dmitry Timoshkov (4):
120       windowscodecs: Add support for palette image formats to PNG encoder.
121       windowscodecs/tests: Add some tests for encoding 1bpp/8bpp images with a palette.
122       ole32: Add a trace to IDataObject::GetData.
123       ole32: Trace clsid in IStorage::SetClass.
125 Fabian Maurer (16):
126       strmiids: Add evr interface GUIDS.
127       mfuuid: Add library.
128       comctl32/taskdialog: Initial support for callback procedure.
129       api-ms-win-core-processtopology-obsolete-l1-1-0: Add dll.
130       api-ms-win-core-wow64-l1-1-1: Add dll.
131       api-ms-win-core-errorhandling-l1-1-3: Add dll.
132       api-ms-win-core-file-l2-1-2: Add dll.
133       api-ms-win-core-version-l1-1-1: Add dll.
134       api-ms-win-ntuser-rectangle-l1-1-0: Add dll.
135       evr/tests: Add tests.
136       propsys: Added PropVariantToBoolean with some tests.
137       evr: Add COM classfactory.
138       evr: Add EnhancedVideoRenderer coclass.
139       evr/tests: Run the tests with todo_wine instead of skipping them.
140       shell32/tests: Fix typo.
141       dx8vb: Add stub dll.
143 Gijs Vermeulen (1):
144       msvcrt: Add _vfprintf_l.
146 Hans Leidekker (8):
147       msi: Pass correct length to GetDateFormatW.
148       webservices: Add traces.
149       webservices: Use separate dictionaries for sending and receiving messages.
150       webservices: Read the string table in all sized envelopes.
151       webservices: Add asynchronous support for WsReceiveMessage.
152       webservices/tests: Add tests for asynchronous WsReceiveMessage.
153       webservices: Support more text types in is_empty_text_node.
154       webservices: Implement WS_REPEATING_ELEMENT_CHOICE_FIELD_MAPPING in the reader.
156 Henri Verbeet (23):
157       include: Convert dxgitype.h to IDL.
158       include: Convert dcommon.h to IDL.
159       include: Convert dxgiformat.h to IDL.
160       d2d1/tests: Introduce get_surface_readback().
161       d2d1/tests: Add some bitmap brush tests for skew transformations and transformed geometry.
162       d2d1: Unify the various brush pixel shaders.
163       d2d1: Unify the outline and fill pixel shaders.
164       d2d1: Use the "world" position instead of the render target position in the pixel shader.
165       d2d1: Implement d2d_linear_gradient_brush_SetOpacity().
166       d2d1: Implement d2d_linear_gradient_brush_GetOpacity().
167       d2d1: Create shader resource views for gradient stop collections.
168       d2d1: Implement linear gradient brushes.
169       d2d1: Implement d2d_d3d_render_target_CreateRadialGradientBrush().
170       d2d1: Implement d2d_radial_gradient_brush_GetCenter().
171       d2d1: Implement d2d_radial_gradient_brush_SetCenter().
172       d2d1: Implement d2d_radial_gradient_brush_GetGradientOriginOffset().
173       d2d1: Implement d2d_radial_gradient_brush_SetGradientOriginOffset().
174       d2d1: Implement d2d_radial_gradient_brush_GetGradientStopCollection().
175       d2d1: Implement d2d_radial_gradient_brush_GetRadiusX().
176       d2d1: Implement d2d_radial_gradient_brush_GetRadiusY().
177       d2d1: Implement d2d_radial_gradient_brush_SetRadiusX().
178       d2d1: Implement d2d_radial_gradient_brush_SetRadiusY().
179       d2d1: Implement radial gradient brushes.
181 Hugh Bellamy (3):
182       gdiplus: Fix validation of HatchStyle in GdipCreateHatchBrush.
183       gdiplus: Define GpHatchStyle.
184       gdiplus: Add GdipCreateLineBrushFromRectWithAngle tests.
186 Hugh McMaster (21):
187       reg/tests: Use a helper function to create registry keys.
188       reg/tests: Use a helper function to add registry values.
189       reg/tests: Use a helper function to write registry files.
190       reg/tests: Combine and rename the test_import_*str functions.
191       reg/tests: Test the placement of the overwrite file flag [/y].
192       reg/tests: Compare registry export data with expected data.
193       regedit/tests: Use a helper function to write registry files.
194       regedit/tests: Combine and rename the r_exec_import_*str functions.
195       regedit: Export Unicode registry files by default.
196       reg/tests: Test registry export with a simple data structure.
197       reg/tests: Test registry export with a complex data structure.
198       reg/tests: Test registry export against order of data creation.
199       reg/tests: Use a helper function to delete registry values.
200       reg/tests: Use a helper function to delete registry keys.
201       regedit/tests: Use a helper function to delete registry keys.
202       regedit/tests: Test registry export with an empty key.
203       regedit/tests: Test registry export with a simple data structure.
204       regedit/tests: Test registry export with a complex data structure.
205       regedit/tests: Test registry export against order of data creation.
206       regedit/tests: Use a helper function to delete registry values.
207       reg/tests: Use todo_wine_if in the registry export tests.
209 Huw D. M. Davies (16):
210       include: Add sapi.idl.
211       include: Add sapiddk.idl.
212       include: Add sperror.h.
213       sapi: Add a stub dll.
214       sapi: Register the typelib.
215       sapi: Register the classes from sapiddk.idl that would otherwise not get registered.
216       sapi: Create the Voices registry key.
217       sapi: Add a stub SpDataKey object implementation.
218       sapi: Implement SpDataKey::SetKey().
219       sapi: Add a stub SpObjectTokenEnum object implementation.
220       sapi: Implement SpObjectTokenEnum::SetAttribs().
221       sapi: Implement SpObjectTokenEnum::GetCount().
222       sapi: Add a partial implementation of SpObjectTokenEnum::Next().
223       sapi: Add a stub SpObjectTokenCategory object implementation.
224       sapi: Implement SpObjectTokenCategory::SetId().
225       sapi: Add a partial implementation of SpObjectTokenCategory::EnumTokens().
227 Ihsan Akmal (15):
228       d3d11.idl: Add missing D3D11_DEVICE_CONTEXT_TYPE enums and D3D11_FEATURE_DATA_* declaration.
229       dxgi1_2.idl: Add missing structs and interfaces.
230       include: Add dxgi1_3.idl.
231       include: Add d3d11_2.idl.
232       include: Add d3d11_3.idl.
233       dxgiformat.h: Add missing DXGI_FORMAT enums.
234       include: Add dxgicommon.idl.
235       include: Add dxgi1_4.idl.
236       include: Add dxgi1_5.idl.
237       include: Add dxgi1_6.idl.
238       include: Add missing dxgi.idl constants.
239       include: Add missing dxgi1_2.idl constants and interfaces.
240       include: Add missing d3d11.idl structs and enums.
241       include: Add missing d3d11_1.idl enums and interfaces.
242       include: Add d3d11_4.idl.
244 Jacek Caban (13):
245       fusion: Return S_OK in InitializeFusion.
246       ucrtbase: Added _register_thread_local_exe_atexit_callback implementation.
247       mshtml: Initialize DispatchEx in HTMLDOMNode_Init.
248       mshtml: Introduce EventTarget_Init.
249       mshtml: Introduce EventTarget_QI.
250       mshtml: Added IEventTarget stub implementation.
251       ntdll/tests: Test NtQueryVolumeInformationFile calls on named pipe object.
252       mscoree: Added CreateConfigStream implementation.
253       mscoree: Use CreateConfigStream in parse_config_file.
254       rpcrt4: Wait for available pipe when connecting to busy server.
255       mshtml: Inherit document mode from parent document.
256       mshtml: Correctly handle VT_EMPTY in set_event_handler_disp in standard compliant mode.
257       mshtml/tests: Run events tests in IE9 mode.
259 Józef Kucia (3):
260       xinput1_1: Avoid DLL forwarding.
261       xinput1_2: Avoid DLL forwarding.
262       xinput1_4: Avoid DLL forwarding.
264 Martin Payne (1):
265       user.exe16: Support Windows 2 menus.
267 Matteo Bruni (8):
268       wined3d: Don't claim SYSMEM location to be current if memory was evicted.
269       wined3d: Consider all the system memory locations when choosing the surface upload path.
270       wined3d: Always initialize fx field in struct wined3d_cs_blt_sub_resource (Valgrind).
271       wined3d: Add ARB_texture_filter_anisotropic extension.
272       wined3d: Accept creation flags for 3D textures.
273       d3d9/tests: Properly check for mipmap autogeneration support.
274       d3d9/tests: Add a test for nonrenderable format D3DUSAGE_AUTOGENMIPMAP support.
275       wined3d: Advertise AUTOGENMIPMAP only for renderable and filterable formats.
277 Michael Müller (2):
278       xinput9_1_0: Avoid DLL forwarding.
279       ntdll: Fix parameters of RtlIpv4StringToAddressExW.
281 Michael Stefaniuc (6):
282       kernel32: Remove redundant attributes check.
283       msi: Remove redundant NULL checks before msi_free().
284       gdiplus: Remove a wrapper around GdipFree().
285       fonts: Fix the character count in some fonts.
286       tools/sfnt2fon: Just skip all glyphs below 0x20.
287       fonts: Increase the Em size to fix a build failure with freetype 2.8.1.
289 Nikolay Sivov (38):
290       d3d9/tests: Test for GetDC()-capable backbuffer created with D3DFMT_UNKNOWN format.
291       shell32: Implement Parent() property for ShellDispatch objects.
292       shell32: Added remaining Application() properties.
293       d2d1: Improve figure bounds updating for quadratic beziers.
294       gdiplus: Implement playback for EmfPlusRecordTypeSetPixelOffsetMode.
295       gdiplus: Implement playback for EmfPlusRecordTypeSetCompositingQuality.
296       gdiplus: Implement playback for EmfPlusRecordTypeSetInterpolationMode.
297       d3d9/tests: Some tests for D3DPRESENTFLAG_LOCKABLE_BACKBUFFER mode.
298       shell32: Implement Title property using shellfolder API.
299       dwrite: Added IDWriteFontFallbackBuilder stub.
300       dwrite: Added custom IDWriteFontFallback stub.
301       dwrite/tests: Fix fallback builder test skip.
302       dwrite: Add warning message for unsupported interfaces.
303       dwrite: Implement AddMapping().
304       propsys: Fix negative numeric source handling in PropVariantToBoolean().
305       dwrite: Use single per-process local file loader.
306       include: Added stgprop.h.
307       shell32: Partially implement MapColumnToSCID().
308       msvcr120: Added vsscanf() and vswscanf().
309       shell32: Use regular helper to trace IID, downgrade QI failures to warnings.
310       gdi32: Remove runtime check for FT_Set_Charmap().
311       gdi32: Pick first charmap if none was selected using preferred encoding.
312       shell32: Use shellfolder API to construct FolderItems.
313       shell32: Store simple full path for FolderItem.
314       shell32: Implement FolderItem attributes properties.
315       shell32: Silence fixme for tested case.
316       shell32: System shellfolders don't implement GetDefaultColumn().
317       shell32: System shellfolders don't support GetDefaultSearchGUID() in recent versions.
318       shell32: Implement ParseName() using shellfolder API.
319       shell32: Fix IEnumIDList::Next() called for multiple items.
320       shell32: Simplify Verbs() method.
321       shell32: Implement FolderItem::Name() property getter.
322       shell32: Get rid of original variant used to create a Folder.
323       shell32: Stop using fixed size buffers for display names.
324       shell32: Added missing arguments to trace messages.
325       shell32: PickIconDlg() is documented now.
326       include: Added IWinInetHttpTimeouts definition.
327       msxml3/httpreq: Added ISupportErrorInfo stub.
329 Stefan Dösinger (2):
330       include: CHOOSECOLOR.lCustData is an LPARAM.
331       ntdll: Do not queue a completion status if pipe ops fail synchronously.
333 Vincent Povirk (5):
334       shell32: Support SFGAO_LINK in unix shell namespace.
335       shell32: IShellLink::GetPath returns S_FALSE if there's no path.
336       shell32: Set shelllink path when setting pidl.
337       shell32/tests: Setting a PIDL with no path resets the path.
338       shell32: Add support for find data in IShellLink:GetPath.
340 Zebediah Figura (11):
341       msi: Don't execute a deferred custom action when not running the install script.
342       ieframe: Add stub implementation of InternetExplorerManager.
343       msi/tests: Factor out success checks into table building functions.
344       msi/tests: Move a test from format.c to package.c.
345       msi: Remove a superfluous substructure.
346       msi: Store the current script in the package.
347       msi: Add a missing UI message in the ExecuteAction action.
348       msi/tests: Add a helper to delete an installed package.
349       include: Update BrowserNavConstants enum for Win10.
350       shlwapi: URL schemes may contain hyphen, plus, or period.
351       mshtml: Don't query for an INewWindowManager if the client site is NULL.
354 Alexandre Julliard
355 julliard@winehq.org