func readCache()

in cmd/apmtool/cache.go [39:56]


func readCache(filename string) ([]byte, error) {
	if strings.HasPrefix(filename, ".") {
		return nil, fmt.Errorf("invalid filename %q, may not start with '.'", filename)
	}

	cacheFlock := newCacheFlock()
	if err := cacheFlock.Lock(); err != nil {
		return nil, fmt.Errorf("error acquiring lock on cache directory: %w", err)
	}
	defer cacheFlock.Unlock()

	cacheFilePath := filepath.Join(cacheDir, filename)
	data, err := os.ReadFile(cacheFilePath)
	if err != nil {
		return nil, fmt.Errorf("error reading cache file: %w", err)
	}
	return data, nil
}