Improve error messages, esp. when the server is running

* Add file context to minifier errors when publishing
* Misc fixes (see issues)
* Allow custom server error template in layouts/server/error.html

To get to this, this commit also cleans up and simplifies the code surrounding errors and files. This also removes the usage of `github.com/pkg/errors`, mostly because of https://github.com/pkg/errors/issues/223 -- but also because most of this is now built-in to Go.

Fixes #9852
Fixes #9857
Fixes #9863
This commit is contained in:
Bjørn Erik Pedersen
2022-05-02 16:07:52 +02:00
parent 6eea32bd6b
commit f2946da9e8
109 changed files with 861 additions and 780 deletions

View File

@@ -22,7 +22,7 @@ import (
"github.com/gohugoio/hugo/common/loggers"
"github.com/pkg/errors"
"errors"
"github.com/spf13/afero"
)
@@ -125,7 +125,7 @@ func (w *Walkway) Walk() error {
if w.checkErr(w.root, err) {
return nil
}
return w.walkFn(w.root, nil, errors.Wrapf(err, "walk: %q", w.root))
return w.walkFn(w.root, nil, fmt.Errorf("walk: %q: %w", w.root, err))
}
fi = info.(FileMetaInfo)
}
@@ -192,7 +192,7 @@ func (w *Walkway) walk(path string, info FileMetaInfo, dirEntries []FileMetaInfo
if w.checkErr(path, err) {
return nil
}
return walkFn(path, info, errors.Wrapf(err, "walk: open %q (%q)", path, w.root))
return walkFn(path, info, fmt.Errorf("walk: open %q (%q): %w", path, w.root, err))
}
fis, err := f.Readdir(-1)
@@ -201,7 +201,7 @@ func (w *Walkway) walk(path string, info FileMetaInfo, dirEntries []FileMetaInfo
if w.checkErr(filename, err) {
return nil
}
return walkFn(path, info, errors.Wrap(err, "walk: Readdir"))
return walkFn(path, info, fmt.Errorf("walk: Readdir: %w", err))
}
dirEntries = fileInfosToFileMetaInfos(fis)