mirror of
https://github.com/gohugoio/hugo.git
synced 2025-08-17 21:01:26 +02:00
commands: Show server error info in browser
The main item in this commit is showing of errors with a file context when running `hugo server`. This can be turned off: `hugo server --disableBrowserError` (can also be set in `config.toml`). But to get there, the error handling in Hugo needed a revision. There are some items left TODO for commits soon to follow, most notable errors in content and config files. Fixes #5284 Fixes #5290 See #5325 See #5324
This commit is contained in:
@@ -19,6 +19,8 @@ import (
|
||||
"strings"
|
||||
"sync"
|
||||
|
||||
"github.com/pkg/errors"
|
||||
|
||||
"github.com/gohugoio/hugo/output"
|
||||
)
|
||||
|
||||
@@ -30,7 +32,7 @@ func (s *Site) renderPages(cfg *BuildCfg) error {
|
||||
pages := make(chan *Page)
|
||||
errs := make(chan error)
|
||||
|
||||
go errorCollator(results, errs)
|
||||
go s.errorCollator(results, errs)
|
||||
|
||||
numWorkers := getGoMaxProcs() * 4
|
||||
|
||||
@@ -60,7 +62,7 @@ func (s *Site) renderPages(cfg *BuildCfg) error {
|
||||
|
||||
err := <-errs
|
||||
if err != nil {
|
||||
return fmt.Errorf("Error(s) rendering pages: %s", err)
|
||||
return errors.Wrap(err, "failed to render pages")
|
||||
}
|
||||
return nil
|
||||
}
|
||||
@@ -132,6 +134,7 @@ func pageRenderer(s *Site, pages <-chan *Page, results chan<- error, wg *sync.Wa
|
||||
|
||||
if shouldRender {
|
||||
if err := pageOutput.renderResources(); err != nil {
|
||||
// TODO(bep) 2errors
|
||||
s.Log.ERROR.Printf("Failed to render resources for page %q: %s", page, err)
|
||||
continue
|
||||
}
|
||||
|
Reference in New Issue
Block a user