Skip to content

Commit 8cde9c9

Browse files
committed
Added warning about non-list parameters to placeholders with join delimiters.
1 parent 6107cd9 commit 8cde9c9

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

TemplatedProject.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ type TemplatedProject struct {
3434
rootDirectory string
3535

3636
missingParameters StringSet
37+
incorrectParameters StringSet
3738
}
3839

3940
/*
@@ -262,6 +263,10 @@ func (this *TemplatedProject) replaceStringParameters(input string, parameters m
262263
this.missingParameters.Add(parameterName)
263264
} else {
264265

266+
if(len(parameterValues) == 1) {
267+
this.incorrectParameters.Add(parameterName)
268+
}
269+
265270
sequence = strings.Join(parameterValues, separator)
266271
resultBuffer.WriteString(sequence)
267272
}

main.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,16 @@ func createProject(settings RunSettings, registry *TemplateRegistry) {
131131
fmt.Println(value)
132132
}
133133
}
134+
135+
if project.incorrectParameters.Length() > 0 {
136+
137+
fmt.Println("Project generated, but some placeholders in the template were specified with a join character ('[]'), but the given parameter was not a list")
138+
fmt.Println("This may mean you need to specify the following parameters as a comma-separated list")
139+
140+
for _, value := range project.incorrectParameters.GetSlice() {
141+
fmt.Println(value)
142+
}
143+
}
134144
}
135145

136146
func exitWith(message string, err error, code int) {

0 commit comments

Comments
 (0)