in lint/lint_license.go [33:69]
func (l *LicenseLinter) lint() ([]string, error) {
var errFiles []string
// glob files
files, err := glob(l.Dir, l.g)
if err != nil {
return nil, err
}
// check license
var wg sync.WaitGroup
ch := make(chan string)
for _, f := range files {
wg.Add(1)
go func(f string) {
defer wg.Done()
b, err := os.ReadFile(f)
if err != nil {
panic(err)
}
if !strings.Contains(string(b), "http://www.apache.org/licenses/LICENSE-2.0") {
ch <- f
}
}(f)
}
go func() {
wg.Wait()
close(ch)
}()
for s := range ch {
errFiles = append(errFiles, s)
}
return errFiles, nil
}