惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
Netflix TechBlog - Medium
J
Java Code Geeks
爱范儿
爱范儿
雷峰网
雷峰网
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
博客园 - 三生石上(FineUI控件)
H
Hackread – Cybersecurity News, Data Breaches, AI and More
B
Blog RSS Feed
Google DeepMind News
Google DeepMind News
Jina AI
Jina AI
The GitHub Blog
The GitHub Blog
I
InfoQ
月光博客
月光博客
博客园 - 聂微东
博客园 - Franky
The Cloudflare Blog
阮一峰的网络日志
阮一峰的网络日志
博客园_首页
G
Google Developers Blog
Blog — PlanetScale
Blog — PlanetScale
L
LangChain Blog
罗磊的独立博客
Apple Machine Learning Research
Apple Machine Learning Research

Rust Blog

Security Advisory for Cargo (CVE-2026-5223) | Rust Blog Security Advisory for Cargo (CVE-2026-5222) | Rust Blog Project goals update — April 2026 (end of 2025H2) | Rust Blog Rust is participating in Outreachy | Rust Blog Raising the baseline for the `nvptx64-nvidia-cuda` target | Rust Blog Announcing Google Summer of Code 2026 selected projects | Rust Blog Announcing Rust 1.95.0 | Rust Blog docs.rs: building fewer targets by default | Rust Blog Changes to WebAssembly targets and handling undefined symbols | Rust Blog Announcing Rust 1.94.1 | Rust Blog Security advisory for Cargo | Rust Blog What we heard about Rust's challenges | Rust Blog Call for Testing: Build Dir Layout v2 | Rust Blog Announcing rustup 1.29.0 | Rust Blog Announcing Rust 1.94.0 | Rust Blog 2025 State of Rust Survey Results | Rust Blog Rust debugging survey 2026 | Rust Blog Update on the October 15, 2018 incident on crates.io Announcing Rust 1.29.2 Announcing Rust 1.29 Announcing Rust 1.28 What is Rust 2018? Announcing Rust 1.27.2 Announcing Rust 1.27.1 Security Advisory for rustdoc Announcing Rust 1.27 Announcing Rust 1.26.2 Announcing Rust 1.26.1 Rust turns three Announcing Rust 1.26
Reducing support for 32-bit Apple targets
Pietro Albini · 2020-01-03 · via Rust Blog

The Rust team regrets to announce that Rust 1.41.0 (to be released on January 30th, 2020) will be the last release with the current level of support for 32-bit Apple targets. Starting from Rust 1.42.0, those targets will be demoted to Tier 3.

The decision was made on RFC 2837, and was accepted by the compiler and release teams. This post explains what the change means, why we did it, and how your project is affected.

What’s a support tier?

The Rust compiler can build code targeting a lot of platforms (also called “targets”), but the team doesn't have the resources or manpower to provide the same level of support and testing for each of them. To make our commitments clear, we follow a tiered support policy (currently being formalized and revised in RFC 2803), explaining what we guarantee:

  • Tier 1 targets can be downloaded through rustup and are fully tested during the project’s automated builds. A bug or a regression affecting one of these targets is usually prioritized more than bugs only affecting platforms in other tiers.

  • Tier 2 targets can also be downloaded through rustup, but our automated builds don’t execute the test suite for them. While we guarantee a standard library build (and for some of them a full compiler build) will be available, we don’t ensure it will actually work without bugs (or even work at all).

  • Tier 3 targets are not available for download through rustup, and are ignored during our automated builds. You can still build their standard library for cross-compiling (or the full compiler in some cases) from source on your own, but you might encounter build errors, bugs, or missing features.

Which targets are affected?

The main target affected by this change is 32-bit macOS (i686-apple-darwin), which will be demoted from Tier 1 to Tier 3. This will affect both using the compiler on 32-bit Mac hardware, and cross-compiling 32-bit macOS binaries from any other platform.

Additionally, the following 32-bit iOS targets will be demoted from Tier 2 to Tier 3:

  • armv7-apple-ios
  • armv7s-apple-ios
  • i386-apple-ios

We will continue to provide the current level of support for all Apple 64bit targets.

Why are those targets being demoted?

Apple dropped support for running 32-bit binaries starting from macOS 10.15 and iOS 11. They also prevented all developers from cross-compiling 32-bit programs and apps starting from Xcode 10 (the platform’s IDE, containing the SDKs).

Due to those decisions from Apple, the targets are no longer useful to our users, and their choice to prevent cross-compiling makes it hard for the project to continue supporting the 32-bit platform in the long term.

How will this affect my project?

If you don’t build 32-bit Apple binaries this change won’t affect you at all.

If you still need to build them, you’ll be able to continue using Rust 1.41.0 without issues. As usual the Rust project will provide critical bugfixes and security patches until the next stable version is released (on March 12th, 2020), and we plan to keep the release available for download for the foreseeable future (as we do with all the releases shipped so far).

The code implementing the targets won’t be removed from the compiler codebase, so you’ll also be able to build future releases from source on your own (keeping in mind they might have bugs or be broken, as that code will be completely untested).

What about the nightly channel?

We will demote the targets on the nightly channel soon, but we don't have an exact date for when that will happen. We recommend pinning a nightly version beforehand though, to prevent rustup toolchain install from failing once we apply the demotion.

To pin a nightly version you need to use "nightly" followed by the day the nightly was released, as the toolchain name. For example, to install the nightly released on December 1st, 2019 and to use it you can run:

rustup toolchain install nightly-2019-12-01

# Default to this nightly system-wide...
rustup default nightly-2019-12-01

# ...or use this nightly for a single build
cargo +nightly-2019-12-01 build