Home / Function/ main() — react Function Reference

main() — react Function Reference

Architecture documentation for the main() function in prepare-release.js from the react codebase.

Entity Profile

Dependency Diagram

graph TD
  cadb4d3f_5109_b4e0_6f72_18067565caef["main()"]
  497982e7_e1b1_28ad_fd0c_dc03591e3177["prepare-release.js"]
  cadb4d3f_5109_b4e0_6f72_18067565caef -->|defined in| 497982e7_e1b1_28ad_fd0c_dc03591e3177
  1dd9028e_1ba8_585b_bffc_a50bd4954581["getPreviousCommitSha()"]
  cadb4d3f_5109_b4e0_6f72_18067565caef -->|calls| 1dd9028e_1ba8_585b_bffc_a50bd4954581
  9e3c854f_4333_38e1_0e1c_40b1ff22730b["getCommitLog()"]
  cadb4d3f_5109_b4e0_6f72_18067565caef -->|calls| 9e3c854f_4333_38e1_0e1c_40b1ff22730b
  8e3c81f4_d6d6_1a40_7215_c78cdce3365d["getReleaseType()"]
  cadb4d3f_5109_b4e0_6f72_18067565caef -->|calls| 8e3c81f4_d6d6_1a40_7215_c78cdce3365d
  6f97f41e_88e7_52db_efea_f43d42900a1d["updateChangelog()"]
  cadb4d3f_5109_b4e0_6f72_18067565caef -->|calls| 6f97f41e_88e7_52db_efea_f43d42900a1d
  06b9020a_d17b_440b_f05b_9db6724fd5be["reviewChangelogPrompt()"]
  cadb4d3f_5109_b4e0_6f72_18067565caef -->|calls| 06b9020a_d17b_440b_f05b_9db6724fd5be
  413171ec_8ac2_f8b1_beb0_a88bed756da2["updatePackageVersions()"]
  cadb4d3f_5109_b4e0_6f72_18067565caef -->|calls| 413171ec_8ac2_f8b1_beb0_a88bed756da2
  1c2dbbf9_f4c5_45db_58a9_9c20d45f200a["updateManifestVersions()"]
  cadb4d3f_5109_b4e0_6f72_18067565caef -->|calls| 1c2dbbf9_f4c5_45db_58a9_9c20d45f200a
  77b3c2bf_5473_ec6b_0c57_9df4b4c3be61["commitPendingChanges()"]
  cadb4d3f_5109_b4e0_6f72_18067565caef -->|calls| 77b3c2bf_5473_ec6b_0c57_9df4b4c3be61
  9e1fc10f_bfe4_c709_3cdb_49ecee1f6747["printFinalInstructions()"]
  cadb4d3f_5109_b4e0_6f72_18067565caef -->|calls| 9e1fc10f_bfe4_c709_3cdb_49ecee1f6747
  style cadb4d3f_5109_b4e0_6f72_18067565caef fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

scripts/devtools/prepare-release.js lines 29–72

async function main() {
  clear();

  await checkNPMPermissions();

  const sha = await getPreviousCommitSha();
  const [shortCommitLog, formattedCommitLog] = await getCommitLog(sha);

  console.log('');
  console.log(
    'This release includes the following commits:',
    chalk.gray(shortCommitLog)
  );
  console.log('');

  const releaseType = await getReleaseType();

  const path = join(ROOT_PATH, PACKAGE_PATHS[0]);
  const previousVersion = readJsonSync(path).version;
  const {major, minor, patch} = semver(previousVersion);
  const nextVersion =
    releaseType === 'minor'
      ? `${major}.${minor + 1}.0`
      : `${major}.${minor}.${patch + 1}`;

  updateChangelog(nextVersion, formattedCommitLog);

  await reviewChangelogPrompt();

  updatePackageVersions(previousVersion, nextVersion);
  updateManifestVersions(previousVersion, nextVersion);

  console.log('');
  console.log(
    `Packages and manifests have been updated from version ${chalk.bold(
      previousVersion
    )} to ${chalk.bold(nextVersion)}`
  );
  console.log('');

  await commitPendingChanges(previousVersion, nextVersion);

  printFinalInstructions();
}

Domain

Subdomains

Frequently Asked Questions

What does main() do?
main() is a function in the react codebase, defined in scripts/devtools/prepare-release.js.
Where is main() defined?
main() is defined in scripts/devtools/prepare-release.js at line 29.
What does main() call?
main() calls 9 function(s): commitPendingChanges, getCommitLog, getPreviousCommitSha, getReleaseType, printFinalInstructions, reviewChangelogPrompt, updateChangelog, updateManifestVersions, and 1 more.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free