私は、いくつかの gem 依存関係を持つ gem の作成に取り組んでいます。そのうちの 1 つは、新しいバージョンで後方互換性を壊した gem に依存しています。これは私に考えさせられました-私が構築している宝石が、人々がアプリケーションを更新するのを難しくしている「あの宝石」になることを望んでいません。また、私の gem を使用している人々に、アプリケーションの残りの部分で依存する特定のバージョンの gem を使用するよう強制したくありません。
一方で、これらの依存関係からすべてのコードを書き直して、それらを gem にバンドルし、依存関係をすべて一緒に削除することもできますが、それは少し面倒に思えます。gem の依存関係を直接 gem に含めて、それらをモジュールにラップして、パッケージ化されたバージョンがアプリケーションの残りの部分で使用されるバージョンと競合しないようにする方法はありますか?