-
Notifications
You must be signed in to change notification settings - Fork 8.4k
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
Add Microsoft.Terminal.Remoting.dll
#8607
Conversation
…ompile a String[]
…!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Marking req changes so I can see what changed since I publish these. They're not super pressing comments, though.
@DHowett you and I discussed being worried about peasants crashing after their original monarch is closed. Turns out, we don't need to worry about that in this PR! The monarch is only ever talked to once, at startup. After that, the window totally behaves as if business as usual. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No issues with the implementation. Really you're just missing a few copyright headers haha
_root->ProcessStartupActions(actions, false); | ||
} | ||
|
||
return result; // TODO:MG does a return value make sense |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks like you're not using it for now, so I guess don't return a value and change it later if/when we need it?
Is the new project audit-enabled? Should it be? |
Added audit to it in the last push ✔️ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Moderately worried about the header things, but you can merge it if you plan to address it better later.
Microsoft.Terminal.Remoting.dll
Microsoft.Terminal.Remoting.dll
Hello @zadjii-msft! Because this pull request has the p.s. you can customize the way I help with merging this pull request, such as holding this pull request until a specific person approves. Simply @mention me (
|
@msftbot don't merge this PR until 9pm |
Hello @zadjii-msft! I think you told me that you want to delay the approval for a certain amount of time, but I am not confident that I have understood you correctly. Please try rephrasing your instruction to me. |
@msftbot wait 4 hours to merge this PR |
Hello @zadjii-msft! Because you've given me some instructions on how to help merge this pull request, I'll be modifying my merge approach. Here's how I understand your requirements for merging this pull request:
If this doesn't seem right to you, you can tell me to cancel these instructions and use the auto-merge policy that has been configured for this repository. Try telling me "forget everything I just told you". |
@msftbot forget everything I just told you |
Hello @zadjii-msft! Because you've told me to reset the custom auto-merge settings, I'll use the configured settings for this repository when I'm merging this pull request. |
🎉 Handy links: |
Adds a `Microsoft.Terminal.Remoting.dll` to our solution. This DLL will be responsible for all the Monarch/Peasant work that's been described in microsoft#7240 & microsoft#8135. This PR does _not_ implement the Monarch/Peasant architecture in any significant way. The goal of this PR is to just to establish the project layout, and the most basic connections. This should make reviewing the actual meat of the implementation (in a later PR) easier. It will also give us the opportunity to include some of the basic weird things we're doing (with `CoRegisterClass`) in the Terminal _now_, and get them selfhosted, before building on them too much. This PR does have windows registering the `Monarch` class with COM. When windows are created, they'll as the Monarch if they should create a new window or not. In this PR, the Monarch will always reply "yes, please make a new window". Similar to other projects in our solution, we're adding 3 projects here: * `Microsoft.Terminal.Remoting.lib`: the actual implementation, as a static lib. * `Microsoft.Terminal.Remoting.dll`: The implementation linked as a DLL, for use in `WindowsTerminal.exe`. * `Remoting.UnitTests.dll`: A unit test dll that links with the static lib. There are plenty of TODOs scattered about the code. Clearly, most of this isn't implemented yet, but I do have more WIP branches. I'm using [`projects/5`](https://github.com/microsoft/terminal/projects/5) as my notation for TODOs that are too small for an issue, but are part of the whole Process Model 2.0 work. ## References * microsoft#5000 - this is the process model megathread * microsoft#7240 - The process model 2.0 spec. * microsoft#8135 - the window management spec. (please review me, I have 0/3 signoffs even after the discussion we had 😢) * microsoft#8171 - the Monarch/peasant sample. (please review me, I have 1/2) ## PR Checklist * [x] Closes nothing, this is just infrastructure * [x] I work here * [x] Tests added/passed * [n/a] Requires documentation to be updated
Adds a
Microsoft.Terminal.Remoting.dll
to our solution. This DLL willbe responsible for all the Monarch/Peasant work that's been described in
#7240 & #8135.
This PR does not implement the Monarch/Peasant architecture in any
significant way. The goal of this PR is to just to establish the project
layout, and the most basic connections. This should make reviewing the
actual meat of the implementation (in a later PR) easier. It will also
give us the opportunity to include some of the basic weird things we're
doing (with
CoRegisterClass
) in the Terminal now, and get themselfhosted, before building on them too much.
This PR does have windows registering the
Monarch
class with COM. Whenwindows are created, they'll as the Monarch if they should create a new
window or not. In this PR, the Monarch will always reply "yes, please
make a new window".
Similar to other projects in our solution, we're adding 3 projects here:
Microsoft.Terminal.Remoting.lib
: the actual implementation, as astatic lib.
Microsoft.Terminal.Remoting.dll
: The implementation linked as a DLL,for use in
WindowsTerminal.exe
.Remoting.UnitTests.dll
: A unit test dll that links with the staticlib.
There are plenty of TODOs scattered about the code. Clearly, most of
this isn't implemented yet, but I do have more WIP branches. I'm using
projects/5
as mynotation for TODOs that are too small for an issue, but are part of the
whole Process Model 2.0 work.
References
signoffs even after the discussion we had 😢)
PR Checklist