Skip to content

servoshell: Align console behavior for shell and double‑click launches - #43010

Merged
yezhizhen merged 1 commit into
servo:mainfrom
yezhizhen:windows-experiment
Jul 10, 2026
Merged

yezhizhen merged 1 commit into
servo:mainfrom
yezhizhen:windows-experiment

Conversation

@yezhizhen

@yezhizhen yezhizhen commented Mar 4, 2026

Copy link
Copy Markdown
Member

In addition to issues fixed, this also allows: seeing the follow-up stdout/stderr, if started executable from console.

Testing: Manually tested, started both from GUI double-click and console. We still maintain the no-popup behaviour when started from GUI.
Fixes: #40996

Signed-off-by: Euclid Ye <[email protected]>
@servo-highfive servo-highfive added the S-awaiting-review There is new code that needs to be reviewed. label Mar 4, 2026
@jschwe

jschwe commented Mar 4, 2026

Copy link
Copy Markdown
Member

Won't this still spawn the console, so you'll get this "flashing console window that immediately disappears" effect when starting via GUI?

@yezhizhen

yezhizhen commented Mar 4, 2026

Copy link
Copy Markdown
Member Author

Won't this still spawn the console, so you'll get this "flashing console window that immediately disappears" effect when starting via GUI?

It is much better as the issue #40996 fixed is much more severe.

This also allows: seeing the follow-up stdout/stderr, if started executable from console.
Also on my machine, I do not see any flash, even on a slow debug build.

@yezhizhen

This comment was marked as outdated.

@yezhizhen

Copy link
Copy Markdown
Member Author

Video can explain better.

previous.mp4
now.mp4
no_blink_even_in_debug.mp4

@jschwe

jschwe commented Mar 4, 2026

Copy link
Copy Markdown
Member

My main concern is that I believe the original decision (when production builds just had no output at all) was AFAIK made to avoid exactly that blinking, since it could be "suspicous" to users. So I think this PR might need wider review, to ensure there is consensus.
I'd personally be fine with the change, if we documented it in the book (in an FAQ / common issues section perhaps).

@yezhizhen yezhizhen added the T-windows Do a try run on Windows label Mar 4, 2026
@github-actions github-actions Bot removed the T-windows Do a try run on Windows label Mar 4, 2026
@github-actions

github-actions Bot commented Mar 4, 2026

Copy link
Copy Markdown

🔨 Triggering try run (#22660422044) for Windows

@github-actions

github-actions Bot commented Mar 4, 2026

Copy link
Copy Markdown

✨ Try run (#22660422044) succeeded.

@yezhizhen

yezhizhen commented Mar 4, 2026

Copy link
Copy Markdown
Member Author

it could be "suspicous" to users.

I honestly find current console output behaviour much more suspicious as shown in videos.
For this PR, I can't see any pop-up in the release build (FreeConsole happens extremely fast). As a daily Windows user, I do see a bunch of apps with a console window open for a few seconds during launch tho... Windows users are even used to that😅

Maybe this can be discussed in Zulip.

@sagudev

sagudev commented Mar 4, 2026

Copy link
Copy Markdown
Member

IIRC that is related to shell somehow. I think using bash (from git-windows) works as expected (like on linux).

With that being said, I support this change as I find this inconsistent unexpected.

@yezhizhen yezhizhen changed the title servoshell: Align console behavior perfectly for shell and double‑click launches servoshell: Align console behavior for shell and double‑click launches Mar 20, 2026
@yezhizhen

Copy link
Copy Markdown
Member Author

Any chance we can advance this?
I get multiple servoshell binaries and run them in console directly to see different debug logs.
Right now this makes it more difficult :(

@servo-highfive servo-highfive removed the S-awaiting-review There is new code that needs to be reviewed. label Jul 10, 2026
@servo-highfive

Copy link
Copy Markdown

Someone thinks this change could be added to the monthly blog post! To help with this, we need someone to answer the following questions: 😄

  1. Who is most impacted by this change: users, Servo developers, embedders, or some other group?
  2. What observable difference does this change make?
  3. What preferences (if any) need to be enabled to observe this difference?
  4. What (if any) specific URLs are affected?

If this change is part of a broader feature/project please make sure the PR description contains a Fixes: #12345 or Part of: #12345 issue reference.

Please add @servo-highfive monthly update answer when answering these questions so the bot notices your answer (or just quote this comment).

Thanks for helping us prepare the monthly blog post! ❤️

@yezhizhen

Copy link
Copy Markdown
Member Author

I will get back to this bot message after figuring out what's the new label about

@yezhizhen
yezhizhen added this pull request to the merge queue Jul 10, 2026
@servo-highfive servo-highfive added the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label Jul 10, 2026
@jschwe

jschwe commented Jul 10, 2026

Copy link
Copy Markdown
Member

We have a new monthly update label, which make it easier for the people writing the monthly blog-post to include noteworthy additions, if the contributor shortly explains what the PR is about. Since you already posted videos in the comment above, and it affects windows users, I thought this might be fitting (although in the end the blog post author decides what to include)

@yezhizhen

Copy link
Copy Markdown
Member Author

@servo-highfive monthly update answer

  1. Who is most impacted by this change: users, Servo developers, embedders, or some other group?
    Servo developers, users.

  2. What observable difference does this change make?
    Video can explain better.

previous.mp4
now.mp4
  1. What preferences (if any) need to be enabled to observe this difference?
    Running on Windows machine.

  2. What (if any) specific URLs are affected?
    All.

Merged via the queue into servo:main with commit 9bec57b Jul 10, 2026
52 checks passed
@yezhizhen
yezhizhen deleted the windows-experiment branch July 10, 2026 09:23
@servo-highfive servo-highfive removed the S-awaiting-merge The PR is in the process of compiling and running tests on the automated CI. label Jul 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Windows: Weird console output after #40961

4 participants