Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Setuptools circular dependency_links

I have two [Python 3.6+] libraries - let's call them A and B. B requires A, and needs dependency_links set for a private bitbucket repo.

E.g., in setup.py for B:

from setuptools import setup, find_packages

requirements = ["A"]
...
setup(
    name='B',
    version='0.1.0',
    ...
    packages=find_packages(include=['B']),
    install_requires=requirements,
    dependency_links=['git+ssh://[email protected]:9999/proj/repo.git@develop#egg=A-0.1.0'],
    ...
)

A also requires B, with a similar need for dependency_links. Nothing on the module level would create a circular reference, but can python/setuptools resolve a circular install dependency reference like this? What is the best way to resolve the setup of two circularly referencial libraries assuming I don't have the ability to restructure each library?

like image 397
ZaxR Avatar asked Feb 22 '26 05:02

ZaxR


1 Answers

Answering my own question: It looks like it doesn't create any kind of circular reference and resolves fine to just add the dependency_link to the setup.py for A requiring B.

like image 149
ZaxR Avatar answered Feb 24 '26 19:02

ZaxR



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!