├── static └── .gitkeep ├── templates ├── .gitkeep ├── errors.html ├── index.html └── base.html ├── tailwind.css ├── postcss.config.js ├── .env.example ├── src ├── actors │ ├── mod.rs │ └── mailer.rs ├── views │ └── mod.rs ├── markdown.rs ├── controllers │ └── mod.rs ├── models │ └── mod.rs ├── settings.rs ├── main.rs └── errors.rs ├── .gitignore ├── tailwind.config.js ├── conf └── default.toml ├── package.json ├── LICENSE ├── Cargo.toml ├── setup.sh ├── README.md ├── yarn.lock └── Cargo.lock /static/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /templates/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tailwind.css: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | @tailwind components; 3 | @tailwind utilities; 4 | -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: { 3 | tailwindcss: {}, 4 | autoprefixer: {}, 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- 1 | DATABASE_URL=postgres://user:password@localhost/{{crate_name}} 2 | APP_DEBUG=1 3 | RUN_MODE=development 4 | RUST_LOG=debug 5 | -------------------------------------------------------------------------------- /src/actors/mod.rs: -------------------------------------------------------------------------------- 1 | //! App actors 2 | //! 3 | //! Here you can define your actors to do background work. 4 | 5 | mod mailer; 6 | 7 | pub use mailer::*; 8 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | 3 | conf/*.toml 4 | !conf/default.toml 5 | 6 | static/css/main.css 7 | static/css/main.min.css 8 | 9 | .env 10 | 11 | node_modules/ 12 | -------------------------------------------------------------------------------- /templates/errors.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block content %} 4 |

Error: {{ code }}

5 |

{{ msg }}

6 | {% endblock content %} 7 | -------------------------------------------------------------------------------- /templates/index.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block content %} 4 |

Welcome to Rustack

5 |

Powered by Rust and tailwindcss.

6 | {% endblock content %} 7 | -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | purge: [ 3 | './templates/**/*.html' 4 | ], 5 | darkMode: false, // or 'media' or 'class' 6 | theme: { 7 | }, 8 | variants: { 9 | extend: {}, 10 | }, 11 | plugins: [], 12 | } 13 | -------------------------------------------------------------------------------- /conf/default.toml: -------------------------------------------------------------------------------- 1 | [database] 2 | url = "postgres://user:password@localhost/dbname" 3 | 4 | [http] 5 | url = "http://localhost:8080" 6 | secure = false 7 | secret = "-------------------------------------------------" 8 | 9 | [smtp] 10 | domain = "domain.com" 11 | user = "no-reply@domain.com" 12 | pass = "pass" 13 | 14 | [files] 15 | static_dir = "./static" 16 | -------------------------------------------------------------------------------- /src/views/mod.rs: -------------------------------------------------------------------------------- 1 | //! Views 2 | //! 3 | //! Define the app views here. 4 | //! 5 | 6 | pub use askama::Template; 7 | use derive_more::Constructor; 8 | 9 | #[derive(Template, Constructor)] 10 | #[template(path = "errors.html")] 11 | pub struct Error<'a> { 12 | pub title: &'a str, 13 | pub code: i32, 14 | pub msg: &'a str, 15 | } 16 | 17 | #[derive(Template, Constructor)] 18 | #[template(path = "index.html")] 19 | pub struct Index<'a> { 20 | pub title: &'a str 21 | } 22 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "license": "ISC", 3 | "scripts": { 4 | "build": "yarn run build-css && yarn run compress", 5 | "build-css": "yarn run tailwindcss build tailwind.css -o ./static/css/main.css", 6 | "compress": "yarn -s run minify ./static/css/main.css > ./static/css/main.min.css" 7 | }, 8 | "devDependencies": { 9 | "autoprefixer": "^10.2.5", 10 | "postcss": "^8.2.8", 11 | "tailwindcss": "^2.0.4", 12 | "minify": "^7.0.1", 13 | "uglify-js": "^3.13.3" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /templates/base.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | {% block title %}{{ title }} | Rustack{% endblock %} 8 | {% block meta %}{% endblock %} 9 | 10 | {% block head %}{% endblock %} 11 | 12 | 13 | 14 |
15 | {% block content %}{% endblock %} 16 |
17 | 18 | 19 | -------------------------------------------------------------------------------- /src/markdown.rs: -------------------------------------------------------------------------------- 1 | //! Configuration for markdown rendering. 2 | 3 | use comrak::{ComrakExtensionOptions, ComrakOptions, ComrakParseOptions, ComrakRenderOptions}; 4 | 5 | pub fn get_markdown_options() -> ComrakOptions { 6 | ComrakOptions { 7 | extension: ComrakExtensionOptions { 8 | strikethrough: true, 9 | table: true, 10 | autolink: true, 11 | tasklist: true, 12 | superscript: true, 13 | header_ids: Some("".into()), 14 | footnotes: true, 15 | ..ComrakExtensionOptions::default() 16 | }, 17 | render: ComrakRenderOptions { 18 | escape: true, 19 | ..ComrakRenderOptions::default() 20 | }, 21 | parse: ComrakParseOptions { 22 | smart: true, 23 | ..ComrakParseOptions::default() 24 | }, 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /src/controllers/mod.rs: -------------------------------------------------------------------------------- 1 | use actix_web::{HttpResponse, get, web}; 2 | use sitewriter::{Sitemap, Url}; 3 | use crate::errors::*; 4 | use crate::views::*; 5 | use crate::settings::Settings; 6 | 7 | pub fn urls(cfg: &mut web::ServiceConfig) { 8 | // Add your endpoints here: 9 | cfg.service(index); 10 | cfg.service(sitemap); 11 | } 12 | 13 | #[get("/")] 14 | pub async fn index() -> AppResponse { 15 | let template = Index::new("Home"); 16 | let body = template.render()?; 17 | Ok(HttpResponse::Ok().content_type("text/html").body(body)) 18 | } 19 | 20 | #[get("/sitemap.xml")] 21 | pub async fn sitemap(settings: web::Data) -> AppResponse { 22 | let mut sitemap = Sitemap::new(); 23 | 24 | let base_url = &settings.http.url; 25 | 26 | // Add urls for the sitemap here 27 | let index_url = base_url.join("/").unwrap(); 28 | sitemap.urls.push(Url::new(index_url.as_str())); 29 | 30 | Ok(HttpResponse::Ok().content_type("text/xml").body(sitemap.into_str())) 31 | } 32 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 Edgar 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- 1 | [package] 2 | name = "rustack" 3 | version = "1.0.0" 4 | authors = ["~author~"] 5 | edition = "2018" 6 | 7 | # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html 8 | 9 | [dependencies] 10 | actix = "0.11.1" 11 | actix-files = "0.6.0-beta.3" 12 | actix-service = "2.0.0-beta.5" 13 | actix-session = "0.4.1" 14 | actix-web = "4.0.0-beta.4" 15 | cached = "0.23.0" 16 | chrono = { version = "0.4.19", features = ["serde"] } 17 | clap = "3.0.0-beta.2" 18 | colored = "2.0.0" 19 | comrak = "0.10.0" 20 | config = "0.11.0" 21 | dotenv = "0.15.0" 22 | env_logger = "0.8.3" 23 | futures = "0.3.13" 24 | lettre = "0.10.0-beta.3" 25 | tracing = "0.1.25" 26 | rand = "0.8.3" 27 | regex = "1.4.5" 28 | rust-argon2 = "0.8.3" 29 | serde = { version = "1.0.125", features = ["derive"] } 30 | serde_json = "1.0.64" 31 | sitewriter = "0.3.2" 32 | validator = { version = "0.13.0", features = ["derive"] } 33 | askama = "0.10.5" 34 | sqlx = { version = "0.5.1", features = [ "postgres", "runtime-actix-rustls", "macros", "migrate", "uuid", "chrono" ] } 35 | thiserror = "1.0.24" 36 | derive_more = "0.99.13" 37 | url = { version = "2", features = ["serde"] } 38 | -------------------------------------------------------------------------------- /src/models/mod.rs: -------------------------------------------------------------------------------- 1 | //! Models 2 | //! 3 | //! The database models used in the app. 4 | //! 5 | //! Check out https://github.com/launchbadge/sqlx 6 | 7 | #![allow(dead_code)] 8 | 9 | pub use sqlx::types::Uuid; 10 | use sqlx::{PgPool, Result, FromRow}; 11 | 12 | #[derive(FromRow)] 13 | pub struct Todo { 14 | pub id: Uuid, 15 | pub title: String, 16 | pub content: String, 17 | } 18 | 19 | impl Todo { 20 | pub fn new(title: String, content: String) -> Self { 21 | Self { 22 | id: Uuid::new_v4(), 23 | title, 24 | content, 25 | } 26 | } 27 | 28 | // TODO: insert, update, delete, get... 29 | 30 | pub async fn insert(&self, pool: &PgPool) -> Result<()> { 31 | sqlx::query("INSERT INTO todo (id, title, content) VALUES (?, ?, ?)") 32 | .bind(&self.id) 33 | .bind(&self.title) 34 | .bind(&self.content) 35 | .execute(pool) 36 | .await?; 37 | 38 | Ok(()) 39 | } 40 | 41 | pub async fn get(pool: &PgPool, uuid: &Uuid) -> Result { 42 | sqlx::query_as("SELECT * FROM todo WHERE id = ?") 43 | .bind(uuid) 44 | .fetch_one(pool) 45 | .await 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /setup.sh: -------------------------------------------------------------------------------- 1 | echo "---" 2 | echo "Rustack setup script" 3 | echo "---" 4 | echo 5 | 6 | line_db_url=2 7 | line_secret=7 8 | 9 | read -p 'Project name (snake_case): ' project_name 10 | read -p 'Author name: ' author 11 | read -p 'Author email: ' email 12 | read -p 'Database name: ' db_name 13 | read -p 'DB user: ' db_user 14 | read -sp 'DB pass: ' db_pass 15 | echo 16 | read -p 'Create postgres user with provided data? (y/n) ' -n 1 create_user 17 | echo 18 | 19 | # Generate .env 20 | echo "DATABASE_URL=postgres://$db_user:$db_pass@localhost/$db_name" > .env 21 | echo -e "APP_DEBUG=1\nRUN_MODE=development\nRUST_LOG=debug" >> .env 22 | echo "Generated dot env file." 23 | 24 | if [[ $create_user =~ ^[Yy]$ ]]; then 25 | psql -U postgres -c "create user $db_user with CREATEDB PASSWORD '$db_pass'" 26 | fi 27 | 28 | # Generate development.toml 29 | 30 | # DB url 31 | db_url="url = \"postgres://$db_user:$db_pass@localhost/$db_name\"" 32 | sed "${line_db_url}s,.*,$db_url," conf/default.toml > conf/development.toml 33 | 34 | # Secret used to store session. 35 | secret=$(tr -dc 'A-Za-z0-9' /g" $x 46 | done 47 | 48 | -------------------------------------------------------------------------------- /src/settings.rs: -------------------------------------------------------------------------------- 1 | //! Settings 2 | //! 3 | //! Application settings 4 | //! 5 | //! This loads settings from the conf/ folder, it can merge multiple files. 6 | //! 7 | //! 8 | 9 | use config::{Config, ConfigError, Environment, File}; 10 | use url::Url; 11 | use serde::Deserialize; 12 | use std::path::PathBuf; 13 | use std::env; 14 | 15 | #[derive(Debug, Deserialize)] 16 | pub struct Database { 17 | pub url: Url, 18 | } 19 | 20 | #[derive(Debug, Deserialize)] 21 | pub struct Http { 22 | pub url: Url, 23 | pub secure: bool, 24 | pub secret: String, 25 | } 26 | 27 | #[derive(Debug, Deserialize)] 28 | pub struct Smtp { 29 | pub domain: String, 30 | pub user: String, 31 | pub pass: String, 32 | } 33 | 34 | #[derive(Debug, Deserialize)] 35 | pub struct Files { 36 | pub static_dir: PathBuf, 37 | } 38 | 39 | #[derive(Debug, Deserialize)] 40 | pub struct Settings { 41 | pub debug: bool, 42 | pub database: Database, 43 | pub http: Http, 44 | pub smtp: Smtp, 45 | pub files: Files, 46 | } 47 | 48 | impl Settings { 49 | pub fn new() -> Result { 50 | dotenv::dotenv().ok(); 51 | let mut s = Config::new(); 52 | s.merge(File::with_name("conf/default"))?; 53 | 54 | let env = env::var("RUN_MODE").unwrap_or_else(|_| "development".into()); 55 | s.merge(File::with_name(&format!("conf/{}", env)).required(false))?; 56 | 57 | // APP_DEBUG would set debug key 58 | s.merge(Environment::with_prefix("app"))?; 59 | 60 | s.try_into() 61 | } 62 | } 63 | -------------------------------------------------------------------------------- /src/actors/mailer.rs: -------------------------------------------------------------------------------- 1 | //! Mailer actor 2 | //! 3 | //! This actor is used to queue and send emails 4 | //! 5 | 6 | use std::fmt; 7 | 8 | use crate::settings::Settings; 9 | use actix::prelude::*; 10 | use lettre::transport::smtp::authentication::Credentials; 11 | use lettre::{Message as MailMessage, SmtpTransport, Transport}; 12 | use tracing::debug; 13 | 14 | #[derive(Message, Debug)] 15 | #[rtype(result = "Result")] 16 | pub struct MailMsg(pub MailMessage); 17 | 18 | pub struct Mailer { 19 | pub transport: SmtpTransport, 20 | } 21 | 22 | impl fmt::Debug for Mailer { 23 | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { 24 | write!(f, "mailer") 25 | } 26 | } 27 | 28 | impl Actor for Mailer { 29 | type Context = Context; 30 | } 31 | 32 | impl Handler for Mailer { 33 | type Result = Result; 34 | 35 | #[tracing::instrument] 36 | fn handle(&mut self, msg: MailMsg, _: &mut Self::Context) -> Self::Result { 37 | debug!("Sending email: {:?}", msg); 38 | self.transport.send(&msg.0) 39 | } 40 | } 41 | 42 | impl Mailer { 43 | pub fn new(settings: &Settings) -> Self { 44 | Self { 45 | transport: SmtpTransport::relay(&settings.smtp.domain) 46 | .unwrap() 47 | .credentials(Credentials::new( 48 | settings.smtp.user.clone(), 49 | settings.smtp.pass.clone(), 50 | )) 51 | .build(), 52 | } 53 | } 54 | } 55 | -------------------------------------------------------------------------------- /src/main.rs: -------------------------------------------------------------------------------- 1 | use actix::prelude::*; 2 | use actix_files as fs; 3 | use actix_web::{middleware, web, App, HttpServer}; 4 | use sqlx::postgres::PgPoolOptions; 5 | 6 | mod controllers; 7 | mod actors; 8 | mod models; 9 | mod settings; 10 | mod markdown; 11 | mod errors; 12 | mod views; 13 | 14 | use actors::*; 15 | 16 | #[actix_web::main] 17 | async fn main() -> std::io::Result<()> { 18 | dotenv::dotenv().ok(); 19 | env_logger::init(); 20 | 21 | // Load settings 22 | let settings = settings::Settings::new().expect("error loading settings"); 23 | 24 | // Start the mailer actor. 25 | let mailer = Mailer::new(&settings).start(); 26 | 27 | let pool = PgPoolOptions::new() 28 | .connect(settings.database.url.as_str()) 29 | .await 30 | .expect("error creating db pool"); 31 | 32 | let static_dir = settings.files.static_dir.clone(); 33 | 34 | // Markdown parser config. 35 | let comrak_options = markdown::get_markdown_options(); 36 | 37 | let settings_data = web::Data::new(settings); 38 | let mailer_data = web::Data::new(mailer); 39 | let comrak_data = web::Data::new(comrak_options); 40 | 41 | // find out how to get url from name like flask url_for 42 | 43 | HttpServer::new(move || { 44 | App::new() 45 | .data(pool.clone()) 46 | .app_data(settings_data.clone()) 47 | .data(mailer_data.clone()) 48 | .app_data(comrak_data.clone()) 49 | .wrap(middleware::NormalizePath::default()) 50 | .wrap(middleware::Logger::new( 51 | r#"%a %{X-Real-IP}i %t "%r" %s %b "%{Referer}i" "%{User-Agent}i" %T"#, 52 | )) 53 | .wrap(middleware::Compress::default()) 54 | .service(fs::Files::new("/static", &static_dir)) 55 | .configure(controllers::urls) 56 | }) 57 | .bind("127.0.0.1:8080")? 58 | .run() 59 | .await 60 | } 61 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## Rustack 2 | An opinionated fullstack web template for rust that glues actix.rs with other components. 3 | 4 | While it is still work in progress, I think it's usable and a starting point. 5 | 6 | # Usage 7 | First clone: 8 | 9 | ```bash 10 | git clone https://github.com/edg-l/rustack 11 | ``` 12 | 13 | Run the script `setup.sh` after cloning for an automated setup. 14 | 15 | Currently Rustack is preconfigured for postgresql, but with some changes you can make it work for any other database sqlx supports. 16 | 17 | If you select yes to the option to create a database user and your psql "postgres" user is behind a password, you can provide it with `PGPASSWORD=password ./setup.sh` 18 | 19 | You may want to install [sqlx-cli](https://crates.io/crates/sqlx-cli) to manage migrations. 20 | 21 | The app configuration is under the `conf/` directory, currently everything else than `default.toml` is git ignored, you should not modify `default.toml` but rather create 22 | `development.toml` on your development setup and `production.toml` on your production enviroment. 23 | 24 | They will be merged after default.toml, this is all thanks to the [config](https://docs.rs/config/) crate. 25 | 26 | Rustack also uses askama to render templates, I think it fits really well the idea of checking everything possible at compile time that rust itself follows. 27 | 28 | It also has tailwindcss configured by default, you can easily remove it if you don't want it, note that there is a `build.rs` file that runs `yarn build` whenever any related file changes. 29 | 30 | ## Tech used 31 | 32 | Note: Currently rustack uses beta releases of some crates: actix-web and its related crates, lettre. 33 | 34 | - Database: [sqlx](https://github.com/launchbadge/sqlx). 35 | - Templates: [askama](https://github.com/djc/askama). 36 | - Css: [tailwindcss](https://tailwindcss.com/). 37 | - Web framework: [actix.rs](https://actix.rs/). 38 | - Validation: [validator](https://github.com/Keats/validator) 39 | - SMTP: [lettre](https://github.com/lettre/lettre) 40 | - Markdown: [comrak](https://github.com/kivikakk/comrak) 41 | - Password encryption: [rust-argon2](https://github.com/sru-systems/rust-argon2) 42 | - Cache: [cached](https://github.com/jaemk/cached) 43 | - Sitemap: [sitewriter](https://github.com/edg-l/sitewriter) 44 | -------------------------------------------------------------------------------- /src/errors.rs: -------------------------------------------------------------------------------- 1 | //! # Errors 2 | //! 3 | //! This module contains a enum with all the errors your app has and how to render them. 4 | //! 5 | 6 | use std::fmt::Debug; 7 | 8 | use actix_web::http::StatusCode; 9 | use actix_web::web::HttpResponse; 10 | use actix_web::ResponseError; 11 | use askama::Template; 12 | use thiserror::Error; 13 | use validator::ValidationErrors; 14 | use crate::views::Error as ViewError; 15 | use tracing::error; 16 | 17 | #[allow(dead_code)] 18 | #[derive(Error, Debug)] 19 | pub enum AppError { 20 | #[error("validation errors {0}")] 21 | ValidationErrors(#[from] ValidationErrors), 22 | #[error("actix web error {0}")] 23 | ActixError(#[from] actix_web::Error), 24 | #[error("askama error {0}")] 25 | TemplateError(#[from] askama::Error), 26 | #[error("database error {0}")] 27 | DatabaseError(#[from] sqlx::Error), 28 | #[error("not found")] 29 | NotFound, 30 | #[error("missing permision: {0}")] 31 | MissingPermission(String), 32 | } 33 | 34 | impl ResponseError for AppError { 35 | fn status_code(&self) -> StatusCode { 36 | match self { 37 | Self::ValidationErrors(_) => StatusCode::BAD_REQUEST, 38 | _ => StatusCode::INTERNAL_SERVER_ERROR, 39 | } 40 | } 41 | 42 | #[tracing::instrument] 43 | fn error_response(&self) -> HttpResponse { 44 | match self { 45 | Self::ValidationErrors(e) => { 46 | error!("Validaton error: {:?}", e.errors()); 47 | HttpResponse::BadRequest().json(e.errors()) 48 | } 49 | Self::NotFound => { 50 | let template = ViewError::new("Error 404", 404, "The page you visited was not found."); 51 | let body = template.render().unwrap(); 52 | HttpResponse::NotFound().content_type("text/html").body(body) 53 | } 54 | Self::MissingPermission(reason) => { 55 | let msg = format!("You don't have permissions to do this: {}", reason); 56 | let template = ViewError::new("Error 403", 403, &msg); 57 | let body = template.render().unwrap(); 58 | HttpResponse::NotFound().content_type("text/html").body(body) 59 | } 60 | e => { 61 | error!("Internal server error: {:#?}", e); 62 | let template = ViewError::new("Internal Server Error", 500, "Internal Server Error."); 63 | let body = template.render().unwrap(); 64 | HttpResponse::InternalServerError().content_type("text/html").body(body) 65 | } 66 | } 67 | } 68 | } 69 | 70 | pub type AppResponse = Result; 71 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@fullhuman/postcss-purgecss@^3.1.3": 6 | version "3.1.3" 7 | resolved "https://registry.yarnpkg.com/@fullhuman/postcss-purgecss/-/postcss-purgecss-3.1.3.tgz#47af7b87c9bfb3de4bc94a38f875b928fffdf339" 8 | integrity sha512-kwOXw8fZ0Lt1QmeOOrd+o4Ibvp4UTEBFQbzvWldjlKv5n+G9sXfIPn1hh63IQIL8K8vbvv1oYMJiIUbuy9bGaA== 9 | dependencies: 10 | purgecss "^3.1.3" 11 | 12 | acorn-node@^1.6.1: 13 | version "1.8.2" 14 | resolved "https://registry.yarnpkg.com/acorn-node/-/acorn-node-1.8.2.tgz#114c95d64539e53dede23de8b9d96df7c7ae2af8" 15 | integrity sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A== 16 | dependencies: 17 | acorn "^7.0.0" 18 | acorn-walk "^7.0.0" 19 | xtend "^4.0.2" 20 | 21 | acorn-walk@^7.0.0: 22 | version "7.2.0" 23 | resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" 24 | integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== 25 | 26 | acorn@^7.0.0: 27 | version "7.4.1" 28 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" 29 | integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== 30 | 31 | ansi-styles@^3.2.1: 32 | version "3.2.1" 33 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 34 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 35 | dependencies: 36 | color-convert "^1.9.0" 37 | 38 | ansi-styles@^4.1.0: 39 | version "4.3.0" 40 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" 41 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== 42 | dependencies: 43 | color-convert "^2.0.1" 44 | 45 | at-least-node@^1.0.0: 46 | version "1.0.0" 47 | resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" 48 | integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== 49 | 50 | autoprefixer@^10.2.5: 51 | version "10.2.5" 52 | resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-10.2.5.tgz#096a0337dbc96c0873526d7fef5de4428d05382d" 53 | integrity sha512-7H4AJZXvSsn62SqZyJCP+1AWwOuoYpUfK6ot9vm0e87XD6mT8lDywc9D9OTJPMULyGcvmIxzTAMeG2Cc+YX+fA== 54 | dependencies: 55 | browserslist "^4.16.3" 56 | caniuse-lite "^1.0.30001196" 57 | colorette "^1.2.2" 58 | fraction.js "^4.0.13" 59 | normalize-range "^0.1.2" 60 | postcss-value-parser "^4.1.0" 61 | 62 | balanced-match@^1.0.0: 63 | version "1.0.0" 64 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767" 65 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c= 66 | 67 | brace-expansion@^1.1.7: 68 | version "1.1.11" 69 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 70 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 71 | dependencies: 72 | balanced-match "^1.0.0" 73 | concat-map "0.0.1" 74 | 75 | browserslist@^4.16.3: 76 | version "4.16.3" 77 | resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.3.tgz#340aa46940d7db878748567c5dea24a48ddf3717" 78 | integrity sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw== 79 | dependencies: 80 | caniuse-lite "^1.0.30001181" 81 | colorette "^1.2.1" 82 | electron-to-chromium "^1.3.649" 83 | escalade "^3.1.1" 84 | node-releases "^1.1.70" 85 | 86 | buffer-from@^1.0.0: 87 | version "1.1.1" 88 | resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" 89 | integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== 90 | 91 | bytes@^3.0.0: 92 | version "3.1.0" 93 | resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" 94 | integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== 95 | 96 | camel-case@^4.1.1: 97 | version "4.1.2" 98 | resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-4.1.2.tgz#9728072a954f805228225a6deea6b38461e1bd5a" 99 | integrity sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw== 100 | dependencies: 101 | pascal-case "^3.1.2" 102 | tslib "^2.0.3" 103 | 104 | camelcase-css@^2.0.1: 105 | version "2.0.1" 106 | resolved "https://registry.yarnpkg.com/camelcase-css/-/camelcase-css-2.0.1.tgz#ee978f6947914cc30c6b44741b6ed1df7f043fd5" 107 | integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== 108 | 109 | caniuse-lite@^1.0.30001181, caniuse-lite@^1.0.30001196: 110 | version "1.0.30001205" 111 | resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001205.tgz#d79bf6a6fb13196b4bb46e5143a22ca0242e0ef8" 112 | integrity sha512-TL1GrS5V6LElbitPazidkBMD9sa448bQDDLrumDqaggmKFcuU2JW1wTOHJPukAcOMtEmLcmDJEzfRrf+GjM0Og== 113 | 114 | chalk@^2.4.1: 115 | version "2.4.2" 116 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 117 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 118 | dependencies: 119 | ansi-styles "^3.2.1" 120 | escape-string-regexp "^1.0.5" 121 | supports-color "^5.3.0" 122 | 123 | chalk@^4.1.0: 124 | version "4.1.0" 125 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" 126 | integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== 127 | dependencies: 128 | ansi-styles "^4.1.0" 129 | supports-color "^7.1.0" 130 | 131 | clean-css@^4.2.3: 132 | version "4.2.3" 133 | resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.2.3.tgz#507b5de7d97b48ee53d84adb0160ff6216380f78" 134 | integrity sha512-VcMWDN54ZN/DS+g58HYL5/n4Zrqe8vHJpGA8KdgUXFU4fuP/aHNw8eld9SyEIyabIMJX/0RaY/fplOo5hYLSFA== 135 | dependencies: 136 | source-map "~0.6.0" 137 | 138 | clean-css@^5.0.1: 139 | version "5.1.2" 140 | resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-5.1.2.tgz#6ea0da7286b4ddc2469a1b776e2461a5007eed54" 141 | integrity sha512-QcaGg9OuMo+0Ds933yLOY+gHPWbxhxqF0HDexmToPf8pczvmvZGYzd+QqWp9/mkucAOKViI+dSFOqoZIvXbeBw== 142 | dependencies: 143 | source-map "~0.6.0" 144 | 145 | color-convert@^1.9.0, color-convert@^1.9.1: 146 | version "1.9.3" 147 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 148 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 149 | dependencies: 150 | color-name "1.1.3" 151 | 152 | color-convert@^2.0.1: 153 | version "2.0.1" 154 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" 155 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 156 | dependencies: 157 | color-name "~1.1.4" 158 | 159 | color-name@1.1.3: 160 | version "1.1.3" 161 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 162 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 163 | 164 | color-name@^1.0.0, color-name@~1.1.4: 165 | version "1.1.4" 166 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" 167 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 168 | 169 | color-string@^1.5.4: 170 | version "1.5.4" 171 | resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.4.tgz#dd51cd25cfee953d138fe4002372cc3d0e504cb6" 172 | integrity sha512-57yF5yt8Xa3czSEW1jfQDE79Idk0+AkN/4KWad6tbdxUmAs3MvjxlWSWD4deYytcRfoZ9nhKyFl1kj5tBvidbw== 173 | dependencies: 174 | color-name "^1.0.0" 175 | simple-swizzle "^0.2.2" 176 | 177 | color@^3.1.3: 178 | version "3.1.3" 179 | resolved "https://registry.yarnpkg.com/color/-/color-3.1.3.tgz#ca67fb4e7b97d611dcde39eceed422067d91596e" 180 | integrity sha512-xgXAcTHa2HeFCGLE9Xs/R82hujGtu9Jd9x4NW3T34+OMs7VoPsjwzRczKHvTAHeJwWFwX5j15+MgAppE8ztObQ== 181 | dependencies: 182 | color-convert "^1.9.1" 183 | color-string "^1.5.4" 184 | 185 | colorette@^1.2.1: 186 | version "1.2.1" 187 | resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.1.tgz#4d0b921325c14faf92633086a536db6e89564b1b" 188 | integrity sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw== 189 | 190 | colorette@^1.2.2: 191 | version "1.2.2" 192 | resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.2.2.tgz#cbcc79d5e99caea2dbf10eb3a26fd8b3e6acfa94" 193 | integrity sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w== 194 | 195 | commander@^2.20.0: 196 | version "2.20.3" 197 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" 198 | integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== 199 | 200 | commander@^4.1.1: 201 | version "4.1.1" 202 | resolved "https://registry.yarnpkg.com/commander/-/commander-4.1.1.tgz#9fd602bd936294e9e9ef46a3f4d6964044b18068" 203 | integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== 204 | 205 | commander@^6.0.0: 206 | version "6.2.0" 207 | resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.0.tgz#b990bfb8ac030aedc6d11bc04d1488ffef56db75" 208 | integrity sha512-zP4jEKbe8SHzKJYQmq8Y9gYjtO/POJLgIdKgV7B9qNmABVFVc+ctqSX6iXh4mCpJfRBOabiZ2YKPg8ciDw6C+Q== 209 | 210 | concat-map@0.0.1: 211 | version "0.0.1" 212 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 213 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= 214 | 215 | css-b64-images@~0.2.5: 216 | version "0.2.5" 217 | resolved "https://registry.yarnpkg.com/css-b64-images/-/css-b64-images-0.2.5.tgz#42005d83204b2b4a5d93b6b1a5644133b5927a02" 218 | integrity sha1-QgBdgyBLK0pdk7axpWRBM7WSegI= 219 | 220 | css-unit-converter@^1.1.1: 221 | version "1.1.2" 222 | resolved "https://registry.yarnpkg.com/css-unit-converter/-/css-unit-converter-1.1.2.tgz#4c77f5a1954e6dbff60695ecb214e3270436ab21" 223 | integrity sha512-IiJwMC8rdZE0+xiEZHeru6YoONC4rfPMqGm2W85jMIbkFvv5nFTwJVFHam2eFrN6txmoUYFAFXiv8ICVeTO0MA== 224 | 225 | cssesc@^3.0.0: 226 | version "3.0.0" 227 | resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" 228 | integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== 229 | 230 | debug@^4.1.0: 231 | version "4.3.1" 232 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" 233 | integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== 234 | dependencies: 235 | ms "2.1.2" 236 | 237 | defined@^1.0.0: 238 | version "1.0.0" 239 | resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" 240 | integrity sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM= 241 | 242 | detective@^5.2.0: 243 | version "5.2.0" 244 | resolved "https://registry.yarnpkg.com/detective/-/detective-5.2.0.tgz#feb2a77e85b904ecdea459ad897cc90a99bd2a7b" 245 | integrity sha512-6SsIx+nUUbuK0EthKjv0zrdnajCCXVYGmbYYiYjFVpzcjwEs/JMDZ8tPRG29J/HhN56t3GJp2cGSWDRjjot8Pg== 246 | dependencies: 247 | acorn-node "^1.6.1" 248 | defined "^1.0.0" 249 | minimist "^1.1.1" 250 | 251 | didyoumean@^1.2.1: 252 | version "1.2.1" 253 | resolved "https://registry.yarnpkg.com/didyoumean/-/didyoumean-1.2.1.tgz#e92edfdada6537d484d73c0172fd1eba0c4976ff" 254 | integrity sha1-6S7f2tplN9SE1zwBcv0eugxJdv8= 255 | 256 | dot-case@^3.0.4: 257 | version "3.0.4" 258 | resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-3.0.4.tgz#9b2b670d00a431667a8a75ba29cd1b98809ce751" 259 | integrity sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w== 260 | dependencies: 261 | no-case "^3.0.4" 262 | tslib "^2.0.3" 263 | 264 | electron-to-chromium@^1.3.649: 265 | version "1.3.703" 266 | resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.703.tgz#6d9b9a75c42a40775f5930329e642b22b227317f" 267 | integrity sha512-SVBVhNB+4zPL+rvtWLw7PZQkw/Eqj1HQZs22xtcqW36+xoifzEOEEDEpkxSMfB6RFeSIOcG00w6z5mSqLr1Y6w== 268 | 269 | escalade@^3.1.1: 270 | version "3.1.1" 271 | resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" 272 | integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== 273 | 274 | escape-string-regexp@^1.0.5: 275 | version "1.0.5" 276 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 277 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 278 | 279 | fraction.js@^4.0.13: 280 | version "4.0.13" 281 | resolved "https://registry.yarnpkg.com/fraction.js/-/fraction.js-4.0.13.tgz#3c1c315fa16b35c85fffa95725a36fa729c69dfe" 282 | integrity sha512-E1fz2Xs9ltlUp+qbiyx9wmt2n9dRzPsS11Jtdb8D2o+cC7wr9xkkKsVKJuBX0ST+LVS+LhLO+SbLJNtfWcJvXA== 283 | 284 | fs-extra@^9.1.0: 285 | version "9.1.0" 286 | resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" 287 | integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== 288 | dependencies: 289 | at-least-node "^1.0.0" 290 | graceful-fs "^4.2.0" 291 | jsonfile "^6.0.1" 292 | universalify "^2.0.0" 293 | 294 | fs.realpath@^1.0.0: 295 | version "1.0.0" 296 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 297 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= 298 | 299 | function-bind@^1.1.1: 300 | version "1.1.1" 301 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 302 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 303 | 304 | glob@^7.0.0, glob@^7.1.2: 305 | version "7.1.6" 306 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6" 307 | integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA== 308 | dependencies: 309 | fs.realpath "^1.0.0" 310 | inflight "^1.0.4" 311 | inherits "2" 312 | minimatch "^3.0.4" 313 | once "^1.3.0" 314 | path-is-absolute "^1.0.0" 315 | 316 | graceful-fs@^4.1.6, graceful-fs@^4.2.0: 317 | version "4.2.4" 318 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.4.tgz#2256bde14d3632958c465ebc96dc467ca07a29fb" 319 | integrity sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw== 320 | 321 | has-flag@^3.0.0: 322 | version "3.0.0" 323 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 324 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 325 | 326 | has-flag@^4.0.0: 327 | version "4.0.0" 328 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" 329 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 330 | 331 | has@^1.0.3: 332 | version "1.0.3" 333 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 334 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 335 | dependencies: 336 | function-bind "^1.1.1" 337 | 338 | he@^1.2.0: 339 | version "1.2.0" 340 | resolved "https://registry.yarnpkg.com/he/-/he-1.2.0.tgz#84ae65fa7eafb165fddb61566ae14baf05664f0f" 341 | integrity sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw== 342 | 343 | html-minifier-terser@^5.1.1: 344 | version "5.1.1" 345 | resolved "https://registry.yarnpkg.com/html-minifier-terser/-/html-minifier-terser-5.1.1.tgz#922e96f1f3bb60832c2634b79884096389b1f054" 346 | integrity sha512-ZPr5MNObqnV/T9akshPKbVgyOqLmy+Bxo7juKCfTfnjNniTAMdy4hz21YQqoofMBJD2kdREaqPPdThoR78Tgxg== 347 | dependencies: 348 | camel-case "^4.1.1" 349 | clean-css "^4.2.3" 350 | commander "^4.1.1" 351 | he "^1.2.0" 352 | param-case "^3.0.3" 353 | relateurl "^0.2.7" 354 | terser "^4.6.3" 355 | 356 | html-tags@^3.1.0: 357 | version "3.1.0" 358 | resolved "https://registry.yarnpkg.com/html-tags/-/html-tags-3.1.0.tgz#7b5e6f7e665e9fb41f30007ed9e0d41e97fb2140" 359 | integrity sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg== 360 | 361 | indexes-of@^1.0.1: 362 | version "1.0.1" 363 | resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" 364 | integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc= 365 | 366 | inflight@^1.0.4: 367 | version "1.0.6" 368 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 369 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= 370 | dependencies: 371 | once "^1.3.0" 372 | wrappy "1" 373 | 374 | inherits@2: 375 | version "2.0.4" 376 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 377 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 378 | 379 | is-arrayish@^0.3.1: 380 | version "0.3.2" 381 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" 382 | integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== 383 | 384 | is-core-module@^2.2.0: 385 | version "2.2.0" 386 | resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.2.0.tgz#97037ef3d52224d85163f5597b2b63d9afed981a" 387 | integrity sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ== 388 | dependencies: 389 | has "^1.0.3" 390 | 391 | jsonfile@^6.0.1: 392 | version "6.1.0" 393 | resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" 394 | integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== 395 | dependencies: 396 | universalify "^2.0.0" 397 | optionalDependencies: 398 | graceful-fs "^4.1.6" 399 | 400 | lodash.toarray@^4.4.0: 401 | version "4.4.0" 402 | resolved "https://registry.yarnpkg.com/lodash.toarray/-/lodash.toarray-4.4.0.tgz#24c4bfcd6b2fba38bfd0594db1179d8e9b656561" 403 | integrity sha1-JMS/zWsvuji/0FlNsRedjptlZWE= 404 | 405 | lodash@^4.17.21: 406 | version "4.17.21" 407 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 408 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 409 | 410 | lower-case@^2.0.2: 411 | version "2.0.2" 412 | resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-2.0.2.tgz#6fa237c63dbdc4a82ca0fd882e4722dc5e634e28" 413 | integrity sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg== 414 | dependencies: 415 | tslib "^2.0.3" 416 | 417 | minify@^7.0.1: 418 | version "7.0.1" 419 | resolved "https://registry.yarnpkg.com/minify/-/minify-7.0.1.tgz#f368afeadcf1cd2525d18c32446112f595e951d0" 420 | integrity sha512-U3CjnPKRjPu3DxZX7NsB833r2ijbw9af3fHsaChn6o7BHKvaT/zxYDQ8Q/3W7VFXGDrnkAx6XBx3ggEf5KJm7A== 421 | dependencies: 422 | clean-css "^5.0.1" 423 | css-b64-images "~0.2.5" 424 | debug "^4.1.0" 425 | html-minifier-terser "^5.1.1" 426 | terser "^5.3.2" 427 | try-to-catch "^3.0.0" 428 | 429 | minimatch@^3.0.4: 430 | version "3.0.4" 431 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" 432 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== 433 | dependencies: 434 | brace-expansion "^1.1.7" 435 | 436 | minimist@^1.1.1: 437 | version "1.2.5" 438 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" 439 | integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== 440 | 441 | modern-normalize@^1.0.0: 442 | version "1.0.0" 443 | resolved "https://registry.yarnpkg.com/modern-normalize/-/modern-normalize-1.0.0.tgz#539d84a1e141338b01b346f3e27396d0ed17601e" 444 | integrity sha512-1lM+BMLGuDfsdwf3rsgBSrxJwAZHFIrQ8YR61xIqdHo0uNKI9M52wNpHSrliZATJp51On6JD0AfRxd4YGSU0lw== 445 | 446 | ms@2.1.2: 447 | version "2.1.2" 448 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 449 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 450 | 451 | nanoid@^3.1.20: 452 | version "3.1.20" 453 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.20.tgz#badc263c6b1dcf14b71efaa85f6ab4c1d6cfc788" 454 | integrity sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw== 455 | 456 | nanoid@^3.1.22: 457 | version "3.1.22" 458 | resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.22.tgz#b35f8fb7d151990a8aebd5aa5015c03cf726f844" 459 | integrity sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ== 460 | 461 | no-case@^3.0.4: 462 | version "3.0.4" 463 | resolved "https://registry.yarnpkg.com/no-case/-/no-case-3.0.4.tgz#d361fd5c9800f558551a8369fc0dcd4662b6124d" 464 | integrity sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg== 465 | dependencies: 466 | lower-case "^2.0.2" 467 | tslib "^2.0.3" 468 | 469 | node-emoji@^1.8.1: 470 | version "1.10.0" 471 | resolved "https://registry.yarnpkg.com/node-emoji/-/node-emoji-1.10.0.tgz#8886abd25d9c7bb61802a658523d1f8d2a89b2da" 472 | integrity sha512-Yt3384If5H6BYGVHiHwTL+99OzJKHhgp82S8/dktEK73T26BazdgZ4JZh92xSVtGNJvz9UbXdNAc5hcrXV42vw== 473 | dependencies: 474 | lodash.toarray "^4.4.0" 475 | 476 | node-releases@^1.1.70: 477 | version "1.1.71" 478 | resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.71.tgz#cb1334b179896b1c89ecfdd4b725fb7bbdfc7dbb" 479 | integrity sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg== 480 | 481 | normalize-range@^0.1.2: 482 | version "0.1.2" 483 | resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" 484 | integrity sha1-LRDAa9/TEuqXd2laTShDlFa3WUI= 485 | 486 | object-assign@^4.1.1: 487 | version "4.1.1" 488 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 489 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 490 | 491 | object-hash@^2.1.1: 492 | version "2.1.1" 493 | resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-2.1.1.tgz#9447d0279b4fcf80cff3259bf66a1dc73afabe09" 494 | integrity sha512-VOJmgmS+7wvXf8CjbQmimtCnEx3IAoLxI3fp2fbWehxrWBcAQFbk+vcwb6vzR0VZv/eNCJ/27j151ZTwqW/JeQ== 495 | 496 | once@^1.3.0: 497 | version "1.4.0" 498 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 499 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= 500 | dependencies: 501 | wrappy "1" 502 | 503 | param-case@^3.0.3: 504 | version "3.0.4" 505 | resolved "https://registry.yarnpkg.com/param-case/-/param-case-3.0.4.tgz#7d17fe4aa12bde34d4a77d91acfb6219caad01c5" 506 | integrity sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A== 507 | dependencies: 508 | dot-case "^3.0.4" 509 | tslib "^2.0.3" 510 | 511 | pascal-case@^3.1.2: 512 | version "3.1.2" 513 | resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-3.1.2.tgz#b48e0ef2b98e205e7c1dae747d0b1508237660eb" 514 | integrity sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g== 515 | dependencies: 516 | no-case "^3.0.4" 517 | tslib "^2.0.3" 518 | 519 | path-is-absolute@^1.0.0: 520 | version "1.0.1" 521 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 522 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= 523 | 524 | path-parse@^1.0.6: 525 | version "1.0.6" 526 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.6.tgz#d62dbb5679405d72c4737ec58600e9ddcf06d24c" 527 | integrity sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw== 528 | 529 | postcss-functions@^3: 530 | version "3.0.0" 531 | resolved "https://registry.yarnpkg.com/postcss-functions/-/postcss-functions-3.0.0.tgz#0e94d01444700a481de20de4d55fb2640564250e" 532 | integrity sha1-DpTQFERwCkgd4g3k1V+yZAVkJQ4= 533 | dependencies: 534 | glob "^7.1.2" 535 | object-assign "^4.1.1" 536 | postcss "^6.0.9" 537 | postcss-value-parser "^3.3.0" 538 | 539 | postcss-js@^3.0.3: 540 | version "3.0.3" 541 | resolved "https://registry.yarnpkg.com/postcss-js/-/postcss-js-3.0.3.tgz#2f0bd370a2e8599d45439f6970403b5873abda33" 542 | integrity sha512-gWnoWQXKFw65Hk/mi2+WTQTHdPD5UJdDXZmX073EY/B3BWnYjO4F4t0VneTCnCGQ5E5GsCdMkzPaTXwl3r5dJw== 543 | dependencies: 544 | camelcase-css "^2.0.1" 545 | postcss "^8.1.6" 546 | 547 | postcss-nested@^5.0.5: 548 | version "5.0.5" 549 | resolved "https://registry.yarnpkg.com/postcss-nested/-/postcss-nested-5.0.5.tgz#f0a107d33a9fab11d7637205f5321e27223e3603" 550 | integrity sha512-GSRXYz5bccobpTzLQZXOnSOfKl6TwVr5CyAQJUPub4nuRJSOECK5AqurxVgmtxP48p0Kc/ndY/YyS1yqldX0Ew== 551 | dependencies: 552 | postcss-selector-parser "^6.0.4" 553 | 554 | postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: 555 | version "6.0.4" 556 | resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz#56075a1380a04604c38b063ea7767a129af5c2b3" 557 | integrity sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw== 558 | dependencies: 559 | cssesc "^3.0.0" 560 | indexes-of "^1.0.1" 561 | uniq "^1.0.1" 562 | util-deprecate "^1.0.2" 563 | 564 | postcss-value-parser@^3.3.0: 565 | version "3.3.1" 566 | resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz#9ff822547e2893213cf1c30efa51ac5fd1ba8281" 567 | integrity sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ== 568 | 569 | postcss-value-parser@^4.1.0: 570 | version "4.1.0" 571 | resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" 572 | integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== 573 | 574 | postcss@^6.0.9: 575 | version "6.0.23" 576 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.23.tgz#61c82cc328ac60e677645f979054eb98bc0e3324" 577 | integrity sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag== 578 | dependencies: 579 | chalk "^2.4.1" 580 | source-map "^0.6.1" 581 | supports-color "^5.4.0" 582 | 583 | postcss@^8.1.6: 584 | version "8.2.1" 585 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.1.tgz#eabc5557c4558059b9d9e5b15bce7ffa9089c2a8" 586 | integrity sha512-RhsqOOAQzTgh1UB/IZdca7F9WDb7SUCR2Vnv1x7DbvuuggQIpoDwjK+q0rzoPffhYvWNKX5JSwS4so4K3UC6vA== 587 | dependencies: 588 | colorette "^1.2.1" 589 | nanoid "^3.1.20" 590 | source-map "^0.6.1" 591 | 592 | postcss@^8.2.1, postcss@^8.2.8: 593 | version "8.2.9" 594 | resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.2.9.tgz#fd95ff37b5cee55c409b3fdd237296ab4096fba3" 595 | integrity sha512-b+TmuIL4jGtCHtoLi+G/PisuIl9avxs8IZMSmlABRwNz5RLUUACrC+ws81dcomz1nRezm5YPdXiMEzBEKgYn+Q== 596 | dependencies: 597 | colorette "^1.2.2" 598 | nanoid "^3.1.22" 599 | source-map "^0.6.1" 600 | 601 | pretty-hrtime@^1.0.3: 602 | version "1.0.3" 603 | resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz#b7e3ea42435a4c9b2759d99e0f201eb195802ee1" 604 | integrity sha1-t+PqQkNaTJsnWdmeDyAesZWALuE= 605 | 606 | purgecss@^3.1.3: 607 | version "3.1.3" 608 | resolved "https://registry.yarnpkg.com/purgecss/-/purgecss-3.1.3.tgz#26987ec09d12eeadc318e22f6e5a9eb0be094f41" 609 | integrity sha512-hRSLN9mguJ2lzlIQtW4qmPS2kh6oMnA9RxdIYK8sz18QYqd6ePp4GNDl18oWHA1f2v2NEQIh51CO8s/E3YGckQ== 610 | dependencies: 611 | commander "^6.0.0" 612 | glob "^7.0.0" 613 | postcss "^8.2.1" 614 | postcss-selector-parser "^6.0.2" 615 | 616 | reduce-css-calc@^2.1.8: 617 | version "2.1.8" 618 | resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-2.1.8.tgz#7ef8761a28d614980dc0c982f772c93f7a99de03" 619 | integrity sha512-8liAVezDmUcH+tdzoEGrhfbGcP7nOV4NkGE3a74+qqvE7nt9i4sKLGBuZNOnpI4WiGksiNPklZxva80061QiPg== 620 | dependencies: 621 | css-unit-converter "^1.1.1" 622 | postcss-value-parser "^3.3.0" 623 | 624 | relateurl@^0.2.7: 625 | version "0.2.7" 626 | resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" 627 | integrity sha1-VNvzd+UUQKypCkzSdGANP/LYiKk= 628 | 629 | resolve@^1.20.0: 630 | version "1.20.0" 631 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" 632 | integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== 633 | dependencies: 634 | is-core-module "^2.2.0" 635 | path-parse "^1.0.6" 636 | 637 | simple-swizzle@^0.2.2: 638 | version "0.2.2" 639 | resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" 640 | integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= 641 | dependencies: 642 | is-arrayish "^0.3.1" 643 | 644 | source-map-support@~0.5.12, source-map-support@~0.5.19: 645 | version "0.5.19" 646 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.19.tgz#a98b62f86dcaf4f67399648c085291ab9e8fed61" 647 | integrity sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw== 648 | dependencies: 649 | buffer-from "^1.0.0" 650 | source-map "^0.6.0" 651 | 652 | source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.0, source-map@~0.6.1: 653 | version "0.6.1" 654 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" 655 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== 656 | 657 | source-map@~0.7.2: 658 | version "0.7.3" 659 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" 660 | integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== 661 | 662 | supports-color@^5.3.0, supports-color@^5.4.0: 663 | version "5.5.0" 664 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 665 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 666 | dependencies: 667 | has-flag "^3.0.0" 668 | 669 | supports-color@^7.1.0: 670 | version "7.2.0" 671 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" 672 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== 673 | dependencies: 674 | has-flag "^4.0.0" 675 | 676 | tailwindcss@^2.0.4: 677 | version "2.0.4" 678 | resolved "https://registry.yarnpkg.com/tailwindcss/-/tailwindcss-2.0.4.tgz#cf13e62738c3a27065664e449d93b66ee2945506" 679 | integrity sha512-WhgR0oiBxGOZ9jY0yVfaJCHnckR7U74Fs/BMsYxGdwGJQ5Hd/HlaKD26bEJFZOvYScJo0QcUj2ImldzedsG7Bw== 680 | dependencies: 681 | "@fullhuman/postcss-purgecss" "^3.1.3" 682 | bytes "^3.0.0" 683 | chalk "^4.1.0" 684 | color "^3.1.3" 685 | detective "^5.2.0" 686 | didyoumean "^1.2.1" 687 | fs-extra "^9.1.0" 688 | html-tags "^3.1.0" 689 | lodash "^4.17.21" 690 | modern-normalize "^1.0.0" 691 | node-emoji "^1.8.1" 692 | object-hash "^2.1.1" 693 | postcss-functions "^3" 694 | postcss-js "^3.0.3" 695 | postcss-nested "^5.0.5" 696 | postcss-selector-parser "^6.0.4" 697 | postcss-value-parser "^4.1.0" 698 | pretty-hrtime "^1.0.3" 699 | reduce-css-calc "^2.1.8" 700 | resolve "^1.20.0" 701 | 702 | terser@^4.6.3: 703 | version "4.8.0" 704 | resolved "https://registry.yarnpkg.com/terser/-/terser-4.8.0.tgz#63056343d7c70bb29f3af665865a46fe03a0df17" 705 | integrity sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw== 706 | dependencies: 707 | commander "^2.20.0" 708 | source-map "~0.6.1" 709 | source-map-support "~0.5.12" 710 | 711 | terser@^5.3.2: 712 | version "5.6.1" 713 | resolved "https://registry.yarnpkg.com/terser/-/terser-5.6.1.tgz#a48eeac5300c0a09b36854bf90d9c26fb201973c" 714 | integrity sha512-yv9YLFQQ+3ZqgWCUk+pvNJwgUTdlIxUk1WTN+RnaFJe2L7ipG2csPT0ra2XRm7Cs8cxN7QXmK1rFzEwYEQkzXw== 715 | dependencies: 716 | commander "^2.20.0" 717 | source-map "~0.7.2" 718 | source-map-support "~0.5.19" 719 | 720 | try-to-catch@^3.0.0: 721 | version "3.0.0" 722 | resolved "https://registry.yarnpkg.com/try-to-catch/-/try-to-catch-3.0.0.tgz#a1903b44d13d5124c54d14a461d22ec1f52ea14b" 723 | integrity sha512-eIm6ZXwR35jVF8By/HdbbkcaCDTBI5PpCPkejRKrYp0jyf/DbCCcRhHD7/O9jtFI3ewsqo9WctFEiJTS6i+CQA== 724 | 725 | tslib@^2.0.3: 726 | version "2.1.0" 727 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" 728 | integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== 729 | 730 | uglify-js@^3.13.3: 731 | version "3.13.3" 732 | resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.13.3.tgz#ce72a1ad154348ea2af61f50933c76cc8802276e" 733 | integrity sha512-otIc7O9LyxpUcQoXzj2hL4LPWKklO6LJWoJUzNa8A17Xgi4fOeDC8FBDOLHnC/Slo1CQgsZMcM6as0M76BZaig== 734 | 735 | uniq@^1.0.1: 736 | version "1.0.1" 737 | resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" 738 | integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8= 739 | 740 | universalify@^2.0.0: 741 | version "2.0.0" 742 | resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" 743 | integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== 744 | 745 | util-deprecate@^1.0.2: 746 | version "1.0.2" 747 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 748 | integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= 749 | 750 | wrappy@1: 751 | version "1.0.2" 752 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 753 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= 754 | 755 | xtend@^4.0.2: 756 | version "4.0.2" 757 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" 758 | integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== 759 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- 1 | # This file is automatically @generated by Cargo. 2 | # It is not intended for manual editing. 3 | [[package]] 4 | name = "actix" 5 | version = "0.11.1" 6 | source = "registry+https://github.com/rust-lang/crates.io-index" 7 | checksum = "543c47e7827f8fcc9d1445bd98ba402137bfce80ee2187429de49c52b5131bd3" 8 | dependencies = [ 9 | "actix-rt 2.2.0", 10 | "actix_derive", 11 | "bitflags", 12 | "bytes 1.0.1", 13 | "crossbeam-channel", 14 | "futures-core", 15 | "futures-sink", 16 | "futures-task", 17 | "futures-util", 18 | "log", 19 | "once_cell", 20 | "parking_lot", 21 | "pin-project-lite 0.2.6", 22 | "smallvec", 23 | "tokio 1.4.0", 24 | "tokio-util 0.6.5", 25 | ] 26 | 27 | [[package]] 28 | name = "actix-codec" 29 | version = "0.3.0" 30 | source = "registry+https://github.com/rust-lang/crates.io-index" 31 | checksum = "78d1833b3838dbe990df0f1f87baf640cf6146e898166afe401839d1b001e570" 32 | dependencies = [ 33 | "bitflags", 34 | "bytes 0.5.6", 35 | "futures-core", 36 | "futures-sink", 37 | "log", 38 | "pin-project 0.4.28", 39 | "tokio 0.2.25", 40 | "tokio-util 0.3.1", 41 | ] 42 | 43 | [[package]] 44 | name = "actix-codec" 45 | version = "0.4.0-beta.1" 46 | source = "registry+https://github.com/rust-lang/crates.io-index" 47 | checksum = "90673465c6187bd0829116b02be465dc0195a74d7719f76ffff0effef934a92e" 48 | dependencies = [ 49 | "bitflags", 50 | "bytes 1.0.1", 51 | "futures-core", 52 | "futures-sink", 53 | "log", 54 | "pin-project-lite 0.2.6", 55 | "tokio 1.4.0", 56 | "tokio-util 0.6.5", 57 | ] 58 | 59 | [[package]] 60 | name = "actix-connect" 61 | version = "2.0.0" 62 | source = "registry+https://github.com/rust-lang/crates.io-index" 63 | checksum = "177837a10863f15ba8d3ae3ec12fac1099099529ed20083a27fdfe247381d0dc" 64 | dependencies = [ 65 | "actix-codec 0.3.0", 66 | "actix-rt 1.1.1", 67 | "actix-service 1.0.6", 68 | "actix-utils 2.0.0", 69 | "derive_more", 70 | "either", 71 | "futures-util", 72 | "http", 73 | "log", 74 | "trust-dns-proto", 75 | "trust-dns-resolver", 76 | ] 77 | 78 | [[package]] 79 | name = "actix-files" 80 | version = "0.6.0-beta.3" 81 | source = "registry+https://github.com/rust-lang/crates.io-index" 82 | checksum = "19d29d656815e86eb232df47b12391881e979dc0899de7f118fa69f4dab0d76e" 83 | dependencies = [ 84 | "actix-service 2.0.0-beta.5", 85 | "actix-web 4.0.0-beta.4", 86 | "askama_escape", 87 | "bitflags", 88 | "bytes 1.0.1", 89 | "derive_more", 90 | "futures-core", 91 | "futures-util", 92 | "http-range", 93 | "log", 94 | "mime", 95 | "mime_guess", 96 | "percent-encoding", 97 | ] 98 | 99 | [[package]] 100 | name = "actix-http" 101 | version = "2.2.0" 102 | source = "registry+https://github.com/rust-lang/crates.io-index" 103 | checksum = "452299e87817ae5673910e53c243484ca38be3828db819b6011736fc6982e874" 104 | dependencies = [ 105 | "actix-codec 0.3.0", 106 | "actix-connect", 107 | "actix-rt 1.1.1", 108 | "actix-service 1.0.6", 109 | "actix-threadpool", 110 | "actix-utils 2.0.0", 111 | "base64", 112 | "bitflags", 113 | "bytes 0.5.6", 114 | "cookie", 115 | "copyless", 116 | "derive_more", 117 | "either", 118 | "encoding_rs", 119 | "futures-channel", 120 | "futures-core", 121 | "futures-util", 122 | "fxhash", 123 | "h2 0.2.7", 124 | "http", 125 | "httparse", 126 | "indexmap", 127 | "itoa", 128 | "language-tags", 129 | "lazy_static", 130 | "log", 131 | "mime", 132 | "percent-encoding", 133 | "pin-project 1.0.6", 134 | "rand 0.7.3", 135 | "regex", 136 | "serde 1.0.125", 137 | "serde_json", 138 | "serde_urlencoded", 139 | "sha-1 0.9.4", 140 | "slab", 141 | "time 0.2.26", 142 | ] 143 | 144 | [[package]] 145 | name = "actix-http" 146 | version = "3.0.0-beta.4" 147 | source = "registry+https://github.com/rust-lang/crates.io-index" 148 | checksum = "8a01f9e0681608afa887d4269a0857ac4226f09ba5ceda25939e8391c9da610a" 149 | dependencies = [ 150 | "actix-codec 0.4.0-beta.1", 151 | "actix-rt 2.2.0", 152 | "actix-service 2.0.0-beta.5", 153 | "actix-tls 3.0.0-beta.5", 154 | "actix-utils 3.0.0-beta.2", 155 | "ahash 0.7.2", 156 | "base64", 157 | "bitflags", 158 | "brotli2", 159 | "bytes 1.0.1", 160 | "bytestring", 161 | "cfg-if 1.0.0", 162 | "cookie", 163 | "derive_more", 164 | "encoding_rs", 165 | "flate2", 166 | "futures-core", 167 | "futures-util", 168 | "h2 0.3.2", 169 | "http", 170 | "httparse", 171 | "itoa", 172 | "language-tags", 173 | "log", 174 | "mime", 175 | "once_cell", 176 | "percent-encoding", 177 | "pin-project 1.0.6", 178 | "rand 0.8.3", 179 | "regex", 180 | "serde 1.0.125", 181 | "serde_json", 182 | "serde_urlencoded", 183 | "sha-1 0.9.4", 184 | "smallvec", 185 | "time 0.2.26", 186 | "tokio 1.4.0", 187 | ] 188 | 189 | [[package]] 190 | name = "actix-macros" 191 | version = "0.1.3" 192 | source = "registry+https://github.com/rust-lang/crates.io-index" 193 | checksum = "b4ca8ce00b267af8ccebbd647de0d61e0674b6e61185cc7a592ff88772bed655" 194 | dependencies = [ 195 | "quote", 196 | "syn", 197 | ] 198 | 199 | [[package]] 200 | name = "actix-macros" 201 | version = "0.2.0" 202 | source = "registry+https://github.com/rust-lang/crates.io-index" 203 | checksum = "dbcb2b608f0accc2f5bcf3dd872194ce13d94ee45b571487035864cf966b04ef" 204 | dependencies = [ 205 | "quote", 206 | "syn", 207 | ] 208 | 209 | [[package]] 210 | name = "actix-router" 211 | version = "0.2.7" 212 | source = "registry+https://github.com/rust-lang/crates.io-index" 213 | checksum = "2ad299af73649e1fc893e333ccf86f377751eb95ff875d095131574c6f43452c" 214 | dependencies = [ 215 | "bytestring", 216 | "http", 217 | "log", 218 | "regex", 219 | "serde 1.0.125", 220 | ] 221 | 222 | [[package]] 223 | name = "actix-rt" 224 | version = "1.1.1" 225 | source = "registry+https://github.com/rust-lang/crates.io-index" 226 | checksum = "143fcc2912e0d1de2bcf4e2f720d2a60c28652ab4179685a1ee159e0fb3db227" 227 | dependencies = [ 228 | "actix-macros 0.1.3", 229 | "actix-threadpool", 230 | "copyless", 231 | "futures-channel", 232 | "futures-util", 233 | "smallvec", 234 | "tokio 0.2.25", 235 | ] 236 | 237 | [[package]] 238 | name = "actix-rt" 239 | version = "2.2.0" 240 | source = "registry+https://github.com/rust-lang/crates.io-index" 241 | checksum = "bc7d7cd957c9ed92288a7c3c96af81fa5291f65247a76a34dac7b6af74e52ba0" 242 | dependencies = [ 243 | "actix-macros 0.2.0", 244 | "futures-core", 245 | "tokio 1.4.0", 246 | ] 247 | 248 | [[package]] 249 | name = "actix-server" 250 | version = "1.0.4" 251 | source = "registry+https://github.com/rust-lang/crates.io-index" 252 | checksum = "45407e6e672ca24784baa667c5d32ef109ccdd8d5e0b5ebb9ef8a67f4dfb708e" 253 | dependencies = [ 254 | "actix-codec 0.3.0", 255 | "actix-rt 1.1.1", 256 | "actix-service 1.0.6", 257 | "actix-utils 2.0.0", 258 | "futures-channel", 259 | "futures-util", 260 | "log", 261 | "mio 0.6.23", 262 | "mio-uds", 263 | "num_cpus", 264 | "slab", 265 | "socket2", 266 | ] 267 | 268 | [[package]] 269 | name = "actix-server" 270 | version = "2.0.0-beta.3" 271 | source = "registry+https://github.com/rust-lang/crates.io-index" 272 | checksum = "a99198727204a48f82559c18e4b0ba3197b97d5f4576a32bdbef371f3b4599c1" 273 | dependencies = [ 274 | "actix-codec 0.4.0-beta.1", 275 | "actix-rt 2.2.0", 276 | "actix-service 2.0.0-beta.5", 277 | "actix-utils 3.0.0-beta.2", 278 | "futures-core", 279 | "log", 280 | "mio 0.7.11", 281 | "num_cpus", 282 | "slab", 283 | "tokio 1.4.0", 284 | ] 285 | 286 | [[package]] 287 | name = "actix-service" 288 | version = "1.0.6" 289 | source = "registry+https://github.com/rust-lang/crates.io-index" 290 | checksum = "0052435d581b5be835d11f4eb3bce417c8af18d87ddf8ace99f8e67e595882bb" 291 | dependencies = [ 292 | "futures-util", 293 | "pin-project 0.4.28", 294 | ] 295 | 296 | [[package]] 297 | name = "actix-service" 298 | version = "2.0.0-beta.5" 299 | source = "registry+https://github.com/rust-lang/crates.io-index" 300 | checksum = "cf82340ad9f4e4caf43737fd3bbc999778a268015cdc54675f60af6240bd2b05" 301 | dependencies = [ 302 | "futures-core", 303 | "pin-project-lite 0.2.6", 304 | ] 305 | 306 | [[package]] 307 | name = "actix-session" 308 | version = "0.4.1" 309 | source = "registry+https://github.com/rust-lang/crates.io-index" 310 | checksum = "559b815f2b3ad84f8a17256069d7df16c3ee8069635c86758729521d62ca891d" 311 | dependencies = [ 312 | "actix-service 1.0.6", 313 | "actix-web 3.3.2", 314 | "derive_more", 315 | "futures-util", 316 | "serde 1.0.125", 317 | "serde_json", 318 | "time 0.2.26", 319 | ] 320 | 321 | [[package]] 322 | name = "actix-testing" 323 | version = "1.0.1" 324 | source = "registry+https://github.com/rust-lang/crates.io-index" 325 | checksum = "47239ca38799ab74ee6a8a94d1ce857014b2ac36f242f70f3f75a66f691e791c" 326 | dependencies = [ 327 | "actix-macros 0.1.3", 328 | "actix-rt 1.1.1", 329 | "actix-server 1.0.4", 330 | "actix-service 1.0.6", 331 | "log", 332 | "socket2", 333 | ] 334 | 335 | [[package]] 336 | name = "actix-threadpool" 337 | version = "0.3.3" 338 | source = "registry+https://github.com/rust-lang/crates.io-index" 339 | checksum = "d209f04d002854b9afd3743032a27b066158817965bf5d036824d19ac2cc0e30" 340 | dependencies = [ 341 | "derive_more", 342 | "futures-channel", 343 | "lazy_static", 344 | "log", 345 | "num_cpus", 346 | "parking_lot", 347 | "threadpool", 348 | ] 349 | 350 | [[package]] 351 | name = "actix-tls" 352 | version = "2.0.0" 353 | source = "registry+https://github.com/rust-lang/crates.io-index" 354 | checksum = "24789b7d7361cf5503a504ebe1c10806896f61e96eca9a7350e23001aca715fb" 355 | dependencies = [ 356 | "actix-codec 0.3.0", 357 | "actix-service 1.0.6", 358 | "actix-utils 2.0.0", 359 | "futures-util", 360 | ] 361 | 362 | [[package]] 363 | name = "actix-tls" 364 | version = "3.0.0-beta.5" 365 | source = "registry+https://github.com/rust-lang/crates.io-index" 366 | checksum = "65b7bb60840962ef0332f7ea01a57d73a24d2cb663708511ff800250bbfef569" 367 | dependencies = [ 368 | "actix-codec 0.4.0-beta.1", 369 | "actix-rt 2.2.0", 370 | "actix-service 2.0.0-beta.5", 371 | "actix-utils 3.0.0-beta.2", 372 | "derive_more", 373 | "futures-core", 374 | "http", 375 | "log", 376 | "tokio-util 0.6.5", 377 | ] 378 | 379 | [[package]] 380 | name = "actix-utils" 381 | version = "2.0.0" 382 | source = "registry+https://github.com/rust-lang/crates.io-index" 383 | checksum = "2e9022dec56632d1d7979e59af14f0597a28a830a9c1c7fec8b2327eb9f16b5a" 384 | dependencies = [ 385 | "actix-codec 0.3.0", 386 | "actix-rt 1.1.1", 387 | "actix-service 1.0.6", 388 | "bitflags", 389 | "bytes 0.5.6", 390 | "either", 391 | "futures-channel", 392 | "futures-sink", 393 | "futures-util", 394 | "log", 395 | "pin-project 0.4.28", 396 | "slab", 397 | ] 398 | 399 | [[package]] 400 | name = "actix-utils" 401 | version = "3.0.0-beta.2" 402 | source = "registry+https://github.com/rust-lang/crates.io-index" 403 | checksum = "458795e09a29bc5557604f9ff6f32236fd0ee457d631672e4ec8f6a0103bb292" 404 | dependencies = [ 405 | "actix-codec 0.4.0-beta.1", 406 | "actix-rt 2.2.0", 407 | "actix-service 2.0.0-beta.5", 408 | "futures-core", 409 | "futures-sink", 410 | "log", 411 | "pin-project-lite 0.2.6", 412 | ] 413 | 414 | [[package]] 415 | name = "actix-web" 416 | version = "3.3.2" 417 | source = "registry+https://github.com/rust-lang/crates.io-index" 418 | checksum = "e641d4a172e7faa0862241a20ff4f1f5ab0ab7c279f00c2d4587b77483477b86" 419 | dependencies = [ 420 | "actix-codec 0.3.0", 421 | "actix-http 2.2.0", 422 | "actix-macros 0.1.3", 423 | "actix-router", 424 | "actix-rt 1.1.1", 425 | "actix-server 1.0.4", 426 | "actix-service 1.0.6", 427 | "actix-testing", 428 | "actix-threadpool", 429 | "actix-tls 2.0.0", 430 | "actix-utils 2.0.0", 431 | "actix-web-codegen 0.4.0", 432 | "awc 2.0.3", 433 | "bytes 0.5.6", 434 | "derive_more", 435 | "encoding_rs", 436 | "futures-channel", 437 | "futures-core", 438 | "futures-util", 439 | "fxhash", 440 | "log", 441 | "mime", 442 | "pin-project 1.0.6", 443 | "regex", 444 | "serde 1.0.125", 445 | "serde_json", 446 | "serde_urlencoded", 447 | "socket2", 448 | "time 0.2.26", 449 | "tinyvec", 450 | "url", 451 | ] 452 | 453 | [[package]] 454 | name = "actix-web" 455 | version = "4.0.0-beta.4" 456 | source = "registry+https://github.com/rust-lang/crates.io-index" 457 | checksum = "1d95e50c9e32e8456220b5804867de76e97a86ab8c38b51c9edcccc0f0fddca7" 458 | dependencies = [ 459 | "actix-codec 0.4.0-beta.1", 460 | "actix-http 3.0.0-beta.4", 461 | "actix-macros 0.2.0", 462 | "actix-router", 463 | "actix-rt 2.2.0", 464 | "actix-server 2.0.0-beta.3", 465 | "actix-service 2.0.0-beta.5", 466 | "actix-utils 3.0.0-beta.2", 467 | "actix-web-codegen 0.5.0-beta.2", 468 | "ahash 0.7.2", 469 | "awc 3.0.0-beta.3", 470 | "bytes 1.0.1", 471 | "derive_more", 472 | "either", 473 | "encoding_rs", 474 | "futures-core", 475 | "futures-util", 476 | "log", 477 | "mime", 478 | "pin-project 1.0.6", 479 | "regex", 480 | "serde 1.0.125", 481 | "serde_json", 482 | "serde_urlencoded", 483 | "smallvec", 484 | "socket2", 485 | "time 0.2.26", 486 | "url", 487 | ] 488 | 489 | [[package]] 490 | name = "actix-web-codegen" 491 | version = "0.4.0" 492 | source = "registry+https://github.com/rust-lang/crates.io-index" 493 | checksum = "ad26f77093333e0e7c6ffe54ebe3582d908a104e448723eec6d43d08b07143fb" 494 | dependencies = [ 495 | "proc-macro2", 496 | "quote", 497 | "syn", 498 | ] 499 | 500 | [[package]] 501 | name = "actix-web-codegen" 502 | version = "0.5.0-beta.2" 503 | source = "registry+https://github.com/rust-lang/crates.io-index" 504 | checksum = "7f138ac357a674c3b480ddb7bbd894b13c1b6e8927d728bc9ea5e17eee2f8fc9" 505 | dependencies = [ 506 | "proc-macro2", 507 | "quote", 508 | "syn", 509 | ] 510 | 511 | [[package]] 512 | name = "actix_derive" 513 | version = "0.6.0" 514 | source = "registry+https://github.com/rust-lang/crates.io-index" 515 | checksum = "6d44b8fee1ced9671ba043476deddef739dd0959bf77030b26b738cc591737a7" 516 | dependencies = [ 517 | "proc-macro2", 518 | "quote", 519 | "syn", 520 | ] 521 | 522 | [[package]] 523 | name = "adler" 524 | version = "1.0.2" 525 | source = "registry+https://github.com/rust-lang/crates.io-index" 526 | checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" 527 | 528 | [[package]] 529 | name = "aead" 530 | version = "0.3.2" 531 | source = "registry+https://github.com/rust-lang/crates.io-index" 532 | checksum = "7fc95d1bdb8e6666b2b217308eeeb09f2d6728d104be3e31916cc74d15420331" 533 | dependencies = [ 534 | "generic-array 0.14.4", 535 | ] 536 | 537 | [[package]] 538 | name = "aes" 539 | version = "0.6.0" 540 | source = "registry+https://github.com/rust-lang/crates.io-index" 541 | checksum = "884391ef1066acaa41e766ba8f596341b96e93ce34f9a43e7d24bf0a0eaf0561" 542 | dependencies = [ 543 | "aes-soft", 544 | "aesni", 545 | "cipher", 546 | ] 547 | 548 | [[package]] 549 | name = "aes-gcm" 550 | version = "0.8.0" 551 | source = "registry+https://github.com/rust-lang/crates.io-index" 552 | checksum = "5278b5fabbb9bd46e24aa69b2fdea62c99088e0a950a9be40e3e0101298f88da" 553 | dependencies = [ 554 | "aead", 555 | "aes", 556 | "cipher", 557 | "ctr", 558 | "ghash", 559 | "subtle", 560 | ] 561 | 562 | [[package]] 563 | name = "aes-soft" 564 | version = "0.6.4" 565 | source = "registry+https://github.com/rust-lang/crates.io-index" 566 | checksum = "be14c7498ea50828a38d0e24a765ed2effe92a705885b57d029cd67d45744072" 567 | dependencies = [ 568 | "cipher", 569 | "opaque-debug 0.3.0", 570 | ] 571 | 572 | [[package]] 573 | name = "aesni" 574 | version = "0.10.0" 575 | source = "registry+https://github.com/rust-lang/crates.io-index" 576 | checksum = "ea2e11f5e94c2f7d386164cc2aa1f97823fed6f259e486940a71c174dd01b0ce" 577 | dependencies = [ 578 | "cipher", 579 | "opaque-debug 0.3.0", 580 | ] 581 | 582 | [[package]] 583 | name = "ahash" 584 | version = "0.4.7" 585 | source = "registry+https://github.com/rust-lang/crates.io-index" 586 | checksum = "739f4a8db6605981345c5654f3a85b056ce52f37a39d34da03f25bf2151ea16e" 587 | 588 | [[package]] 589 | name = "ahash" 590 | version = "0.6.3" 591 | source = "registry+https://github.com/rust-lang/crates.io-index" 592 | checksum = "796540673305a66d127804eef19ad696f1f204b8c1025aaca4958c17eab32877" 593 | dependencies = [ 594 | "getrandom 0.2.2", 595 | "once_cell", 596 | "version_check", 597 | ] 598 | 599 | [[package]] 600 | name = "ahash" 601 | version = "0.7.2" 602 | source = "registry+https://github.com/rust-lang/crates.io-index" 603 | checksum = "7f200cbb1e856866d9eade941cf3aa0c5d7dd36f74311c4273b494f4ef036957" 604 | dependencies = [ 605 | "getrandom 0.2.2", 606 | "once_cell", 607 | "version_check", 608 | ] 609 | 610 | [[package]] 611 | name = "aho-corasick" 612 | version = "0.7.15" 613 | source = "registry+https://github.com/rust-lang/crates.io-index" 614 | checksum = "7404febffaa47dac81aa44dba71523c9d069b1bdc50a77db41195149e17f68e5" 615 | dependencies = [ 616 | "memchr", 617 | ] 618 | 619 | [[package]] 620 | name = "ansi_term" 621 | version = "0.11.0" 622 | source = "registry+https://github.com/rust-lang/crates.io-index" 623 | checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" 624 | dependencies = [ 625 | "winapi 0.3.9", 626 | ] 627 | 628 | [[package]] 629 | name = "arrayref" 630 | version = "0.3.6" 631 | source = "registry+https://github.com/rust-lang/crates.io-index" 632 | checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544" 633 | 634 | [[package]] 635 | name = "arrayvec" 636 | version = "0.5.2" 637 | source = "registry+https://github.com/rust-lang/crates.io-index" 638 | checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" 639 | 640 | [[package]] 641 | name = "askama" 642 | version = "0.10.5" 643 | source = "registry+https://github.com/rust-lang/crates.io-index" 644 | checksum = "d298738b6e47e1034e560e5afe63aa488fea34e25ec11b855a76f0d7b8e73134" 645 | dependencies = [ 646 | "askama_derive", 647 | "askama_escape", 648 | "askama_shared", 649 | ] 650 | 651 | [[package]] 652 | name = "askama_derive" 653 | version = "0.10.5" 654 | source = "registry+https://github.com/rust-lang/crates.io-index" 655 | checksum = "ca2925c4c290382f9d2fa3d1c1b6a63fa1427099721ecca4749b154cc9c25522" 656 | dependencies = [ 657 | "askama_shared", 658 | "proc-macro2", 659 | "syn", 660 | ] 661 | 662 | [[package]] 663 | name = "askama_escape" 664 | version = "0.10.1" 665 | source = "registry+https://github.com/rust-lang/crates.io-index" 666 | checksum = "90c108c1a94380c89d2215d0ac54ce09796823cca0fd91b299cfff3b33e346fb" 667 | 668 | [[package]] 669 | name = "askama_shared" 670 | version = "0.11.1" 671 | source = "registry+https://github.com/rust-lang/crates.io-index" 672 | checksum = "2582b77e0f3c506ec4838a25fa8a5f97b9bed72bb6d3d272ea1c031d8bd373bc" 673 | dependencies = [ 674 | "askama_escape", 675 | "humansize", 676 | "nom 6.1.2", 677 | "num-traits 0.2.14", 678 | "percent-encoding", 679 | "proc-macro2", 680 | "quote", 681 | "serde 1.0.125", 682 | "syn", 683 | "toml", 684 | ] 685 | 686 | [[package]] 687 | name = "async-mutex" 688 | version = "1.4.0" 689 | source = "registry+https://github.com/rust-lang/crates.io-index" 690 | checksum = "479db852db25d9dbf6204e6cb6253698f175c15726470f78af0d918e99d6156e" 691 | dependencies = [ 692 | "event-listener", 693 | ] 694 | 695 | [[package]] 696 | name = "async-trait" 697 | version = "0.1.48" 698 | source = "registry+https://github.com/rust-lang/crates.io-index" 699 | checksum = "36ea56748e10732c49404c153638a15ec3d6211ec5ff35d9bb20e13b93576adf" 700 | dependencies = [ 701 | "proc-macro2", 702 | "quote", 703 | "syn", 704 | ] 705 | 706 | [[package]] 707 | name = "atoi" 708 | version = "0.4.0" 709 | source = "registry+https://github.com/rust-lang/crates.io-index" 710 | checksum = "616896e05fc0e2649463a93a15183c6a16bf03413a7af88ef1285ddedfa9cda5" 711 | dependencies = [ 712 | "num-traits 0.2.14", 713 | ] 714 | 715 | [[package]] 716 | name = "atty" 717 | version = "0.2.14" 718 | source = "registry+https://github.com/rust-lang/crates.io-index" 719 | checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" 720 | dependencies = [ 721 | "hermit-abi", 722 | "libc", 723 | "winapi 0.3.9", 724 | ] 725 | 726 | [[package]] 727 | name = "autocfg" 728 | version = "1.0.1" 729 | source = "registry+https://github.com/rust-lang/crates.io-index" 730 | checksum = "cdb031dd78e28731d87d56cc8ffef4a8f36ca26c38fe2de700543e627f8a464a" 731 | 732 | [[package]] 733 | name = "awc" 734 | version = "2.0.3" 735 | source = "registry+https://github.com/rust-lang/crates.io-index" 736 | checksum = "b381e490e7b0cfc37ebc54079b0413d8093ef43d14a4e4747083f7fa47a9e691" 737 | dependencies = [ 738 | "actix-codec 0.3.0", 739 | "actix-http 2.2.0", 740 | "actix-rt 1.1.1", 741 | "actix-service 1.0.6", 742 | "base64", 743 | "bytes 0.5.6", 744 | "cfg-if 1.0.0", 745 | "derive_more", 746 | "futures-core", 747 | "log", 748 | "mime", 749 | "percent-encoding", 750 | "rand 0.7.3", 751 | "serde 1.0.125", 752 | "serde_json", 753 | "serde_urlencoded", 754 | ] 755 | 756 | [[package]] 757 | name = "awc" 758 | version = "3.0.0-beta.3" 759 | source = "registry+https://github.com/rust-lang/crates.io-index" 760 | checksum = "09aecd8728f6491a62b27454ea4b36fb7e50faf32928b0369b644e402c651f4e" 761 | dependencies = [ 762 | "actix-codec 0.4.0-beta.1", 763 | "actix-http 3.0.0-beta.4", 764 | "actix-rt 2.2.0", 765 | "actix-service 2.0.0-beta.5", 766 | "base64", 767 | "bytes 1.0.1", 768 | "cfg-if 1.0.0", 769 | "derive_more", 770 | "futures-core", 771 | "itoa", 772 | "log", 773 | "mime", 774 | "percent-encoding", 775 | "pin-project-lite 0.2.6", 776 | "rand 0.8.3", 777 | "serde 1.0.125", 778 | "serde_json", 779 | "serde_urlencoded", 780 | ] 781 | 782 | [[package]] 783 | name = "base-x" 784 | version = "0.2.8" 785 | source = "registry+https://github.com/rust-lang/crates.io-index" 786 | checksum = "a4521f3e3d031370679b3b140beb36dfe4801b09ac77e30c61941f97df3ef28b" 787 | 788 | [[package]] 789 | name = "base64" 790 | version = "0.13.0" 791 | source = "registry+https://github.com/rust-lang/crates.io-index" 792 | checksum = "904dfeac50f3cdaba28fc6f57fdcddb75f49ed61346676a78c4ffe55877802fd" 793 | 794 | [[package]] 795 | name = "bitflags" 796 | version = "1.2.1" 797 | source = "registry+https://github.com/rust-lang/crates.io-index" 798 | checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" 799 | 800 | [[package]] 801 | name = "bitvec" 802 | version = "0.19.5" 803 | source = "registry+https://github.com/rust-lang/crates.io-index" 804 | checksum = "8942c8d352ae1838c9dda0b0ca2ab657696ef2232a20147cf1b30ae1a9cb4321" 805 | dependencies = [ 806 | "funty", 807 | "radium", 808 | "tap", 809 | "wyz", 810 | ] 811 | 812 | [[package]] 813 | name = "blake2b_simd" 814 | version = "0.5.11" 815 | source = "registry+https://github.com/rust-lang/crates.io-index" 816 | checksum = "afa748e348ad3be8263be728124b24a24f268266f6f5d58af9d75f6a40b5c587" 817 | dependencies = [ 818 | "arrayref", 819 | "arrayvec", 820 | "constant_time_eq", 821 | ] 822 | 823 | [[package]] 824 | name = "block-buffer" 825 | version = "0.7.3" 826 | source = "registry+https://github.com/rust-lang/crates.io-index" 827 | checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" 828 | dependencies = [ 829 | "block-padding", 830 | "byte-tools", 831 | "byteorder", 832 | "generic-array 0.12.4", 833 | ] 834 | 835 | [[package]] 836 | name = "block-buffer" 837 | version = "0.9.0" 838 | source = "registry+https://github.com/rust-lang/crates.io-index" 839 | checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" 840 | dependencies = [ 841 | "generic-array 0.14.4", 842 | ] 843 | 844 | [[package]] 845 | name = "block-padding" 846 | version = "0.1.5" 847 | source = "registry+https://github.com/rust-lang/crates.io-index" 848 | checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5" 849 | dependencies = [ 850 | "byte-tools", 851 | ] 852 | 853 | [[package]] 854 | name = "brotli-sys" 855 | version = "0.3.2" 856 | source = "registry+https://github.com/rust-lang/crates.io-index" 857 | checksum = "4445dea95f4c2b41cde57cc9fee236ae4dbae88d8fcbdb4750fc1bb5d86aaecd" 858 | dependencies = [ 859 | "cc", 860 | "libc", 861 | ] 862 | 863 | [[package]] 864 | name = "brotli2" 865 | version = "0.3.2" 866 | source = "registry+https://github.com/rust-lang/crates.io-index" 867 | checksum = "0cb036c3eade309815c15ddbacec5b22c4d1f3983a774ab2eac2e3e9ea85568e" 868 | dependencies = [ 869 | "brotli-sys", 870 | "libc", 871 | ] 872 | 873 | [[package]] 874 | name = "build_const" 875 | version = "0.2.1" 876 | source = "registry+https://github.com/rust-lang/crates.io-index" 877 | checksum = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39" 878 | 879 | [[package]] 880 | name = "bumpalo" 881 | version = "3.6.1" 882 | source = "registry+https://github.com/rust-lang/crates.io-index" 883 | checksum = "63396b8a4b9de3f4fdfb320ab6080762242f66a8ef174c49d8e19b674db4cdbe" 884 | 885 | [[package]] 886 | name = "byte-tools" 887 | version = "0.3.1" 888 | source = "registry+https://github.com/rust-lang/crates.io-index" 889 | checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" 890 | 891 | [[package]] 892 | name = "byteorder" 893 | version = "1.4.3" 894 | source = "registry+https://github.com/rust-lang/crates.io-index" 895 | checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" 896 | 897 | [[package]] 898 | name = "bytes" 899 | version = "0.5.6" 900 | source = "registry+https://github.com/rust-lang/crates.io-index" 901 | checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38" 902 | 903 | [[package]] 904 | name = "bytes" 905 | version = "1.0.1" 906 | source = "registry+https://github.com/rust-lang/crates.io-index" 907 | checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040" 908 | 909 | [[package]] 910 | name = "bytestring" 911 | version = "1.0.0" 912 | source = "registry+https://github.com/rust-lang/crates.io-index" 913 | checksum = "90706ba19e97b90786e19dc0d5e2abd80008d99d4c0c5d1ad0b5e72cec7c494d" 914 | dependencies = [ 915 | "bytes 1.0.1", 916 | ] 917 | 918 | [[package]] 919 | name = "cached" 920 | version = "0.23.0" 921 | source = "registry+https://github.com/rust-lang/crates.io-index" 922 | checksum = "5e2afe73808fbaac302e39c9754bfc3c4b4d0f99c9c240b9f4e4efc841ad1b74" 923 | dependencies = [ 924 | "async-mutex", 925 | "async-trait", 926 | "cached_proc_macro", 927 | "cached_proc_macro_types", 928 | "futures", 929 | "hashbrown", 930 | "once_cell", 931 | ] 932 | 933 | [[package]] 934 | name = "cached_proc_macro" 935 | version = "0.6.0" 936 | source = "registry+https://github.com/rust-lang/crates.io-index" 937 | checksum = "bf857ae42d910aede5c5186e62684b0d7a597ce2fe3bd14448ab8f7ef439848c" 938 | dependencies = [ 939 | "async-mutex", 940 | "cached_proc_macro_types", 941 | "darling", 942 | "quote", 943 | "syn", 944 | ] 945 | 946 | [[package]] 947 | name = "cached_proc_macro_types" 948 | version = "0.1.0" 949 | source = "registry+https://github.com/rust-lang/crates.io-index" 950 | checksum = "3a4f925191b4367301851c6d99b09890311d74b0d43f274c0b34c86d308a3663" 951 | 952 | [[package]] 953 | name = "cc" 954 | version = "1.0.67" 955 | source = "registry+https://github.com/rust-lang/crates.io-index" 956 | checksum = "e3c69b077ad434294d3ce9f1f6143a2a4b89a8a2d54ef813d85003a4fd1137fd" 957 | 958 | [[package]] 959 | name = "cfg-if" 960 | version = "0.1.10" 961 | source = "registry+https://github.com/rust-lang/crates.io-index" 962 | checksum = "4785bdd1c96b2a846b2bd7cc02e86b6b3dbf14e7e53446c4f54c92a361040822" 963 | 964 | [[package]] 965 | name = "cfg-if" 966 | version = "1.0.0" 967 | source = "registry+https://github.com/rust-lang/crates.io-index" 968 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" 969 | 970 | [[package]] 971 | name = "chrono" 972 | version = "0.4.19" 973 | source = "registry+https://github.com/rust-lang/crates.io-index" 974 | checksum = "670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73" 975 | dependencies = [ 976 | "libc", 977 | "num-integer", 978 | "num-traits 0.2.14", 979 | "serde 1.0.125", 980 | "time 0.1.44", 981 | "winapi 0.3.9", 982 | ] 983 | 984 | [[package]] 985 | name = "cipher" 986 | version = "0.2.5" 987 | source = "registry+https://github.com/rust-lang/crates.io-index" 988 | checksum = "12f8e7987cbd042a63249497f41aed09f8e65add917ea6566effbc56578d6801" 989 | dependencies = [ 990 | "generic-array 0.14.4", 991 | ] 992 | 993 | [[package]] 994 | name = "clap" 995 | version = "2.33.3" 996 | source = "registry+https://github.com/rust-lang/crates.io-index" 997 | checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002" 998 | dependencies = [ 999 | "ansi_term", 1000 | "atty", 1001 | "bitflags", 1002 | "strsim 0.8.0", 1003 | "textwrap 0.11.0", 1004 | "unicode-width", 1005 | "vec_map", 1006 | ] 1007 | 1008 | [[package]] 1009 | name = "clap" 1010 | version = "3.0.0-beta.2" 1011 | source = "registry+https://github.com/rust-lang/crates.io-index" 1012 | checksum = "4bd1061998a501ee7d4b6d449020df3266ca3124b941ec56cf2005c3779ca142" 1013 | dependencies = [ 1014 | "atty", 1015 | "bitflags", 1016 | "clap_derive", 1017 | "indexmap", 1018 | "lazy_static", 1019 | "os_str_bytes", 1020 | "strsim 0.10.0", 1021 | "termcolor", 1022 | "textwrap 0.12.1", 1023 | "unicode-width", 1024 | "vec_map", 1025 | ] 1026 | 1027 | [[package]] 1028 | name = "clap_derive" 1029 | version = "3.0.0-beta.2" 1030 | source = "registry+https://github.com/rust-lang/crates.io-index" 1031 | checksum = "370f715b81112975b1b69db93e0b56ea4cd4e5002ac43b2da8474106a54096a1" 1032 | dependencies = [ 1033 | "heck", 1034 | "proc-macro-error", 1035 | "proc-macro2", 1036 | "quote", 1037 | "syn", 1038 | ] 1039 | 1040 | [[package]] 1041 | name = "colored" 1042 | version = "2.0.0" 1043 | source = "registry+https://github.com/rust-lang/crates.io-index" 1044 | checksum = "b3616f750b84d8f0de8a58bda93e08e2a81ad3f523089b05f1dffecab48c6cbd" 1045 | dependencies = [ 1046 | "atty", 1047 | "lazy_static", 1048 | "winapi 0.3.9", 1049 | ] 1050 | 1051 | [[package]] 1052 | name = "comrak" 1053 | version = "0.10.0" 1054 | source = "registry+https://github.com/rust-lang/crates.io-index" 1055 | checksum = "ac96caba4b5b55c21c9efd51d498225ce9448d06d9d5c17bbd357522c71bacfd" 1056 | dependencies = [ 1057 | "clap 2.33.3", 1058 | "entities", 1059 | "lazy_static", 1060 | "pest", 1061 | "pest_derive", 1062 | "regex", 1063 | "shell-words", 1064 | "twoway", 1065 | "typed-arena", 1066 | "unicode_categories", 1067 | "xdg", 1068 | ] 1069 | 1070 | [[package]] 1071 | name = "config" 1072 | version = "0.11.0" 1073 | source = "registry+https://github.com/rust-lang/crates.io-index" 1074 | checksum = "1b1b9d958c2b1368a663f05538fc1b5975adce1e19f435acceae987aceeeb369" 1075 | dependencies = [ 1076 | "lazy_static", 1077 | "nom 5.1.2", 1078 | "rust-ini", 1079 | "serde 1.0.125", 1080 | "serde-hjson", 1081 | "serde_json", 1082 | "toml", 1083 | "yaml-rust", 1084 | ] 1085 | 1086 | [[package]] 1087 | name = "const_fn" 1088 | version = "0.4.6" 1089 | source = "registry+https://github.com/rust-lang/crates.io-index" 1090 | checksum = "076a6803b0dacd6a88cfe64deba628b01533ff5ef265687e6938280c1afd0a28" 1091 | 1092 | [[package]] 1093 | name = "constant_time_eq" 1094 | version = "0.1.5" 1095 | source = "registry+https://github.com/rust-lang/crates.io-index" 1096 | checksum = "245097e9a4535ee1e3e3931fcfcd55a796a44c643e8596ff6566d68f09b87bbc" 1097 | 1098 | [[package]] 1099 | name = "convert_case" 1100 | version = "0.4.0" 1101 | source = "registry+https://github.com/rust-lang/crates.io-index" 1102 | checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" 1103 | 1104 | [[package]] 1105 | name = "cookie" 1106 | version = "0.14.4" 1107 | source = "registry+https://github.com/rust-lang/crates.io-index" 1108 | checksum = "03a5d7b21829bc7b4bf4754a978a241ae54ea55a40f92bb20216e54096f4b951" 1109 | dependencies = [ 1110 | "aes-gcm", 1111 | "base64", 1112 | "hkdf", 1113 | "hmac", 1114 | "percent-encoding", 1115 | "rand 0.8.3", 1116 | "sha2", 1117 | "time 0.2.26", 1118 | "version_check", 1119 | ] 1120 | 1121 | [[package]] 1122 | name = "copyless" 1123 | version = "0.1.5" 1124 | source = "registry+https://github.com/rust-lang/crates.io-index" 1125 | checksum = "a2df960f5d869b2dd8532793fde43eb5427cceb126c929747a26823ab0eeb536" 1126 | 1127 | [[package]] 1128 | name = "core-foundation" 1129 | version = "0.9.1" 1130 | source = "registry+https://github.com/rust-lang/crates.io-index" 1131 | checksum = "0a89e2ae426ea83155dccf10c0fa6b1463ef6d5fcb44cee0b224a408fa640a62" 1132 | dependencies = [ 1133 | "core-foundation-sys", 1134 | "libc", 1135 | ] 1136 | 1137 | [[package]] 1138 | name = "core-foundation-sys" 1139 | version = "0.8.2" 1140 | source = "registry+https://github.com/rust-lang/crates.io-index" 1141 | checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b" 1142 | 1143 | [[package]] 1144 | name = "cpuid-bool" 1145 | version = "0.1.2" 1146 | source = "registry+https://github.com/rust-lang/crates.io-index" 1147 | checksum = "8aebca1129a03dc6dc2b127edd729435bbc4a37e1d5f4d7513165089ceb02634" 1148 | 1149 | [[package]] 1150 | name = "cpuid-bool" 1151 | version = "0.2.0" 1152 | source = "registry+https://github.com/rust-lang/crates.io-index" 1153 | checksum = "dcb25d077389e53838a8158c8e99174c5a9d902dee4904320db714f3c653ffba" 1154 | 1155 | [[package]] 1156 | name = "crc" 1157 | version = "1.8.1" 1158 | source = "registry+https://github.com/rust-lang/crates.io-index" 1159 | checksum = "d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb" 1160 | dependencies = [ 1161 | "build_const", 1162 | ] 1163 | 1164 | [[package]] 1165 | name = "crc32fast" 1166 | version = "1.2.1" 1167 | source = "registry+https://github.com/rust-lang/crates.io-index" 1168 | checksum = "81156fece84ab6a9f2afdb109ce3ae577e42b1228441eded99bd77f627953b1a" 1169 | dependencies = [ 1170 | "cfg-if 1.0.0", 1171 | ] 1172 | 1173 | [[package]] 1174 | name = "crossbeam-channel" 1175 | version = "0.5.0" 1176 | source = "registry+https://github.com/rust-lang/crates.io-index" 1177 | checksum = "dca26ee1f8d361640700bde38b2c37d8c22b3ce2d360e1fc1c74ea4b0aa7d775" 1178 | dependencies = [ 1179 | "cfg-if 1.0.0", 1180 | "crossbeam-utils", 1181 | ] 1182 | 1183 | [[package]] 1184 | name = "crossbeam-queue" 1185 | version = "0.3.1" 1186 | source = "registry+https://github.com/rust-lang/crates.io-index" 1187 | checksum = "0f6cb3c7f5b8e51bc3ebb73a2327ad4abdbd119dc13223f14f961d2f38486756" 1188 | dependencies = [ 1189 | "cfg-if 1.0.0", 1190 | "crossbeam-utils", 1191 | ] 1192 | 1193 | [[package]] 1194 | name = "crossbeam-utils" 1195 | version = "0.8.3" 1196 | source = "registry+https://github.com/rust-lang/crates.io-index" 1197 | checksum = "e7e9d99fa91428effe99c5c6d4634cdeba32b8cf784fc428a2a687f61a952c49" 1198 | dependencies = [ 1199 | "autocfg", 1200 | "cfg-if 1.0.0", 1201 | "lazy_static", 1202 | ] 1203 | 1204 | [[package]] 1205 | name = "crypto-mac" 1206 | version = "0.10.0" 1207 | source = "registry+https://github.com/rust-lang/crates.io-index" 1208 | checksum = "4857fd85a0c34b3c3297875b747c1e02e06b6a0ea32dd892d8192b9ce0813ea6" 1209 | dependencies = [ 1210 | "generic-array 0.14.4", 1211 | "subtle", 1212 | ] 1213 | 1214 | [[package]] 1215 | name = "ctr" 1216 | version = "0.6.0" 1217 | source = "registry+https://github.com/rust-lang/crates.io-index" 1218 | checksum = "fb4a30d54f7443bf3d6191dcd486aca19e67cb3c49fa7a06a319966346707e7f" 1219 | dependencies = [ 1220 | "cipher", 1221 | ] 1222 | 1223 | [[package]] 1224 | name = "darling" 1225 | version = "0.10.2" 1226 | source = "registry+https://github.com/rust-lang/crates.io-index" 1227 | checksum = "0d706e75d87e35569db781a9b5e2416cff1236a47ed380831f959382ccd5f858" 1228 | dependencies = [ 1229 | "darling_core", 1230 | "darling_macro", 1231 | ] 1232 | 1233 | [[package]] 1234 | name = "darling_core" 1235 | version = "0.10.2" 1236 | source = "registry+https://github.com/rust-lang/crates.io-index" 1237 | checksum = "f0c960ae2da4de88a91b2d920c2a7233b400bc33cb28453a2987822d8392519b" 1238 | dependencies = [ 1239 | "fnv", 1240 | "ident_case", 1241 | "proc-macro2", 1242 | "quote", 1243 | "strsim 0.9.3", 1244 | "syn", 1245 | ] 1246 | 1247 | [[package]] 1248 | name = "darling_macro" 1249 | version = "0.10.2" 1250 | source = "registry+https://github.com/rust-lang/crates.io-index" 1251 | checksum = "d9b5a2f4ac4969822c62224815d069952656cadc7084fdca9751e6d959189b72" 1252 | dependencies = [ 1253 | "darling_core", 1254 | "quote", 1255 | "syn", 1256 | ] 1257 | 1258 | [[package]] 1259 | name = "derive_more" 1260 | version = "0.99.13" 1261 | source = "registry+https://github.com/rust-lang/crates.io-index" 1262 | checksum = "f82b1b72f1263f214c0f823371768776c4f5841b942c9883aa8e5ec584fd0ba6" 1263 | dependencies = [ 1264 | "convert_case", 1265 | "proc-macro2", 1266 | "quote", 1267 | "syn", 1268 | ] 1269 | 1270 | [[package]] 1271 | name = "digest" 1272 | version = "0.8.1" 1273 | source = "registry+https://github.com/rust-lang/crates.io-index" 1274 | checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" 1275 | dependencies = [ 1276 | "generic-array 0.12.4", 1277 | ] 1278 | 1279 | [[package]] 1280 | name = "digest" 1281 | version = "0.9.0" 1282 | source = "registry+https://github.com/rust-lang/crates.io-index" 1283 | checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" 1284 | dependencies = [ 1285 | "generic-array 0.14.4", 1286 | ] 1287 | 1288 | [[package]] 1289 | name = "discard" 1290 | version = "1.0.4" 1291 | source = "registry+https://github.com/rust-lang/crates.io-index" 1292 | checksum = "212d0f5754cb6769937f4501cc0e67f4f4483c8d2c3e1e922ee9edbe4ab4c7c0" 1293 | 1294 | [[package]] 1295 | name = "dotenv" 1296 | version = "0.15.0" 1297 | source = "registry+https://github.com/rust-lang/crates.io-index" 1298 | checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" 1299 | 1300 | [[package]] 1301 | name = "either" 1302 | version = "1.6.1" 1303 | source = "registry+https://github.com/rust-lang/crates.io-index" 1304 | checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457" 1305 | 1306 | [[package]] 1307 | name = "encoding_rs" 1308 | version = "0.8.28" 1309 | source = "registry+https://github.com/rust-lang/crates.io-index" 1310 | checksum = "80df024fbc5ac80f87dfef0d9f5209a252f2a497f7f42944cff24d8253cac065" 1311 | dependencies = [ 1312 | "cfg-if 1.0.0", 1313 | ] 1314 | 1315 | [[package]] 1316 | name = "entities" 1317 | version = "1.0.1" 1318 | source = "registry+https://github.com/rust-lang/crates.io-index" 1319 | checksum = "b5320ae4c3782150d900b79807611a59a99fc9a1d61d686faafc24b93fc8d7ca" 1320 | 1321 | [[package]] 1322 | name = "enum-as-inner" 1323 | version = "0.3.3" 1324 | source = "registry+https://github.com/rust-lang/crates.io-index" 1325 | checksum = "7c5f0096a91d210159eceb2ff5e1c4da18388a170e1e3ce948aac9c8fdbbf595" 1326 | dependencies = [ 1327 | "heck", 1328 | "proc-macro2", 1329 | "quote", 1330 | "syn", 1331 | ] 1332 | 1333 | [[package]] 1334 | name = "env_logger" 1335 | version = "0.8.3" 1336 | source = "registry+https://github.com/rust-lang/crates.io-index" 1337 | checksum = "17392a012ea30ef05a610aa97dfb49496e71c9f676b27879922ea5bdf60d9d3f" 1338 | dependencies = [ 1339 | "atty", 1340 | "humantime", 1341 | "log", 1342 | "regex", 1343 | "termcolor", 1344 | ] 1345 | 1346 | [[package]] 1347 | name = "event-listener" 1348 | version = "2.5.1" 1349 | source = "registry+https://github.com/rust-lang/crates.io-index" 1350 | checksum = "f7531096570974c3a9dcf9e4b8e1cede1ec26cf5046219fb3b9d897503b9be59" 1351 | 1352 | [[package]] 1353 | name = "fake-simd" 1354 | version = "0.1.2" 1355 | source = "registry+https://github.com/rust-lang/crates.io-index" 1356 | checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" 1357 | 1358 | [[package]] 1359 | name = "flate2" 1360 | version = "1.0.20" 1361 | source = "registry+https://github.com/rust-lang/crates.io-index" 1362 | checksum = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0" 1363 | dependencies = [ 1364 | "cfg-if 1.0.0", 1365 | "crc32fast", 1366 | "libc", 1367 | "miniz_oxide", 1368 | ] 1369 | 1370 | [[package]] 1371 | name = "fnv" 1372 | version = "1.0.7" 1373 | source = "registry+https://github.com/rust-lang/crates.io-index" 1374 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" 1375 | 1376 | [[package]] 1377 | name = "foreign-types" 1378 | version = "0.3.2" 1379 | source = "registry+https://github.com/rust-lang/crates.io-index" 1380 | checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" 1381 | dependencies = [ 1382 | "foreign-types-shared", 1383 | ] 1384 | 1385 | [[package]] 1386 | name = "foreign-types-shared" 1387 | version = "0.1.1" 1388 | source = "registry+https://github.com/rust-lang/crates.io-index" 1389 | checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" 1390 | 1391 | [[package]] 1392 | name = "form_urlencoded" 1393 | version = "1.0.1" 1394 | source = "registry+https://github.com/rust-lang/crates.io-index" 1395 | checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191" 1396 | dependencies = [ 1397 | "matches", 1398 | "percent-encoding", 1399 | ] 1400 | 1401 | [[package]] 1402 | name = "fuchsia-zircon" 1403 | version = "0.3.3" 1404 | source = "registry+https://github.com/rust-lang/crates.io-index" 1405 | checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" 1406 | dependencies = [ 1407 | "bitflags", 1408 | "fuchsia-zircon-sys", 1409 | ] 1410 | 1411 | [[package]] 1412 | name = "fuchsia-zircon-sys" 1413 | version = "0.3.3" 1414 | source = "registry+https://github.com/rust-lang/crates.io-index" 1415 | checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" 1416 | 1417 | [[package]] 1418 | name = "funty" 1419 | version = "1.1.0" 1420 | source = "registry+https://github.com/rust-lang/crates.io-index" 1421 | checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7" 1422 | 1423 | [[package]] 1424 | name = "futures" 1425 | version = "0.3.13" 1426 | source = "registry+https://github.com/rust-lang/crates.io-index" 1427 | checksum = "7f55667319111d593ba876406af7c409c0ebb44dc4be6132a783ccf163ea14c1" 1428 | dependencies = [ 1429 | "futures-channel", 1430 | "futures-core", 1431 | "futures-executor", 1432 | "futures-io", 1433 | "futures-sink", 1434 | "futures-task", 1435 | "futures-util", 1436 | ] 1437 | 1438 | [[package]] 1439 | name = "futures-channel" 1440 | version = "0.3.13" 1441 | source = "registry+https://github.com/rust-lang/crates.io-index" 1442 | checksum = "8c2dd2df839b57db9ab69c2c9d8f3e8c81984781937fe2807dc6dcf3b2ad2939" 1443 | dependencies = [ 1444 | "futures-core", 1445 | "futures-sink", 1446 | ] 1447 | 1448 | [[package]] 1449 | name = "futures-core" 1450 | version = "0.3.13" 1451 | source = "registry+https://github.com/rust-lang/crates.io-index" 1452 | checksum = "15496a72fabf0e62bdc3df11a59a3787429221dd0710ba8ef163d6f7a9112c94" 1453 | 1454 | [[package]] 1455 | name = "futures-executor" 1456 | version = "0.3.13" 1457 | source = "registry+https://github.com/rust-lang/crates.io-index" 1458 | checksum = "891a4b7b96d84d5940084b2a37632dd65deeae662c114ceaa2c879629c9c0ad1" 1459 | dependencies = [ 1460 | "futures-core", 1461 | "futures-task", 1462 | "futures-util", 1463 | ] 1464 | 1465 | [[package]] 1466 | name = "futures-io" 1467 | version = "0.3.13" 1468 | source = "registry+https://github.com/rust-lang/crates.io-index" 1469 | checksum = "d71c2c65c57704c32f5241c1223167c2c3294fd34ac020c807ddbe6db287ba59" 1470 | 1471 | [[package]] 1472 | name = "futures-macro" 1473 | version = "0.3.13" 1474 | source = "registry+https://github.com/rust-lang/crates.io-index" 1475 | checksum = "ea405816a5139fb39af82c2beb921d52143f556038378d6db21183a5c37fbfb7" 1476 | dependencies = [ 1477 | "proc-macro-hack", 1478 | "proc-macro2", 1479 | "quote", 1480 | "syn", 1481 | ] 1482 | 1483 | [[package]] 1484 | name = "futures-sink" 1485 | version = "0.3.13" 1486 | source = "registry+https://github.com/rust-lang/crates.io-index" 1487 | checksum = "85754d98985841b7d4f5e8e6fbfa4a4ac847916893ec511a2917ccd8525b8bb3" 1488 | 1489 | [[package]] 1490 | name = "futures-task" 1491 | version = "0.3.13" 1492 | source = "registry+https://github.com/rust-lang/crates.io-index" 1493 | checksum = "fa189ef211c15ee602667a6fcfe1c1fd9e07d42250d2156382820fba33c9df80" 1494 | 1495 | [[package]] 1496 | name = "futures-util" 1497 | version = "0.3.13" 1498 | source = "registry+https://github.com/rust-lang/crates.io-index" 1499 | checksum = "1812c7ab8aedf8d6f2701a43e1243acdbcc2b36ab26e2ad421eb99ac963d96d1" 1500 | dependencies = [ 1501 | "futures-channel", 1502 | "futures-core", 1503 | "futures-io", 1504 | "futures-macro", 1505 | "futures-sink", 1506 | "futures-task", 1507 | "memchr", 1508 | "pin-project-lite 0.2.6", 1509 | "pin-utils", 1510 | "proc-macro-hack", 1511 | "proc-macro-nested", 1512 | "slab", 1513 | ] 1514 | 1515 | [[package]] 1516 | name = "fxhash" 1517 | version = "0.2.1" 1518 | source = "registry+https://github.com/rust-lang/crates.io-index" 1519 | checksum = "c31b6d751ae2c7f11320402d34e41349dd1016f8d5d45e48c4312bc8625af50c" 1520 | dependencies = [ 1521 | "byteorder", 1522 | ] 1523 | 1524 | [[package]] 1525 | name = "generic-array" 1526 | version = "0.12.4" 1527 | source = "registry+https://github.com/rust-lang/crates.io-index" 1528 | checksum = "ffdf9f34f1447443d37393cc6c2b8313aebddcd96906caf34e54c68d8e57d7bd" 1529 | dependencies = [ 1530 | "typenum", 1531 | ] 1532 | 1533 | [[package]] 1534 | name = "generic-array" 1535 | version = "0.14.4" 1536 | source = "registry+https://github.com/rust-lang/crates.io-index" 1537 | checksum = "501466ecc8a30d1d3b7fc9229b122b2ce8ed6e9d9223f1138d4babb253e51817" 1538 | dependencies = [ 1539 | "typenum", 1540 | "version_check", 1541 | ] 1542 | 1543 | [[package]] 1544 | name = "getrandom" 1545 | version = "0.1.16" 1546 | source = "registry+https://github.com/rust-lang/crates.io-index" 1547 | checksum = "8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce" 1548 | dependencies = [ 1549 | "cfg-if 1.0.0", 1550 | "libc", 1551 | "wasi 0.9.0+wasi-snapshot-preview1", 1552 | ] 1553 | 1554 | [[package]] 1555 | name = "getrandom" 1556 | version = "0.2.2" 1557 | source = "registry+https://github.com/rust-lang/crates.io-index" 1558 | checksum = "c9495705279e7140bf035dde1f6e750c162df8b625267cd52cc44e0b156732c8" 1559 | dependencies = [ 1560 | "cfg-if 1.0.0", 1561 | "libc", 1562 | "wasi 0.10.0+wasi-snapshot-preview1", 1563 | ] 1564 | 1565 | [[package]] 1566 | name = "ghash" 1567 | version = "0.3.1" 1568 | source = "registry+https://github.com/rust-lang/crates.io-index" 1569 | checksum = "97304e4cd182c3846f7575ced3890c53012ce534ad9114046b0a9e00bb30a375" 1570 | dependencies = [ 1571 | "opaque-debug 0.3.0", 1572 | "polyval", 1573 | ] 1574 | 1575 | [[package]] 1576 | name = "h2" 1577 | version = "0.2.7" 1578 | source = "registry+https://github.com/rust-lang/crates.io-index" 1579 | checksum = "5e4728fd124914ad25e99e3d15a9361a879f6620f63cb56bbb08f95abb97a535" 1580 | dependencies = [ 1581 | "bytes 0.5.6", 1582 | "fnv", 1583 | "futures-core", 1584 | "futures-sink", 1585 | "futures-util", 1586 | "http", 1587 | "indexmap", 1588 | "slab", 1589 | "tokio 0.2.25", 1590 | "tokio-util 0.3.1", 1591 | "tracing", 1592 | "tracing-futures", 1593 | ] 1594 | 1595 | [[package]] 1596 | name = "h2" 1597 | version = "0.3.2" 1598 | source = "registry+https://github.com/rust-lang/crates.io-index" 1599 | checksum = "fc018e188373e2777d0ef2467ebff62a08e66c3f5857b23c8fbec3018210dc00" 1600 | dependencies = [ 1601 | "bytes 1.0.1", 1602 | "fnv", 1603 | "futures-core", 1604 | "futures-sink", 1605 | "futures-util", 1606 | "http", 1607 | "indexmap", 1608 | "slab", 1609 | "tokio 1.4.0", 1610 | "tokio-util 0.6.5", 1611 | "tracing", 1612 | ] 1613 | 1614 | [[package]] 1615 | name = "hashbrown" 1616 | version = "0.9.1" 1617 | source = "registry+https://github.com/rust-lang/crates.io-index" 1618 | checksum = "d7afe4a420e3fe79967a00898cc1f4db7c8a49a9333a29f8a4bd76a253d5cd04" 1619 | dependencies = [ 1620 | "ahash 0.4.7", 1621 | ] 1622 | 1623 | [[package]] 1624 | name = "hashlink" 1625 | version = "0.6.0" 1626 | source = "registry+https://github.com/rust-lang/crates.io-index" 1627 | checksum = "d99cf782f0dc4372d26846bec3de7804ceb5df083c2d4462c0b8d2330e894fa8" 1628 | dependencies = [ 1629 | "hashbrown", 1630 | ] 1631 | 1632 | [[package]] 1633 | name = "heck" 1634 | version = "0.3.2" 1635 | source = "registry+https://github.com/rust-lang/crates.io-index" 1636 | checksum = "87cbf45460356b7deeb5e3415b5563308c0a9b057c85e12b06ad551f98d0a6ac" 1637 | dependencies = [ 1638 | "unicode-segmentation", 1639 | ] 1640 | 1641 | [[package]] 1642 | name = "hermit-abi" 1643 | version = "0.1.18" 1644 | source = "registry+https://github.com/rust-lang/crates.io-index" 1645 | checksum = "322f4de77956e22ed0e5032c359a0f1273f1f7f0d79bfa3b8ffbc730d7fbcc5c" 1646 | dependencies = [ 1647 | "libc", 1648 | ] 1649 | 1650 | [[package]] 1651 | name = "hex" 1652 | version = "0.4.3" 1653 | source = "registry+https://github.com/rust-lang/crates.io-index" 1654 | checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" 1655 | 1656 | [[package]] 1657 | name = "hkdf" 1658 | version = "0.10.0" 1659 | source = "registry+https://github.com/rust-lang/crates.io-index" 1660 | checksum = "51ab2f639c231793c5f6114bdb9bbe50a7dbbfcd7c7c6bd8475dec2d991e964f" 1661 | dependencies = [ 1662 | "digest 0.9.0", 1663 | "hmac", 1664 | ] 1665 | 1666 | [[package]] 1667 | name = "hmac" 1668 | version = "0.10.1" 1669 | source = "registry+https://github.com/rust-lang/crates.io-index" 1670 | checksum = "c1441c6b1e930e2817404b5046f1f989899143a12bf92de603b69f4e0aee1e15" 1671 | dependencies = [ 1672 | "crypto-mac", 1673 | "digest 0.9.0", 1674 | ] 1675 | 1676 | [[package]] 1677 | name = "hostname" 1678 | version = "0.3.1" 1679 | source = "registry+https://github.com/rust-lang/crates.io-index" 1680 | checksum = "3c731c3e10504cc8ed35cfe2f1db4c9274c3d35fa486e3b31df46f068ef3e867" 1681 | dependencies = [ 1682 | "libc", 1683 | "match_cfg", 1684 | "winapi 0.3.9", 1685 | ] 1686 | 1687 | [[package]] 1688 | name = "http" 1689 | version = "0.2.3" 1690 | source = "registry+https://github.com/rust-lang/crates.io-index" 1691 | checksum = "7245cd7449cc792608c3c8a9eaf69bd4eabbabf802713748fd739c98b82f0747" 1692 | dependencies = [ 1693 | "bytes 1.0.1", 1694 | "fnv", 1695 | "itoa", 1696 | ] 1697 | 1698 | [[package]] 1699 | name = "http-range" 1700 | version = "0.1.4" 1701 | source = "registry+https://github.com/rust-lang/crates.io-index" 1702 | checksum = "eee9694f83d9b7c09682fdb32213682939507884e5bcf227be9aff5d644b90dc" 1703 | 1704 | [[package]] 1705 | name = "httparse" 1706 | version = "1.3.5" 1707 | source = "registry+https://github.com/rust-lang/crates.io-index" 1708 | checksum = "615caabe2c3160b313d52ccc905335f4ed5f10881dd63dc5699d47e90be85691" 1709 | 1710 | [[package]] 1711 | name = "httpdate" 1712 | version = "0.3.2" 1713 | source = "registry+https://github.com/rust-lang/crates.io-index" 1714 | checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47" 1715 | 1716 | [[package]] 1717 | name = "humansize" 1718 | version = "1.1.0" 1719 | source = "registry+https://github.com/rust-lang/crates.io-index" 1720 | checksum = "b6cab2627acfc432780848602f3f558f7e9dd427352224b0d9324025796d2a5e" 1721 | 1722 | [[package]] 1723 | name = "humantime" 1724 | version = "2.1.0" 1725 | source = "registry+https://github.com/rust-lang/crates.io-index" 1726 | checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" 1727 | 1728 | [[package]] 1729 | name = "hyperx" 1730 | version = "1.3.0" 1731 | source = "registry+https://github.com/rust-lang/crates.io-index" 1732 | checksum = "82566a1ace7f56f604d83b7b2c259c78e243d99c565f23d7b4ae34466442c5a2" 1733 | dependencies = [ 1734 | "base64", 1735 | "bytes 1.0.1", 1736 | "http", 1737 | "httparse", 1738 | "httpdate", 1739 | "language-tags", 1740 | "mime", 1741 | "percent-encoding", 1742 | "unicase", 1743 | ] 1744 | 1745 | [[package]] 1746 | name = "ident_case" 1747 | version = "1.0.1" 1748 | source = "registry+https://github.com/rust-lang/crates.io-index" 1749 | checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" 1750 | 1751 | [[package]] 1752 | name = "idna" 1753 | version = "0.2.2" 1754 | source = "registry+https://github.com/rust-lang/crates.io-index" 1755 | checksum = "89829a5d69c23d348314a7ac337fe39173b61149a9864deabd260983aed48c21" 1756 | dependencies = [ 1757 | "matches", 1758 | "unicode-bidi", 1759 | "unicode-normalization", 1760 | ] 1761 | 1762 | [[package]] 1763 | name = "if_chain" 1764 | version = "1.0.1" 1765 | source = "registry+https://github.com/rust-lang/crates.io-index" 1766 | checksum = "1f7280c75fb2e2fc47080ec80ccc481376923acb04501957fc38f935c3de5088" 1767 | 1768 | [[package]] 1769 | name = "indexmap" 1770 | version = "1.6.2" 1771 | source = "registry+https://github.com/rust-lang/crates.io-index" 1772 | checksum = "824845a0bf897a9042383849b02c1bc219c2383772efcd5c6f9766fa4b81aef3" 1773 | dependencies = [ 1774 | "autocfg", 1775 | "hashbrown", 1776 | ] 1777 | 1778 | [[package]] 1779 | name = "instant" 1780 | version = "0.1.9" 1781 | source = "registry+https://github.com/rust-lang/crates.io-index" 1782 | checksum = "61124eeebbd69b8190558df225adf7e4caafce0d743919e5d6b19652314ec5ec" 1783 | dependencies = [ 1784 | "cfg-if 1.0.0", 1785 | ] 1786 | 1787 | [[package]] 1788 | name = "iovec" 1789 | version = "0.1.4" 1790 | source = "registry+https://github.com/rust-lang/crates.io-index" 1791 | checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" 1792 | dependencies = [ 1793 | "libc", 1794 | ] 1795 | 1796 | [[package]] 1797 | name = "ipconfig" 1798 | version = "0.2.2" 1799 | source = "registry+https://github.com/rust-lang/crates.io-index" 1800 | checksum = "f7e2f18aece9709094573a9f24f483c4f65caa4298e2f7ae1b71cc65d853fad7" 1801 | dependencies = [ 1802 | "socket2", 1803 | "widestring", 1804 | "winapi 0.3.9", 1805 | "winreg", 1806 | ] 1807 | 1808 | [[package]] 1809 | name = "itoa" 1810 | version = "0.4.7" 1811 | source = "registry+https://github.com/rust-lang/crates.io-index" 1812 | checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736" 1813 | 1814 | [[package]] 1815 | name = "js-sys" 1816 | version = "0.3.50" 1817 | source = "registry+https://github.com/rust-lang/crates.io-index" 1818 | checksum = "2d99f9e3e84b8f67f846ef5b4cbbc3b1c29f6c759fcbce6f01aa0e73d932a24c" 1819 | dependencies = [ 1820 | "wasm-bindgen", 1821 | ] 1822 | 1823 | [[package]] 1824 | name = "kernel32-sys" 1825 | version = "0.2.2" 1826 | source = "registry+https://github.com/rust-lang/crates.io-index" 1827 | checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" 1828 | dependencies = [ 1829 | "winapi 0.2.8", 1830 | "winapi-build", 1831 | ] 1832 | 1833 | [[package]] 1834 | name = "language-tags" 1835 | version = "0.2.2" 1836 | source = "registry+https://github.com/rust-lang/crates.io-index" 1837 | checksum = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" 1838 | 1839 | [[package]] 1840 | name = "lazy_static" 1841 | version = "1.4.0" 1842 | source = "registry+https://github.com/rust-lang/crates.io-index" 1843 | checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" 1844 | 1845 | [[package]] 1846 | name = "lettre" 1847 | version = "0.10.0-beta.3" 1848 | source = "registry+https://github.com/rust-lang/crates.io-index" 1849 | checksum = "897171ed0e63da84c988b157106ad8b6532d7499aeeec906ce46b05415cc79d3" 1850 | dependencies = [ 1851 | "base64", 1852 | "hostname", 1853 | "hyperx", 1854 | "idna", 1855 | "mime", 1856 | "native-tls", 1857 | "nom 6.1.2", 1858 | "once_cell", 1859 | "quoted_printable", 1860 | "r2d2", 1861 | "rand 0.8.3", 1862 | "regex", 1863 | "uuid", 1864 | ] 1865 | 1866 | [[package]] 1867 | name = "lexical-core" 1868 | version = "0.7.5" 1869 | source = "registry+https://github.com/rust-lang/crates.io-index" 1870 | checksum = "21f866863575d0e1d654fbeeabdc927292fdf862873dc3c96c6f753357e13374" 1871 | dependencies = [ 1872 | "arrayvec", 1873 | "bitflags", 1874 | "cfg-if 1.0.0", 1875 | "ryu", 1876 | "static_assertions", 1877 | ] 1878 | 1879 | [[package]] 1880 | name = "libc" 1881 | version = "0.2.92" 1882 | source = "registry+https://github.com/rust-lang/crates.io-index" 1883 | checksum = "56d855069fafbb9b344c0f962150cd2c1187975cb1c22c1522c240d8c4986714" 1884 | 1885 | [[package]] 1886 | name = "linked-hash-map" 1887 | version = "0.5.4" 1888 | source = "registry+https://github.com/rust-lang/crates.io-index" 1889 | checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3" 1890 | 1891 | [[package]] 1892 | name = "lock_api" 1893 | version = "0.4.2" 1894 | source = "registry+https://github.com/rust-lang/crates.io-index" 1895 | checksum = "dd96ffd135b2fd7b973ac026d28085defbe8983df057ced3eb4f2130b0831312" 1896 | dependencies = [ 1897 | "scopeguard", 1898 | ] 1899 | 1900 | [[package]] 1901 | name = "log" 1902 | version = "0.4.14" 1903 | source = "registry+https://github.com/rust-lang/crates.io-index" 1904 | checksum = "51b9bbe6c47d51fc3e1a9b945965946b4c44142ab8792c50835a980d362c2710" 1905 | dependencies = [ 1906 | "cfg-if 1.0.0", 1907 | ] 1908 | 1909 | [[package]] 1910 | name = "lru-cache" 1911 | version = "0.1.2" 1912 | source = "registry+https://github.com/rust-lang/crates.io-index" 1913 | checksum = "31e24f1ad8321ca0e8a1e0ac13f23cb668e6f5466c2c57319f6a5cf1cc8e3b1c" 1914 | dependencies = [ 1915 | "linked-hash-map", 1916 | ] 1917 | 1918 | [[package]] 1919 | name = "maplit" 1920 | version = "1.0.2" 1921 | source = "registry+https://github.com/rust-lang/crates.io-index" 1922 | checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d" 1923 | 1924 | [[package]] 1925 | name = "match_cfg" 1926 | version = "0.1.0" 1927 | source = "registry+https://github.com/rust-lang/crates.io-index" 1928 | checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" 1929 | 1930 | [[package]] 1931 | name = "matches" 1932 | version = "0.1.8" 1933 | source = "registry+https://github.com/rust-lang/crates.io-index" 1934 | checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" 1935 | 1936 | [[package]] 1937 | name = "md-5" 1938 | version = "0.9.1" 1939 | source = "registry+https://github.com/rust-lang/crates.io-index" 1940 | checksum = "7b5a279bb9607f9f53c22d496eade00d138d1bdcccd07d74650387cf94942a15" 1941 | dependencies = [ 1942 | "block-buffer 0.9.0", 1943 | "digest 0.9.0", 1944 | "opaque-debug 0.3.0", 1945 | ] 1946 | 1947 | [[package]] 1948 | name = "memchr" 1949 | version = "2.3.4" 1950 | source = "registry+https://github.com/rust-lang/crates.io-index" 1951 | checksum = "0ee1c47aaa256ecabcaea351eae4a9b01ef39ed810004e298d2511ed284b1525" 1952 | 1953 | [[package]] 1954 | name = "mime" 1955 | version = "0.3.16" 1956 | source = "registry+https://github.com/rust-lang/crates.io-index" 1957 | checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d" 1958 | 1959 | [[package]] 1960 | name = "mime_guess" 1961 | version = "2.0.3" 1962 | source = "registry+https://github.com/rust-lang/crates.io-index" 1963 | checksum = "2684d4c2e97d99848d30b324b00c8fcc7e5c897b7cbb5819b09e7c90e8baf212" 1964 | dependencies = [ 1965 | "mime", 1966 | "unicase", 1967 | ] 1968 | 1969 | [[package]] 1970 | name = "miniz_oxide" 1971 | version = "0.4.4" 1972 | source = "registry+https://github.com/rust-lang/crates.io-index" 1973 | checksum = "a92518e98c078586bc6c934028adcca4c92a53d6a958196de835170a01d84e4b" 1974 | dependencies = [ 1975 | "adler", 1976 | "autocfg", 1977 | ] 1978 | 1979 | [[package]] 1980 | name = "mio" 1981 | version = "0.6.23" 1982 | source = "registry+https://github.com/rust-lang/crates.io-index" 1983 | checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4" 1984 | dependencies = [ 1985 | "cfg-if 0.1.10", 1986 | "fuchsia-zircon", 1987 | "fuchsia-zircon-sys", 1988 | "iovec", 1989 | "kernel32-sys", 1990 | "libc", 1991 | "log", 1992 | "miow 0.2.2", 1993 | "net2", 1994 | "slab", 1995 | "winapi 0.2.8", 1996 | ] 1997 | 1998 | [[package]] 1999 | name = "mio" 2000 | version = "0.7.11" 2001 | source = "registry+https://github.com/rust-lang/crates.io-index" 2002 | checksum = "cf80d3e903b34e0bd7282b218398aec54e082c840d9baf8339e0080a0c542956" 2003 | dependencies = [ 2004 | "libc", 2005 | "log", 2006 | "miow 0.3.7", 2007 | "ntapi", 2008 | "winapi 0.3.9", 2009 | ] 2010 | 2011 | [[package]] 2012 | name = "mio-uds" 2013 | version = "0.6.8" 2014 | source = "registry+https://github.com/rust-lang/crates.io-index" 2015 | checksum = "afcb699eb26d4332647cc848492bbc15eafb26f08d0304550d5aa1f612e066f0" 2016 | dependencies = [ 2017 | "iovec", 2018 | "libc", 2019 | "mio 0.6.23", 2020 | ] 2021 | 2022 | [[package]] 2023 | name = "miow" 2024 | version = "0.2.2" 2025 | source = "registry+https://github.com/rust-lang/crates.io-index" 2026 | checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d" 2027 | dependencies = [ 2028 | "kernel32-sys", 2029 | "net2", 2030 | "winapi 0.2.8", 2031 | "ws2_32-sys", 2032 | ] 2033 | 2034 | [[package]] 2035 | name = "miow" 2036 | version = "0.3.7" 2037 | source = "registry+https://github.com/rust-lang/crates.io-index" 2038 | checksum = "b9f1c5b025cda876f66ef43a113f91ebc9f4ccef34843000e0adf6ebbab84e21" 2039 | dependencies = [ 2040 | "winapi 0.3.9", 2041 | ] 2042 | 2043 | [[package]] 2044 | name = "native-tls" 2045 | version = "0.2.7" 2046 | source = "registry+https://github.com/rust-lang/crates.io-index" 2047 | checksum = "b8d96b2e1c8da3957d58100b09f102c6d9cfdfced01b7ec5a8974044bb09dbd4" 2048 | dependencies = [ 2049 | "lazy_static", 2050 | "libc", 2051 | "log", 2052 | "openssl", 2053 | "openssl-probe", 2054 | "openssl-sys", 2055 | "schannel", 2056 | "security-framework", 2057 | "security-framework-sys", 2058 | "tempfile", 2059 | ] 2060 | 2061 | [[package]] 2062 | name = "net2" 2063 | version = "0.2.37" 2064 | source = "registry+https://github.com/rust-lang/crates.io-index" 2065 | checksum = "391630d12b68002ae1e25e8f974306474966550ad82dac6886fb8910c19568ae" 2066 | dependencies = [ 2067 | "cfg-if 0.1.10", 2068 | "libc", 2069 | "winapi 0.3.9", 2070 | ] 2071 | 2072 | [[package]] 2073 | name = "nom" 2074 | version = "5.1.2" 2075 | source = "registry+https://github.com/rust-lang/crates.io-index" 2076 | checksum = "ffb4262d26ed83a1c0a33a38fe2bb15797329c85770da05e6b828ddb782627af" 2077 | dependencies = [ 2078 | "lexical-core", 2079 | "memchr", 2080 | "version_check", 2081 | ] 2082 | 2083 | [[package]] 2084 | name = "nom" 2085 | version = "6.1.2" 2086 | source = "registry+https://github.com/rust-lang/crates.io-index" 2087 | checksum = "e7413f999671bd4745a7b624bd370a569fb6bc574b23c83a3c5ed2e453f3d5e2" 2088 | dependencies = [ 2089 | "bitvec", 2090 | "funty", 2091 | "lexical-core", 2092 | "memchr", 2093 | "version_check", 2094 | ] 2095 | 2096 | [[package]] 2097 | name = "ntapi" 2098 | version = "0.3.6" 2099 | source = "registry+https://github.com/rust-lang/crates.io-index" 2100 | checksum = "3f6bb902e437b6d86e03cce10a7e2af662292c5dfef23b65899ea3ac9354ad44" 2101 | dependencies = [ 2102 | "winapi 0.3.9", 2103 | ] 2104 | 2105 | [[package]] 2106 | name = "num-integer" 2107 | version = "0.1.44" 2108 | source = "registry+https://github.com/rust-lang/crates.io-index" 2109 | checksum = "d2cc698a63b549a70bc047073d2949cce27cd1c7b0a4a862d08a8031bc2801db" 2110 | dependencies = [ 2111 | "autocfg", 2112 | "num-traits 0.2.14", 2113 | ] 2114 | 2115 | [[package]] 2116 | name = "num-traits" 2117 | version = "0.1.43" 2118 | source = "registry+https://github.com/rust-lang/crates.io-index" 2119 | checksum = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31" 2120 | dependencies = [ 2121 | "num-traits 0.2.14", 2122 | ] 2123 | 2124 | [[package]] 2125 | name = "num-traits" 2126 | version = "0.2.14" 2127 | source = "registry+https://github.com/rust-lang/crates.io-index" 2128 | checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290" 2129 | dependencies = [ 2130 | "autocfg", 2131 | ] 2132 | 2133 | [[package]] 2134 | name = "num_cpus" 2135 | version = "1.13.0" 2136 | source = "registry+https://github.com/rust-lang/crates.io-index" 2137 | checksum = "05499f3756671c15885fee9034446956fff3f243d6077b91e5767df161f766b3" 2138 | dependencies = [ 2139 | "hermit-abi", 2140 | "libc", 2141 | ] 2142 | 2143 | [[package]] 2144 | name = "once_cell" 2145 | version = "1.7.2" 2146 | source = "registry+https://github.com/rust-lang/crates.io-index" 2147 | checksum = "af8b08b04175473088b46763e51ee54da5f9a164bc162f615b91bc179dbf15a3" 2148 | 2149 | [[package]] 2150 | name = "opaque-debug" 2151 | version = "0.2.3" 2152 | source = "registry+https://github.com/rust-lang/crates.io-index" 2153 | checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" 2154 | 2155 | [[package]] 2156 | name = "opaque-debug" 2157 | version = "0.3.0" 2158 | source = "registry+https://github.com/rust-lang/crates.io-index" 2159 | checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" 2160 | 2161 | [[package]] 2162 | name = "openssl" 2163 | version = "0.10.33" 2164 | source = "registry+https://github.com/rust-lang/crates.io-index" 2165 | checksum = "a61075b62a23fef5a29815de7536d940aa35ce96d18ce0cc5076272db678a577" 2166 | dependencies = [ 2167 | "bitflags", 2168 | "cfg-if 1.0.0", 2169 | "foreign-types", 2170 | "libc", 2171 | "once_cell", 2172 | "openssl-sys", 2173 | ] 2174 | 2175 | [[package]] 2176 | name = "openssl-probe" 2177 | version = "0.1.2" 2178 | source = "registry+https://github.com/rust-lang/crates.io-index" 2179 | checksum = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" 2180 | 2181 | [[package]] 2182 | name = "openssl-sys" 2183 | version = "0.9.61" 2184 | source = "registry+https://github.com/rust-lang/crates.io-index" 2185 | checksum = "313752393519e876837e09e1fa183ddef0be7735868dced3196f4472d536277f" 2186 | dependencies = [ 2187 | "autocfg", 2188 | "cc", 2189 | "libc", 2190 | "pkg-config", 2191 | "vcpkg", 2192 | ] 2193 | 2194 | [[package]] 2195 | name = "os_str_bytes" 2196 | version = "2.4.0" 2197 | source = "registry+https://github.com/rust-lang/crates.io-index" 2198 | checksum = "afb2e1c3ee07430c2cf76151675e583e0f19985fa6efae47d6848a3e2c824f85" 2199 | 2200 | [[package]] 2201 | name = "parking_lot" 2202 | version = "0.11.1" 2203 | source = "registry+https://github.com/rust-lang/crates.io-index" 2204 | checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb" 2205 | dependencies = [ 2206 | "instant", 2207 | "lock_api", 2208 | "parking_lot_core", 2209 | ] 2210 | 2211 | [[package]] 2212 | name = "parking_lot_core" 2213 | version = "0.8.3" 2214 | source = "registry+https://github.com/rust-lang/crates.io-index" 2215 | checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018" 2216 | dependencies = [ 2217 | "cfg-if 1.0.0", 2218 | "instant", 2219 | "libc", 2220 | "redox_syscall", 2221 | "smallvec", 2222 | "winapi 0.3.9", 2223 | ] 2224 | 2225 | [[package]] 2226 | name = "percent-encoding" 2227 | version = "2.1.0" 2228 | source = "registry+https://github.com/rust-lang/crates.io-index" 2229 | checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" 2230 | 2231 | [[package]] 2232 | name = "pest" 2233 | version = "2.1.3" 2234 | source = "registry+https://github.com/rust-lang/crates.io-index" 2235 | checksum = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53" 2236 | dependencies = [ 2237 | "ucd-trie", 2238 | ] 2239 | 2240 | [[package]] 2241 | name = "pest_derive" 2242 | version = "2.1.0" 2243 | source = "registry+https://github.com/rust-lang/crates.io-index" 2244 | checksum = "833d1ae558dc601e9a60366421196a8d94bc0ac980476d0b67e1d0988d72b2d0" 2245 | dependencies = [ 2246 | "pest", 2247 | "pest_generator", 2248 | ] 2249 | 2250 | [[package]] 2251 | name = "pest_generator" 2252 | version = "2.1.3" 2253 | source = "registry+https://github.com/rust-lang/crates.io-index" 2254 | checksum = "99b8db626e31e5b81787b9783425769681b347011cc59471e33ea46d2ea0cf55" 2255 | dependencies = [ 2256 | "pest", 2257 | "pest_meta", 2258 | "proc-macro2", 2259 | "quote", 2260 | "syn", 2261 | ] 2262 | 2263 | [[package]] 2264 | name = "pest_meta" 2265 | version = "2.1.3" 2266 | source = "registry+https://github.com/rust-lang/crates.io-index" 2267 | checksum = "54be6e404f5317079812fc8f9f5279de376d8856929e21c184ecf6bbd692a11d" 2268 | dependencies = [ 2269 | "maplit", 2270 | "pest", 2271 | "sha-1 0.8.2", 2272 | ] 2273 | 2274 | [[package]] 2275 | name = "pin-project" 2276 | version = "0.4.28" 2277 | source = "registry+https://github.com/rust-lang/crates.io-index" 2278 | checksum = "918192b5c59119d51e0cd221f4d49dde9112824ba717369e903c97d076083d0f" 2279 | dependencies = [ 2280 | "pin-project-internal 0.4.28", 2281 | ] 2282 | 2283 | [[package]] 2284 | name = "pin-project" 2285 | version = "1.0.6" 2286 | source = "registry+https://github.com/rust-lang/crates.io-index" 2287 | checksum = "bc174859768806e91ae575187ada95c91a29e96a98dc5d2cd9a1fed039501ba6" 2288 | dependencies = [ 2289 | "pin-project-internal 1.0.6", 2290 | ] 2291 | 2292 | [[package]] 2293 | name = "pin-project-internal" 2294 | version = "0.4.28" 2295 | source = "registry+https://github.com/rust-lang/crates.io-index" 2296 | checksum = "3be26700300be6d9d23264c73211d8190e755b6b5ca7a1b28230025511b52a5e" 2297 | dependencies = [ 2298 | "proc-macro2", 2299 | "quote", 2300 | "syn", 2301 | ] 2302 | 2303 | [[package]] 2304 | name = "pin-project-internal" 2305 | version = "1.0.6" 2306 | source = "registry+https://github.com/rust-lang/crates.io-index" 2307 | checksum = "a490329918e856ed1b083f244e3bfe2d8c4f336407e4ea9e1a9f479ff09049e5" 2308 | dependencies = [ 2309 | "proc-macro2", 2310 | "quote", 2311 | "syn", 2312 | ] 2313 | 2314 | [[package]] 2315 | name = "pin-project-lite" 2316 | version = "0.1.12" 2317 | source = "registry+https://github.com/rust-lang/crates.io-index" 2318 | checksum = "257b64915a082f7811703966789728173279bdebb956b143dbcd23f6f970a777" 2319 | 2320 | [[package]] 2321 | name = "pin-project-lite" 2322 | version = "0.2.6" 2323 | source = "registry+https://github.com/rust-lang/crates.io-index" 2324 | checksum = "dc0e1f259c92177c30a4c9d177246edd0a3568b25756a977d0632cf8fa37e905" 2325 | 2326 | [[package]] 2327 | name = "pin-utils" 2328 | version = "0.1.0" 2329 | source = "registry+https://github.com/rust-lang/crates.io-index" 2330 | checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" 2331 | 2332 | [[package]] 2333 | name = "pkg-config" 2334 | version = "0.3.19" 2335 | source = "registry+https://github.com/rust-lang/crates.io-index" 2336 | checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c" 2337 | 2338 | [[package]] 2339 | name = "polyval" 2340 | version = "0.4.5" 2341 | source = "registry+https://github.com/rust-lang/crates.io-index" 2342 | checksum = "eebcc4aa140b9abd2bc40d9c3f7ccec842679cd79045ac3a7ac698c1a064b7cd" 2343 | dependencies = [ 2344 | "cpuid-bool 0.2.0", 2345 | "opaque-debug 0.3.0", 2346 | "universal-hash", 2347 | ] 2348 | 2349 | [[package]] 2350 | name = "ppv-lite86" 2351 | version = "0.2.10" 2352 | source = "registry+https://github.com/rust-lang/crates.io-index" 2353 | checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857" 2354 | 2355 | [[package]] 2356 | name = "proc-macro-error" 2357 | version = "1.0.4" 2358 | source = "registry+https://github.com/rust-lang/crates.io-index" 2359 | checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" 2360 | dependencies = [ 2361 | "proc-macro-error-attr", 2362 | "proc-macro2", 2363 | "quote", 2364 | "syn", 2365 | "version_check", 2366 | ] 2367 | 2368 | [[package]] 2369 | name = "proc-macro-error-attr" 2370 | version = "1.0.4" 2371 | source = "registry+https://github.com/rust-lang/crates.io-index" 2372 | checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" 2373 | dependencies = [ 2374 | "proc-macro2", 2375 | "quote", 2376 | "version_check", 2377 | ] 2378 | 2379 | [[package]] 2380 | name = "proc-macro-hack" 2381 | version = "0.5.19" 2382 | source = "registry+https://github.com/rust-lang/crates.io-index" 2383 | checksum = "dbf0c48bc1d91375ae5c3cd81e3722dff1abcf81a30960240640d223f59fe0e5" 2384 | 2385 | [[package]] 2386 | name = "proc-macro-nested" 2387 | version = "0.1.7" 2388 | source = "registry+https://github.com/rust-lang/crates.io-index" 2389 | checksum = "bc881b2c22681370c6a780e47af9840ef841837bc98118431d4e1868bd0c1086" 2390 | 2391 | [[package]] 2392 | name = "proc-macro2" 2393 | version = "1.0.24" 2394 | source = "registry+https://github.com/rust-lang/crates.io-index" 2395 | checksum = "1e0704ee1a7e00d7bb417d0770ea303c1bccbabf0ef1667dae92b5967f5f8a71" 2396 | dependencies = [ 2397 | "unicode-xid", 2398 | ] 2399 | 2400 | [[package]] 2401 | name = "quick-error" 2402 | version = "1.2.3" 2403 | source = "registry+https://github.com/rust-lang/crates.io-index" 2404 | checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0" 2405 | 2406 | [[package]] 2407 | name = "quick-xml" 2408 | version = "0.21.0" 2409 | source = "registry+https://github.com/rust-lang/crates.io-index" 2410 | checksum = "0452695941410a58c8ce4391707ba9bad26a247173bd9886a05a5e8a8babec75" 2411 | dependencies = [ 2412 | "memchr", 2413 | ] 2414 | 2415 | [[package]] 2416 | name = "quote" 2417 | version = "1.0.9" 2418 | source = "registry+https://github.com/rust-lang/crates.io-index" 2419 | checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" 2420 | dependencies = [ 2421 | "proc-macro2", 2422 | ] 2423 | 2424 | [[package]] 2425 | name = "quoted_printable" 2426 | version = "0.4.3" 2427 | source = "registry+https://github.com/rust-lang/crates.io-index" 2428 | checksum = "1238256b09923649ec89b08104c4dfe9f6cb2fea734a5db5384e44916d59e9c5" 2429 | 2430 | [[package]] 2431 | name = "r2d2" 2432 | version = "0.8.9" 2433 | source = "registry+https://github.com/rust-lang/crates.io-index" 2434 | checksum = "545c5bc2b880973c9c10e4067418407a0ccaa3091781d1671d46eb35107cb26f" 2435 | dependencies = [ 2436 | "log", 2437 | "parking_lot", 2438 | "scheduled-thread-pool", 2439 | ] 2440 | 2441 | [[package]] 2442 | name = "radium" 2443 | version = "0.5.3" 2444 | source = "registry+https://github.com/rust-lang/crates.io-index" 2445 | checksum = "941ba9d78d8e2f7ce474c015eea4d9c6d25b6a3327f9832ee29a4de27f91bbb8" 2446 | 2447 | [[package]] 2448 | name = "rand" 2449 | version = "0.7.3" 2450 | source = "registry+https://github.com/rust-lang/crates.io-index" 2451 | checksum = "6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03" 2452 | dependencies = [ 2453 | "getrandom 0.1.16", 2454 | "libc", 2455 | "rand_chacha 0.2.2", 2456 | "rand_core 0.5.1", 2457 | "rand_hc 0.2.0", 2458 | ] 2459 | 2460 | [[package]] 2461 | name = "rand" 2462 | version = "0.8.3" 2463 | source = "registry+https://github.com/rust-lang/crates.io-index" 2464 | checksum = "0ef9e7e66b4468674bfcb0c81af8b7fa0bb154fa9f28eb840da5c447baeb8d7e" 2465 | dependencies = [ 2466 | "libc", 2467 | "rand_chacha 0.3.0", 2468 | "rand_core 0.6.2", 2469 | "rand_hc 0.3.0", 2470 | ] 2471 | 2472 | [[package]] 2473 | name = "rand_chacha" 2474 | version = "0.2.2" 2475 | source = "registry+https://github.com/rust-lang/crates.io-index" 2476 | checksum = "f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402" 2477 | dependencies = [ 2478 | "ppv-lite86", 2479 | "rand_core 0.5.1", 2480 | ] 2481 | 2482 | [[package]] 2483 | name = "rand_chacha" 2484 | version = "0.3.0" 2485 | source = "registry+https://github.com/rust-lang/crates.io-index" 2486 | checksum = "e12735cf05c9e10bf21534da50a147b924d555dc7a547c42e6bb2d5b6017ae0d" 2487 | dependencies = [ 2488 | "ppv-lite86", 2489 | "rand_core 0.6.2", 2490 | ] 2491 | 2492 | [[package]] 2493 | name = "rand_core" 2494 | version = "0.5.1" 2495 | source = "registry+https://github.com/rust-lang/crates.io-index" 2496 | checksum = "90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19" 2497 | dependencies = [ 2498 | "getrandom 0.1.16", 2499 | ] 2500 | 2501 | [[package]] 2502 | name = "rand_core" 2503 | version = "0.6.2" 2504 | source = "registry+https://github.com/rust-lang/crates.io-index" 2505 | checksum = "34cf66eb183df1c5876e2dcf6b13d57340741e8dc255b48e40a26de954d06ae7" 2506 | dependencies = [ 2507 | "getrandom 0.2.2", 2508 | ] 2509 | 2510 | [[package]] 2511 | name = "rand_hc" 2512 | version = "0.2.0" 2513 | source = "registry+https://github.com/rust-lang/crates.io-index" 2514 | checksum = "ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c" 2515 | dependencies = [ 2516 | "rand_core 0.5.1", 2517 | ] 2518 | 2519 | [[package]] 2520 | name = "rand_hc" 2521 | version = "0.3.0" 2522 | source = "registry+https://github.com/rust-lang/crates.io-index" 2523 | checksum = "3190ef7066a446f2e7f42e239d161e905420ccab01eb967c9eb27d21b2322a73" 2524 | dependencies = [ 2525 | "rand_core 0.6.2", 2526 | ] 2527 | 2528 | [[package]] 2529 | name = "redox_syscall" 2530 | version = "0.2.5" 2531 | source = "registry+https://github.com/rust-lang/crates.io-index" 2532 | checksum = "94341e4e44e24f6b591b59e47a8a027df12e008d73fd5672dbea9cc22f4507d9" 2533 | dependencies = [ 2534 | "bitflags", 2535 | ] 2536 | 2537 | [[package]] 2538 | name = "regex" 2539 | version = "1.4.5" 2540 | source = "registry+https://github.com/rust-lang/crates.io-index" 2541 | checksum = "957056ecddbeba1b26965114e191d2e8589ce74db242b6ea25fc4062427a5c19" 2542 | dependencies = [ 2543 | "aho-corasick", 2544 | "memchr", 2545 | "regex-syntax", 2546 | ] 2547 | 2548 | [[package]] 2549 | name = "regex-syntax" 2550 | version = "0.6.23" 2551 | source = "registry+https://github.com/rust-lang/crates.io-index" 2552 | checksum = "24d5f089152e60f62d28b835fbff2cd2e8dc0baf1ac13343bef92ab7eed84548" 2553 | 2554 | [[package]] 2555 | name = "remove_dir_all" 2556 | version = "0.5.3" 2557 | source = "registry+https://github.com/rust-lang/crates.io-index" 2558 | checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" 2559 | dependencies = [ 2560 | "winapi 0.3.9", 2561 | ] 2562 | 2563 | [[package]] 2564 | name = "resolv-conf" 2565 | version = "0.7.0" 2566 | source = "registry+https://github.com/rust-lang/crates.io-index" 2567 | checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" 2568 | dependencies = [ 2569 | "hostname", 2570 | "quick-error", 2571 | ] 2572 | 2573 | [[package]] 2574 | name = "ring" 2575 | version = "0.16.20" 2576 | source = "registry+https://github.com/rust-lang/crates.io-index" 2577 | checksum = "3053cf52e236a3ed746dfc745aa9cacf1b791d846bdaf412f60a8d7d6e17c8fc" 2578 | dependencies = [ 2579 | "cc", 2580 | "libc", 2581 | "once_cell", 2582 | "spin", 2583 | "untrusted", 2584 | "web-sys", 2585 | "winapi 0.3.9", 2586 | ] 2587 | 2588 | [[package]] 2589 | name = "rust-argon2" 2590 | version = "0.8.3" 2591 | source = "registry+https://github.com/rust-lang/crates.io-index" 2592 | checksum = "4b18820d944b33caa75a71378964ac46f58517c92b6ae5f762636247c09e78fb" 2593 | dependencies = [ 2594 | "base64", 2595 | "blake2b_simd", 2596 | "constant_time_eq", 2597 | "crossbeam-utils", 2598 | ] 2599 | 2600 | [[package]] 2601 | name = "rust-ini" 2602 | version = "0.13.0" 2603 | source = "registry+https://github.com/rust-lang/crates.io-index" 2604 | checksum = "3e52c148ef37f8c375d49d5a73aa70713125b7f19095948a923f80afdeb22ec2" 2605 | 2606 | [[package]] 2607 | name = "rustack" 2608 | version = "1.0.0" 2609 | dependencies = [ 2610 | "actix", 2611 | "actix-files", 2612 | "actix-service 2.0.0-beta.5", 2613 | "actix-session", 2614 | "actix-web 4.0.0-beta.4", 2615 | "askama", 2616 | "cached", 2617 | "chrono", 2618 | "clap 3.0.0-beta.2", 2619 | "colored", 2620 | "comrak", 2621 | "config", 2622 | "derive_more", 2623 | "dotenv", 2624 | "env_logger", 2625 | "futures", 2626 | "lettre", 2627 | "rand 0.8.3", 2628 | "regex", 2629 | "rust-argon2", 2630 | "serde 1.0.125", 2631 | "serde_json", 2632 | "sitewriter", 2633 | "sqlx", 2634 | "thiserror", 2635 | "tracing", 2636 | "url", 2637 | "validator", 2638 | ] 2639 | 2640 | [[package]] 2641 | name = "rustc_version" 2642 | version = "0.2.3" 2643 | source = "registry+https://github.com/rust-lang/crates.io-index" 2644 | checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" 2645 | dependencies = [ 2646 | "semver", 2647 | ] 2648 | 2649 | [[package]] 2650 | name = "rustls" 2651 | version = "0.19.0" 2652 | source = "registry+https://github.com/rust-lang/crates.io-index" 2653 | checksum = "064fd21ff87c6e87ed4506e68beb42459caa4a0e2eb144932e6776768556980b" 2654 | dependencies = [ 2655 | "base64", 2656 | "log", 2657 | "ring", 2658 | "sct", 2659 | "webpki", 2660 | ] 2661 | 2662 | [[package]] 2663 | name = "ryu" 2664 | version = "1.0.5" 2665 | source = "registry+https://github.com/rust-lang/crates.io-index" 2666 | checksum = "71d301d4193d031abdd79ff7e3dd721168a9572ef3fe51a1517aba235bd8f86e" 2667 | 2668 | [[package]] 2669 | name = "schannel" 2670 | version = "0.1.19" 2671 | source = "registry+https://github.com/rust-lang/crates.io-index" 2672 | checksum = "8f05ba609c234e60bee0d547fe94a4c7e9da733d1c962cf6e59efa4cd9c8bc75" 2673 | dependencies = [ 2674 | "lazy_static", 2675 | "winapi 0.3.9", 2676 | ] 2677 | 2678 | [[package]] 2679 | name = "scheduled-thread-pool" 2680 | version = "0.2.5" 2681 | source = "registry+https://github.com/rust-lang/crates.io-index" 2682 | checksum = "dc6f74fd1204073fa02d5d5d68bec8021be4c38690b61264b2fdb48083d0e7d7" 2683 | dependencies = [ 2684 | "parking_lot", 2685 | ] 2686 | 2687 | [[package]] 2688 | name = "scopeguard" 2689 | version = "1.1.0" 2690 | source = "registry+https://github.com/rust-lang/crates.io-index" 2691 | checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" 2692 | 2693 | [[package]] 2694 | name = "sct" 2695 | version = "0.6.0" 2696 | source = "registry+https://github.com/rust-lang/crates.io-index" 2697 | checksum = "e3042af939fca8c3453b7af0f1c66e533a15a86169e39de2657310ade8f98d3c" 2698 | dependencies = [ 2699 | "ring", 2700 | "untrusted", 2701 | ] 2702 | 2703 | [[package]] 2704 | name = "security-framework" 2705 | version = "2.2.0" 2706 | source = "registry+https://github.com/rust-lang/crates.io-index" 2707 | checksum = "3670b1d2fdf6084d192bc71ead7aabe6c06aa2ea3fbd9cc3ac111fa5c2b1bd84" 2708 | dependencies = [ 2709 | "bitflags", 2710 | "core-foundation", 2711 | "core-foundation-sys", 2712 | "libc", 2713 | "security-framework-sys", 2714 | ] 2715 | 2716 | [[package]] 2717 | name = "security-framework-sys" 2718 | version = "2.2.0" 2719 | source = "registry+https://github.com/rust-lang/crates.io-index" 2720 | checksum = "3676258fd3cfe2c9a0ec99ce3038798d847ce3e4bb17746373eb9f0f1ac16339" 2721 | dependencies = [ 2722 | "core-foundation-sys", 2723 | "libc", 2724 | ] 2725 | 2726 | [[package]] 2727 | name = "semver" 2728 | version = "0.9.0" 2729 | source = "registry+https://github.com/rust-lang/crates.io-index" 2730 | checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" 2731 | dependencies = [ 2732 | "semver-parser", 2733 | ] 2734 | 2735 | [[package]] 2736 | name = "semver-parser" 2737 | version = "0.7.0" 2738 | source = "registry+https://github.com/rust-lang/crates.io-index" 2739 | checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" 2740 | 2741 | [[package]] 2742 | name = "serde" 2743 | version = "0.8.23" 2744 | source = "registry+https://github.com/rust-lang/crates.io-index" 2745 | checksum = "9dad3f759919b92c3068c696c15c3d17238234498bbdcc80f2c469606f948ac8" 2746 | 2747 | [[package]] 2748 | name = "serde" 2749 | version = "1.0.125" 2750 | source = "registry+https://github.com/rust-lang/crates.io-index" 2751 | checksum = "558dc50e1a5a5fa7112ca2ce4effcb321b0300c0d4ccf0776a9f60cd89031171" 2752 | dependencies = [ 2753 | "serde_derive", 2754 | ] 2755 | 2756 | [[package]] 2757 | name = "serde-hjson" 2758 | version = "0.9.1" 2759 | source = "registry+https://github.com/rust-lang/crates.io-index" 2760 | checksum = "6a3a4e0ea8a88553209f6cc6cfe8724ecad22e1acf372793c27d995290fe74f8" 2761 | dependencies = [ 2762 | "lazy_static", 2763 | "num-traits 0.1.43", 2764 | "regex", 2765 | "serde 0.8.23", 2766 | ] 2767 | 2768 | [[package]] 2769 | name = "serde_derive" 2770 | version = "1.0.125" 2771 | source = "registry+https://github.com/rust-lang/crates.io-index" 2772 | checksum = "b093b7a2bb58203b5da3056c05b4ec1fed827dcfdb37347a8841695263b3d06d" 2773 | dependencies = [ 2774 | "proc-macro2", 2775 | "quote", 2776 | "syn", 2777 | ] 2778 | 2779 | [[package]] 2780 | name = "serde_json" 2781 | version = "1.0.64" 2782 | source = "registry+https://github.com/rust-lang/crates.io-index" 2783 | checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79" 2784 | dependencies = [ 2785 | "itoa", 2786 | "ryu", 2787 | "serde 1.0.125", 2788 | ] 2789 | 2790 | [[package]] 2791 | name = "serde_urlencoded" 2792 | version = "0.7.0" 2793 | source = "registry+https://github.com/rust-lang/crates.io-index" 2794 | checksum = "edfa57a7f8d9c1d260a549e7224100f6c43d43f9103e06dd8b4095a9b2b43ce9" 2795 | dependencies = [ 2796 | "form_urlencoded", 2797 | "itoa", 2798 | "ryu", 2799 | "serde 1.0.125", 2800 | ] 2801 | 2802 | [[package]] 2803 | name = "sha-1" 2804 | version = "0.8.2" 2805 | source = "registry+https://github.com/rust-lang/crates.io-index" 2806 | checksum = "f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df" 2807 | dependencies = [ 2808 | "block-buffer 0.7.3", 2809 | "digest 0.8.1", 2810 | "fake-simd", 2811 | "opaque-debug 0.2.3", 2812 | ] 2813 | 2814 | [[package]] 2815 | name = "sha-1" 2816 | version = "0.9.4" 2817 | source = "registry+https://github.com/rust-lang/crates.io-index" 2818 | checksum = "dfebf75d25bd900fd1e7d11501efab59bc846dbc76196839663e6637bba9f25f" 2819 | dependencies = [ 2820 | "block-buffer 0.9.0", 2821 | "cfg-if 1.0.0", 2822 | "cpuid-bool 0.1.2", 2823 | "digest 0.9.0", 2824 | "opaque-debug 0.3.0", 2825 | ] 2826 | 2827 | [[package]] 2828 | name = "sha1" 2829 | version = "0.6.0" 2830 | source = "registry+https://github.com/rust-lang/crates.io-index" 2831 | checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" 2832 | 2833 | [[package]] 2834 | name = "sha2" 2835 | version = "0.9.3" 2836 | source = "registry+https://github.com/rust-lang/crates.io-index" 2837 | checksum = "fa827a14b29ab7f44778d14a88d3cb76e949c45083f7dbfa507d0cb699dc12de" 2838 | dependencies = [ 2839 | "block-buffer 0.9.0", 2840 | "cfg-if 1.0.0", 2841 | "cpuid-bool 0.1.2", 2842 | "digest 0.9.0", 2843 | "opaque-debug 0.3.0", 2844 | ] 2845 | 2846 | [[package]] 2847 | name = "shell-words" 2848 | version = "1.0.0" 2849 | source = "registry+https://github.com/rust-lang/crates.io-index" 2850 | checksum = "b6fa3938c99da4914afedd13bf3d79bcb6c277d1b2c398d23257a304d9e1b074" 2851 | 2852 | [[package]] 2853 | name = "signal-hook-registry" 2854 | version = "1.3.0" 2855 | source = "registry+https://github.com/rust-lang/crates.io-index" 2856 | checksum = "16f1d0fef1604ba8f7a073c7e701f213e056707210e9020af4528e0101ce11a6" 2857 | dependencies = [ 2858 | "libc", 2859 | ] 2860 | 2861 | [[package]] 2862 | name = "sitewriter" 2863 | version = "0.3.2" 2864 | source = "registry+https://github.com/rust-lang/crates.io-index" 2865 | checksum = "b81f1f2aed5af7b8ac60241553c67e16f749c7f1e664711937ee727209ac1423" 2866 | dependencies = [ 2867 | "chrono", 2868 | "quick-xml", 2869 | ] 2870 | 2871 | [[package]] 2872 | name = "slab" 2873 | version = "0.4.2" 2874 | source = "registry+https://github.com/rust-lang/crates.io-index" 2875 | checksum = "c111b5bd5695e56cffe5129854aa230b39c93a305372fdbb2668ca2394eea9f8" 2876 | 2877 | [[package]] 2878 | name = "smallvec" 2879 | version = "1.6.1" 2880 | source = "registry+https://github.com/rust-lang/crates.io-index" 2881 | checksum = "fe0f37c9e8f3c5a4a66ad655a93c74daac4ad00c441533bf5c6e7990bb42604e" 2882 | 2883 | [[package]] 2884 | name = "socket2" 2885 | version = "0.3.19" 2886 | source = "registry+https://github.com/rust-lang/crates.io-index" 2887 | checksum = "122e570113d28d773067fab24266b66753f6ea915758651696b6e35e49f88d6e" 2888 | dependencies = [ 2889 | "cfg-if 1.0.0", 2890 | "libc", 2891 | "winapi 0.3.9", 2892 | ] 2893 | 2894 | [[package]] 2895 | name = "spin" 2896 | version = "0.5.2" 2897 | source = "registry+https://github.com/rust-lang/crates.io-index" 2898 | checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" 2899 | 2900 | [[package]] 2901 | name = "sqlformat" 2902 | version = "0.1.6" 2903 | source = "registry+https://github.com/rust-lang/crates.io-index" 2904 | checksum = "6d86e3c77ff882a828346ba401a7ef4b8e440df804491c6064fe8295765de71c" 2905 | dependencies = [ 2906 | "lazy_static", 2907 | "maplit", 2908 | "nom 6.1.2", 2909 | "regex", 2910 | "unicode_categories", 2911 | ] 2912 | 2913 | [[package]] 2914 | name = "sqlx" 2915 | version = "0.5.1" 2916 | source = "registry+https://github.com/rust-lang/crates.io-index" 2917 | checksum = "c2739d54a2ae9fdd0f545cb4e4b5574efb95e2ec71b7f921678e246fb20dcaaf" 2918 | dependencies = [ 2919 | "sqlx-core", 2920 | "sqlx-macros", 2921 | ] 2922 | 2923 | [[package]] 2924 | name = "sqlx-core" 2925 | version = "0.5.1" 2926 | source = "registry+https://github.com/rust-lang/crates.io-index" 2927 | checksum = "b1cad9cae4ca8947eba1a90e8ec7d3c59e7a768e2f120dc9013b669c34a90711" 2928 | dependencies = [ 2929 | "ahash 0.6.3", 2930 | "atoi", 2931 | "base64", 2932 | "bitflags", 2933 | "byteorder", 2934 | "bytes 1.0.1", 2935 | "chrono", 2936 | "crc", 2937 | "crossbeam-channel", 2938 | "crossbeam-queue", 2939 | "crossbeam-utils", 2940 | "either", 2941 | "futures-channel", 2942 | "futures-core", 2943 | "futures-util", 2944 | "hashlink", 2945 | "hex", 2946 | "hmac", 2947 | "itoa", 2948 | "libc", 2949 | "log", 2950 | "md-5", 2951 | "memchr", 2952 | "once_cell", 2953 | "parking_lot", 2954 | "percent-encoding", 2955 | "rand 0.7.3", 2956 | "rustls", 2957 | "serde 1.0.125", 2958 | "serde_json", 2959 | "sha-1 0.9.4", 2960 | "sha2", 2961 | "smallvec", 2962 | "sqlformat", 2963 | "sqlx-rt", 2964 | "stringprep", 2965 | "thiserror", 2966 | "tokio-stream", 2967 | "url", 2968 | "uuid", 2969 | "webpki", 2970 | "webpki-roots", 2971 | "whoami", 2972 | ] 2973 | 2974 | [[package]] 2975 | name = "sqlx-macros" 2976 | version = "0.5.1" 2977 | source = "registry+https://github.com/rust-lang/crates.io-index" 2978 | checksum = "01caee2b3935b4efe152f3262afbe51546ce3b1fc27ad61014e1b3cf5f55366e" 2979 | dependencies = [ 2980 | "dotenv", 2981 | "either", 2982 | "futures", 2983 | "heck", 2984 | "proc-macro2", 2985 | "quote", 2986 | "sha2", 2987 | "sqlx-core", 2988 | "sqlx-rt", 2989 | "syn", 2990 | "url", 2991 | ] 2992 | 2993 | [[package]] 2994 | name = "sqlx-rt" 2995 | version = "0.3.0" 2996 | source = "registry+https://github.com/rust-lang/crates.io-index" 2997 | checksum = "4ce2e16b6774c671cc183e1d202386fdf9cde1e8468c1894a7f2a63eb671c4f4" 2998 | dependencies = [ 2999 | "actix-rt 2.2.0", 3000 | "once_cell", 3001 | "tokio 1.4.0", 3002 | "tokio-rustls", 3003 | ] 3004 | 3005 | [[package]] 3006 | name = "standback" 3007 | version = "0.2.17" 3008 | source = "registry+https://github.com/rust-lang/crates.io-index" 3009 | checksum = "e113fb6f3de07a243d434a56ec6f186dfd51cb08448239fe7bcae73f87ff28ff" 3010 | dependencies = [ 3011 | "version_check", 3012 | ] 3013 | 3014 | [[package]] 3015 | name = "static_assertions" 3016 | version = "1.1.0" 3017 | source = "registry+https://github.com/rust-lang/crates.io-index" 3018 | checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" 3019 | 3020 | [[package]] 3021 | name = "stdweb" 3022 | version = "0.4.20" 3023 | source = "registry+https://github.com/rust-lang/crates.io-index" 3024 | checksum = "d022496b16281348b52d0e30ae99e01a73d737b2f45d38fed4edf79f9325a1d5" 3025 | dependencies = [ 3026 | "discard", 3027 | "rustc_version", 3028 | "stdweb-derive", 3029 | "stdweb-internal-macros", 3030 | "stdweb-internal-runtime", 3031 | "wasm-bindgen", 3032 | ] 3033 | 3034 | [[package]] 3035 | name = "stdweb-derive" 3036 | version = "0.5.3" 3037 | source = "registry+https://github.com/rust-lang/crates.io-index" 3038 | checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef" 3039 | dependencies = [ 3040 | "proc-macro2", 3041 | "quote", 3042 | "serde 1.0.125", 3043 | "serde_derive", 3044 | "syn", 3045 | ] 3046 | 3047 | [[package]] 3048 | name = "stdweb-internal-macros" 3049 | version = "0.2.9" 3050 | source = "registry+https://github.com/rust-lang/crates.io-index" 3051 | checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11" 3052 | dependencies = [ 3053 | "base-x", 3054 | "proc-macro2", 3055 | "quote", 3056 | "serde 1.0.125", 3057 | "serde_derive", 3058 | "serde_json", 3059 | "sha1", 3060 | "syn", 3061 | ] 3062 | 3063 | [[package]] 3064 | name = "stdweb-internal-runtime" 3065 | version = "0.1.5" 3066 | source = "registry+https://github.com/rust-lang/crates.io-index" 3067 | checksum = "213701ba3370744dcd1a12960caa4843b3d68b4d1c0a5d575e0d65b2ee9d16c0" 3068 | 3069 | [[package]] 3070 | name = "stringprep" 3071 | version = "0.1.2" 3072 | source = "registry+https://github.com/rust-lang/crates.io-index" 3073 | checksum = "8ee348cb74b87454fff4b551cbf727025810a004f88aeacae7f85b87f4e9a1c1" 3074 | dependencies = [ 3075 | "unicode-bidi", 3076 | "unicode-normalization", 3077 | ] 3078 | 3079 | [[package]] 3080 | name = "strsim" 3081 | version = "0.8.0" 3082 | source = "registry+https://github.com/rust-lang/crates.io-index" 3083 | checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" 3084 | 3085 | [[package]] 3086 | name = "strsim" 3087 | version = "0.9.3" 3088 | source = "registry+https://github.com/rust-lang/crates.io-index" 3089 | checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" 3090 | 3091 | [[package]] 3092 | name = "strsim" 3093 | version = "0.10.0" 3094 | source = "registry+https://github.com/rust-lang/crates.io-index" 3095 | checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" 3096 | 3097 | [[package]] 3098 | name = "subtle" 3099 | version = "2.4.0" 3100 | source = "registry+https://github.com/rust-lang/crates.io-index" 3101 | checksum = "1e81da0851ada1f3e9d4312c704aa4f8806f0f9d69faaf8df2f3464b4a9437c2" 3102 | 3103 | [[package]] 3104 | name = "syn" 3105 | version = "1.0.67" 3106 | source = "registry+https://github.com/rust-lang/crates.io-index" 3107 | checksum = "6498a9efc342871f91cc2d0d694c674368b4ceb40f62b65a7a08c3792935e702" 3108 | dependencies = [ 3109 | "proc-macro2", 3110 | "quote", 3111 | "unicode-xid", 3112 | ] 3113 | 3114 | [[package]] 3115 | name = "tap" 3116 | version = "1.0.1" 3117 | source = "registry+https://github.com/rust-lang/crates.io-index" 3118 | checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" 3119 | 3120 | [[package]] 3121 | name = "tempfile" 3122 | version = "3.2.0" 3123 | source = "registry+https://github.com/rust-lang/crates.io-index" 3124 | checksum = "dac1c663cfc93810f88aed9b8941d48cabf856a1b111c29a40439018d870eb22" 3125 | dependencies = [ 3126 | "cfg-if 1.0.0", 3127 | "libc", 3128 | "rand 0.8.3", 3129 | "redox_syscall", 3130 | "remove_dir_all", 3131 | "winapi 0.3.9", 3132 | ] 3133 | 3134 | [[package]] 3135 | name = "termcolor" 3136 | version = "1.1.2" 3137 | source = "registry+https://github.com/rust-lang/crates.io-index" 3138 | checksum = "2dfed899f0eb03f32ee8c6a0aabdb8a7949659e3466561fc0adf54e26d88c5f4" 3139 | dependencies = [ 3140 | "winapi-util", 3141 | ] 3142 | 3143 | [[package]] 3144 | name = "textwrap" 3145 | version = "0.11.0" 3146 | source = "registry+https://github.com/rust-lang/crates.io-index" 3147 | checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" 3148 | dependencies = [ 3149 | "unicode-width", 3150 | ] 3151 | 3152 | [[package]] 3153 | name = "textwrap" 3154 | version = "0.12.1" 3155 | source = "registry+https://github.com/rust-lang/crates.io-index" 3156 | checksum = "203008d98caf094106cfaba70acfed15e18ed3ddb7d94e49baec153a2b462789" 3157 | dependencies = [ 3158 | "unicode-width", 3159 | ] 3160 | 3161 | [[package]] 3162 | name = "thiserror" 3163 | version = "1.0.24" 3164 | source = "registry+https://github.com/rust-lang/crates.io-index" 3165 | checksum = "e0f4a65597094d4483ddaed134f409b2cb7c1beccf25201a9f73c719254fa98e" 3166 | dependencies = [ 3167 | "thiserror-impl", 3168 | ] 3169 | 3170 | [[package]] 3171 | name = "thiserror-impl" 3172 | version = "1.0.24" 3173 | source = "registry+https://github.com/rust-lang/crates.io-index" 3174 | checksum = "7765189610d8241a44529806d6fd1f2e0a08734313a35d5b3a556f92b381f3c0" 3175 | dependencies = [ 3176 | "proc-macro2", 3177 | "quote", 3178 | "syn", 3179 | ] 3180 | 3181 | [[package]] 3182 | name = "threadpool" 3183 | version = "1.8.1" 3184 | source = "registry+https://github.com/rust-lang/crates.io-index" 3185 | checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" 3186 | dependencies = [ 3187 | "num_cpus", 3188 | ] 3189 | 3190 | [[package]] 3191 | name = "time" 3192 | version = "0.1.44" 3193 | source = "registry+https://github.com/rust-lang/crates.io-index" 3194 | checksum = "6db9e6914ab8b1ae1c260a4ae7a49b6c5611b40328a735b21862567685e73255" 3195 | dependencies = [ 3196 | "libc", 3197 | "wasi 0.10.0+wasi-snapshot-preview1", 3198 | "winapi 0.3.9", 3199 | ] 3200 | 3201 | [[package]] 3202 | name = "time" 3203 | version = "0.2.26" 3204 | source = "registry+https://github.com/rust-lang/crates.io-index" 3205 | checksum = "08a8cbfbf47955132d0202d1662f49b2423ae35862aee471f3ba4b133358f372" 3206 | dependencies = [ 3207 | "const_fn", 3208 | "libc", 3209 | "standback", 3210 | "stdweb", 3211 | "time-macros", 3212 | "version_check", 3213 | "winapi 0.3.9", 3214 | ] 3215 | 3216 | [[package]] 3217 | name = "time-macros" 3218 | version = "0.1.1" 3219 | source = "registry+https://github.com/rust-lang/crates.io-index" 3220 | checksum = "957e9c6e26f12cb6d0dd7fc776bb67a706312e7299aed74c8dd5b17ebb27e2f1" 3221 | dependencies = [ 3222 | "proc-macro-hack", 3223 | "time-macros-impl", 3224 | ] 3225 | 3226 | [[package]] 3227 | name = "time-macros-impl" 3228 | version = "0.1.1" 3229 | source = "registry+https://github.com/rust-lang/crates.io-index" 3230 | checksum = "e5c3be1edfad6027c69f5491cf4cb310d1a71ecd6af742788c6ff8bced86b8fa" 3231 | dependencies = [ 3232 | "proc-macro-hack", 3233 | "proc-macro2", 3234 | "quote", 3235 | "standback", 3236 | "syn", 3237 | ] 3238 | 3239 | [[package]] 3240 | name = "tinyvec" 3241 | version = "1.1.1" 3242 | source = "registry+https://github.com/rust-lang/crates.io-index" 3243 | checksum = "317cca572a0e89c3ce0ca1f1bdc9369547fe318a683418e42ac8f59d14701023" 3244 | dependencies = [ 3245 | "tinyvec_macros", 3246 | ] 3247 | 3248 | [[package]] 3249 | name = "tinyvec_macros" 3250 | version = "0.1.0" 3251 | source = "registry+https://github.com/rust-lang/crates.io-index" 3252 | checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c" 3253 | 3254 | [[package]] 3255 | name = "tokio" 3256 | version = "0.2.25" 3257 | source = "registry+https://github.com/rust-lang/crates.io-index" 3258 | checksum = "6703a273949a90131b290be1fe7b039d0fc884aa1935860dfcbe056f28cd8092" 3259 | dependencies = [ 3260 | "bytes 0.5.6", 3261 | "futures-core", 3262 | "iovec", 3263 | "lazy_static", 3264 | "libc", 3265 | "memchr", 3266 | "mio 0.6.23", 3267 | "mio-uds", 3268 | "pin-project-lite 0.1.12", 3269 | "signal-hook-registry", 3270 | "slab", 3271 | "winapi 0.3.9", 3272 | ] 3273 | 3274 | [[package]] 3275 | name = "tokio" 3276 | version = "1.4.0" 3277 | source = "registry+https://github.com/rust-lang/crates.io-index" 3278 | checksum = "134af885d758d645f0f0505c9a8b3f9bf8a348fd822e112ab5248138348f1722" 3279 | dependencies = [ 3280 | "autocfg", 3281 | "bytes 1.0.1", 3282 | "libc", 3283 | "memchr", 3284 | "mio 0.7.11", 3285 | "num_cpus", 3286 | "once_cell", 3287 | "parking_lot", 3288 | "pin-project-lite 0.2.6", 3289 | "signal-hook-registry", 3290 | "winapi 0.3.9", 3291 | ] 3292 | 3293 | [[package]] 3294 | name = "tokio-rustls" 3295 | version = "0.22.0" 3296 | source = "registry+https://github.com/rust-lang/crates.io-index" 3297 | checksum = "bc6844de72e57df1980054b38be3a9f4702aba4858be64dd700181a8a6d0e1b6" 3298 | dependencies = [ 3299 | "rustls", 3300 | "tokio 1.4.0", 3301 | "webpki", 3302 | ] 3303 | 3304 | [[package]] 3305 | name = "tokio-stream" 3306 | version = "0.1.5" 3307 | source = "registry+https://github.com/rust-lang/crates.io-index" 3308 | checksum = "e177a5d8c3bf36de9ebe6d58537d8879e964332f93fb3339e43f618c81361af0" 3309 | dependencies = [ 3310 | "futures-core", 3311 | "pin-project-lite 0.2.6", 3312 | "tokio 1.4.0", 3313 | ] 3314 | 3315 | [[package]] 3316 | name = "tokio-util" 3317 | version = "0.3.1" 3318 | source = "registry+https://github.com/rust-lang/crates.io-index" 3319 | checksum = "be8242891f2b6cbef26a2d7e8605133c2c554cd35b3e4948ea892d6d68436499" 3320 | dependencies = [ 3321 | "bytes 0.5.6", 3322 | "futures-core", 3323 | "futures-sink", 3324 | "log", 3325 | "pin-project-lite 0.1.12", 3326 | "tokio 0.2.25", 3327 | ] 3328 | 3329 | [[package]] 3330 | name = "tokio-util" 3331 | version = "0.6.5" 3332 | source = "registry+https://github.com/rust-lang/crates.io-index" 3333 | checksum = "5143d049e85af7fbc36f5454d990e62c2df705b3589f123b71f441b6b59f443f" 3334 | dependencies = [ 3335 | "bytes 1.0.1", 3336 | "futures-core", 3337 | "futures-sink", 3338 | "log", 3339 | "pin-project-lite 0.2.6", 3340 | "tokio 1.4.0", 3341 | ] 3342 | 3343 | [[package]] 3344 | name = "toml" 3345 | version = "0.5.8" 3346 | source = "registry+https://github.com/rust-lang/crates.io-index" 3347 | checksum = "a31142970826733df8241ef35dc040ef98c679ab14d7c3e54d827099b3acecaa" 3348 | dependencies = [ 3349 | "serde 1.0.125", 3350 | ] 3351 | 3352 | [[package]] 3353 | name = "tracing" 3354 | version = "0.1.25" 3355 | source = "registry+https://github.com/rust-lang/crates.io-index" 3356 | checksum = "01ebdc2bb4498ab1ab5f5b73c5803825e60199229ccba0698170e3be0e7f959f" 3357 | dependencies = [ 3358 | "cfg-if 1.0.0", 3359 | "log", 3360 | "pin-project-lite 0.2.6", 3361 | "tracing-attributes", 3362 | "tracing-core", 3363 | ] 3364 | 3365 | [[package]] 3366 | name = "tracing-attributes" 3367 | version = "0.1.15" 3368 | source = "registry+https://github.com/rust-lang/crates.io-index" 3369 | checksum = "c42e6fa53307c8a17e4ccd4dc81cf5ec38db9209f59b222210375b54ee40d1e2" 3370 | dependencies = [ 3371 | "proc-macro2", 3372 | "quote", 3373 | "syn", 3374 | ] 3375 | 3376 | [[package]] 3377 | name = "tracing-core" 3378 | version = "0.1.17" 3379 | source = "registry+https://github.com/rust-lang/crates.io-index" 3380 | checksum = "f50de3927f93d202783f4513cda820ab47ef17f624b03c096e86ef00c67e6b5f" 3381 | dependencies = [ 3382 | "lazy_static", 3383 | ] 3384 | 3385 | [[package]] 3386 | name = "tracing-futures" 3387 | version = "0.2.5" 3388 | source = "registry+https://github.com/rust-lang/crates.io-index" 3389 | checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" 3390 | dependencies = [ 3391 | "pin-project 1.0.6", 3392 | "tracing", 3393 | ] 3394 | 3395 | [[package]] 3396 | name = "trust-dns-proto" 3397 | version = "0.19.7" 3398 | source = "registry+https://github.com/rust-lang/crates.io-index" 3399 | checksum = "1cad71a0c0d68ab9941d2fb6e82f8fb2e86d9945b94e1661dd0aaea2b88215a9" 3400 | dependencies = [ 3401 | "async-trait", 3402 | "cfg-if 1.0.0", 3403 | "enum-as-inner", 3404 | "futures", 3405 | "idna", 3406 | "lazy_static", 3407 | "log", 3408 | "rand 0.7.3", 3409 | "smallvec", 3410 | "thiserror", 3411 | "tokio 0.2.25", 3412 | "url", 3413 | ] 3414 | 3415 | [[package]] 3416 | name = "trust-dns-resolver" 3417 | version = "0.19.7" 3418 | source = "registry+https://github.com/rust-lang/crates.io-index" 3419 | checksum = "710f593b371175db53a26d0b38ed2978fafb9e9e8d3868b1acd753ea18df0ceb" 3420 | dependencies = [ 3421 | "cfg-if 0.1.10", 3422 | "futures", 3423 | "ipconfig", 3424 | "lazy_static", 3425 | "log", 3426 | "lru-cache", 3427 | "resolv-conf", 3428 | "smallvec", 3429 | "thiserror", 3430 | "tokio 0.2.25", 3431 | "trust-dns-proto", 3432 | ] 3433 | 3434 | [[package]] 3435 | name = "twoway" 3436 | version = "0.2.1" 3437 | source = "registry+https://github.com/rust-lang/crates.io-index" 3438 | checksum = "6b40075910de3a912adbd80b5d8bad6ad10a23eeb1f5bf9d4006839e899ba5bc" 3439 | dependencies = [ 3440 | "memchr", 3441 | "unchecked-index", 3442 | ] 3443 | 3444 | [[package]] 3445 | name = "typed-arena" 3446 | version = "1.7.0" 3447 | source = "registry+https://github.com/rust-lang/crates.io-index" 3448 | checksum = "a9b2228007eba4120145f785df0f6c92ea538f5a3635a612ecf4e334c8c1446d" 3449 | 3450 | [[package]] 3451 | name = "typenum" 3452 | version = "1.13.0" 3453 | source = "registry+https://github.com/rust-lang/crates.io-index" 3454 | checksum = "879f6906492a7cd215bfa4cf595b600146ccfac0c79bcbd1f3000162af5e8b06" 3455 | 3456 | [[package]] 3457 | name = "ucd-trie" 3458 | version = "0.1.3" 3459 | source = "registry+https://github.com/rust-lang/crates.io-index" 3460 | checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c" 3461 | 3462 | [[package]] 3463 | name = "unchecked-index" 3464 | version = "0.2.2" 3465 | source = "registry+https://github.com/rust-lang/crates.io-index" 3466 | checksum = "eeba86d422ce181a719445e51872fa30f1f7413b62becb52e95ec91aa262d85c" 3467 | 3468 | [[package]] 3469 | name = "unicase" 3470 | version = "2.6.0" 3471 | source = "registry+https://github.com/rust-lang/crates.io-index" 3472 | checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" 3473 | dependencies = [ 3474 | "version_check", 3475 | ] 3476 | 3477 | [[package]] 3478 | name = "unicode-bidi" 3479 | version = "0.3.4" 3480 | source = "registry+https://github.com/rust-lang/crates.io-index" 3481 | checksum = "49f2bd0c6468a8230e1db229cff8029217cf623c767ea5d60bfbd42729ea54d5" 3482 | dependencies = [ 3483 | "matches", 3484 | ] 3485 | 3486 | [[package]] 3487 | name = "unicode-normalization" 3488 | version = "0.1.17" 3489 | source = "registry+https://github.com/rust-lang/crates.io-index" 3490 | checksum = "07fbfce1c8a97d547e8b5334978438d9d6ec8c20e38f56d4a4374d181493eaef" 3491 | dependencies = [ 3492 | "tinyvec", 3493 | ] 3494 | 3495 | [[package]] 3496 | name = "unicode-segmentation" 3497 | version = "1.7.1" 3498 | source = "registry+https://github.com/rust-lang/crates.io-index" 3499 | checksum = "bb0d2e7be6ae3a5fa87eed5fb451aff96f2573d2694942e40543ae0bbe19c796" 3500 | 3501 | [[package]] 3502 | name = "unicode-width" 3503 | version = "0.1.8" 3504 | source = "registry+https://github.com/rust-lang/crates.io-index" 3505 | checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" 3506 | 3507 | [[package]] 3508 | name = "unicode-xid" 3509 | version = "0.2.1" 3510 | source = "registry+https://github.com/rust-lang/crates.io-index" 3511 | checksum = "f7fe0bb3479651439c9112f72b6c505038574c9fbb575ed1bf3b797fa39dd564" 3512 | 3513 | [[package]] 3514 | name = "unicode_categories" 3515 | version = "0.1.1" 3516 | source = "registry+https://github.com/rust-lang/crates.io-index" 3517 | checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" 3518 | 3519 | [[package]] 3520 | name = "universal-hash" 3521 | version = "0.4.0" 3522 | source = "registry+https://github.com/rust-lang/crates.io-index" 3523 | checksum = "8326b2c654932e3e4f9196e69d08fdf7cfd718e1dc6f66b347e6024a0c961402" 3524 | dependencies = [ 3525 | "generic-array 0.14.4", 3526 | "subtle", 3527 | ] 3528 | 3529 | [[package]] 3530 | name = "untrusted" 3531 | version = "0.7.1" 3532 | source = "registry+https://github.com/rust-lang/crates.io-index" 3533 | checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" 3534 | 3535 | [[package]] 3536 | name = "url" 3537 | version = "2.2.1" 3538 | source = "registry+https://github.com/rust-lang/crates.io-index" 3539 | checksum = "9ccd964113622c8e9322cfac19eb1004a07e636c545f325da085d5cdde6f1f8b" 3540 | dependencies = [ 3541 | "form_urlencoded", 3542 | "idna", 3543 | "matches", 3544 | "percent-encoding", 3545 | "serde 1.0.125", 3546 | ] 3547 | 3548 | [[package]] 3549 | name = "uuid" 3550 | version = "0.8.2" 3551 | source = "registry+https://github.com/rust-lang/crates.io-index" 3552 | checksum = "bc5cf98d8186244414c848017f0e2676b3fcb46807f6668a97dfe67359a3c4b7" 3553 | dependencies = [ 3554 | "getrandom 0.2.2", 3555 | ] 3556 | 3557 | [[package]] 3558 | name = "validator" 3559 | version = "0.13.0" 3560 | source = "registry+https://github.com/rust-lang/crates.io-index" 3561 | checksum = "be110dc66fa015b8b1d2c4eae40c495a27fae55f82b9cae3efb8178241ed20eb" 3562 | dependencies = [ 3563 | "idna", 3564 | "lazy_static", 3565 | "regex", 3566 | "serde 1.0.125", 3567 | "serde_derive", 3568 | "serde_json", 3569 | "url", 3570 | "validator_derive", 3571 | "validator_types", 3572 | ] 3573 | 3574 | [[package]] 3575 | name = "validator_derive" 3576 | version = "0.13.0" 3577 | source = "registry+https://github.com/rust-lang/crates.io-index" 3578 | checksum = "68f14fe757e2894ce4271991901567be07fbc3eac6b24246122214e1d5a16554" 3579 | dependencies = [ 3580 | "if_chain", 3581 | "lazy_static", 3582 | "proc-macro-error", 3583 | "proc-macro2", 3584 | "quote", 3585 | "regex", 3586 | "syn", 3587 | "validator_types", 3588 | ] 3589 | 3590 | [[package]] 3591 | name = "validator_types" 3592 | version = "0.12.0" 3593 | source = "registry+https://github.com/rust-lang/crates.io-index" 3594 | checksum = "ad9680608df133af2c1ddd5eaf1ddce91d60d61b6bc51494ef326458365a470a" 3595 | 3596 | [[package]] 3597 | name = "vcpkg" 3598 | version = "0.2.11" 3599 | source = "registry+https://github.com/rust-lang/crates.io-index" 3600 | checksum = "b00bca6106a5e23f3eee943593759b7fcddb00554332e856d990c893966879fb" 3601 | 3602 | [[package]] 3603 | name = "vec_map" 3604 | version = "0.8.2" 3605 | source = "registry+https://github.com/rust-lang/crates.io-index" 3606 | checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" 3607 | 3608 | [[package]] 3609 | name = "version_check" 3610 | version = "0.9.3" 3611 | source = "registry+https://github.com/rust-lang/crates.io-index" 3612 | checksum = "5fecdca9a5291cc2b8dcf7dc02453fee791a280f3743cb0905f8822ae463b3fe" 3613 | 3614 | [[package]] 3615 | name = "wasi" 3616 | version = "0.9.0+wasi-snapshot-preview1" 3617 | source = "registry+https://github.com/rust-lang/crates.io-index" 3618 | checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" 3619 | 3620 | [[package]] 3621 | name = "wasi" 3622 | version = "0.10.0+wasi-snapshot-preview1" 3623 | source = "registry+https://github.com/rust-lang/crates.io-index" 3624 | checksum = "1a143597ca7c7793eff794def352d41792a93c481eb1042423ff7ff72ba2c31f" 3625 | 3626 | [[package]] 3627 | name = "wasm-bindgen" 3628 | version = "0.2.73" 3629 | source = "registry+https://github.com/rust-lang/crates.io-index" 3630 | checksum = "83240549659d187488f91f33c0f8547cbfef0b2088bc470c116d1d260ef623d9" 3631 | dependencies = [ 3632 | "cfg-if 1.0.0", 3633 | "wasm-bindgen-macro", 3634 | ] 3635 | 3636 | [[package]] 3637 | name = "wasm-bindgen-backend" 3638 | version = "0.2.73" 3639 | source = "registry+https://github.com/rust-lang/crates.io-index" 3640 | checksum = "ae70622411ca953215ca6d06d3ebeb1e915f0f6613e3b495122878d7ebec7dae" 3641 | dependencies = [ 3642 | "bumpalo", 3643 | "lazy_static", 3644 | "log", 3645 | "proc-macro2", 3646 | "quote", 3647 | "syn", 3648 | "wasm-bindgen-shared", 3649 | ] 3650 | 3651 | [[package]] 3652 | name = "wasm-bindgen-macro" 3653 | version = "0.2.73" 3654 | source = "registry+https://github.com/rust-lang/crates.io-index" 3655 | checksum = "3e734d91443f177bfdb41969de821e15c516931c3c3db3d318fa1b68975d0f6f" 3656 | dependencies = [ 3657 | "quote", 3658 | "wasm-bindgen-macro-support", 3659 | ] 3660 | 3661 | [[package]] 3662 | name = "wasm-bindgen-macro-support" 3663 | version = "0.2.73" 3664 | source = "registry+https://github.com/rust-lang/crates.io-index" 3665 | checksum = "d53739ff08c8a68b0fdbcd54c372b8ab800b1449ab3c9d706503bc7dd1621b2c" 3666 | dependencies = [ 3667 | "proc-macro2", 3668 | "quote", 3669 | "syn", 3670 | "wasm-bindgen-backend", 3671 | "wasm-bindgen-shared", 3672 | ] 3673 | 3674 | [[package]] 3675 | name = "wasm-bindgen-shared" 3676 | version = "0.2.73" 3677 | source = "registry+https://github.com/rust-lang/crates.io-index" 3678 | checksum = "d9a543ae66aa233d14bb765ed9af4a33e81b8b58d1584cf1b47ff8cd0b9e4489" 3679 | 3680 | [[package]] 3681 | name = "web-sys" 3682 | version = "0.3.50" 3683 | source = "registry+https://github.com/rust-lang/crates.io-index" 3684 | checksum = "a905d57e488fec8861446d3393670fb50d27a262344013181c2cdf9fff5481be" 3685 | dependencies = [ 3686 | "js-sys", 3687 | "wasm-bindgen", 3688 | ] 3689 | 3690 | [[package]] 3691 | name = "webpki" 3692 | version = "0.21.4" 3693 | source = "registry+https://github.com/rust-lang/crates.io-index" 3694 | checksum = "b8e38c0608262c46d4a56202ebabdeb094cef7e560ca7a226c6bf055188aa4ea" 3695 | dependencies = [ 3696 | "ring", 3697 | "untrusted", 3698 | ] 3699 | 3700 | [[package]] 3701 | name = "webpki-roots" 3702 | version = "0.21.0" 3703 | source = "registry+https://github.com/rust-lang/crates.io-index" 3704 | checksum = "82015b7e0b8bad8185994674a13a93306bea76cf5a16c5a181382fd3a5ec2376" 3705 | dependencies = [ 3706 | "webpki", 3707 | ] 3708 | 3709 | [[package]] 3710 | name = "whoami" 3711 | version = "1.1.1" 3712 | source = "registry+https://github.com/rust-lang/crates.io-index" 3713 | checksum = "1e296f550993cba2c5c3eba5da0fb335562b2fa3d97b7a8ac9dc91f40a3abc70" 3714 | dependencies = [ 3715 | "wasm-bindgen", 3716 | "web-sys", 3717 | ] 3718 | 3719 | [[package]] 3720 | name = "widestring" 3721 | version = "0.4.3" 3722 | source = "registry+https://github.com/rust-lang/crates.io-index" 3723 | checksum = "c168940144dd21fd8046987c16a46a33d5fc84eec29ef9dcddc2ac9e31526b7c" 3724 | 3725 | [[package]] 3726 | name = "winapi" 3727 | version = "0.2.8" 3728 | source = "registry+https://github.com/rust-lang/crates.io-index" 3729 | checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" 3730 | 3731 | [[package]] 3732 | name = "winapi" 3733 | version = "0.3.9" 3734 | source = "registry+https://github.com/rust-lang/crates.io-index" 3735 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" 3736 | dependencies = [ 3737 | "winapi-i686-pc-windows-gnu", 3738 | "winapi-x86_64-pc-windows-gnu", 3739 | ] 3740 | 3741 | [[package]] 3742 | name = "winapi-build" 3743 | version = "0.1.1" 3744 | source = "registry+https://github.com/rust-lang/crates.io-index" 3745 | checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" 3746 | 3747 | [[package]] 3748 | name = "winapi-i686-pc-windows-gnu" 3749 | version = "0.4.0" 3750 | source = "registry+https://github.com/rust-lang/crates.io-index" 3751 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" 3752 | 3753 | [[package]] 3754 | name = "winapi-util" 3755 | version = "0.1.5" 3756 | source = "registry+https://github.com/rust-lang/crates.io-index" 3757 | checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" 3758 | dependencies = [ 3759 | "winapi 0.3.9", 3760 | ] 3761 | 3762 | [[package]] 3763 | name = "winapi-x86_64-pc-windows-gnu" 3764 | version = "0.4.0" 3765 | source = "registry+https://github.com/rust-lang/crates.io-index" 3766 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" 3767 | 3768 | [[package]] 3769 | name = "winreg" 3770 | version = "0.6.2" 3771 | source = "registry+https://github.com/rust-lang/crates.io-index" 3772 | checksum = "b2986deb581c4fe11b621998a5e53361efe6b48a151178d0cd9eeffa4dc6acc9" 3773 | dependencies = [ 3774 | "winapi 0.3.9", 3775 | ] 3776 | 3777 | [[package]] 3778 | name = "ws2_32-sys" 3779 | version = "0.2.1" 3780 | source = "registry+https://github.com/rust-lang/crates.io-index" 3781 | checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" 3782 | dependencies = [ 3783 | "winapi 0.2.8", 3784 | "winapi-build", 3785 | ] 3786 | 3787 | [[package]] 3788 | name = "wyz" 3789 | version = "0.2.0" 3790 | source = "registry+https://github.com/rust-lang/crates.io-index" 3791 | checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214" 3792 | 3793 | [[package]] 3794 | name = "xdg" 3795 | version = "2.2.0" 3796 | source = "registry+https://github.com/rust-lang/crates.io-index" 3797 | checksum = "d089681aa106a86fade1b0128fb5daf07d5867a509ab036d99988dec80429a57" 3798 | 3799 | [[package]] 3800 | name = "yaml-rust" 3801 | version = "0.4.5" 3802 | source = "registry+https://github.com/rust-lang/crates.io-index" 3803 | checksum = "56c1936c4cc7a1c9ab21a1ebb602eb942ba868cbd44a99cb7cdc5892335e1c85" 3804 | dependencies = [ 3805 | "linked-hash-map", 3806 | ] 3807 | --------------------------------------------------------------------------------