@radhya/mach 2.1.1 → 2.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -114,6 +114,10 @@ For iOS store builds, set:
114
114
  }
115
115
  ```
116
116
 
117
+ `"auto"` makes Mach allocate the next scoped Dashboard counter value. You can instead provide an explicit Android positive integer or an iOS value such as `"68"` or `"1.2.3"`; Mach then uses that exact value without incrementing.
118
+
119
+ Mach applies the resolved value after Expo prebuild, so `app.json` or `app.config.*` cannot silently replace it. The Expo `version` field remains the public marketing version. Mach verifies the packaged IPA/AAB/APK native version before reporting a successful build.
120
+
117
121
  This updates native build numbers only. Apple also requires the marketing version to increase when a released version train is closed. In Expo projects, that is usually `expo.version` in `app.json` or `app.config.*`.
118
122
 
119
123
  ## Common Commands
@@ -90,6 +90,8 @@ Mach uses the existing native iOS project. If multiple schemes exist, set the sc
90
90
 
91
91
  For store builds, upload iOS signing credentials and App Store Connect credentials from the Dashboard or CLI.
92
92
 
93
+ `ios.buildNumber: "auto"` allocates the next scoped Dashboard value. An explicit value is used exactly as configured. Mach applies the resolved value to the app and extension targets, then verifies the final IPA before upload.
94
+
93
95
  ## Android Notes
94
96
 
95
97
  Mach runs Gradle from `android/gradlew` when present. Production builds default to `bundleRelease`; internal builds default to `assembleRelease`; development-client style builds default to `assembleDebug`.
@@ -107,6 +109,8 @@ Set package and version code at the root:
107
109
 
108
110
  For Google Play submission, upload a Google Play service account credential for the exact package id. Mach-managed versionCode assignment uses the Dashboard counter and does not require a Google Play service key.
109
111
 
112
+ An explicit `android.versionCode` is used without incrementing the Dashboard counter. The `"auto"` value enables atomic counter allocation. Mach injects the resolved value at the Gradle variant level (including Groovy or Kotlin DSL projects) and verifies the packaged APK/AAB before upload.
113
+
110
114
  ## Development Builds
111
115
 
112
116
  Bare React Native does not use Expo development-client behavior. If a profile contains `developmentClient`, Mach ignores Expo-only dev-client environment handling unless `framework` is `expo`.
package/docs/push.md CHANGED
@@ -22,6 +22,8 @@ The command writes public SDK values to a generated file. It creates a separate
22
22
  application-owned callback file for foreground notifications, notification
23
23
  taps, registration, permission changes, and errors. Running setup again
24
24
  refreshes generated configuration but never overwrites those callbacks.
25
+ If an administrator deleted the server-side push app, running setup again
26
+ detects the stale local key and safely creates or links a replacement.
25
27
 
26
28
  Expo setup also installs and wires `@radhya/mach/expo-plugin`. The plugin adds
27
29
  the APNs entitlement, Android notification permission, Firebase config path,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@radhya/mach",
3
- "version": "2.1.1",
3
+ "version": "2.1.3",
4
4
  "description": "Mach CLI: Cloud Build Orchestrator for React Native & Expo",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",