Browse Source

refactor(config): simplify SortedOptions

Make use of the slices and maps packages instead of doing things by hand,
and pre-allocated sortedOptions.
jvoisin 9 months ago
parent
commit
61583d53d5
1 changed files with 5 additions and 9 deletions
  1. 5 9
      internal/config/options.go

+ 5 - 9
internal/config/options.go

@@ -5,8 +5,9 @@ package config // import "miniflux.app/v2/internal/config"
 
 
 import (
 import (
 	"fmt"
 	"fmt"
+	"maps"
 	"net/url"
 	"net/url"
-	"sort"
+	"slices"
 	"strings"
 	"strings"
 	"time"
 	"time"
 
 
@@ -782,14 +783,9 @@ func (o *options) SortedOptions(redactSecret bool) []*option {
 		"WEBAUTHN":                               o.webAuthn,
 		"WEBAUTHN":                               o.webAuthn,
 	}
 	}
 
 
-	keys := make([]string, 0, len(keyValues))
-	for key := range keyValues {
-		keys = append(keys, key)
-	}
-	sort.Strings(keys)
-
-	var sortedOptions []*option
-	for _, key := range keys {
+	sortedKeys := slices.Sorted(maps.Keys(keyValues))
+	var sortedOptions = make([]*option, 0, len(sortedKeys))
+	for _, key := range sortedKeys {
 		sortedOptions = append(sortedOptions, &option{Key: key, Value: keyValues[key]})
 		sortedOptions = append(sortedOptions, &option{Key: key, Value: keyValues[key]})
 	}
 	}
 	return sortedOptions
 	return sortedOptions