Meeting 2015-07-15
- aturon, nmatsakis, huonw, acrichto, brson, pcwalton, steveklabnik
- Breaking changes (nmatsakis)
- Core team meeting schedule
- Specialization vs dropck (aturon)
- Regression test on nightly is pretty bad. Needs investigation.
- acrichto: a bunch were missing docs
- aturon: How should we treat lints in regression testing?
- nmatsakis: I think we should compile in the same way we would for upstream crates.
- brson: What can we do for 1.2 re: lint changes?
- acrichto: Cargo change won't be ready by then; still in RFC state.
- brson: I'd like to do something
- nmatsakis: So we can roll back the lint change (or make it more of a warning -- but that would require changing the lint infrastructure). We can try to fix the crates ourselves...
- acrichto: The fix is trivial. If they needed to be fixed, it would've happened already. So I think these are crates that aren't getting a lot of use. Not clear what the impact of us fixing it would be.
- huon: But we also want to take breakage seriously.
- brson: Right, I don't want to give special treatment to crates that are popular.
- acrichto: But this was intended breakage.
- steveklabnik: We could reach out to the authors quickly -- try to do both. I would be happy to do PRs for the affected crates right away.
- aturon: So for breakage that's intended and allowed, what does it mean to take it seriously? What should we ahve done for the issue that affected Servo this week?
- pcwalton: Yes, in that case the change was a clear bugfix to linkage that needed to move forward. As I understand there was not a lot of heads up about this change. (We only needed to do rustup because of dependency changes from connect -> join.) So we didn't know what to do, and the fix is nontrivial -- we still haven't fully fixed it.
[.. Some discussion of specifics ..]
- pcwalton: If we have reason to believe that a breaking change is going to happen -- especially with significant fallout -- it'd be nice to know in advance.
- brson: So the fallout here was pretty unexpected, yes?
- acrichto: I would have said it was a breaking change; I could have predicted that this use case would break. But it didn't occur to me.
- brson: From end user perspective, any change to behavior is a problem.
- nmatsakis: If we take "regression" to mean "your code stopped compiling", then at least we get a heads up, even if certain regressions are allowed.
- brson: We could have had the foresight, but we didn't. We don't have any obvious procedure for this except for file a bug.
- aturon: We caught this in nightly, so at least we'd know to alert stable users. Not clear how to alert nightly users.
[ .. A lot more discussion about what do to for this case .. ]
- This renaming forced a bunch of packages to move forward in nightly in a non-back-compat way.
- Idea: deprecated as of version! this will allow us to schedule deprecation for the future, and show that in Rust doc.
- Reviewed the issues arising in the interaction of specialization and dropck, see rust-lang/rfcs#1210