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

推荐订阅源

Google DeepMind News
Google DeepMind News
人人都是产品经理
人人都是产品经理
H
Hacker News: Front Page
Stack Overflow Blog
Stack Overflow Blog
B
Blog
I
InfoQ
GbyAI
GbyAI
T
The Blog of Author Tim Ferriss
F
Fortinet All Blogs
Y
Y Combinator Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
月光博客
月光博客
Hugging Face - Blog
Hugging Face - Blog
爱范儿
爱范儿
F
Full Disclosure
Hacker News - Newest:
Hacker News - Newest: "LLM"
Recent Announcements
Recent Announcements
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Jina AI
Jina AI
T
Tailwind CSS Blog
S
Secure Thoughts
P
Privacy International News Feed
美团技术团队
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
L
LINUX DO - 最新话题
H
Hackread – Cybersecurity News, Data Breaches, AI and More
C
Cybersecurity and Infrastructure Security Agency CISA
Last Week in AI
Last Week in AI
W
WeLiveSecurity
Google Online Security Blog
Google Online Security Blog
P
Privacy & Cybersecurity Law Blog
D
DataBreaches.Net
Engineering at Meta
Engineering at Meta
Know Your Adversary
Know Your Adversary
P
Palo Alto Networks Blog
I
Intezer
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Project Zero
Project Zero
V2EX - 技术
V2EX - 技术
H
Heimdal Security Blog
博客园 - Franky
阮一峰的网络日志
阮一峰的网络日志
D
Darknet – Hacking Tools, Hacker News & Cyber Security
T
Troy Hunt's Blog
V
Vulnerabilities – Threatpost
H
Help Net Security
Martin Fowler
Martin Fowler
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
G
GRAHAM CLULEY
博客园 - 【当耐特】

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 Launching the 2018 State of Rust Survey 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 The Rust Team All Hands in Berlin: a Recap Increasing Rust’s Reach 2018 Announcing Rust 1.25 Rust's 2018 roadmap Announcing Rust 1.24.1 Announcing Rust 1.24 The 2018 Rust Event Lineup Announcing Rust 1.23 New Year's Rust: A Call for Community Blogposts Rust in 2017: what we achieved Announcing Rust 1.22 (and 1.22.1) Fearless Concurrency in Firefox Quantum Announcing Rust 1.21 impl Future for Rust Rust 2017 Survey Results Announcing Rust 1.20 Announcing Rust 1.19 The 2017 Rust Conference Lineup Rust's 2017 roadmap, six months in Increasing Rust’s Reach Announcing Rust 1.18 Two years of Rust The Rust Libz Blitz Launching the 2017 State of Rust Survey Announcing Rust 1.17 Announcing Rust 1.16 Rust's language ergonomics initiative Announcing Rust 1.15.1 Rust's 2017 roadmap Announcing Rust 1.15 Announcing Rust 1.14 Announcing the First Underhanded Rust Contest Announcing Rust 1.13 Announcing Rust 1.12.1 Announcing Rust 1.12 Incremental Compilation Announcing Rust 1.11 Shape of errors to come The 2016 Rust Conference Lineup Announcing Rust 1.10 State of Rust Survey 2016 Announcing Rust 1.9 One year of Rust Taking Rust everywhere with rustup Launching the 2016 State of Rust Survey Cargo: predictable dependency management Introducing MIR Announcing Rust 1.8 Announcing Rust 1.7 Announcing Rust 1.6 Announcing Rust 1.5 Announcing Rust 1.3 Rust in 2016 Announcing Rust 1.2 Rust 1.1 stable, the Community Subteam, and RustCamp Announcing Rust 1.0 Abstraction without overhead: traits in Rust Rust Once, Run Everywhere Mixing matching, mutation, and moves in Rust Fearless Concurrency with Rust Announcing Rust 1.0 Beta Announcing Rust 1.0.0.alpha.2 Rust 1.0: status report and final timeline Announcing Rust 1.0 Alpha Rust 1.0: Scheduling the trains Yehuda Katz and Steve Klabnik are joining the Rust Core Team Cargo: Rust's community crate host Stability as a Deliverable Road to Rust 1.0
Announcing Rust 1.4
The Rust Cor · 2015-10-29 · via Rust Blog

Choo choo! The trains have kept rolling, and today, we’re happy to announce the release of Rust 1.4, the newest stable release. Rust is a systems programming language focused on safety, speed, and concurrency.

As always, you can install Rust 1.4 from the appropriate page on our website, and check out the detailed release notes for 1.4 on GitHub as well. About 1200 patches were landed in this release.

What's in 1.4 stable

The story of 1.4 is mostly one of improvements and stabilizations, rather than new features.

However, there is one particular change which is a language fix that enables a new feature: RFC 1214, “Clarify (and improve) rules for projections and well-formedness”. While that’s a deeply technical title, the TL;DR is that we found some weaknesses in the definition and implementation of a few aspects of the type system. This RFC fixes these problems. Given that changes to the type system like this can cause regressions, but fixes like this are important for soundness, Rust 1.4 will warn on any code that violates the new rules, but still compile. These warnings will turn into errors in Rust 1.5. However, given the train model, the community has had time to deal with these changes while 1.4 was in beta, and the small number of crates we were aware of have already been fixed.

These soundness fixes enable the return of the ‘scoped threads’ feature, in which you can create threads that reference data stored on the stack in a safe manner. A few crates have implemented this feature, most notably crossbeam and scoped_threadpool. See their documentation for more information.

RFC 1212 is also in this release, which changes all functions dealing with reading ‘lines’ to treat both \n and \r\n as a valid line-ending. This was determined during the RFC process to be a bugfix, but we’re mentioning it here to raise awareness. The older behavior of only dealing with \n made for surprising behavior, where your crate would work well on Linux and Mac OS X, but fail on Windows. This fix brings these functions more in-line (😉) with expectations.

Rust 1.4 marks an upgrade in our Windows support: Windows builds targeting the 64-bit MSVC ABI and linker (instead of GNU) are now supported and recommended for general use, and will appear on the downloads page for the first time. Thank you to all who have helped us work out the kinks since support initially landed in Rust 1.2.

Here’s a summary of library changes:

  • 48 APIs were stabilized.
  • Eight APIs were deprecated.
  • Two were made faster.
  • Over ten various types implement new traits.

See the release notes for exact details.

The compiler no longer uses morestack, which was a holdover implementation detail from long, long ago. We now use guard pages and stack probes instead, though stack probes are only implemented on Windows so far.

Finally, one major Cargo improvement: cargo update will now print extra information about what it is changing. For example:

$ cargo update
    Updating registry `https://github.com/rust-lang/crates.io-index`
    Updating libc v0.1.8 -> v0.1.10
    Updating memchr v0.1.3 -> v0.1.5
    Updating num v0.1.26 -> v0.1.27
    Updating rand v0.3.9 -> v0.3.10
    Updating rustc-serialize v0.3.15 -> v0.3.16

Before, it would do this job silently.

Contributors to 1.4

Rust is a community-driven project, and we're very appreciative of the work of the 127 contributors who made 1.4 happen. Thank you!

  • Adam Crume
  • Aidan Hobson Sayers
  • Aleksey Kladov
  • Alex Burka
  • Alex Crichton
  • Alex Ozdemir
  • AlexDenisov
  • Alexis Beingessner
  • Alisdair Owens
  • Andre Bogus
  • Andrea Canciani
  • Andrew Paseltiner
  • Ariel Ben-Yehuda
  • Artem Shitov
  • Barosl Lee
  • benshu
  • Björn Steinbrink
  • bors
  • Brian Anderson
  • Cesar Eduardo Barros
  • Chris Krycho
  • Chris Morgan
  • Chris Nixon
  • Chris Wong
  • christopherdumas
  • Cody P Schafer
  • Corey Farwell
  • Daan Rijks
  • Dave Huseby
  • diaphore
  • Diggory Blake
  • Dong Zhou
  • Dylan McKay
  • Elaine "See More" Nemo
  • Eli Friedman
  • Eljay
  • Erick Tryzelaar
  • Felix S. Klock II
  • Garming Sam
  • Georg Brandl
  • Gleb Kozyrev
  • Guillaume Gomez
  • Hunan Rostomyan
  • Huon Wilson
  • Ivan Jager
  • Jack Wilson
  • Jake Goulding
  • Jake Kerr
  • Jake Shadle
  • James Miller
  • Jan Likar
  • Jared Roesch
  • Jeehoon Kang
  • John Thomas
  • Jonas Schievink
  • Jørn Lode
  • Jose Narvaez
  • jotomicron
  • Kang Seonghoon
  • Kornel Lesiński
  • Lee Jeffery
  • Leif Arne Storset
  • Lennart Kudling
  • llogiq
  • Manish Goregaokar
  • Marc-Antoine Perennou
  • Marcus Klaas
  • Marko Lalic
  • Martin Wernstål
  • Matěj Grabovský
  • Matej Lach
  • Matt Brubeck
  • Matt Friedman
  • Michael Choate
  • Michael Layzell
  • Michael Macias
  • Michael McConville
  • Michael Neumann
  • Mickaël Salaün
  • midinastasurazz
  • Mike Marcacci
  • mitaa
  • Ms2ger
  • Murarth
  • Nathan Kleyn
  • Nicholas Seckar
  • Nick Cameron
  • Nick Howell
  • Niko Matsakis
  • Nikolay Kondratyev
  • Niranjan Padmanabhan
  • Overmind JIANG
  • Pascal Hertleif
  • Peter Reid
  • Remi Rampin
  • Richard Diamond
  • Robin Kruppe
  • Ruby
  • Ryo Munakata
  • Scott Olson
  • Sean Bowe
  • Sean McArthur
  • Sébastien Marie
  • Simon Mazur
  • Simon Sapin
  • Simonas Kazlauskas
  • Stepan Koltsov
  • Steve Klabnik
  • Steven Fackler
  • Sylvestre Ledru
  • Taliesin Beynon
  • Tamir Duberstein
  • Tim Cuthbertson
  • Tim JIANG
  • Tim Neumann
  • Tobias Bucher
  • Tshepang Lekhonkhobe
  • Ulrik Sverdrup
  • Vadim Chugunov
  • Vadim Petrochenkov
  • Viacheslav Chimishuk
  • Victor Berger
  • Vincent Bernat
  • Vladimir Rutsky
  • w00ns
  • William Throwe
  • Without Boats
  • Xiao Chuan Yu