laniakea now used as external module

This commit is contained in:
2026-01-28 16:52:42 +03:00
parent 6c47d05e9c
commit 5e5be54f1e
21 changed files with 59 additions and 48 deletions

View File

@@ -3,9 +3,9 @@ package mdb
import ( import (
"context" "context"
"kurumibot/database" "kurumibot/database"
"kurumibot/laniakea"
"time" "time"
"git.nix13.pw/scuroneko/laniakea"
"go.mongodb.org/mongo-driver/v2/bson" "go.mongodb.org/mongo-driver/v2/bson"
) )

View File

@@ -2,8 +2,8 @@ package mdb
import ( import (
"context" "context"
"git.nix13.pw/scuroneko/laniakea"
"kurumibot/database" "kurumibot/database"
"kurumibot/laniakea"
"time" "time"
) )

View File

@@ -3,9 +3,9 @@ package mdb
import ( import (
"context" "context"
"kurumibot/database" "kurumibot/database"
"kurumibot/laniakea"
"time" "time"
"git.nix13.pw/scuroneko/laniakea"
"go.mongodb.org/mongo-driver/v2/bson" "go.mongodb.org/mongo-driver/v2/bson"
) )

View File

@@ -2,10 +2,10 @@ package database
import ( import (
"fmt" "fmt"
"kurumibot/laniakea"
"log" "log"
"os" "os"
"git.nix13.pw/scuroneko/laniakea"
"go.mongodb.org/mongo-driver/v2/mongo" "go.mongodb.org/mongo-driver/v2/mongo"
"go.mongodb.org/mongo-driver/v2/mongo/options" "go.mongodb.org/mongo-driver/v2/mongo/options"
) )

View File

@@ -3,8 +3,8 @@ package psql
import ( import (
"database/sql" "database/sql"
"errors" "errors"
"kurumibot/laniakea"
"git.nix13.pw/scuroneko/laniakea"
"github.com/vinovest/sqlx" "github.com/vinovest/sqlx"
) )

View File

@@ -4,10 +4,11 @@ import (
"context" "context"
"database/sql" "database/sql"
"errors" "errors"
"kurumibot/laniakea"
"math" "math"
"time" "time"
"git.nix13.pw/scuroneko/laniakea"
"github.com/shopspring/decimal" "github.com/shopspring/decimal"
"github.com/vinovest/sqlx" "github.com/vinovest/sqlx"
) )

View File

@@ -2,7 +2,7 @@ package psql
import ( import (
"database/sql" "database/sql"
"kurumibot/laniakea" "git.nix13.pw/scuroneko/laniakea"
"github.com/shopspring/decimal" "github.com/shopspring/decimal"
"github.com/vinovest/sqlx" "github.com/vinovest/sqlx"

View File

@@ -1,8 +1,8 @@
package psql package psql
import ( import (
"git.nix13.pw/scuroneko/laniakea"
"kurumibot/database" "kurumibot/database"
"kurumibot/laniakea"
"github.com/shopspring/decimal" "github.com/shopspring/decimal"
"github.com/vinovest/sqlx" "github.com/vinovest/sqlx"

View File

@@ -3,7 +3,7 @@ package red
import ( import (
"context" "context"
"fmt" "fmt"
"kurumibot/laniakea" "git.nix13.pw/scuroneko/laniakea"
"github.com/google/uuid" "github.com/google/uuid"
"github.com/redis/go-redis/v9" "github.com/redis/go-redis/v9"

11
go.mod
View File

@@ -1,24 +1,25 @@
module kurumibot module kurumibot
go 1.25.5 go 1.25.6
require ( require (
github.com/fatih/color v1.18.0 git.nix13.pw/scuroneko/laniakea v0.2.4
github.com/google/uuid v1.6.0 github.com/google/uuid v1.6.0
github.com/joho/godotenv v1.5.1 github.com/joho/godotenv v1.5.1
github.com/lib/pq v1.10.9 github.com/lib/pq v1.10.9
github.com/redis/go-redis/v9 v9.17.2 github.com/redis/go-redis/v9 v9.17.3
github.com/shopspring/decimal v1.4.0 github.com/shopspring/decimal v1.4.0
github.com/vinovest/sqlx v1.7.1 github.com/vinovest/sqlx v1.7.1
go.mongodb.org/mongo-driver/v2 v2.4.1 go.mongodb.org/mongo-driver/v2 v2.4.2
) )
require ( require (
github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
github.com/fatih/color v1.18.0 // indirect
github.com/golang/snappy v1.0.0 // indirect github.com/golang/snappy v1.0.0 // indirect
github.com/klauspost/compress v1.18.2 // indirect github.com/klauspost/compress v1.18.2 // indirect
github.com/mattn/go-colorable v0.1.14 // indirect github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect github.com/mattn/go-isatty v0.0.20 // indirect
github.com/muir/sqltoken v0.1.0 // indirect github.com/muir/sqltoken v0.1.0 // indirect
github.com/stretchr/testify v1.11.1 // indirect github.com/stretchr/testify v1.11.1 // indirect

16
go.sum
View File

@@ -1,5 +1,7 @@
filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA= filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA=
filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4= filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4=
git.nix13.pw/scuroneko/laniakea v0.2.4 h1:+1rxudD8KSkKo6QTtzJ0G6i4ncYYNfNvUlSXbcobdK4=
git.nix13.pw/scuroneko/laniakea v0.2.4/go.mod h1:aANHsOZ88i0NAfl7ceP3aPnpretDZsx6LZzOq/QLl14=
github.com/bsm/ginkgo/v2 v2.12.0 h1:Ny8MWAHyOepLGlLKYmXG4IEkioBysk6GpaRTLC8zwWs= github.com/bsm/ginkgo/v2 v2.12.0 h1:Ny8MWAHyOepLGlLKYmXG4IEkioBysk6GpaRTLC8zwWs=
github.com/bsm/ginkgo/v2 v2.12.0/go.mod h1:SwYbGRRDovPVboqFv0tPTcG1sN61LM1Z4ARdbAV9g4c= github.com/bsm/ginkgo/v2 v2.12.0/go.mod h1:SwYbGRRDovPVboqFv0tPTcG1sN61LM1Z4ARdbAV9g4c=
github.com/bsm/gomega v1.27.10 h1:yeMWxP2pV2fG3FgAODIY8EiRE3dy0aeFYt4l7wh6yKA= github.com/bsm/gomega v1.27.10 h1:yeMWxP2pV2fG3FgAODIY8EiRE3dy0aeFYt4l7wh6yKA=
@@ -26,8 +28,9 @@ github.com/klauspost/compress v1.18.2 h1:iiPHWW0YrcFgpBYhsA6D1+fqHssJscY/Tm/y2Uq
github.com/klauspost/compress v1.18.2/go.mod h1:R0h/fSBs8DE4ENlcrlib3PsXS61voFxhIs2DeRhCvJ4= github.com/klauspost/compress v1.18.2/go.mod h1:R0h/fSBs8DE4ENlcrlib3PsXS61voFxhIs2DeRhCvJ4=
github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw= github.com/lib/pq v1.10.9 h1:YXG7RB+JIjhP29X+OtkiDnYaXQwpS4JEWq7dtCCRUEw=
github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o= github.com/lib/pq v1.10.9/go.mod h1:AlVN5x4E4T544tWzH6hKfbfQvm3HdbOxrmggDNAPY9o=
github.com/mattn/go-colorable v0.1.14 h1:9A9LHSqF/7dyVVX6g0U9cwm9pG3kP9gSzcuIPHPsaIE= github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=
github.com/mattn/go-colorable v0.1.14/go.mod h1:6LmQG8QLFO4G5z1gPvYEzlUgJ2wF+stgPZH1UqBm1s8= github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg=
github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM=
github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY=
github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y=
github.com/mattn/go-sqlite3 v1.14.16 h1:yOQRA0RpS5PFz/oikGwBEqvAWhWg5ufRz4ETLjwpU1Y= github.com/mattn/go-sqlite3 v1.14.16 h1:yOQRA0RpS5PFz/oikGwBEqvAWhWg5ufRz4ETLjwpU1Y=
@@ -36,8 +39,8 @@ github.com/muir/sqltoken v0.1.0 h1:edosEGsOClOZNfgGQNQSgxR9O6LiVefm2rDRqp2InuI=
github.com/muir/sqltoken v0.1.0/go.mod h1:lgOIORnKekMsuc/ZwdPOfwz/PtWLPCke43cEbT3uDuY= github.com/muir/sqltoken v0.1.0/go.mod h1:lgOIORnKekMsuc/ZwdPOfwz/PtWLPCke43cEbT3uDuY=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
github.com/redis/go-redis/v9 v9.17.2 h1:P2EGsA4qVIM3Pp+aPocCJ7DguDHhqrXNhVcEp4ViluI= github.com/redis/go-redis/v9 v9.17.3 h1:fN29NdNrE17KttK5Ndf20buqfDZwGNgoUr9qjl1DQx4=
github.com/redis/go-redis/v9 v9.17.2/go.mod h1:u410H11HMLoB+TP67dz8rL9s6QW2j76l0//kSOd3370= github.com/redis/go-redis/v9 v9.17.3/go.mod h1:u410H11HMLoB+TP67dz8rL9s6QW2j76l0//kSOd3370=
github.com/shopspring/decimal v1.4.0 h1:bxl37RwXBklmTi0C79JfXCEBD1cqqHt0bbgBAGFp81k= github.com/shopspring/decimal v1.4.0 h1:bxl37RwXBklmTi0C79JfXCEBD1cqqHt0bbgBAGFp81k=
github.com/shopspring/decimal v1.4.0/go.mod h1:gawqmDU56v4yIKSwfBSFip1HdCCXN8/+DMd9qYNcwME= github.com/shopspring/decimal v1.4.0/go.mod h1:gawqmDU56v4yIKSwfBSFip1HdCCXN8/+DMd9qYNcwME=
github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U=
@@ -53,8 +56,8 @@ github.com/xdg-go/stringprep v1.0.4/go.mod h1:mPGuuIYwz7CmR2bT9j4GbQqutWS1zV24gi
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 h1:ilQV1hzziu+LLM3zUTJ0trRztfwgjqKnBWNtSRkbmwM= github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 h1:ilQV1hzziu+LLM3zUTJ0trRztfwgjqKnBWNtSRkbmwM=
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78/go.mod h1:aL8wCCfTfSfmXjznFBSZNN13rSJjlIOI1fUNAtF7rmI= github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78/go.mod h1:aL8wCCfTfSfmXjznFBSZNN13rSJjlIOI1fUNAtF7rmI=
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY= github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
go.mongodb.org/mongo-driver/v2 v2.4.1 h1:hGDMngUao03OVQ6sgV5csk+RWOIkF+CuLsTPobNMGNI= go.mongodb.org/mongo-driver/v2 v2.4.2 h1:HrJ+Auygxceby9MLp3YITobef5a8Bv4HcPFIkml1U7U=
go.mongodb.org/mongo-driver/v2 v2.4.1/go.mod h1:jHeEDJHJq7tm6ZF45Issun9dbogjfnPySb1vXA7EeAI= go.mongodb.org/mongo-driver/v2 v2.4.2/go.mod h1:jHeEDJHJq7tm6ZF45Issun9dbogjfnPySb1vXA7EeAI=
golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc=
golang.org/x/crypto v0.47.0 h1:V6e3FRj+n4dbpw86FJ8Fv7XVOql7TEwpHapKoMJ/GO8= golang.org/x/crypto v0.47.0 h1:V6e3FRj+n4dbpw86FJ8Fv7XVOql7TEwpHapKoMJ/GO8=
@@ -72,6 +75,7 @@ golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7w
golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20210615035016-665e8c7367d1/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
golang.org/x/sys v0.40.0 h1:DBZZqJ2Rkml6QMQsZywtnjnnGvHza6BTfYFWY9kjEWQ= golang.org/x/sys v0.40.0 h1:DBZZqJ2Rkml6QMQsZywtnjnnGvHza6BTfYFWY9kjEWQ=
golang.org/x/sys v0.40.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks= golang.org/x/sys v0.40.0/go.mod h1:OgkHotnGiDImocRcuBABYBEXf8A9a87e/uXjp9XT3ks=

Submodule laniakea deleted from 05dadc3de3

View File

@@ -1,8 +1,9 @@
package main package main
import ( import (
"git.nix13.pw/scuroneko/laniakea"
"kurumibot/database" "kurumibot/database"
"kurumibot/laniakea"
"kurumibot/plugins" "kurumibot/plugins"
"github.com/joho/godotenv" "github.com/joho/godotenv"

View File

@@ -3,7 +3,7 @@ package plugins
import ( import (
"kurumibot/database/psql" "kurumibot/database/psql"
"kurumibot/laniakea" "git.nix13.pw/scuroneko/laniakea"
) )
func RegisterAdmin(b *laniakea.Bot) { func RegisterAdmin(b *laniakea.Bot) {

View File

@@ -11,8 +11,7 @@ import (
"strings" "strings"
"time" "time"
"kurumibot/laniakea" "git.nix13.pw/scuroneko/laniakea"
"github.com/shopspring/decimal" "github.com/shopspring/decimal"
) )

View File

@@ -3,9 +3,10 @@ package plugins
import ( import (
"fmt" "fmt"
"kurumibot/database/mdb" "kurumibot/database/mdb"
"kurumibot/laniakea"
"strings" "strings"
"time" "time"
"git.nix13.pw/scuroneko/laniakea"
) )
func InitLogsPlugin() {} func InitLogsPlugin() {}
@@ -32,22 +33,27 @@ func logMiddleware(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) {
} }
} }
func DatabaseLogger(db *laniakea.DatabaseContext) *laniakea.LoggerWriter { type DatabaseWriter struct {
w := &laniakea.LoggerWriter{} laniakea.LoggerWriter
w.SetFn(func(level laniakea.LogLevel, prefix, traceback string, m []any) error { db *laniakea.DatabaseContext
t := time.Now() }
entry := &mdb.ConsoleLogEntry{
Level: level.GetName(), func (w *DatabaseWriter) Print(level laniakea.LogLevel, prefix string, traceback []*laniakea.MethodTraceback, messages ...any) error {
Prefix: prefix, t := time.Now()
Traceback: traceback, entry := &mdb.ConsoleLogEntry{
Message: strings.Join(laniakea.Map(m, func(el any) string { Level: level.GetName(),
return fmt.Sprintf("%v", el) Prefix: prefix,
}), "\n"), Traceback: laniakea.FormatFullTraceback(traceback),
Time: t, Message: strings.Join(laniakea.Map(messages, func(el any) string {
TimeStamp: t.Unix(), return fmt.Sprintf("%v", el)
} }), "\n"),
err := mdb.WriteConsoleLog(db, entry) Time: t,
return err TimeStamp: t.Unix(),
}) }
err := mdb.WriteConsoleLog(w.db, entry)
return err
}
func DatabaseLogger(db *laniakea.DatabaseContext) laniakea.LoggerWriter {
w := &DatabaseWriter{db: db}
return w return w
} }

View File

@@ -1,6 +1,6 @@
package plugins package plugins
import "kurumibot/laniakea" import "git.nix13.pw/scuroneko/laniakea"
func RegisterRelations(b *laniakea.Bot) { func RegisterRelations(b *laniakea.Bot) {

View File

@@ -7,12 +7,12 @@ import (
"kurumibot/database/mdb" "kurumibot/database/mdb"
"kurumibot/database/psql" "kurumibot/database/psql"
"kurumibot/database/red" "kurumibot/database/red"
"kurumibot/laniakea"
"kurumibot/utils" "kurumibot/utils"
"kurumibot/utils/ai" "kurumibot/utils/ai"
"strconv" "strconv"
"strings" "strings"
"git.nix13.pw/scuroneko/laniakea"
"github.com/google/uuid" "github.com/google/uuid"
) )

View File

@@ -1,6 +1,6 @@
package plugins package plugins
import "kurumibot/laniakea" import "git.nix13.pw/scuroneko/laniakea"
func RegisterService(bot *laniakea.Bot) { func RegisterService(bot *laniakea.Bot) {
p := laniakea.NewPlugin("service") p := laniakea.NewPlugin("service")

View File

@@ -8,7 +8,7 @@ import (
"strings" "strings"
"time" "time"
"kurumibot/laniakea" "git.nix13.pw/scuroneko/laniakea"
) )
func RegisterWaifus(bot *laniakea.Bot) { func RegisterWaifus(bot *laniakea.Bot) {

View File

@@ -5,8 +5,8 @@ import (
"encoding/json" "encoding/json"
"errors" "errors"
"fmt" "fmt"
"git.nix13.pw/scuroneko/laniakea"
"io" "io"
"kurumibot/laniakea"
"net/http" "net/http"
"net/url" "net/url"
"os" "os"