# Rust 2018: an early preview

**URL:** <https://internals.rust-lang.org/t/rust-2018-an-early-preview/7776>\
**Category:** announcements\
**Created:** [June 22, 2018, 10:19pm UTC](https://internals.rust-lang.org/t/rust-2018-an-early-preview/7776 "2018-06-22T22:19:19Z")\
**Posts on this page:** 1\
**Showing post:** 54

<div class="post-metadata">

**Author:** ![CAD97](https://sea2.discourse-cdn.com/flex002/user_avatar/internals.rust-lang.org/cad97/32/3460_2.png) [@CAD97](https://internals.rust-lang.org/u/CAD97)\
**Post date:** [June 28, 2018, 8:57pm UTC](https://internals.rust-lang.org/t/rust-2018-an-early-preview/7776/54 "2018-06-28T20:57:04Z")

</div>

For a fair comparison on `pub(crate)` versus `pub` usage, turn on `#![warn(unreachable_pub)]` and fix all of those warnings to be `pub(crate)`.

I am on the side of `crate fn` being a good thing – a `fn` for this `crate` – because it creates a much clearer distinction between `pub`-to-the-world and `pub`-internally.

---

_[View the full topic](https://internals.rust-lang.org/t/rust-2018-an-early-preview/7776)._
