Xamarinから最初の公式のMonoが、今月始めにリリースされたが、多くのバグ修正、 OS X Lionのサポート、「非常に改善されたWCFスタック」そして改善されたデバッグのサポートなどが盛り込まれた。バージョン番号は、 2.10.3で、短期間のサポートになる。長期間サポートの約束を望む人は、Mono 3が出るまで、2.6シリーズに留まるべきである。
バグ修正は、広い範囲に及び、C#コンパイラー、JITコンパイラー、WCF, ASP.NET, OS X, ADO.NETを含んでいる。完全なリストは、リリースノート に載っている。これらのカテゴリーの殆どには、新しいフィーチャもあるが、最も新しくなったのは、圧倒的にWCFであり、以下のようなフィーチャを含んでいる。
- WebHttpBinding設定のサポート
- WebHttpBinding生のコンテンツフォーマットで、Streamパラメータのサポートを実装
- "{x}"の付いたジェネリック データ コントラクト 型名のサポートを実装
- XmlSerializerMessageContractImporter の実装
- WsdlContractConversionContext の実装
- Message.ToString()とすべての関連する変更を適切に実装
- RawMessageをサポートするメッセージ バッファを追加
- 最適化:MessageEncoder.ContentType プロパティのために完全な等値比較が不要になった
- ImportNode()で DocumentTypeが使える
- XmlBinaryDictionaryReader にDecimalのサポートが追加された
Monoは、尚もWCFスタックの非常に小さなサブセットしか、サポートしていないことを忘れてはいけない。 Xamarinの現在の計画では、 Silverlightのランタイムで利用されるWCFのフィーチャしか、サポートしない。完全なWCFスタックの開発量たるや、企業のサポート無しでは、到底やり遂げられるものではない。別な可能性としては、余りありそうにはないが、Microsoftが ASP.NET MVCスタックをオープンソース化したようなやり方で、WCFスタックをオープンソース化することである。
ASP.NETに関して言えば、下記のものがこのリリースに含まれるフィーチャのいくつかである。気を付けて欲しいのは、Web Formsはいつも、法的にも、長期間のコミットの点からも疑わしいものである。Linuxをwebサーバーとして、使いたい人は、 ASP.NET MVCに焦点を当てることを強く考えるべきである。
- WebServicesへのオプションパラメータのサポートが追加
- FormsAuthentication.Timeout 4.0プロパティが追加
- RemoteEndpointMessageProperty をサポート
- System.Web.Extensionsにおいて、複合スクリプトのサポートを実装
またデバッグを助けるために多くの変更がされた。
- もしスレッド アボートが致命的な場合、スタック トレースを表示できるようになった
- ランタイム起動ラッパーに当たった時のスタックトレースを改善
- ソフトデバッガーにソケット タイムアウトが追加
- 新しい MONO_WCF_TRACE変数を使って、全てのリクエストにロギングすることによって、WCFをデバッグできる
- HttpRuntimeの静的な初期化中に投げられた全例外について、ユーザーに通知する
- OS X: 我々は今回、Monoバイナリの全てについてのデバッグシンボルを入れて出荷したので、ちゃんとしたスタックトレースを得るのがより簡単になった。
関連したニュースとして、MonoのC# 5コンパイラーが現在、予定通り進んでおり、Microsoftからの最後の公開リリースになる。両会社は、式を扱うもっと複雑なシナリオのいくつかで、問題があり、両方のチームは互いに連絡しあっている。更に詳細な情報は、Monospaceでレコードされた Q&Aセッションにある。