Я собираюсь упаковать и загрузить мою библиотеку в PyPI в ближайшие несколько дней, но я немного не уверен в своем подходе к пространству имен.
У меня есть несколько не связанных между собой проектовс похожим подходом и хотел дать им все то же пространство имен.Например:
- Пространство имен библиотеки 1:
abc.seo
- Пространство имен библиотеки 2:
abc.ajax
- Пространство имен библиотеки 3:
abc.ecommerce
- etc
Проблема в том, что я не уверен, возможно ли сосуществование двух отдельных пакетов (например, яиц) с одним и тем же родительским пространством имен.Этот подход проблематичен, или есть ли способ обойти это?Какой самый лучший подход?
Библиотеки не должны быть упакованы вместе, они слишком не связаны.Я хотел бы получить его прямо перед загрузкой, чтобы избежать болезненных изменений пространства имен после создания "официального" релиза.
(NB abc
- не настоящее имя, я хотел, чтобы мой вопрос былбез рекламы)
ОБНОВЛЕНИЕ
Я пошел со следующим, чтобы быть милым людям без установленных setuptools:
try:
__import__('pkg_resources').declare_namespace(__name__)
except ImportError:
__path__ = __import__('pkgutil').extend_path(__path__, __name__)
Со следующим в setup.py
:
setup(
...
namespace_packages = ['rollyourown'],
...