From 23c4e4565ba252d558b01f76c7c8c8bc5b885e85 Mon Sep 17 00:00:00 2001 From: Henrique Dias Date: Sat, 15 Nov 2025 09:01:21 +0100 Subject: [PATCH] chore: remove 'nolint' comments --- auth/hook.go | 2 +- auth/json.go | 2 +- cmd/root.go | 11 +++++------ cmd/users.go | 1 - cmd/users_import.go | 2 +- cmd/utils.go | 2 +- diskcache/file_cache.go | 4 ++-- diskcache/file_cache_test.go | 2 +- files/file.go | 7 +++---- files/mime.go | 1 - http/commands.go | 11 +++++------ http/public_test.go | 4 ++-- http/share.go | 1 - http/static.go | 4 ++-- img/service.go | 2 +- runner/runner.go | 4 ++-- users/assets.go | 1 - users/storage.go | 2 +- users/users.go | 4 +--- 19 files changed, 29 insertions(+), 38 deletions(-) diff --git a/auth/hook.go b/auth/hook.go index 2ecb12f3..ec3c5bfb 100644 --- a/auth/hook.go +++ b/auth/hook.go @@ -103,7 +103,7 @@ func (a *HookAuth) RunCommand() (string, error) { command[i] = os.Expand(arg, envMapping) } - cmd := exec.Command(command[0], command[1:]...) //nolint:gosec + cmd := exec.Command(command[0], command[1:]...) cmd.Env = append(os.Environ(), fmt.Sprintf("USERNAME=%s", a.Cred.Username)) cmd.Env = append(cmd.Env, fmt.Sprintf("PASSWORD=%s", a.Cred.Password)) out, err := cmd.Output() diff --git a/auth/json.go b/auth/json.go index 81f430b3..f779c476 100644 --- a/auth/json.go +++ b/auth/json.go @@ -40,7 +40,7 @@ func (a JSONAuth) Auth(r *http.Request, usr users.Store, _ *settings.Settings, s // If ReCaptcha is enabled, check the code. if a.ReCaptcha != nil && a.ReCaptcha.Secret != "" { - ok, err := a.ReCaptcha.Ok(cred.ReCaptcha) //nolint:govet + ok, err := a.ReCaptcha.Ok(cred.ReCaptcha) if err != nil { return nil, err diff --git a/cmd/root.go b/cmd/root.go index d8be251a..24f5d077 100644 --- a/cmd/root.go +++ b/cmd/root.go @@ -70,7 +70,7 @@ func addServerFlags(flags *pflag.FlagSet) { flags.StringP("baseurl", "b", "", "base url") flags.String("cache-dir", "", "file cache directory (disabled if empty)") flags.String("token-expiration-time", "2h", "user session timeout") - flags.Int("img-processors", 4, "image processors count") //nolint:mnd + flags.Int("img-processors", 4, "image processors count") flags.Bool("disable-thumbnails", false, "disable image thumbnails") flags.Bool("disable-preview-resize", false, "disable resize of image previews") flags.Bool("disable-exec", true, "disables Command Runner feature") @@ -141,7 +141,7 @@ user created with the credentials from options "username" and "password".`, return err } if cacheDir != "" { - if err := os.MkdirAll(cacheDir, 0700); err != nil { //nolint:govet + if err := os.MkdirAll(cacheDir, 0700); err != nil { return fmt.Errorf("can't make directory %s: %w", cacheDir, err) } fileCache = diskcache.New(afero.NewOsFs(), cacheDir) @@ -169,7 +169,7 @@ user created with the credentials from options "username" and "password".`, if err != nil { return err } - socketPerm, err := cmd.Flags().GetUint32("socket-perm") //nolint:govet + socketPerm, err := cmd.Flags().GetUint32("socket-perm") if err != nil { return err } @@ -178,7 +178,7 @@ user created with the credentials from options "username" and "password".`, return err } case server.TLSKey != "" && server.TLSCert != "": - cer, err := tls.LoadX509KeyPair(server.TLSCert, server.TLSKey) //nolint:govet + cer, err := tls.LoadX509KeyPair(server.TLSCert, server.TLSKey) if err != nil { return err } @@ -233,7 +233,7 @@ user created with the credentials from options "username" and "password".`, sig := <-sigc log.Println("Got signal:", sig) - shutdownCtx, shutdownRelease := context.WithTimeout(context.Background(), 10*time.Second) //nolint:mnd + shutdownCtx, shutdownRelease := context.WithTimeout(context.Background(), 10*time.Second) defer shutdownRelease() if err := srv.Shutdown(shutdownCtx); err != nil { @@ -256,7 +256,6 @@ user created with the credentials from options "username" and "password".`, }, pythonConfig{allowNoDB: true}), } -//nolint:gocyclo func getRunParams(flags *pflag.FlagSet, st *storage.Storage) (*settings.Server, error) { server, err := st.Settings.GetServer() if err != nil { diff --git a/cmd/users.go b/cmd/users.go index c272877d..c2e2ce1e 100644 --- a/cmd/users.go +++ b/cmd/users.go @@ -94,7 +94,6 @@ func getViewMode(flags *pflag.FlagSet) (users.ViewMode, error) { return viewMode, nil } -//nolint:gocyclo func getUserDefaults(flags *pflag.FlagSet, defaults *settings.UserDefaults, all bool) error { var visitErr error visit := func(flag *pflag.Flag) { diff --git a/cmd/users_import.go b/cmd/users_import.go index d20dca68..74353c2c 100644 --- a/cmd/users_import.go +++ b/cmd/users_import.go @@ -87,7 +87,7 @@ list or set it to 0.`, // with the new username. If there is, print an error and cancel the // operation if user.Username != onDB.Username { - if conflictuous, err := d.store.Users.Get("", user.Username); err == nil { //nolint:govet + if conflictuous, err := d.store.Users.Get("", user.Username); err == nil { return usernameConflictError(user.Username, conflictuous.ID, user.ID) } } diff --git a/cmd/utils.go b/cmd/utils.go index 8e5168af..cc718341 100644 --- a/cmd/utils.go +++ b/cmd/utils.go @@ -79,7 +79,7 @@ func dbExists(path string) (bool, error) { d := filepath.Dir(path) _, err = os.Stat(d) if os.IsNotExist(err) { - if err := os.MkdirAll(d, 0700); err != nil { //nolint:govet + if err := os.MkdirAll(d, 0700); err != nil { return false, err } return false, nil diff --git a/diskcache/file_cache.go b/diskcache/file_cache.go index cd5e27c7..b2979e4b 100644 --- a/diskcache/file_cache.go +++ b/diskcache/file_cache.go @@ -2,7 +2,7 @@ package diskcache import ( "context" - "crypto/sha1" //nolint:gosec + "crypto/sha1" "encoding/hex" "errors" "fmt" @@ -103,7 +103,7 @@ func (f *FileCache) getScopedLocks(key string) (lock sync.Locker) { } func (f *FileCache) getFileName(key string) string { - hasher := sha1.New() //nolint:gosec + hasher := sha1.New() _, _ = hasher.Write([]byte(key)) hash := hex.EncodeToString(hasher.Sum(nil)) return fmt.Sprintf("%s/%s/%s", hash[:1], hash[1:3], hash) diff --git a/diskcache/file_cache_test.go b/diskcache/file_cache_test.go index 31d58c8e..9a41052e 100644 --- a/diskcache/file_cache_test.go +++ b/diskcache/file_cache_test.go @@ -40,7 +40,7 @@ func TestFileCache(t *testing.T) { require.False(t, exists) } -func checkValue(t *testing.T, ctx context.Context, fs afero.Fs, fileFullPath string, cache *FileCache, key, wantValue string) { //nolint:revive +func checkValue(t *testing.T, ctx context.Context, fs afero.Fs, fileFullPath string, cache *FileCache, key, wantValue string) { t.Helper() // check actual file content b, err := afero.ReadFile(fs, fileFullPath) diff --git a/files/file.go b/files/file.go index 8e27e549..0f96440e 100644 --- a/files/file.go +++ b/files/file.go @@ -1,8 +1,8 @@ package files import ( - "crypto/md5" //nolint:gosec - "crypto/sha1" //nolint:gosec + "crypto/md5" + "crypto/sha1" "crypto/sha256" "crypto/sha512" "encoding/hex" @@ -90,7 +90,7 @@ func NewFileInfo(opts *FileOptions) (*FileInfo, error) { if opts.Expand { if file.IsDir { - if err := file.readListing(opts.Checker, opts.ReadHeader); err != nil { //nolint:govet + if err := file.readListing(opts.Checker, opts.ReadHeader); err != nil { return nil, err } return file, nil @@ -183,7 +183,6 @@ func (i *FileInfo) Checksum(algo string) error { var h hash.Hash - //nolint:gosec switch algo { case "md5": h = md5.New() diff --git a/files/mime.go b/files/mime.go index 33fd93bd..baa4d6d5 100644 --- a/files/mime.go +++ b/files/mime.go @@ -600,7 +600,6 @@ var types = map[string]string{ ".epub": "application/epub+zip", } -//nolint:gochecknoinits func init() { for ext, typ := range types { // skip errors diff --git a/http/commands.go b/http/commands.go index 1da1f75c..6229d597 100644 --- a/http/commands.go +++ b/http/commands.go @@ -28,7 +28,6 @@ var ( cmdNotAllowed = []byte("Command not allowed.") ) -//nolint:unparam func wsErr(ws *websocket.Conn, r *http.Request, status int, err error) { txt := http.StatusText(status) if err != nil || status >= 400 { @@ -49,7 +48,7 @@ var commandsHandler = withUser(func(w http.ResponseWriter, r *http.Request, d *d var raw string for { - _, msg, err := conn.ReadMessage() //nolint:govet + _, msg, err := conn.ReadMessage() if err != nil { wsErr(conn, r, http.StatusInternalServerError, err) return 0, nil @@ -63,7 +62,7 @@ var commandsHandler = withUser(func(w http.ResponseWriter, r *http.Request, d *d // Fail fast if !d.server.EnableExec || !d.user.Perm.Execute { - if err := conn.WriteMessage(websocket.TextMessage, cmdNotAllowed); err != nil { //nolint:govet + if err := conn.WriteMessage(websocket.TextMessage, cmdNotAllowed); err != nil { wsErr(conn, r, http.StatusInternalServerError, err) } @@ -72,21 +71,21 @@ var commandsHandler = withUser(func(w http.ResponseWriter, r *http.Request, d *d command, name, err := runner.ParseCommand(d.settings, raw) if err != nil { - if err := conn.WriteMessage(websocket.TextMessage, []byte(err.Error())); err != nil { //nolint:govet + if err := conn.WriteMessage(websocket.TextMessage, []byte(err.Error())); err != nil { wsErr(conn, r, http.StatusInternalServerError, err) } return 0, nil } if !slices.Contains(d.user.Commands, name) { - if err := conn.WriteMessage(websocket.TextMessage, cmdNotAllowed); err != nil { //nolint:govet + if err := conn.WriteMessage(websocket.TextMessage, cmdNotAllowed); err != nil { wsErr(conn, r, http.StatusInternalServerError, err) } return 0, nil } - cmd := exec.Command(command[0], command[1:]...) //nolint:gosec + cmd := exec.Command(command[0], command[1:]...) cmd.Dir = d.user.FullPath(r.URL.Path) stdout, err := cmd.StdoutPipe() diff --git a/http/public_test.go b/http/public_test.go index 9f89cbc0..f102cc07 100644 --- a/http/public_test.go +++ b/http/public_test.go @@ -19,7 +19,7 @@ import ( func TestPublicShareHandlerAuthentication(t *testing.T) { t.Parallel() - const passwordBcrypt = "$2y$10$TFAmdCbyd/mEZDe5fUeZJu.MaJQXRTwdqb/IQV.eTn6dWrF58gCSe" //nolint:gosec + const passwordBcrypt = "$2y$10$TFAmdCbyd/mEZDe5fUeZJu.MaJQXRTwdqb/IQV.eTn6dWrF58gCSe" testCases := map[string]struct { share *share.Link req *http.Request @@ -70,7 +70,7 @@ func TestPublicShareHandlerAuthentication(t *testing.T) { } t.Cleanup(func() { - if err := db.Close(); err != nil { //nolint:govet + if err := db.Close(); err != nil { t.Errorf("failed to close db: %v", err) } }) diff --git a/http/share.go b/http/share.go index d968c05b..670629bd 100644 --- a/http/share.go +++ b/http/share.go @@ -111,7 +111,6 @@ var sharePostHandler = withPermShare(func(w http.ResponseWriter, r *http.Request var expire int64 = 0 if body.Expires != "" { - //nolint:govet num, err := strconv.Atoi(body.Expires) if err != nil { return http.StatusInternalServerError, err diff --git a/http/static.go b/http/static.go index 5a52940d..be2c135c 100644 --- a/http/static.go +++ b/http/static.go @@ -51,7 +51,7 @@ func handleWithStaticData(w http.ResponseWriter, _ *http.Request, d *data, fSys if d.settings.Branding.Files != "" { fPath := filepath.Join(d.settings.Branding.Files, "custom.css") - _, err := os.Stat(fPath) //nolint:govet + _, err := os.Stat(fPath) if err != nil && !os.IsNotExist(err) { log.Printf("couldn't load custom styles: %v", err) @@ -63,7 +63,7 @@ func handleWithStaticData(w http.ResponseWriter, _ *http.Request, d *data, fSys } if d.settings.AuthMethod == auth.MethodJSONAuth { - raw, err := d.store.Auth.Get(d.settings.AuthMethod) //nolint:govet + raw, err := d.store.Auth.Get(d.settings.AuthMethod) if err != nil { return http.StatusInternalServerError, err } diff --git a/img/service.go b/img/service.go index 34a84c67..47aaddca 100644 --- a/img/service.go +++ b/img/service.go @@ -184,7 +184,7 @@ func (s *Service) Resize(ctx context.Context, in io.Reader, width, height int, o case ResizeModeFill: img = imaging.Fill(img, width, height, imaging.Center, config.quality.resampleFilter()) case ResizeModeFit: - fallthrough //nolint:gocritic + fallthrough default: img = imaging.Fit(img, width, height, config.quality.resampleFilter()) } diff --git a/runner/runner.go b/runner/runner.go index 00e7c16a..3408a1ee 100644 --- a/runner/runner.go +++ b/runner/runner.go @@ -89,9 +89,9 @@ func (r *Runner) exec(raw, evt, path, dst string, user *users.User) error { command[i] = os.Expand(arg, envMapping) } - cmd := exec.Command(command[0], command[1:]...) //nolint:gosec + cmd := exec.Command(command[0], command[1:]...) cmd.Env = append(os.Environ(), fmt.Sprintf("FILE=%s", path)) - cmd.Env = append(cmd.Env, fmt.Sprintf("SCOPE=%s", user.Scope)) //nolint:gocritic + cmd.Env = append(cmd.Env, fmt.Sprintf("SCOPE=%s", user.Scope)) cmd.Env = append(cmd.Env, fmt.Sprintf("TRIGGER=%s", evt)) cmd.Env = append(cmd.Env, fmt.Sprintf("USERNAME=%s", user.Username)) cmd.Env = append(cmd.Env, fmt.Sprintf("DESTINATION=%s", dst)) diff --git a/users/assets.go b/users/assets.go index a01aed41..7b09580d 100644 --- a/users/assets.go +++ b/users/assets.go @@ -9,7 +9,6 @@ import ( var assets embed.FS var commonPasswords map[string]struct{} -//nolint:gochecknoinits func init() { // Password list sourced from: // https://github.com/danielmiessler/SecLists/blob/master/Passwords/Common-Credentials/100k-most-used-passwords-NCSC.txt diff --git a/users/storage.go b/users/storage.go index 163082fb..1dd0da3f 100644 --- a/users/storage.go +++ b/users/storage.go @@ -63,7 +63,7 @@ func (s *Storage) Gets(baseScope string) ([]*User, error) { } for _, user := range users { - if err := user.Clean(baseScope); err != nil { //nolint:govet + if err := user.Clean(baseScope); err != nil { return nil, err } } diff --git a/users/users.go b/users/users.go index 020faf11..987a94f2 100644 --- a/users/users.go +++ b/users/users.go @@ -55,8 +55,6 @@ var checkableFields = []string{ // Clean cleans up a user and verifies if all its fields // are alright to be saved. -// -//nolint:gocyclo func (u *User) Clean(baseScope string, fields ...string) error { if len(fields) == 0 { fields = checkableFields @@ -93,7 +91,7 @@ func (u *User) Clean(baseScope string, fields ...string) error { if u.Fs == nil { scope := u.Scope - scope = filepath.Join(baseScope, filepath.Join("/", scope)) //nolint:gocritic + scope = filepath.Join(baseScope, filepath.Join("/", scope)) u.Fs = afero.NewBasePathFs(afero.NewOsFs(), scope) }