book icon indicating copy to clipboard operation
book copied to clipboard

[WIP] `async` and `.await` chapter

Open carols10cents opened this issue 1 year ago • 1 comments

A working draft of a new chapter on async and await! If you have been invited to give comments, please do so! (If you’re not someone we have actively invited, we kindly ask you to hold off: although we are working in public, we cannot absorb too much feedback at once. Thanks!)

View the rendered version of this PR at https://rust-lang.github.io/book/ch17-00-async-await.html.

[!NOTE] This branch does not include changes to the listings for the chapters after this new chapter. As @carols10cents put it:

😬 GitHub is straight up not having a good time rendering the full diff of https://github.com/rust-lang/book/pull/3908 with all the listing changes 😱

Additionally, we will need to make some other small changes to other chapters (and possibly some significant ones to the “final project” chapter) to account for having this new material in place. Those are all also out of scope for this PR!

carols10cents avatar Apr 30 '24 17:04 carols10cents

things that appear small but I think are important for us to figure out while working, like figuring out what terminology we should standardize on and where we should define which terms.

1,000% on board with this!

Also very on board with working on this separate branch. I will likely keep the other around for reference (and we may even be able to merge it when all is said and done, who knows), but it will be a lot easier to deal with the mechanical bits separately from the prose bits, and we really don’t want to land any of that till we are actually ready to land the chapter. 😅

I have replied to most of the comments here, and I have read all of them; if I haven’t yet replied to one it is just because I am still mulling on it!

chriskrycho avatar Apr 30 '24 22:04 chriskrycho

All right, status: I have made a huge revision to the chapter—most of the content is the same, but the structure is very different, and I completely replaced the example in 17.01 to get “real” async happening up front much sooner. Given that this PR is basically destroying GitHub, I am going to:

  1. Merge #4033 into it. There are some more things to do before this is 100% wrapped, but they are small, iterative improvements, rather than the major reworking that PR represents.
  2. Close this PR and open a new one. GitHub cannot handle this many comments (it can barely handle this many commits!), with a new branch.
  3. Publish the updated version of the trpl crate.
  4. Deploy the updated chapter to GitHub Pages for easy preview/review.

:rocket:

Just want to say here publicly (as I will do in many other places) a huge thanks to @timClicks, @willcrichton, and @jamesmunns as outside reviewers, and of course @carols10cents as co-author, whose input has made this a profoundly better chapter.

chriskrycho avatar Sep 23 '24 15:09 chriskrycho