Async Ecosystem WG

The Async Ecosystem WG is meeting regurlary every Thursday on Discord: wg-net-web. The meeting notes can be found in our GitHub repository and here in this thread.


Six-Week Sprint

  • End date: 2019-05-02 (six weeks)
    • Sprint goals
      • One week away from the end of the sprint
      • Tide: Probably merging the Context PR is the only achievable goal, good progress in regards to session management though
      • Async book: Could finish the goals
      • Website goals seem to be done
      • Library ecosystem: Done as well
      • Preparing the next sprint: Some pre-thinking is needed ahead of the next meeting; formalize and communicate the project list on the agenda is also one important factor for next sprint
      • In addion we could have rough leads on each sub-project
      • Still need to update the discord channels and the README
    • Yosh not attending 02/05 meeting

Working Group Updates

  • Status updates

    • tide
      • Improved cookie support landed (PR)
        • Great example of how to use middleware and context extensions
        • It extends Context with the ability to both read and write cookies
        • The middleware, after invoking the endpoint, then reads out the updated cookies and adds them to the response
        • Could code example to get familiar with Context and middleware
      • General very active in the last week, lots of discussions and new members
      • PR is coming up soon which does the crate split discussed last week
      • Need to workout a process for review and contribution, and when folks are allowed to merge
      • http-service: Returns now a future (PR), now we can work on this issue in tide
      • Breaking change to http-service-hyper that changes function signature (serve → run, serve_async → serve)
    • futures
      • futures_api is now stable in nightly
      • futures crate updated accordingly
      • expect a PR to put remaining unstable features in futures crate behind a feature flag, so that the crate can work on stable
    • runtime
      • Patched a bug where macros would fail
      • Quite popular, past 500 stars on GitHub
      • Created tracking issues for people to get involved (link)
    • romio + juliex
      • no updates
    • async rust book
      • Approaching cramertj and coming up with a plan next week
      • Plan is to move the book under the rustasync umbrella
    • arewewebyet
      • Removed outdated packages
      • Added two new topics:
        • asyncio:
          • tokio
          • futures
        • nodejs
          • neon
  • Issue triage (org | tide)

    • PR sign-off process



  • Aaron will take a break for a while; currently set for about a month
  • @yoshua w will take over the meetings for this time, with the help of @V B
  • Stable Futures set for release 1.36
  • Stable .await syntax set for release 1.37

Six-Week Sprint

  • End date: 2019-05-02 (six weeks)
    • Last week was the end of the previous sprint; we didn’t kick off a new one yet
  • Reflect on past sprint
    • Sprint tracking didn’t go well
    • Milestones could help with keeping an up-to-date view of the sprint
    • Using GitHubs org board for the next sprint to get a better overview what is being worked on
    • Set sprint goals and check them into the team repository
    • Weekly management of the sprint goals via the org board in GitHub
  • Plan new sprint
    • tide
      • Carry over the “stable core” RFC into the next sprint (link)
      • Session management
      • A way of handling CORS in tide
      • TLS
      • Authentication
    • runtime
      • Add WASI support (APIs + macros)
      • WASM Support (macros)
      • timers
      • UNIX domain sockets
      • Better stream syntax using for_each
    • async book
      • Outline done
      • Open issues for each section
      • Started the migration guide
      • Written two example sections
        • like how to write a future app (http client and server)
        • A crawler would be a good idea for a client.


Six-Week Sprint (2019-05-16 — 2019-06-20)

  • Open "``sprint``" issues
  • Board is open now, ToDos are added for all open issues
  • How async-compression looks like right now will probably stay that way, aside from asyncbufread
  • Writing a blog post about the compression issue so people know there is a compression middleware available (will be added to the sprint goals)

Working Group Updates

  • tide
    • tide-cors: We can re-use some implementation from actix, also @Prasanna L implemented a small version for tide which can be extended
    • The modular split for tide came quite far: One PR is merged, the other one can maybe be merged this week; we should land the last PR as well before we push a new release
    • app.serve will return a Future, where starts the server (still some examples are needed for use cases and how it used in the end)
    • futures
      • Futures has a new release(0.3.0-alpha.16) which supports the new .await syntax
      • We need to open a discussion about moving Futures off the -alpha/-preview releases once it’s stabilizes
      • Stream is part of futures-core which is intended to be non-breaking once it releases
      • Sink is in a separate futures-sink crate, which means breaking changes are possible
    • runtime
      • no updates this week
    • books
      • Discussion around the outline/content started (link)
      • Open for input
      • No content yet
    • websites
      • No updates this week
  • PR sign off process
    • We need to establish basic, low key requirements to accept and merge pull requests
    • Maybe with the help of GitHub to set some requirements before a PR can be merged (minimum number of reviews for example)
    • PR has to be linked to an issue where consensus has been reached with regards to the general approach to solving the problem
    • The tool bors might be a help with some of the issues
1 Like


  • Reminder to write minutes

Working Group Updates

  • RFC Triage
    • Two new RFCs will be opening discussion session management and authentication
    • Setting up a process for working with RFCs
      • Centralized RFCs repo or per repo RFC dir?
        • Per repo RFCs for now, more discussion to happen on the rustasync/team repo.
  • Six-Week Spring (2019-05-16 - 2019-06-20)
    • Open “sprint” issues
    • A lot of progress has been made across most of the issues being tracked.
    • Discussion around how to name extension traits in tide. More discussion to happen in the associated issue.
  • Status Updates
    • tide
      • Building a TodoMVC backend.
      • tide-core: more work has been done to decouple sub projects
      • RFCs will be opened soon for sessions and authentication.
    • futures
      • Biggest change is futures-preview now has a beta build which does not require the async-await feature.
    • runtime
      • Timers should be releasing next week.
      • Next month work will be starting on for_await(parallel) and a new crate par which abstracts over rayon/runtime
    • books
      • No progress made over the last week.
      • Meeting with the compiler team to have the right resources to guide people with the upcoming async/await feature.
    • websites
      • No updates this week.
  • Office hours


  • Reminder to write minutes

Working Group Updates

1 Like


  • Working Group Updates
    • RFC Triage
      • One open RFC about extensible routing; needs more reviews (link)
    • Six-Week Sprint (2019-05-16 — 2019-06-20)
      • Open "sprint" issues
      • Current status: 6 items done, 6 in progress, 7 in todo
      • Session Management has to be picked up by someone (issue)

    Status updates

    • tide
      • Current master fails to build with nightly after about 2019-06-01 (bug in the compiler). This is affecting people who want to use tide obviously as well (issue)
      • The restructure PR has to be merged so we can continue the other open todos (pr)
      • testing framework is about to moved into its own submodule (pr)
    • futures
      • No updates this week
    • runtime
      • No updates this week
    • books
      • No updates, “get book outline” is still open (issue)
      • The idea so far is moving it to a more cookbook style book
      • Weekly meetings to get the docs up to speed for async/await and 1.37; those will happen every Tuesday
      • CI is now in place to build the books
      • The book is being worked on this repository (link)
      • The book has its own zulip stream (link)
    • websites
      • No Updates this week
    • Pre-allocate agenda items
      • It would help the meeting in general to fill out the status updates before the meeting. The WASM WG is doing that and it seems to work quite well there.


Working Group Updates

RFC Triage

  • Only open RFC is around extensible routing in tide (link) and will be worked on in this upcoming sprint

Sprint planning

  • Main focus is runtime this sprint
  • Working on the book should be a priority as well with RustConf approaching and Futures + async/await being stable (soon)
  • @Wim L git a tide web app running on runtime-native (link) and will add examples


Working Group Updates

  • RFC Triage
    • One open RFC about extensible routing; needs more reviews (link)
  • Six-Week Sprint (2019-06-27 — 2019-08-08)

Status updates


Working Group Updates

RFC Triage

  • Nothing to report on this week

Six-Week Sprint (2019-06-27 — 2019-08-08)

Status updates

  • tide
    • RFC for extensible routing is still under discussion (“should it be extensible or not?”) (link)
    • Triage meeting is planned for the upcoming Monday to gain momentum again in tide and go through stalled issues, (re)label and assign them
    • We have to push a new release because of the async_closure chages. Tide is currently not usable with nightly (link)
  • futures
    • Rust 1.36 stabilized the Future trait (link)
  • runtime
    • no updates this week
  • books
    • The language team is working on the documentation around async/await
    • Meetings on the async book are held in zulip (so far not much progress in the last couple of weeks)
  • websites
    • arewewebyet: PR open with updated information (link)
    • aerwewebyet: Update on the recommended frameworks, removed outdated information (link)
  • http-service
    • Rust version upgraded, repaired CI status (PR)
    • Implement an example http-service which runs on AWS Lambda (PR)
1 Like


Office Hours

  • Maintainers handbook?
    • Some central documentation on what maintainers responsibilities are
  • Core maintainers
    • Per-repo primary points of contact for making any sort of hard decisions
  • GitHub org roles
    • review + commit vs publish

We decided to introduce GitHub teams to visualize and highlight people involved in each repositories and who is responsible for reviews, merges etc. @yoshua w will map out a plan and create the structure on GitHub (after he pinged the people involved/on the list)

  • RFC process on Tide

Issues instead of RFC seems sufficient enough for now, since the RFC process didn’t really caught on

  • Discuss the content we should provide and create issues around the next steps

@Lucio F will start bringing back to life and start publishing blog posts around the working group and repos we manage

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.