setuptoolsインストールスクリプト(setup.py)を使用する場合は、必要なモジュールをテストし、インストールの依存関係リストを更新して、必要に応じてバックポートを追加します。
たとえば、collections.OrderedDictクラスが必要だとします。ドキュメントには、Python 2.7で追加されたと記載されていますが、Python2.4以降で動作するバックポートが利用可能です。でsetup.pyクラスの存在をテストしますcollections。インポートが失敗した場合は、要件リストにバックポートを追加します。
from setuptools import setup
install_requires = []
try:
from collections import OrderedDict
except ImportError:
install_requires.append('ordereddict')
setup(
# ...
install_requires=install_requires
)
OrderedDict次に、同じテストを使用する必要があるコードで:
try:
from collections import OrderedDict
except ImportError:
# use backported version
from ordereddict import OrderedDict
またはpipまたは他のインストールツールをeasy_install使用zc.buildoutして、追加のライブラリを取得します。
最近追加されたコアライブラリの多くには、json(と呼ばれるsimplejson)argparse、、sqlite3(pysqliteパッケージ、from pysqlite2 import dbapi as sqlite3フォールバックとして使用)などのバックポートがあります。
それでもドキュメントを読む必要があります。Pythonのドキュメントは優れており、新しいモジュール、クラス、メソッド、関数、または引数については、追加されたPythonのバージョンでドキュメントに明示的に記載されています。