linerlock/parseq — pull request #10 by takeshik (2013-11-11 19:20:22+00:00)
Title: Feature/make portable

# Support Portable Class Library (PCL)

## 目的

* Parseq を導入できるパッケージの拡大および明確化、および、新たなターゲット フレームワークへの対応。
* 最近はライブラリも PCL 化が流行してるっぽい？ので…
* **Yacq を .NET 4.5-targetted / PCL 化したいのだけど、そうすると現状の Parseq を参照できなくなってしまうので…**

## 概要

既存の

* .NET 4 向けプロジェクト
* Silverlight 4 向けプロジェクト

という構成を、以下のように変更する:

* .NET 4 以上 / Windows Store App (Windows 8 以上) 向けプロジェクト
* Silverlight 5 以上 / Windows Phone 8 以上 (暗黙に .NET 4.5 以上 / Windows Store App (Windows 8 以上) を含む)
* ターゲット フレームワークについて、Silverlight 4 → Silverlight 5 となっているのは Visual Studio 2012 以降でアップグレード無しに開けなくなるため。

NuGet パッケージのメタデータ ファイルについても、これに適合するよう修正を加えた。

* ターゲットに `portable-net4+win8` と `portable-net45+win8` が両方存在するのは、.NET 4.5 をターゲットとするプロジェクトで `Parseq.Silverlight.dll` を参照されないようにするための措置。

他の変更は以下の通り:

* ゴミ ファイルの削除
* *.user
* *.pfx (現在使われている鍵ファイルは .snk のため、使われていない)
* ビルドを通すため、いくらかコードを修正:
* `String` が `IEnumerable` にならないので、`.ToCharArray` する
* `ThreadPool` は存在しないので `Task` に置き換える
* アセンブリに付与する属性のうち、COM 関係のものを削除 (存在しないため)
* AssemblyCopyright が腐ってたので、ついでに修正

Visual Studio 2013 で作業を行ったが、Visual Studio 2010 以降で開ける…はず。

## 確認して頂きたいこと

* 公爵閣下の環境 (等) でビルドして参照できるかどうか。
* etc.

ご検討のほどよろしくお願いします。