Skip to content

Drop opentelemetry-instrumentation-dnspython — no upstream package exists#61

Merged
prim-8 merged 1 commit into
mainfrom
fix/drop-otel-dnspython-instrumentation
Apr 29, 2026
Merged

Drop opentelemetry-instrumentation-dnspython — no upstream package exists#61
prim-8 merged 1 commit into
mainfrom
fix/drop-otel-dnspython-instrumentation

Conversation

@prim-8
Copy link
Copy Markdown
Contributor

@prim-8 prim-8 commented Apr 29, 2026

Summary

PR #60 listed opentelemetry-instrumentation-dnspython among the auto-instrumentation packages by analogy with the others, but there's no upstream OTel auto-instrumentation for dnspython on PyPI. The Docker build fails immediately:

ERROR: Could not find a version that satisfies the requirement
opentelemetry-instrumentation-dnspython<1,>=0.48b0
(from versions: none)

The other three (urllib3, botocore, logging) are fine and remain. DNS lookups during SPF/DKIM/DMARC checks won't get their own spans, but the manual milter.process_email parent span still wraps them — we lose per-DNS-call breakdown, not trace context.

Test plan

  • Docker build with INSTALL_OTEL=true succeeds.
  • OTel-enabled run still shows manual spans + the three auto-instrumented child span types (urllib3 / botocore / logging trace_id injection).

PR #60 listed it among the auto-instrumentation packages by analogy
with the others, but there's no upstream OTel auto-instrumentation
for dnspython on PyPI. The build fails with:

    ERROR: Could not find a version that satisfies the requirement
    opentelemetry-instrumentation-dnspython<1,>=0.48b0
    (from versions: none)
    ERROR: No matching distribution found for
    opentelemetry-instrumentation-dnspython<1,>=0.48b0

DNS lookups during SPF/DKIM/DMARC checks won't have per-call spans,
but the manual milter.process_email parent still wraps them — trace
context is preserved, only the per-DNS-call breakdown is lost.
Comment on the Dockerfile updated to call this out explicitly so the
next person who looks at the list knows why it's three packages, not
four.
@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps Bot commented Apr 29, 2026

Greptile Summary

Removes opentelemetry-instrumentation-dnspython from the OTel pip install block in the Dockerfile, since no such package exists on PyPI and its presence caused Docker builds with INSTALL_OTEL=true to fail. The comment block is updated to remove the dnspython bullet and add a clear note explaining the gap and its impact on observability.

Confidence Score: 5/5

Safe to merge — removes a build-breaking non-existent package with no functional regressions.

The change is a one-line pip install removal of a package that provably doesn't exist on PyPI, which was causing immediate Docker build failures. The comment block is updated accurately. The three remaining instrumentation packages are real and unaffected. No logic, security, or data concerns.

No files require special attention.

Important Files Changed

Filename Overview
Dockerfile Removes non-existent opentelemetry-instrumentation-dnspython from the pip install list; updates the surrounding comment block to match — fix is correct and complete.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A["docker build --build-arg INSTALL_OTEL=true"] --> B{INSTALL_OTEL == true?}
    B -- No --> C[Skip OTel install]
    B -- Yes --> D["pip install opentelemetry-api/sdk/exporter-otlp-proto-http\nopentelemetry-distro\nopentelemetry-instrumentation-urllib3\nopentelemetry-instrumentation-botocore\nopentelemetry-instrumentation-logging"]
    D --> E["opentelemetry-instrument entrypoint.sh (runtime)"]
    E --> F["Auto spans: urllib3 / botocore / logging"]
    E --> G["Manual span: milter.process_email (wraps DNS calls)"]
    G --> H["DNS lookups (SPF/DKIM/DMARC) — no per-call spans"]
Loading

Reviews (1): Last reviewed commit: "Drop opentelemetry-instrumentation-dnspy..." | Re-trigger Greptile

@prim-8 prim-8 merged commit 68ba0db into main Apr 29, 2026
8 checks passed
@prim-8 prim-8 deleted the fix/drop-otel-dnspython-instrumentation branch April 29, 2026 04:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant