[pull] master from mattermost:master - #930
Merged
Merged
Conversation
* docs(P13): reconcile all remaining authored docs drift * docs: fix MDX build and review findings * docs: remove premature v12 upgrade note
* Bump Go version to v1.26.7 * Fix digest * Update glibc to v16 in runtime image as well * Trigger E2E tests * MM-70307: Fix FIPS E2E test failure due to short PostgreSQL password OpenSSL FIPS requires HMAC keys to be at least 14 bytes (112 bits). The password 'mostest' (6 bytes) triggers a panic in lib/pq's SCRAM-SHA-256 authentication when the server runs under go-msft-fips with the glibc-openssl-fips:16 image. Replace it with 'mostest_password' (16 bytes) in all E2E test PostgreSQL connection strings and container configs. LDAP admin passwords are unaffected (different protocol). * Revert "MM-70307: Fix FIPS E2E test failure due to short PostgreSQL password" This reverts commit d31b0eb. --------- Co-authored-by: Mattermost Build <build@mattermost.com>
…okens (#38072) * Fix Avatar layout regressions from MM-69802 without font-size:0 Broken images are no longer replaced elements, so width/height stop applying and alt text sizes the box. Use inline-block plus overflow and transparent color so the existing size tokens still apply and alt text cannot spill out of the circle. This restores em margins (scheduled/drafts DM avatars) and flex min-width (agent selector, post previews), and removes the Content Flagging preview spot-patch from #37972. Co-authored-by: Nick Misasi <nick13misasi@gmail.com> * Trigger Enterprise CI after mostest_password fix Co-authored-by: Nick Misasi <nick13misasi@gmail.com> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: Mattermost Build <build@mattermost.com>
* docs: restore generated plugin SDK reference pages
Reimplements the Hugo-era plugingodocs/pluginjsdocs/pluginmanifestdocs
shortcode pipeline natively in Docusaurus, so the server plugin SDK,
web app plugin SDK, and manifest reference pages render full generated
content again instead of "Generated content (migrating)" placeholders.
Two new Go generators (gen-plugin-godocs, gen-plugin-manifest-docs) and
one Node generator (gen-plugin-jsdocs.mjs) read server/public/plugin,
server/public/model, and webapp/channels/src/plugins/registry.ts
directly from this monorepo and emit gitignored JSON consumed by new
PluginGoDocs/PluginGoExample/PluginJsDocs/PluginManifestDocs React
components, wired into prestart/prebuild alongside the existing
sidebar/OpenAPI generators.
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs: remove migration plan doc from this PR
Was a handoff/status doc for the implementing agent, not meant to ship
as part of the change itself.
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs: make plugin-godocs/manifest-docs builds atomic
build:plugin-godocs and build:plugin-manifest-docs redirected straight
into data/plugin-*.json, which doesn't exist on a clean checkout (the
redirection itself would fail before the generator ever ran) and, on a
subsequent failed run, would truncate a previously-good JSON file
before failing. Create data/ up front, write to a .tmp file, and only
mv it into place once the generator exits successfully.
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs: fix review findings in plugin doc generators
gen-plugin-manifest-docs:
- jsonFieldName now excludes unexported fields (matching encoding/json)
and falls back to the Go field name when there's no tag or the tag's
name component is empty (e.g. json:",omitempty"), instead of
dropping the field entirely.
- exprTypeDocs's SelectorExpr case now resolves a qualified type only
when its package qualifier actually points at the model package
(checked against the declaring file's imports), instead of matching
any x.Sel identifier by name alone regardless of which package it
qualifies.
gen-plugin-godocs:
- The example-code loop now falls back to example.Code when
example.Play is nil (go/doc leaves Play nil when it can't synthesize
a whole runnable program), and propagates printer.Fprint errors
instead of discarding them.
No output change for the current server/public/plugin or
server/public/model content — verified via a full regen.
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs: drop legacy-repo comment references, align jsdocs generator parser
Remove "port of the old mattermost-developer-documentation Hugo
shortcode" comments from the plugin doc generators/components now that
they're fully native to this monorepo, and switch gen-plugin-jsdocs.mjs
from the TypeScript compiler API to @typescript-eslint/typescript-estree
to match the old script's parser/shape, while keeping the more robust
reArg-declared-parameter-name and node-scoped comment-attachment logic.
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs: bump plugin doc generators' go.mod to go 1.26
go 1.23 was arbitrarily low; align with a current Go version. go run
auto-downloads a matching toolchain on older local installs, so this
doesn't reintroduce a dependency on server/public/go.mod's version.
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs: handle RestElement in gen-plugin-jsdocs parameter extraction
paramNamesFromPattern silently dropped rest parameters/destructured rest
members (e.g. (a, ...rest) or {a, ...rest}), since RestElement matched
none of its type checks. No effect on today's registry.ts output (no
rest patterns currently used there), but keeps the extraction correct if
one is ever introduced.
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs: simplify plugin doc generators README note
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs: check stdout write errors in plugin doc generators
os.Stdout.Write's return errors were discarded, so a failed/partial
write (e.g. broken pipe, disk full) would still exit 0. Combined with
the npm scripts' > file.tmp && mv pattern, a truncated write could be
treated as a successful generation. Fatal on either write failing.
Co-authored-by: Cursor <cursoragent@cursor.com>
* docs: flatten Server/Webapp plugin SDK reference sidebar nesting
server/server-reference.md and webapp/webapp-reference.md were the only
file in their respective folders, so the sidebar generator (which only
collapses a folder into a single entry when it has an index.md) rendered
them as a "Server" > "Server plugin SDK reference" category with one
child instead of one flat entry, unlike every sibling reference folder
(rest-api/index.md, bot-accounts/index.md, etc.).
Rename both to index.md to match that convention, and update the ~20
cross-referencing links (many with #anchor fragments) that pointed at
the old /reference/server/server-reference and /reference/webapp/webapp-
reference paths.
Co-authored-by: Cursor <cursoragent@cursor.com>
---------
Co-authored-by: Cursor <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )