Repository navigation
v1.77.0
Potentially breaking
-
appVersion,build,sdkVersionandenvironmentare now SDK-owned
names on every request.build,sdkVersionandenvironmentjoin
appVersionas reserved user-property names. What happens to a value a host
already uses under one of those four names:- in
customAudienceParams, or written withsetUserProperty/
setUserProperties: refused with a warning; - already persisted in the user-property store from an earlier version: kept
on disk, but never sent.sdkVersionandenvironmentalways carry the
SDK's value;appVersionandbuildcarry the host option or the
expo-applicationvalue, and are removed from the request when there is
neither.
An audience rule that matched on a host-supplied value under one of these
names now sees the SDK's value instead, or no value. - in
Added
- Every request now says which app build made it.
getStepsand
getPaywallssendappVersionandbuild(the newbuildoption, else
expo-application's native version and build number when that optional peer
is installed),sdkVersion(this package's version) andenvironment(a new
option; defaults tosandbox,developmentorproduction, normalized to
[a-z0-9_-], at most 32 characters). Audience rules can target them.
expo-applicationis a new optional peer dependency: without it the SDK
still bundles and runs, and simply sends the host's values, if any.
Changed
- SDK-owned query params are written with
URLSearchParams.set, so a
same-named audience param can no longer shadow them. - The README and plugin setup skills no longer tell a host to hard-code
appVersion("1.0.0", orConstants.expoConfig?.version ?? "1.0.0"). A host
value still wins overexpo-application, so an app that keeps passing a fixed
one keeps reporting that fixed value.