chore: add govet, gocritic and revive
parent
6d5aa355e4
commit
5df5508a85
|
|
@ -2,8 +2,13 @@ version: "2"
|
||||||
|
|
||||||
linters:
|
linters:
|
||||||
default: standard
|
default: standard
|
||||||
|
enable:
|
||||||
|
- gocritic
|
||||||
|
- govet
|
||||||
|
- revive
|
||||||
exclusions:
|
exclusions:
|
||||||
presets:
|
presets:
|
||||||
- std-error-handling
|
- std-error-handling
|
||||||
|
- comments
|
||||||
paths:
|
paths:
|
||||||
- frontend/
|
- frontend/
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ var docsCmd = &cobra.Command{
|
||||||
|
|
||||||
rootCmd.Root().DisableAutoGenTag = true
|
rootCmd.Root().DisableAutoGenTag = true
|
||||||
|
|
||||||
err = doc.GenMarkdownTreeCustom(cmd.Root(), tempDir, func(f string) string {
|
err = doc.GenMarkdownTreeCustom(cmd.Root(), tempDir, func(_ string) string {
|
||||||
return ""
|
return ""
|
||||||
}, func(s string) string {
|
}, func(s string) string {
|
||||||
return s
|
return s
|
||||||
|
|
|
||||||
|
|
@ -54,7 +54,7 @@ var (
|
||||||
)
|
)
|
||||||
|
|
||||||
// TODO(remove): remove after July 2026.
|
// TODO(remove): remove after July 2026.
|
||||||
func migrateFlagNames(f *pflag.FlagSet, name string) pflag.NormalizedName {
|
func migrateFlagNames(_ *pflag.FlagSet, name string) pflag.NormalizedName {
|
||||||
if newName, ok := flagNamesMigrations[name]; ok {
|
if newName, ok := flagNamesMigrations[name]; ok {
|
||||||
|
|
||||||
if !warnedFlags[name] {
|
if !warnedFlags[name] {
|
||||||
|
|
@ -146,7 +146,7 @@ The precedence of the configuration values are as follows:
|
||||||
Also, if the database path doesn't exist, File Browser will enter into
|
Also, if the database path doesn't exist, File Browser will enter into
|
||||||
the quick setup mode and a new database will be bootstrapped and a new
|
the quick setup mode and a new database will be bootstrapped and a new
|
||||||
user created with the credentials from options "username" and "password".`,
|
user created with the credentials from options "username" and "password".`,
|
||||||
RunE: withViperAndStore(func(cmd *cobra.Command, _ []string, v *viper.Viper, st *store) error {
|
RunE: withViperAndStore(func(_ *cobra.Command, _ []string, v *viper.Viper, st *store) error {
|
||||||
if !st.databaseExisted {
|
if !st.databaseExisted {
|
||||||
err := quickSetup(v, st.Storage)
|
err := quickSetup(v, st.Storage)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
|
||||||
11
cmd/utils.go
11
cmd/utils.go
|
|
@ -160,13 +160,14 @@ func withViperAndStore(fn func(cmd *cobra.Command, args []string, v *viper.Viper
|
||||||
}
|
}
|
||||||
|
|
||||||
exists, err := dbExists(path)
|
exists, err := dbExists(path)
|
||||||
if err != nil {
|
switch {
|
||||||
|
case err != nil:
|
||||||
return err
|
return err
|
||||||
} else if exists && options.expectsNoDatabase {
|
case exists && options.expectsNoDatabase:
|
||||||
log.Fatal(path + " already exists")
|
log.Fatal(path + " already exists")
|
||||||
} else if !exists && !options.expectsNoDatabase && !options.allowsNoDatabase {
|
case !exists && !options.expectsNoDatabase && !options.allowsNoDatabase:
|
||||||
log.Fatal(path + " does not exist. Please run 'filebrowser config init' first.")
|
log.Fatal(path + " does not exist. Please run 'filebrowser config init' first.")
|
||||||
} else if !exists && !options.expectsNoDatabase {
|
case !exists && !options.expectsNoDatabase:
|
||||||
log.Println("WARNING: filebrowser.db can't be found. Initialing in " + strings.TrimSuffix(path, "filebrowser.db"))
|
log.Println("WARNING: filebrowser.db can't be found. Initialing in " + strings.TrimSuffix(path, "filebrowser.db"))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -193,7 +194,7 @@ func withViperAndStore(fn func(cmd *cobra.Command, args []string, v *viper.Viper
|
||||||
}
|
}
|
||||||
|
|
||||||
func withStore(fn func(cmd *cobra.Command, args []string, store *store) error, options storeOptions) cobraFunc {
|
func withStore(fn func(cmd *cobra.Command, args []string, store *store) error, options storeOptions) cobraFunc {
|
||||||
return withViperAndStore(func(cmd *cobra.Command, args []string, v *viper.Viper, store *store) error {
|
return withViperAndStore(func(cmd *cobra.Command, args []string, _ *viper.Viper, store *store) error {
|
||||||
return fn(cmd, args, store)
|
return fn(cmd, args, store)
|
||||||
}, options)
|
}, options)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -25,12 +25,12 @@ func TestFileCache(t *testing.T) {
|
||||||
// store new key
|
// store new key
|
||||||
err := cache.Store(ctx, key, []byte(value))
|
err := cache.Store(ctx, key, []byte(value))
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
checkValue(t, ctx, fs, filepath.Join(cacheRoot, cachedFilePath), cache, key, value)
|
checkValue(ctx, t, fs, filepath.Join(cacheRoot, cachedFilePath), cache, key, value)
|
||||||
|
|
||||||
// update existing key
|
// update existing key
|
||||||
err = cache.Store(ctx, key, []byte(newValue))
|
err = cache.Store(ctx, key, []byte(newValue))
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
checkValue(t, ctx, fs, filepath.Join(cacheRoot, cachedFilePath), cache, key, newValue)
|
checkValue(ctx, t, fs, filepath.Join(cacheRoot, cachedFilePath), cache, key, newValue)
|
||||||
|
|
||||||
// delete key
|
// delete key
|
||||||
err = cache.Delete(ctx, key)
|
err = cache.Delete(ctx, key)
|
||||||
|
|
@ -40,7 +40,7 @@ func TestFileCache(t *testing.T) {
|
||||||
require.False(t, exists)
|
require.False(t, exists)
|
||||||
}
|
}
|
||||||
|
|
||||||
func checkValue(t *testing.T, ctx context.Context, fs afero.Fs, fileFullPath string, cache *FileCache, key, wantValue string) {
|
func checkValue(ctx context.Context, t *testing.T, fs afero.Fs, fileFullPath string, cache *FileCache, key, wantValue string) {
|
||||||
t.Helper()
|
t.Helper()
|
||||||
// check actual file content
|
// check actual file content
|
||||||
b, err := afero.ReadFile(fs, fileFullPath)
|
b, err := afero.ReadFile(fs, fileFullPath)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue