Hi, as shown in the following full dependency graph of quickstartup, quickstartup requires django >=3.0,<3.1, quickstartup requires django-widget-tweaks >=1.4,<1.5 (django-widget-tweaks 1.4.8 will be installed, i.e., the newest version satisfying the version constraint), and directed dependency django-widget-tweaks 1.4.8 transitively introduces django >=1.11.
Obviously, there are multiple version constraints set for django in this project. However, according to pip's “first found wins” installation strategy, django 3.0.6 (i.e., the newest version satisfying constraint >=3.0,<3.1) is the actually installed version.
Although the first found package version django 3.0.6 just satisfies the later dependency constraint (django >=3.0,<3.1), such installed version is very close to the upper bound of the version constraint of django specified by django-widget-tweaks 1.4.8.
Once django-widget-tweaks upgrades,its newest version will be installed, as quickstartup does not specify the upper bound of version constraint for django-widget-tweaks. Therefore, it will easily cause a dependency conflict (build failure), if the upgraded django-widget-tweaks version introduces a higher version of django, violating its another version constraint >=3.0,<3.1.
According to the release history of django-widget-tweaks, it habitually upgrates Django in its recent releases. For instance, django-widget-tweaks 1.4.2 upgrated Django’s constraint from >=1.2 to >=1.8, and django-widget-tweaks 1.4.6 upgrated Django’s constraint from >=1.8 to >=1.11.
As such, it is a warm warning of a potential dependency conflict issue for quickstartup.
Dependency tree
quickstartup - 0.16.2
| +- django(install version:3.0.6 version range:>=3.0,<3.1)
| +- django-ipware(install version:2.1.0 version range:>=2.1,<2.2)
| +- django-model-utils(install version:4.0.0 version range:>=4.0,<4.1)
| | +- django(install version:3.0.6 version range:>=2.0.1)
| +- django-widget-tweaks(install version:1.4.8 version range:>=1.4,<1.5)
| | +- django(install version:3.0.6 version range:>=1.11)
| +- djmail(install version:2.0.0 version range:>=2.0,<2.1)
Thanks for your help.
Best,
Neolith
Hi, as shown in the following full dependency graph of quickstartup, quickstartup requires django >=3.0,<3.1, quickstartup requires django-widget-tweaks >=1.4,<1.5 (django-widget-tweaks 1.4.8 will be installed, i.e., the newest version satisfying the version constraint), and directed dependency django-widget-tweaks 1.4.8 transitively introduces django >=1.11.
Obviously, there are multiple version constraints set for django in this project. However, according to pip's “first found wins” installation strategy, django 3.0.6 (i.e., the newest version satisfying constraint >=3.0,<3.1) is the actually installed version.
Although the first found package version django 3.0.6 just satisfies the later dependency constraint (django >=3.0,<3.1), such installed version is very close to the upper bound of the version constraint of django specified by django-widget-tweaks 1.4.8.
Once django-widget-tweaks upgrades,its newest version will be installed, as quickstartup does not specify the upper bound of version constraint for django-widget-tweaks. Therefore, it will easily cause a dependency conflict (build failure), if the upgraded django-widget-tweaks version introduces a higher version of django, violating its another version constraint >=3.0,<3.1.
According to the release history of django-widget-tweaks, it habitually upgrates Django in its recent releases. For instance, django-widget-tweaks 1.4.2 upgrated Django’s constraint from >=1.2 to >=1.8, and django-widget-tweaks 1.4.6 upgrated Django’s constraint from >=1.8 to >=1.11.
As such, it is a warm warning of a potential dependency conflict issue for quickstartup.
Dependency tree
Thanks for your help.
Best,
Neolith