- Add support for the OAuth Device Authorization Flow (RFC 8628) in the OpenAPI service, allowing devices with limited input capabilities to obtain authorization. - Implement `DeviceAuthorization()` and `AuthorizeDevice()` methods to handle device and user code generation, storage, and authorization. - Update the OAuth endpoints to include `/device/authorize` for user code authorization and fix the discovery endpoint path for device authorization. - Introduce MongoDB service in CI workflows for testing and enhance the unit test workflow with Redis setup. - Update Go module dependencies to include necessary packages for the new features. This commit significantly advances the OAuth capabilities of the application, enabling a more flexible authorization process for devices.
266 lines
12 KiB
Modula-2
266 lines
12 KiB
Modula-2
module github.com/yaoapp/yao
|
|
|
|
go 1.25.0
|
|
|
|
require (
|
|
github.com/PuerkitoBio/goquery v1.10.3
|
|
github.com/aws/aws-sdk-go-v2 v1.36.3
|
|
github.com/aws/aws-sdk-go-v2/credentials v1.17.67
|
|
github.com/aws/aws-sdk-go-v2/service/s3 v1.79.3
|
|
github.com/blang/semver v3.5.1+incompatible
|
|
github.com/bwmarrin/discordgo v0.29.0
|
|
github.com/caarlos0/env/v6 v6.10.1
|
|
github.com/charmbracelet/bubbletea v1.3.10
|
|
github.com/charmbracelet/lipgloss v1.1.0
|
|
github.com/dchest/captcha v1.1.0
|
|
github.com/docker/docker v28.5.2+incompatible
|
|
github.com/docker/go-connections v0.5.0
|
|
github.com/elazarl/go-bindata-assetfs v1.0.1
|
|
github.com/emersion/go-imap v1.2.1
|
|
github.com/evanw/esbuild v0.25.4
|
|
github.com/expr-lang/expr v1.17.7
|
|
github.com/fatih/color v1.18.0
|
|
github.com/fsnotify/fsnotify v1.9.0
|
|
github.com/gin-gonic/gin v1.10.1
|
|
github.com/go-telegram/bot v1.19.0
|
|
github.com/golang-jwt/jwt/v4 v4.5.2
|
|
github.com/google/uuid v1.6.0
|
|
github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674
|
|
github.com/gotd/td v0.140.0
|
|
github.com/hashicorp/go-multierror v1.1.1
|
|
github.com/joho/godotenv v1.5.1
|
|
github.com/json-iterator/go v1.1.12
|
|
github.com/kaptinlin/jsonrepair v0.1.1
|
|
github.com/kaptinlin/jsonschema v0.6.1
|
|
github.com/larksuite/oapi-sdk-go/v3 v3.5.3
|
|
github.com/matoous/go-nanoid/v2 v2.1.0
|
|
github.com/mattn/go-isatty v0.0.20
|
|
github.com/mozillazg/go-pinyin v0.20.0
|
|
github.com/open-dingtalk/dingtalk-stream-sdk-go v0.9.1
|
|
github.com/pierrec/lz4/v4 v4.1.25
|
|
github.com/pkoukk/tiktoken-go v0.1.7
|
|
github.com/pquerna/otp v1.5.0
|
|
github.com/rhysd/go-github-selfupdate v1.2.3
|
|
github.com/spf13/cast v1.9.2
|
|
github.com/spf13/cobra v1.9.1
|
|
github.com/stretchr/testify v1.11.1
|
|
github.com/xuri/excelize/v2 v2.9.1
|
|
github.com/yaoapp/gou v0.10.3
|
|
github.com/yaoapp/kun v0.9.0
|
|
github.com/yaoapp/xun v0.9.0
|
|
go.mongodb.org/mongo-driver v1.17.3
|
|
golang.org/x/crypto v0.48.0
|
|
golang.org/x/net v0.50.0
|
|
golang.org/x/sys v0.41.0
|
|
golang.org/x/text v0.34.0
|
|
google.golang.org/grpc v1.78.0
|
|
google.golang.org/protobuf v1.36.11
|
|
gopkg.in/natefinch/lumberjack.v2 v2.2.1
|
|
gopkg.in/yaml.v3 v3.0.1
|
|
k8s.io/api v0.34.1
|
|
k8s.io/apimachinery v0.34.1
|
|
k8s.io/client-go v0.34.1
|
|
rogchap.com/v8go v0.9.0
|
|
)
|
|
|
|
require (
|
|
filippo.io/edwards25519 v1.1.1 // indirect
|
|
github.com/JohannesKaufmann/dom v0.2.0 // indirect
|
|
github.com/JohannesKaufmann/html-to-markdown/v2 v2.5.0 // indirect
|
|
github.com/Microsoft/go-winio v0.6.2 // indirect
|
|
github.com/TylerBrock/colorjson v0.0.0-20200706003622-8a50f05110d2 // indirect
|
|
github.com/andybalholm/cascadia v1.3.3 // indirect
|
|
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.10 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.34 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.34 // indirect
|
|
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.34 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.3 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.7.1 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.15 // indirect
|
|
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.15 // indirect
|
|
github.com/aws/smithy-go v1.22.3 // indirect
|
|
github.com/aymanbagabas/go-osc52/v2 v2.0.1 // indirect
|
|
github.com/blang/semver/v4 v4.0.0 // indirect
|
|
github.com/boombuler/barcode v1.0.1-0.20190219062509-6c824513bacc // indirect
|
|
github.com/bytedance/sonic v1.13.2 // indirect
|
|
github.com/bytedance/sonic/loader v0.2.4 // indirect
|
|
github.com/cenkalti/backoff/v4 v4.3.0 // indirect
|
|
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
|
github.com/charmbracelet/colorprofile v0.2.3-0.20250311203215-f60798e515dc // indirect
|
|
github.com/charmbracelet/x/ansi v0.10.1 // indirect
|
|
github.com/charmbracelet/x/cellbuf v0.0.13-0.20250311204145-2c3ea96c31dd // indirect
|
|
github.com/charmbracelet/x/term v0.2.1 // indirect
|
|
github.com/cloudwego/base64x v0.1.5 // indirect
|
|
github.com/coder/websocket v1.8.14 // indirect
|
|
github.com/containerd/errdefs v1.0.0 // indirect
|
|
github.com/containerd/errdefs/pkg v0.3.0 // indirect
|
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
|
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
|
|
github.com/distribution/reference v0.6.0 // indirect
|
|
github.com/dlclark/regexp2 v1.11.5 // indirect
|
|
github.com/docker/go-units v0.5.0 // indirect
|
|
github.com/emersion/go-sasl v0.0.0-20241020182733-b788ff22d5a6 // indirect
|
|
github.com/emicklei/go-restful/v3 v3.13.0 // indirect
|
|
github.com/erikgeiser/coninput v0.0.0-20211004153227-1c3628e74d0f // indirect
|
|
github.com/felixge/httpsnoop v1.0.4 // indirect
|
|
github.com/fxamacker/cbor/v2 v2.9.0 // indirect
|
|
github.com/gabriel-vasile/mimetype v1.4.9 // indirect
|
|
github.com/ghodss/yaml v1.0.0 // indirect
|
|
github.com/gin-contrib/sse v1.1.0 // indirect
|
|
github.com/go-errors/errors v1.5.1 // indirect
|
|
github.com/go-faster/errors v0.7.1 // indirect
|
|
github.com/go-faster/jx v1.2.0 // indirect
|
|
github.com/go-faster/xor v1.0.0 // indirect
|
|
github.com/go-faster/yaml v0.4.6 // indirect
|
|
github.com/go-json-experiment/json v0.0.0-20251027170946-4849db3c2f7e // indirect
|
|
github.com/go-logr/logr v1.4.3 // indirect
|
|
github.com/go-logr/stdr v1.2.2 // indirect
|
|
github.com/go-openapi/jsonpointer v0.21.0 // indirect
|
|
github.com/go-openapi/jsonreference v0.20.2 // indirect
|
|
github.com/go-openapi/swag v0.23.0 // indirect
|
|
github.com/go-playground/locales v0.14.1 // indirect
|
|
github.com/go-playground/universal-translator v0.18.1 // indirect
|
|
github.com/go-playground/validator/v10 v10.26.0 // indirect
|
|
github.com/go-redis/redis/v8 v8.11.5 // indirect
|
|
github.com/go-sourcemap/sourcemap v2.1.4+incompatible // indirect
|
|
github.com/go-sql-driver/mysql v1.9.2 // indirect
|
|
github.com/goccy/go-json v0.10.5 // indirect
|
|
github.com/goccy/go-yaml v1.18.0 // indirect
|
|
github.com/gogo/protobuf v1.3.2 // indirect
|
|
github.com/golang/protobuf v1.5.4 // indirect
|
|
github.com/golang/snappy v1.0.0 // indirect
|
|
github.com/google/gnostic-models v0.7.0 // indirect
|
|
github.com/google/go-github/v30 v30.1.0 // indirect
|
|
github.com/google/go-querystring v1.1.0 // indirect
|
|
github.com/gotd/ige v0.2.2 // indirect
|
|
github.com/gotd/neo v0.1.5 // indirect
|
|
github.com/hashicorp/errwrap v1.1.0 // indirect
|
|
github.com/hashicorp/go-hclog v1.6.3 // indirect
|
|
github.com/hashicorp/go-plugin v1.6.3 // indirect
|
|
github.com/hashicorp/golang-lru v1.0.2 // indirect
|
|
github.com/hashicorp/yamux v0.1.2 // indirect
|
|
github.com/hhrutter/lzw v1.0.0 // indirect
|
|
github.com/hhrutter/pkcs7 v0.2.0 // indirect
|
|
github.com/hhrutter/tiff v1.0.2 // indirect
|
|
github.com/inconshreveable/go-update v0.0.0-20160112193335-8152e7eb6ccf // indirect
|
|
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
|
github.com/jmoiron/sqlx v1.4.0 // indirect
|
|
github.com/josharian/intern v1.0.0 // indirect
|
|
github.com/kaptinlin/go-i18n v0.2.0 // indirect
|
|
github.com/kaptinlin/jsonpointer v0.4.6 // indirect
|
|
github.com/kaptinlin/messageformat-go v0.4.6 // indirect
|
|
github.com/klauspost/compress v1.18.4 // indirect
|
|
github.com/klauspost/cpuid/v2 v2.2.10 // indirect
|
|
github.com/leodido/go-urn v1.4.0 // indirect
|
|
github.com/lib/pq v1.10.9 // indirect
|
|
github.com/lucasb-eyer/go-colorful v1.3.0 // indirect
|
|
github.com/mailru/easyjson v0.7.7 // indirect
|
|
github.com/mark3labs/mcp-go v0.32.0 // indirect
|
|
github.com/mattn/go-colorable v0.1.14 // indirect
|
|
github.com/mattn/go-localereader v0.0.1 // indirect
|
|
github.com/mattn/go-runewidth v0.0.16 // indirect
|
|
github.com/mattn/go-sqlite3 v1.14.28 // indirect
|
|
github.com/miekg/dns v1.1.66 // indirect
|
|
github.com/moby/docker-image-spec v1.3.1 // indirect
|
|
github.com/moby/spdystream v0.5.0 // indirect
|
|
github.com/moby/sys/atomicwriter v0.1.0 // indirect
|
|
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
|
|
github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee // indirect
|
|
github.com/montanaflynn/stats v0.7.1 // indirect
|
|
github.com/muesli/ansi v0.0.0-20230316100256-276c6243b2f6 // indirect
|
|
github.com/muesli/cancelreader v0.2.2 // indirect
|
|
github.com/muesli/termenv v0.16.0 // indirect
|
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
|
github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect
|
|
github.com/neo4j/neo4j-go-driver/v5 v5.28.1 // indirect
|
|
github.com/ogen-go/ogen v1.19.0 // indirect
|
|
github.com/oklog/run v1.1.0 // indirect
|
|
github.com/onsi/ginkgo/v2 v2.25.1 // indirect
|
|
github.com/onsi/gomega v1.38.2 // indirect
|
|
github.com/opencontainers/go-digest v1.0.0 // indirect
|
|
github.com/opencontainers/image-spec v1.1.1 // indirect
|
|
github.com/pdfcpu/pdfcpu v0.11.0 // indirect
|
|
github.com/pelletier/go-toml/v2 v2.2.4 // indirect
|
|
github.com/pkg/errors v0.9.1 // indirect
|
|
github.com/pmezard/go-difflib v1.0.0 // indirect
|
|
github.com/qdrant/go-client v1.14.0 // indirect
|
|
github.com/redis/go-redis/v9 v9.17.2 // indirect
|
|
github.com/richardlehane/mscfb v1.0.4 // indirect
|
|
github.com/richardlehane/msoleps v1.0.4 // indirect
|
|
github.com/rivo/uniseg v0.4.7 // indirect
|
|
github.com/robfig/cron/v3 v3.0.1 // indirect
|
|
github.com/segmentio/asm v1.2.1 // indirect
|
|
github.com/sergi/go-diff v1.4.0 // indirect
|
|
github.com/shopspring/decimal v1.4.0 // indirect
|
|
github.com/sirupsen/logrus v1.9.4 // indirect
|
|
github.com/spf13/pflag v1.0.9 // indirect
|
|
github.com/tcnksm/go-gitconfig v0.1.2 // indirect
|
|
github.com/tidwall/btree v1.7.0 // indirect
|
|
github.com/tidwall/buntdb v1.3.2 // indirect
|
|
github.com/tidwall/gjson v1.18.0 // indirect
|
|
github.com/tidwall/grect v0.1.4 // indirect
|
|
github.com/tidwall/match v1.1.1 // indirect
|
|
github.com/tidwall/pretty v1.2.1 // indirect
|
|
github.com/tidwall/rtred v0.1.2 // indirect
|
|
github.com/tidwall/tinyqueue v0.1.1 // indirect
|
|
github.com/tiendc/go-deepcopy v1.6.0 // indirect
|
|
github.com/twitchyliquid64/golang-asm v0.15.1 // indirect
|
|
github.com/ugorji/go/codec v1.2.12 // indirect
|
|
github.com/ulikunitz/xz v0.5.14 // indirect
|
|
github.com/x448/float16 v0.8.4 // indirect
|
|
github.com/xdg-go/pbkdf2 v1.0.0 // indirect
|
|
github.com/xdg-go/scram v1.1.2 // indirect
|
|
github.com/xdg-go/stringprep v1.0.4 // indirect
|
|
github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect
|
|
github.com/xuri/efp v0.0.1 // indirect
|
|
github.com/xuri/nfp v0.0.1 // indirect
|
|
github.com/yosida95/uritemplate/v3 v3.0.2 // indirect
|
|
github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect
|
|
github.com/yuin/goldmark v1.7.16 // indirect
|
|
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
|
|
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 // indirect
|
|
go.opentelemetry.io/otel v1.40.0 // indirect
|
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.40.0 // indirect
|
|
go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.35.0 // indirect
|
|
go.opentelemetry.io/otel/metric v1.40.0 // indirect
|
|
go.opentelemetry.io/otel/trace v1.40.0 // indirect
|
|
go.opentelemetry.io/proto/otlp v1.9.0 // indirect
|
|
go.uber.org/atomic v1.11.0 // indirect
|
|
go.uber.org/multierr v1.11.0 // indirect
|
|
go.uber.org/zap v1.27.1 // indirect
|
|
go.yaml.in/yaml/v2 v2.4.2 // indirect
|
|
go.yaml.in/yaml/v3 v3.0.4 // indirect
|
|
golang.org/x/arch v0.17.0 // indirect
|
|
golang.org/x/exp v0.0.0-20241108190413-2d47ceb2692f // indirect
|
|
golang.org/x/image v0.29.0 // indirect
|
|
golang.org/x/mod v0.33.0 // indirect
|
|
golang.org/x/oauth2 v0.32.0 // indirect
|
|
golang.org/x/sync v0.19.0 // indirect
|
|
golang.org/x/term v0.40.0 // indirect
|
|
golang.org/x/time v0.14.0 // indirect
|
|
golang.org/x/tools v0.42.0 // indirect
|
|
google.golang.org/genproto/googleapis/api v0.0.0-20260226221140-a57be14db171 // indirect
|
|
google.golang.org/genproto/googleapis/rpc v0.0.0-20260226221140-a57be14db171 // indirect
|
|
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
|
|
gopkg.in/inf.v0 v0.9.1 // indirect
|
|
gopkg.in/yaml.v2 v2.4.0 // indirect
|
|
gotest.tools/v3 v3.5.2 // indirect
|
|
k8s.io/klog/v2 v2.130.1 // indirect
|
|
k8s.io/kube-openapi v0.0.0-20250710124328-f3f2b991d03b // indirect
|
|
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397 // indirect
|
|
rsc.io/qr v0.2.0 // indirect
|
|
sigs.k8s.io/json v0.0.0-20241014173422-cfa47c3a1cc8 // indirect
|
|
sigs.k8s.io/randfill v1.0.0 // indirect
|
|
sigs.k8s.io/structured-merge-diff/v6 v6.3.0 // indirect
|
|
sigs.k8s.io/yaml v1.6.0 // indirect
|
|
)
|
|
|
|
// go env -w GOPRIVATE=github.com/yaoapp/*
|
|
|
|
replace github.com/yaoapp/kun => ../kun // kun local
|
|
|
|
replace github.com/yaoapp/xun => ../xun // xun local
|
|
|
|
replace github.com/yaoapp/gou => ../gou // gou local
|
|
|
|
replace rogchap.com/v8go => ../v8go
|