msvcrt: Set ERANGE in exp functions on finite input and infinite output.
[wine.git] / ANNOUNCE
blob5e4d05bcf16fd7704e3afa49942a8b2bec65cc38
1 The Wine development release 2.13 is now available.
3 What's new in this release (see below for details):
4   - Unicode data updated to Unicode 10.0.0.
5   - Nicer looking default mouse cursors.
6   - Persistent connections support in WinHTTP.
7   - Message Framing protocol support in WebServices.
8   - Improved metafile support in GdiPlus.
9   - Debug registers support in x86-64 exception handling.
10   - Anti-aliasing improvements in DirectWrite.
11   - Various bug fixes.
13 The source is available from the following locations:
15   http://dl.winehq.org/wine/source/2.x/wine-2.13.tar.xz
16   http://mirrors.ibiblio.org/wine/source/2.x/wine-2.13.tar.xz
18 Binary packages for various distributions will be available from:
20   http://www.winehq.org/download
22 You will find documentation on http://www.winehq.org/documentation
24 You can also get the current source directly from the git
25 repository. Check http://www.winehq.org/git for details.
27 Wine is available thanks to the work of many people. See the file
28 AUTHORS in the distribution for the complete list.
30 ----------------------------------------------------------------
32 Bugs fixed in 2.13 (total 33):
34   32418  Skylanders Spyro's Adventure can't find USB RFID reader, needs hid.dll.HidD_SetOutputReport implementation
35   36612  valgrind shows a definite leak in winhttp/tests/notification.c
36   36613  valgrind shows an unintialized write in winhttp/tests/notification.c
37   38296  Ion Assault (Steam) crashes before the main menu (IWMReader::QueryInterface doesn't support IWMReaderAdvanced2, 'ae14a945-b90c-4d0d-9127-80d665f7d73e')
38   39833  File not found error when loading fmod audio in Dungeon of the Endless
39   42275  Biet-O-Matic chm help without directory entry
40   42528  Grand Theft Auto 5 crashes while loading
41   42537  Tomb Raider 2013 has medium graphic glitches
42   42653  Wine x64 does not set debug registers in exception record
43   42918  Command and Conquer Red Alert 3: should display at least silhouette (pSkipConstants parameter for D3DXCreateEffectEx is ignored)
44   43099  The Technomancer requires MFCreateSourceReaderFromByteStream implementation
45   43112  Guitar Pro 7 needs msvcp140.dll._Stat
46   43160  The Witcher 3: puppeteer lines appearing on character
47   43194  Uprising/Uprising 2: 3D world not displayed (solid grey/black screen)
48   43196  Eve Online Crash on macos wined3d-csmt.dll.so buffer_destroy_buffer_object()
49   43231  Dai-Senryaku Perfect 3.0:Not draw background with GDI.
50   43265  Regression makes Steam game Rabi-Ribi run too fast
51   43268  Wargaming.net Game Center needs msvcp140.dll._To_byte
52   43275  Sacred Gold v2.28 (GOG.com): invisible characters
53   43283  Crazyracing KartRider: Crashes on startup on unimplemented function ntoskrnl.exe.IoCreateNotificationEvent
54   43295  BitLord crashes on unimplemented function IPHLPAPI.DLL.if_nametoindex
55   43302  widl incorrectly generates _Proxy functions in header
56   43303  PHP crashes on unimplemented function api-ms-win-crt-math-l1-1-0.dll.acosh
57   43304  PHP crashes on unimplemented function api-ms-win-crt-math-l1-1-0.dll.atanh
58   43305  numpy crashes on unimplemented function api-ms-win-crt-math-l1-1-0.dll.log1p
59   43307  Wargaming Game Center periodically crashes with msvcp140.dll._Current_get
60   43312  valgrind shows a definite leak in dlls/d2d1/tests/d2d1.c
61   43315  Steam fails to start [After update Thu, 06 Jul 2017]
62   43317  Icons has a pink color background
63   43334  winealsa.drv: Warning while building (GCC 7.1.1)
64   43341  valgrind shows some definite leaks in dlls/gdiplus/tests/graphicspath.c
65   43348  valgrind shows some definite leaks in dlls/msacm32/tests/msacm.c
66   43373  valgrind shows an invalid free in dlls/dwrite/tests/font.c
68 ----------------------------------------------------------------
70 Changes since 2.12:
72 Akihiro Sagawa (3):
73       po: Update Japanese translation.
74       ntdll: Allow map_view() to allocate fixed memory between reserved area and non-reserved area.
75       gdi32: Return non-zero VREFRESH value for display devices.
77 Alex Henrie (10):
78       msvcr120: Correct asinh specfile definitions.
79       msvcr120: Correct erff specfile definition.
80       msvcr120: If erff is not available, fall back to erf.
81       msvcr120: Add acosh.
82       msvcr120: Add atanh.
83       msvcr120: Add erfc.
84       msvcr120: Add expm1.
85       msvcr120: Add log1p.
86       msvcr120: Set errno in log2.
87       msvcrt: Don't set errno in log functions if x is positive infinity.
89 Alexandre Julliard (37):
90       configure: Allow specifying different CFLAGS for the cross compiler.
91       kernel32/tests: Wait for threads to terminate.
92       user32: Implement LR_MONOCHROME for loading cursors.
93       winex11: Load a monochrome cursor instead of converting a color one when possible.
94       user32: Match cursor size in priority over color depth.
95       gdi32: Avoid having the source alpha channel interfere with color comparisons in GdiTransparentBlt.
96       server: Return the top surface window even when not using OpenGL.
97       user32: Add a helper function for copying bits from a window surface.
98       user32: Copy the bits of child windows when the parent has a surface.
99       wineandroid: Add a generation number to the native window to catch when old buffers are queued.
100       wineandroid: Hold on to the native window until we get a new one.
101       tools: Add support for generating cursor files from SVG.
102       user32: New high resolution cursors generated from SVG.
103       comctl32: New high resolution cursors generated from SVG.
104       ole32: New high resolution cursors generated from SVG.
105       riched20: New high resolution cursor generated from SVG.
106       wordpad: New high resolution cursor generated from SVG.
107       user32/tests: Add some tests for WindowFromDC and destroyed windows.
108       winex11: Store the process name at startup to avoid grabbing the loader lock again.
109       opengl32: Add some tests for last error with an invalid DC.
110       user32: Also disable the DC if the window is destroyed without a ReleaseDC.
111       ntdll: Remove unnecessary helper to set debug registers.
112       ntdll: Add helper functions for getting and setting thread context through the server.
113       ntdll: Move NtSetContextThread implementation to the platform-specific files.
114       ntdll: Move NtGetContextThread implementation to the platform-specific files.
115       ntdll: Don't copy cached debug registers from the parent thread.
116       wined3d: Make sure we are still using the correct window before setting pixel format.
117       ntdll: Add platform-specific versions of the thread data structure.
118       ntdll: Move the plaform-independent thread data to the GdiTebBatch TEB field.
119       ntdll: Move the plaform-specific thread data to the SystemReserved2 TEB field.
120       ntdll: Add support for debug registers in exceptions on x86-64.
121       user32: Don't exclude clipped children from the copied window bits since they may be up to date.
122       ntdll: Call NtRaiseException directly from RtlRaiseException on x86-64.
123       ntdll: Remove the raise_exception helper function on x86-64.
124       ntdll: Call NtRaiseException directly from RtlRaiseException on i386.
125       ntdll: Add small assembly wrappers for snooping instead of saving/restoring the entire context.
126       include: Undefine PARITY_NONE to avoid warnings.
128 Alistair Leslie-Hughes (8):
129       widl: Only generate Proxy Stubs when functions have the call_as attribute.
130       mfreadwrite.idl: Add enum MF_SOURCE_READER_FLAG and EXTERN_GUID defines.
131       wmvcore: Support IWMReaderStreamClock interface in IWMReader.
132       wmvcore: Support IWMReaderTypeNegotiation interface in IWMReader.
133       mfplat/tests: Add MFCreateAttributes tests.
134       wmvcore: Support IWMReaderTimecode interface in IWMReader.
135       wmvcore: Support IWMReaderPlaylistBurn interface in IWMReader.
136       include: Support all version of BackgroundCopyManager from bits.h.
138 Andrey Gusev (4):
139       api-ms-win-core-psapi-ansi-l1-1-0: Add dll.
140       api-ms-win-mm-time-l1-1-0: Add dll.
141       api-ms-win-security-provider-l1-1-0: Add dll.
142       winealsa.drv: Fix uninitialized variable warning.
144 André Hentschel (3):
145       vcomp: Add ARM64 support.
146       winemaker: Remove trailing semicolon from PreprocessorDefinitions.
147       wpcap: Fix build with newer pcap versions.
149 Aurimas Fišeras (3):
150       po: Update Lithuanian translation.
151       po: Update Lithuanian translation.
152       po: Update Lithuanian translation.
154 Austin English (1):
155       ntoskrnl.exe: Add IoCreateNotificationEvent stub.
157 Can Taşan (1):
158       po: Update Turkish translation.
160 Daniel Lehman (1):
161       kernel32/tests: Increase timeout for loader test.
163 François Gouget (2):
164       gdiplus: Remove a duplicate word in a comment.
165       windowscodecs/tests: A spelling fix in an ok() message.
167 Gerald Pfeifer (1):
168       user.exe16: Fix ADD_TO_T macro.
170 Hans Leidekker (21):
171       webservices: Store byte records as WS_XML_BASE64_TEXT.
172       webservices: Add support for union types in the writer.
173       webservices: Add support for union types in the reader.
174       webservices: Add support for appending byte records in the reader.
175       webservices: Add support for setting the channel encoding.
176       webservices: Store all text in native format in binary mode.
177       webservices/tests: Add tests.
178       webservices: Handle all supported native text types in the reader type conversion.
179       webservices: Add support for 16-bit length text records in the writer.
180       webservices: Add support for byte records in the writer.
181       webservices: Add support for BOOL records in the writer.
182       webservices: Add support for integer records in the writer.
183       webservices: Add support for double records in the writer.
184       webservices: Add support for GUID records in the writer.
185       webservices: Add support for UNIQUE_ID records in the writer.
186       webservices: Add support for DATETIME records in the writer.
187       webservices/tests: Add tests.
188       webservices: Add support for reading float values.
189       webservices: Set default channel envelope and addressing versions.
190       webservices: Write Action and To headers unless the addressing version is WS_ADDRESSING_VERSION_TRANSPORT.
191       webservices: Implement the Message Framing Protocol.
193 Henri Verbeet (10):
194       d3drm/tests: Simplify a conditional expression.
195       winex11: Only use glXSwapBuffersMscOML() for child windows.
196       wined3d: Fix the WINED3DFMT_D24_UNORM_S8_UINT entry in wined3d_format_convert_from_float().
197       wined3d: Make a FIXME in cpu_blitter_clear() slightly more accurate.
198       wined3d: Handle WINED3D_POOL_SYSTEM_MEM resources in ffp_blitter_use_cpu_clear().
199       wined3d: Simplify the render target check in ffp_blitter_clear().
200       wined3d: Split combined render target and depth/stencil clears if needed in ffp_blitter_clear().
201       wined3d: Avoid using the CPU blitter for clearing either depth or stencil on combined formats.
202       wined3d: Avoid using the CPU blitter for clearing converted surfaces that aren't current on the CPU.
203       wined3d: Drop the special case for "converted" surfaces in wined3d_surface_blt().
205 Hugh McMaster (23):
206       regedit: Null-terminate REG_EXPAND_SZ and REG_MULTI_SZ hex data during concatenation if we reach EOF.
207       regedit: Update the status bar text when a treeview node is renamed.
208       regedit: Update the listview path when renaming a treeview node.
209       regedit: Output an error message and exit with error code zero instead of calling exit(1).
210       regedit: Update some resource strings associated with key parsing.
211       regedit: Update string resources associated with key deletion.
212       regedit: Remove the unused _CmdWndProc callback function from listview.c.
213       regedit: Move treeview notify messages to a separate function.
214       regedit: Remove the listview's sub-class and move its messages to childwnd.c.
215       regedit: Use UpdateStatusBar() instead of updating the text manually.
216       regedit: Re-implement some parts of the export operation.
217       regedit: Read registry value information before exporting.
218       regedit: Export value names from a separate function.
219       regedit: Export REG_DWORD data from a separate function.
220       regedit: Use a helper function to export hex data and REG_DWORD data.
221       regedit: Export REG_SZ data via the export_data() function.
222       regedit: Append a newline to the end of the export file.
223       regedit: Export value names from the export_data() function.
224       regedit: Remove an unused #define.
225       regedit: Remove unused header includes from regproc.c.
226       regedit: Re-size the data export buffer using the required size instead of doubling it.
227       reg: Avoid using RegQueryInfoKey() to enumerate subkeys and values in the query operation.
228       reg: Account for sizeof(WCHAR) when resizing the value name buffer during the query operation.
230 Jacek Caban (22):
231       server: Don't allow APCs on objects associated with completion port.
232       winhttp/tests: Make notification tests more strict.
233       winhttp: Store security_flags in request_t instead of netconn_t.
234       winhttp: Allocate netconn_t separately from request_t.
235       winhttp: Use notification flags to explicitly mark notifications that should signal an event.
236       winhttp/tests: Make sure that all notifications were called before the end of a test.
237       winhttp: Get rid of no longer needed netconn_init.
238       winhttp: Pass socket address as sockaddr_storage to netconn_connect.
239       winhttp: Store socked address in netconn_t.
240       winhttp: Merge netconn_create and netconn_connect implementations.
241       winhttp: Introduce global connected hosts store and keep reference to host in netconn_t.
242       winhttp: Cache and reuse persistent HTTP connections.
243       winhttp: Periodically free outdated connections.
244       winhttp/tests: Added persistent connection tests.
245       mshtml: Added IHTMLDOMNode3 stub implementation.
246       mshtml: Forward duplicated IHTMLDOMNode3 functions to IHTMLDOMNode implementation.
247       mshtml: Expose IHTMLDOMNode3 interface to scripts.
248       mshtml: Support returning VT_NULL from return_nsstr_variant.
249       mshtml: Added IHTMLDOMNode3::get_textContent implementation.
250       mshtml: Added IHTMLDOMNode3::put_textContent implementation.
251       server: Remove no loner needed fd NULL check (Coverity).
252       rsaenh: Do not use stack variables out of frame (Coverity).
254 Jactry Zeng (2):
255       powershell: Add a stub program.
256       kernel32: Add stub for ResolveLocaleName.
258 Jens Reyer (2):
259       make_unicode: Update data tables to Unicode 10.0.0.
260       make_unicode: Use VerticalOrientation.txt from UCD.
262 Józef Kucia (19):
263       wined3d: Avoid creating event queries manually.
264       wined3d: Clean up buffer_sync_apple().
265       wined3d: Introduce wined3d fence objects.
266       d3d10core/tests: Prefer draw_color_quad() to custom pixel shader.
267       d3d11/tests: Prefer draw_color_quad() to custom pixel shader.
268       wined3d: Implement SM5 swapc instruction.
269       d3d11/tests: Add test for swapc instruction.
270       wined3d: Translate bfi, ubfe, ibfe instructions more carefully.
271       wined3d: Translate ld_{raw, structured} instructions more carefully.
272       d3d11/tests: Add additional tests for SM5 bit instructions.
273       d3d11: Handle D3D11_MAP_WRITE map type.
274       d3d11: Introduce d3d_blend_state_create() helper function.
275       d3d11: Fix race condition in d3d_blend_state_create().
276       d3d11: Introduce d3d_depthstencil_state_create() helper function.
277       d3d11: Fix race condition in d3d_depthstencil_state_create().
278       d3d11: Introduce d3d_rasterizer_state_create() helper function.
279       d3d11: Fix race condition in d3d_rasterizer_state_create().
280       d3d11: Introduce d3d_sampler_state_create() helper function.
281       d3d11: Fix race condition in d3d_sampler_state_create().
283 Kim Malmo (2):
284       po: Update Norwegian translation.
285       po: Update Norwegian translation.
287 Kimmo Myllyvirta (1):
288       ws2_32: Set return size when calling WSAIoctl with WS_SIO_GET_EXTENSION_FUNCTION_POINTER.
290 Lauri Kenttä (1):
291       po: Update Finnish translation.
293 Marcus Meissner (1):
294       gameux: Avoid freeing uninitialized interfaces (Coverity).
296 Mark Jansen (1):
297       shell32: Prevent a possible null pointer dereference in SHGetFileInfoW.
299 Matteo Bruni (1):
300       d3dx9: Get rid of a forward declaration.
302 Michael Stefaniuc (5):
303       d2d1: Make use of the available ARRAY_SIZE macro.
304       d3dx9/tests: Use string concatenation for a multiline string.
305       include: Fix the name of a method of IDirectMusicLoader.
306       dmloader: Initialize a stack variable to avoid erratic test behavior.
307       dmloader/tests: NUL terminate a wide string.
309 Mikhail Paulyshka (1):
310       msvcp140: Implement _To_byte.
312 Nikolay Sivov (29):
313       d3drm: Use existing helper to manage child frames array.
314       d3drm: Use existing helper to manage lights array.
315       d3drm: Use existing helper to manage visuals array.
316       d3drm: Use existing helper to manage mesh groups.
317       wininet: Fix potential use-after-free (Coverity).
318       po: Update Russian translation.
319       d2d1: Added a helper to trace D2D1_RECT_F arguments.
320       d2d1/tests: Fix stroke style object leak (Valgrind).
321       dwrite: Avoid repeated method calls during run rendering.
322       advapi32/tests: Statically link to ConvertSidToStringSidA().
323       advapi32/tests: Fix a sid string leak (Valgrind).
324       po: Update Russian translation.
325       regedit: Simplify double-click listview handler.
326       msacm32/tests: Fix a memory leak in tests (Valgrind).
327       dwrite: Improve rendering parameters validation.
328       dwrite: Use antialias mode set for bitmap render target.
329       dwrite: Explicitly check rendering parameters pointer passed to DrawGlyphRun().
330       dwrite: Trace user-provided OpenType feature set.
331       d2d1: Pass current text antialias mode down to IDWriteGlyphRunAnalysis.
332       d2d1: Enforce text antialias mode vs text rendering mode consistency.
333       d2d1: Force appropriate antialiasing mode when drawing text elements using 2D primitives.
334       dwrite: Added ability to specify multiple families per fallback range.
335       dwrite/tests: Use empty text in line metrics test.
336       d3drm/tests: Fix a leak in tests (Valgrind).
337       xmllite/tests: Use input stream helper in more tests.
338       dwrite: Print missing table message as a trace.
339       dwrite: Fix cache entry use-after-free (Valgrind).
340       xmllite/reader: Implement MoveToAttributeByName().
341       xmllite/reader: Added a helper for setting current attribute cursor.
343 Paul Gofman (9):
344       d3dx9/tests: Add test for skip_constants effect parameter.
345       d3dx9: Factor out is_parameter_used() function.
346       d3dx9: Simplify init and cleanup in get_constants_desc().
347       d3dx9: Get rid of init_set_constants() function.
348       d3dx9: Fail effect creation when parameter evaluator creation fails.
349       d3dx9: Introduce d3dx_shader_get_ctab_constant() function and use it instead of ID3DXConstantTableImpl_GetConstantDesc().
350       d3dx9: Support skip_constants parameter for effect.
351       d3dx9/tests: Add more tests for skip_constants effect parameter.
352       d3dx9: Fix potential memory leak on HeapReAlloc() failure in get_constants_desc().
354 Piotr Caban (27):
355       gdiplus: Remove unused clsid parameter from encode_image_func helpers.
356       gdiplus: Add partial support for GdipDrawImagePointsRect on metafile.
357       gdiplus: Add function for managing metafile objects id.
358       gdiplus: Add support for ImageAttributes when drawing image to metafile.
359       gdiplus: Support GdipSetTextRenderingHint in metafiles.
360       gdiplus: Support GdipSetPixelOffsetMode in metafiles.
361       msvcp90: Remove special handling of directories in tr2::sys::_File_size.
362       gdiplus: Support GdipSetSmoothingMode in metafiles.
363       gdiplus: Support GdipSetCompositingMode in metafiles.
364       gdiplus: Support GdipSetCompositingQuality in metafiles.
365       gdiplus: Support GdipSetInterpolationMode in metafiles.
366       gdiplus: Add EMF+ properties records tests.
367       msvcr120: Add fallback implementation of erf function.
368       msvcr120: Add fallback implementation of asinh.
369       gdiplus: Add DrawPath stub for metafiles.
370       gdiplus: Add helper for saving path objects in metafile.
371       gdiplus: Add helper for saving pens to metafile.
372       gdiplus: Add partial support for GdipDrawPath on metafiles.
373       gdiplus: Add partial support for GdipFillPath on metafiles.
374       gdiplus: Fix GdipGetVisibleClipBounds behavior on metafiles.
375       msvcr120: Fix exception object refcounting in __ExceptionPtrAssign.
376       gdiplus: Add support for creating image object containing metafile.
377       gdiplus/tests: Test drawing metafile image to emf+ file.
378       gdiplus: Use VERSION_MAGIC2 constant in metafiles functions.
379       gdiplus: Store newer gdi+ version in created GdipRegions.
380       gdiplus: Add write_path_data helper to create EMF+ path object.
381       gdiplus: Use write_path_data helper in GdipGetRegionData.
383 Sebastian Lackner (5):
384       webservices: Remove dead code in read_attribute_value_bin.
385       reg/tests: Don't call RegCloseKey on uninitialized memory.
386       wined3d: Return hr result in wined3d_event_query_create.
387       configure: Improve check for if_nameindex.
388       winhttp: Rename host_t to hostdata_t.
390 Stefan Dösinger (6):
391       msvcp140: Remove a redundant check.
392       msvcp140: Implement _File_size.
393       msvcp140: Implement _Current_get.
394       msvcp140: Export _Current_set.
395       msvcp140: Implement _Stat and _Lstat.
396       msvcp140/tests: Port test_dir_operation to msvcp140.
398 Vincent Povirk (2):
399       gdiplus: Fix leak in widen_dashed_figure.
400       gdiplus: Don't require specific gdi+ versions in metafile structures.
402 Zebediah Figura (17):
403       msi: Correctly format the template field for MsiProcessMessage().
404       msi: Allow setting NULL in MsiSetInteger().
405       msi: Provide the result of the last action.
406       msi: Use the given record for INSTALLMESSAGE_ACTIONDATA.
407       msi: Rewrite dump_record().
408       msi: Return the correct values from custom actions.
409       msi: Properly parse empty format strings.
410       user32: Calculate a window's minimized size even if it's already minimized.
411       user32: Allow activating the desktop window.
412       msi/tests: Use static linking for a couple functions.
413       msi: Avoid a null pointer dereference.
414       msi: Don't set _BrowseProperty.
415       msi: Process ShowDialog/EndDialog after all other control events.
416       msi: Don't queue a parent dialog to be shown in EndDialog.
417       msi: Send the dialog created message in dialog_create().
418       krnl386.exe16: Fail int 21, 4e if the volume label is an empty string.
419       dbghelp: Silence a noisy FIXME.
422 Alexandre Julliard
423 julliard@winehq.org