mirror of
https://github.com/mattermost/mattermost.git
synced 2026-02-03 20:40:00 -05:00
* initial commit for POC of Plugin Bridge * Updates * POC for plugin bridge * Updates from collaboration * Fixes * Refactor Plugin Bridge to use HTTP/REST instead of RPC - Remove ExecuteBridgeCall hook and Context.SourcePluginId - Implement HTTP-based bridge using existing PluginHTTP infrastructure - Add CallPlugin API method with endpoint parameter instead of method name - Update CallPluginBridge to construct HTTP POST requests - Add proper headers: Mattermost-User-Id, Mattermost-Plugin-ID - Use 'com.mattermost.server' as plugin ID for core server calls - Update ai.go to use REST endpoint /inter-plugin/v1/completion - Add comprehensive spec documentation in server/spec.md - Add MIGRATION_GUIDE.md for plugin developers - Fix 401/404 issues by setting correct headers and URL paths * Improve Plugin Bridge security and architecture - Create ServeInternalPluginRequest for internal plugin calls (core + plugin-to-plugin) - Move header-setting logic from CallPluginBridge to ServeInternalPluginRequest - Improve separation of concerns: business logic vs HTTP transport - Add security documentation explaining header protection Security Improvements: - ServeInternalPluginRequest is NOT exposed as HTTP route (internal only) - Headers (Mattermost-User-Id, Mattermost-Plugin-ID) are set by trusted server code - External requests cannot spoof these headers (stripped by servePluginRequest) - Core calls use 'com.mattermost.server' as plugin ID for authorization - Plugin-to-plugin calls use real plugin ID (enforced by server) Backward Compatibility: - Keep ServeInterPluginRequest for existing API.PluginHTTP callers (deprecated) - All tests pass Docs: - Update spec.md with security model explanation - Update MIGRATION_GUIDE.md with correct header usage examples * Space * cursor please stop creating markdown files * Fix style * Fix i18n, linter * REMOVE MARKDOWN * Remove CallPlugin method from plugin API interface Per review feedback, this method is no longer needed. Co-authored-by: Nick Misasi <nickmisasi@users.noreply.github.com> * Remove CallPlugin method implementation from PluginAPI Co-authored-by: Nick Misasi <nickmisasi@users.noreply.github.com> * fixes * Add AI OpenAPI spec * fix openapi spec * Use agents client (#34225) * Use agents client * Remove default agent * Fixes * fix: modify system prompts to ensure JSON is being returned * remove webapp changes * Add feature flags for rewrites and ai bridge, clean up * Remove comments that aren't helpful * Fix i18n * Remove rewrites * Fix tests * Fix i18n * adjust i18n again * Add back translations * Remove leftover mock code * remove model file * Make the real substitutions * Include a basic invokation of the client with noop to ensure build works * Remove unneeded change * Updates from review * Fixes * Use v1.5.0 of agents plugin --------- Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com> Co-authored-by: Nick Misasi <nickmisasi@users.noreply.github.com> Co-authored-by: Christopher Speller <crspeller@gmail.com> Co-authored-by: Felipe Martin <me@fmartingr.com> Co-authored-by: Mattermost Build <build@mattermost.com>
215 lines
10 KiB
Modula-2
215 lines
10 KiB
Modula-2
module github.com/mattermost/mattermost/server/v8
|
|
|
|
go 1.24.6
|
|
|
|
require (
|
|
code.sajari.com/docconv/v2 v2.0.0-pre.4
|
|
github.com/Masterminds/semver/v3 v3.4.0
|
|
github.com/anthonynsimon/bild v0.14.0
|
|
github.com/avct/uasurfer v0.0.0-20250915105040-a942f6fb6edc
|
|
github.com/aws/aws-sdk-go v1.55.8
|
|
github.com/bep/imagemeta v0.12.0
|
|
github.com/blang/semver/v4 v4.0.0
|
|
github.com/cespare/xxhash/v2 v2.3.0
|
|
github.com/dgryski/dgoogauth v0.0.0-20190221195224-5a805980a5f3
|
|
github.com/dyatlov/go-opengraph/opengraph v0.0.0-20220524092352-606d7b1e5f8a
|
|
github.com/elastic/go-elasticsearch/v8 v8.19.0
|
|
github.com/fatih/color v1.18.0
|
|
github.com/fsnotify/fsnotify v1.9.0
|
|
github.com/getsentry/sentry-go v0.36.0
|
|
github.com/golang-jwt/jwt/v5 v5.3.0
|
|
github.com/golang-migrate/migrate/v4 v4.19.0
|
|
github.com/golang/freetype v0.0.0-20170609003504-e2365dfdc4a0
|
|
github.com/golang/mock v1.6.0
|
|
github.com/gorilla/handlers v1.5.2
|
|
github.com/gorilla/mux v1.8.1
|
|
github.com/gorilla/schema v1.4.1
|
|
github.com/gorilla/websocket v1.5.3
|
|
github.com/h2non/go-is-svg v0.0.0-20160927212452-35e8c4b0612c
|
|
github.com/hako/durafmt v0.0.0-20210608085754-5c1018a4e16b
|
|
github.com/hashicorp/go-multierror v1.1.1
|
|
github.com/hashicorp/memberlist v0.5.3
|
|
github.com/icrowley/fake v0.0.0-20240710202011-f797eb4a99c0
|
|
github.com/isacikgoz/prompt v0.1.0
|
|
github.com/jaytaylor/html2text v0.0.0-20230321000545-74c2419ad056
|
|
github.com/jmoiron/sqlx v1.4.0
|
|
github.com/klauspost/compress v1.18.0
|
|
github.com/ledongthuc/pdf v0.0.0-20250511090121-5959a4027728
|
|
github.com/lib/pq v1.10.9
|
|
github.com/mattermost/go-i18n v1.11.1-0.20211013152124-5c415071e404
|
|
github.com/mattermost/gosaml2 v0.10.0
|
|
github.com/mattermost/ldap v0.0.0-20231116144001-0f480c025956
|
|
github.com/mattermost/logr/v2 v2.0.22
|
|
github.com/mattermost/mattermost/server/public v0.1.20
|
|
github.com/mattermost/morph v1.1.0
|
|
github.com/mattermost/rsc v0.0.0-20160330161541-bbaefb05eaa0
|
|
github.com/mattermost/squirrel v0.5.0
|
|
github.com/mholt/archives v0.1.5
|
|
github.com/microcosm-cc/bluemonday v1.0.27
|
|
github.com/minio/minio-go/v7 v7.0.95
|
|
github.com/oov/psd v0.0.0-20220121172623-5db5eafcecbb
|
|
github.com/opensearch-project/opensearch-go/v4 v4.5.0
|
|
github.com/pkg/errors v0.9.1
|
|
github.com/prometheus/client_golang v1.23.2
|
|
github.com/prometheus/client_model v0.6.2
|
|
github.com/redis/rueidis v1.0.67
|
|
github.com/reflog/dateconstraints v0.2.1
|
|
github.com/rs/cors v1.11.1
|
|
github.com/sirupsen/logrus v1.9.3
|
|
github.com/spf13/cobra v1.10.1
|
|
github.com/spf13/viper v1.21.0
|
|
github.com/splitio/go-client/v6 v6.8.0
|
|
github.com/stretchr/testify v1.11.1
|
|
github.com/throttled/throttled v2.2.5+incompatible
|
|
github.com/tinylib/msgp v1.4.0
|
|
github.com/tylerb/graceful v1.2.15
|
|
github.com/vmihailenco/msgpack/v5 v5.4.1
|
|
github.com/wiggin77/merror v1.0.5
|
|
github.com/xtgo/uuid v0.0.0-20140804021211-a0b114877d4c
|
|
github.com/yuin/goldmark v1.7.13
|
|
golang.org/x/crypto v0.43.0
|
|
golang.org/x/image v0.32.0
|
|
golang.org/x/net v0.46.0
|
|
golang.org/x/sync v0.17.0
|
|
golang.org/x/term v0.36.0
|
|
gopkg.in/mail.v2 v2.3.1
|
|
gopkg.in/yaml.v3 v3.0.1
|
|
)
|
|
|
|
require (
|
|
filippo.io/edwards25519 v1.1.0 // indirect
|
|
github.com/JalfResi/justext v0.0.0-20221106200834-be571e3e3052 // indirect
|
|
github.com/PuerkitoBio/goquery v1.10.3 // indirect
|
|
github.com/STARRY-S/zip v0.2.3 // indirect
|
|
github.com/advancedlogic/GoOse v0.0.0-20231203033844-ae6b36caf275 // indirect
|
|
github.com/andybalholm/brotli v1.2.0 // indirect
|
|
github.com/andybalholm/cascadia v1.3.3 // indirect
|
|
github.com/araddon/dateparse v0.0.0-20210429162001-6b43995a97de // indirect
|
|
github.com/armon/go-metrics v0.4.1 // indirect
|
|
github.com/aymerick/douceur v0.2.0 // indirect
|
|
github.com/beevik/etree v1.6.0 // indirect
|
|
github.com/beorn7/perks v1.0.1 // indirect
|
|
github.com/bits-and-blooms/bitset v1.24.1 // indirect
|
|
github.com/bits-and-blooms/bloom/v3 v3.7.0 // indirect
|
|
github.com/bodgit/plumbing v1.3.0 // indirect
|
|
github.com/bodgit/sevenzip v1.6.1 // indirect
|
|
github.com/bodgit/windows v1.0.1 // indirect
|
|
github.com/clipperhouse/uax29/v2 v2.2.0 // indirect
|
|
github.com/corpix/uarand v0.2.0 // indirect
|
|
github.com/cpuguy83/go-md2man/v2 v2.0.7 // indirect
|
|
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
|
|
github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect
|
|
github.com/dsnet/compress v0.0.2-0.20230904184137-39efe44ab707 // indirect
|
|
github.com/dustin/go-humanize v1.0.1 // indirect
|
|
github.com/elastic/elastic-transport-go/v8 v8.7.0 // indirect
|
|
github.com/fatih/set v0.2.1 // indirect
|
|
github.com/felixge/httpsnoop v1.0.4 // indirect
|
|
github.com/francoispqt/gojay v1.2.13 // indirect
|
|
github.com/gigawattio/window v0.0.0-20180317192513-0f5467e35573 // indirect
|
|
github.com/go-asn1-ber/asn1-ber v1.5.7 // indirect
|
|
github.com/go-ini/ini v1.67.0 // indirect
|
|
github.com/go-logr/logr v1.4.3 // indirect
|
|
github.com/go-logr/stdr v1.2.2 // indirect
|
|
github.com/go-resty/resty/v2 v2.16.5 // indirect
|
|
github.com/go-sql-driver/mysql v1.9.3 // indirect
|
|
github.com/go-viper/mapstructure/v2 v2.4.0 // indirect
|
|
github.com/goccy/go-json v0.10.5 // indirect
|
|
github.com/golang/protobuf v1.5.4 // indirect
|
|
github.com/gomodule/redigo v2.0.0+incompatible // indirect
|
|
github.com/google/btree v1.1.3 // indirect
|
|
github.com/google/uuid v1.6.0 // indirect
|
|
github.com/gopherjs/gopherjs v1.17.2 // indirect
|
|
github.com/gorilla/css v1.0.1 // indirect
|
|
github.com/hashicorp/errwrap v1.1.0 // indirect
|
|
github.com/hashicorp/go-hclog v1.6.3 // indirect
|
|
github.com/hashicorp/go-immutable-radix v1.3.1 // indirect
|
|
github.com/hashicorp/go-metrics v0.5.4 // indirect
|
|
github.com/hashicorp/go-msgpack/v2 v2.1.5 // indirect
|
|
github.com/hashicorp/go-plugin v1.7.0 // indirect
|
|
github.com/hashicorp/go-sockaddr v1.0.7 // indirect
|
|
github.com/hashicorp/golang-lru v1.0.2 // indirect
|
|
github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect
|
|
github.com/hashicorp/yamux v0.1.2 // indirect
|
|
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
|
github.com/isacikgoz/fuzzy v0.2.0 // indirect
|
|
github.com/jmespath/go-jmespath v0.4.0 // indirect
|
|
github.com/jonboulle/clockwork v0.5.0 // indirect
|
|
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
|
|
github.com/klauspost/pgzip v1.2.6 // indirect
|
|
github.com/lann/builder v0.0.0-20180802200727-47ae307949d0 // indirect
|
|
github.com/lann/ps v0.0.0-20150810152359-62de8c46ede0 // indirect
|
|
github.com/levigross/exp-html v0.0.0-20120902181939-8df60c69a8f5 // indirect
|
|
github.com/mattermost/mattermost-plugin-ai v1.5.0 // indirect
|
|
github.com/mattermost/xml-roundtrip-validator v0.1.0 // indirect
|
|
github.com/mattn/go-colorable v0.1.14 // indirect
|
|
github.com/mattn/go-isatty v0.0.20 // indirect
|
|
github.com/mattn/go-runewidth v0.0.19 // indirect
|
|
github.com/mattn/go-sqlite3 v2.0.3+incompatible // indirect
|
|
github.com/miekg/dns v1.1.68 // indirect
|
|
github.com/mikelolasagasti/xz v1.0.1 // indirect
|
|
github.com/minio/crc64nvme v1.1.1 // indirect
|
|
github.com/minio/md5-simd v1.1.2 // indirect
|
|
github.com/minio/minlz v1.0.1 // indirect
|
|
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
|
|
github.com/ncruces/go-strftime v1.0.0 // indirect
|
|
github.com/nwaples/rardecode/v2 v2.2.1 // indirect
|
|
github.com/oklog/run v1.2.0 // indirect
|
|
github.com/olekukonko/tablewriter v1.1.0 // indirect
|
|
github.com/otiai10/gosseract/v2 v2.4.1 // indirect
|
|
github.com/pborman/uuid v1.2.1 // indirect
|
|
github.com/pelletier/go-toml v1.9.5 // indirect
|
|
github.com/pelletier/go-toml/v2 v2.2.4 // indirect
|
|
github.com/philhofer/fwd v1.2.0 // indirect
|
|
github.com/pierrec/lz4/v4 v4.1.22 // indirect
|
|
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
|
|
github.com/prometheus/common v0.67.1 // indirect
|
|
github.com/prometheus/procfs v0.17.0 // indirect
|
|
github.com/redis/go-redis/v9 v9.14.0 // indirect
|
|
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect
|
|
github.com/richardlehane/mscfb v1.0.4 // indirect
|
|
github.com/richardlehane/msoleps v1.0.4 // indirect
|
|
github.com/rs/xid v1.6.0 // indirect
|
|
github.com/russellhaering/goxmldsig v1.5.0 // indirect
|
|
github.com/russross/blackfriday/v2 v2.1.0 // indirect
|
|
github.com/sagikazarmark/locafero v0.12.0 // indirect
|
|
github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 // indirect
|
|
github.com/sorairolake/lzip-go v0.3.8 // indirect
|
|
github.com/spf13/afero v1.15.0 // indirect
|
|
github.com/spf13/cast v1.10.0 // indirect
|
|
github.com/spf13/pflag v1.0.10 // indirect
|
|
github.com/splitio/go-split-commons/v7 v7.0.0 // indirect
|
|
github.com/splitio/go-toolkit/v5 v5.4.0 // indirect
|
|
github.com/ssor/bom v0.0.0-20170718123548-6386211fdfcf // indirect
|
|
github.com/stretchr/objx v0.5.3 // indirect
|
|
github.com/subosito/gotenv v1.6.0 // indirect
|
|
github.com/ulikunitz/xz v0.5.15 // indirect
|
|
github.com/vmihailenco/tagparser/v2 v2.0.0 // indirect
|
|
github.com/wiggin77/srslog v1.0.1 // indirect
|
|
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
|
|
go.opentelemetry.io/otel v1.38.0 // indirect
|
|
go.opentelemetry.io/otel/metric v1.38.0 // indirect
|
|
go.opentelemetry.io/otel/trace v1.38.0 // indirect
|
|
go.yaml.in/yaml/v2 v2.4.3 // indirect
|
|
go.yaml.in/yaml/v3 v3.0.4 // indirect
|
|
go4.org v0.0.0-20230225012048-214862532bf5 // indirect
|
|
golang.org/x/exp v0.0.0-20251009144603-d2f985daa21b // indirect
|
|
golang.org/x/mod v0.29.0 // indirect
|
|
golang.org/x/sys v0.37.0 // indirect
|
|
golang.org/x/text v0.30.0 // indirect
|
|
golang.org/x/tools v0.38.0 // indirect
|
|
google.golang.org/genproto/googleapis/rpc v0.0.0-20251007200510-49b9836ed3ff // indirect
|
|
google.golang.org/grpc v1.76.0 // indirect
|
|
google.golang.org/protobuf v1.36.10 // indirect
|
|
gopkg.in/alexcesaro/quotedprintable.v3 v3.0.0-20150716171945-2caba252f4dc // indirect
|
|
gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
|
|
gopkg.in/yaml.v2 v2.4.0 // indirect
|
|
modernc.org/libc v1.66.10 // indirect
|
|
modernc.org/mathutil v1.7.1 // indirect
|
|
modernc.org/memory v1.11.0 // indirect
|
|
modernc.org/sqlite v1.39.1 // indirect
|
|
)
|
|
|
|
// Also prevent tablewriter from being upgraded because the downstream dependency
|
|
// jaytaylor/html2text does not have a go.mod file which makes it bump to the latest
|
|
// version always. Tablewriter has made breaking changes to its latest release.
|
|
replace github.com/olekukonko/tablewriter => github.com/olekukonko/tablewriter v0.0.5
|