ENHANCEMENTS:
- Added support for gRPC dial options to the
Dial
API [GH-257]
BUGS:
- Fixed a bug where reattaching to a plugin that exits could kill an unrelated process [GH-320]
BUGS:
- Suppress spurious
os.ErrClosed
on plugin shutdown [GH-299]
ENHANCEMENTS:
- deps: bump google.golang.org/grpc to v1.58.3 [GH-296]
CHANGES:
- plugin: Plugins written in other languages can optionally start to advertise whether they support gRPC broker multiplexing.
If the environment variable
PLUGIN_MULTIPLEX_GRPC
is set, it is safe to include a seventh field containing a boolean value in the|
-separated protocol negotiation line.
ENHANCEMENTS:
- Support muxing gRPC broker connections over a single listener [GH-288]
- client: Configurable buffer size for reading plugin log lines [GH-265]
- Use
buf
for proto generation [GH-286] - deps: bump golang.org/x/net to v0.17.0 [GH-285]
- deps: bump golang.org/x/sys to v0.13.0 [GH-285]
- deps: bump golang.org/x/text to v0.13.0 [GH-285]
ENHANCEMENTS:
client: New UnixSocketConfig.TempDir
option allows setting the directory to use when creating plugin-specific Unix socket directories [GH-282]
BUGS:
- server:
PLUGIN_UNIX_SOCKET_DIR
is consistently used for gRPC broker sockets as well as the initial socket [GH-277]
ENHANCEMENTS:
- client: New
UnixSocketConfig
option inClientConfig
to support making the client's Unix sockets group-writable [GH-277]
ENHANCEMENTS:
- client: New
runner.Runner
interface to support clients providing custom plugin command runner implementations [GH-270]- Accessible via new
ClientConfig
fieldRunnerFunc
, which is mutually exclusive withCmd
andReattach
- Reattaching support via
ReattachConfig
fieldReattachFunc
- Accessible via new
- client: New
ClientConfig
fieldSkipHostEnv
allows omitting the client process' own environment variables from the plugin command's environment [GH-270] - client: Add
ID()
method toClient
for retrieving the pid or other unique ID of a running plugin [GH-272] - server: Support setting the directory to create Unix sockets in with the env var
PLUGIN_UNIX_SOCKET_DIR
[GH-270] - server: Support setting group write permission and a custom group name or gid owner with the env var
PLUGIN_UNIX_SOCKET_GROUP
[GH-270]
ENHANCEMENTS:
- deps: bump protoreflect to v1.15.1 [GH-264]
BUG FIXES:
- additional notes: ensure to close files [GH-241]
ENHANCEMENTS:
- deps: Remove direct dependency on golang.org/x/net [GH-240]
ENHANCEMENTS:
- client: Remove log warning introduced in 1.4.5 when SecureConfig is nil. [GH-238]
BUG FIXES:
- Fix windows build: [GH-227]
ENHANCEMENTS:
- More detailed error message on plugin start failure: [GH-223]
BUG FIXES:
- server: Prevent gRPC broker goroutine leak when using
GRPCServer
typeGracefulStop()
orStop()
methods [GH-220]
ENHANCEMENTS:
- client: log warning when SecureConfig is nil [GH-207]
ENHANCEMENTS:
- client: increase level of plugin exit logs [GH-195]
BUG FIXES: