These 12 commits are when the Protocol Buffers files have changed:
| Commit: | 809744e | |
|---|---|---|
| Author: | Tyler Rockwood | |
| Committer: | GitHub | |
protobuf: make it fast 🚀 (#3704) * protobuf: add faster proto->message path The existing conversion to message is very slow and forces a JSON parse if utilized after in a mapping or an output that uses structure (ie. Snowflake or SQL). Add a fast path that skips the intermediate JSON representation. Note this path is *less* lossy in terms of type information when not roundtripping through JSON. I think this is more what folks expect from a type prospective. * protobuf: split parsing utilities I'm introducing a new parser for protobuf, which requires a different form for protos. This means it's helpful to break down the methods to parse and load protobuf into it's primative forms. * protobuf: move parse utilities to common package This will be needed in multiple places later * deps: add hyperpb * protobuf: introduce hyperpb parsing Benchmark summary for this and the previous changes: - hyperpb is ~10-40% faster than dynamicpb for decoding - Fast conversion saves ~30% compared to slow conversion - Reading after fast conversion has negligible overhead (data already structured) - Reading after slow conversion adds ~60%+ overhead (requires JSON deserialization) * protobuf: fixup parsing utilities This corrects an issue in a previous commit where we dropped well-known types when extracting descriptors * protobuf: reduce allocations for hyperpb * protobuf: enable PGO To make hyperpb really fly * protobuf: simplify decoder and plug into processors This commit simplifies the common.NewDecoder method by just directly taking a message descriptor, and then plugs it into the protobuf decoder and the schema register decoder for protobuf. This is up for discussion because the output will subtly change for the protobuf decoders (for the better IMO). * chore: make linters happy * update changelog * proto: make hyperpb not a breaking change Make faster deserialization opt-in * update changelog * protobuf: allocate better
The documentation is generated from this commit.
| Commit: | f7f7c17 | |
|---|---|---|
| Author: | Tyler Rockwood | |
| Committer: | GitHub | |
introduce dynamic plugins (#3403) * agent: rename runtime.proto to agent.proto * proto: fix code generation By specifying module paths * dynamic-plugins: add protobuf definitions * agent: fix proto converter * plugin: add subprocess library * dynamic/plugin: add input and output implementation * dynamic-plugins: add the processor * dynamic-plugins: add configuration and registration * dynamic-plugins: move to apache2 * dynamic-plugins: fix linter issues * dynamic-plugins: mv {socket,util}.go * dynamic-plugins: add to cli * dynamic-plugins: rename to rpcplugin * dynamic-plugins: add a minimal golang SDK * dynamic-plugins: fixes :facepalm * dynamic-plugins: allow for strongly typed configs * update package name * chore: format protos * chore: fixup proto comments * chore: review feedback * agent: replace hashicorp plugin system with a simpler thing * plugin/sdk: use simpler log library * plugins: add python plugins * rpcplugins: add python SDK * python: fixup output plugin * rpcplugin: review feedback * rpc/py: use protocols * chore: run linter
| Commit: | fc96ac3 | |
|---|---|---|
| Author: | Tyler Rockwood | |
| Committer: | GitHub | |
agent: add tracing support (#3373) * mcp: add tracing for sse server handler Using the traceparent header * agent: add tracing support in the agent * chore: fix tracing e2e
| Commit: | d082312 | |
|---|---|---|
| Author: | Tyler Rockwood | |
| Committer: | GitHub | |
Merge pull request #3301 from benwebber/feature/protobuf-to-json-use-enum-numbers Add use_enum_numbers option to protobuf processor
| Commit: | 9db17b2 | |
|---|---|---|
| Author: | Ashley Jeffs | |
| Committer: | GitHub | |
Add `mcp-server` and `agent` subcommands (#3319) * WIP * mcp: add starlark support * Bit of tidy up * mcp: add the ability to lookup a secret * mcp: support descriptions in starlark defined components * mcp: better name mappings for starlark keywords * Add properties to meta and secrets flag * Add input tool * Hook logging up properly * Add outputs to mcp * Add metrics * mcp: support .py extension * mcp: plumb through proper env var lookup fn * add readme * use main * Fix lints and add env file support to mcp-server * Remove base url * Update headers and modules * Enable sql cache on cloud * Update CHANGELOG --------- Co-authored-by: Tyler Rockwood <rockwood@redpanda.com>
| Commit: | f5cdf31 | |
|---|---|---|
| Author: | Ben Webber | |
| Committer: | Ben Webber | |
Add use_enum_numbers option to protobuf processor When true, this option serializes protobuf enum members to JSON by value instead of by name. The default is false. Closes: #3299
| Commit: | c23a225 | |
|---|---|---|
| Author: | Ashley Jeffs | |
Convert error path field to dot path notation
| Commit: | 6454172 | |
|---|---|---|
| Author: | Ashley Jeffs | |
Use xid for instance id and fix spelling
| Commit: | 195ab63 | |
|---|---|---|
| Author: | Ashley Jeffs | |
Add status events
| Commit: | 6180770 | |
|---|---|---|
| Author: | Ricardo Vega | |
Enhance protobuf resolution to register first level of nested messages Signed-off-by: Ricardo Vega <ricardoe@gmail.com>
| Commit: | dff414b | |
|---|---|---|
| Author: | Jaakko Lukkari | |
| Committer: | GitHub | |
Add support for protobuf Any fields (#1139) * Add support for resolving Any messages * Use protoreflect internal AnyResolver * add tests with proto.Any type * Return the same error as originally * Add back message field errors Co-authored-by: Pavel Prokopenko <pavel.a.prokopenko@gmail.com>
| Commit: | cd64a9f | |
|---|---|---|
| Author: | Ashley Jeffs | |
Add BETA protobuf processor