Skip to content

chore(openfeature): pin mixpanel >=5.3.0 for FallbackReason (SDK-126)#185

Draft
tylerjroach wants to merge 1 commit into
masterfrom
tylerroach-sdk-126-python-openfeature-pin-mixpanel-to-sdk-79-release
Draft

chore(openfeature): pin mixpanel >=5.3.0 for FallbackReason (SDK-126)#185
tylerjroach wants to merge 1 commit into
masterfrom
tylerroach-sdk-126-python-openfeature-pin-mixpanel-to-sdk-79-release

Conversation

@tylerjroach

Copy link
Copy Markdown
Contributor

Summary

Follow-up to SDK-79. Now that openfeature-provider/src/mixpanel_openfeature/provider.py dereferences SelectedVariant.fallback_reason (_fallback_details), the mixpanel-openfeature PyPI package must not resolve against a base mixpanel version that predates that field, or every resolve_*_details call raises AttributeError.

Currently the wrapper's dep is mixpanel>=5.1.0,<6. Both published versions in that range (5.1.0, 5.2.0) predate #180's merge — so the wrapper is currently broken when installed against either.

Changes

  • openfeature-provider/pyproject.toml: bump mixpanel>=5.1.0,<6mixpanel>=5.3.0,<6
  • openfeature-provider/pyproject.toml: bump wrapper version 0.1.00.2.0 (new capability surface)

Merge sequencing

CI is expected to fail until mixpanel 5.3.0 is published with the SDK-79 changes. That failure is the point — it forces the correct release order:

  1. Cut mixpanel 5.3.0 (containing fix(analytics): distinguish fallback reasons + forward backend error message (SDK-79, SDK-83) #180 / SDK-79)
  2. Rebase/rebuild this PR — CI passes
  3. Merge and publish mixpanel-openfeature 0.2.0

Same pattern as mixpanel/mixpanel-ruby#166 for Ruby.

Test plan

  • Confirm CI fails now (5.3.0 not on PyPI yet — expected)
  • Once mixpanel 5.3.0 is released, verify CI passes
  • Verify installing mixpanel-openfeature==0.2.0 against mixpanel==5.2.0 raises a dependency-resolution error rather than a runtime AttributeError

Refs: SDK-126, SDK-79

🤖 Generated with Claude Code

The openfeature-provider now dereferences `SelectedVariant.fallback_reason`
(added in SDK-79 / #180). The published mixpanel versions in the current
range (`>=5.1.0,<6` — v5.1.0 and v5.2.0) both predate SDK-79 and do NOT
expose that attribute; installing this provider against either raises
`AttributeError` from `_fallback_details`.

Bump the floor to `>=5.3.0` (the next unreleased minor). CI will fail
until mixpanel 5.3.0 is published with the SDK-79 changes — that failure
is the point: it forces the correct release sequencing so this wrapper
cannot ship against a base version that lacks the field it uses.

Also bump the wrapper version 0.1.0 -> 0.2.0 since fallback-reason
wrapping is a new capability surface.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@linear-code

linear-code Bot commented Jul 21, 2026

Copy link
Copy Markdown

SDK-126

SDK-79

@greptile-apps

greptile-apps Bot commented Jul 21, 2026

Copy link
Copy Markdown

Confidence Score: 5/5

This looks safe to merge after Mixpanel 5.3.0 is published.

  • The new dependency floor excludes SDK versions without FallbackReason.
  • The package version bump matches the new provider capability.
  • No blocking issues found in the changed code.

Important Files Changed

Filename Overview
openfeature-provider/pyproject.toml Raises the dependency floor to the intended compatible SDK release and bumps the provider package version.

Reviews (1): Last reviewed commit: "chore(openfeature): pin mixpanel >=5.3.0..." | Re-trigger Greptile

@codecov

codecov Bot commented Jul 21, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 95.89%. Comparing base (fa23251) to head (34b1d2b).

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #185      +/-   ##
==========================================
- Coverage   95.98%   95.89%   -0.10%     
==========================================
  Files          13       10       -3     
  Lines        2414     1971     -443     
  Branches      136      116      -20     
==========================================
- Hits         2317     1890     -427     
+ Misses         63       51      -12     
+ Partials       34       30       -4     
Flag Coverage Δ
openfeature-provider ?

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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