func()

in custard/pkg/config/config.go [161:187]


func (c *Config) Changed(log io.Writer, diffs []string) []string {
	changedUnique := make(map[string]bool)
	for _, diff := range diffs {
		if !c.Matches(diff) {
			continue
		}
		path, err := c.FindPackage(diff)
		if err != nil {
			// The package directory doesn't exist, so it was removed.
			continue
		}
		if path == "." {
			fmt.Fprintf(log, "ℹ️ Global file changed: %q\n", diff)
		}
		changedUnique[path] = true
	}

	changed := make([]string, 0, len(changedUnique))
	for path := range changedUnique {
		if slices.Contains(c.ExcludePackages, path) {
			fmt.Fprintf(log, "ℹ️ Excluded package %q, skipping.\n", path)
			continue
		}
		changed = append(changed, path)
	}
	return changed
}