Mono Release Notes

Mono is a bug fix release in the release series.

Changes in

C# compiler bug fixes for bugs: 77767, 77642, 77583, 77674, 77642 as well as fixing a number of nullable bugs (gtest-254, gtest-251, gtest-250) fixed compilation bugs for C5 library.

Sqlite bindings now has a way of specifying the default encoding and defaults to UTF-8 instead of using ANSI. Versions between Jan 20 and this release stored data always in ANSI format which could not be read back.

System.Web: invoke validation callbacks in HttpCachePolicy (77825); fixes OutputCache's VaryByParam="*" (77757); fix Cache-Control header handling (77825); Fix POST filename encodings (77714); Allows setting custom Cache-Control headers (77775).

System.Web/HtmlControls fixes from Mainsoft: fixed Anchor.RenderAttributes, Form.Method fixed to include "post" if needed; InputImage fixed to cope with SetAtt.

System.Web's SessionState: session state will retry reconnecting to the database if the connection is lost (77785). Dispose the data reader to avoid leaks (77698);

System.Web Javascript, hide validators view (77261).

System.Web's/WebControls: Use naming container instead of pages to locate controls (77793); Fixes rendering of ListBoxes (77740);

System.XML.Schema: fix return value on the XML Schema (77685).

XmlSerialization: consider subtypes (77447), ignore element namespaces when using Unqualified mode (75019).

IO-Layer: close redirected pipes on errors (77514), Shell Execute, avoid crash (77393); Delete semaphores on last exit (City of Largo request, problem happens in clusters, direct communication, 77856,).

WebConnectionStream: avoid async calls when writing zero bytes (iFolder CPU consumption issue).

HttpWebRequest: fix close semantics (77753)

UpdClient: fix IPV6 family check (77689).

System.Data fixes: Fixed 77557, 77776 and enabled tests that were previously disables, add new tests.

System.Data: Fixed endianess bugs reported on PPC and SPARC.

Runtime: Updates for LocalDataStoreSlot to prevent the Beagle leak from happening; Fixed crasher bug in class libraries (77772). Fixes 77504 in generic libraries; Fix Stream bug 77863; Reflection fix for 74937; Stat-usage fixes (77759, 76966); public-key-token casing (77898); Codebase return fix (77877); fix two ia64 crashes (77774, 77787); Handle null in Equals (77700); backport memory corruption fix (no bug number);

Tracing: Fix crash in StringBuilders when tracing (77848); disable output always 77706.

S390x: Use long-displacement if the CPU supports it.

Patch from Tambet at ZenWorks team to reduce memory consumption in remoting, shaves a few megabytes on RPC calls.

System.Drawing/Windows.Forms: Bring code from trunk (these are unsupported libraries).

Mono.Security: several fixes to the async stream handling in SSL: implement a ClientSessionCache, redo the async processing of requests as they were previously hanging iFolder (77663, 67711). There were no changes to the crypto code.

Upgraded C5 test suite to 1.0 release from upstream.

Updated debugger API.

Added tests for bugs fixed.

Fix: s390 and s390x will enable the JIT without special flags (before we needed --enable-jit).

Prj2Info escapes now characters in filenames that contain special shell characters.


Bug fix update from trunk.

Avoid drawing zero length strings, fixes crash (77699);

image.c: Correct rendering of patterns (77438), cleanup all resources after being disposed to avoid double frees.

Fixes without bug numbers (ongoing bug fixing of third party commercial components to run on Mono):

Gradient brush fixes.

font.c: Proper disposing of fonts to avoid leaks.

lineargradientbrush.c: fix semantics to match GDI+.

Memory leak fixes from running valgrind on the code.

Added parameter validation everywhere to avoid crashes from missuses: raises an error instead of a segfault.

pngcodec.c: Handle saving 8:8:8 files without an alpha channel.


Source code and packages are available from: