mattermost/server/public/plugin
Doug Lauder 5566604e03
MM-68838: Ping a restored plugin remote immediately on re-register (#36592)
* MM-68838: ping restored plugin remote immediately on re-register

  RegisterPluginForSharedChannels' restore branch updated the row but did
  not call PingNow, leaving the restored remote offline until the next
  pingLoop tick (up to PingFreq, default 1 minute). The new-connection
  branch already calls PingNow; the restore branch now mirrors it so
  sync attempts immediately after a plugin restart no longer fail with
  "offline remote cluster".

* MM-68838: gob-encode error returns in apiRPCServer.ReceiveSharedChannelAttachmentSyncMsg

  The apiRPCServer wrapper for ReceiveSharedChannelAttachmentSyncMsg
  assigned the hook's error return directly to the gob-encoded response
  struct. When the framework's App.ReceiveSharedChannelAttachmentSyncMsg
  returned an error wrapped with %w (*fmt.wrapError, an unexported type),
  gob refused to encode it and the RPC server broke the connection with
  "type not registered for interface: fmt.wrapError".

  Every subsequent plugin/server RPC call then returned the zero-value
  response struct, causing plugins that dereferenced the nil returns to
  crash.

  Apply the existing encodableError() helper so the returned error
  becomes a gob-safe ErrorString, matching every other apiRPCServer
  method in this file.
2026-05-19 10:12:00 -04:00
..
checker ci: enable fullyparallel mode for server tests (#35816) 2026-04-08 20:48:36 -04:00
interface_generator [MM-68655] Surface RPC errors from plugin hooks (#36414) 2026-05-05 10:41:11 -04:00
plugintest MM-68339: Add XML struct tags and multi-remote registration for shared channels plugin API (#36126) 2026-04-28 08:53:06 -04:00
utils [MM-63345] Address Go v1.23 incompatibility issues with plugins (#30386) 2025-03-11 17:44:42 +00:00
.mockery.yaml Migrate mockery to packages feature (#29013) 2024-11-07 12:48:11 +01:00
api.go MM-68705 - Order-tolerant Shared Channel plugin API's for receiving attachments (#36486) 2026-05-08 15:35:52 -04:00
api_timer_layer_generated.go MM-68339: Add XML struct tags and multi-remote registration for shared channels plugin API (#36126) 2026-04-28 08:53:06 -04:00
audit.go [MM-64686] Expose audit logging functionality via plugin API (#31204) 2025-06-25 20:37:32 -04:00
client.go MM-57018: support reattaching plugins (#26421) 2024-04-11 11:10:25 -04:00
client_rpc.go MM-68838: Ping a restored plugin remote immediately on re-register (#36592) 2026-05-19 10:12:00 -04:00
client_rpc_generated.go [MM-68655] Surface RPC errors from plugin hooks (#36414) 2026-05-05 10:41:11 -04:00
client_rpc_test.go MM-68838: Ping a restored plugin remote immediately on re-register (#36592) 2026-05-19 10:12:00 -04:00
context.go Include connection ID in plugin context (#36074) 2026-05-11 10:09:47 +02:00
db_rpc.go Expose public/ API as submodule (#23345) 2023-05-10 13:07:02 -03:00
doc.go Expose public/ API as submodule (#23345) 2023-05-10 13:07:02 -03:00
driver.go Remove vestigial MySQL support (#34865) 2026-01-20 21:01:59 +00:00
environment.go [MM-68655] Surface RPC errors from plugin hooks (#36414) 2026-05-05 10:41:11 -04:00
environment_test.go [MM-55990] Logger improvements for tests (#25467) 2023-11-30 10:47:04 +01:00
environment_with_rpcerr_test.go [MM-68655] Surface RPC errors from plugin hooks (#36414) 2026-05-05 10:41:11 -04:00
example_hello_world_test.go MM-53032: Fix module path after repo rename (#23689) 2023-06-11 10:54:35 +05:30
example_help_test.go MM-53032: Fix module path after repo rename (#23689) 2023-06-11 10:54:35 +05:30
hclog_adapter.go MM-53032: Fix module path after repo rename (#23689) 2023-06-11 10:54:35 +05:30
health_check.go MM-53032: Fix module path after repo rename (#23689) 2023-06-11 10:54:35 +05:30
health_check_test.go MM-57018: support reattaching plugins (#26421) 2024-04-11 11:10:25 -04:00
hijack.go Expose public/ API as submodule (#23345) 2023-05-10 13:07:02 -03:00
hooks.go MM-68016, MM-68017, MM-68018 Add plugin pre-hooks for membership and channel archive (#35731) 2026-03-25 08:45:17 -04:00
hooks_timer_layer_generated.go [MM-68655] Surface RPC errors from plugin hooks (#36414) 2026-05-05 10:41:11 -04:00
http.go Add http.Flusher support to plugin RPC layer (#34411) 2025-11-10 16:30:09 -05:00
http_test.go Add http.Flusher support to plugin RPC layer (#34411) 2025-11-10 16:30:09 -05:00
io_rpc.go Expose public/ API as submodule (#23345) 2023-05-10 13:07:02 -03:00
metrics.go Expose public/ API as submodule (#23345) 2023-05-10 13:07:02 -03:00
stringifier.go Expose public/ API as submodule (#23345) 2023-05-10 13:07:02 -03:00
stringifier_test.go Expose public/ API as submodule (#23345) 2023-05-10 13:07:02 -03:00
supervisor.go [MM-68655] Surface RPC errors from plugin hooks (#36414) 2026-05-05 10:41:11 -04:00
supervisor_test.go [MM-54132] Use annotated logger for log messages from jobs (#24275) 2023-09-07 08:50:22 +02:00