Skip to content

Windows support schedule 2024 #651

Closed

Description

@ChrisDenton

Currently Windows 7 and 8 are listed as Tier 1 supported platforms. However, this has not been true for a long long time. We simply do not have the testing infrastructure. And with so much software now abandoning Windows 7 and 8 (everything from Git to Go to every major browser), continuing to provide the little support that we do is only getting more difficult. There is also a lack of vendor support for these targets.

This proposal aims to raise the minimum supported Windows version of current targets to Windows 10 (first released in 2015) during 2024. But it also leaves open the door for new targets that can commit to broader support, By having a separate target we can ensure there are people specifically tasked with supporting legacy versions of Windows.

Proposal

Rust 1.75 will be the last to officially support Windows 7, 8 and 8.1. Support for Windows versions before 10 will end in February 2024 with Rust 1.76.

Support for Windows 7 and 8 may continue beyond these dates through the creation of new "legacy" targets for older Windows versions. Individuals or organisation(s) who can commit to providing some level of legacy testing and support should go through the normal process for creating new targets.

Process

The main points of the Major Change Process are as follows:

  • File an issue describing the proposal.
  • A compiler team member or contributor who is knowledgeable in the area can second by writing @rustbot second.
    • Finding a "second" suffices for internal changes. If however, you are proposing a new public-facing feature, such as a -C flag, then full team check-off is required.
    • Compiler team members can initiate a check-off via @rfcbot fcp merge on either the MCP or the PR.
  • Once an MCP is seconded, the Final Comment Period begins. If no objections are raised after 10 days, the MCP is considered approved.

You can read more about Major Change Proposals on forge.

Comments

This issue is not meant to be used for technical discussion. There is a Zulip stream for that. Use this issue to leave procedural comments, such as volunteering to review, indicating that you second the proposal (or third, etc), or raising a concern that you would like to be addressed.

Activity

  1. added
    major-changeA proposal to make a major change to rustc
    T-compilerAdd this label so rfcbot knows to poll the compiler team
    on Jul 8, 2023
  2. rustbot commented on Jul 8, 2023

    @rustbot
    Collaborator

    This issue is not meant to be used for technical discussion. There is a Zulip stream for that. Use this issue to leave procedural comments, such as volunteering to review, indicating that you second the proposal (or third, etc), or raising a concern that you would like to be addressed.

    cc @rust-lang/compiler @rust-lang/compiler-contributors

  3. kennykerr commented on Jul 11, 2023

    @kennykerr

    For what it's worth, this is good news for Rust.

  4. wesleywiser commented on Jul 13, 2023

    @wesleywiser
    Member

    @rustbot second

  5. added
    final-comment-periodThe FCP has started, most (if not all) team members are in agreement
    on Jul 13, 2023
  6. apiraino commented on Aug 10, 2023

    @apiraino
    Contributor

    @rustbot label -final-comment-period +major-change-accepted

  7. added
    to-announceAnnounce this issue on triage meeting
    and removed
    final-comment-periodThe FCP has started, most (if not all) team members are in agreement
    on Aug 10, 2023
  8. enp6 commented on Aug 25, 2023

    @enp6

    I didn't understand why Windows 7 and 8 are not supported, only heard that X86 is not supported...

  9. workingjubilee commented on Aug 31, 2023

    @workingjubilee
    Member

    32-bit x86 Windows is supported as a tier 1 platform for Rust.

    It is simple, and already stated in Chris Denton's post: We do not have access to test environments for Windows 7 anymore. This is because the OS images we would use for our test suite for Windows 7 have effectively disappeared, along with Microsoft's official support for those images. So we are not testing it. We are testing on Windows 10. As we are not testing Windows 7, we are not giving it tier 1 support, which is defined as passing our test suite for every merge.

    If you want working software, then you should probably want us to actually say what Windows version we support.

  10. zhuxiujia commented on Feb 4, 2024

    @zhuxiujia

    The existing devices have a lot of in Win7 and Win8,As far as I know, Windows server devices based on Win7 and Win8 are even larger。

    If Rust 1.76 no longer supports Win7, there may be a large number of people staying at version 1.75,。
    Perhaps Rust will lose more people 。
    who are more willing to write C++code, at least for better compatibility

  11. the8472 commented on Feb 4, 2024

    @the8472
    Member

    This issue is not meant to be used for technical discussion. There is a Zulip stream for that. Use this issue to leave procedural comments, such as volunteering to review, indicating that you second the proposal (or third, etc), or raising a concern that you would like to be addressed.

    ☝️

  12. han1548772930 commented on Feb 4, 2024

    @han1548772930

    It would be very bad if Rust lost users of Windows 7 and 8

  13. RalfJung commented on Feb 4, 2024

    @RalfJung
    Member

    Cc rust-lang/rust#118150 since it is relevant for this thread: there are tier 3 targets for Windows 7. It remains supported, but as a "best effort, not tested" target rather than a tier 1 "fully supported" target.

  14. locked as resolved and limited conversation to collaborators on Feb 4, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    T-compilerAdd this label so rfcbot knows to poll the compiler teammajor-changeA proposal to make a major change to rustcmajor-change-acceptedA major change proposal that was accepted

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions