Skip to content
Are we async yet?
Branch: master
Clone or download
Latest commit 4d6d41d Mar 12, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
graphql Refactor so that we can cache fetched issue data Feb 5, 2019
src Use hashmap_as_tuple_list from serde_with Feb 18, 2019
static List related issues in the page Jan 12, 2019
templates
.gitignore
.travis.yml Use page generating rather than client side script Jan 12, 2019
CNAME
Cargo.lock Update dependencies Feb 28, 2019
Cargo.toml
LICENSE-APACHE
LICENSE-MIT Add license Jan 19, 2019
README.md Use the new repo url Feb 28, 2019
data.yml
posts.yml Add another post from Yoshua Wuyts Mar 2, 2019

README.md

Are we async yet

Build Status

areweasyncyet.rs is a website for tracking development progress of async/await syntax of Rust programming language in the language itself as well as its ecosystem.

It's implemented as a static page generator, and deployed to GitHub Pages via Travis.

Building

To build the site locally, you would need a GitHub personal access token for fetching data from GitHub. You can refer to this article for how to create such token.

Once you get the token, put it into .env file like this:

GITHUB_TOKEN={your token}

and then execute cargo run.

You may also want to enable logs by adding

RUST_LOG=areweasyncyet=debug

to the .env file.

From there, the generated HTML will be in the out directory. You can use any web server to check it out in your browser:

cd out
python3 -mhttp.server

Development

Majority of the Rust code is for handling issue data from GitHub. Content mainly resides in data.yml and templates directory.

After the first execution, fetched data would be stored in cache.json file in the current directory to avoid repeatedly fetching data when updating data.yml and templates. If latest data from GitHub is needed, simply remove that cache file.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.