Ninjectプロジェクトは、Ninject Coreライブラリと拡張ライブラリのロット(〜17)で構成されています。コアライブラリと拡張ライブラリのバージョン管理
現在、Ninjectとその拡張ライブラリはすべて同じMajor.Minor番号を持ちます。 Ninjectコアの次のリリースは下位互換性があり、マイナー番号を増やすことは正しい動作です。拡張ライブラリの少なくとも1つは後方互換性がありません。この場合、正しい処置はメジャー番号を増やすことです。しかし、これはコアとエクステンションを同期させないでしょう。
あなたは少なくとも混乱が発生することを最良の選択肢を検討しないされての質問:
が正しくバージョン番号がコアその後方互換性がないと不利益を反映していることを利点と主要な数を増やすに拡張機能は同期していないので、これ以上一致するものを知ることは容易ではありません。
拡張のメジャー番号を保持し、マイナー番号のみを増やします。数字が同じで、一致するものを簡単に伝えることができるという利点があります。しかし、その数は後方の非互換性を反映していないという点で不都合である。
すべてのメジャー番号を増やします。数字が同じであるという利点があります。しかし、コアといくつかのエクステンションが下位互換性があるにも関わらず、メジャー番号が増えてしまうという欠点があります。
他にも良い選択肢がありますか?
私は[programmers.se]がこの質問のためのより良い場所だと思いますが、私の質問は次のとおりです。コアライブラリのバージョン番号が拡張機能のバージョン番号と強く関連していると考えていますか? –
問題の拡張ライブラリはまったく変更されましたか?次のように:その拡張ライブラリ内のコードが変更されましたか? –
拡張機能は、通常、最新のコアバージョン向けに構築されており、いくつかの新しい機能を使用するため、古いバージョンでは実行されません。一方、旧エクステンションは下位互換性がある限り、新しいコアバージョンで実行する必要があります。 –