mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-11-01 01:32:26 -05:00
[feature] Clean up/uncache remote media (#407)
* Add whereNotEmptyAndNotNull * Add GetRemoteOlderThanDays * Add GetRemoteOlderThanDays * Add PruneRemote to Manager interface * Start implementing PruneRemote * add new attachment + status to tests * fix up and test GetRemoteOlderThan * fix bad import * PruneRemote: return number pruned * add Cached column to mediaattachment * update + test pruneRemote * update mediaTest * use Cached column * upstep bun to latest version * embed structs in mediaAttachment * migrate mediaAttachment to new format * don't default cached to true * select only remote media * update db dependencies * step bun back to last working version * update pruneRemote to use Cached field * fix storage path of test attachments * add recache logic to manager * fix trimmed aspect ratio * test prune and recache * return errwithcode * tidy up different paths for emoji vs attachment * fix incorrect thumbnail type being stored * expose TransportController to media processor * implement tee-ing recached content * add thoughts of dog to test fedi attachments * test get remote files * add comment on PruneRemote * add postData cleanup to recache * test thumbnail fetching * add incredible diagram * go mod tidy * buffer pipes for recache streaming * test for client stops reading after 1kb * add media-remote-cache-days to config * add cron package * wrap logrus so it's available to cron * start and stop cron jobs gracefully
This commit is contained in:
parent
100f1280a6
commit
07727753b9
424 changed files with 637100 additions and 176498 deletions
18
vendor/modernc.org/ccgo/v3/lib/go.go
generated
vendored
18
vendor/modernc.org/ccgo/v3/lib/go.go
generated
vendored
|
|
@ -3117,6 +3117,9 @@ func (p *project) declaratorDecay(n cc.Node, f *function, d *cc.Declarator, t cc
|
|||
return
|
||||
}
|
||||
|
||||
if !local.isPinned {
|
||||
p.err(n, "%v: %v: missed pinning", n.Position(), d.Position(), d.Name())
|
||||
}
|
||||
p.w("(%s%s)/* &%s[0] */", f.bpName, nonZeroUintptr(local.off), local.name)
|
||||
return
|
||||
}
|
||||
|
|
@ -3663,7 +3666,7 @@ func (p *project) declaratorAddrOfNormal(n cc.Node, f *function, d *cc.Declarato
|
|||
x.used = true
|
||||
p.w("uintptr(unsafe.Pointer(&%sX%s))", x.qualifier, d.Name())
|
||||
default:
|
||||
panic(todo("%v: %v: %q %T", n.Position(), p.pos(d), d.Name(), x))
|
||||
p.err(n, "undefined: %s", d.Name())
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -8135,6 +8138,11 @@ func (p *project) castExpressionValue(f *function, n *cc.CastExpression, t cc.Ty
|
|||
case cc.CastExpressionUnary: // UnaryExpression
|
||||
p.unaryExpression(f, n.UnaryExpression, t, mode, flags)
|
||||
case cc.CastExpressionCast: // '(' TypeName ')' CastExpression
|
||||
if f != nil && p.pass1 && n.TypeName.Type().IsIntegerType() && n.CastExpression.Operand.Type().Kind() == cc.Array {
|
||||
if d := n.CastExpression.Declarator(); d != nil {
|
||||
f.pin(n, d)
|
||||
}
|
||||
}
|
||||
switch k := p.opKind(f, n.CastExpression, n.CastExpression.Operand.Type()); k {
|
||||
case opNormal, opBitfield:
|
||||
p.castExpressionValueNormal(f, n, t, mode, flags)
|
||||
|
|
@ -8168,8 +8176,12 @@ func (p *project) castExpressionValueFunction(f *function, n *cc.CastExpression,
|
|||
switch {
|
||||
case tn.Kind() == cc.Ptr && t.Kind() == cc.Ptr:
|
||||
p.castExpression(f, n.CastExpression, op.Type(), exprValue, flags)
|
||||
case tn.IsIntegerType():
|
||||
p.w("%s(", p.typ(n, tn))
|
||||
p.castExpression(f, n.CastExpression, op.Type(), exprValue, flags)
|
||||
p.w(")")
|
||||
default:
|
||||
panic(todo("", n.Position()))
|
||||
panic(todo("%v: tn %v expr %v", n.Position(), tn, op.Type()))
|
||||
}
|
||||
default:
|
||||
panic(todo("%v: %v -> %v -> %v", p.pos(n), op.Type(), tn, t))
|
||||
|
|
@ -12557,7 +12569,7 @@ func (p *project) iterationStatement(f *function, n *cc.IterationStatement) {
|
|||
break
|
||||
}
|
||||
|
||||
v := "ok"
|
||||
v := "__ccgo"
|
||||
if !p.pass1 {
|
||||
v = f.scope.take(cc.String(v))
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue