13

背景: 私が取り組んでいるプロジェクトでは、python-ldapライブラリを使用しています。私たちはさまざまな OS の開発チーム (一部は Linux、一部は macOS、一部は Windows を使用) であるため、すべての環境でプロジェクトをビルドしようとしています。残念ながら、python-ldapWindows では公式にサポートされていませんが、Christoph Gohlke によって管理されている非公式のホイールがあります。wheel ファイルをテストしましたが、正常に動作します。

問題:python-ldap Windows ではホイールを使用し、 Linux と macOS では公式パッケージを使用するように Poetry に指示するにはどうすればよいですか?

複数の制約の依存関係とマーカーを使用するなど、複数のことを試しました。

python-ldap = [
    { markers = "sys_platform == 'linux'", version = "*" },
    { markers = "sys_platform == 'win32'", path="lib/python_ldap-3.2.0-cp36-cp36m-win_amd64.whl" }

...しかし、poetry.lockファイルから判断すると、マーカーがマージされ、ライブラリをインストールする必要があるかどうかを判断するだけのようです:

[[package]]
category = "main"
description = "Python modules for implementing LDAP clients"
marker = "sys_platform == \"linux\" or sys_platform == \"win32\""
name = "python-ldap"

Poetry でプラットフォーム固有の依存関係を処理する別の方法はありますか?

4

2 に答える 2