socket 0.14.101 → 0.14.103

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.
@@ -900,7 +900,7 @@ function emitBanner(name) {
900
900
  logger.logger.error(getAsciiHeader(name))
901
901
  }
902
902
  function getAsciiHeader(command) {
903
- const cliVersion = '0.14.101:26533ef:8b0b91f5:pub' // The '@rollup/plugin-replace' will replace "process.env['INLINED_SOCKET_CLI_VERSION_HASH']".
903
+ const cliVersion = '0.14.103:d303e97:2b3cd4a5:pub' // The '@rollup/plugin-replace' will replace "process.env['INLINED_SOCKET_CLI_VERSION_HASH']".
904
904
  const nodeVersion = process$1.version
905
905
  const apiToken = shadowNpmInject.getDefaultToken()
906
906
  const shownToken = apiToken ? getLastFiveOfApiToken(apiToken) : 'no'
@@ -3708,7 +3708,39 @@ function formatBranchName(str) {
3708
3708
  function getPkgNameFromPurlObj(purlObj) {
3709
3709
  return `${purlObj.namespace ? `${purlObj.namespace}/` : ''}${purlObj.name}`
3710
3710
  }
3711
- async function branchExists(branch, cwd = process.cwd()) {
3711
+ function getBaseGitBranch() {
3712
+ // Lazily access constants.ENV[GITHUB_REF_NAME].
3713
+ return (
3714
+ constants.ENV[GITHUB_REF_NAME] ??
3715
+ // GitHub defaults to branch name "main"
3716
+ // https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches#about-the-default-branch
3717
+ 'main'
3718
+ )
3719
+ }
3720
+ function getSocketBranchName(purl, toVersion) {
3721
+ const purlObj = packageurlJs.PackageURL.fromString(purl)
3722
+ const namespace = formatBranchName(purlObj.namespace ?? '')
3723
+ const name = formatBranchName(purlObj.name)
3724
+ const version = formatBranchName(toVersion)
3725
+ const fullName = `${namespace ? `${namespace}-` : ''}${name}`
3726
+ return `socket-fix-${fullName}-${version}`
3727
+ }
3728
+ function getSocketPullRequestTitle(purl, toVersion) {
3729
+ const purlObj = packageurlJs.PackageURL.fromString(purl)
3730
+ const pkgName = getPkgNameFromPurlObj(purlObj)
3731
+ return `Bump ${pkgName} from ${purlObj.version} to ${toVersion}`
3732
+ }
3733
+ function getSocketPullRequestBody(purl, toVersion) {
3734
+ const purlObj = packageurlJs.PackageURL.fromString(purl)
3735
+ const pkgName = getPkgNameFromPurlObj(purlObj)
3736
+ return `Bumps [${pkgName}](https://socket.dev/${purlObj.type}/package/${pkgName}) from ${purlObj.version} to ${toVersion}.`
3737
+ }
3738
+ function getSocketCommitMessage(purl, toVersion) {
3739
+ const purlObj = packageurlJs.PackageURL.fromString(purl)
3740
+ const pkgName = getPkgNameFromPurlObj(purlObj)
3741
+ return `socket: Bump ${pkgName} from ${purlObj.version} to ${toVersion}`
3742
+ }
3743
+ async function gitBranchExists(branch, cwd = process.cwd()) {
3712
3744
  try {
3713
3745
  await spawn.spawn(
3714
3746
  'git',
@@ -3722,8 +3754,15 @@ async function branchExists(branch, cwd = process.cwd()) {
3722
3754
  } catch {}
3723
3755
  return false
3724
3756
  }
3725
- async function checkoutBaseBranchIfAvailable(baseBranch, cwd = process.cwd()) {
3757
+ async function gitCheckoutBaseBranchIfAvailable(
3758
+ baseBranch,
3759
+ cwd = process.cwd()
3760
+ ) {
3726
3761
  try {
3762
+ await gitHardReset()
3763
+ await spawn.spawn('git', ['fetch', '--depth=1', 'origin', baseBranch], {
3764
+ cwd
3765
+ })
3727
3766
  await spawn.spawn('git', ['checkout', baseBranch], {
3728
3767
  cwd
3729
3768
  })
@@ -3731,18 +3770,19 @@ async function checkoutBaseBranchIfAvailable(baseBranch, cwd = process.cwd()) {
3731
3770
  cwd
3732
3771
  })
3733
3772
  logger.logger.info(`Checked out and reset to ${baseBranch}`)
3734
- } catch {
3773
+ } catch (e) {
3735
3774
  logger.logger.warn(
3736
3775
  `Could not switch to ${baseBranch}. Proceeding with HEAD.`
3737
3776
  )
3777
+ debug.debugLog(e)
3738
3778
  }
3739
3779
  }
3740
- async function createAndPushBranchIfNeeded(
3780
+ async function gitCreateAndPushBranchIfNeeded(
3741
3781
  branch,
3742
3782
  commitMsg,
3743
3783
  cwd = process.cwd()
3744
3784
  ) {
3745
- if (await branchExists(branch, cwd)) {
3785
+ if (await gitBranchExists(branch, cwd)) {
3746
3786
  logger.logger.warn(`Branch "${branch}" already exists. Skipping creation.`)
3747
3787
  return false
3748
3788
  }
@@ -3760,37 +3800,20 @@ async function createAndPushBranchIfNeeded(
3760
3800
  })
3761
3801
  return true
3762
3802
  }
3763
- function getBaseBranch() {
3764
- // Lazily access constants.ENV[GITHUB_REF_NAME].
3765
- return (
3766
- constants.ENV[GITHUB_REF_NAME] ??
3767
- // GitHub defaults to branch name "main"
3768
- // https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-branches#about-the-default-branch
3769
- 'main'
3770
- )
3771
- }
3772
- function getSocketBranchName(purl, toVersion) {
3773
- const purlObj = packageurlJs.PackageURL.fromString(purl)
3774
- const namespace = formatBranchName(purlObj.namespace ?? '')
3775
- const name = formatBranchName(purlObj.name)
3776
- const version = formatBranchName(toVersion)
3777
- const fullName = `${namespace ? `${namespace}-` : ''}${name}`
3778
- return `socket-fix-${fullName}-${version}`
3779
- }
3780
- function getSocketPullRequestTitle(purl, toVersion) {
3781
- const purlObj = packageurlJs.PackageURL.fromString(purl)
3782
- const pkgName = getPkgNameFromPurlObj(purlObj)
3783
- return `Bump ${pkgName} from ${purlObj.version} to ${toVersion}`
3784
- }
3785
- function getSocketPullRequestBody(purl, toVersion) {
3786
- const purlObj = packageurlJs.PackageURL.fromString(purl)
3787
- const pkgName = getPkgNameFromPurlObj(purlObj)
3788
- return `Bumps [${pkgName}](https://socket.dev/${purlObj.type}/package/${pkgName}) from ${purlObj.version} to ${toVersion}.`
3803
+ async function gitHardReset(cwd = process.cwd()) {
3804
+ await spawn.spawn('git', ['reset', '--hard'], {
3805
+ cwd
3806
+ })
3789
3807
  }
3790
- function getSocketCommitMessage(purl, toVersion) {
3791
- const purlObj = packageurlJs.PackageURL.fromString(purl)
3792
- const pkgName = getPkgNameFromPurlObj(purlObj)
3793
- return `socket: Bump ${pkgName} from ${purlObj.version} to ${toVersion}`
3808
+ async function isInGitRepo(cwd = process.cwd()) {
3809
+ try {
3810
+ await spawn.spawn('git', ['rev-parse', '--is-inside-work-tree'], {
3811
+ cwd,
3812
+ stdio: 'ignore'
3813
+ })
3814
+ return true
3815
+ } catch {}
3816
+ return false
3794
3817
  }
3795
3818
 
3796
3819
  const { GITHUB_ACTIONS, GITHUB_REPOSITORY, SOCKET_SECURITY_GITHUB_PAT } =
@@ -3967,6 +3990,7 @@ async function npmFix(
3967
3990
  })
3968
3991
  // Lazily access constants.ENV[CI].
3969
3992
  const isCi = constants.ENV[CI$1]
3993
+ const isRepo = await isInGitRepo(cwd)
3970
3994
  await arb.buildIdealTree()
3971
3995
  for (const { 0: name, 1: infos } of infoByPkg) {
3972
3996
  const hasUpgrade = !!registry.getManifestData(NPM$f, name)
@@ -4052,10 +4076,10 @@ async function npmFix(
4052
4076
  : undefined)
4053
4077
  }
4054
4078
  spinner?.info(`Installing ${toSpec}`)
4055
- const baseBranch = getBaseBranch()
4079
+ const baseBranch = getBaseGitBranch()
4056
4080
 
4057
4081
  // eslint-disable-next-line no-await-in-loop
4058
- await checkoutBaseBranchIfAvailable(baseBranch, cwd)
4082
+ await gitCheckoutBaseBranchIfAvailable(baseBranch, cwd)
4059
4083
  let error
4060
4084
  let errored = false
4061
4085
  let installed = false
@@ -4093,7 +4117,7 @@ async function npmFix(
4093
4117
  }
4094
4118
  if (!errored && shouldOpenPr) {
4095
4119
  // eslint-disable-next-line no-await-in-loop
4096
- await createAndPushBranchIfNeeded(
4120
+ await gitCreateAndPushBranchIfNeeded(
4097
4121
  branch,
4098
4122
  getSocketCommitMessage(fromPurl, toVersion),
4099
4123
  cwd
@@ -4117,12 +4141,18 @@ async function npmFix(
4117
4141
  if (errored) {
4118
4142
  spinner?.error(`Reverting ${toSpec}`, error)
4119
4143
  }
4144
+ if (isRepo) {
4145
+ // eslint-disable-next-line no-await-in-loop
4146
+ await gitHardReset(cwd)
4147
+ }
4120
4148
  if (saved) {
4121
4149
  editablePkgJson.update(revertData)
4122
- // eslint-disable-next-line no-await-in-loop
4123
- await editablePkgJson.save()
4150
+ if (!isRepo) {
4151
+ // eslint-disable-next-line no-await-in-loop
4152
+ await editablePkgJson.save()
4153
+ }
4124
4154
  }
4125
- if (installed) {
4155
+ if (!isRepo && installed) {
4126
4156
  // eslint-disable-next-line no-await-in-loop
4127
4157
  await install$1(revertTree, {
4128
4158
  cwd
@@ -4384,6 +4414,7 @@ async function pnpmFix(
4384
4414
  })
4385
4415
  // Lazily access constants.ENV[CI].
4386
4416
  const isCi = constants.ENV[CI]
4417
+ const isRepo = await isInGitRepo(cwd)
4387
4418
  let actualTree = await getActualTree(cwd)
4388
4419
  for (const { 0: name, 1: infos } of infoByPkg) {
4389
4420
  if (registry.getManifestData(NPM$c, name)) {
@@ -4448,6 +4479,7 @@ async function pnpmFix(
4448
4479
  )
4449
4480
  const toSpec = `${name}@${toVersionRange}`
4450
4481
  const branch = isCi ? getSocketBranchName(fromPurl, toVersion) : ''
4482
+ const baseBranch = isCi ? getBaseGitBranch() : ''
4451
4483
  const { owner, repo } = isCi
4452
4484
  ? getGitHubEnvRepoInfo()
4453
4485
  : {
@@ -4498,10 +4530,10 @@ async function pnpmFix(
4498
4530
  : undefined)
4499
4531
  }
4500
4532
  spinner?.info(`Installing ${toSpec}`)
4501
- const baseBranch = getBaseBranch()
4502
-
4503
- // eslint-disable-next-line no-await-in-loop
4504
- await checkoutBaseBranchIfAvailable(baseBranch, cwd)
4533
+ if (isCi) {
4534
+ // eslint-disable-next-line no-await-in-loop
4535
+ await gitCheckoutBaseBranchIfAvailable(baseBranch, cwd)
4536
+ }
4505
4537
  let error
4506
4538
  let errored = false
4507
4539
  let installed = false
@@ -4540,7 +4572,7 @@ async function pnpmFix(
4540
4572
  }
4541
4573
  if (!errored && shouldOpenPr) {
4542
4574
  // eslint-disable-next-line no-await-in-loop
4543
- await createAndPushBranchIfNeeded(
4575
+ await gitCreateAndPushBranchIfNeeded(
4544
4576
  branch,
4545
4577
  getSocketCommitMessage(fromPurl, toVersion),
4546
4578
  cwd
@@ -4564,12 +4596,21 @@ async function pnpmFix(
4564
4596
  if (errored) {
4565
4597
  spinner?.error(`Reverting ${toSpec}`, error)
4566
4598
  }
4599
+ if (isRepo) {
4600
+ // eslint-disable-next-line no-await-in-loop
4601
+ await gitHardReset(cwd)
4602
+ }
4567
4603
  if (saved) {
4568
4604
  editablePkgJson.update(revertData)
4569
- // eslint-disable-next-line no-await-in-loop
4570
- await editablePkgJson.save()
4605
+ if (!isRepo) {
4606
+ // eslint-disable-next-line no-await-in-loop
4607
+ await editablePkgJson.save()
4608
+ }
4571
4609
  }
4572
- if (installed) {
4610
+ if (isRepo) {
4611
+ // eslint-disable-next-line no-await-in-loop
4612
+ actualTree = await getActualTree(cwd)
4613
+ } else if (installed) {
4573
4614
  // eslint-disable-next-line no-await-in-loop
4574
4615
  actualTree = await install(pkgEnvDetails, {
4575
4616
  spinner
@@ -11498,7 +11539,7 @@ void (async () => {
11498
11539
  await vendor.updater({
11499
11540
  name: SOCKET_CLI_BIN_NAME,
11500
11541
  // The '@rollup/plugin-replace' will replace "process.env['INLINED_SOCKET_CLI_VERSION']".
11501
- version: '0.14.101',
11542
+ version: '0.14.103',
11502
11543
  ttl: 86_400_000 /* 24 hours in milliseconds */
11503
11544
  })
11504
11545
  try {
@@ -11566,5 +11607,5 @@ void (async () => {
11566
11607
  await shadowNpmInject.captureException(e)
11567
11608
  }
11568
11609
  })()
11569
- //# debugId=994a338d-d21c-4fec-b92e-a2121b0f443a
11610
+ //# debugId=3fc5326e-42e3-4bc1-b11e-317bbdc355b6
11570
11611
  //# sourceMappingURL=cli.js.map