Skip to content

Drop the unused OpenTelemetry dependencies - #4

Closed
Harshith029 wants to merge 1 commit into
catalogue-splitfrom
drop-otel-deps
Closed

Harshith029 wants to merge 1 commit into
catalogue-splitfrom
drop-otel-deps

Conversation

@Harshith029

Copy link
Copy Markdown
Owner

Stacked on #3. Review and merge that first; GitHub then retargets this PR to main.

Nothing in src/ imports opentelemetry or azure.monitor any more, now that trace and span ids come from secrets (#3). pyproject.toml still required three OpenTelemetry packages, though.

Changes

  • pyproject.toml: removes azure-monitor-opentelemetry, opentelemetry-api, opentelemetry-sdk, and the OpenTelemetry warning filter.

  • versions.lock: removes 28 pins (104 → 76): the three above, plus 25 packages that only they needed:

    • the Azure Monitor exporter and azure-core-tracing-opentelemetry
    • 15 OpenTelemetry instrumentation and support packages
    • msrest, oauthlib, requests-oauthlib, psutil, wrapt, asgiref, importlib_metadata, zipp

    I worked out which pins could go from the installed packages' metadata, evaluating version and platform conditions for Python 3.11 and 3.12 on Linux, Windows and macOS. Every remaining pin is still needed by something.

  • Also updated: the smoke test's required-pin list, the README credits, and a "Removed" entry in the CHANGELOG.

Testing

All in a fresh Python 3.11 venv built from the lock, with no OpenTelemetry installed:

  • ruff and mypy --strict: clean.
  • Full suite: 594 passed, 1 expected failure (the known teardown hang).
  • scripts/check_versions_lock.py: 0 conflicts.
  • The wheel installs with -c versions.lock, and sentinel --help runs.

This machine has no Python 3.12, so the 3.12 leg is CI's.

🤖 Generated with Claude Code

Trace and span ids come from `secrets`, and nothing under src/ imports
opentelemetry or azure.monitor any more, yet pyproject still required
azure-monitor-opentelemetry, opentelemetry-api and opentelemetry-sdk.

Removed them, and the 28 versions.lock pins that only they reached: the
Azure Monitor exporter, azure-core-tracing-opentelemetry, the OpenTelemetry
instrumentation and support packages, msrest, oauthlib, requests-oauthlib,
psutil, wrapt, asgiref, importlib_metadata and zipp. Reachability was
computed from the installed metadata, evaluating markers for Python 3.11
and 3.12 on Linux, Windows and macOS; every remaining pin is still reached.

Verified in a fresh Python 3.11 venv built from the lock, with no
OpenTelemetry installed: ruff, mypy --strict and the full suite (594
passed, 1 known xfail); scripts/check_versions_lock.py reports 0 conflicts;
the wheel installs with -c versions.lock and `sentinel --help` runs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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