replace tozd/errors with Southclaws/fault
1 file changed, 20 insertions(+), 15 deletions(-)
changed files
M internal/content/posts.go → internal/content/posts.go
@@ -2,6 +2,7 @@ package content import ( "bytes" + "fmt" "io" "io/fs" "os"@@ -15,9 +16,10 @@ "go.alanpearce.eu/homestead/internal/markdown" "go.alanpearce.eu/homestead/internal/vcs" "go.alanpearce.eu/x/log" + "github.com/Southclaws/fault" + "github.com/Southclaws/fault/fmsg" "github.com/adrg/frontmatter" mapset "github.com/deckarep/golang-set/v2" - "gitlab.com/tozd/go/errors" ) var SkipList = []string{@@ -70,7 +72,10 @@ fp := filepath.Join(cc.config.Root, filename) url := path.Join("/", postURLReplacer.Replace(filename)) + "/" cs, err := cc.config.Repo.GetFileLog(filename) if err != nil { - return nil, errors.WithMessagef(err, "could not get commit log for file %s", filename) + return nil, fault.Wrap( + err, + fmsg.With(fmt.Sprintf("could not get commit log for file %s", filename)), + ) } post := &Post{ Input: filename,@@ -93,12 +98,15 @@ "index.md", "", ".md", "", ) -func (cc *Collection) GetPage(filename string) (*Post, errors.E) { +func (cc *Collection) GetPage(filename string) (*Post, error) { fp := filepath.Join(cc.config.Root, filename) url := path.Join("/", pageURLReplacer.Replace(filename)) cs, err := cc.config.Repo.GetFileLog(filename) if err != nil { - return nil, errors.WithMessagef(err, "could not get commit log for file %s", filename) + return nil, fault.Wrap( + err, + fmsg.With(fmt.Sprintf("could not get commit log for file %s", filename)), + ) } post := &Post{ Input: filename,@@ -120,20 +128,17 @@ return post, nil } -func parse(fp string, post *Post) errors.E { +func parse(fp string, post *Post) error { content, err := os.Open(fp) if err != nil { - return errors.WithMessagef(err, "could not open post %s", fp) + return fault.Wrap(err, fmsg.With(fmt.Sprintf("could not open post %s", fp))) } defer content.Close() post.content, err = frontmatter.Parse(content, post.PostMatter) if err != nil { - return errors.WithMessagef( - err, - "could not parse front matter of post %s", - fp, - ) + return fault.Wrap(err, fmsg.With(fmt.Sprintf("could not parse front matter of post %s", + fp))) } return nil@@ -144,10 +149,10 @@ func (p *Post) Render(w io.Writer) error { return markdown.Convert(p.content, w) } -func (p *Post) RenderString() (string, errors.E) { +func (p *Post) RenderString() (string, error) { var buf bytes.Buffer if err := p.Render(&buf); err != nil { - return "", errors.WithMessage(err, "could not convert markdown content") + return "", fault.Wrap(err, fmsg.With("could not convert markdown content")) } return buf.String(), nil@@ -190,7 +195,7 @@ return nil } -func NewContentCollection(config *Config, log *log.Logger) (*Collection, errors.E) { +func NewContentCollection(config *Config, log *log.Logger) (*Collection, error) { cc := &Collection{ Posts: []*Post{}, Tags: mapset.NewSet[string](),@@ -219,7 +224,7 @@ return b.Date.Compare(a.Date) }) if err != nil { - return nil, errors.WithMessage(err, "could not walk directory") + return nil, fault.Wrap(err, fmsg.With("could not walk directory")) } return cc, nil