Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stabilize impl Trait #49255

Merged
merged 2 commits into from Mar 26, 2018

Conversation

Projects
None yet
@cramertj
Copy link
Member

cramertj commented Mar 22, 2018

Blocked on:

I have not yet done any docs work for this-- I probably won't get to it until this weekend (might be a project for the flight to the all-hands).

@cramertj cramertj changed the title Stable impl trait Stabilize impl trait Mar 22, 2018

@rust-highfive

This comment has been minimized.

Copy link
Collaborator

rust-highfive commented Mar 22, 2018

r? @michaelwoerister

(rust_highfive has picked a reviewer for you, use r? to override)

@cramertj cramertj changed the title Stabilize impl trait Stabilize impl Trait Mar 22, 2018

@cramertj

This comment has been minimized.

Copy link
Member Author

cramertj commented Mar 22, 2018

@cramertj

This comment has been minimized.

Copy link
Member Author

cramertj commented Mar 22, 2018

Also-- miri and clippy both used conservative_impl_trait internally. I removed those locally, but I'm not sure of the right way to update those submodules atomically w/ the feature removal.

@nikomatsakis

This comment has been minimized.

Copy link
Contributor

nikomatsakis commented Mar 22, 2018

With respect to docs, @steveklabnik plans to file an RFC changing process there somewhat in any case.

// Allows `impl Trait` in function arguments.
(accepted, universal_impl_trait, "1.26.0", Some(34511), None),
// Allows `impl Trait` in function return types.
(accepted, conservative_impl_trait, "1.26.0", Some(34511), None),

This comment has been minimized.

@nikomatsakis

nikomatsakis Mar 22, 2018

Contributor

🚀

This comment has been minimized.

@00imvj00

00imvj00 Mar 23, 2018

wowoow... finally.

@nikomatsakis

This comment has been minimized.

Copy link
Contributor

nikomatsakis commented Mar 22, 2018

@bors r+

The FCP is not yet complete, but it's hard to imagine what would cause us to reverse course here, and in any case we can always backport a patch to beta reversing course or fixing things up.

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Mar 22, 2018

📌 Commit d818194 has been approved by nikomatsakis

@nikomatsakis

This comment has been minimized.

Copy link
Contributor

nikomatsakis commented Mar 22, 2018

(cc @Manishearth and @oli-obk for clippy/miri respectively)

@Manishearth

This comment has been minimized.

Copy link
Member

Manishearth commented Mar 22, 2018

@cramertj we'll just update, thanks.

The best way to do it is to throw us a PR. even better is to update rustc to point to the commit in the PR so we don't need to come back and do that. But you don't have to.

@kennytm kennytm added the relnotes label Mar 22, 2018

@kennytm

This comment has been minimized.

Copy link
Member

kennytm commented Mar 22, 2018

Stabilize ALL The Things!

@mark-i-m

This comment has been minimized.

Copy link
Contributor

mark-i-m commented Mar 22, 2018

1.26 is going to be a really exciting release. We already have i128 and ..= in there...

@cramertj

This comment has been minimized.

Copy link
Member Author

cramertj commented Mar 22, 2018

@mark-i-m And !-type, and probably dyn and match_default_bindings, slice patterns...

@mark-i-m

This comment has been minimized.

Copy link
Contributor

mark-i-m commented Mar 23, 2018

Woah what really!? 🎉

@kennytm

This comment has been minimized.

Copy link
Member

kennytm commented Mar 23, 2018

Confirmed stabilized:

  • Option<&mut T>::cloned()
  • LocalKey::try_with (for thread-local storage)
  • slice pattern (match x { &[y, z] => w, ... })
  • [T]::rotate_left and [T]::rotate_right
  • The Book 2nd edition
  • --remap-path-prefix
  • <*T>::add, <*T>::copy_nonoverlapping, etc
  • Box::leak
  • inclusive range (..=)
  • never type (!)
  • FusedIterator
  • format!("{:02x?}", [0x41, 0x42, 0x43])
  • closures will derive Copy and Clone

Scheduled to be stabilized:

  • i128 (likely can't make it 😞)
  • impl Trait

I'm not quite sure if dyn and match_default_bindings can make it, as 1.26 is going to enter beta on March 27th (Tuesday). We could keep 1.27 exciting??? 😄

@mark-i-m

This comment has been minimized.

Copy link
Contributor

mark-i-m commented Mar 23, 2018

Lol @nrc is this boring enough for you :)

@messense messense referenced this pull request Mar 23, 2018

Open

Compile with stable Rust #19

8 of 13 tasks complete
@SimonSapin

This comment has been minimized.

Copy link
Contributor

SimonSapin commented Mar 23, 2018

Reviewers! Help me add to that list ;)

  • Copy and Clone for closures #49299
  • TryFrom and TryInto #49305

kennytm added a commit to kennytm/rust that referenced this pull request Mar 24, 2018

Rollup merge of rust-lang#49255 - cramertj:stable-impl-trait, r=nikom…
…atsakis

Stabilize impl Trait

Blocked on:

- [x] rust-lang#49041 and
- [ ] completion of FCP in rust-lang#34511 (comment) (3 days from now).

I have not yet done any docs work for this-- I probably won't get to it until this weekend (might be a project for the flight to the all-hands).
@bors

This comment has been minimized.

Copy link
Contributor

bors commented Mar 24, 2018

☔️ The latest upstream changes (presumably #49251) made this pull request unmergeable. Please resolve the merge conflicts.

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Mar 26, 2018

📌 Commit 37f2de9 has been approved by nikomatsakis

@cramertj

This comment has been minimized.

Copy link
Member Author

cramertj commented Mar 26, 2018

@bors r-

need to update lockfile first, perhaps? will test locally

@cramertj cramertj force-pushed the cramertj:stable-impl-trait branch from 37f2de9 to c3e2961 Mar 26, 2018

@cramertj

This comment has been minimized.

Copy link
Member Author

cramertj commented Mar 26, 2018

@bors r=nikomatsakis p=100

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Mar 26, 2018

📌 Commit c3e2961 has been approved by nikomatsakis

@cramertj

This comment has been minimized.

Copy link
Member Author

cramertj commented Mar 26, 2018

@bors r-

@cramertj cramertj force-pushed the cramertj:stable-impl-trait branch from c3e2961 to 0f5b52e Mar 26, 2018

@cramertj

This comment has been minimized.

Copy link
Member Author

cramertj commented Mar 26, 2018

@bors r=nikomatsakis p=100

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Mar 26, 2018

📌 Commit 0f5b52e has been approved by nikomatsakis

@bors

This comment has been minimized.

Copy link
Contributor

bors commented Mar 26, 2018

⌛️ Testing commit 0f5b52e with merge 5e4603f...

bors added a commit that referenced this pull request Mar 26, 2018

Auto merge of #49255 - cramertj:stable-impl-trait, r=nikomatsakis
Stabilize impl Trait

Blocked on:

- [x] #49041 and
- [ ] completion of FCP in #34511 (comment) (3 days from now).

I have not yet done any docs work for this-- I probably won't get to it until this weekend (might be a project for the flight to the all-hands).
@bors

This comment has been minimized.

Copy link
Contributor

bors commented Mar 26, 2018

☀️ Test successful - status-appveyor, status-travis
Approved by: nikomatsakis
Pushing 5e4603f to master...

@bors bors merged commit 0f5b52e into rust-lang:master Mar 26, 2018

2 checks passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details
homu Test successful
Details

@cramertj cramertj deleted the cramertj:stable-impl-trait branch Mar 26, 2018

@sunchao sunchao referenced this pull request May 11, 2018

Open

Compile with stable Rust #119

1 of 5 tasks complete
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.