docs: add 2.x to 3.x migration guide - #380
Conversation
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
PR SummaryLow Risk Overview The new guide walks through platform setup: RN 0.76+ peer dependency, iOS 15.6 / Podfile and Expo It also lists behavior and API deltas integrators should re-check ( Reviewed by Cursor Bugbot for commit 92393c7. Bugbot is set up for automated code reviews on this repo. Configure here. |
There was a problem hiding this comment.
🟢 Approval recommended
Documentation-only change with one minor formatting issue identified and an inline fix suggested.
Pull request overview
Adds a consolidated 2.x → 3.x migration section to MIGRATING.md to cover the major breaking upgrade steps (notably the Apple SDK 9 move) that were previously only documented as incremental 3.x notes.
Changes:
- Introduces a new “Migrating from versions < 3.0.0” guide covering RN/iOS/Android upgrade prerequisites.
- Documents two previously undocumented upgrade pitfalls (Fabric dependency provider, explicit
android-rokt-kitdependency). - Adds links and notes to external Apple/Android SDK migration guides and known Expo plugin-generated iOS import/pod mismatch.
File summaries
| File | Description |
|---|---|
| MIGRATING.md | Adds a full 2.x → 3.x migration section and clarifies key dependency/tooling requirements across iOS/Android/Expo. |
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 1
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Summary
MIGRATING.mdhad no 2.x → 3.x guide — its sections were written as incrementalnotes within the 3.x line, so the hop that actually breaks apps (3.0.0's move to
Apple SDK 9) was never covered. This adds one section for the whole upgrade,
using the
Migrating from versions < N.0.0shape the Apple and Android SDKguides use.
Two required steps aren't documented anywhere today:
<RoktLayoutView>mounts asRCTUnimplementedViewComponentViewand embeddedplacements silently never appear.
android-rokt-kitmust be declared explicitly — it'scompileOnlyhere,so a 2.x app that reached Rokt through
android-corealone still compiles andinstalls, then throws on the first
MParticle.Rokt.*call.It also notes that the Expo plugin writes
import mParticle_Apple_SDKfor SwiftAppDelegates without declaring the umbrella pod, so an Expo app with no
iosKitsgenerates code that doesn't compile — documented here, worth afollow-up fix.
Testing Plan
Docs only. Claims verified against the 2.9.2..3.3.3 diff, the podspecs,
android/build.gradle,plugin/src/, andsample/ios/Podfile.lock; the threecross-links confirmed to resolve to real anchors on
origin/mainof the Appleand Android guides.
prettierandmarkdownlintpass.Question for review: the two pre-existing sections are now largely subsumed by
this one — fold them in, or keep them as release-specific notes?