msi/tests: Test deferral of InstallFiles and RemoveFiles.
[wine.git] / ANNOUNCE
blob295e31fae9324a53aeb44b7ab0b4082370bf1f9b
1 The Wine development release 3.8 is now available.
3 What's new in this release (see below for details):
4   - Infrastructure for writing kernel driver tests.
5   - Support for showing file properties in the Shell browser.
6   - MP3 decoder as a DirectX Media Object.
7   - More support for the Task Scheduler.
8   - Support for COM aggregation in UrlMon.
9   - Various bug fixes.
11 The source is available from the following locations:
13   https://dl.winehq.org/wine/source/3.x/wine-3.8.tar.xz
14   http://mirrors.ibiblio.org/wine/source/3.x/wine-3.8.tar.xz
16 Binary packages for various distributions will be available from:
18   https://www.winehq.org/download
20 You will find documentation on https://www.winehq.org/documentation
22 You can also get the current source directly from the git
23 repository. Check https://www.winehq.org/git for details.
25 Wine is available thanks to the work of many people. See the file
26 AUTHORS in the distribution for the complete list.
28 ----------------------------------------------------------------
30 Bugs fixed in 3.8 (total 32):
32   10365  Multiple applications fail to install due to custom action dll instance data not reset (dll pinned during execution of multiple custom actions)(Nero 7, ABBYY FineReader 9, Lingvo X5/X6, TradeStation 10.0)
33   16144  Acrobat Reader X, XI and Photoshop CS any version crash on complex documents due to missing atmlib.dll (Adobe Type Manager, Windows NT OpenType/Type 1 API Library)
34   21404  winedbg does not support fixed host:port parameter
35   21530  Wrong notification format used by tooltip attached to Toolbar
36   22048  Installation of '.NET documentation' from Windows SDK for Windows 7 and .NET Framework 3.5 SP1 installer fails (VS90-KB953196-x86.exe hotfix fails with incorrect TARGETDIR)
37   23757  Free Pascal 2.4.0 segfaults (Cygwin 1.5.18 TLS implementation overwrites Wine/glibc/pthread data near Tib->StackBase)
38   30449  GDIPaint does not paint (works with native gdiplus)
39   30713  Microsoft Visual C++ 64-bit redistributables get incorrectly installed into SysWOW64 (system directory for 32-bit files) when run under 64-bit Wine
40   31741  python.org 64-bit Python 2.7.3 installer: selecting preferred installation folder does nothing (32-bit bootstrapper process needs custom action script/dll executed in 64-bit server process)
41   37856  Multiple installers fail due to 32-bit custom actions erroneously executed in 64-bit MSI process (packages needs to be processed as 32-bit by default, with relegation to 32-bit server)
42   38073  GdipDrawPath graphics object has no HDC (graphical glitches in Adobe Premiere Pro CS3)
43   43607  Akiba's Trip Undead & Undressed requires MFStartup to return S_OK.
44   44118  Steam Big Picture requires d3d11 Multiple Viewports
45   44119  Steam Big Picture requires d3d11 Multiple scissor rects
46   44334  'start /W "" notepad' does not wait as on native.
47   44399  WickrMe 4.19.7: Crashes due to stub combase.RoGetActivationFactory
48   44553  Kerberos support added in Wine 3.1 is breaking build on some old Linux distributions
49   44866  Autodesk Fusion 360 fails to run: propertystore_SetValue and propertystore_Commit need fake success
50   44895  League Of Legends: Unable to log in if behind OpenWRT based router
51   44914  Wrong cursor for IDC_SIZEWE
52   44953  Adobe Premiere Elements 14 (trial) crashes inside winmm.dll
53   44959  Adobe Premiere Elements 14 fails to install: ERROR: DF039: Cannot set folder icon. Error 2 File not found.(Seq 4)
54   44976  ConEmu-Maximus5 Windows console emulator causes crash of builtin 'wineconsole.exe' (division by zero)
55   45033  Dragon Naturally Speaking 15 installer fails with 'CheckWMIService' returning error 1602 (needs dummy Windows Management Instrumentation service 'winmgmt')
56   45073  MSI custom action server process crashes in remote_GetActionInfo while unmarshalling data (affects many MSI installers)
57   45078  UFOHD2 crashes inside devenum
58   45081  DsEnumerateDomainTrusts stubbed without A/W suffix
59   45118  Microsoft Windows PowerShell 6.x reports 'PowerShell Gallery is currently unavailable.' (WinHttpSetOption returns incorrect lasterror on unsupported options)
60   45134  Multiple MSI-based installers crash in custom actions with unhandled RPC exception 0x6b5 'Unknown Interface' (World Racing 2 demo, ABBYY Lingvo x6)
61   45136  Wine does not behave as Windows when using TBM_SETPAGESIZE call before TBM_SETRANGE
62   45143  Neoncron 2 Launcher crashes embedding IE browser process when clicking bottom menu items
63   45157  Toolbar code crashes on certain button tooltips
65 ----------------------------------------------------------------
67 Changes since 3.7:
69 Akihiro Sagawa (2):
70       winmm: Fix default time division value in MIDI stream.
71       winmm: Avoid casting unsigned char to plain char.
73 Alex Henrie (8):
74       user32/tests: Drop nonsensical broadcast tests that fail on Windows 10.
75       include: Add strtof and strtold.
76       ucrtbase: Hook up _Exit.
77       include: Add atoll.
78       include: Add strtoll, strtoll_l, strtoull, and strtoull_l.
79       include: Add llabs.
80       include: Add lldiv and lldiv_t.
81       msvcrt: Omit pointer coding functions from SOs for newer MSVC versions.
83 Alexandre Julliard (8):
84       winegcc: Add support for building native subsystem libraries.
85       user32/tests: Avoid calling a potentially missing function.
86       user32/tests: Reorganize the DPI tests.
87       user32: Set the thread DPI awareness to the window's when calling a window procedure.
88       Revert "user32: SetWindowPos() should check the final window position in screen coords before adding SWP_NOMOVE."
89       user32: Avoid repeatedly fetching the window rectangles in SetWindowPos.
90       user32: Take into account the offset between old and new parent in SetParent().
91       ws2_32: Add fallback data for getprotobyname/number.
93 Alistair Leslie-Hughes (5):
94       netapi32: Add DsEnumerateDomainTrustsA/W stubs.
95       mfplat: Return S_OK from MFStartup stub.
96       maintainers: Remove previous wine-staging maintainers.
97       combase/tests: Add RoGetActivationFactory tests.
98       include: Move AllocateAndGet* functions to public header.
100 André Hentschel (1):
101       ntoskrnl.exe/tests: Don't test functions directly when reporting GetLastError().
103 Aric Stewart (1):
104       winebus: Properly identify SDL joysticks index when hot-plugged.
106 Aurimas Fišeras (1):
107       po: Update Lithuanian translation.
109 Daniel Lehman (13):
110       include: Add _countof macro.
111       include: Add wcstof.
112       advapi32/tests: Don't call function in assert().
113       msvcrt/tests: Add setlocale test.
114       msvcr100/tests: Add setlocale test.
115       msvcr110/tests: Add setlocale tests.
116       advapi32/tests: Add tests for REG_NOTIFY_THREAD_AGNOSTIC.
117       include: Add thread pool declarations for currently implemented functions.
118       advapi32/tests: Add RegNotifyChangeKeyValue tests.
119       server: Notify parents of registry value changes.
120       crypt32: Clear dirty flag after flushing changes to registry.
121       shell32: Convert / to \ when parsing file list.
122       advapi32/tests: Free subkey.
124 Dmitry Timoshkov (17):
125       schedsvc: Also watch for job file modifications.
126       schedsvc: Explicitly terminate the received name in the notification buffer.
127       mstask: Export the AT Service RPC API.
128       schedsvc: Reimplement FILE_ACTION_MODIFIED by remove_job()/add_job() sequence as MSDN suggests.
129       mstask: Implement ITaskScheduler::Delete().
130       schedsvc: Pass full task file name to remove_job()/add_job().
131       mstask: Don't touch instance count field of the job file in the client.
132       mstask: Initialize more task fields from the job file on load.
133       mstask: Implement ITask::GetFlags().
134       mstask: Return SCHED_S_TASK_RUNNING from ITask::GetStatus() if there are running task instances.
135       mstask: Write more correct flags and status to the job file.
136       mstask: Try opening a file more times when saving a job file.
137       mstask: Implement ITask::Run().
138       mstask: Implement ITask::Terminate().
139       mstask/tests: Add some tests for ITask::Run().
140       schedsvc: Read more task fields from the job file.
141       mstask: Add stdcall to cdecl thunks for AT Service RPC API.
143 Fabian Maurer (1):
144       wineconsole: When loading settings for an application, respect a 0 in FontSize.
146 François Gouget (3):
147       user32/tests: Add a trailing '\n' to an ok() call.
148       secur32: Make alloc_lsa_connection() static.
149       msi/tests: Add trailing '\n's to ok() calls.
151 Guillaume Gill (1):
152       shell32: Fake success in propertystore_[SetValue|Commit].
154 Hans Leidekker (7):
155       server: Dump token details.
156       server: Store the token owner separately.
157       configure: Require a more recent version of libkrb5.
158       programs: Add a stub winmgmt service.
159       winhttp: Fix invalid option error returned from WinHttpSetOption.
160       hnetcfg/tests: Ignore case when comparing filenames.
161       ws2_32: Enable IP_DONTFRAGMENT by default for SOCK_STREAM sockets.
163 Henri Verbeet (2):
164       wined3d: Make the "args" parameter to glsl_blitter_generate_program() const.
165       wined3d: Add core context P8 blit support to the GLSL blitter.
167 Hua Meng (1):
168       msvcp: Add a stub of _Concurrent_vector_base_v4.
170 Hugh McMaster (2):
171       regedit: Stop exporting REG_SZ data at the first NUL character.
172       reg: Stop exporting REG_SZ data at the first NUL character.
174 Huw D. M. Davies (1):
175       user32: Pass the modifiable string buffer directly to TEXT_NextLineW().
177 Jacek Caban (29):
178       jscript: Use new PROPF_CONFIGURABLE flag instead of PROPF_DONTDELETE.
179       jscript: Use new PROPF_WRITABLE flag instead of PROPF_CONST.
180       jscript: Rename PROPF_ENUM to PROPF_ENUMERABLE.
181       wininet: Allow INTERNET_OPTION_SETTINGS_CHANGED on all handle types.
182       wininet: Add stub for INTERNET_OPTION_REFRESH.
183       urlmon: Store aggregated protocol handler IUnknown in BindProtocol.
184       urlmon: Don't store IWinInetHttpInfo reference in BindProtocol.
185       urlmon: Don't store IWinInetInfo reference in BindProtocol.
186       urlmon: Release protocol handler in BindProtocol::Terminate.
187       urlmon: Added support for COM aggregation of file protocol handler.
188       urlmon: Added support for COM aggregation to http protocol handler.
189       urlmon: Added support for COM aggregation to ftp protocol handler.
190       urlmon: Added support for COM aggregation to mk protocol handler.
191       urlmon: Use protocol handler's IUnknown to query other interfaces in BindProtocol.
192       urlmon: Use COM aggregation for urlmon protocols in BindProtocol::StartEx.
193       urlmon/tests: Added more protocol COM aggregation tests.
194       urlmon: Support querying interfaces from aggregated handlers in BindProtocol.
195       urlmon: Use COM aggregation for IWinInetInfo and IWinInetHttpInfo interfaces in BindProtocol.
196       urlmon: Query for IWinInet[Http]Info on BindProtocol instead of protocol handler directly.
197       jscript: Added Object.getOwnPropertyDescriptor implementation.
198       jscript: Use jsdisp_get_own_property in Object.hasOwnProperty implementation.
199       jscript: Use jsdisp_get_own_property in Object.propertyIsEnumerable implementation.
200       jscript: Make String.length non-writable.
201       jscript: Make Function instance object properties non-writable.
202       jscript: Make RegExp object properties non-writable.
203       jscript: Add Object.defineProperty implementation.
204       jscript: Use jsdisp_define_property instead of jsdisp_propput_const.
205       jscript: Make global constants non-writable in ES5 mode.
206       jscript: Use jsdisp_define_property instead of jsdisp_propput_dontenum for global properties.
208 Józef Kucia (1):
209       winebus: Print SDL error message when SDL cannot be initialized.
211 Louis Lenders (4):
212       shell32: Handle writing an iconresource entry in SHGetSetFolderCustomSettings.
213       winmm: Return error in waveInMessage if either dwParam1 or dwParam2 is null.
214       atmlib: Add stub dll.
215       atmlib: Add stub for ATMFinish.
217 Martin Storsjo (2):
218       arm64: Use __builtin_ms_va_list and __attribute__((ms_abi)) on arm64.
219       configure: Detect MinGW-w64 ARM64 toolchains.
221 Matteo Bruni (3):
222       wined3d: Use staging resources to blit from CPU resources in the fixed-function blitter.
223       wined3d: Implement P8 blits in the GLSL blitter.
224       wined3d: Rename gen_planar_yuv_read() to gen_packed_yuv_read().
226 Michael Müller (12):
227       combase: Implement RoGetActivationFactory.
228       combase: Implement RoActivateInstance.
229       combase: Add stub for RoGetApartmentIdentifier.
230       combase: Add stub for RoRegisterForApartmentShutdown.
231       combase: Add stub for RoGetServerActivatableClasses.
232       combase: Add stub for RoRegisterActivationFactories.
233       combase: Add stub for CleanupTlsOleState.
234       shell32: Add general tab in file property dialog.
235       ntdll: Add stub for RtlQueryPackageIdentity.
236       include: Add IApplicationActivationManager interface declaration.
237       ext-ms-win-uxtheme-themes-l1-1-0: Add dll.
238       feclient: Add stub dll.
240 Nikolay Sivov (17):
241       comctl32/tooltip: Compare to special callback pointer value directly.
242       comctl32/toolbar: Fix tooltip notification forwarding.
243       d3d11: Add ID3D11Device1 stub.
244       d3d11: Add ID3D11DeviceContext1 stub.
245       wined3d: Add new functions to set and get maximum frame latency for the device.
246       comctl32/trackbar: Don't update page size if it was explicitly set.
247       comctl32/trackbar: Remove separate field indicating focused state.
248       comctl32/trackbar: Fix reseting to default page size.
249       user32: Avoid touching last error on successful path of GetClassInfo().
250       comctl32/toolbar: Handle resource strings returned for tooltip text.
251       po: Update Russian translation.
252       user32/menu: Return locked menu data when looking for menu items.
253       gdiplus: Fix the number of transformed points for squared caps.
254       gdiplus: Convert actually used points for anchored round caps.
255       gdiplus: Fix the number of transformed points for round caps.
256       gdiplus: Draw using actual point data for custom caps.
257       dsound: Use correct pointer type.
259 Owen Rudge (2):
260       include: Add WSD_PROBE structure to wsdtypes.h.
261       wsdapi/tests: Add initial test for receiving probe messages.
263 Pablo Martin (2):
264       d3d11: Handle D3D11_FEATURE_ARCHITECTURE_INFO in d3d11_device_CheckFeatureSupport().
265       d3d11/tests: Add tests for D3D11_FEATURE_ARCHITECTURE_INFO in CheckFeatureSupport().
267 Piotr Caban (3):
268       msvcr120: Add Concurrency::details::platform::GetCurrentThreadId export.
269       kernel32: Fix CreateProcess behavior when batch script command contains '"' characters.
270       msvcr110: Try SNAME when matching locale.
272 Qian Hong (1):
273       server: Map EXDEV to STATUS_NOT_SAME_DEVICE.
275 Sebastian Lackner (1):
276       ntoskrnl.exe/tests: Add test driver.
278 Vincent Povirk (2):
279       gdi32: Check for truncated EMF files.
280       gdi32: Check that emf records are within the file.
282 Zebediah Figura (34):
283       devenum: Check for null pointer in IMoniker_BindToObject().
284       services: Fall back to the current architecture if GetBinaryType fails.
285       makedep: Also pass EXTRADLLFLAGS to the cross-compiled test DLL.
286       msi: Execute the custom action server with the correct bitness.
287       msi: Don't load a custom action DLL in the main process.
288       ntoskrnl.exe/tests: Also handle ERROR_INVALID_IMAGE_HASH.
289       ntoskrnl.exe/tests: Add a test for IoGetCurrentProcess().
290       ntoskrnl.exe/tests: Add a simple test for MmMapLockedPagesSpecifyCache().
291       msi: Set the correct values for ProgramFiles64Folder and CommonFiles64Folder.
292       ntoskrnl/tests: Use WINAPIV calling convention for variadic functions.
293       winedbg: Add support for starting on a user-supplied port.
294       strmbase: Check that the output pin supports the given media type before connecting.
295       strmbase: Implement QueryAccept() on top of CheckMediaType() for output pins too.
296       strmbase: Consistently trace the BasePin object.
297       msi: Check return value of GetBinaryType().
298       msi: Disable WoW redirection when installing a 64-bit package.
299       jscript: Avoid crash when calling stringify() with no arguments.
300       rpcrt4/tests: Add a basic test for RPC_IF_AUTOLISTEN.
301       rpcrt4: RpcServerUnregisterIf() with NULL ifspec shouldn't unregister auto-listen interfaces.
302       dmoguids: Add library.
303       msdmo: Link to dmoguids.
304       msdmo: Return a valid enumerator even if the category doesn't exist.
305       msdmo: Fix pointer checking in IEnumDMO_Next().
306       msdmo: Make formatting consistent with the rest of the file.
307       msdmo: Only return valid GUIDs in IEnumDMO_Next().
308       msi: Avoid leaking custom action data.
309       include: Add wmcodecdsp.idl and CMP3DecMediaObject.
310       wmcodecdspuuid: Add static library.
311       mp3dmod: Add stub MP3 Decoder DMO.
312       mp3dmod: Link to libmpg123.
313       mp3dmod: Return S_OK from SetInputType().
314       mp3dmod: Implement SetOutputType().
315       mp3dmod: Implement ProcessInput().
316       mp3dmod: Implement ProcessOutput().
318 Zhiyi Zhang (2):
319       user32: Use the heap_*() functions in text.c where possible.
320       user32: Use common cleanup code in DrawTextExW().
323 Alexandre Julliard
324 julliard@winehq.org