Установка или объединение пакетов пространства имен (PEP 420) - PullRequest
0 голосов
/ 11 февраля 2020

У меня есть несколько пакетов пространства имен. Я следовал плану, который набросан в PEP420 и документах . Они распределены по нескольким репозиториям, которые иногда объединяют их в более глубоком пространстве имен.

Настройка

Например, у нас может быть структура ниже.

Repo1
 /ns_example/src/ns/example/__init__.py
 /ns_example/setup.py

 /ns_another/src/ns/another/__init__.py
 /ns_another/setup.py

Repo2
 /ns_deep/src/ns/deep/one/__init__.py
 /ns_example/setup.py

 /ns_deep/src/ns/deep/two/__init__.py
 /ns_example/setup.py

В setup.py я создаю разные пакеты. Ниже я указываю два разных случая из приведенного выше примера.

from setuptools import setup, find_namespace_packages
import datetime

setup(
    name="ns_example",
    version=datetime.datetime.now().strftime('%Y.%m.%d.%H%M'),
    description='Namespace example',
    packages=find_namespace_packages(where='src', include=['ns.*']),
)
from setuptools import setup, find_namespace_packages
import datetime

setup(
    name="ns_deep_one",
    version=datetime.datetime.now().strftime('%Y.%m.%d.%H%M'),
    description='Namespace example',
    packages=find_namespace_packages(where='src', include=['ns.deep.*']),
)

Проблема

Все это работает, и я могу установить их с pip install ns_example или pip install ns_deep_one, но теперь я хочу иметь возможность сделать pip install ns, что бы установить все пакеты в пространстве имен. Это, однако, не похоже на работу. Почему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...