Fix some RPM registry flaws (#28782)
Related #26984
(https://github.com/go-gitea/gitea/pull/26984#issuecomment-1889588912)
Fix admin cleanup message.
Fix models `Get` not respecting default values.
Rebuild RPM repository files after cleanup.
Do not add RPM group to package version name.
Force stable sorting of Alpine/Debian/RPM repository data.
Fix missing deferred `Close`.
Add tests for multiple RPM groups.
Removed non-cached `ReplaceAllStringRegex`.
If there are multiple groups available, it's stated in the package
installation screen:

This commit is contained in:
parent
075c4c89ee
commit
461d8b53c2
18 changed files with 634 additions and 478 deletions
|
@ -15,7 +15,10 @@ import (
|
|||
)
|
||||
|
||||
const (
|
||||
PropertyMetadata = "rpm.metadata"
|
||||
PropertyMetadata = "rpm.metadata"
|
||||
PropertyGroup = "rpm.group"
|
||||
PropertyArchitecture = "rpm.architecture"
|
||||
|
||||
SettingKeyPrivate = "rpm.key.private"
|
||||
SettingKeyPublic = "rpm.key.public"
|
||||
|
||||
|
|
|
@ -4,7 +4,6 @@
|
|||
package templates
|
||||
|
||||
import (
|
||||
"regexp"
|
||||
"strings"
|
||||
|
||||
"code.gitea.io/gitea/modules/base"
|
||||
|
@ -26,10 +25,6 @@ func (su *StringUtils) Contains(s, substr string) bool {
|
|||
return strings.Contains(s, substr)
|
||||
}
|
||||
|
||||
func (su *StringUtils) ReplaceAllStringRegex(s, regex, new string) string {
|
||||
return regexp.MustCompile(regex).ReplaceAllString(s, new)
|
||||
}
|
||||
|
||||
func (su *StringUtils) Split(s, sep string) []string {
|
||||
return strings.Split(s, sep)
|
||||
}
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
package util
|
||||
|
||||
import (
|
||||
"cmp"
|
||||
"slices"
|
||||
"strings"
|
||||
)
|
||||
|
@ -45,3 +46,10 @@ func SliceSortedEqual[T comparable](s1, s2 []T) bool {
|
|||
func SliceRemoveAll[T comparable](slice []T, target T) []T {
|
||||
return slices.DeleteFunc(slice, func(t T) bool { return t == target })
|
||||
}
|
||||
|
||||
// Sorted returns the sorted slice
|
||||
// Note: The parameter is sorted inline.
|
||||
func Sorted[S ~[]E, E cmp.Ordered](values S) S {
|
||||
slices.Sort(values)
|
||||
return values
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue