apple.macos listing / review notes per platform + iOS-only claim warnings; apple upload of a .pkg: bounded pkgutil, macOS processing wait, heartbeats; release 409 pattern
This commit is contained in:
parent
53d57544bf
commit
1e47c2ee60
18 changed files with 417 additions and 63 deletions
|
|
@ -16,7 +16,7 @@ import { type BundleManifest, bundleTrackingIssues, ipaManifests, projectSdkMani
|
|||
import { trackingIssue } from './lib/privacy-manifest';
|
||||
import { type AsoFinding, auditAso } from './lib/aso';
|
||||
import { draftLocales } from './lib/aso-intel';
|
||||
import { appleName, playCodes } from './lib/config';
|
||||
import { appleName, listingPathFor, playCodes } from './lib/config';
|
||||
import { fieldsMentions } from './lib/cross-store';
|
||||
import { appBuildFile, pickGradle, versionSourceIssues, versionSourceMessage } from './lib/gradle';
|
||||
import { playConsoleReminders } from './lib/console-plan';
|
||||
|
|
@ -107,6 +107,12 @@ export async function run(ctx: Ctx): Promise<void> {
|
|||
try { const tr = findFastlaneTraces(dirname(path)); if (tr.length) for (const t of tr) note(traceMessage(t)); } catch (e) { warn('check', `fastlane traces: ${(e as Error).message}`); }
|
||||
// other platforms named in a store's text: App Store 2.3.10 / Play Metadata, a blocker (pitfall 77)
|
||||
try { for (const h of listingFileMentions(ctx.loaded)) problems.push(`other platform in ${hitLine(h)}`); } catch (e) { warn('check', `platform mentions: ${(e as Error).message}`); }
|
||||
if (config.apple?.macos?.listing) tryDo('appstore listing (macOS)', () => {
|
||||
const copy = parseAppStoreListing(readFileSync(resolve(listingPathFor(config, 'macos')), 'utf8'));
|
||||
const missing = config.languages.filter(l => l.apple && !copy[l.apple]).map(l => l.apple);
|
||||
if (missing.length) note(`macOS appstore listing has no section for ${missing.join(', ')}`);
|
||||
return `${Object.keys(copy).length} locales`;
|
||||
});
|
||||
// listing translation drafts (storebound listing translate): fine to keep working on, not to push unreviewed
|
||||
for (const f of [config.apple ? resolve(config.apple.listing ?? 'store/appstore.md') : '', config.play ? resolve(config.play.listing ?? 'store/listing.md') : ''].filter(Boolean)) {
|
||||
if (!existsSync(f)) continue;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue