Release 1.4.
[wine] / ANNOUNCE
1 The Wine team is proud to announce that the stable release Wine 1.4
2 is now available.
3
4 This release represents 20 months of development effort and over
5 16,000 individual changes. The main highlights are the new DIB
6 graphics engine, a redesigned audio stack, and full support for
7 bidirectional text and character shaping.
8
9 It also contains a lot of improvements across the board, as well as
10 support for many new applications, notably Microsoft Office 2010. See
11 the release notes below for a summary of the major changes.
12
13 This release is dedicated to the memory of Gé (Greg) van Geldorp, who
14 passed away in May 2011. Greg single-handedly designed, built, and
15 maintained the Wine Testbot, which has become a cornerstone of our
16 development process. The high quality of this release owes a lot to
17 his work. He is greatly missed by us all.
18
19
20 The source is available from the following locations:
21
22   http://ibiblio.org/pub/linux/system/emulators/wine/wine-1.4.tar.bz2
23   http://prdownloads.sourceforge.net/wine/wine-1.4.tar.bz2
24
25 Binary packages for various distributions will be available from:
26
27   http://www.winehq.org/download
28
29 You will find documentation on http://www.winehq.org/documentation
30
31 You can also get the current source directly from the git
32 repository. Check http://www.winehq.org/git for details.
33
34 Wine is available thanks to the work of many people. See the file
35 AUTHORS in the distribution for the complete list.
36
37 ----------------------------------------------------------------
38
39 What's new in Wine 1.4
40 ======================
41
42 *** Graphics
43
44 - There is a new graphics engine for rendering into Device Independent
45   Bitmaps (DIB). DIB rendering no longer requires access faults or
46   round-trips to the X server, which yields large performance gains in
47   DIB-intensive applications.
48
49 - The DIB engine can also be used for fall-back implementations of
50   some graphics primitives, like alpha blending, when the display
51   driver doesn't support them directly.
52
53 - All possible color formats are supported by the DIB engine, so DIB
54   operations are no longer limited by the color resolution of the
55   display. Rendering of the various palette formats is also improved.
56
57 - Custom styles of dashed lines are supported.
58
59 - Cosmetic pens using hashes or patterns are supported.
60
61 - Gradients use dithering on low color resolution devices for a nicer
62   appearance.
63
64 - The XRender extension is used for gradients when supported.
65
66 - PostScript output quality is improved, particularly for bitmaps and
67   paths.
68
69 - Rotated text works better for all output device types.
70
71 - GdiPlus supports more image formats, including formats that are not
72   supported through GDI.
73
74 - More image codecs are implemented, including support for TGA and CMYK
75   JPEG decoding, as well as BMP, TIFF, PNG, and ICNS encoding.
76
77
78 *** Audio
79
80 - The audio stack is completely redesigned, based on the Vista
81   model. WinMM and DirectSound are implemented on top of the new
82   MMDevAPI library.
83
84 - The Alsa, OSS, and CoreAudio drivers have been rewritten to use the
85   new model. They now serve as back-ends to the MMDevAPI dll, which no
86   longer needs to rely on the OpenAL library.
87
88 - The Jack, NAS, AudioIO, and ESD audio subsystems are no longer
89   supported. Version 3 of the OSS subsystem is no longer supported
90   either, version 4 is required.
91
92 - The Audio tab in the Wine Configuration tool has been redesigned for
93   the new audio subsystem. The appropriate driver is automatically
94   selected and no longer needs to be configured manually.
95
96
97 *** Input devices
98
99 - The XInput 2 extension is used to provide better mouse control in
100   games and other full-screen applications.
101
102 - The mouse is automatically clipped to prevent it from leaving a
103   full-screen window when running in desktop mode. Switching to a
104   different application with Alt-Tab releases the mouse. Clipping can
105   be disabled through the Wine Configuration tool.
106
107 - Animated mouse cursors are fully supported.
108
109 - Joystick action mapping is supported, including a configuration dialog.
110
111
112 *** Internationalization
113
114 - Bidirectional text rendering is fully supported.
115
116 - Font shaping and reordering is supported for all the scripts
117   specified in the Unicode standard.
118
119 - Bidirectional text editing is supported in the standard edit
120   control.
121
122 - Vertical fonts (e.g. for Japanese) are supported.
123
124 - Mirroring of windows, menus, and window controls for right-to-left
125   languages is fully supported.
126
127 - All resources (strings, menus, dialogs, accelerators) contained in
128   Wine can be translated through standard gettext-style po files.
129
130 - The Unicode character data tables have been updated to version 6.0
131   of the Unicode standard.
132
133 - Wine is translated to French, German, Spanish, Italian, Dutch,
134   Swedish, Finnish, Portuguese, Catalan, Hungarian, Polish, Russian,
135   Slovenian, Lithuanian, Japanese, and Korean. It has partial
136   translations for another fifteen languages.
137
138
139 *** User interface
140
141 - The new Vista style of file dialogs is supported.
142
143 - Common controls are improved, particularly the calendar, tree view,
144   system link, and image list controls.
145
146 - Parts of the Game Explorer API are implemented.
147
148 - Wine can take advantage of the GStreamer framework for audio and
149   video playback. This makes it possible to support all formats that
150   have a GStreamer codec. On Mac OS X, the QuickTime framework is used
151   for the same purpose.
152
153
154 *** Desktop integration
155
156 - System tray notification balloons are implemented.
157
158 - The system tray is displayed as a task bar at the bottom of the
159   screen in desktop mode.
160
161 - The system tray is automatically registered again when the Unix tray
162   manager is restarted.
163
164 - The standard mouse cursors are remapped to the cursor theme of the
165   Unix desktop.
166
167 - Drag & drop of OLE objects across applications is supported.
168
169 - Icons for menu entries are exported in multiple sizes and in PNG
170   format.
171
172 - Icons are displayed for the Unix desktop "Open with..." menu
173   entries.
174
175
176 *** Internet and networking
177
178 - The built-in Internet Explorer has a user interface, including a
179   menu, an address bar, a tool bar, and configuration dialogs.
180
181 - There is an "Internet Settings" control panel that allows
182   configuring various aspects of web browsing, as well as managing
183   security certificates.
184
185 - The VBScript language is fully supported.
186
187 - The built-in (Gecko-based) web browser engine supports ActiveX.
188
189 - The Gecko engine has been updated to the version from Firefox 8.
190
191 - The Gecko engine is packaged as an MSI file, and its installation
192   can be managed from the "Add/Remove Programs" control panel.
193
194 - The Gecko engine is available on 64-bit.
195
196 - Persistent HTTP connections are supported.
197
198 - HTTP proxies are better supported, including PAC scripts.
199
200 - Changing network passwords is supported.
201
202 - The HTML Help support is improved, including a nicer user interface
203   and better navigation support.
204
205 - Asynchronous I/O on network socket is improved, particularly
206   asynchronous accepts. This helps with various networked games.
207
208
209 *** Direct3D
210
211 - Reloading sRGB textures uses either EXT_texture_sRGB_decode or FBO
212   blits when available. This is much faster. This affects Source
213   Engine games and Unreal Engine 3 games in particular.
214
215 - WineD3D supports multisample anti-aliasing.
216
217 - D3D8 and D3D9 properly support v-sync / swap intervals.
218
219 - The WineD3D blitter code is improved both for correctness and
220   performance.
221
222 - The WineD3D graphics card database has been updated to recognize new
223   graphics cards and Mesa drivers.
224
225 - WineD3D no longer uses COM for its implementation. This makes it
226   much nicer to work with.
227
228 - The context management code is improved. The window being destroyed
229   while the WineD3D device is still active in particular is handled
230   much better.
231
232 - There have been some performance improvements related to WineD3D
233   state management and resource updates.
234
235 - Focus and device window handling work better for D3D8 and D3D9. This
236   mostly affects things like changing graphics settings, switching
237   from full-screen to windowed and back, etc.
238
239 - NVDB is supported on cards that support GL_EXT_depth_bounds_test.
240
241 - The INTZ and NULL formats are supported.
242
243 - Depth surface blits are implemented in WineD3D.
244
245 - Depth bias handling is improved. This fixes flickering shadows and
246   decals in a couple of games, like Mass Effect 2 and Unreal
247   Tournament 2004.
248
249 - GL_ARB_draw_elements_base_vertex is supported. This allows draws to
250   be more efficient in some cases.
251
252 - GL_ARB_map_buffer_alignment is supported. This allows for more
253   efficient mapping of textures and buffers in some cases.
254
255 - Handling projected textures works better in early shader model
256   versions.
257
258 - Shaders are strictly checked against the hardware capabilities. This
259   means we won't try to create e.g. a shader model 3 shader on shader
260   model 2 hardware.
261
262 - D3D9EX texture creation from system memory is supported. This
263   affects some Source Engine games like Team Fortress 2.
264
265 - The D3DX9 shader assembler is mostly finished. It is now part of the
266   new d3dcompiler dll.
267
268 - Various parts of D3DX9 are more complete, including:
269   - The surface / texture loading functions.
270   - The mesh creation and manipulation functions.
271   - The vertex declaration handling functions.
272   - The effects framework, binary effect parsing in particular.
273
274
275 *** DirectDraw
276
277 - OpenGL is used by default for DirectDraw as well, just like D3D8 and
278   D3D9. For most applications this is an improvement, but nevertheless
279   the old GDI renderer may still work better for specific applications
280   or if the graphics driver's OpenGL implementation is inadequate.
281
282 - Flips are properly supported. The back buffer now contains the front
283   buffer contents after a flip instead of being undefined.
284
285 - Improved support for viewports in early versions of DirectDraw that
286   include an extra clipspace transformation. This affects the original
287   Half-Life.
288
289 - Fixes for cooperative levels and associated window handling and mode
290   changes.
291
292 - DirectDraw clippers are supported.
293
294
295 *** Kernel
296
297 - DOSBox is used to run DOS applications on platforms that don't
298   support vm86 mode.
299
300 - The Windows console is emulated as best as possible on Unix
301   terminals without requiring switching into curses mode.
302
303 - Volume label and serial number can be retrieved from UDF filesystems
304   (used on DVDs).
305
306 - Side-by-side manifests are installed for a number of built-in
307   libraries to make them more compatible with applications using
308   manifest resources.
309
310 - The Wine preloader is also used on 64-bit for a more compatible
311   address space layout.
312
313
314 *** Installer support
315
316 - Applying installer patches is supported. This is needed for various
317   Service Pack installers, particularly for the .NET ones.
318
319 - Installing side-by-side assemblies is supported.
320
321 - Rollbacks of failed installs is supported.
322
323 - Installing services is better supported.
324
325 - MSI installers can be created entirely under Wine, using the
326   'cabarc' and 'winemsibuilder' tools.
327
328
329 *** Build environment
330
331 - The IDL compiler (widl) can generate format strings for both
332   old-style and new-style COM interpreted stubs.
333
334 - Registrations for dlls and typelibs are based on scripts generated
335   at compile time, for faster Wine prefix creation and updates.
336
337 - The Resource Compiler (wrc) and Message Compiler (wmc) can generate
338   translated resources from po files, as well as create po files from
339   existing translated resources.
340
341 - Fake PE dlls are generated and installed for all built-in dlls,
342   since many applications expect to find the PE dlls on disk.
343
344 - The ARM platform is supported by the Wine tool chain.
345
346 - The windows.h header can now be used in Wine code, the compile time
347   gains are no longer worth the header incompatibilities.
348
349 - Some headers have been modified to make them easier to share with
350   the Mingw-w64 project.
351
352
353 *** Platform-specific changes
354
355 - Wine compiles on ARM platforms.
356
357 - On Mac OS X, the secure channel implementation uses the Security
358   framework instead of the GnuTLS library.
359
360 - On Linux, dynamic device management can use the new UDisks service
361   in addition to HAL.
362
363 - Stubless OLE proxies are supported also on 64-bit platforms.
364
365
366 *** Built-in applications
367
368 - The new 'cabarc' program allows manipulation of cabinet files,
369   including creation of new cabinets.
370
371 - The new 'wscript' program implements the Windows Script Host, to run
372   VBScript and JavaScript scripts.
373
374 - The new 'taskkill' program allows killing Windows processes by name
375   or process id.
376
377 - The new 'ipconfig' program displays the IP configuration seen by
378   Windows programs.
379
380 - The new 'hostname' program displays the hostname seen by Windows
381   programs.
382
383 - The 'explorer' program implements a shell namespace explorer instead
384   of launching the file manager.
385
386 - The 'view' program can display enhanced metafiles.
387
388 - The 'dxdiag' tool outputs real information about the system.
389
390 - The new 'winemsibuilder' tool allows creating MSI installers; it is
391   used to build the Gecko add-on package.
392
393 - Almost all built-in applications are fully Unicode.
394
395 - All applications installed to /usr/bin have a manual page.
396
397
398 *** Quality assurance & debugging
399
400 - The test suite no longer attempts to support Win9x platforms, this
401   was too much effort for little benefit.
402
403 - The Wine debugger offers to save crash information to a file, to
404   make it easier to provide good information in bug reports.
405
406 - Parsing of debugging information from various object file formats is
407   improved, which should yield better quality crash information,
408   particularly for 64-bit.
409
410
411 *** Miscellaneous
412
413 - XML support is improved, including support for schemas, namespaces,
414   MSXML version 6, and an XML file writer. This is particularly useful
415   for the new Microsoft Office XML-based document formats.
416
417 - The new "secure" versions of the C runtime functions are almost all
418   implemented.
419
420 - There is an initial implementation of the Microsoft C++ standard
421   class libraries, including string, locale, and stream classes.
422
423 - Creation of compressed cabinet files is supported.
424
425 - There is an implementation of the OpenCL library, as a wrapper
426   around the equivalent Unix library.
427
428 - Print jobs are submitted to CUPS directly instead of requiring the
429   'lpr' command-line tool.
430
431 - There is support for managing multiple .NET runtime versions and
432   their corresponding Mono versions.
433
434
435 *** New external dependencies
436
437 - The XInput 2 library is used for mouse control in games.
438
439 - The libopencl library is used by the OpenCL wrapper dll.
440
441 - The libgettextpo library is optionally used at build time to update
442   po files from the rc sources.
443
444 - The msgfmt tool (from the gettext library) is used at build time to
445   compile po files.
446
447 - The zlib library is used to implement cabinet file compression.
448
449 - The libfreetype library needs to be at least version 2.2, older
450   versions are no longer supported.
451
452 - The libdbus library is used for the UDisks device support on Linux.
453
454 - The smbpasswd tool (part of Samba) is used for changing network
455   passwords.
456
457 - DOSBox is used to run DOS applications. It is recommended to use the
458   latest SVN version of DOSBox since it contains some Wine-specific
459   improvements.
460
461
462 *** Useful configuration options
463
464 Note: More details abouts these and other configuration options can be
465       found at http://wiki.winehq.org/UsefulRegistryKeys
466
467 - The correct audio driver is detected automatically, but can still be
468   overridden through the HKCU\Software\Wine\Drivers\Audio key like in
469   previous versions. It is recommended to delete this key entirely to
470   enable the auto-detection.
471
472 - Multisample anti-aliasing can be disabled by setting "Multisampling"
473   to "disabled" under HKCU\Software\Wine\Direct3D.
474
475 - Setting "AlwaysOffscreen" to "enabled" under
476   HKCU\Software\Wine\Direct3D simplifies sharing depth / stencil
477   surfaces between on-screen and off-screen render targets in
478   WineD3D. This will likely become the default for the next release.
479
480 - The DirectDraw renderer can be switched back to the old GDI mode by
481   setting "DirectDrawRenderer" to "gdi" under HKCU\Software\Wine\Direct3D.
482
483
484 *** Known issues
485
486 - Support for PulseAudio is improved, but very recent versions of
487   PulseAudio (>= 1.0) and alsa-plugins (>= 1.0.25) are required for
488   good results, since older versions contain various bugs.
489   See http://wiki.winehq.org/Sound for details.
490
491 --
492 Alexandre Julliard
493 julliard@winehq.org