mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2024-11-25 05:06:38 +00:00
update gruf / {go-cache, go-maps, go-kv} (#3361)
This commit is contained in:
parent
58af95a1d5
commit
2f582e2e33
6
go.mod
6
go.mod
|
@ -8,13 +8,13 @@ require (
|
||||||
codeberg.org/gruf/go-bytes v1.0.2
|
codeberg.org/gruf/go-bytes v1.0.2
|
||||||
codeberg.org/gruf/go-bytesize v1.0.3
|
codeberg.org/gruf/go-bytesize v1.0.3
|
||||||
codeberg.org/gruf/go-byteutil v1.3.0
|
codeberg.org/gruf/go-byteutil v1.3.0
|
||||||
codeberg.org/gruf/go-cache/v3 v3.5.7
|
codeberg.org/gruf/go-cache/v3 v3.6.1
|
||||||
codeberg.org/gruf/go-debug v1.3.0
|
codeberg.org/gruf/go-debug v1.3.0
|
||||||
codeberg.org/gruf/go-errors/v2 v2.3.2
|
codeberg.org/gruf/go-errors/v2 v2.3.2
|
||||||
codeberg.org/gruf/go-fastcopy v1.1.3
|
codeberg.org/gruf/go-fastcopy v1.1.3
|
||||||
codeberg.org/gruf/go-ffmpreg v0.2.6
|
codeberg.org/gruf/go-ffmpreg v0.2.6
|
||||||
codeberg.org/gruf/go-iotools v0.0.0-20240710125620-934ae9c654cf
|
codeberg.org/gruf/go-iotools v0.0.0-20240710125620-934ae9c654cf
|
||||||
codeberg.org/gruf/go-kv v1.6.4
|
codeberg.org/gruf/go-kv v1.6.5
|
||||||
codeberg.org/gruf/go-list v0.0.0-20240425093752-494db03d641f
|
codeberg.org/gruf/go-list v0.0.0-20240425093752-494db03d641f
|
||||||
codeberg.org/gruf/go-mempool v0.0.0-20240507125005-cef10d64a760
|
codeberg.org/gruf/go-mempool v0.0.0-20240507125005-cef10d64a760
|
||||||
codeberg.org/gruf/go-mimetypes v1.2.0
|
codeberg.org/gruf/go-mimetypes v1.2.0
|
||||||
|
@ -87,7 +87,7 @@ require (
|
||||||
require (
|
require (
|
||||||
codeberg.org/gruf/go-fastpath/v2 v2.0.0 // indirect
|
codeberg.org/gruf/go-fastpath/v2 v2.0.0 // indirect
|
||||||
codeberg.org/gruf/go-mangler v1.4.1 // indirect
|
codeberg.org/gruf/go-mangler v1.4.1 // indirect
|
||||||
codeberg.org/gruf/go-maps v1.0.3 // indirect
|
codeberg.org/gruf/go-maps v1.0.4 // indirect
|
||||||
github.com/Masterminds/goutils v1.1.1 // indirect
|
github.com/Masterminds/goutils v1.1.1 // indirect
|
||||||
github.com/Masterminds/semver/v3 v3.2.1 // indirect
|
github.com/Masterminds/semver/v3 v3.2.1 // indirect
|
||||||
github.com/Masterminds/sprig/v3 v3.2.3 // indirect
|
github.com/Masterminds/sprig/v3 v3.2.3 // indirect
|
||||||
|
|
12
go.sum
12
go.sum
|
@ -36,8 +36,8 @@ codeberg.org/gruf/go-bytesize v1.0.3 h1:Tz8tCxhPLeyM5VryuBNjUHgKmLj4Bx9RbPaUSA3q
|
||||||
codeberg.org/gruf/go-bytesize v1.0.3/go.mod h1:n/GU8HzL9f3UNp/mUKyr1qVmTlj7+xacpp0OHfkvLPs=
|
codeberg.org/gruf/go-bytesize v1.0.3/go.mod h1:n/GU8HzL9f3UNp/mUKyr1qVmTlj7+xacpp0OHfkvLPs=
|
||||||
codeberg.org/gruf/go-byteutil v1.3.0 h1:nRqJnCcRQ7xbfU6azw7zOzJrSMDIJHBqX6FL9vEMYmU=
|
codeberg.org/gruf/go-byteutil v1.3.0 h1:nRqJnCcRQ7xbfU6azw7zOzJrSMDIJHBqX6FL9vEMYmU=
|
||||||
codeberg.org/gruf/go-byteutil v1.3.0/go.mod h1:chgnZz1LUcfaObaIFglxF5MRYQkJGjQf4WwVz95ccCM=
|
codeberg.org/gruf/go-byteutil v1.3.0/go.mod h1:chgnZz1LUcfaObaIFglxF5MRYQkJGjQf4WwVz95ccCM=
|
||||||
codeberg.org/gruf/go-cache/v3 v3.5.7 h1:5hut49a8Wp3hdwrCEJYj6pHY2aRR1hyTmkK4+wHVYq4=
|
codeberg.org/gruf/go-cache/v3 v3.6.1 h1:sY1XhYeskjZAuYeMm5R0o4Qymru5taNbzmZPSn1oXLE=
|
||||||
codeberg.org/gruf/go-cache/v3 v3.5.7/go.mod h1:Thahfuf3PgHSv2+1zHpvhRdX97tx1WXurVNGWpZucAM=
|
codeberg.org/gruf/go-cache/v3 v3.6.1/go.mod h1:JUNjc4E8gRccn3t+B99akxURFrU6NTDkvFVcwiZirnw=
|
||||||
codeberg.org/gruf/go-debug v1.3.0 h1:PIRxQiWUFKtGOGZFdZ3Y0pqyfI0Xr87j224IYe2snZs=
|
codeberg.org/gruf/go-debug v1.3.0 h1:PIRxQiWUFKtGOGZFdZ3Y0pqyfI0Xr87j224IYe2snZs=
|
||||||
codeberg.org/gruf/go-debug v1.3.0/go.mod h1:N+vSy9uJBQgpQcJUqjctvqFz7tBHJf+S/PIjLILzpLg=
|
codeberg.org/gruf/go-debug v1.3.0/go.mod h1:N+vSy9uJBQgpQcJUqjctvqFz7tBHJf+S/PIjLILzpLg=
|
||||||
codeberg.org/gruf/go-errors/v2 v2.3.2 h1:8ItWaOMfhDaqrJK1Pw8MO0Nu+o/tVcQtR5cJ58Vc4zo=
|
codeberg.org/gruf/go-errors/v2 v2.3.2 h1:8ItWaOMfhDaqrJK1Pw8MO0Nu+o/tVcQtR5cJ58Vc4zo=
|
||||||
|
@ -50,16 +50,16 @@ codeberg.org/gruf/go-ffmpreg v0.2.6 h1:OHlTOF+62/b+VeM3Svg7praweU/NECRIsuhilZLFa
|
||||||
codeberg.org/gruf/go-ffmpreg v0.2.6/go.mod h1:sViRI0BYK2B8PJw4BrOg7DquPD71mZjDfffRAFcDtvk=
|
codeberg.org/gruf/go-ffmpreg v0.2.6/go.mod h1:sViRI0BYK2B8PJw4BrOg7DquPD71mZjDfffRAFcDtvk=
|
||||||
codeberg.org/gruf/go-iotools v0.0.0-20240710125620-934ae9c654cf h1:84s/ii8N6lYlskZjHH+DG6jyia8w2mXMZlRwFn8Gs3A=
|
codeberg.org/gruf/go-iotools v0.0.0-20240710125620-934ae9c654cf h1:84s/ii8N6lYlskZjHH+DG6jyia8w2mXMZlRwFn8Gs3A=
|
||||||
codeberg.org/gruf/go-iotools v0.0.0-20240710125620-934ae9c654cf/go.mod h1:zZAICsp5rY7+hxnws2V0ePrWxE0Z2Z/KXcN3p/RQCfk=
|
codeberg.org/gruf/go-iotools v0.0.0-20240710125620-934ae9c654cf/go.mod h1:zZAICsp5rY7+hxnws2V0ePrWxE0Z2Z/KXcN3p/RQCfk=
|
||||||
codeberg.org/gruf/go-kv v1.6.4 h1:3NZiW8HVdBM3kpOiLb7XfRiihnzZWMAixdCznguhILk=
|
codeberg.org/gruf/go-kv v1.6.5 h1:ttPf0NA8F79pDqBttSudPTVCZmGncumeNIxmeM9ztz0=
|
||||||
codeberg.org/gruf/go-kv v1.6.4/go.mod h1:O/YkSvKiS9XsRolM3rqCd9YJmND7dAXu9z+PrlYO4bc=
|
codeberg.org/gruf/go-kv v1.6.5/go.mod h1:c4PsGqw05bDScvISpK+d31SiDEpBorweCL50hsiK3dc=
|
||||||
codeberg.org/gruf/go-list v0.0.0-20240425093752-494db03d641f h1:Ss6Z+vygy+jOGhj96d/GwsYYDd22QmIcH74zM7/nQkw=
|
codeberg.org/gruf/go-list v0.0.0-20240425093752-494db03d641f h1:Ss6Z+vygy+jOGhj96d/GwsYYDd22QmIcH74zM7/nQkw=
|
||||||
codeberg.org/gruf/go-list v0.0.0-20240425093752-494db03d641f/go.mod h1:F9pl4h34iuVN7kucKam9fLwsItTc+9mmaKt7pNXRd/4=
|
codeberg.org/gruf/go-list v0.0.0-20240425093752-494db03d641f/go.mod h1:F9pl4h34iuVN7kucKam9fLwsItTc+9mmaKt7pNXRd/4=
|
||||||
codeberg.org/gruf/go-loosy v0.0.0-20231007123304-bb910d1ab5c4 h1:IXwfoU7f2whT6+JKIKskNl/hBlmWmnF1vZd84Eb3cyA=
|
codeberg.org/gruf/go-loosy v0.0.0-20231007123304-bb910d1ab5c4 h1:IXwfoU7f2whT6+JKIKskNl/hBlmWmnF1vZd84Eb3cyA=
|
||||||
codeberg.org/gruf/go-loosy v0.0.0-20231007123304-bb910d1ab5c4/go.mod h1:fiO8HE1wjZCephcYmRRsVnNI/i0+mhy44Z5dQalS0rM=
|
codeberg.org/gruf/go-loosy v0.0.0-20231007123304-bb910d1ab5c4/go.mod h1:fiO8HE1wjZCephcYmRRsVnNI/i0+mhy44Z5dQalS0rM=
|
||||||
codeberg.org/gruf/go-mangler v1.4.1 h1:Dv58jFfy9On49L11ji6tpADUknwoJA46iaiZvnNXecs=
|
codeberg.org/gruf/go-mangler v1.4.1 h1:Dv58jFfy9On49L11ji6tpADUknwoJA46iaiZvnNXecs=
|
||||||
codeberg.org/gruf/go-mangler v1.4.1/go.mod h1:mDmW8Ia352RvNFaXoP9K60TgcmCZJtX0j6wm3vjAsJE=
|
codeberg.org/gruf/go-mangler v1.4.1/go.mod h1:mDmW8Ia352RvNFaXoP9K60TgcmCZJtX0j6wm3vjAsJE=
|
||||||
codeberg.org/gruf/go-maps v1.0.3 h1:VDwhnnaVNUIy5O93CvkcE2IZXnMB1+IJjzfop9V12es=
|
codeberg.org/gruf/go-maps v1.0.4 h1:K+Ww4vvR3TZqm5jqrKVirmguZwa3v1VUvmig2SE8uxY=
|
||||||
codeberg.org/gruf/go-maps v1.0.3/go.mod h1:D5LNDxlC9rsDuVQVM6JObaVGAdHB6g2dTdOdkh1aXWA=
|
codeberg.org/gruf/go-maps v1.0.4/go.mod h1:ASX7osM7kFwt5O8GfGflcFjrwYGD8eIuRLl/oMjhEi8=
|
||||||
codeberg.org/gruf/go-mempool v0.0.0-20240507125005-cef10d64a760 h1:m2/UCRXhjDwAg4vyji6iKCpomKw6P4PmBOUi5DvAMH4=
|
codeberg.org/gruf/go-mempool v0.0.0-20240507125005-cef10d64a760 h1:m2/UCRXhjDwAg4vyji6iKCpomKw6P4PmBOUi5DvAMH4=
|
||||||
codeberg.org/gruf/go-mempool v0.0.0-20240507125005-cef10d64a760/go.mod h1:E3RcaCFNq4zXpvaJb8lfpPqdUAmSkP5F1VmMiEUYTEk=
|
codeberg.org/gruf/go-mempool v0.0.0-20240507125005-cef10d64a760/go.mod h1:E3RcaCFNq4zXpvaJb8lfpPqdUAmSkP5F1VmMiEUYTEk=
|
||||||
codeberg.org/gruf/go-mimetypes v1.2.0 h1:3rZGXY/SkNYbamiddWXs2gETXIBkGIeWYnbWpp2OEbc=
|
codeberg.org/gruf/go-mimetypes v1.2.0 h1:3rZGXY/SkNYbamiddWXs2gETXIBkGIeWYnbWpp2OEbc=
|
||||||
|
|
6
vendor/codeberg.org/gruf/go-cache/v3/README.md
generated
vendored
6
vendor/codeberg.org/gruf/go-cache/v3/README.md
generated
vendored
|
@ -9,9 +9,3 @@ A `cache.Cache{}` implementation with much more of the inner workings exposed. D
|
||||||
## ttl
|
## ttl
|
||||||
|
|
||||||
A `cache.TTLCache{}` implementation with much more of the inner workings exposed. Designed to be used as a base for your own customizations, or used as-is.
|
A `cache.TTLCache{}` implementation with much more of the inner workings exposed. Designed to be used as a base for your own customizations, or used as-is.
|
||||||
|
|
||||||
## result
|
|
||||||
|
|
||||||
`result.Cache` is an example of a more complex cache implementation using `ttl.Cache{}` as its underpinning.
|
|
||||||
|
|
||||||
It provides caching specifically of loadable struct types, with automatic keying by multiple different field members and caching of negative (error) values. All useful when wrapping, for example, a database.
|
|
6
vendor/codeberg.org/gruf/go-kv/format/format.go
generated
vendored
6
vendor/codeberg.org/gruf/go-kv/format/format.go
generated
vendored
|
@ -197,7 +197,8 @@ func (f format) AppendBytes(b []byte) {
|
||||||
|
|
||||||
// Quoted only if spaces/requires escaping
|
// Quoted only if spaces/requires escaping
|
||||||
case f.Key():
|
case f.Key():
|
||||||
f.AppendStringSafe(b2s(b))
|
s := byteutil.B2S(b)
|
||||||
|
f.AppendStringSafe(s)
|
||||||
|
|
||||||
// Append as separate ASCII quoted bytes in slice
|
// Append as separate ASCII quoted bytes in slice
|
||||||
case f.Verbose():
|
case f.Verbose():
|
||||||
|
@ -214,7 +215,8 @@ func (f format) AppendBytes(b []byte) {
|
||||||
|
|
||||||
// Quoted only if spaces/requires escaping
|
// Quoted only if spaces/requires escaping
|
||||||
case f.Value():
|
case f.Value():
|
||||||
f.AppendStringSafe(b2s(b))
|
s := byteutil.B2S(b)
|
||||||
|
f.AppendStringSafe(s)
|
||||||
|
|
||||||
// Append as raw bytes
|
// Append as raw bytes
|
||||||
default:
|
default:
|
||||||
|
|
5
vendor/codeberg.org/gruf/go-kv/format/util.go
generated
vendored
5
vendor/codeberg.org/gruf/go-kv/format/util.go
generated
vendored
|
@ -98,8 +98,3 @@ func isNil(i interface{}) bool {
|
||||||
type eface struct{ _type, data unsafe.Pointer } //nolint
|
type eface struct{ _type, data unsafe.Pointer } //nolint
|
||||||
return (*(*eface)(unsafe.Pointer(&i))).data == nil //nolint
|
return (*(*eface)(unsafe.Pointer(&i))).data == nil //nolint
|
||||||
}
|
}
|
||||||
|
|
||||||
// b2s converts a byteslice to string without allocation.
|
|
||||||
func b2s(b []byte) string {
|
|
||||||
return *(*string)(unsafe.Pointer(&b))
|
|
||||||
}
|
|
||||||
|
|
20
vendor/codeberg.org/gruf/go-maps/common.go
generated
vendored
20
vendor/codeberg.org/gruf/go-maps/common.go
generated
vendored
|
@ -17,7 +17,7 @@ type ordered[K comparable, V any] struct {
|
||||||
}
|
}
|
||||||
|
|
||||||
// write_check panics if map is not in a safe-state to write to.
|
// write_check panics if map is not in a safe-state to write to.
|
||||||
func (m ordered[K, V]) write_check() {
|
func (m *ordered[K, V]) write_check() {
|
||||||
if m.rnly {
|
if m.rnly {
|
||||||
panic("map write during read loop")
|
panic("map write during read loop")
|
||||||
}
|
}
|
||||||
|
@ -54,15 +54,17 @@ func (m *ordered[K, V]) Delete(key K) bool {
|
||||||
|
|
||||||
// Range passes given function over the requested range of the map.
|
// Range passes given function over the requested range of the map.
|
||||||
func (m *ordered[K, V]) Range(start, length int, fn func(int, K, V)) {
|
func (m *ordered[K, V]) Range(start, length int, fn func(int, K, V)) {
|
||||||
|
// Nil check
|
||||||
|
if fn == nil {
|
||||||
|
panic("nil func")
|
||||||
|
}
|
||||||
|
|
||||||
// Disallow writes
|
// Disallow writes
|
||||||
m.rnly = true
|
m.rnly = true
|
||||||
defer func() {
|
defer func() {
|
||||||
m.rnly = false
|
m.rnly = false
|
||||||
}()
|
}()
|
||||||
|
|
||||||
// Nil check
|
|
||||||
_ = fn
|
|
||||||
|
|
||||||
switch end := start + length; {
|
switch end := start + length; {
|
||||||
// No loop to iterate
|
// No loop to iterate
|
||||||
case length == 0:
|
case length == 0:
|
||||||
|
@ -104,15 +106,17 @@ func (m *ordered[K, V]) Range(start, length int, fn func(int, K, V)) {
|
||||||
|
|
||||||
// RangeIf passes given function over the requested range of the map. Returns early on 'fn' -> false.
|
// RangeIf passes given function over the requested range of the map. Returns early on 'fn' -> false.
|
||||||
func (m *ordered[K, V]) RangeIf(start, length int, fn func(int, K, V) bool) {
|
func (m *ordered[K, V]) RangeIf(start, length int, fn func(int, K, V) bool) {
|
||||||
|
// Nil check
|
||||||
|
if fn == nil {
|
||||||
|
panic("nil func")
|
||||||
|
}
|
||||||
|
|
||||||
// Disallow writes
|
// Disallow writes
|
||||||
m.rnly = true
|
m.rnly = true
|
||||||
defer func() {
|
defer func() {
|
||||||
m.rnly = false
|
m.rnly = false
|
||||||
}()
|
}()
|
||||||
|
|
||||||
// Nil check
|
|
||||||
_ = fn
|
|
||||||
|
|
||||||
switch end := start + length; {
|
switch end := start + length; {
|
||||||
// No loop to iterate
|
// No loop to iterate
|
||||||
case length == 0:
|
case length == 0:
|
||||||
|
@ -163,8 +167,8 @@ func (m *ordered[K, V]) Truncate(sz int, fn func(K, V)) {
|
||||||
panic("index out of bounds")
|
panic("index out of bounds")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Nil check
|
||||||
if fn == nil {
|
if fn == nil {
|
||||||
// move nil check out of loop
|
|
||||||
fn = func(K, V) {}
|
fn = func(K, V) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
12
vendor/modules.txt
vendored
12
vendor/modules.txt
vendored
|
@ -7,8 +7,8 @@ codeberg.org/gruf/go-bytesize
|
||||||
# codeberg.org/gruf/go-byteutil v1.3.0
|
# codeberg.org/gruf/go-byteutil v1.3.0
|
||||||
## explicit; go 1.20
|
## explicit; go 1.20
|
||||||
codeberg.org/gruf/go-byteutil
|
codeberg.org/gruf/go-byteutil
|
||||||
# codeberg.org/gruf/go-cache/v3 v3.5.7
|
# codeberg.org/gruf/go-cache/v3 v3.6.1
|
||||||
## explicit; go 1.19
|
## explicit; go 1.20
|
||||||
codeberg.org/gruf/go-cache/v3
|
codeberg.org/gruf/go-cache/v3
|
||||||
codeberg.org/gruf/go-cache/v3/simple
|
codeberg.org/gruf/go-cache/v3/simple
|
||||||
codeberg.org/gruf/go-cache/v3/ttl
|
codeberg.org/gruf/go-cache/v3/ttl
|
||||||
|
@ -31,8 +31,8 @@ codeberg.org/gruf/go-ffmpreg/embed/ffprobe
|
||||||
# codeberg.org/gruf/go-iotools v0.0.0-20240710125620-934ae9c654cf
|
# codeberg.org/gruf/go-iotools v0.0.0-20240710125620-934ae9c654cf
|
||||||
## explicit; go 1.21
|
## explicit; go 1.21
|
||||||
codeberg.org/gruf/go-iotools
|
codeberg.org/gruf/go-iotools
|
||||||
# codeberg.org/gruf/go-kv v1.6.4
|
# codeberg.org/gruf/go-kv v1.6.5
|
||||||
## explicit; go 1.19
|
## explicit; go 1.20
|
||||||
codeberg.org/gruf/go-kv
|
codeberg.org/gruf/go-kv
|
||||||
codeberg.org/gruf/go-kv/format
|
codeberg.org/gruf/go-kv/format
|
||||||
# codeberg.org/gruf/go-list v0.0.0-20240425093752-494db03d641f
|
# codeberg.org/gruf/go-list v0.0.0-20240425093752-494db03d641f
|
||||||
|
@ -41,8 +41,8 @@ codeberg.org/gruf/go-list
|
||||||
# codeberg.org/gruf/go-mangler v1.4.1
|
# codeberg.org/gruf/go-mangler v1.4.1
|
||||||
## explicit; go 1.19
|
## explicit; go 1.19
|
||||||
codeberg.org/gruf/go-mangler
|
codeberg.org/gruf/go-mangler
|
||||||
# codeberg.org/gruf/go-maps v1.0.3
|
# codeberg.org/gruf/go-maps v1.0.4
|
||||||
## explicit; go 1.19
|
## explicit; go 1.20
|
||||||
codeberg.org/gruf/go-maps
|
codeberg.org/gruf/go-maps
|
||||||
# codeberg.org/gruf/go-mempool v0.0.0-20240507125005-cef10d64a760
|
# codeberg.org/gruf/go-mempool v0.0.0-20240507125005-cef10d64a760
|
||||||
## explicit; go 1.22.2
|
## explicit; go 1.22.2
|
||||||
|
|
Loading…
Reference in a new issue