@socketsecurity/cli-with-sentry 1.1.41 → 1.1.42

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.
package/CHANGELOG.md CHANGED
@@ -4,7 +4,17 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
6
6
 
7
- ## [1.1.41](https://github.com/SocketDev/socket-cli/releases/tag/v1.1.40) - 2025-12-02
7
+ ## [1.1.42](https://github.com/SocketDev/socket-cli/releases/tag/v1.1.42) - 2025-12-04
8
+
9
+ ### Added
10
+ - Added `--ecosystems` flag to `socket fix`.
11
+
12
+ ### Changed
13
+ - Updated the Coana CLI to v `14.12.113`.
14
+ - Rename `--limit` flag to `--pr-limit` for `socket fix`, but keep old flag as an alias. Note: `--pr-limit` has no effect in local mode, use `--id` options instead.
15
+ - Process all vulnerabilities with `socket fix` when no `--id` options are provided.
16
+
17
+ ## [1.1.41](https://github.com/SocketDev/socket-cli/releases/tag/v1.1.41) - 2025-12-02
8
18
 
9
19
  ### Added
10
20
  - Added `--reach-version` flag to `socket scan create` and `socket scan reach` to override the @coana-tech/cli version used for reachability analysis.
package/dist/cli.js CHANGED
@@ -446,7 +446,7 @@ async function run$S(argv, importMeta, {
446
446
  fail: 'bad'
447
447
  }, {
448
448
  nook: true,
449
- test: hasApiToken,
449
+ test: dryRun || hasApiToken,
450
450
  message: 'This command requires a Socket API token for access',
451
451
  fail: 'try `socket login`'
452
452
  });
@@ -850,7 +850,7 @@ async function run$R(argv, importMeta, {
850
850
  fail: 'missing'
851
851
  }, {
852
852
  nook: true,
853
- test: hasApiToken,
853
+ test: dryRun || hasApiToken,
854
854
  message: 'This command requires a Socket API token for access',
855
855
  fail: 'try `socket login`'
856
856
  }, {
@@ -3694,13 +3694,13 @@ async function getFixEnv() {
3694
3694
  async function discoverGhsaIds(orgSlug, tarHash, options) {
3695
3695
  const {
3696
3696
  cwd = process.cwd(),
3697
- limit,
3697
+ ecosystems,
3698
3698
  spinner
3699
3699
  } = {
3700
3700
  __proto__: null,
3701
3701
  ...options
3702
3702
  };
3703
- const foundCResult = await utils.spawnCoanaDlx(['find-vulnerabilities', cwd, '--manifests-tar-hash', tarHash], orgSlug, {
3703
+ const foundCResult = await utils.spawnCoanaDlx(['find-vulnerabilities', cwd, '--manifests-tar-hash', tarHash, ...(ecosystems?.length ? ['--purl-types', ...ecosystems] : [])], orgSlug, {
3704
3704
  cwd,
3705
3705
  spinner,
3706
3706
  coanaVersion: options?.coanaVersion
@@ -3708,15 +3708,13 @@ async function discoverGhsaIds(orgSlug, tarHash, options) {
3708
3708
  stdio: 'pipe'
3709
3709
  });
3710
3710
  if (foundCResult.ok) {
3711
- // Coana prints ghsaIds as json-formatted string on the final line of the output
3712
- const foundIds = [];
3713
3711
  try {
3712
+ // Coana prints ghsaIds as json-formatted string on the final line of the output.
3714
3713
  const ghsaIdsRaw = foundCResult.data.trim().split('\n').pop();
3715
3714
  if (ghsaIdsRaw) {
3716
- foundIds.push(...JSON.parse(ghsaIdsRaw));
3715
+ return JSON.parse(ghsaIdsRaw);
3717
3716
  }
3718
3717
  } catch {}
3719
- return limit !== undefined ? foundIds.slice(0, limit) : foundIds;
3720
3718
  }
3721
3719
  return [];
3722
3720
  }
@@ -3727,13 +3725,14 @@ async function coanaFix(fixConfig) {
3727
3725
  coanaVersion,
3728
3726
  cwd,
3729
3727
  disableMajorUpdates,
3728
+ ecosystems,
3730
3729
  exclude,
3731
3730
  ghsas,
3732
3731
  include,
3733
- limit,
3734
3732
  minimumReleaseAge,
3735
3733
  orgSlug,
3736
3734
  outputFile,
3735
+ prLimit,
3737
3736
  showAffectedDirectDependencies,
3738
3737
  spinner
3739
3738
  } = fixConfig;
@@ -3776,7 +3775,7 @@ async function coanaFix(fixConfig) {
3776
3775
  data: uploadCResult.data
3777
3776
  };
3778
3777
  }
3779
- const isAll = !ghsas.length || ghsas.length === 1 && (ghsas[0] === 'all' || ghsas[0] === 'auto');
3778
+ const shouldDiscoverGhsaIds = !ghsas.length;
3780
3779
  const shouldOpenPrs = fixEnv.isCi && fixEnv.repoInfo;
3781
3780
  if (!shouldOpenPrs) {
3782
3781
  // Inform user about local mode when fixes will be applied.
@@ -3792,20 +3791,15 @@ async function coanaFix(fixConfig) {
3792
3791
  logger.logger.info('Running in local mode - fixes will be applied directly to your working directory.\n' + getCiEnvInstructions());
3793
3792
  }
3794
3793
  }
3795
- let ids;
3796
- if (isAll && limit > 0) {
3797
- ids = await discoverGhsaIds(orgSlug, tarHash, {
3798
- cwd,
3799
- limit,
3800
- spinner,
3801
- coanaVersion
3802
- });
3803
- } else if (limit > 0) {
3804
- ids = ghsas.slice(0, limit);
3805
- } else {
3806
- ids = [];
3807
- }
3808
- if (limit < 1 || ids.length === 0) {
3794
+
3795
+ // In local mode, process all discovered/provided IDs (no limit).
3796
+ const ids = shouldDiscoverGhsaIds ? await discoverGhsaIds(orgSlug, tarHash, {
3797
+ coanaVersion,
3798
+ cwd,
3799
+ ecosystems,
3800
+ spinner
3801
+ }) : ghsas;
3802
+ if (ids.length === 0) {
3809
3803
  spinner?.stop();
3810
3804
  return {
3811
3805
  ok: true,
@@ -3819,7 +3813,7 @@ async function coanaFix(fixConfig) {
3819
3813
  const tmpDir = os.tmpdir();
3820
3814
  const tmpFile = path.join(tmpDir, `socket-fix-${Date.now()}.json`);
3821
3815
  try {
3822
- const fixCResult = await utils.spawnCoanaDlx(['compute-fixes-and-upgrade-purls', cwd, '--manifests-tar-hash', tarHash, '--apply-fixes-to', ...ids, ...(fixConfig.rangeStyle ? ['--range-style', fixConfig.rangeStyle] : []), ...(minimumReleaseAge ? ['--minimum-release-age', minimumReleaseAge] : []), ...(include.length ? ['--include', ...include] : []), ...(exclude.length ? ['--exclude', ...exclude] : []), ...(!applyFixes ? [constants.FLAG_DRY_RUN] : []), '--output-file', tmpFile, ...(disableMajorUpdates ? ['--disable-major-updates'] : []), ...(showAffectedDirectDependencies ? ['--show-affected-direct-dependencies'] : []), ...fixConfig.unknownFlags], fixConfig.orgSlug, {
3816
+ const fixCResult = await utils.spawnCoanaDlx(['compute-fixes-and-upgrade-purls', cwd, '--manifests-tar-hash', tarHash, '--apply-fixes-to', ...ids, ...(fixConfig.rangeStyle ? ['--range-style', fixConfig.rangeStyle] : []), ...(minimumReleaseAge ? ['--minimum-release-age', minimumReleaseAge] : []), ...(include.length ? ['--include', ...include] : []), ...(exclude.length ? ['--exclude', ...exclude] : []), ...(ecosystems.length ? ['--purl-types', ...ecosystems] : []), ...(!applyFixes ? [constants.FLAG_DRY_RUN] : []), '--output-file', tmpFile, ...(disableMajorUpdates ? ['--disable-major-updates'] : []), ...(showAffectedDirectDependencies ? ['--show-affected-direct-dependencies'] : []), ...fixConfig.unknownFlags], fixConfig.orgSlug, {
3823
3817
  coanaVersion,
3824
3818
  cwd,
3825
3819
  spinner,
@@ -3858,8 +3852,8 @@ async function coanaFix(fixConfig) {
3858
3852
  }
3859
3853
  }
3860
3854
 
3861
- // Adjust limit based on open Socket Fix PRs.
3862
- let adjustedLimit = limit;
3855
+ // Adjust PR limit based on open Socket Fix PRs.
3856
+ let adjustedPrLimit = prLimit;
3863
3857
  if (shouldOpenPrs && fixEnv.repoInfo) {
3864
3858
  try {
3865
3859
  const openPrs = await getSocketFixPrs(fixEnv.repoInfo.owner, fixEnv.repoInfo.repo, {
@@ -3867,26 +3861,24 @@ async function coanaFix(fixConfig) {
3867
3861
  });
3868
3862
  const openPrCount = openPrs.length;
3869
3863
  // Reduce limit by number of open PRs to avoid creating too many.
3870
- adjustedLimit = Math.max(0, limit - openPrCount);
3864
+ adjustedPrLimit = Math.max(0, prLimit - openPrCount);
3871
3865
  if (openPrCount > 0) {
3872
- require$$9.debugFn('notice', `limit: adjusted from ${limit} to ${adjustedLimit} (${openPrCount} open Socket Fix ${words.pluralize('PR', openPrCount)}`);
3866
+ require$$9.debugFn('notice', `prLimit: adjusted from ${prLimit} to ${adjustedPrLimit} (${openPrCount} open Socket Fix ${words.pluralize('PR', openPrCount)}`);
3873
3867
  }
3874
3868
  } catch (e) {
3875
3869
  require$$9.debugFn('warn', 'Failed to count open PRs, using original limit');
3876
3870
  require$$9.debugDir('error', e);
3877
3871
  }
3878
3872
  }
3879
- const shouldSpawnCoana = adjustedLimit > 0;
3873
+ const shouldSpawnCoana = adjustedPrLimit > 0;
3880
3874
  let ids;
3881
- if (shouldSpawnCoana && isAll) {
3882
- ids = await discoverGhsaIds(orgSlug, tarHash, {
3875
+ if (shouldSpawnCoana) {
3876
+ ids = (shouldDiscoverGhsaIds ? await discoverGhsaIds(orgSlug, tarHash, {
3877
+ coanaVersion,
3883
3878
  cwd,
3884
- limit: adjustedLimit,
3885
- spinner,
3886
- coanaVersion
3887
- });
3888
- } else if (shouldSpawnCoana) {
3889
- ids = ghsas.slice(0, adjustedLimit);
3879
+ ecosystems,
3880
+ spinner
3881
+ }) : ghsas).slice(0, adjustedPrLimit);
3890
3882
  }
3891
3883
  if (!ids?.length) {
3892
3884
  require$$9.debugFn('notice', 'miss: no GHSA IDs to process');
@@ -3919,7 +3911,7 @@ async function coanaFix(fixConfig) {
3919
3911
 
3920
3912
  // Apply fix for single GHSA ID.
3921
3913
  // eslint-disable-next-line no-await-in-loop
3922
- const fixCResult = await utils.spawnCoanaDlx(['compute-fixes-and-upgrade-purls', cwd, '--manifests-tar-hash', tarHash, '--apply-fixes-to', ghsaId, ...(fixConfig.rangeStyle ? ['--range-style', fixConfig.rangeStyle] : []), ...(minimumReleaseAge ? ['--minimum-release-age', minimumReleaseAge] : []), ...(include.length ? ['--include', ...include] : []), ...(exclude.length ? ['--exclude', ...exclude] : []), ...(disableMajorUpdates ? ['--disable-major-updates'] : []), ...(showAffectedDirectDependencies ? ['--show-affected-direct-dependencies'] : []), ...fixConfig.unknownFlags], fixConfig.orgSlug, {
3914
+ const fixCResult = await utils.spawnCoanaDlx(['compute-fixes-and-upgrade-purls', cwd, '--manifests-tar-hash', tarHash, '--apply-fixes-to', ghsaId, ...(fixConfig.rangeStyle ? ['--range-style', fixConfig.rangeStyle] : []), ...(minimumReleaseAge ? ['--minimum-release-age', minimumReleaseAge] : []), ...(include.length ? ['--include', ...include] : []), ...(exclude.length ? ['--exclude', ...exclude] : []), ...(ecosystems.length ? ['--purl-types', ...ecosystems] : []), ...(disableMajorUpdates ? ['--disable-major-updates'] : []), ...(showAffectedDirectDependencies ? ['--show-affected-direct-dependencies'] : []), ...fixConfig.unknownFlags], fixConfig.orgSlug, {
3923
3915
  coanaVersion,
3924
3916
  cwd,
3925
3917
  spinner,
@@ -4080,8 +4072,8 @@ async function coanaFix(fixConfig) {
4080
4072
  await utils.gitCheckoutBranch(fixEnv.baseBranch, cwd);
4081
4073
  }
4082
4074
  count += 1;
4083
- require$$9.debugFn('notice', `increment: count ${count}/${Math.min(adjustedLimit, ids.length)}`);
4084
- if (count >= adjustedLimit) {
4075
+ require$$9.debugFn('notice', `increment: count ${count}/${Math.min(adjustedPrLimit, ids.length)}`);
4076
+ if (count >= adjustedPrLimit) {
4085
4077
  break ghsaLoop;
4086
4078
  }
4087
4079
  }
@@ -4180,16 +4172,17 @@ async function handleFix({
4180
4172
  coanaVersion,
4181
4173
  cwd,
4182
4174
  disableMajorUpdates,
4175
+ ecosystems,
4183
4176
  exclude,
4184
4177
  ghsas,
4185
4178
  include,
4186
- limit,
4187
4179
  minSatisfying,
4188
4180
  minimumReleaseAge,
4189
4181
  orgSlug,
4190
4182
  outputFile,
4191
4183
  outputKind,
4192
4184
  prCheck,
4185
+ prLimit,
4193
4186
  rangeStyle,
4194
4187
  showAffectedDirectDependencies,
4195
4188
  spinner,
@@ -4202,15 +4195,16 @@ async function handleFix({
4202
4195
  coanaVersion,
4203
4196
  cwd,
4204
4197
  disableMajorUpdates,
4198
+ ecosystems,
4205
4199
  exclude,
4206
4200
  ghsas,
4207
4201
  include,
4208
- limit,
4209
4202
  minSatisfying,
4210
4203
  minimumReleaseAge,
4211
4204
  outputFile,
4212
4205
  outputKind,
4213
4206
  prCheck,
4207
+ prLimit,
4214
4208
  rangeStyle,
4215
4209
  showAffectedDirectDependencies,
4216
4210
  unknownFlags
@@ -4221,16 +4215,17 @@ async function handleFix({
4221
4215
  coanaVersion,
4222
4216
  cwd,
4223
4217
  disableMajorUpdates,
4218
+ ecosystems,
4224
4219
  exclude,
4225
4220
  // Convert mixed CVE/GHSA/PURL inputs to GHSA IDs only.
4226
4221
  ghsas: await convertIdsToGhsas(ghsas),
4227
4222
  include,
4228
- limit,
4229
4223
  minimumReleaseAge,
4230
4224
  minSatisfying,
4231
4225
  orgSlug,
4232
4226
  outputFile,
4233
4227
  prCheck,
4228
+ prLimit,
4234
4229
  rangeStyle,
4235
4230
  showAffectedDirectDependencies,
4236
4231
  spinner,
@@ -4296,10 +4291,11 @@ const generalFlags$2 = {
4296
4291
  Can be provided as comma separated values or as multiple flags`,
4297
4292
  isMultiple: true
4298
4293
  },
4299
- limit: {
4294
+ prLimit: {
4295
+ aliases: ['limit'],
4300
4296
  type: 'number',
4301
4297
  default: DEFAULT_LIMIT,
4302
- description: `The number of fixes to attempt at a time (default ${DEFAULT_LIMIT})`
4298
+ description: `Maximum number of pull requests to create in CI mode (default ${DEFAULT_LIMIT}). Has no effect in local mode.`
4303
4299
  },
4304
4300
  rangeStyle: {
4305
4301
  type: 'string',
@@ -4321,6 +4317,12 @@ Available styles:
4321
4317
  default: '',
4322
4318
  description: 'Set a minimum age requirement for suggested upgrade versions (e.g., 1h, 2d, 3w). A higher age requirement reduces the risk of upgrading to malicious versions. For example, setting the value to 1 week (1w) gives ecosystem maintainers one week to remove potentially malicious versions.'
4323
4319
  },
4320
+ ecosystems: {
4321
+ type: 'string',
4322
+ default: [],
4323
+ description: 'Limit fix analysis to specific ecosystems. Can be provided as comma separated values or as multiple flags. Defaults to all ecosystems.',
4324
+ isMultiple: true
4325
+ },
4324
4326
  showAffectedDirectDependencies: {
4325
4327
  type: 'boolean',
4326
4328
  default: false,
@@ -4434,17 +4436,18 @@ async function run$K(argv, importMeta, {
4434
4436
  const {
4435
4437
  applyFixes,
4436
4438
  autopilot,
4439
+ ecosystems,
4437
4440
  exclude,
4438
4441
  fixVersion,
4439
4442
  include,
4440
4443
  json,
4441
- limit,
4442
4444
  majorUpdates,
4443
4445
  markdown,
4444
4446
  maxSatisfying,
4445
4447
  minimumReleaseAge,
4446
4448
  outputFile,
4447
4449
  prCheck,
4450
+ prLimit,
4448
4451
  rangeStyle,
4449
4452
  showAffectedDirectDependencies,
4450
4453
  // We patched in this feature with `npx custompatch meow` at
@@ -4455,6 +4458,21 @@ async function run$K(argv, importMeta, {
4455
4458
  const minSatisfying = cli.flags['minSatisfying'] || !maxSatisfying;
4456
4459
  const disableMajorUpdates = !majorUpdates;
4457
4460
  const outputKind = utils.getOutputKind(json, markdown);
4461
+
4462
+ // Process comma-separated values for ecosystems flag.
4463
+ const ecosystemsRaw = utils.cmdFlagValueToArray(ecosystems);
4464
+
4465
+ // Validate ecosystem values early, before dry-run check.
4466
+ const validatedEcosystems = [];
4467
+ const validEcosystemChoices = utils.getEcosystemChoicesForMeow();
4468
+ for (const ecosystem of ecosystemsRaw) {
4469
+ if (!validEcosystemChoices.includes(ecosystem)) {
4470
+ logger.logger.fail(`Invalid ecosystem: "${ecosystem}". Valid values are: ${arrays.joinAnd(validEcosystemChoices)}`);
4471
+ process.exitCode = 1;
4472
+ return;
4473
+ }
4474
+ validatedEcosystems.push(ecosystem);
4475
+ }
4458
4476
  const wasValidInput = utils.checkCommandInput(outputKind, {
4459
4477
  test: utils.RangeStyles.includes(rangeStyle),
4460
4478
  message: `Expecting range style of ${arrays.joinOr(utils.RangeStyles)}`,
@@ -4495,16 +4513,17 @@ async function run$K(argv, importMeta, {
4495
4513
  coanaVersion: fixVersion,
4496
4514
  cwd,
4497
4515
  disableMajorUpdates,
4516
+ ecosystems: validatedEcosystems,
4498
4517
  exclude: excludePatterns,
4499
4518
  ghsas,
4500
4519
  include: includePatterns,
4501
- limit,
4502
4520
  minimumReleaseAge,
4503
4521
  minSatisfying,
4504
4522
  orgSlug,
4505
4523
  outputFile,
4506
4524
  outputKind,
4507
4525
  prCheck,
4526
+ prLimit,
4508
4527
  rangeStyle,
4509
4528
  showAffectedDirectDependencies,
4510
4529
  spinner,
@@ -8064,7 +8083,7 @@ async function run$t(argv, importMeta, {
8064
8083
  fail: 'bad'
8065
8084
  }, {
8066
8085
  nook: true,
8067
- test: hasApiToken,
8086
+ test: dryRun || hasApiToken,
8068
8087
  message: 'This command requires a Socket API token for access',
8069
8088
  fail: 'try `socket login`'
8070
8089
  });
@@ -8203,7 +8222,7 @@ async function run$s(argv, importMeta, {
8203
8222
  fail: 'omit one'
8204
8223
  }, {
8205
8224
  nook: true,
8206
- test: hasApiToken,
8225
+ test: dryRun || hasApiToken,
8207
8226
  message: 'This command requires a Socket API token for access',
8208
8227
  fail: 'try `socket login`'
8209
8228
  });
@@ -8339,7 +8358,7 @@ async function run$r(argv, importMeta, {
8339
8358
  fail: 'omit one'
8340
8359
  }, {
8341
8360
  nook: true,
8342
- test: hasApiToken,
8361
+ test: dryRun || hasApiToken,
8343
8362
  message: 'This command requires a Socket API token for access',
8344
8363
  fail: 'try `socket login`'
8345
8364
  });
@@ -8467,7 +8486,7 @@ async function run$q(argv, importMeta, {
8467
8486
  fail: 'bad'
8468
8487
  }, {
8469
8488
  nook: true,
8470
- test: hasApiToken,
8489
+ test: dryRun || hasApiToken,
8471
8490
  message: 'This command requires a Socket API token for access',
8472
8491
  fail: 'try `socket login`'
8473
8492
  });
@@ -8598,7 +8617,7 @@ async function run$p(argv, importMeta, {
8598
8617
  fail: 'omit one'
8599
8618
  }, {
8600
8619
  nook: true,
8601
- test: hasApiToken,
8620
+ test: dryRun || hasApiToken,
8602
8621
  message: 'This command requires a Socket API token for access',
8603
8622
  fail: 'try `socket login`'
8604
8623
  });
@@ -8967,7 +8986,7 @@ async function run$o(argv, importMeta, {
8967
8986
  fail: 'omit one'
8968
8987
  }, {
8969
8988
  nook: true,
8970
- test: hasApiToken,
8989
+ test: dryRun || hasApiToken,
8971
8990
  message: 'This command requires a Socket API token for access',
8972
8991
  fail: 'try `socket login`'
8973
8992
  });
@@ -10253,7 +10272,7 @@ async function run$i(argv, importMeta, {
10253
10272
  fail: 'missing'
10254
10273
  }, {
10255
10274
  nook: true,
10256
- test: hasApiToken,
10275
+ test: dryRun || hasApiToken,
10257
10276
  message: 'This command requires a Socket API token for access',
10258
10277
  fail: 'try `socket login`'
10259
10278
  });
@@ -10389,7 +10408,7 @@ async function run$h(argv, importMeta, {
10389
10408
  fail: 'missing'
10390
10409
  }, {
10391
10410
  nook: true,
10392
- test: hasApiToken,
10411
+ test: dryRun || hasApiToken,
10393
10412
  message: 'This command requires a Socket API token for access',
10394
10413
  fail: 'try `socket login`'
10395
10414
  });
@@ -10681,7 +10700,7 @@ async function run$g(argv, importMeta, {
10681
10700
  fail: 'bad'
10682
10701
  }, {
10683
10702
  nook: true,
10684
- test: hasApiToken,
10703
+ test: dryRun || hasApiToken,
10685
10704
  message: 'This command requires a Socket API token for access',
10686
10705
  fail: 'try `socket login`'
10687
10706
  }, {
@@ -10880,7 +10899,7 @@ async function run$f(argv, importMeta, {
10880
10899
  fail: 'missing'
10881
10900
  }, {
10882
10901
  nook: true,
10883
- test: hasApiToken,
10902
+ test: dryRun || hasApiToken,
10884
10903
  message: 'This command requires a Socket API token for access',
10885
10904
  fail: 'try `socket login`'
10886
10905
  });
@@ -11047,7 +11066,7 @@ async function run$e(argv, importMeta, {
11047
11066
  fail: 'bad'
11048
11067
  }, {
11049
11068
  nook: true,
11050
- test: hasApiToken,
11069
+ test: dryRun || hasApiToken,
11051
11070
  message: 'This command requires a Socket API token for access',
11052
11071
  fail: 'try `socket login`'
11053
11072
  });
@@ -11531,7 +11550,7 @@ async function run$d(argv, importMeta, {
11531
11550
  fail: 'omit one'
11532
11551
  }, {
11533
11552
  nook: true,
11534
- test: hasApiToken,
11553
+ test: dryRun || hasApiToken,
11535
11554
  message: 'This command requires a Socket API token for access',
11536
11555
  fail: 'try `socket login`'
11537
11556
  }, {
@@ -11720,7 +11739,7 @@ async function run$c(argv, importMeta, {
11720
11739
  fail: 'missing'
11721
11740
  }, {
11722
11741
  nook: true,
11723
- test: hasApiToken,
11742
+ test: dryRun || hasApiToken,
11724
11743
  message: 'This command requires a Socket API token for access',
11725
11744
  fail: 'try `socket login`'
11726
11745
  });
@@ -12034,7 +12053,7 @@ async function run$b(argv, importMeta, {
12034
12053
  fail: 'bad'
12035
12054
  }, {
12036
12055
  nook: true,
12037
- test: hasApiToken,
12056
+ test: dryRun || hasApiToken,
12038
12057
  message: 'This command requires a Socket API token for access',
12039
12058
  fail: 'try `socket login`'
12040
12059
  });
@@ -12927,11 +12946,11 @@ async function run$a(argv, importMeta, {
12927
12946
  fail: 'omit one'
12928
12947
  }, {
12929
12948
  nook: true,
12930
- test: hasSocketApiToken,
12949
+ test: dryRun || hasSocketApiToken,
12931
12950
  message: 'This command requires a Socket API token for access',
12932
12951
  fail: 'try `socket login`'
12933
12952
  }, {
12934
- test: hasGithubApiToken,
12953
+ test: dryRun || hasGithubApiToken,
12935
12954
  message: 'This command requires a GitHub API token for access',
12936
12955
  fail: 'missing'
12937
12956
  });
@@ -13195,7 +13214,7 @@ async function run$9(argv, importMeta, {
13195
13214
  fail: 'omit one'
13196
13215
  }, {
13197
13216
  nook: true,
13198
- test: hasApiToken,
13217
+ test: dryRun || hasApiToken,
13199
13218
  message: 'This command requires a Socket API token for access',
13200
13219
  fail: 'try `socket login`'
13201
13220
  }, {
@@ -13356,7 +13375,7 @@ async function run$8(argv, importMeta, {
13356
13375
  fail: 'omit one'
13357
13376
  }, {
13358
13377
  nook: true,
13359
- test: hasApiToken,
13378
+ test: dryRun || hasApiToken,
13360
13379
  message: 'This command requires a Socket API token for access',
13361
13380
  fail: 'try `socket login`'
13362
13381
  });
@@ -13579,7 +13598,7 @@ async function run$7(argv, importMeta, {
13579
13598
  fail: 'missing'
13580
13599
  }, {
13581
13600
  nook: true,
13582
- test: hasApiToken,
13601
+ test: dryRun || hasApiToken,
13583
13602
  message: 'This command requires an API token for access',
13584
13603
  fail: 'try `socket login`'
13585
13604
  }, {
@@ -13769,7 +13788,7 @@ async function run$6(argv, importMeta, {
13769
13788
  fail: 'omit one'
13770
13789
  }, {
13771
13790
  nook: true,
13772
- test: hasApiToken,
13791
+ test: dryRun || hasApiToken,
13773
13792
  message: 'This command requires a Socket API token for access',
13774
13793
  fail: 'try `socket login`'
13775
13794
  });
@@ -14368,7 +14387,7 @@ async function run$4(argv, importMeta, {
14368
14387
  fail: 'bad'
14369
14388
  }, {
14370
14389
  nook: true,
14371
- test: hasApiToken,
14390
+ test: dryRun || hasApiToken,
14372
14391
  message: 'This command requires a Socket API token for access',
14373
14392
  fail: 'try `socket login`'
14374
14393
  }, {
@@ -14803,7 +14822,7 @@ async function run$3(argv, importMeta, {
14803
14822
  fail: 'omit one'
14804
14823
  }, {
14805
14824
  nook: true,
14806
- test: hasApiToken,
14825
+ test: dryRun || hasApiToken,
14807
14826
  message: 'This command requires a Socket API token for access',
14808
14827
  fail: 'try `socket login`'
14809
14828
  });
@@ -15475,5 +15494,5 @@ void (async () => {
15475
15494
  await utils.captureException(e);
15476
15495
  }
15477
15496
  })();
15478
- //# debugId=3354d2a8-858e-47ae-8d62-34c8832fddf8
15497
+ //# debugId=5f201233-b128-4a9f-b7eb-542d9cde563b
15479
15498
  //# sourceMappingURL=cli.js.map