私はスキル、contribモジュールを維持しています。この...
composer require drupal/skilling
...レポート...
[RuntimeException] https://packages.drupal.org/8 でパッケージdrupal/skillingをロードできませんでした= [UnexpectedValueException]バージョン制約を解析できません~1.0@alpha2:無効なバージョン文字列 "〜1.0 @ alpha2 "
[UnexpectedValueException]バージョン制約~1.0@alpha2を解析できませんでした:無効なバージョン文字列 "~1.0@alpha2"
古いバージョンのcomposer.jsonは文字列「~1.0@alpha2」を使用していましたが、しばらく前に削除されました。 D.OからモジュールのZipをダウンロードします。Zipファイルを展開すると、ファイルセットにそのような文字列はありません。
ところで、Zipファイルを使用するか、ソースファイルをcontrib/modulesにGitし、Drupalはすべてをうまくインストールします。composerインストールが問題です。
私はcomposer clearcacheを試しましたが、サイコロはありません。「composer require」で-vvvを使用しても、解釈できる情報は得られませんでした。composerのキャッシュを見ると、奇妙なことがわかります。ファイル$ skilling .jsonは正しいリリースを指しますが、ずっと前の「 "drupal/token_custom": "~1.0@alpha2"」を持っています。
感謝します!現時点では、モジュールはComposerでインストールできません。
----- ARGHを更新します!! ----
@Cliveはおそらく正しいですが、私はそれを修正する方法を知りません。 Gitの履歴にあるComposer version文字列を含む行を削除しようとしました。
git filter-branch -f --tree-filter 'sed -i "/drupal\/token\_custom/d" composer.json' -- --all
また、不良ストリングを置き換えるためにBFG repo rewriteツールを試しました。
プッシュ。新しいリリースを作成しました。クリアcomposerキャッシュ。composer requireは同じエラーを生成します。
無効なバージョン文字列を含むブランチに修正をリベースするというCliveの提案を理解できません。それはどのように行われますか?
Packages.drupal.orgのメンテナーです-私は先に進み、データベースから無効なデータを削除しました。これでインストールされます。
また、drupal.orgを開いて発行し、より防御的な措置を講じています。 https://www.drupal.org/project/project_composer/issues/3076342
composerは、特定の悪いバージョンの制約により、許容範囲が変わったはずです。