all repos — searchix @ 3dfbd8dd7212f74622ba4892efb34bf3487da09b

Search engine for NixOS, nix-darwin, home-manager and NUR users

feat: switch from errors to fault

Alan Pearce
commit

3dfbd8dd7212f74622ba4892efb34bf3487da09b

parent

e72b060271452e25bbcb2799fc19996ff73689fd

1 file changed, 12 insertions(+), 11 deletions(-)

changed files
M internal/index/index_meta.gointernal/index/index_meta.go
@@ -8,7 +8,8 @@
"alin.ovh/searchix/internal/file" "alin.ovh/x/log" - "gitlab.com/tozd/go/errors" + "github.com/Southclaws/fault" + "github.com/Southclaws/fault/fmsg" ) const CurrentSchemaVersion = 5
@@ -30,13 +31,13 @@ log *log.Logger
data } -func createMeta(path string, log *log.Logger) (*Meta, errors.E) { +func createMeta(path string, log *log.Logger) (*Meta, error) { exists, err := file.Exists(path) if err != nil { - return nil, errors.WithMessage(err, "could not check for existence of index metadata") + return nil, fault.Wrap(err, fmsg.With("could not check for existence of index metadata")) } if exists { - return nil, errors.New("index metadata already exists") + return nil, fault.New("index metadata already exists") } return &Meta{
@@ -48,10 +49,10 @@ },
}, nil } -func openMeta(path string, log *log.Logger) (*Meta, errors.E) { +func openMeta(path string, log *log.Logger) (*Meta, error) { exists, err := file.Exists(path) if err != nil { - return nil, errors.WithMessage(err, "could not check for existence of index metadata") + return nil, fault.Wrap(err, fmsg.With("could not check for existence of index metadata")) } if !exists { return createMeta(path, log)
@@ -59,7 +60,7 @@ }
j, baseErr := os.ReadFile(path) if baseErr != nil { - return nil, errors.WithMessage(baseErr, "could not open index metadata file") + return nil, fault.Wrap(baseErr, fmsg.With("could not open index metadata file")) } meta := Meta{ path: path,
@@ -67,7 +68,7 @@ log: log,
} if err := json.Unmarshal(j, &meta.data); err != nil { - return nil, errors.WithMessage(err, "index metadata is corrupt, try replacing the index") + return nil, fault.Wrap(err, fmsg.With("index metadata is corrupt, try replacing the index")) } return &meta, nil
@@ -77,16 +78,16 @@ func (i *Meta) IsSchemaOutdated() bool {
return i.SchemaVersion < CurrentSchemaVersion } -func (i *Meta) Save() errors.E { +func (i *Meta) Save() error { i.SchemaVersion = CurrentSchemaVersion j, err := json.Marshal(i.data) if err != nil { - return errors.WithMessage(err, "could not prepare index metadata for saving") + return fault.Wrap(err, fmsg.With("could not prepare index metadata for saving")) } i.log.Debug("saving index metadata", "path", i.path) err = os.WriteFile(i.path, j, 0o600) if err != nil { - return errors.WithMessage(err, "could not save index metadata") + return fault.Wrap(err, fmsg.With("could not save index metadata")) } return nil