Changelog
- Expo SDK 58 support, including taps and heatmaps. See Upgrading to Expo SDK 58
VexoProvider accepts a navigationRef prop, and apiKey is optional
- Calling
vexo() after the user consents starts tracking without remounting the app, with the explicit setup or zero-config on Expo SDK 58 or later
1.13.0 was tagged but never published to npm; these changes first shipped in the 1.14.0 package.
- Fix an Android crash during session replay capture ("Recording currently in progress" or
IndexOutOfBoundsException)
- Network capture for axios and other
XMLHttpRequest clients, not only fetch. Apps that use axios now send network events, which count toward your monthly events
registerProperties() adds properties to every event, such as an experiment group or a plan
- The
sessionReplaySampleRate option records session replay for a share of sessions
- Unhandled promise rejections are reported as non-fatal errors
trackScreen() records screen views for navigation that Vexo doesn't track automatically, such as react-native-navigation
- The
vexo-upload-sourcemaps command uploads your source maps, so crash stack traces show your original source
- React Native 0.87 support
- Expo Router verified through Expo SDK 57. In development, the SDK warns when it can't attach to Expo Router
- README updates only, with no code changes
- Crash and ANR reporting, with no setup. See Error reporting
trackError() reports an error that you caught
- The
sessionReplay: false option keeps session replay off on the device
- Performance monitoring: app start, slow and frozen frames, and screen render times, sent as
PERF events. See Performance
- Console capture:
console.log, info, warn, and error calls, sent as CONSOLE events. See Console Logs
Performance and console events are on by default and count toward your monthly events. To send fewer, turn them off or sample them in your app's Event Tracking settings.
- Fix iOS and Android builds on React Native 0.86
- New Architecture support: the native module is a TurboModule, and apps on the old architecture keep working
VexoProvider wraps your navigation container explicitly when automatic attachment isn't possible
- The minimum iOS deployment target is now 15.1 (was 11.0)
@react-navigation/native is now an optional peer dependency, so Expo Router apps don't need to install it
- The package ships CommonJS and ES module builds behind an
exports map. Deep imports such as vexo-analytics/lib/... no longer work: import from the package's public entry points, such as vexo-analytics
- Events are sent in batches of up to 20 events, or 5 seconds after the first event, instead of every 3 events
- The SDK does no work at import time: it starts when you call
vexo()
- The iOS pod now ships its own privacy manifest (
PrivacyInfo.xcprivacy) — see App Store & Play Compliance
- ~58% smaller JavaScript bundle (removed the
moment dependency)
- Custom events fired before the first navigation are now kept and sent with the "unknown" route, instead of being dropped
- Fix release builds in apps that also use react-native-purchases or other Google Tink dependents (R8 "Missing classes" errors)
disableTracking() now genuinely stops session replay recording, including a recording already in progress
- Startup sync retries with backoff instead of staying disabled for the rest of the session
- Network tracking no longer skips app URLs that resemble internal ones, such as
/api/blogs
- Dependency and security hygiene across the build and release chain
1.6.0 was never published to npm on its own; heatmap segments first shipped in the 1.7.0 package.
- Improve heatmaps performance
- Improve heatmaps stability on Android
- Fix Java class name collisions with other libraries
- Improve session replays stability
- Add support to 16 KB pages sizes on Android
- Add React Native Web and Expo Web support
- Fix expo updates support for session replays
- Improve session replays quality on Google Pixel devices
- Fix initialization issue that affected some users
- Fix async storage interoperability issue
- Enhanced event tracking reliability
- Fix sporadic build issue due to jitpack dependency timeout
- Improve session replays quality on Android
- Enable session replays on simulators
- Support new RN architecture
- Prevent re render on init
- Fetch event serialization
- Add support for new iOS device models
- Expo router v3 support
- Add support to make device anonymous
- Fix bottom sheet not visible
- State managment integration
- Custom events with missing routes
- Event cleanup
- Route syncing
- Add ts types to exported methods
- Change methods description
- Remove async for ts declaration
- Renderscript toolkit release build error
- Route name for expo router
- Add support for expo-router
- Screenshots in new react native arch
- Fix screen taps
- Fix screenshots request
- Drop events if api key invalid
- Blur screenshot on Android
- Blur screenshot on iOS