これは機能していないようです:
[buildout]
extends = buildout.cfg
eggs -= python-ldap
eggs += psycopg2
動作は常に、eggs += psycopg2
線が存在しないかのように見えます。2行がどちらの順序であるかは関係ありません。
これはバグですか?この結果を達成する方法はありますか?
残念ながら、zc.buildout
バージョン1.5.2まではこのユースケースをサポートしていません。加算または減算のいずれかが成功します。
内部で起こることはこれです:
+=
、継承された値を取得して追加し、新しい値として保存します。-=
、継承された値を取得して削除し、新しい値として保存します。これらの更新後、継承されたセクションがコピーされ、新しい値で更新され、これが最終結果として使用されます。
順序は通常のPythonマッピングセマンティクスによって定義されるため、未定義です。加算または減算のいずれかが最後に実行されます。どちらの操作も継承されたセクションから入力を受け取り、それを変更してから新しい値として保存するため、最後に実行された操作は、前に実行された操作の結果を上書きします。
私はこれに対する修正をコミットしました; buildout
pypiの新しいバージョンをリリースする権利はありませんが、リリースする人を突く必要があります。
編集:zc.buildout
バージョン1.6にはこの修正が含まれています。