@@ -34,7 +34,7 @@ object CliParser {
34
34
private sealed class SlugResolveResult {
35
35
class Resolved (val id : ModId ) : SlugResolveResult()
36
36
class Ambiguous (val possibleSlugs : List <Pair <ModSlug , ModId >>) : SlugResolveResult()
37
- class Invalid (val slug : String ) : SlugResolveResult()
37
+ class Invalid (val slug : String , val notFound : Boolean = false ) : SlugResolveResult()
38
38
}
39
39
40
40
suspend fun resolveSlugs (rawSlugs : List <String >): Set <ModId >? {
@@ -54,7 +54,7 @@ object CliParser {
54
54
if (singleResult != null ) {
55
55
SlugResolveResult .Resolved (singleResult.second)
56
56
} else if (ids.isEmpty()) {
57
- SlugResolveResult .Invalid (rawSlug)
57
+ SlugResolveResult .Invalid (rawSlug, notFound = true )
58
58
} else {
59
59
SlugResolveResult .Ambiguous (ids)
60
60
}
@@ -71,10 +71,12 @@ object CliParser {
71
71
val id = ModSlug (repo, slug).resolveId()
72
72
if (id != null ) {
73
73
return @resolve SlugResolveResult .Resolved (id)
74
+ } else {
75
+ SlugResolveResult .Invalid (rawSlug, notFound = true )
74
76
}
77
+ } else {
78
+ SlugResolveResult .Invalid (rawSlug)
75
79
}
76
-
77
- SlugResolveResult .Invalid (rawSlug)
78
80
}
79
81
else -> SlugResolveResult .Invalid (rawSlug)
80
82
}
@@ -85,7 +87,11 @@ object CliParser {
85
87
val invalidSlugs = slugResolveResults.filterIsInstance<SlugResolveResult .Invalid >()
86
88
if (invalidSlugs.isNotEmpty()) {
87
89
invalidSlugs.forEach {
88
- terminal.warning(" The slug ${TextColors .brightRed(it.slug)} is invalid" )
90
+ if (it.notFound) {
91
+ terminal.warning(" The project ${TextColors .brightRed(it.slug)} could not be found" )
92
+ } else {
93
+ terminal.warning(" The slug ${TextColors .brightRed(it.slug)} is invalid" )
94
+ }
89
95
}
90
96
return null
91
97
}
0 commit comments