I have a python package that is used by other applications across an organization, let's call it buildtools
.
Other applications in my organization have installed this package via
pip install git+https://${OAUTH_TOKEN}:x-oauth-basic@github.com/my_organization/buildtools#egg=buildtools
I want to add a new feature to buildtools
that requires a 3rd party package, let's just say its requests
. So within buildtools
I add requests
to requirements.txt
, import it, and it's all good.
But none of the other applications in my organization have requests
as one of their dependencies in requirements.txt
.
When I merge my new code in and update the package, I believe we will run into some ImportError: No module named requests
errors in the downstream applications that use buildtools
.
How can I ensure that any application that uses the buildtools
package gets the requests
package installed when they get the latest buildtools
?
In other words, how can I update buildtools
's dependencies recursively?
I am aware that I could add requests
to requirements.txt
across all the applications in my organization that uses buildtools
, but I'm trying to avoid that.