feat: Merge main branch

This commit is contained in:
Pascal Zimmermann committed 2026-04-11 23:31:01 +02:00
commit 2266970fd0
1185 files changed
+39208 -23019

No files matched your search

+9 -2
View File
@@ -12,10 +12,17 @@ import (
"code.gitea.io/gitea/modules/json"
"code.gitea.io/gitea/modules/log"
"github.com/santhosh-tekuri/jsonschema/v5"
"github.com/santhosh-tekuri/jsonschema/v6"
"go.yaml.in/yaml/v4"
)
// schemaLoader implements jsonschema.URLLoader
type schemaLoader struct{}
func (l *schemaLoader) Load(url string) (any, error) {
return openSchema(url)
}
// Load project data from file, with optional validation
func Load(filename string, data any, validation bool) error {
isJSON := strings.HasSuffix(filename, ".json")
@@ -43,7 +50,7 @@ func unmarshal(bs []byte, data any, isJSON bool) error {
func getSchema(filename string) (*jsonschema.Schema, error) {
c := jsonschema.NewCompiler()
c.LoadURL = openSchema
c.UseLoader(&schemaLoader{})
return c.Compile(filename)
}
+1 -1
View File
@@ -7,7 +7,7 @@ import (
"strings"
"testing"
"github.com/santhosh-tekuri/jsonschema/v5"
"github.com/santhosh-tekuri/jsonschema/v6"
"github.com/stretchr/testify/assert"
)
+9 -3
View File
@@ -8,7 +8,6 @@
package migration
import (
"io"
"io/fs"
"path"
"sync"
@@ -16,6 +15,8 @@ import (
_ "embed"
"code.gitea.io/gitea/modules/assetfs"
"github.com/santhosh-tekuri/jsonschema/v6"
)
//go:embed bindata.dat
@@ -25,6 +26,11 @@ var BuiltinAssets = sync.OnceValue(func() fs.FS {
return assetfs.NewEmbeddedFS(bindata)
})
func openSchema(filename string) (io.ReadCloser, error) {
return BuiltinAssets().Open(path.Base(filename))
func openSchema(filename string) (any, error) {
f, err := BuiltinAssets().Open(path.Base(filename))
if err != nil {
return nil, err
}
defer f.Close()
return jsonschema.UnmarshalJSON(f)
}
+9 -3
View File
@@ -6,14 +6,15 @@
package migration
import (
"io"
"net/url"
"os"
"path"
"path/filepath"
"github.com/santhosh-tekuri/jsonschema/v6"
)
func openSchema(s string) (io.ReadCloser, error) {
func openSchema(s string) (any, error) {
u, err := url.Parse(s)
if err != nil {
return nil, err
@@ -34,5 +35,10 @@ func openSchema(s string) (io.ReadCloser, error) {
filename = filepath.Join("modules/migration/schemas", basename)
}
}
return os.Open(filename)
f, err := os.Open(filename)
if err != nil {
return nil, err
}
defer f.Close()
return jsonschema.UnmarshalJSON(f)
}