From da1b0c95589c1e3918e50b5631b0765206e3bb6a Mon Sep 17 00:00:00 2001 From: Andrey Nering Date: Sun, 22 Jul 2018 17:34:33 -0300 Subject: [PATCH] Error if Taskfile_{{GOOS}}.yml version doesn't match Taskfile.yml version This change is not backward incompatible because merging was already not working if versions 1 and 2 coexist in Taskfile.yml and Taskfile_{{GOOS}}.yml --- internal/taskfile/read/taskfile.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/internal/taskfile/read/taskfile.go b/internal/taskfile/read/taskfile.go index 6fe01b30..c3f0c77e 100644 --- a/internal/taskfile/read/taskfile.go +++ b/internal/taskfile/read/taskfile.go @@ -26,6 +26,9 @@ func Taskfile(dir string) (*taskfile.Taskfile, error) { if err != nil { return nil, err } + if t.Version != osTaskfile.Version { + return nil, fmt.Errorf(`Taskfile versions should match. Taskfile.yml is "%s" but Taskfile_%s.yml is "%s"`, t.Version, runtime.GOOS, osTaskfile.Version) + } if err = mergo.MapWithOverwrite(&t.Tasks, osTaskfile.Tasks); err != nil { return nil, err }