Jump to content
Compatible Support Forums
Sign in to follow this  
news

Wine release 2.0

Recommended Posts

The Wine team is proud to announce that the stable release Wine 2.0

is now available.

 

This release represents over a year of development effort and around

6,600 individual changes. The main highlights are the support for

Microsoft Office 2013, and the 64-bit support on macOS.

 

It also contains a lot of improvements across the board, as well as

support for many new applications and games. See the release notes

below for a summary of the major changes.

 

This is the first release made on the new time-based, annual release

schedule. This implies that some features that are being worked on but

couldn't be finished in time have been deferred to the next

development cycle. This includes in particular the Direct3D command

stream, the full HID support, the Android graphics driver, and

message-mode pipes.

 

The source is available from the following locations:

 

http://dl.winehq.org/wine/source/2.0/wine-2.0.tar.bz2

http://mirrors.ibiblio.org/wine/source/2.0/wine-2.0.tar.bz2

 

Binary packages for various distributions will be available from:

 

http://www.winehq.org/download

 

You will find documentation on http://www.winehq.org/documentation

 

You can also get the current source directly from the git

repository. Check http://www.winehq.org/git for details.

 

Wine is available thanks to the work of many people. See the file

AUTHORS in the distribution for the complete list.

 

----------------------------------------------------------------

 

What's new in Wine 2.0

======================

 

 

*** Text and fonts

 

- More DirectWrite features are implemented, including:

- Drawing of underlines.

- Renderer sees drawing effect associated with text segment.

- Support for color fonts in COLR/CPAL format.

- Initial font fallback support, builtin data for some of CJK ranges.

- Support for Wine-specific font replacement registry settings.

- Improved font metrics resolution in case of incomplete or

ambiguous font data.

- Support for EUDC font collection based on current registry

settings.

 

- Font embedding in PDF files is supported.

 

- The RichEdit control supports bulleted and numbered lists.

 

- Bold glyphs can be synthesized also for bitmap fonts.

 

- Character tables are based on version 9.0.0 of the Unicode Standard.

 

 

*** Graphics

 

- Window, bitmap and GDI DC render targets are implemented in Direct2D.

 

- A wide range of optimizations make the DIB engine noticeably faster.

 

- GDI graphic paths are reimplemented for better compatibility; they

are also supported with enhanced metafiles.

 

- Gradients are supported in GDI enhanced metafiles.

 

- Metafiles are better supported in GdiPlus.

 

- The macOS graphics driver supports a high-resolution ("Retina")

rendering mode. It can be enabled by setting "RetinaMode" to "Y"

under HKCU\Software\Wine\Mac Driver.

 

 

*** User interface

 

- The clipboard support is reimplemented for better compatibility;

copy & paste of HTML text is also improved. Drag & drop works more

smoothly.

 

- In desktop mode, the taskbar displays running applications and

allows switching between them.

 

- Version 4 of the system tray notification protocol is implemented.

 

- In desktop mode, some less common display resolutions like 640x400

and 1280x960 are supported.

 

- More user interface elements scale correctly with high-DPI screens.

 

 

*** Direct3D

 

- More Direct3D 10 and 11 features are implemented, including:

- Several more shader model 4 and 5 shader instructions.

- Several more resource formats.

- Integer vertex shader inputs.

- Typeless resources.

- sRGB read/write support.

- Depth and stencil clears.

- Depth-only draws.

- Array textures.

- Index buffer offsets.

- Unordered access views.

- Primitive restart.

 

- The WineD3D graphics card database recognizes more graphics

cards. When available, the GLX_MESA_query_renderer GLX extension is

used to provide more accurate information about the graphics card.

 

- The (system) memory layout of texture resources more closely matches

Windows. This affects applications that write beyond the bounds of a

MIP-level, like for example League of Legends.

 

- The implementation of non-maskable multisample anti-aliasing is more

correct. In particular, when the ARB_internalformat_query extension

is available, only quality levels corresponding to specific sample

counts supported by the OpenGL implementation are reported to the

application. Previously, reporting a large number of non-maskable

multisample anti-aliasing quality levels would break some

applications.

 

- Direct3D 11 feature levels are supported.

 

- Retrieving a GDI device context from DXGI surfaces is

implemented. This is used for rendering to DXGI surfaces using GDI.

 

- More DXGI swapchain methods are implemented, particularly those

relating to switching display modes and switching to and from

fullscreen.

 

- When ARB_clip_control and ARB_viewport_array are both supported,

position fixups are slightly more efficient.

 

- The APPLE_client_storage extension is no longer used. It caused more

problems than it solved.

 

- New HKCU\Software\Wine\Direct3D registry keys:

- "CheckFloatConstants" (REG_SZ).

Setting this to "enabled" enables additional run-time bounds

checking on relatively addressed shader constant access. This

helps some (broken) applications, but comes at a performance cost.

- "MaxShaderModelHS", "MaxShaderModelDS" and "MaxShaderModelCS" (REG_DWORD).

These limit the maximum supported shader model for hull, domain,

and compute shaders respectively, analogous to the existing

"MaxShaderModelVS", "MaxShaderModelGS", "MaxShaderModelPS"

keys. Note that these shader types are new in shader model 5, so

setting this to anything lower than 5 will effectively disable

them.

- "SampleCount" (REG_DWORD).

Setting this registry key will force the multisample anti-aliasing

sample count to the specified value for swapchain render

targets. This allows anti-aliasing to be forced on applications

that do not otherwise support anti-aliasing themselves, but may

have no effect or break the application depending on the specific

application.

 

 

*** DirectDraw

 

- Retrieving a GDI device context from a DirectDraw surface is

implemented in a more accurate way. In particular, retrieving a GDI

device context for a "client memory" surface will retrieve a GDI

device context that's backed by that same client memory.

 

- A number of fixes related to vertex transformation in early

DirectDraw versions have been made.

 

 

*** D3DX

 

- The support for the D3DX 9 effect framework is more complete, in

particular:

- There is initial support for preshaders.

- Many more effect states are correctly applied.

 

- D3DX 10 and 11 asynchronous data loaders are implemented.

 

- The d3dx9 DLLs no longer forward to d3dx9_36, but are built from the

same source instead.

 

- The d3dcompiler DLLs no longer forward to d3dcompiler_43, but are

built from the same source instead.

 

 

*** Sound and video

 

- GStreamer version 1.0 is supported for audio and video streams.

 

- DirectSound supports downmixing from 5.1 and 4.0 formats to stereo.

 

 

*** Internet and networking

 

- The Web Services API is supported. The XML reader and writer are

implemented, along with support for serializing many common data

types. Basic support for making SOAP calls is also included. This

enables Microsoft Office 2013 online activation.

 

- The Gecko engine is updated to the version from Firefox 47.

 

- IDN name resolution is supported.

 

- Various SHA hashes are supported using GnuTLS.

 

- Looking up the host address prioritizes non-loopback interfaces,

which fixes a number of networked games.

 

- XML writing is faster for large files.

 

- Winsock supports the IP_DONTFRAGMENT socket option.

 

- Long URLs are handled correctly.

 

- JavaScript performance is improved. JSON is also supported.

 

 

*** Internationalization

 

- There is proper support for the Persian locale.

 

- Uniscribe better supports right-to-left languages.

 

- Japanese Hiragana, Katakana and full-width/half-width character

mapping is implemented.

 

 

*** 64-bit support

 

- 64-bit applications are supported on macOS.

 

- The Mono engine has 64-bit support.

 

- C++ exceptions are handled correctly on x86-64, including nested

exceptions and collided unwinds.

 

- The debug registers are supported on x86-64.

 

 

*** Built-in applications

 

- The 'winebrowser' helper application supports multiple arguments to

invoke the host browser or mailer.

 

- The 'reg' command-line registry utility supports the 'query'

command, all registry data types, and has more robust command line

handling.

 

- The 'winhlp32' help viewer properly displays tables and images.

 

- The 'wineconsole' tool better supports East-Asian fonts. Color

handling is also improved.

 

 

*** Build environment

 

- Import libraries can optionally be built as static libraries

similarly to Windows, instead of .def files. This avoids the need

for a separate .def.a library file.

 

- The IDL compiler supports "midl_pragma warning" directives.

 

- Cross-compilation with the Mingw-w64 Clang and ARM toolchains is

supported.

 

 

*** Kernel

 

- A new driver architecture is in place for supporting HID devices.

This follows the Windows model, with platform-specific bus drivers

and HID minidrivers. It will be used in future releases to unify

support for HID devices, and potentially also for USB device

support.

 

- Loading multiple kernel drivers inside the same user-mode process is

supported. This is used for HID drivers.

 

- A directory cache is implemented, to allow returning files in the

expected order and avoid relying on platform-specific system calls.

 

- Many more API Set libraries (the oddly-named api-ms-win-* dlls) are

implemented.

 

- Interrupt 0x2d (used for debugger checks) is emulated.

 

 

*** Miscellaneous

 

- Read interval timeouts are supported for serial ports.

 

- Variables starting with 'QT_' are filtered from the Unix environment

since they may have unwanted effects on Qt-based Windows

applications.

 

- Support for joystick button mapping and force feedback effects is

improved.

 

- Many stream classes are implemented in MSVCIRT, the old I/O stream

C++ runtime.

 

- Windows Management Instrumentation (WMI) implements some more WBEM

classes.

 

- Most remaining OpenMP functions are implemented.

 

- Uninstallation support in MSI is improved.

 

 

*** New external dependencies

 

- libudev is used for HID device support.

 

- GStreamer version 1.0 is used instead of version 0.10.

 

- GnuTLS version 2.10 or higher is required for the SHA hashing

functions to be supported.

 

 

*** Configuration changes

 

- A number of DLLs are now built separately from a common source,

instead of forwarding to a master DLL. This means that native DLL

overrides need to be set on the specific version of the DLL being

loaded, instead of the master one. This applies to the d3dx9_*,

d3dcompiler_*, xaudio2_*, xapofx1_* and x3daudio1_* DLLs.

 

 

*** Release numbering

 

- Starting with 2.0, version numbering will change: stable release

updates will follow the existing scheme: 2.0.1, 2.0.2, 2.0.3, etc.

but the developemnt branch will drop the intermediate number: the

releases will be numbered 2.1, 2.2, 2.3, etc. leading to the next

stable release, which will be called 3.0.

 

--

Alexandre Julliard

julliard ( -at -) winehq.org

 

 

 

Share this post


Link to post

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×