Configuration

OverPush adds one file and one dependency line to your project.

overpush.yaml

Written by overpush init, at the project root next to pubspec.yaml. Commit it.

app_id: cp_7Kq9xZ2mWv4TnR8bL3sYd6HfJp1cXa5E

The app id isn't secret.

pubspec.yaml

dependencies:
  overpush: ^1.0.0

That's all the app needs. You don't call anything from main().

Options

Add these to overpush.yaml when you need them. They take effect from the next overpush release.

app_id: cp_7Kq9xZ2mWv4TnR8bL3sYd6HfJp1cXa5E
auto_update: false   # the app checks for patches only when you ask
obfuscate: true      # obfuscate Dart code on Android and iOS
keep_all_icons: false # smaller app; patches use only the release's icons
KeyDefaultWhat it does
auto_updatetrueWhen false, the app doesn't look for patches on its own. Call OverPush.update() when you want it to, for example after login.
obfuscatefalseBuilds with Dart obfuscation on Android and iOS. Patches for an obfuscated release are obfuscated the same way, with nothing extra to pass. The files needed to decode crash reports are kept for each release and patch. Turning it on or off starts a new release, so publish the app again after changing it.
keep_all_iconstrueA release ships every Material and Cupertino icon, so a patch can use any of them. Set false to keep only the icons your code uses, which saves about 1.6 MB of app size; a patch can then use only those icons, and if it uses a new one, overpush patch stops and tells you which. Takes effect from your next release; releases already out keep what they were built with.

Controlling updates from your app

With auto_update: false, your app checks for patches only when it calls OverPush.update(). See Update strategies for the API and examples.

Environment variables

VariableUsed for
OVERPUSH_TOKENLets CI act as the project. Get it with overpush token. See CI.
OVERPUSH_API_BASEThe server address, printed by overpush token.
APP_STORE_CONNECT_KEY_IDDefault --api-key for overpush upload ios.
APP_STORE_CONNECT_ISSUER_IDDefault --api-issuer for overpush upload ios.