You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit e5c73c5
Browse filesBrowse the repository at this point in the historyBrowse files
chore(deps): drop Google's libphonenumber, use the Android port everywhere
The app depended on two libphonenumber artifacts: the Android port
(io.michaelrocks:libphonenumber-android) and Google's desktop artifact
(com.googlecode.libphonenumber:libphonenumber). Each ships its own copy of the
metadata, so any version skew between them meant the two could disagree on
whether a number is valid — and since the port lags upstream, it always set the
ceiling and blocked routine bumps of the Google artifact.
Three of the four declarations were dead: :services:flipcash,
:services:flipcash-compose and :services:opencode declared the Google artifact
but had no Kotlin imports and no references to i18n/phonenumbers in their
compiled output. Removed.
The one real consumer, PhoneRegion in :shared:onramp:coinbase, is ported onto
the Android artifact. That artifact loads its metadata from the AAR's assets
rather than exposing a static instance, so it needs a Context — regionFromPhone
becomes an injectable PhoneRegionResolver, mirroring PhoneUtils in
:shared:phone (including the lazy PhoneNumberUtil so the metadata blob is parsed
on first use rather than during construction on the main thread).
The test moves to Robolectric for the Context. Its 13 cases and their expected
values are unchanged on purpose: they are the parity check that the port agrees
with Google's artifact on every number covered.
With the Google artifact gone, the dependabot group rule that kept the two
aliases in lockstep is no longer needed.
0 commit comments