ninja-python-distributions
ninja-python-distributions copied to clipboard
A namespace conflict with django-ninja and ninja pip package
There seems to be a namespace conflict between django-ninja and ninja pypi packages.
To test:
$ rm -rf .venv
$ python3 -m venv .venv
$ source .venv/bin/activate
$ pip install --upgrade pip
Requirement already satisfied: pip in ./.venv/lib/python3.12/site-packages (24.3.1)
Collecting pip
Using cached pip-25.0.1-py3-none-any.whl.metadata (3.7 kB)
Using cached pip-25.0.1-py3-none-any.whl (1.8 MB)
Installing collected packages: pip
Attempting uninstall: pip
Found existing installation: pip 24.3.1
Uninstalling pip-24.3.1:
Successfully uninstalled pip-24.3.1
Successfully installed pip-25.0.1
$ pip --version
pip 25.0.1 from /workspaces/python/.venv/lib/python3.12/site-packages/pip (python 3.12)
$ pip install django-ninja
Collecting django-ninja
Using cached django_ninja-1.3.0-py3-none-any.whl.metadata (6.4 kB)
Collecting Django>=3.1 (from django-ninja)
Using cached Django-5.1.6-py3-none-any.whl.metadata (4.2 kB)
Collecting pydantic<3.0.0,>=2.0 (from django-ninja)
Using cached pydantic-2.10.6-py3-none-any.whl.metadata (30 kB)
Collecting asgiref<4,>=3.8.1 (from Django>=3.1->django-ninja)
Using cached asgiref-3.8.1-py3-none-any.whl.metadata (9.3 kB)
Collecting sqlparse>=0.3.1 (from Django>=3.1->django-ninja)
Using cached sqlparse-0.5.3-py3-none-any.whl.metadata (3.9 kB)
Collecting annotated-types>=0.6.0 (from pydantic<3.0.0,>=2.0->django-ninja)
Using cached annotated_types-0.7.0-py3-none-any.whl.metadata (15 kB)
Collecting pydantic-core==2.27.2 (from pydantic<3.0.0,>=2.0->django-ninja)
Using cached pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (6.6 kB)
Collecting typing-extensions>=4.12.2 (from pydantic<3.0.0,>=2.0->django-ninja)
Using cached typing_extensions-4.12.2-py3-none-any.whl.metadata (3.0 kB)
Using cached django_ninja-1.3.0-py3-none-any.whl (2.4 MB)
Using cached Django-5.1.6-py3-none-any.whl (8.3 MB)
Using cached pydantic-2.10.6-py3-none-any.whl (431 kB)
Using cached pydantic_core-2.27.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB)
Using cached annotated_types-0.7.0-py3-none-any.whl (13 kB)
Using cached asgiref-3.8.1-py3-none-any.whl (23 kB)
Using cached sqlparse-0.5.3-py3-none-any.whl (44 kB)
Using cached typing_extensions-4.12.2-py3-none-any.whl (37 kB)
Installing collected packages: typing-extensions, sqlparse, asgiref, annotated-types, pydantic-core, Django, pydantic, django-ninja
Successfully installed Django-5.1.6 annotated-types-0.7.0 asgiref-3.8.1 django-ninja-1.3.0 pydantic-2.10.6 pydantic-core-2.27.2 sqlparse-0.5.3 typing-extensions-4.12.2
$ shasum .venv/lib/python3.12/site-packages/ninja/__init__.py
830147949ad8d88a18322749ad3bf75324e97cb6 .venv/lib/python3.12/site-packages/ninja/__init__.py
$ ls -l .venv/lib/python3.12/site-packages/ninja | wc -l
32
$ pip install ninja
Collecting ninja
Using cached ninja-1.11.1.3-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.metadata (5.3 kB)
Using cached ninja-1.11.1.3-py3-none-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (422 kB)
Installing collected packages: ninja
Successfully installed ninja-1.11.1.3
$ shasum .venv/lib/python3.12/site-packages/ninja/__init__.py
5c16fed988f519b27296ec9ca39a7014458c1345 .venv/lib/python3.12/site-packages/ninja/__init__.py
$ ls -l .venv/lib/python3.12/site-packages/ninja | wc -l
37
as you can see the hash of ninja/init.py changes and the file count inside the site-packages/ninja directory changes when installing ninja package after the django-ninja package.