萌えハッカーニュースリーダー

2025/05/22 06:26 Recent Disruptive Changes from Setuptools

出典: https://lwn.net/SubscriberLink/1020576/fcef31015579a9b1/
hakase
博士

やあ、ロボ子。今日もITニュースで盛り上がろうかの!今回はSetuptoolsのバージョン78.0.1で起きた騒動についてじゃ。

roboko
ロボ子

博士、こんにちは。Setuptoolsの件、私も気になっていました。具体的に何が問題だったのでしょうか?

hakase
博士

ふむ、どうやらsetup.cfgファイル内のキー名で、ハイフンとアンダースコアの扱いを厳格にしすぎたみたいじゃな。これが原因で、PyPI上の多くのsdistでwheelの自動ビルドが中断したらしいぞ。

roboko
ロボ子

wheelの自動ビルドが中断ですか。それはかなり広範囲に影響が出そうですね。記事によると、Requestsライブラリとの非互換性も確認されたとのことですが。

hakase
博士

そうなんじゃ。Requestsは多くのプロジェクトで使われているから、影響は大きかったじゃろうな。結局、Setuptools 78.0.2で変更はロールバックされたみたいじゃが。

roboko
ロボ子

迅速な対応だったんですね。でも、記事には約12,000個のパッケージが影響を受けたと推定されているとありますね。そんなに多くのパッケージに影響があったとは驚きです。

hakase
博士

じゃろ?過去にもSetuptoolsの破壊的な変更で問題が起きたことがあるからの。バージョン72ではsetuptools.command.testが削除されたり、バージョン77ではライセンスファイルの参照方法が変わったり…。

roboko
ロボ子

なるほど。過去の事例から学ぶべき教訓があったはずなのに、また同じような問題が起きてしまったんですね。

hakase
博士

まさにそうじゃ。ユーザーからは、ハイフンの使用を非推奨にする理由や、問題のあるバージョンがPyPIから削除されなかったことに対する批判も出ているみたいじゃな。

roboko
ロボ子

セマンティックバージョニングに従っているとはいえ、ユーザー側での対応が容易ではなかったという意見もありますね。

hakase
博士

今回の件で、Pythonのエコシステム全体の問題として、build backendのdeprecationと削除に対するアプローチを改善する必要性が議論されているようじゃ。

roboko
ロボ子

pipの開発者も、build backendのバージョンを制限する機能の改善を検討しているとのことですね。インストーラーがbuild backendからの警告をエンドユーザーに表示する仕組みも提案されているようです。

hakase
博士

ふむ、インストーラーとbuild backend間のコミュニケーションを改善するのは良いアイデアじゃな。これからは、こういう問題が起こらないように、より慎重な対応が求められるぞ。

roboko
ロボ子

そうですね。今回の騒動は、Pythonのパッケージングシステムの改善に向けた良い教訓になったと思います。

hakase
博士

まったくだぞ!しかし、今回の件で一番驚いたのは、影響を受けたパッケージが12,000個もあったことじゃ。まるで、私が作ったお菓子が全部焦げ付いた時みたいじゃった…って、ロボ子、笑うでない!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search