Help us shape the future of Go! Take the 2026 Go Developer Survey

resolve

package
v3.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 26, 2026 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FilterPlatforms

func FilterPlatforms(tf *ast.Taskfile)

func MergeTask

func MergeTask(base, override *ast.Task) *ast.Task

MergeTask overlays override onto base with local-wins precedence:

  • list fields (cmds, deps, sources, generates, platforms, status, preconditions, aliases) REPLACE the base list whenever override provides a non-empty one, otherwise the base list is kept;
  • map fields (vars, env) merge per key with override winning;
  • scalar fields take the override value when it is set.

Replacement (not append) is deliberate: redefining a task in Taskfile.local.yml should supersede the base definition, not extend it.

func MergeTaskfile

func MergeTaskfile(base, local *ast.Taskfile)

MergeTaskfile layers a local taskfile over a base one with local-wins precedence: a task defined in local replaces/overrides the base task of the same name (see MergeTask), a task that exists only in local is added, and top-level vars defined in local override base vars per key. This is what powers Taskfile.local.yml overriding a base Taskfile.yml.

Types

type DAG

type DAG struct {
	Tasks    []*ast.Task
	Edges    map[string][]string
	InDegree map[string]int
	Order    []string
}

func BuildDAG

func BuildDAG(tf *ast.Taskfile, target string) (*DAG, error)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL