Skip to content

Commit 892a57a

Browse files
committed
Print more agent information for optimize command
1 parent 844907b commit 892a57a

File tree

3 files changed

+59
-37
lines changed

3 files changed

+59
-37
lines changed

src/commands/fix/handle-fix.mts

Lines changed: 4 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -130,25 +130,22 @@ export async function handleFix({
130130
return
131131
}
132132

133-
logger.info(
134-
`Fixing packages for ${pkgEnvDetails.agent} v${pkgEnvDetails.agentVersion}.\n`,
135-
)
136-
137-
const { agent } = pkgEnvDetails
133+
const { agent, agentVersion } = pkgEnvDetails
138134
if (agent !== NPM && agent !== PNPM) {
139135
await outputFixResult(
140136
{
141137
ok: false,
142138
message: 'Not supported.',
143-
cause: `${agent} is not supported by this command.`,
139+
cause: `${agent} v${agentVersion} is not supported by this command.`,
144140
},
145141
outputKind,
146142
)
147143
return
148144
}
149145

150-
const fixer = agent === NPM ? npmFix : pnpmFix
146+
logger.info(`Fixing packages for ${agent} v${agentVersion}.\n`)
151147

148+
const fixer = agent === NPM ? npmFix : pnpmFix
152149
await outputFixResult(
153150
await fixer(pkgEnvDetails, {
154151
autoMerge,

src/commands/optimize/apply-optimization.mts

Lines changed: 7 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,18 @@ import { addOverrides } from './add-overrides.mts'
44
import { CMD_NAME } from './shared.mts'
55
import { updateLockfile } from './update-lockfile.mts'
66
import constants from '../../constants.mts'
7-
import { cmdPrefixMessage } from '../../utils/cmd.mts'
8-
import { detectAndValidatePackageEnvironment } from '../../utils/package-environment.mts'
97

108
import type { CResult } from '../../types.mts'
9+
import type { EnvDetails } from '../../utils/package-environment.mts'
1110

12-
const { VLT } = constants
11+
export type OptimizeConfig = {
12+
pin: boolean
13+
prod: boolean
14+
}
1315

1416
export async function applyOptimization(
15-
cwd: string,
16-
pin: boolean,
17-
prod: boolean,
17+
pkgEnvDetails: EnvDetails,
18+
{ pin, prod }: OptimizeConfig,
1819
): Promise<
1920
CResult<{
2021
addedCount: number
@@ -24,28 +25,6 @@ export async function applyOptimization(
2425
addedInWorkspaces: number
2526
}>
2627
> {
27-
const result = await detectAndValidatePackageEnvironment(cwd, {
28-
cmdName: CMD_NAME,
29-
logger,
30-
prod,
31-
})
32-
33-
if (!result.ok) {
34-
return result
35-
}
36-
const pkgEnvDetails = result.data
37-
38-
if (pkgEnvDetails.agent === VLT) {
39-
return {
40-
ok: false,
41-
message: 'Unsupported',
42-
cause: cmdPrefixMessage(
43-
CMD_NAME,
44-
`${VLT} does not support overrides. Soon, though ⚡`,
45-
),
46-
}
47-
}
48-
4928
// Lazily access constants.spinner.
5029
const { spinner } = constants
5130

src/commands/optimize/handle-optimize.mts

Lines changed: 48 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,16 @@
1+
import { logger } from '@socketsecurity/registry/lib/logger'
2+
13
import { applyOptimization } from './apply-optimization.mts'
24
import { outputOptimizeResult } from './output-optimize-result.mts'
5+
import { CMD_NAME } from './shared.mts'
6+
import constants from '../../constants.mts'
7+
import { cmdPrefixMessage } from '../../utils/cmd.mts'
8+
import { detectAndValidatePackageEnvironment } from '../../utils/package-environment.mts'
39

410
import type { OutputKind } from '../../types.mts'
511

12+
const { VLT } = constants
13+
614
export async function handleOptimize({
715
cwd,
816
outputKind,
@@ -14,7 +22,45 @@ export async function handleOptimize({
1422
pin: boolean
1523
prod: boolean
1624
}) {
17-
const result = await applyOptimization(cwd, pin, prod)
25+
const pkgEnvCResult = await detectAndValidatePackageEnvironment(cwd, {
26+
cmdName: CMD_NAME,
27+
logger,
28+
prod,
29+
})
30+
if (!pkgEnvCResult.ok) {
31+
await outputOptimizeResult(pkgEnvCResult, outputKind)
32+
return
33+
}
34+
35+
const pkgEnvDetails = pkgEnvCResult.data
36+
if (!pkgEnvDetails) {
37+
await outputOptimizeResult(
38+
{
39+
ok: false,
40+
message: 'No package found.',
41+
cause: `No valid package environment found for project path: ${cwd}`,
42+
},
43+
outputKind,
44+
)
45+
return
46+
}
47+
48+
const { agent, agentVersion } = pkgEnvDetails
49+
if (agent === VLT) {
50+
return {
51+
ok: false,
52+
message: 'Unsupported',
53+
cause: cmdPrefixMessage(
54+
CMD_NAME,
55+
`${agent} v${agentVersion} does not support overrides. Soon, though ⚡`,
56+
),
57+
}
58+
}
59+
60+
logger.info(`Optimizing packages for ${agent} v${agentVersion}.\n`)
1861

19-
await outputOptimizeResult(result, outputKind)
62+
await outputOptimizeResult(
63+
await applyOptimization(pkgEnvDetails, { pin, prod }),
64+
outputKind,
65+
)
2066
}

0 commit comments

Comments
 (0)