in internal/changelog/fragment/file.go [31:59]
func Load(fs afero.Fs, path string) (File, error) {
f := File{
fs: fs,
Name: filepath.Base(path),
Fragment: Fragment{},
}
ts, err := gettimestamp(f.Name)
if err != nil {
return f, fmt.Errorf("cannot extract timestamp from file name: %w", err)
}
f.Timestamp = ts
f.Title = gettitle(f.Name)
content, err := getcontent(f.fs, path)
if err != nil {
return f, err
}
f.Content = content
if err := yaml.Unmarshal(content, &f.Fragment); err != nil {
return f, fmt.Errorf("cannot unmarshal file: %w", err)
}
return f, nil
}