mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2024-11-22 11:46:40 +00:00
[chore] Go mod tidy / vendor (#3100)
This commit is contained in:
parent
c83e96b8a7
commit
e2ed6ef024
109
vendor/codeberg.org/gruf/go-ffmpreg/ffmpeg/ffmpeg.go
generated
vendored
109
vendor/codeberg.org/gruf/go-ffmpreg/ffmpeg/ffmpeg.go
generated
vendored
|
@ -1,109 +0,0 @@
|
||||||
package ffmpeg
|
|
||||||
|
|
||||||
import (
|
|
||||||
"context"
|
|
||||||
|
|
||||||
"codeberg.org/gruf/go-ffmpreg/embed/ffmpeg"
|
|
||||||
"codeberg.org/gruf/go-ffmpreg/internal"
|
|
||||||
"codeberg.org/gruf/go-ffmpreg/util"
|
|
||||||
"codeberg.org/gruf/go-ffmpreg/wasm"
|
|
||||||
"github.com/tetratelabs/wazero"
|
|
||||||
"github.com/tetratelabs/wazero/api"
|
|
||||||
"github.com/tetratelabs/wazero/imports/wasi_snapshot_preview1"
|
|
||||||
)
|
|
||||||
|
|
||||||
// pool of WASM module instances.
|
|
||||||
var pool = wasm.InstancePool{
|
|
||||||
Instantiator: wasm.Instantiator{
|
|
||||||
|
|
||||||
// WASM module name.
|
|
||||||
Module: "ffmpeg",
|
|
||||||
|
|
||||||
// Per-instance WebAssembly runtime (with shared cache).
|
|
||||||
Runtime: func(ctx context.Context) wazero.Runtime {
|
|
||||||
|
|
||||||
// Prepare config with cache.
|
|
||||||
cfg := wazero.NewRuntimeConfig()
|
|
||||||
cfg = cfg.WithCoreFeatures(ffmpeg.CoreFeatures)
|
|
||||||
cfg = cfg.WithCompilationCache(internal.Cache)
|
|
||||||
|
|
||||||
// Instantiate runtime with our config.
|
|
||||||
rt := wazero.NewRuntimeWithConfig(ctx, cfg)
|
|
||||||
|
|
||||||
// Prepare default "env" host module.
|
|
||||||
env := rt.NewHostModuleBuilder("env")
|
|
||||||
env = env.NewFunctionBuilder().
|
|
||||||
WithGoModuleFunction(
|
|
||||||
api.GoModuleFunc(util.Wasm_Tempnam),
|
|
||||||
[]api.ValueType{api.ValueTypeI32, api.ValueTypeI32},
|
|
||||||
[]api.ValueType{api.ValueTypeI32},
|
|
||||||
).
|
|
||||||
Export("tempnam")
|
|
||||||
|
|
||||||
// Instantiate "env" module in our runtime.
|
|
||||||
_, err := env.Instantiate(context.Background())
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Instantiate the wasi snapshot preview 1 in runtime.
|
|
||||||
_, err = wasi_snapshot_preview1.Instantiate(ctx, rt)
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
return rt
|
|
||||||
},
|
|
||||||
|
|
||||||
// Per-run module configuration.
|
|
||||||
Config: wazero.NewModuleConfig,
|
|
||||||
|
|
||||||
// Embedded WASM.
|
|
||||||
Source: ffmpeg.B,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
// Precompile ensures at least compiled ffmpeg
|
|
||||||
// instance is available in the global pool.
|
|
||||||
func Precompile(ctx context.Context) error {
|
|
||||||
inst, err := pool.Get(ctx)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
pool.Put(inst)
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get fetches new ffmpeg instance from pool, prefering cached if available.
|
|
||||||
func Get(ctx context.Context) (*wasm.Instance, error) { return pool.Get(ctx) }
|
|
||||||
|
|
||||||
// Put places the given ffmpeg instance in pool.
|
|
||||||
func Put(inst *wasm.Instance) { pool.Put(inst) }
|
|
||||||
|
|
||||||
// Run will run the given args against an ffmpeg instance from pool.
|
|
||||||
func Run(ctx context.Context, args wasm.Args) (uint32, error) {
|
|
||||||
inst, err := pool.Get(ctx)
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
rc, err := inst.Run(ctx, args)
|
|
||||||
pool.Put(inst)
|
|
||||||
return rc, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Cached returns a cached instance (if any) from pool.
|
|
||||||
func Cached() *wasm.Instance { return pool.Cached() }
|
|
||||||
|
|
||||||
// Free drops all instances
|
|
||||||
// cached in instance pool.
|
|
||||||
func Free() {
|
|
||||||
ctx := context.Background()
|
|
||||||
for {
|
|
||||||
inst := pool.Cached()
|
|
||||||
if inst == nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_ = inst.Close(ctx)
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
108
vendor/codeberg.org/gruf/go-ffmpreg/ffprobe/ffprobe.go
generated
vendored
108
vendor/codeberg.org/gruf/go-ffmpreg/ffprobe/ffprobe.go
generated
vendored
|
@ -1,108 +0,0 @@
|
||||||
package ffprobe
|
|
||||||
|
|
||||||
import (
|
|
||||||
"context"
|
|
||||||
|
|
||||||
"codeberg.org/gruf/go-ffmpreg/embed/ffprobe"
|
|
||||||
"codeberg.org/gruf/go-ffmpreg/internal"
|
|
||||||
"codeberg.org/gruf/go-ffmpreg/util"
|
|
||||||
"codeberg.org/gruf/go-ffmpreg/wasm"
|
|
||||||
"github.com/tetratelabs/wazero"
|
|
||||||
"github.com/tetratelabs/wazero/api"
|
|
||||||
"github.com/tetratelabs/wazero/imports/wasi_snapshot_preview1"
|
|
||||||
)
|
|
||||||
|
|
||||||
// pool of WASM module instances.
|
|
||||||
var pool = wasm.InstancePool{
|
|
||||||
Instantiator: wasm.Instantiator{
|
|
||||||
|
|
||||||
// WASM module name.
|
|
||||||
Module: "ffprobe",
|
|
||||||
|
|
||||||
// Per-instance WebAssembly runtime (with shared cache).
|
|
||||||
Runtime: func(ctx context.Context) wazero.Runtime {
|
|
||||||
|
|
||||||
// Prepare config with cache.
|
|
||||||
cfg := wazero.NewRuntimeConfig()
|
|
||||||
cfg = cfg.WithCoreFeatures(ffprobe.CoreFeatures)
|
|
||||||
cfg = cfg.WithCompilationCache(internal.Cache)
|
|
||||||
|
|
||||||
// Instantiate runtime with our config.
|
|
||||||
rt := wazero.NewRuntimeWithConfig(ctx, cfg)
|
|
||||||
|
|
||||||
// Prepare default "env" host module.
|
|
||||||
env := rt.NewHostModuleBuilder("env")
|
|
||||||
env = env.NewFunctionBuilder().
|
|
||||||
WithGoModuleFunction(
|
|
||||||
api.GoModuleFunc(util.Wasm_Tempnam),
|
|
||||||
[]api.ValueType{api.ValueTypeI32, api.ValueTypeI32},
|
|
||||||
[]api.ValueType{api.ValueTypeI32},
|
|
||||||
).
|
|
||||||
Export("tempnam")
|
|
||||||
|
|
||||||
// Instantiate "env" module in our runtime.
|
|
||||||
_, err := env.Instantiate(context.Background())
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Instantiate the wasi snapshot preview 1 in runtime.
|
|
||||||
_, err = wasi_snapshot_preview1.Instantiate(ctx, rt)
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
return rt
|
|
||||||
},
|
|
||||||
|
|
||||||
// Per-run module configuration.
|
|
||||||
Config: wazero.NewModuleConfig,
|
|
||||||
|
|
||||||
// Embedded WASM.
|
|
||||||
Source: ffprobe.B,
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
// Precompile ensures at least compiled ffprobe
|
|
||||||
// instance is available in the global pool.
|
|
||||||
func Precompile(ctx context.Context) error {
|
|
||||||
inst, err := pool.Get(ctx)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
pool.Put(inst)
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get fetches new ffprobe instance from pool, prefering cached if available.
|
|
||||||
func Get(ctx context.Context) (*wasm.Instance, error) { return pool.Get(ctx) }
|
|
||||||
|
|
||||||
// Put places the given ffprobe instance in pool.
|
|
||||||
func Put(inst *wasm.Instance) { pool.Put(inst) }
|
|
||||||
|
|
||||||
// Run will run the given args against an ffprobe instance from pool.
|
|
||||||
func Run(ctx context.Context, args wasm.Args) (uint32, error) {
|
|
||||||
inst, err := pool.Get(ctx)
|
|
||||||
if err != nil {
|
|
||||||
return 0, err
|
|
||||||
}
|
|
||||||
rc, err := inst.Run(ctx, args)
|
|
||||||
pool.Put(inst)
|
|
||||||
return rc, err
|
|
||||||
}
|
|
||||||
|
|
||||||
// Cached returns a cached instance (if any) from pool.
|
|
||||||
func Cached() *wasm.Instance { return pool.Cached() }
|
|
||||||
|
|
||||||
// Free drops all instances
|
|
||||||
// cached in instance pool.
|
|
||||||
func Free() {
|
|
||||||
ctx := context.Background()
|
|
||||||
for {
|
|
||||||
inst := pool.Cached()
|
|
||||||
if inst == nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
_ = inst.Close(ctx)
|
|
||||||
}
|
|
||||||
}
|
|
25
vendor/codeberg.org/gruf/go-ffmpreg/internal/wasm.go
generated
vendored
25
vendor/codeberg.org/gruf/go-ffmpreg/internal/wasm.go
generated
vendored
|
@ -1,25 +0,0 @@
|
||||||
package internal
|
|
||||||
|
|
||||||
import (
|
|
||||||
"os"
|
|
||||||
|
|
||||||
"github.com/tetratelabs/wazero"
|
|
||||||
)
|
|
||||||
|
|
||||||
func init() {
|
|
||||||
var err error
|
|
||||||
|
|
||||||
if dir := os.Getenv("WAZERO_COMPILATION_CACHE"); dir != "" {
|
|
||||||
// Use on-filesystem compilation cache given by env.
|
|
||||||
Cache, err = wazero.NewCompilationCacheWithDir(dir)
|
|
||||||
if err != nil {
|
|
||||||
panic(err)
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
// Use in-memory compilation cache.
|
|
||||||
Cache = wazero.NewCompilationCache()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Shared WASM compilation cache.
|
|
||||||
var Cache wazero.CompilationCache
|
|
3
vendor/modules.txt
vendored
3
vendor/modules.txt
vendored
|
@ -34,9 +34,6 @@ codeberg.org/gruf/go-fastpath/v2
|
||||||
## explicit; go 1.22.0
|
## explicit; go 1.22.0
|
||||||
codeberg.org/gruf/go-ffmpreg/embed/ffmpeg
|
codeberg.org/gruf/go-ffmpreg/embed/ffmpeg
|
||||||
codeberg.org/gruf/go-ffmpreg/embed/ffprobe
|
codeberg.org/gruf/go-ffmpreg/embed/ffprobe
|
||||||
codeberg.org/gruf/go-ffmpreg/ffmpeg
|
|
||||||
codeberg.org/gruf/go-ffmpreg/ffprobe
|
|
||||||
codeberg.org/gruf/go-ffmpreg/internal
|
|
||||||
codeberg.org/gruf/go-ffmpreg/util
|
codeberg.org/gruf/go-ffmpreg/util
|
||||||
codeberg.org/gruf/go-ffmpreg/wasm
|
codeberg.org/gruf/go-ffmpreg/wasm
|
||||||
# codeberg.org/gruf/go-iotools v0.0.0-20240710125620-934ae9c654cf
|
# codeberg.org/gruf/go-iotools v0.0.0-20240710125620-934ae9c654cf
|
||||||
|
|
Loading…
Reference in a new issue