@@ -8,36 +8,49 @@ team = "the docs.rs team"
88team_url  = " https://rust-lang.org/governance/teams/dev-tools/#team-docs-rs" 
99+++ 
1010
11- With Apple's transition from x86_64 to its own silicon (ARM64), the Rust project
12- has updated its platform support tiers.
11+ # Changes to Default Build Targets on docs.rs  
1312
14- Consequently, the ` aarch64-apple-darwin `  target has been promoted to Tier 1,
15- while the ` x86_64-apple-darwin `  target has been demoted to Tier 2. You can read
16- more about this change in
17- [ RFC 3671] ( https://github.com/rust-lang/rfcs/pull/3671 )  and
18- [ RFC 3841] ( https://github.com/rust-lang/rfcs/pull/3841 ) .
13+ This post announces two changes to the list of default targets used to build
14+ documentation on docs.rs.
1915
20- To align with this ecosystem shift, docs.rs is updating its default build
21- targets.
16+ Crate authors can specify a custom list of targets using
17+ [ docs.rs metadata in ` Cargo.toml ` ] ( https://docs.rs/about/metadata ) . If this
18+ metadata is not provided, docs.rs falls back to a default list. We are updating
19+ this list to better reflect the current state of the Rust ecosystem.
2220
23- Crates can provide [ docs.rs metadata] ( https://docs.rs/about/metadata )  to specify
24- which targets to build for. If this metadata is not provided, docs.rs uses a
25- default list of targets. We are now switching the default macOS target in this
26- list from ` x86_64-apple-darwin `  to ` aarch64-apple-darwin ` .
21+ ## Apple Silicon (ARM64) Replaces x86_64  
2722
28- The new default target list is:
23+ Reflecting Apple's transition from x86_64 to its own ARM64 silicon, the Rust
24+ project has updated its platform support tiers. The ` aarch64-apple-darwin ` 
25+ target is now Tier 1, while ` x86_64-apple-darwin `  has moved to Tier 2. You can
26+ read more about this in [ RFC 3671] ( https://github.com/rust-lang/rfcs/pull/3671 ) 
27+ and [ RFC 3841] ( https://github.com/rust-lang/rfcs/pull/3841 ) .
28+ 
29+ To align with this, docs.rs will now use ` aarch64-apple-darwin `  as the default
30+ target for Apple platforms instead of ` x86_64-apple-darwin ` .
31+ 
32+ ## Linux ARM64 Replaces 32-bit x86  
33+ 
34+ Support for 32-bit ` i686 `  architectures is declining, and major Linux
35+ distributions have begun to phase it out.
36+ 
37+ Consequently, we are replacing the ` i686-unknown-linux-gnu `  target with
38+ ` aarch64-unknown-linux-gnu `  in our default set.
39+ 
40+ ## New Default Target List  
41+ 
42+ The updated list of default targets is:
2943
3044-  ` x86_64-unknown-linux-gnu ` 
31- -  ` aarch64-apple-darwin `  (previously:  ` x86_64-apple-darwin ` )
45+ -  ` aarch64-apple-darwin `  (replaces  ` x86_64-apple-darwin ` )
3246-  ` x86_64-pc-windows-msvc ` 
33- -  ` i686-unknown-linux-gnu ` 
47+ -  ` aarch64-unknown-linux-gnu `  (replaces  ` i686-unknown-linux-gnu ` ) 
3448-  ` i686-pc-windows-msvc ` 
3549
36- ## If your crate requires the old target list  
50+ ## Opting Out  
3751
38- If your crate needs to be built for the previous default target list, you can
39- explicitly define it using [ docs.rs metadata] ( https://docs.rs/about/metadata )  in
40- your ` Cargo.toml ` :
52+ If your crate requires the previous default target list, you can explicitly
53+ define it in your ` Cargo.toml ` :
4154
4255``` toml 
4356[package .metadata .docs .rs ]
@@ -49,3 +62,6 @@ targets = [
4962    " i686-pc-windows-msvc" 
5063]
5164``` 
65+ 
66+ Note that docs.rs continues to support any target available in the Rust
67+ toolchain; only the _ default_  list has changed.
0 commit comments