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

Amend RFC 1242 to require an RFC for deprecation of crates from the nursery #1983

Merged
merged 3 commits into from
Aug 23, 2017

Conversation

jethrogb
Copy link
Contributor

@steveklabnik steveklabnik added the T-libs-api Relevant to the library API team, which will review and decide on the RFC. label Apr 27, 2017
@burdges
Copy link

burdges commented Apr 27, 2017

I think this generally comes under the 1.0-level crates objective of the 2017 roadmap or maybe the high quality crates goal rooted in the Rust platform discussion.

An approach might be to open a well informed "What do we want for 1.0 discussion?" issue on each of the nursery crates named in this RFC, and link them from the 1.0-level crates objective issue. Is a log vs slog discussion needed? I know rand has numerous open issues and pull requests, but maybe the existing functionality could be declared "stable enough", even if not 1.0. etc. Also, I think declaring rustfmt to be 1.0 sounds really hard, but it has an RFC process and zero risk of depreciation, so maybe just skip that one.

As an aside, I'd suspect the name "nursery" would be inappropriate for crates the language developers view as stable and ship with the compiler. There is no breaking change in merely moving a crate from the nursery to another github url though.


Acceptance into the nursery could be hindered if it is believed it could be
hard to reverse course later due to the required RFC being percieved as an
obstacle. On the other hand, RFCs with broad concensus do not generally impose
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo: s/concensus/consensus/

Acceptance into the nursery could be hindered if it is believed it could be
hard to reverse course later due to the required RFC being percieved as an
obstacle. On the other hand, RFCs with broad concensus do not generally impose
a large procedural burden, and if there is no concensus it might be too early
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo: s/concensus/consensus/

@jethrogb
Copy link
Contributor Author

jethrogb commented Apr 28, 2017

I know rand has numerous open issues and pull requests, but maybe the existing functionality could be declared "stable enough", even if not 1.0. etc.

I've been hearing rumors about a "big rewrite/redesign" for quite a while now, but nothing seems to actually be happening on that front.

@aturon aturon self-assigned this Apr 29, 2017
@aturon
Copy link
Member

aturon commented Apr 29, 2017

cc @rust-lang/libs: TL;DR, require an RFC to deprecate nursery crates. I agree with the rationale here; since the whole point of rust-lang crates is to put these libraries under full community governance, that should certainly apply to deprecation too.

@rfcbot fcp merge

@rfcbot
Copy link
Collaborator

rfcbot commented Apr 29, 2017

Team member @aturon has proposed to merge this. The next step is review by the rest of the tagged teams:

No concerns currently listed.

Once these reviewers reach consensus, this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

See this document for info about what commands tagged team members can give me.

@sfackler
Copy link
Member

What happens if an RFC to deprecate a nursery crate is rejected? Does the libs team have some kind of SLA on maintenance of a library none of them want to maintain?

@sfackler
Copy link
Member

@jethrogb a rand overhaul is blocked on someone with the time and interest stepping up and owning the design and implementation.

@aturon
Copy link
Member

aturon commented Apr 29, 2017

@sfackler Keep in mind that it's the libs team that would make the decision on such RFCs. So it's really more about consulting the broader community and opening up a discussion, ensuring that it's not a "libs team against the world" type situation. I would imagine these RFCs would be pretty short, but that in at least some cases discussion would lead to discovery of people who do want to maintain the library (in the case that it's not being deprecated in favor of something else).

@sfackler
Copy link
Member

sfackler commented May 9, 2017

So the only real change here is adding a ~month to the time it takes from our decision to do this to actually making the move? I don't really see a world in which there's some huge outcry that we have to continue maintaining something.

@aturon
Copy link
Member

aturon commented May 9, 2017

@rfcbot fcp cancel

We discussed this RFC in libs team triage, and it has led us to want to re-think the rust-lang-* orgs altogether (in light of the Blitz). @sfackler and I are going to work together to write up our thoughts as a counter-proposal.

@rfcbot
Copy link
Collaborator

rfcbot commented May 9, 2017

@aturon proposal cancelled.

@aturon
Copy link
Member

aturon commented Jul 19, 2017

I'm going to propose to close this RFC, for two reasons:

  • Almost all of the crates listed are undergoing work toward 1.0 as part of the libz blitz or other efforts this year.

  • The libs team no longer plans to introduce new crates through the nursery process, instead focusing on supporting the decentralized ecosystem.

In any case, any move to deprecate any of the existing crates will certainly involve public discussion.

@rfcbot fcp close

@rfcbot
Copy link
Collaborator

rfcbot commented Jul 19, 2017

Team member @aturon has proposed to close this. The next step is review by the rest of the tagged teams:

Concerns:

Once these reviewers reach consensus, this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

See this document for info about what commands tagged team members can give me.

@rfcbot rfcbot added the proposed-final-comment-period Currently awaiting signoff of all team members in order to enter the final comment period. label Jul 19, 2017
@jethrogb
Copy link
Contributor Author

jethrogb commented Jul 26, 2017

The libs team no longer plans to introduce new crates through the nursery process, instead focusing on supporting the decentralized ecosystem.

Has there been any discussion on this change? I understand that the libs team is very busy and the community can't just expect the libs team to do everything we throw at them. Therefore it's entirely reasonable that the libs team changes the way they operate if they think that will balance their workload. I do think it's important that if the libs team wants to make those changes that there is some public discussion about this, so that the community can see if there's any slack left that needs to be picked up elsewhere.

One main question I have is: what will be the process to move things into std?

Please elaborate on https://twitter.com/fitzgen/status/889980459953692674 with regards to your earlier statement.

In any case, any move to deprecate any of the existing crates will certainly involve public discussion.

This is basically all that this RFC proposes to change, so why not just merge?

@dtolnay
Copy link
Member

dtolnay commented Jul 30, 2017

Is there a counter-proposal (#1983 (comment)) yet?

I would be inclined to accept the RFC. So far the main argument against sounds like "we will never again deprecate anything from the nursery" which I don't find compelling.

So the only real change here is adding a ~month to the time it takes from our decision to do this to actually making the move?

I don't expect a practical difference between how people treat a deprecation announcement without this RFC, vs a deprecation RFC per this RFC. People who care will take either as an indication to look for an alternative library—or raise concerns that a suitable alternative does not exist, which the RFC provides a place to do.

@rfcbot concern let's do it

@aturon
Copy link
Member

aturon commented Aug 9, 2017

@rfcbot fcp cancel

@rfcbot
Copy link
Collaborator

rfcbot commented Aug 9, 2017

@aturon proposal cancelled.

@rfcbot rfcbot removed the proposed-final-comment-period Currently awaiting signoff of all team members in order to enter the final comment period. label Aug 9, 2017
@aturon
Copy link
Member

aturon commented Aug 9, 2017

Alright, after talking last week in the libs team, we're just gonna go forward with this.

Several of the nursery crates are being tackled as part of the Blitz, and are expected to head toward rust-lang proper. The others, we'll probably propose deprecation for in a single RFC.

@rfcbot fcp merge

@rfcbot
Copy link
Collaborator

rfcbot commented Aug 9, 2017

Team member @aturon has proposed to merge this. The next step is review by the rest of the tagged teams:

No concerns currently listed.

Once these reviewers reach consensus, this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up!

See this document for info about what commands tagged team members can give me.

@rfcbot rfcbot added the proposed-final-comment-period Currently awaiting signoff of all team members in order to enter the final comment period. label Aug 9, 2017
@aturon
Copy link
Member

aturon commented Aug 9, 2017

(I ticked everyone's boxes based on the discussion in the meeting.)

@rfcbot rfcbot added final-comment-period Will be merged/postponed/closed in ~10 calendar days unless new substational objections are raised. and removed proposed-final-comment-period Currently awaiting signoff of all team members in order to enter the final comment period. labels Aug 9, 2017
@rfcbot
Copy link
Collaborator

rfcbot commented Aug 9, 2017

🔔 This is now entering its final comment period, as per the review above. 🔔

@rfcbot
Copy link
Collaborator

rfcbot commented Aug 19, 2017

The final comment period is now complete.

@aturon aturon merged commit 3505b42 into rust-lang:master Aug 23, 2017
@aturon
Copy link
Member

aturon commented Aug 23, 2017

This RFC has now been merged. Thanks @jethrogb!

@Centril Centril added the A-nursery Proposals relating to the rust-lang-nursery. label Nov 23, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-nursery Proposals relating to the rust-lang-nursery. final-comment-period Will be merged/postponed/closed in ~10 calendar days unless new substational objections are raised. T-libs-api Relevant to the library API team, which will review and decide on the RFC.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants