Release 3.0.
[wine.git] / ANNOUNCE
blob590564d4c28039625de531e4a6fe3583a1c50075
1 The Wine team is proud to announce that the stable release Wine 3.0
2 is now available.
4 This release represents a year of development effort and over 6,000
5 individual changes. It contains a large number of improvements that
6 are listed in the release notes below. The main highlights are:
8   - Direct3D 10 and 11 support.
9   - The Direct3D command stream.
10   - The Android graphics driver.
11   - Improved DirectWrite and Direct2D support.
13 Once again, because of the annual release schedule, a number of
14 features that are being worked on have been deferred to the next
15 development cycle. This includes in particular Direct3D 12 and Vulkan
16 support, as well as OpenGL ES support to enable Direct3D on Android.
18 The source is available from the following locations:
20   https://dl.winehq.org/wine/source/3.0/wine-3.0.tar.xz
21   http://mirrors.ibiblio.org/wine/source/3.0/wine-3.0.tar.xz
23 Binary packages for various distributions will be available from:
25   https://www.winehq.org/download
27 You will find documentation on https://www.winehq.org/documentation
29 You can also get the current source directly from the git
30 repository. Check https://www.winehq.org/git for details.
32 Wine is available thanks to the work of many people. See the file
33 AUTHORS in the distribution for the complete list.
35 ----------------------------------------------------------------
37 What's new in Wine 3.0
38 ======================
41 *** Direct3D
43 - A significant number of Direct3D 10 and 11 features are implemented in
44   this release, including:
45   - Compute shaders.
46   - Hull and domain (tessellation) shaders.
47   - Stream output.
48   - Format capability queries.
49   - A large number of shader model 4 and 5 shader instructions.
50   - Shader model 4 and 5 interpolation modifiers.
51   - Shader model 4 and 5 clip and cull distances.
52   - Indirect draws and indirect compute dispatch.
53   - Structured buffers.
54   - Byte addressable buffers.
55   - Append and consume buffers.
56   - Unordered access view counters.
57   - Cube-map arrays.
58   - Layered rendering to 3-dimensional textures and texture arrays.
59   - Mip-map generation.
60   - Conservative depth output.
61   - Type-less (sub)resource copies.
62   - Depth bias.
64 - The multi-threaded command stream feature serializes Direct3D rendering
65   commands from different threads into a single rendering thread. Its main
66   purpose in this release is rendering correctness, but the feature also
67   provides opportunities for future performance improvements. This feature
68   is disabled by default.
70 - Support for OpenGL core contexts in Direct3D is improved, to the point
71   that core contexts are used by default for Direct3D 10 and 11
72   applications on AMD and Intel graphics cards. As a result, users of those
73   graphics cards in combination with Mesa OpenGL drivers should no longer
74   need to set the "MaxVersionGL" registry key to enable Direct3D 10 and 11
75   support.
77 - The Direct3D graphics card database recognizes more graphics cards.
79 - New HKCU\Software\Wine\Direct3D registry key:
80   - "csmt" (REG_DWORD)
81     Enable (0x1) or disable (0x0, default) the multi-threaded command
82     stream feature described above.
84 - Deprecated HKCU\Software\Wine\Direct3D registry keys:
85   - "StrictDrawOrdering"
86     This has been superseded by the multi-threaded command stream feature.
87   - "OffscreenRenderingMode"
88     The "fbo" setting is the only remaining supported value. The
89     "backbuffer" setting, while still available, is no longer supported.
91 - Removed HKCU\Software\Wine\Direct3D registry keys:
92   - "AlwaysOffscreen"
93     This is always enabled in this release.
94   - "MultiSampling"
95     Use the "SampleCount" (REG_DWORD) setting to force a specific
96     multi-sample anti-aliasing sample count for swapchain render targets
97     instead.
100 *** Graphics
102 - Drawing outlines of Direct2D geometry objects is implemented.
104 - Direct2D linear and radial gradient brushes are implemented.
106 - Direct2D compatibility with GDI is implemented.
108 - Bounds computation of Direct2D geometry objects is implemented.
110 - Simplification of Direct2D geometry objects is implemented.
112 - The OpenGL extension list is updated to OpenGL version 4.6.
114 - The system GLU library is only needed when the Nurbs renderer is used,
115   all other GLU functions are implemented internally.
117 - Metafile playback in GdiPlus supports most of the GdiPlus-specific
118   metafile record types, in addition to the standard metafile records.
120 - GdiPlus graphics operations take the GDI transform into account.
122 - Encoding image formats with a palette is supported in WindowsCodecs.
125 *** Android
127 - Wine can be built as an APK package and behaves like a proper Android
128   application.
130 - A full graphics driver is implemented. Because of restrictions of the
131   Android window management API, only full screen desktop mode is
132   supported.
134 - A full audio driver is implemented.
136 - OpenGL is supported, but it's limited to the OpenGL ES API that is
137   available on Android.
139 - Direct3D is not supported yet, because it cannot run on top of OpenGL ES
140   at this point. This will be addressed during the next development cycle.
143 *** Kernel
145 - The default Windows version is set to Windows 7.
147 - The full semantics of named pipes are implemented, including message-mode
148   pipes.
150 - Position Independent Executables are supported, both for the Wine binary
151   itself and also when starting external binaries.
153 - Serial and parallel port devices are created automatically, with the
154   corresponding symlinks in the dosdevices directory. The detected ports
155   can be overridden through the HKLM\Software\Wine\Ports key.
157 - Safe DLL search mode is implemented. It is enabled by default, and can be
158   disabled by setting the "SafeDllSearchMode" value to 0 under
159   HKLM\System\CurrentControlSet\Control\Session Manager.
161 - Safe process search mode is implemented. It is disabled by default but
162   can be requested by the application, and it can be forced by setting the
163   "SafeProcessSearchMode" value to 1 under
164   HKLM\System\CurrentControlSet\Control\Session Manager.
166 - Asynchronous I/O performance is improved by reducing the number of server
167   calls.
169 - Memory write watches work correctly when used concurrently with file I/O
170   on the same buffers.
172 - Virtual memory allocations can be arbitrarily large on 64-bit platforms.
175 *** User interface
177 - The built-in mouse cursors are redesigned, and available in higher
178   resolution for high DPI screens.
180 - The Shell Explorer, the common dialogs, and the RichEdit control properly
181   scale on high DPI screens.
183 - The screen DPI value can be overridden by setting the "LogPixels" value
184   under HKEY_CURRENT_USER\Control Panel\Desktop.
186 - In desktop mode, higher display resolutions with various aspect ratios
187   are supported.
189 - The Task Dialog common control is implemented.
191 - The Internal User Interface is supported in MSI.
193 - Double-buffered theme painting is implemented.
195 - The TWAIN library supports a user dialog for selecting the scanner
196   source.
198 - Device-independent bitmaps and metafiles can be stored into the OLE Data
199   Cache.
202 *** Desktop integration
204 - The StartupWMClass field is set in generated desktop files so that they
205   can be matched to their respective Windows binary.
207 - Clipboard changes from other X11 applications are detected through the
208   Xfixes library instead of polling.
210 - The RichEdit control supports pasting metafiles.
212 - The Program Manager DDE protocol for manipulating program entries and
213   groups is implemented.
215 - The HID service for detecting Plug & Play devices is active by default.
217 - Version 4 of the system tray notification protocol is supported on macOS.
220 *** Text and fonts
222 - Contextual glyph substitution is supported in UniScribe.
224 - Character tables are based on version 10.0.0 of the Unicode Standard.
226 - The Nepali and Bangla (India) locales are supported.
228 - Font support is compatible with the new behaviors introduced in FreeType
229   version 2.8.1.
232 *** DirectWrite
234 - Trailing line trimming signs in both character and word modes is
235   supported.
237 - Cluster wrapping mode is supported.
239 - Uniform and proportional line spacing methods are implemented.
241 - Oblique and bold simulation is also supported in bitmap rendering mode.
243 - Per-factory cache is thread safe.
245 - Overhang metrics evaluation for layouts are implemented.
247 - In-memory font file loader is implemented and is available to
248   applications.
251 *** D3DX
253 - Support for D3DX 9 preshaders is improved.
255 - Support for D3DX 9 application defined effect state managers
256   (ID3DXEffectStateManager) is implemented.
258 - Using effect pools to share effect parameters between D3DX 9 effects is
259   implemented.
262 *** Internet and networking
264 - UDP/TCP listeners are implemented in Web Services.
266 - Web Services supports the .NET Binary Format, including the string table
267   extension.
269 - Web Services supports the .NET Message Framing Protocol.
271 - Asynchronous support is enabled for receiving messages in Web Services.
273 - HTML event handling is rewritten to support standard-compliant mode.
275 - Multiple new standard-compliant HTML APIs are supported. HTML document
276   mode support is improved to preserve compatibility with documents
277   expecting legacy behavior.
279 - The WebBrowser control supports MHTML files.
281 - Embedding HTML documents in .NET applications is better supported.
283 - WinHTTP correctly parses cookie attributes.
286 *** Cryptography
288 - Cryptographic hashes are implemented internally instead of relying on
289   GnuTLS.
291 - AES encryption is supported.
293 - The Microsoft Root Certificate 2011 is added to the list of known
294   Microsoft certificates.
296 - The Mono and Gecko add-on packages are verified with SHA256 checksums.
299 *** ARM platforms
301 - On ARM, the floating point ABI defaults to 'softfp' for compatibility
302   with Windows binaries.  It can be changed by passing the --with-float-abi
303   flag to configure.
305 - The Wine preloader is also used on ARM64 platforms.
307 - Relay debugging is supported on ARM64 platforms.
310 *** Built-in applications
312 - Registry importing and exporting in RegEdit is reimplemented for better
313   compatibility. Windows 3.1 registry files can also be imported. Registry
314   files are exported to Unicode format by default.
316 - RegEdit always shows the 64-bit view of the registry on 64-bit prefixes.
318 - The Reg.exe registry manipulation tool supports importing and exporting
319   registry files.
321 - The command interpreter implements the MKLINK command.
323 - The command interpreter supports escape characters in the prompt string.
325 - WineMine shows a confirmation dialog before resetting the best scores.
328 *** Tools
330 - The IDL compiler (widl) handles C++ aggregate returns in an
331   MSVC-compatible way.
333 - The resource compiler (wrc) supports translating version resources
334   through the po files.
336 - The Wine debugger (winedbg) supports printing floating point and SSE
337   register state.
339 - All Perl scripts that parse XML use the standard XML::LibXML module.
341 - The obsolete wineinstall tool is removed.
344 *** Miscellaneous
346 - XAudio supports float audio formats with more than 2 channels.
348 - The Scheduler and related classes are supported in the C++ runtime.
350 - SQL driver installation is supported in ODBC.
352 - The ProgramData well known directory is supported.
354 - The Mono engine is updated with upstream Mono fixes, and supports the
355   Mono profiler API version 2.
357 - The thread id is always displayed in debug traces.
360 *** New external dependencies
362 - The krb5 library is used to implement the Kerberos Authentication
363   Package.
365 - The XFixes library is used to receive clipboard change notifications.
369 Alexandre Julliard
370 julliard@winehq.org