Skip to content
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

Time for an ansi-terminal-1.0 that drops emulation for legacy Windows? #116

Closed
mpilgrem opened this issue Nov 13, 2021 · 8 comments
Closed
Labels
Windows Relates to Windows operating system

Comments

@mpilgrem
Copy link
Collaborator

There is no version of Windows that both has mainstream support by Microsoft and needs emulation. In other words, ansi-terminal-0.11 is supporting legacy versions of Windows that Microsoft itself dropped mainstream support for some years ago. I am wondering if the time has come for a next version of ansi-terminal that drops emulation. I'm opening this issue to allow the merits and drawbacks of that suggestion to be discussed. This prompted in part by the GHC 9 series developments and difficulties there (#114).

I suspect (but do not know for certain) that people developing applications using ansi-terminal today are doing so for machines that do not use legacy Windows.

@UnkindPartition
Copy link
Owner

Just to make sure I understand, are you saying that the standard terminal emulators on modern Windows systems (how modern?) all understand the standard ANSI codes and do not need Win-specific system calls at all?

@UnkindPartition
Copy link
Owner

I guess this part of the haddocks answers my question:

The native terminal software on Windows is 'Command Prompt' or PowerShell. Before Windows 10 version 1511 (known as the 'November [2015] Update' or 'Threshold 2') that software did not support such control sequences. For that software, this library also provides support for such sequences by using emulation.

@mpilgrem
Copy link
Collaborator Author

mpilgrem commented Nov 14, 2021

@UnkindPartition, there is also a paragraph in file Contributing.md file that summarises my understanding of Microsoft's maintenance of Windows versions. Windows 10 version 1511 updated Windows 10 version 1507 in December 2015 and Microsoft stopped supporting version 1507 on 9 May 2017.

@UnkindPartition
Copy link
Owner

If we are to believe this random website that I found, 18% of Windows users aren't even on Windows 10 — so that's a huge number of people. I'd say we should keep supporting legacy Windows for now if possible at a reasonable cost to us.

It's fine if we can't test the emulation code (the point you make in Contributing.md). We can accept a small chance of breaking something on a legacy system, and the users will tell us about that (and hopefully will help us debug/test the fix). But if we drop support altogether, that's a 100% chance of breaking it for those people.

@mpilgrem mpilgrem added the Windows Relates to Windows operating system label Nov 19, 2021
@Bodigrim
Copy link
Contributor

Unfortunately, there are plenty of WIndows 7 users, especially in corporate segment, who cannot upgrade any time soon.

@mpilgrem
Copy link
Collaborator Author

Perhaps the time to revisit the question is at the ESU end of life, on 10 January 2023. I'll close it for now.

@Bodigrim
Copy link
Contributor

We are past the ESU now, and FWIW my last machines with Windows 7 are now gone and I have no reasons to oppose this change. In fact, I'm leaning to support it.

@mpilgrem
Copy link
Collaborator Author

mpilgrem commented Feb 20, 2023

I'll reopen this issue. When I asked on the Haskell Community in August 2022, only @Bodigrim expressed (then) a positive interest in Windows 7. In addition to Microsoft's own behaviour, other weathervanes for me are:

  • browser support. Microsoft Edge support for Windows 7 ended with version 109 (the current stable version of Edge is 110). Ditto Chrome;
  • MSYS2 support. As of 16 December 2022, MSYS2 has dropped support for Windows 7. The current Stack-supplied version of MSYS2 does not support Windows 7 (and nobody has yet said that has affected them adversely). As of 15 January 2023, MSYS2 has also dropped support for Windows 8; and
  • According to Statcounter, Windows 7 share of the Windows desktop market was between 9.6% to 13.0% over the period December 2021 to January 2023. It fell to 5.3% in February 2023 and 3.8% in March 2023.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Windows Relates to Windows operating system
Projects
None yet
Development

No branches or pull requests

3 participants