Skip to content

Commit d384029

Browse files
Merge pull request #92 from SocketDev/cg/infoPackageDefaultVersion
Handle dist tags / no version argument when running the info command
2 parents d4b792e + b60f028 commit d384029

File tree

1 file changed

+9
-12
lines changed

1 file changed

+9
-12
lines changed

lib/commands/info/index.js

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,8 @@ export const info = {
2121

2222
const input = setupCommand(name, info.description, argv, importMeta)
2323
if (input) {
24-
const spinner = ora(`Looking up data for version ${input.pkgVersion} of ${input.pkgName}\n`).start()
24+
const spinnerText = input.pkgVersion === 'latest' ? `Looking up data for the latest version of ${input.pkgName}\n` : `Looking up data for version ${input.pkgVersion} of ${input.pkgName}\n`
25+
const spinner = ora(spinnerText).start()
2526
const packageData = await fetchPackageData(input.pkgName, input.pkgVersion, input, spinner)
2627
if (packageData) {
2728
formatPackageDataOutput(packageData, { name, ...input }, spinner)
@@ -92,16 +93,8 @@ function setupCommand (name, description, argv, importMeta) {
9293

9394
const versionSeparator = rawPkgName.lastIndexOf('@')
9495

95-
if (versionSeparator < 1) {
96-
throw new InputError('Need to specify a full package identifier, like eg: webtorrent@1.0.0')
97-
}
98-
99-
const pkgName = rawPkgName.slice(0, versionSeparator)
100-
const pkgVersion = rawPkgName.slice(versionSeparator + 1)
101-
102-
if (!pkgVersion) {
103-
throw new InputError('Need to specify a version, like eg: webtorrent@1.0.0')
104-
}
96+
const pkgName = versionSeparator < 1 ? rawPkgName : rawPkgName.slice(0, versionSeparator)
97+
const pkgVersion = versionSeparator < 1 ? 'latest' : rawPkgName.slice(versionSeparator + 1)
10598

10699
return {
107100
includeAllIssues,
@@ -184,7 +177,11 @@ async function fetchPackageData (pkgName, pkgVersion, { includeAllIssues }, spin
184177
// Link to issues list
185178
const format = new ChalkOrMarkdown(!!outputMarkdown)
186179
const url = `https://socket.dev/npm/package/${pkgName}/overview/${pkgVersion}`
187-
console.log('\nDetailed info on socket.dev: ' + format.hyperlink(`${pkgName} v${pkgVersion}`, url, { fallbackToUrl: true }))
180+
if (pkgVersion === 'latest') {
181+
console.log('\nDetailed info on socket.dev: ' + format.hyperlink(`${pkgName}`, url, { fallbackToUrl: true }))
182+
} else {
183+
console.log('\nDetailed info on socket.dev: ' + format.hyperlink(`${pkgName} v${pkgVersion}`, url, { fallbackToUrl: true }))
184+
}
188185
if (!outputMarkdown) {
189186
console.log(chalk.dim('\nOr rerun', chalk.italic(name), 'using the', chalk.italic('--json'), 'flag to get full JSON output'))
190187
}

0 commit comments

Comments
 (0)