code: async function main () {
    const opts = parseCommandLine()
    const currentVersion = await utils.getElectronVersion()
    const version = await nextVersion(opts.bump, currentVersion)
  
    const parsed = semver.parse(version)
    const components = {
      major: parsed.major,
      minor: parsed.minor,
      patch: parsed.patch,
      pre: parsed.prerelease
    }
  
    // print would-be new version and exit early
    if (opts.dryRun) {
      console.log(`new version number would be: ${version}\n`)
      return 0
    }
  
    // update all version-related files
    await Promise.all([
      updateVersion(version),
      updateInfoPlist(version),
      updatePackageJSON(version),
      updateVersionH(components),
      updateWinRC(components)
    ])
  
    // commit all updated version-related files
    await commitVersionBump(version)
  
    console.log(`Bumped to version: ${version}`)
  }
docs: run the script