Skip to content

Commit f8cd768

Browse files
committed
add comment to explain context of urllib version restriction
1 parent c043af2 commit f8cd768

File tree

1 file changed

+10
-0
lines changed

1 file changed

+10
-0
lines changed

Dockerfile

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,16 @@ ADD aws-opentelemetry-distro/ ./aws-opentelemetry-distro/
1818
# * https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/azure-functions/recover-python-functions.md#troubleshoot-cannot-import-cygrpc
1919
RUN sed -i "/opentelemetry-exporter-otlp-proto-grpc/d" ./aws-opentelemetry-distro/pyproject.toml
2020

21+
# urllib3 recently made a release that drops support for Python 3.8
22+
# Our sdk depends on botocore which pulls in the version of urllib3 based Python runtime it detects.
23+
# The rule is that if current pip command version is > 3.9 botocore will pick up the latest urllib3,
24+
# otherwise it picks up the older urllib3 that is compatible with Python 3.8.
25+
# https://github.com/boto/botocore/blob/develop/requirements-docs.txt
26+
# Since this Dockerfile currently uses the fixed Python 3.11 base image to pull the required dependencies,
27+
# EKS and ECS applications will encounter a runtime error for Python 3.8 compatability.
28+
# Our fix is to temporarily restrict the urllib3 version to one that works for all supported Python versions
29+
# that we currently commit to support (notably 3.8).
30+
# TODO: Remove this temporary workaround once we deprecate Python 3.8 support since it has reached end-of-life.
2131
RUN mkdir workspace && pip install urllib3==2.2.3 --target workspace ./aws-opentelemetry-distro
2232

2333
# Stage 2: Build the cp-utility binary

0 commit comments

Comments
 (0)