Skip to content

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

Draft
tylerjroach wants to merge 2 commits 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 2 commits 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 minimum version matches the API used by the provider.
  • No blocking issues remain in the changed code.

Important Files Changed

Filename Overview
openfeature-provider/pyproject.toml Raises the minimum Mixpanel version to one that provides SelectedVariant.fallback_reason.

Reviews (2): Last reviewed commit: "Revert wrapper version bump — release-pr..." | 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 96.81%. Comparing base (fa23251) to head (f2289f7).
⚠️ Report is 3 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #185      +/-   ##
==========================================
+ Coverage   95.98%   96.81%   +0.83%     
==========================================
  Files          13       13              
  Lines        2414     3202     +788     
  Branches      136      200      +64     
==========================================
+ Hits         2317     3100     +783     
- Misses         63       67       +4     
- Partials       34       35       +1     
Flag Coverage Δ
openfeature-provider 54.06% <ø> (-0.66%) ⬇️

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.

Co-Authored-By: Claude Opus 4.7 <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