Hello Pants community, *Help Needed*: Resolving De...
# general
b
Hello Pants community, Help Needed: Resolving Dependency Conflicts During MWAA Upgrade I am in the process of upgrading our Managed Workflows for Apache Airflow (MWAA) from v2.6.3 to v2.8.1. This upgrade requires us to update several dependencies according to this documentation (https://raw.githubusercontent.com/apache/airflow/constraints-2.8.1/constraints-3.11.txt) which I defined in multiple requirements files. However, I have encountered a significant dependency conflict that I need help resolving. Current Situation: We manage our dependencies using Pants and have the multiple requirements files (requirements.txt, default_requirements.txt, cdk_requirements.txt and airflow_test_requirements.txt When I run the commands:
pants export --resolve="['airflow', 'cdk', 'default']" --export-py-resolve-format=symlinked_immutable_virtualenv
pants generate-lockfiles
I encounter a dependency conflict between
tableauserverclient
and
botocore
. Issue Details: •
tableauserverclient
0.29 requires
urllib3==2.0.7
botocore
1.33.13 requires
urllib3<1.27 and >=1.25.4
This conflict is causing significant disruptions in our workflows and development processes. I would appreciate any guidance or suggestions on how to best resolve this dependency conflict while ensuring compatibility with MWAA 2.81
a
Where is that
botocore
dependency coming from? You may want to consider using the
botocore
version defined in the constraints file you linked.
botocore==1.33.13
b
@acoustic-librarian-29560 I didn't write correctly, I defined
botocore==1.33.13
on my requirements
a
b
Will take a look! thanks!
b
FWIW - the latest
botocore
has significantly more lenient requirements on the dependencies, which should help here:
Copy code
poetry show botocore
 name         : botocore
 version      : 1.34.143
 description  : Low-level, data-driven core of boto 3.

dependencies
 - jmespath >=0.7.1,<2.0.0
 - python-dateutil >=2.1,<3.0.0
 - urllib3 >=1.25.4,<2.2.0 || >2.2.0,<3
Regardless, the fact that
tableauserverclient
hard-pins to a specific patch version makes this challenging for resolution in general, especially given how widely used
urllib3
is
b
The problem is that at some point i will reach this issue:
tableauserverclient==0.29
is a requirement in order for my upgrade to be successful
^