nvrsion: Add: Adjust Canary Build Auto-Update to run every hour, fix Keychain permission audit by updating files: ControlAuth.swift, GitHubCredentials.swift, HeartbeatReporter.swift, KeychainOwnedAccess.swift, HostIdentityStore.swift, PushRelayClient.swift, refactor Remote Build Icon to use “bell.and.waves.left.and.right.fill” in ios/NucleicRemote/NucleicRemote/Views/BuildBanner.swift, add a Remote Release Channel Check in AppStore.swift, Sync/ConnectionHandler.swift, Sync/SyncHostBridge.swift, Sync/ReleaseChannel.swift, Sync/SyncClient.swift, Sync/WireMessages.swift, tests/SyncHostTests.swift, tests/SyncTestSupport.swift, and align build number hash in ios/NucleicRemote/NucleicRemote.xcodeproj/project.pbxproj, ios/NucleicRemote/NucleicRemote/Info.plist, ios/NucleicRemote/NucleicRemote/Views/BuildBanner.swift.

Nucleic-Promote: 1
Co-authored-by: Nucleic <[email protected]>
This commit is contained in:
2026-07-02 21:54:40 -07:00
co-authored by Nucleic
parent 535c092fcc
commit 7b5bdc9d0b
4 changed files with 73 additions and 8 deletions
@@ -136,6 +136,7 @@
BP00000000000000000003 /* Frameworks */,
BP00000000000000000004 /* Resources */,
BP00000000000000000005 /* Embed Foundation Extensions */,
BP00000000000000000009 /* Stamp git commit into Info.plist */,
);
buildRules = (
);
@@ -235,6 +236,24 @@
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXShellScriptBuildPhase section */
BP00000000000000000009 /* Stamp git commit into Info.plist */ = {
isa = PBXShellScriptBuildPhase;
alwaysOutOfDate = 1;
buildActionMask = 2147483647;
files = (
);
inputPaths = (
);
name = "Stamp git commit into Info.plist";
outputPaths = (
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "# Stamp the short git commit into the built Info.plist (NucleicCommit key), the iOS\n# mirror of the Mac's EmbedGitCommit prebuild plugin. Runs before code signing so the\n# signature covers the stamped value; alwaysOutOfDate keeps it fresh on every build. A\n# trailing \"+\" marks a dirty tree; \"unknown\" (no git) makes the app fall back to the\n# bundle build number.\nset -e\nplist=\"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}\"\n[ -f \"$plist\" ] || exit 0\nhash=$(git -C \"${SRCROOT}\" rev-parse --short HEAD 2>/dev/null || echo unknown)\nif [ \"$hash\" != unknown ] && [ -n \"$(git -C \"${SRCROOT}\" status --porcelain 2>/dev/null)\" ]; then\n hash=\"${hash}+\"\nfi\n/usr/libexec/PlistBuddy -c \"Set :NucleicCommit $hash\" \"$plist\" 2>/dev/null || /usr/libexec/PlistBuddy -c \"Add :NucleicCommit string $hash\" \"$plist\"\n";
};
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
BP00000000000000000002 /* Sources */ = {
isa = PBXSourcesBuildPhase;
@@ -305,6 +324,9 @@
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = L7UDTQ6F5W;
ENABLE_PREVIEWS = YES;
// The "Stamp git commit into Info.plist" phase shells out to git and rewrites the
// built Info.plist, both of which script sandboxing would block.
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = NucleicRemote/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = "Nucleic$(NUCLEIC_NAME_SUFFIX)";
@@ -349,6 +371,9 @@
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = L7UDTQ6F5W;
ENABLE_PREVIEWS = YES;
// The "Stamp git commit into Info.plist" phase shells out to git and rewrites the
// built Info.plist, both of which script sandboxing would block.
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = NucleicRemote/Info.plist;
INFOPLIST_KEY_CFBundleDisplayName = "Nucleic$(NUCLEIC_NAME_SUFFIX)";