This release delivers the fix for security vulnerability CVE-2013-2003
and makes the Makefile.am more compatible with future automake releases.
Alan Coopersmith (3):
Replace deprecated Automake INCLUDES variable with AM_CPPFLAGS
signedness bug & integer overflow in _XcursorFileHeaderCreate() [CVE-2013-2003]
libXcursor 1.1.14
D-Bus Python Bindings 1.2.0 (2013-05-07)
========================================
The "compile like it's 1998" release.
Dependencies:
• libdbus 1.6 or later is now required.
Enhancements:
• Unicode Corrigendum 9: when used with a suitable version of libdbus
(1.6.10 or later, or 1.7.2 or later), noncharacters in strings are
now accepted
Fixes:
• Support DBusException('something with non—ASCII') under Python 2
(Michael Vogt, smcv; fd.o #55899)
• Correct some misleading wording in COPYING which was written under the
assumption that libdbus could actually be relicensed to MIT/X11
(Thiago Macieira)
• Avoid variable-length arrays, because MSVC++ is still stuck in 1998
(based on patches from Christoph Höger, fd.o #51725)
• Remove unnecessary uses of stdint.h (fd.o #51725)
• Add support for Unix compilers not supporting 'inline', for completeness
• Use GObject.__class__ instead of GObjectMeta, which can no longer be
imported from gi.repository.GObject in pygobject 3.8
• Fix autoreconfiscation on Automake 1.13 (Marko Lindqvist, fd.o #59006)
Changes since 3.1.2:
Bug 526 - Fix linear vectorized transversal in linspace.
Bug 551 - Fix compilation issue when using EIGEN_DEFAULT_DENSE_INDEX_TYPE.
Bug 533 - Fix some missing const qualifiers in Transpose
Fix a compilation with CGAL::Gmpq by adding explicit internal:: namespace when calling abs().
Fix computation of outer-stride when calling .real() or .imag().
Fix handmade_aligned_realloc (affected conservativeResize()).
Fix sparse vector assignment from a sparse matrix.
Fix log(0) with SSE.
Fix bug in aligned_free with windows CE.
Fix traits of Map<Quaternion.
Fix a few warnings (507, 535, 581).
Enable SSE with ICC even when it mimics a gcc version lower than 4.2
Workaround gcc-4.7 bug #53900 (too aggressive optimization in our alignment check)
Noteworthy changes in version 2.0.20 (2013-05-10)
-------------------------------------------------
* Decryption using smartcards keys > 3072 bit does now work.
* New meta option ignore-invalid-option to allow using the same
option file by other GnuPG versions.
* gpg: The hash algorithm is now printed for sig records in key listings.
* gpg: Skip invalid keyblock packets during import to avoid a DoS.
* gpg: Correctly handle ports from DNS SRV records.
* keyserver: Improve use of SRV records
* gpg-agent: Avoid tty corruption when killing pinentry.
* scdaemon: Improve detection of card insertion and removal.
* scdaemon: Rename option --disable-keypad to --disable-pinpad.
* scdaemon: Better support for CCID readers. Now, the internal CCID
driver supports readers without the auto configuration feature.
* scdaemon: Add pinpad input for PC/SC, if your reader has pinpad and
it supports variable length PIN input, and you specify
--enable-pinpad-varlen option.
* scdaemon: New option --enable-pinpad-varlen.
* scdaemon: Install into libexecdir to avoid accidental execution
from the command line.
* Support building using w64-mingw32.
* Assorted bug fixes.
Another release on schedule:
------------------------------------------
Andreas Wettstein (1):
Draft for German T3 layout.
Daniel Drake (1):
Fix AE00 alias in olpcm keycodes
Evgeny Bobkin (1):
Fix keyboard indicator for russian (germany, phonetic)
James M Leddy (1):
Add XF86AudioMicMute mappings
Michal Nazarewicz (1):
Add various compose:*-altgr options.
Peter Hutterer (1):
rules: fix iso639 code for irish
Sergey V. Udaltsov (16):
Fixing wrong iso639-3 codes
Fixing ISO codes
English Mali layouts have English language assigned to them
fr --> fra (ISO 639)
Fixed ru(ruu) - invalid keysym
Updates to Cameroon Keyboard
Map Alt to Win
Fixed fypo
Fixed UK Macbook Pro layouts
Fixed Congolese
Added ru(mac)
Added RAlt as 3rd level switcher to us(dvp)
prerelease
wrong location of de(legacy)
Updated translations, prerelease
release 2.9
Stephan Hilb (1):
Remove explicit virtual modifier setting for level3 and level5
Walter Bender (1):
add support for the OLPC mechanical non-membrane keyboard
This minor bugfix release includes the fix for the security issue recently
reported as CVE-2013-1996, as well as a number of other cleanups of the
memory allocation & error handling code noticed while working on that.
Adam Jackson (1):
configure: Remove AM_MAINTAINER_MODE
Alan Coopersmith (9):
Replace deprecated Automake INCLUDES variable with AM_CPPFLAGS
Get rid of unnecessary casts in FS*alloc calls
Get rid of unnecessary casts in FSfree calls
Use NULL instead of 0 for null pointers
Avoid reading outside bounds when _FSReply receives an Error response
Avoid accessing freed memory on realloc failure in FSListFontsWithXInfo
Get rid of more duplication in error cleanup code in FSListFontsWithXInfo
Sign extension issue and integer overflow in FSOpenServer() [CVE-2013-1996]
libFS 1.0.5
Colin Walters (1):
autogen.sh: Implement GNOME Build API
Thomas Klausner (1):
Fix a prototype error
This bug fix release includes the fix for the recently announced
CVE-2013-1983, along with some other cleanups & warning fixes.
Adam Jackson (1):
configure: Remove AM_MAINTAINER_MODE
Alan Coopersmith (7):
Strip trailing whitespace
Replace deprecated Automake INCLUDES variable with AM_CPPFLAGS
Remove duplicate declaration of XFixesExtensionName in Xfixesint.h
XFixesFetchRegionAndBounds: use nread in call to XReadPad
Use _XEatDataWords to avoid overflow of _XEatData calculations
integer overflow in XFixesGetCursorImage() [CVE-2013-1983]
libXfixes 5.0.1
Colin Walters (1):
autogen.sh: Implement GNOME Build API
Peter Hutterer (1):
man: remove "current", we're way past 1.0.
This is a bugfix release.
Bug fixes:
* Fixed a bug in the new ECC code. The ecc_j_to_a function
called GMP:s mpn_mul_n (via ecc_modp_mul) with overlapping
input and output arguments, which is not supported.
* The assembly files for SHA1, SHA256 and AES depend on ARMv6
instructions, breaking nettle-2.7 for pre-v6 ARM processors.
The configure script now enables those assembly files only
when building for ARMv6 or later.
* Use a more portable C expression for rotations. The
previous version used the following "standard" expression
for 32-bit rotation:
(x << n) | (x >> (32 - n))
But this gives undefined behavior (according to the C
specification) for n = 0. The rotate expression is replaced
by the more portable:
(x << n) | (x >> ((-n)&31))
This change affects only CAST128, which uses non-constant
rotation counts. Unfortunately, the new expression is poorly
optimized by released versions of gcc, making CAST128 a bit
slower. This is being fixed by the gcc hackers, see
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57157.
The following problems have been reported, but are *not* fixed
in this release:
* ARM assembly files use instruction syntax which is not
supported by all assemblers. Workaround: Use a current
version of GNU as, or configure with --disable-assembler.
* Configuring with --disable-static doesn't work on windows.
The libraries are intended to be binary compatible with
nettle-2.2 and later. The shared library names are
libnettle.so.4.7 and libhogweed.so.2.5, with sonames still
libnettle.so.4 and libhogweed.so.2.
A new version of LU-factorization routines were added.
Currently this version provides the same functionality as the
old one, however, the new version allows further improving.
Old routines for FHV-factorization used to update the basis
factorization were replaced by a new version conforming to the
new version of LU-factorization.
Some clarifications about using the name index routines were
added.
Some typos were corrected in the MathProg language reference.
A serious bug (out-of-range indexing error) was *tentatively*
fixed in the routine glp_relax4. Unfortunatly, this bug is
inherited from the original Fortran version of the RELAX-IV
code (for details please see ChangeLog), and since the code is
very intricate, the bug is still under investigation.
for that);
- use more common option list header line;
- correct argument names of `--src' and `--xsrc' in the text;
- correct default `xsrcdir' directory;
- choose different argument wording (then also using appropriate
macro) in the arbitrary sandbox command running explanation (and
adjust the list width with it);
- add comma after ``e.g.'';
- bump date.
From Bug Hunting.
- add an appropriate comma;
- correct (also macro wise) / rewrite `EXAMPLES' section;
- replace packages(7) reference in `SEE ALSO' with pkgsrc(7) one
(src/share/man/man7/packages.7 was removed in 2007);
- remove ``Documentation on the NetBSD Package System'' reference
from `SEE ALSO' (it's referenced in pkgsrc(7));
- remove unneccesary `.br' macro (and low level macros should
generally not be used anyway);
- remove `BUGS' section, as the ``bug'' described in it isn't a
bug at all;
- bump date.
From Bug Hunting.
New in Mono 3.0.10
A hot-fix release.
Reverted parallel mkbundle.
Fixed duplicated debug symbol problem in the compiler.
New in Mono 3.0.9
Fix gtk+ copy & paste.
Fix debugger support for custom attributes.
Proper stack bounds calculation on windows.
Add partial generic methods to our C# compiler.
NaCL support for ARM.
Fix LLVM loading on OSX.
New in Mono 3.0.8
Multiple improvements to the BCL to reduce usage of non generic
collections and use faster string comparisons.
Optimize large object cloning and boxing.
Multiple changes to bring mono closer to full PCL compatibility.
Add System.WeakReference<T>
Sgen can now return memory to the system for
Many compiler fixes for async.
Improved FullAOT support for async.
NaCl build fixes and improvements.
WCF now has cookie support in .net 4.0.
Optimize Marshal.Read/Write methods to avoid a trip to unmanaged
when needed.
Optimize LINQ with arrays.
Multiple fixes to the sgen's concurrent collector.
New in Mono 3.0.7
Multiple fixes to the sgen's concurrent collector.
Performance improvements in primitive types parsing.
Add a configuration time option to disable remoting.
Optimize tls lookups on full-aot + arm.
Add a configuration option to disable remoting.
Multiple improvements and bug fixes in culture related code.
Runtime assembly mapping for PCL.
Fix Binder primitive conversion to make .net.
Optimize Activator.CreateInstance ().
Optimize icalls in FullAOT code.
Implement Volatile.Read/Write<T> and Interlocked.MemoryBarrier ().
Optimized unmanaged to managed string conversion.
New in Mono 3.0.6
This is another hotfix release. It reverses the visibility change
made to Mono.Runtime.GetDisplayName.
New in Mono 3.0.5
This is a hot-fix release. It fixes a crash in the runtime support
for generics, which could be triggered by Xamarin Studio. New in
Mono 3.0.4 Garbage Collector
Many changes went into our GC implementation. We added long links
support to our traditional Boehm collector. As for SGen, it is
finally a true concurrent GC, with cementing support. We also fixed
several bugs, such as #9928 pointer free deadlock problem and bugs
in mono_gc_weak_link_get. Async
Rewrite of async StreamReader/StreamWritter operations to not fail
on subsequent async call. Fixes#9761 ASP.NET
Updated encoding support.
Some minor bug fixes. Other improvements
New MONO_DISABLE_SHARED_AREA environment variable lets you turn of
the use of shared memory in Mono (used by performance counters and
optionally by the io-layer).
Updated EntityFramework version that ships with Mono.
Support for ConnectionLifetime parameter in SqlClient (contributed
by 7digital).
Fixed C# Evaluator Terse reader with loops
Don't report user operator error during probing user conversions.
Fixes#10170.
Add explicit interface GetType implementation to avoid object::GetType
become proxy. (C# compiler fix)
Implement use of __refvalue as an lvalue. Fixes#10034. Packaging
We no longer install a /usr/bin/pkg-config on OSX, to stop clashing
with Homebrew.
New in Mono 3.0.3
Mono garbage collectors now feature multiple dtrace probes for
users on MacOS and Solaris.
Many stability improvements and performance work on Mono's Async
support. Garbage Collector
Sgen now has a concurrent GC that can significantly reduce max
pauses. This is an experimental feature that is been continuously
developed. Click here for more details. Bug Fixes
#8401, #9247, #8903, #9087, #9225, #9186, #9118, #9137, #9133,
#9116, #1446, #2246, #6918, #8904, #8927, #2907, #8829, #8786 New
in Mono 3.0.2
We are now on a cadence to deliver new Mono features and updates
on a regular basis. A month after our last release we are now
bringing some 363 commits, with 3055 files changed, 171240
insertions(+), 179104 deletions(-) Major Features
'Reactive Extensions': Mono now bundles the open sourced Microsoft's
Reactive Extensions
F# 3.0: We have updated the bundled F# compiler on OSX to version
3.0 (tag 3.0.22 from the open source fsharp repository).
SGen Garbage Collector: new lazy sweep strategy in Mono's new GC
that reduces the GC times for major collections significantly. We
have also tuned and improved the collector.
System.Json: We reverted System.Json to Mono's version, as it was
lighter and tolerates more input than Microsoft's one. We ship
System.Json.Microsoft as well for users that want to use the
Microsoft stack.
Runtime: Many improvements to Mono, better x86 and ARM support
across the board.
NTLM: Large upgrade to our NTLM stack.
clang: Mono now builds with Clang.
monodoc: vast improvements to our documentation infrastructure.
Bug fixes in 3.0.2
#8566, #8565, #8549, #8646, #8592, #8561, #8559, #8557, #8553,
#8533, #8502, #8468, #8449, #8448, #8414, #8399, #8385, #8384,
#8383, #8366, #8334, #8320, #8312, #8285, #8283, #8263, #8232,
#8156, #8037, #7965, #6650, #5760, #4587, #3582, #3275, #2471 and
#2190
New in Mono 3.0 Major Highlights C# Compiler
Mono now has a complete C# 5.0 compiler with asynchronous programming
support.
Our C# compiler has now completed its migration from using
System.Reflection.Emit as its code generation backend to use the
IKVM.Reflection API. This functionality was previewed in Mono 2.10
and is now the default. With this functionality, developers can
use any mscorlib that they want (for example the MicroFramework
one, or a custom one) without having to build a custom compiler.
We were able to eliminate the multiple executables for the compiler,
and unify all the compilers into one as well as reducing our build
times significantly.
gmcs, dmcs and smcs are now merely aliases to call the mcs compiler
with the proper -sdk flag. Tool/Library Purpose Profile
New Backend 2.10 Backend gmcs C# Compiler 2.0
IKVM.Reflection System.Reflection 2.0 dmcs C# compiler
4.0 IVKM.Reflection System.Reflection 4.0 smcs C#
Compiler 2.1 (Silverlight, MonoTouch, MonoDroid)
IKVM.Reflection System.Reflection 2.0 mcs C# Compiler
Any profile, any mscorlib IKVM.Reflection IKVM.Reflection
csharp Interactive C# Shell/REPL 4.5 System.Reflection
4.5 System.Reflection 4.0 Mono.CSharp C# Compiler as a Service
2.0, 2.1 and 4.0. System.Reflection 4.0 System.Reflection
System.Reflection is still used as a backend for the compiler as
a service and the C# interactive shell. Evaluation can now Compile
Types
The Evaluator.Eval () API is no longer limited to expressions and
statements, you can now pass entire namespace, class, interface,
struct definitions as a string and have the result get compiled.
This extends to the csharp command:
csharp> class X { public int a; } csharp> var t = new X () { a =
1 }; csharp> print (t.a); 1 csharp>
Instance API
The compiler as a service exposed by the Mono.CSharp library is no
longer limited to be a global compiler, now you can instantiate
multiple scopes for the compiler, each having its own set of
localized types and global variables.
For example, the following sample assigns a string in one context
and an int in another one:
using System; using Mono.CSharp;
class MyWorld {
public Evaluator Evaluator;
public MyWorld (string [] args) {
var r = new Report (new ConsoleReportPrinter ());
var cmd = new CommandLineParser (r);
var settings = cmd.ParseArguments (args); if (settings
== null || r.Errors > 0)
Environment.Exit (1);
Evaluator = new Evaluator (settings, r); } }
class X {
static int Main (string [] args) {
var first = new MyWorld (args); var second = new
MyWorld (args);
first.Evaluator.Run ("var Demo = \"hello, world\";");
second.Evaluator.Run ("var Demo = 1;"); first.Evaluator.Run
("print (Demo);"); second.Evaluator.Run ("print
(Demo);"); return 0; } }
C# Interactive Shell
New convenience function print, can be used instead of Console.WriteLine
Additionally, the C# interactive shell will by default use a terse
syntax that does not require a semicolon at the end of an expression,
for example:
csharp> 1 + 2 3 csharp>
4.5 Profile
The 4.5 Profile is a strict superset of the 4.0 API and is now the
default profile.
Because 4.5 API is a strict superset of 4.0 API they both share
the same assembly version number, so we actually install the 4.5
library into the GAC.
Some of the changes in the 4.5 API family include:
New Async methods WinRT compatibility API Newly introduced
assemblies (System.Net.Http, System.Threading.Tasks.Dataflow)
New Microsoft Open Source Stacks
We now include the following assemblies as part of Mono from
Microsoft's ASP.NET WebStack:
System.Net.Http.Formatting.dll System.Web.Http.dll System.Web.Razor.dll
System.Web.WebPages.Deployment.dll System.Web.WebPages.Razor.dll
System.Web.WebPages.dll System.Web.Mvc.dll System.Json.dll
(Previously available in Mono, but now replaced with Microsoft's
implementation)
We also bundle the recently open sourced Entity Framework and
EntityFramework.dll
Garbage Collector
SGen now has a new task management system that allows it to easily
scale new GC-related tasks across multiple CPUs if available:
SGen on SMP systems is able to distribute more work across the
worker threads. Previously only the mark phase was distributed.
SGen is now able to perform parallel collection in the nursery.
SGen has been ported to Win32 SGen has been ported to the MIPS
platform Precise stack scanning has been improved considerably,
and it is now supported on x86 and ARM. On OSX, SGen now uses
Mach APIs directly to speedup some tasks in the garbage collector.
Runtime Optimizations
Implemented fast version of ThreadLocal<T> (it is now a low-level
intrinstic operation)
List<T> optimizations
Support for new attributes to force inlining.
Major change in Mono to support the full table of Unicode surrogate
characters. This code was written by Damien Diederen and David
Mitchell from Logos software.
Runtime supports deferred attaching to the process (when using
suspend=n,server=y the runtime collects metadata until a debugger
is attached).
Implement tail call optimizations on PowerPC for F# (Bug #664631)
New profiler that can be used with Intel's VTune Amplifier Profiler.
Support for System.Net.NetworkInformation.NetworkChanged events on
Linux.
New tool: crlupdate this is the Mono Certficate Revocation List
Downloader and Updater and can be used to download of new, or update
of existing, Certficate Revocation List (CRL) associated with the
certificates present in the user (default) or machine stores. The
CRL present in the stores are used to determine the validity of
unexpired, trusted X.509 certificates. ASP.NET
Bring the error page to the new millenium. CodeContracts
Alexander Chebaturkin has implemented initial version of static
Code Contract analyser as part of SoC 2011. Smaller Updates
Partial support for Portable Class Libraries (details)
Updated Unicode tables, fixes long-standing 480178 MacOS X
We continue to expand significantly our support for MacOS X and
iOS.
Mono can now be compiled by users as a 64-bit binary. Mono still
ships as a 32-bit binary, as most libraries that exist today for
Mono run only in 32 bits.
DriveInfo now returns correct information on OSX. Mono.Data.Sqlite
It is now possible to configure the threading model for SQLite
using the SetConfig method in the SQLiteConnection class.
Supports iOS crypto APIs. C5 Library
We have updated the venerable C5 library to the latest version.
Breaking Changes Since Mono 2.10
In order to be compatible with Microsoft .NET's behavior, exceptions
thrown in object finalizers now cause a full runtime abort. This
behavior was already present for thread pool threads, but hadn't
been enabled for the finalizer thread yet.
Generally, one should avoid exceptions in finalizers entirely. If
you must use them, catch them so that they do not terminate the
application. GDB
GDB support has been extended with a new gdb hook that is aware
of the SGenGC internals. Added pretty printers for more runtime
data structures like MonoVTable to the mono gdb mode.
MIPS port
The MIPS port is now complete, it can do a full bootstrap, and run
the runtime/corlib test suites. Soft Debugger
Single stepping is now implemented using breakpoints in most
cases, speeding it up considerably. Calls to
System.Diagnostics.Debugger:Log()/Break () are now routed to
the debugger using new UserLog/UserBreak event types. S390x
is now supported (Neale Ferguson). MIPS is now supported.
Added new methods to Mono.Debugger.Soft and the runtime to
decrease the amount of packets transmitted between the debugger
and the debuggee. This significantly improves performance over
high latency connections like USB. Many bug fixes.
Static Compiler (AOT)
Made changes to some AOT data structures to reduce their size,
especially when using generics. This reduces the size of an mscorlib
AOT image by about 1-2%.
Many changes to the class libraries allow more core Generics code
to run on systems that do not support JIT compilation.
This new release of CMake features the introduction of Target Usage Requirements and a Generator Toolset Selection for Visual Studio and XCode, as well as a variety of other improvements.
With the Target Usage Requirements, developers can now specify target usage requirements for their consumers such as include directories and preprocessor definitions, whereas in previous versions only link dependencies were supported. Additionally, with the target_link_libraries(myexe yourlib), developers can now build myexe sources with requirements specified by yourlib. There are also a new target include directory and target compile definitions commands that offer public, private, and interface options. The detailed discussion on this topic is available on the KDE website.
The new Generator Toolset selection for Visual Studio and XCode inform the IDE which compiler toolchain to use. Other improvements include the introduction of the ExternalData Module and the ability to reference data unambiguously from source tree by the content hash.