-
Notifications
You must be signed in to change notification settings - Fork 847
TS-4032: Enable command line based message passing to plugins. #343
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
|
I thought I saw a comment from James but it doesn't seem to be there now.
|
I think I made them on the JIRA.
We should definitely not overload "alert" here. I think "message" is sufficient.
Great, looking forward to that! Also, I think that the default mode of this feature should be to send a message to a specific, named plugin. Maybe you could optionally broadcast the message to all plugins, but it seems most useful to message a specific plugin. The message itself should be a opaque bag of bytes. This would let you send things like serialize protobuf messages (for example). |
|
I think this is something that will be incredibly useful, thanks for working on it. |
|
I thought quite a bit about broadcast vs. targeted messages and decided I prefer this style. It's based on my previous experience with message bus style mechanisms. The ability to impose additional structure on the messages is very useful and should be preserved. For instance a plugin might "subscribe" to more than one channel and use a common library to select messages based on those subscriptions. If you survey the standard kind of mechanism used for such message busses you will see this pattern (particularly using domain style names "a.b.c.d") as very common and I want that to be easy to implement on top of this mechanism. In terms of overall processing the same work will be done whether it's the core doing the name comparison or the plugin. I may want to add some additional support for this so a plugin can easily listen for messages with a specific prefix. |
|
That seems fine, but this mechanism doesn't provide channels or any ability for plugins to subscribe to messages. There's no reason to think that all plugins will implement the same protocol on top of this mechanism, so preserving the ability to send messages to specific plugins still seems appropriate. It sounds like you have a particular message format in mind. Could you clarify that? |
… to "message". Made messaging a privileged operation.
|
I have updated the PR with several changes.
I haven't had a chance to work on example uses yet, although I have made progress in designing them. |
|
Looks nice. You don't need to hand-marshall the local manager message. Just use I think the changes to the public API should go through API review? |
|
I hand marshall the message from |
|
I need to work on the documentation a bit more before I send it out for formal API review. I would also like to build better example / use case code. It might well be that in that process I tweak the API to better suit actual use. |
|
Message marshaling works just fine, see #301 for an example of exactly what you want to do here. If you can show me the problem then I can try to help. |
|
@SolidWallOfCode and @dragon512 are going to take ownership of this. |
|
I changed the RPC unpacking to use the standard mechanism. I don't know why it didn't compile before and I don't the energy to figure it out. |
TS-5047: Fix unmapped URL logging tags.
(cherry picked from commit cb4ff10) Co-authored-by: thebadpete <peter.cheung@gmail.com>
No description provided.