2020 roadmap post

The blocker here is design work. There was a Pre-RFC about inline asm a while back, but there was still some discussion to be had and somebody needs to champion and implement the ideas.

Two points:

Also, why is inline assembly a blocker for kernel development? Can't you link in assembly blobs?

Another approach would be Cargo-side improvements, e.g. asm_dir = "foo" and asm = "cc" in Cargo.toml which would result in taking the files in foo, feeding them to cc, and linking in the object files (credit due to @oli-obk for the idea).

Technical Debt and Measurable Progress

@mark-i-m Remember how I was arguing that maturity / sustainability isn't necessary? I take it all back. Despite having had a "year of maturity", there's still loads of things to finish. I do think we should continue next year with "Implement all the things; Be extremely conservative with accepting new RFCs if we don't have people lined up to implement and review them and if we don't think they are readily implementable."

It seems clear that a lot of good work was done by a lot of people.

Here's some more:

We should pick a few milestones and put active focus on achieving them. This applies even to technical debt work: we should explicitly choose certain technical debt items, make a big list, and actively work through it in a measurable way.

I think we can reasonably maintain a list of high level goals, but I think we should also avoid micro-management. At the end of the day, Rust is an open source project, not a company. I wouldn't want to feel like an employee.

Making a new edition just because it has been 3 years doesn't make sense to me. Indeed, I think we should make a new edition only when needed to reduce churn and overhead on the users.

I agree with this punchline.

We could collect things we want to change, perhaps even eagerly gate them under a new edition_next feature gate and then one day, when we think there's enough things in there we can RFC a proposal to stabilize set editions and its contents.

7 Likes