Email me

Rust versions / 1.1

Rust release · Jun 25, 2015

Rust 1.1: what's new, what was stabilized

Short answerRust 1.1 was released on Jun 25, 2015.

Jun 25, 2015release date
0language stabilizations
0APIs stabilized
-new edition

← Rust 1.0All versionsRust 1.2 →

Can it break my build?

No compatibility notes were listed for this release.

Use it

rustup update stable        # get the newest release
rustup install 1.1          # or exactly this one
rustup override set 1.1     # pin a project to it

To require at least this version from users of your crate, set rust-version = "1.1" under [package] in Cargo.toml. Cargo then refuses to build it on older compilers with a clear message, and with resolver 3 (the default on the 2024 edition, Rust 1.85+) it also prefers dependency versions that support it.

Full release notes

Highlights

  • The [std::fs module has been expanded][fs] to expand the set of functionality exposed:
  • DirEntry now supports optimizations like file_type and metadata which don't incur a syscall on some platforms.
  • A symlink_metadata function has been added.
  • The fs::Metadata structure now lowers to its OS counterpart, providing access to all underlying information.
  • The compiler now contains extended explanations of many errors. When an error with an explanation occurs the compiler suggests using the --explain flag to read the explanation. Error explanations are also [available online][err-index].
  • Thanks to multiple [improvements][sk] to [type checking][pre], as well as other work, the time to bootstrap the compiler decreased by 32%.

Libraries

  • The [str::split_whitespace] method splits a string on unicode whitespace boundaries.
  • On both Windows and Unix, new extension traits provide conversion of I/O types to and from the underlying system handles. On Unix, these traits are [FromRawFd] and [AsRawFd], on Windows FromRawHandle and AsRawHandle. These are implemented for File, TcpStream, TcpListener, and UpdSocket. Further implementations for std::process will be stabilized later.
  • On Unix, [std::os::unix::symlink] creates symlinks. On Windows, symlinks can be created with std::os::windows::symlink_dir and std::os::windows::symlink_file.
  • The mpsc::Receiver type can now be converted into an iterator with into_iter on the [IntoIterator] trait.
  • Ipv4Addr can be created from u32 with the From<u32> implementation of the [From] trait.
  • The Debug implementation for RangeFull [creates output that is more consistent with other implementations][rf].
  • [Debug is implemented for File][file].
  • The Default implementation for Arc [no longer requires Sync + Send][arc].
  • [The Iterator methods count, nth, and last have been overridden for slices to have *O*(1) performance instead of *O*(*n*)][si].
  • Incorrect handling of paths on Windows has been improved in both the compiler and the standard library.
  • [AtomicPtr gained a Default implementation][ap].
  • In accordance with Rust's policy on arithmetic overflow abs now [panics on overflow when debug assertions are enabled][abs].
  • The [Cloned] iterator, which was accidentally left unstable for 1.0 [has been stabilized][c].
  • The [Incoming] iterator, which iterates over incoming TCP connections, and which was accidentally unnamable in 1.0, [is now properly exported][inc].
  • [BinaryHeap] no longer corrupts itself [when functions called by sift_up or sift_down panic][bh].
  • The [split_off] method of LinkedList [no longer corrupts the list in certain scenarios][ll].

Misc

Release notes from the Rust project's RELEASES.md (MIT or Apache-2.0); summaries above are ours.

← Rust 1.0All versionsRust 1.2 →

Up next

Next releaseRust 1.2Released Aug 7, 2015.Read it next →

Did this answer your question?

Get the receipts by email.

What my AI agents tried this week, with the real numbers: what worked, what flopped, what made money. One email when there is something worth reading.

No spam, never sold. Every email has a one-click unsubscribe.

Popular in the shop

All 124 tools →

Browse: Bundles and kitsHome, family and schoolMoney and businessAI toolsSports and fitnessMaking and hobbiesFood and drinkIndie dev and launchTrading and quant

Free: Landing page teardown iPhone app cost calculator LLM API cost calculator Paid online: $49 Launch Check App builds Articles FAQ