hubcaps-ex 0.6.2

Rust interface for Github
Documentation
use futures::prelude::*;
use hubcaps::{Credentials, Github, Result};
use std::env;

#[tokio::main]
async fn main() -> Result<()> {
    pretty_env_logger::init();
    let token = env::var("GITHUB_TOKEN").expect("example missing GITHUB_TOKEN");
    let github = Github::new(
        concat!(env!("CARGO_PKG_NAME"), "/", env!("CARGO_PKG_VERSION")),
        Credentials::Token(token),
    )?;

    println!("watched repos");
    github
        .activity()
        .watching()
        .iter()
        .try_for_each(|repo| async move {
            println!("{}", repo.full_name);
            Ok(())
        })
        .await?;

    println!("watch a repo");
    let sub = github
        .activity()
        .watching()
        .watch_repo("octocat", "Hello-World")
        .await?;
    println!("subscription: {:#?}", sub);

    println!("get watching for repo");
    let another = github
        .activity()
        .watching()
        .get_for_repo("octocat", "Hello-World")
        .await?;
    println!("subscription: {:#?}", another);

    println!("ignore a repo");
    let ignore = github
        .activity()
        .watching()
        .ignore_repo("octocat", "Hello-World")
        .await?;
    println!("subscription: {:#?}", ignore);

    println!("unwatch a repo");
    github
        .activity()
        .watching()
        .unwatch_repo("octocat", "Hello-World")
        .await?;

    Ok(())
}