From 7567e7566c25feb061185b8a238f8236cbd9c3e2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?= Date: Wed, 28 Jun 2023 23:31:03 +0200 Subject: [PATCH 1/3] Change the template engine to MiniJinja --- CHANGELOG.md | 1 + Cargo.lock | 23 ++++++++-------- acme_common/Cargo.toml | 2 +- acme_common/src/error.rs | 4 +-- acmed/Cargo.toml | 2 +- acmed/build.rs | 2 +- acmed/config/default_hooks.toml | 38 +++++++++++++------------- acmed/src/template.rs | 42 ++++++++++------------------- man/en/acmed.toml.5 | 48 ++++++++++++++++----------------- 9 files changed, 74 insertions(+), 88 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 90eaad5..267256e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - The minimum supported Rust version (MSRV) is now 1.64. - Manual (and badly designed) threads have been replaced by async. - Randomized early delay, for spacing out renewals when dealing with a lot of certificates. +- Replaced the template engine TinyTemplate with MiniJinja. ## [0.21.0] - 2022-12-19 diff --git a/Cargo.lock b/Cargo.lock index 80c49be..e5b0218 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -11,6 +11,7 @@ dependencies = [ "env_logger", "glob", "log", + "minijinja", "native-tls", "nix", "openssl", @@ -19,7 +20,6 @@ dependencies = [ "reqwest", "serde_json", "syslog", - "tinytemplate", "toml", ] @@ -35,13 +35,13 @@ dependencies = [ "futures", "glob", "log", + "minijinja", "nix", "nom", "rand", "reqwest", "serde", "serde_json", - "tinytemplate", "tokio", "toml", ] @@ -797,6 +797,15 @@ version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" +[[package]] +name = "minijinja" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f40870a194358132836de5c67e5038c279de3bff7a05f5da201ed13f6064b979" +dependencies = [ + "serde", +] + [[package]] name = "minimal-lexical" version = "0.2.1" @@ -1387,16 +1396,6 @@ dependencies = [ "time-core", ] -[[package]] -name = "tinytemplate" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" -dependencies = [ - "serde", - "serde_json", -] - [[package]] name = "tinyvec" version = "1.6.0" diff --git a/acme_common/Cargo.toml b/acme_common/Cargo.toml index 2ad86c3..a94e2c7 100644 --- a/acme_common/Cargo.toml +++ b/acme_common/Cargo.toml @@ -24,6 +24,7 @@ daemonize = "0.5" env_logger = "0.10" glob = "0.3" log = "0.4" +minijinja = "1.0.3" native-tls = "0.2" openssl = { version = "0.10", optional = true } openssl-sys = { version = "0.9", optional = true } @@ -31,7 +32,6 @@ punycode = "0.4" reqwest = { version = "0.11.16", default-features = false } serde_json = "1.0" syslog = "6.0" -tinytemplate = "1.2" toml = "0.7" [target.'cfg(unix)'.dependencies] diff --git a/acme_common/src/error.rs b/acme_common/src/error.rs index 18ca131..7f25c7b 100644 --- a/acme_common/src/error.rs +++ b/acme_common/src/error.rs @@ -105,8 +105,8 @@ impl From for Error { } } -impl From for Error { - fn from(error: tinytemplate::error::Error) -> Self { +impl From for Error { + fn from(error: minijinja::Error) -> Self { format!("template error: {error}").into() } } diff --git a/acmed/Cargo.toml b/acmed/Cargo.toml index 22de4af..a78b416 100644 --- a/acmed/Cargo.toml +++ b/acmed/Cargo.toml @@ -31,11 +31,11 @@ log = "0.4" nom = { version = "7.0", default-features = false, features = [] } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" -tinytemplate = "1.2" toml = "0.7" tokio = { version = "1", features = ["full"] } rand = "0.8.5" reqwest = "0.11.16" +minijinja = "1.0.3" [target.'cfg(unix)'.dependencies] nix = "0.26" diff --git a/acmed/build.rs b/acmed/build.rs index 631c03d..7a60ac4 100644 --- a/acmed/build.rs +++ b/acmed/build.rs @@ -117,7 +117,7 @@ fn set_default_values() { set_data_path_if_absent!("ACMED_DEFAULT_CERT_DIR", "certs"); set_env_var_if_absent!( "ACMED_DEFAULT_CERT_FORMAT", - "{ name }_{ key_type }.{ file_type }.{ ext }" + "{{ name }}_{{ key_type }}.{{ file_type }}.{{ ext }}" ); set_cfg_path_if_absent!("ACMED_DEFAULT_CONFIG_FILE", "acmed.toml"); set_runstate_path_if_absent!("ACMED_DEFAULT_PID_FILE", "acmed.pid"); diff --git a/acmed/config/default_hooks.toml b/acmed/config/default_hooks.toml index 37e4ffb..1300855 100644 --- a/acmed/config/default_hooks.toml +++ b/acmed/config/default_hooks.toml @@ -12,7 +12,7 @@ # -# http-01 challenge in "/var/www/{ identifier }/" +# http-01 challenge in "/var/www/{{ identifier }}/" # [[hook]] @@ -21,7 +21,7 @@ type = ["challenge-http-01"] cmd = "mkdir" args = [ "-m", "0755", - "-p", "{{ if env.HTTP_ROOT }}{ env.HTTP_ROOT }{{ else }}/var/www{{ endif }}/{ identifier }/.well-known/acme-challenge" + "-p", "{{ env.HTTP_ROOT | default('/var/www') }}/{{ identifier }}/.well-known/acme-challenge" ] allow_failure = true @@ -30,7 +30,7 @@ name = "http-01-echo-echo" type = ["challenge-http-01"] cmd = "echo" args = ["{ proof }"] -stdout = "{{ if env.HTTP_ROOT }}{ env.HTTP_ROOT }{{ else }}/var/www{{ endif }}/{ identifier }/.well-known/acme-challenge/{ file_name }" +stdout = "{{ env.HTTP_ROOT | default('/var/www') }}/{{ identifier }}/.well-known/acme-challenge/{{ file_name }}" [[hook]] name = "http-01-echo-chmod" @@ -38,7 +38,7 @@ type = ["challenge-http-01"] cmd = "chmod" args = [ "a+r", - "{{ if env.HTTP_ROOT }}{ env.HTTP_ROOT }{{ else }}/var/www{{ endif }}/{ identifier }/.well-known/acme-challenge/{ file_name }" + "{{ env.HTTP_ROOT | default('/var/www') }}/{{ identifier }}/.well-known/acme-challenge/{{ file_name }}" ] allow_failure = true @@ -48,7 +48,7 @@ type = ["challenge-http-01-clean"] cmd = "rm" args = [ "-f", - "{{ if env.HTTP_ROOT }}{ env.HTTP_ROOT }{{ else }}/var/www{{ endif }}/{ identifier }/.well-known/acme-challenge/{ file_name }" + "{{ env.HTTP_ROOT | default('/var/www') }}/{{ identifier }}/.well-known/acme-challenge/{{ file_name }}" ] allow_failure = true @@ -71,10 +71,10 @@ name = "tls-alpn-01-tacd-start-tcp" type = ["challenge-tls-alpn-01"] cmd = "tacd" args = [ - "--pid-file", "{{ if env.TACD_PID_ROOT }}{ env.TACD_PID_ROOT }{{ else }}/run{{ endif }}/tacd_{ identifier }.pid", + "--pid-file", "{{ env.TACD_PID_ROOT | default('/run') }}/tacd_{{ identifier }}.pid", "--domain", "{ identifier_tls_alpn }", "--acme-ext", "{ proof }", - "--listen", "{{ if env.TACD_HOST }}{ env.TACD_HOST }{{ else }}{ identifier }{{ endif }}:{{ if env.TACD_PORT }}{ env.TACD_PORT }{{ else }}5001{{ endif }}" + "--listen", "{{ env.TACD_PORT | default('5001') }}" ] [[hook]] @@ -82,10 +82,10 @@ name = "tls-alpn-01-tacd-start-unix" type = ["challenge-tls-alpn-01"] cmd = "tacd" args = [ - "--pid-file", "{{ if env.TACD_PID_ROOT }}{ env.TACD_PID_ROOT }{{ else }}/run{{ endif }}/tacd_{ identifier }.pid", + "--pid-file", "{{ env.TACD_PID_ROOT | default('/run') }}/tacd_{{ identifier }}.pid", "--domain", "{ identifier_tls_alpn }", "--acme-ext", "{ proof }", - "--listen", "unix:{{ if env.TACD_SOCK_ROOT }}{ env.TACD_SOCK_ROOT }{{ else }}/run{{ endif }}/tacd_{ identifier }.sock" + "--listen", "unix:{{ env.TACD_SOCK_ROOT | default('/run') }}/tacd_{{ identifier }}.sock" ] [[hook]] @@ -93,7 +93,7 @@ name = "tls-alpn-01-tacd-kill" type = ["challenge-tls-alpn-01-clean"] cmd = "pkill" args = [ - "-F", "{{ if env.TACD_PID_ROOT }}{ env.TACD_PID_ROOT }{{ else }}/run{{ endif }}/tacd_{ identifier }.pid", + "-F", "{{ env.TACD_PID_ROOT | default('/run') }}/tacd_{{ identifier }}.pid", ] allow_failure = true @@ -102,7 +102,7 @@ name = "tls-alpn-01-tacd-rm" type = ["challenge-tls-alpn-01-clean"] cmd = "rm" args = [ - "-f", "{{ if env.TACD_PID_ROOT }}{ env.TACD_PID_ROOT }{{ else }}/run{{ endif }}/tacd_{ identifier }.pid", + "-f", "{{ env.TACD_PID_ROOT | default('/run') }}/tacd_{{ identifier }}.pid", ] allow_failure = true @@ -125,7 +125,7 @@ type = ["file-pre-create", "file-pre-edit"] cmd = "git" args = [ "init", - "{ file_directory }" + "{{ file_directory }}" ] [[hook]] @@ -133,8 +133,8 @@ name = "git-add" type = ["file-post-create", "file-post-edit"] cmd = "git" args = [ - "-C", "{ file_directory }", - "add", "{ file_name }" + "-C", "{{ file_directory }}", + "add", "{{ file_name }}" ] allow_failure = true @@ -143,12 +143,12 @@ name = "git-commit" type = ["file-post-create", "file-post-edit"] cmd = "git" args = [ - "-C", "{ file_directory }", - "-c", "user.name='{{ if env.GIT_USERNAME }}{ env.GIT_USERNAME }{{ else }}ACMEd{{ endif }}'", - "-c", "user.email='{{ if env.GIT_EMAIL }}{ env.GIT_EMAIL }{{ else }}acmed@localhost{{ endif }}'", + "-C", "{{ file_directory }}", + "-c", "user.name='{{ env.GIT_USERNAME | default('ACMEd') }}'", + "-c", "user.email='{{ env.GIT_EMAIL | default('acmed@localhost') }}'", "commit", - "-m", "{ file_name }", - "--only", "{ file_name }" + "-m", "{{ file_name }}", + "--only", "{{ file_name }}" ] allow_failure = true diff --git a/acmed/src/template.rs b/acmed/src/template.rs index 976f79e..2b46975 100644 --- a/acmed/src/template.rs +++ b/acmed/src/template.rs @@ -1,37 +1,23 @@ -use acme_common::error::Error; +use minijinja::{value::Value, Environment}; use serde::Serialize; -use serde_json::Value; -use tinytemplate::TinyTemplate; -macro_rules! default_format { - ($value: ident, $output: ident) => {{ - $output.push_str(&$value.to_string()); - Ok(()) - }}; -} - -fn formatter_rev_labels(value: &Value, output: &mut String) -> tinytemplate::error::Result<()> { - match value { - Value::Null => Ok(()), - Value::Bool(v) => default_format!(v, output), - Value::Number(v) => default_format!(v, output), - Value::String(v) => { - let s = v.rsplit('.').collect::>().join("."); - output.push_str(&s); - Ok(()) - } - _ => Ok(()), +fn formatter_rev_labels(value: Value) -> Result { + if let Some(value) = value.as_str() { + Ok(value.rsplit('.').collect::>().join(".").into()) + } else { + Ok(value) } } -pub fn render_template(template: &str, data: &T) -> Result +pub fn render_template(template: &str, data: &T) -> Result where T: Serialize, { - let mut reg = TinyTemplate::new(); - reg.add_formatter("rev_labels", formatter_rev_labels); - reg.add_template("reg", template)?; - Ok(reg.render("reg", data)?) + let mut environment = Environment::new(); + environment.add_filter("rev_labels", formatter_rev_labels); + environment.add_template("template", template)?; + let template = environment.get_template("template")?; + Ok(template.render(data)?) } #[cfg(test)] @@ -51,7 +37,7 @@ mod tests { foo: String::from("test"), bar: 42, }; - let tpl = "This is { foo } { bar -} !"; + let tpl = "This is {{ foo }} {{ bar -}} !"; let rendered = render_template(tpl, &c); assert!(rendered.is_ok()); let rendered = rendered.unwrap(); @@ -64,7 +50,7 @@ mod tests { foo: String::from("mx1.example.org"), bar: 42, }; - let tpl = "{ foo } - { foo | rev_labels }"; + let tpl = "{{ foo }} - {{ foo | rev_labels }}"; let rendered = render_template(tpl, &c); assert!(rendered.is_ok()); let rendered = rendered.unwrap(); diff --git a/man/en/acmed.toml.5 b/man/en/acmed.toml.5 index bb7286f..0d3be4e 100644 --- a/man/en/acmed.toml.5 +++ b/man/en/acmed.toml.5 @@ -122,17 +122,17 @@ Name of the endpoint to use. Table of environment variables that will be accessible from hooks. .It Ic file_name_format Ar string Template used to build the file's name. The template syntax is -.Em TinyTemplate . +.Em MiniJinja . See the .Sx STANDARDS section for a link to the -.Em TinyTemplate +.Em MiniJinja specifications. If not specified, the value defined in the .Em endpoint element, and then the .Em global element, is used. Default is -.Dq { name }_{ key_type }.{ file_type }.{ ext } . +.Dq {{ name }}_{{ key_type }}.{{ file_type }}.{{ ext }} . Possible variables are: .Bl -tag .It Ic ext Ar string @@ -424,11 +424,11 @@ and are considered as template strings whereas .Em cmd is not. The template syntax is -.Em TinyTemplate . +.Em MiniJinja . See the .Sx STANDARDS section for a link to the -.Em TinyTemplate +.Em MiniJinja specifications. .Pp The available types and the associated template variable are described below. @@ -604,10 +604,10 @@ and environment variables. .It Pa http-01-echo This hook is designed to solve the http-01 challenge. For this purpose, it will write the proof into -.Pa { env.HTTP_ROOT }/{ identifier }/.well-known/acme-challenge/{ file_name } . +.Pa {{ env.HTTP_ROOT }}/{{ identifier }}/.well-known/acme-challenge/{{ file_name }} . .Pp The web server must be configured so the file -.Pa http://{ identifier }/.well-known/acme-challenge/{ file_name } +.Pa http://{{ identifier }}/.well-known/acme-challenge/{{ file_name }} can be accessed from the CA. .Pp If @@ -632,7 +632,7 @@ environment variable (default is 5001). .Pp .Xr tacd 8 will store its pid into -.Pa { TACD_PID_ROOT }/tacd_{ identifier }.pid . +.Pa {{ TACD_PID_ROOT }}/tacd_{{ identifier }}.pid . If .Ev TACD_PID_ROOT is not specified, it will be set to @@ -648,7 +648,7 @@ option. .Pp .Xr tacd 8 will listen on the unix socket -.Pa { env.TACD_SOCK_ROOT }/tacd_{ identifier }.sock . +.Pa {{ env.TACD_SOCK_ROOT }}/tacd_{{ identifier }}.sock . If .Ev TACD_SOCK_ROOT is not specified, it will be set to @@ -656,7 +656,7 @@ is not specified, it will be set to .Pp .Xr tacd 8 will store its pid into -.Pa { TACD_PID_ROOT }/tacd_{ identifier }.pid . +.Pa {{ TACD_PID_ROOT }}/tacd_{{ identifier }}.pid . If .Ev TACD_PID_ROOT is not specified, it will be set to @@ -696,8 +696,8 @@ For example, and .Dq 40s20h4h2s both represents a period of one day and forty-two seconds. -.Sh TEMPLATE FORMATTERS -In addition the the formatters provided by default by TinyTemplate, ACMEd provides the following formatters: +.Sh TEMPLATE FILTERS +In addition the the filters provided by default by MiniJinja, ACMEd provides the following filters: .Bl -tag .It Pa rev_labels Reverts the labels of a domain name (eg: @@ -763,7 +763,7 @@ type = ["challenge-http-01"] cmd = "mkdir" args = [ "-m", "0755", - "-p", "{{ if env.HTTP_ROOT }}{ env.HTTP_ROOT }{{ else }}/var/www{{ endif }}/{ identifier }/.well-known/acme-challenge" + "-p", "{{ env.HTTP_ROOT | default('/var/www') }}/{{ identifier }}/.well-known/acme-challenge" ] [[hook]] @@ -771,7 +771,7 @@ name = "http-01-echo-echo" type = ["challenge-http-01"] cmd = "echo" args = ["{ proof }"] -stdout = "{{ if env.HTTP_ROOT }}{ env.HTTP_ROOT }{{ else }}/var/www{{ endif }}/{ identifier }/.well-known/acme-challenge/{ file_name }" +stdout = "{{ env.HTTP_ROOT | default('/var/www') }}/{{ identifier }}/.well-known/acme-challenge/{{ file_name }}" [[hook]] name = "http-01-echo-chmod" @@ -779,7 +779,7 @@ type = ["challenge-http-01-clean"] cmd = "chmod" args = [ "a+r", - "{{ if env.HTTP_ROOT }}{ env.HTTP_ROOT }{{ else }}/var/www{{ endif }}/{ identifier }/.well-known/acme-challenge/{ file_name }" + "{{ env.HTTP_ROOT | default('/var/www') }}/{{ identifier }}/.well-known/acme-challenge/{{ file_name }}" ] [[hook]] @@ -788,7 +788,7 @@ type = ["challenge-http-01-clean"] cmd = "rm" args = [ "-f", - "{{ if env.HTTP_ROOT }}{ env.HTTP_ROOT }{{ else }}/var/www{{ endif }}/{ identifier }/.well-known/acme-challenge/{ file_name }" + "{{ env.HTTP_ROOT | default('/var/www') }}/{{ identifier }}/.well-known/acme-challenge/{{ file_name }}" ] .Ed .Pp @@ -821,12 +821,12 @@ args = [ "-f", "noreply.certs@example.net", "contact@example.net" ] -stdin_str = """Subject: Certificate renewal {{ if is_success }}succeeded{{ else }}failed{{ endif }} for { identifiers.0 } +stdin_str = """Subject: Certificate renewal {{ 'succeeded' if is_success else 'failed' }} for {{ identifiers.0 }} -The following certificate has {{ if not is_success }}*not* {{ endif }}been renewed. -identifiers: {{ for ident in identifiers }}{{ if not @first }}, {{ endif }}{ ident }{{ endfor }} -key type: { key_type } -status: { status }""" +The following certificate has {{ '' if is_success else '*not* ' }}been renewed. +identifiers: {% for ident in identifiers %}{% if not loop.first %}, {% endif %}{{ ident }}{% endfor %} +key type: {{ key_type }} +status: {{ status }}""" .Ed .Sh SEE ALSO .Xr acmed 8 , @@ -842,9 +842,9 @@ status: { status }""" .Re .It .Rs -.%A Brook Heisler -.%T TinyTemplate -.%U https://docs.rs/tinytemplate/latest/tinytemplate/syntax/index.html +.%A Armin Ronacher +.%T MiniJinja +.%U https://docs.rs/minijinja/latest/minijinja/syntax/index.html .Re .It .Rs From b74765187c3ccd8888aa95ae2bc99548a4adbf8b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?= Date: Thu, 29 Jun 2023 00:14:34 +0200 Subject: [PATCH 2/3] Update the MSRV --- .github/workflows/ci.yml | 2 +- CHANGELOG.md | 2 +- README.md | 2 +- acme_common/Cargo.toml | 1 + acmed/Cargo.toml | 1 + tacd/Cargo.toml | 1 + 6 files changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 66feee0..e4e2e57 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,11 +8,11 @@ jobs: strategy: matrix: rust: - - 1.64.0 - 1.65.0 - 1.66.1 - 1.67.1 - 1.68.2 + - 1.69.0 - stable - beta - nightly diff --git a/CHANGELOG.md b/CHANGELOG.md index 267256e..69b2a0a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,7 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] ### Changed -- The minimum supported Rust version (MSRV) is now 1.64. +- The minimum supported Rust version (MSRV) is now 1.65. - Manual (and badly designed) threads have been replaced by async. - Randomized early delay, for spacing out renewals when dealing with a lot of certificates. - Replaced the template engine TinyTemplate with MiniJinja. diff --git a/README.md b/README.md index 50523d6..b1ddfc7 100644 --- a/README.md +++ b/README.md @@ -77,7 +77,7 @@ man =(curl -sSf "https://raw.githubusercontent.com/breard-r/acmed/main/man/en/ta ## Build from source -In order to compile ACMEd, you will need the [Rust](https://www.rust-lang.org/) compiler and its package manager, Cargo. The minimum supported Rust version(MSRV) is 1.64, although it is recommended to use the latest stable one. +In order to compile ACMEd, you will need the [Rust](https://www.rust-lang.org/) compiler and its package manager, Cargo. The minimum supported Rust version(MSRV) is 1.65, although it is recommended to use the latest stable one. ACMEd depends OpenSSL 1.1.0 or higher. diff --git a/acme_common/Cargo.toml b/acme_common/Cargo.toml index a94e2c7..0694772 100644 --- a/acme_common/Cargo.toml +++ b/acme_common/Cargo.toml @@ -8,6 +8,7 @@ repository = "https://github.com/breard-r/libreauth" license = "MIT OR Apache-2.0" include = ["src/**/*", "Cargo.toml", "Licence_*.txt"] publish = false +rust-version = "1.65.0" [lib] name = "acme_common" diff --git a/acmed/Cargo.toml b/acmed/Cargo.toml index a78b416..b513a9f 100644 --- a/acmed/Cargo.toml +++ b/acmed/Cargo.toml @@ -12,6 +12,7 @@ categories = ["cryptography"] build = "build.rs" include = ["src/**/*", "Cargo.toml", "LICENSE-*.txt"] publish = false +rust-version = "1.65.0" [features] default = ["openssl_dyn"] diff --git a/tacd/Cargo.toml b/tacd/Cargo.toml index 2f9b0ac..2de167a 100644 --- a/tacd/Cargo.toml +++ b/tacd/Cargo.toml @@ -11,6 +11,7 @@ keywords = ["acme", "tls", "alpn", "X.509"] categories = ["cryptography"] include = ["src/**/*", "Cargo.toml", "LICENSE-*.txt"] publish = false +rust-version = "1.65.0" [features] default = ["openssl_dyn"] From c96c57cd709c66f705e28ec63cb919038a635ce5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Christian=20Gr=C3=BCnhage?= Date: Thu, 29 Jun 2023 00:40:20 +0200 Subject: [PATCH 3/3] Update dependencies --- Cargo.lock | 326 ++++++++++++++++++++++++++++++----------------------- 1 file changed, 188 insertions(+), 138 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e5b0218..4a39faf 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -46,11 +46,26 @@ dependencies = [ "toml", ] +[[package]] +name = "addr2line" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" +dependencies = [ + "gimli", +] + +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + [[package]] name = "aho-corasick" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67fc08ce920c31afb70f013dcce1bfc3a3195de6a228474e45e1f145b36f8d04" +checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41" dependencies = [ "memchr", ] @@ -72,15 +87,15 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ed9a86bf92ae6580e0a31281f65a1b1d867c0cc68d5346e2ae128dddfa6a7d" +checksum = "3a30da5c5f2d5e72842e00bcb57657162cdabef0931f40e2deb9b4140440cecd" [[package]] name = "anstyle-parse" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e765fd216e48e067936442276d1d57399e37bce53c264d6fefbe298080cb57ee" +checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333" dependencies = [ "utf8parse", ] @@ -180,6 +195,21 @@ version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" +[[package]] +name = "backtrace" +version = "0.3.67" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca" +dependencies = [ + "addr2line", + "cc", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", +] + [[package]] name = "base64" version = "0.21.2" @@ -242,18 +272,18 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "clap" -version = "4.3.0" +version = "4.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93aae7a4192245f70fe75dd9157fc7b4a5bf53e88d30bd4396f7d8f9284d5acc" +checksum = "bba77a07e4489fb41bd90e8d4201c3eb246b3c2c9ea2ba0bddd6c1d1df87db7d" dependencies = [ "clap_builder", ] [[package]] name = "clap_builder" -version = "4.3.0" +version = "4.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f423e341edefb78c9caba2d9c7f7687d0e72e89df3ce3394554754393ac3990" +checksum = "2c9b4a88bb4bc35d3d6f65a21b0f0bafe9c894fa00978de242c555ec28bea1c0" dependencies = [ "anstream", "anstyle", @@ -301,9 +331,9 @@ checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" [[package]] name = "crossbeam-utils" -version = "0.8.15" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" +checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" dependencies = [ "cfg-if", ] @@ -339,6 +369,12 @@ dependencies = [ "termcolor", ] +[[package]] +name = "equivalent" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88bffebc5d80432c9b140ee17875ff173a8ab62faad5b257da912bd2f6c1c0a1" + [[package]] name = "errno" version = "0.3.1" @@ -407,9 +443,9 @@ checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" [[package]] name = "form_urlencoded" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9c384f161156f5260c24a097c56119f9be8c798586aecc13afbcbe7b7e26bf8" +checksum = "a62bc1cf6f830c2ec14a513a9fb124d0a213a629668a4186f329db21fe045652" dependencies = [ "percent-encoding", ] @@ -520,15 +556,21 @@ dependencies = [ [[package]] name = "getrandom" -version = "0.2.9" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c85e1d9ab2eadba7e5040d4e09cbd6d072b76a557ad64e797c2cb9d4da21d7e4" +checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427" dependencies = [ "cfg-if", "libc", "wasi", ] +[[package]] +name = "gimli" +version = "0.27.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c80984affa11d98d1b88b66ac8853f143217b399d3c74116778ff8fdb4ed2e" + [[package]] name = "glob" version = "0.3.1" @@ -537,9 +579,9 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "h2" -version = "0.3.19" +version = "0.3.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d357c7ae988e7d2182f7d7871d0b963962420b0678b0997ce7de72001aeab782" +checksum = "97ec8491ebaf99c8eaa73058b045fe58073cd6be7f596ac993ced0b0a0c01049" dependencies = [ "bytes", "fnv", @@ -547,7 +589,7 @@ dependencies = [ "futures-sink", "futures-util", "http", - "indexmap", + "indexmap 1.9.3", "slab", "tokio", "tokio-util", @@ -560,6 +602,12 @@ version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +[[package]] +name = "hashbrown" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2c6201b9ff9fd90a5a3bac2e56a830d0caa509576f0e503818ee82c181b3437a" + [[package]] name = "hermit-abi" version = "0.2.6" @@ -628,9 +676,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" [[package]] name = "hyper" -version = "0.14.26" +version = "0.14.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab302d72a6f11a3b910431ff93aae7e773078c769f0a3ef15fb9ec692ed147d4" +checksum = "ffb1cfd654a8219eaef89881fdb3bb3b1cdc5fa75ded05d6933b2b382e395468" dependencies = [ "bytes", "futures-channel", @@ -665,9 +713,9 @@ dependencies = [ [[package]] name = "idna" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e14ddfc70884202db2244c223200c204c2bda1bc6e0998d11b5e024d657209e6" +checksum = "7d20d6b07bfbc108882d88ed8e37d39636dcc260e15e30c45e6ba089610b917c" dependencies = [ "unicode-bidi", "unicode-normalization", @@ -680,7 +728,17 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" dependencies = [ "autocfg", - "hashbrown", + "hashbrown 0.12.3", +] + +[[package]] +name = "indexmap" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d5477fe2230a79769d8dc68e0eabf5437907c0457a5614a9e8dddb67f65eb65d" +dependencies = [ + "equivalent", + "hashbrown 0.14.0", ] [[package]] @@ -705,9 +763,9 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.7.2" +version = "2.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12b6ee2129af8d4fb011108c73d99a1b83a85977f23b82460c0ae2e25bb4b57f" +checksum = "28b29a3cd74f0f4598934efe3aeba42bae0eb4680554128851ebbecb02af14e6" [[package]] name = "is-terminal" @@ -729,9 +787,9 @@ checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" [[package]] name = "js-sys" -version = "0.3.63" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f37a4a5928311ac501dee68b3c7613a1037d0edb30c8e5427bd832d55d1b790" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" dependencies = [ "wasm-bindgen", ] @@ -744,9 +802,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" [[package]] name = "libc" -version = "0.2.144" +version = "0.2.147" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b00cc1c228a6782d0f076e7b232802e0c5689d41bb5df366f2a6b6621cfdfe1" +checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" [[package]] name = "linux-raw-sys" @@ -756,9 +814,9 @@ checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519" [[package]] name = "lock_api" -version = "0.4.9" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df" +checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" dependencies = [ "autocfg", "scopeguard", @@ -766,9 +824,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.18" +version = "0.4.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "518ef76f2f87365916b142844c16d8fefd85039bc5699050210a7778ee1cd1de" +checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4" [[package]] name = "match_cfg" @@ -812,11 +870,20 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" +[[package]] +name = "miniz_oxide" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" +dependencies = [ + "adler", +] + [[package]] name = "mio" -version = "0.8.7" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eebffdb73fe72e917997fad08bdbf31ac50b0fa91cec93e69a0662e4264d454c" +checksum = "927a765cd3fc26206e66b296465fa9d3e5ab003e651c1b3c060e7956d96b19d2" dependencies = [ "libc", "wasi", @@ -884,17 +951,26 @@ dependencies = [ "libc", ] +[[package]] +name = "object" +version = "0.30.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03b4680b86d9cfafba8fc491dc9b6df26b68cf40e9e6cd73909194759a63c385" +dependencies = [ + "memchr", +] + [[package]] name = "once_cell" -version = "1.17.2" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9670a07f94779e00908f3e686eab508878ebb390ba6e604d3a284c00e8d0487b" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" [[package]] name = "openssl" -version = "0.10.52" +version = "0.10.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01b8574602df80f7b85fdfc5392fa884a4e3b3f4f35402c070ab34c3d3f78d56" +checksum = "345df152bc43501c5eb9e4654ff05f794effb78d4efe3d53abc158baddc0703d" dependencies = [ "bitflags", "cfg-if", @@ -924,18 +1000,18 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-src" -version = "111.25.3+1.1.1t" +version = "111.26.0+1.1.1u" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "924757a6a226bf60da5f7dd0311a34d2b52283dd82ddeb103208ddc66362f80c" +checksum = "efc62c9f12b22b8f5208c23a7200a442b2e5999f8bdf80233852122b5a4f6f37" dependencies = [ "cc", ] [[package]] name = "openssl-sys" -version = "0.9.87" +version = "0.9.90" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e17f59264b2809d77ae94f0e1ebabc434773f370d6ca667bd223ea10e06cc7e" +checksum = "374533b0e45f3a7ced10fcaeccca020e66656bc03dac384f852e4e5a7a8104a6" dependencies = [ "cc", "libc", @@ -962,22 +1038,22 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.9.7" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9069cbb9f99e3a5083476ccb29ceb1de18b9118cafa53e90c9551235de2b9521" +checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.2.16", + "redox_syscall", "smallvec", - "windows-sys 0.45.0", + "windows-targets", ] [[package]] name = "percent-encoding" -version = "2.2.0" +version = "2.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e" +checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "pin-project-lite" @@ -1021,9 +1097,9 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "proc-macro2" -version = "1.0.59" +version = "1.0.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6aeca18b86b413c660b781aa319e4e2648a3e6f9eadc9b47e9038e6fe9f3451b" +checksum = "7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb" dependencies = [ "unicode-ident", ] @@ -1073,15 +1149,6 @@ dependencies = [ "getrandom", ] -[[package]] -name = "redox_syscall" -version = "0.2.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" -dependencies = [ - "bitflags", -] - [[package]] name = "redox_syscall" version = "0.3.5" @@ -1093,9 +1160,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.8.3" +version = "1.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81ca098a9821bd52d6b24fd8b10bd081f47d39c22778cafaa75a2857a62c6390" +checksum = "d0ab3ca65655bb1e41f2a8c8cd662eb4fb035e67c3f78da1d61dffe89d07300f" dependencies = [ "aho-corasick", "memchr", @@ -1145,11 +1212,17 @@ dependencies = [ "winreg", ] +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + [[package]] name = "rustix" -version = "0.37.19" +version = "0.37.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acf8729d8542766f1b2cf77eb034d52f40d375bb8b615d0b147089946e16613d" +checksum = "b96e891d04aa506a6d1f318d2771bcb1c7dfda84e126660ace067c9b474bb2c0" dependencies = [ "bitflags", "errno", @@ -1205,18 +1278,18 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.163" +version = "1.0.164" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2113ab51b87a539ae008b5c6c02dc020ffa39afd2d83cffcb3f4eb2722cebec2" +checksum = "9e8c8cf938e98f769bc164923b06dce91cea1751522f46f8466461af04c9027d" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.163" +version = "1.0.164" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c805777e3930c8883389c602315a24224bcc738b63905ef87cd1420353ea93e" +checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68" dependencies = [ "proc-macro2", "quote", @@ -1225,9 +1298,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.96" +version = "1.0.99" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "057d394a50403bcac12672b2b18fb387ab6d289d957dab67dd201875391e52f1" +checksum = "46266871c240a00b8f503b877622fe33430b3c7d963bdc0f2adc511e54a1eae3" dependencies = [ "itoa", "ryu", @@ -1236,9 +1309,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93107647184f6027e3b7dcb2e11034cf95ffa1e3a682c67951963ac69c1c007d" +checksum = "96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186" dependencies = [ "serde", ] @@ -1313,9 +1386,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "syn" -version = "2.0.18" +version = "2.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e" +checksum = "2efbeae7acf4eabd6bcdcbd11c92f45231ddda7539edc7806bd1a04a03b24616" dependencies = [ "proc-macro2", "quote", @@ -1347,15 +1420,16 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.5.0" +version = "3.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9fbec84f381d5795b08656e4912bec604d162bff9291d6189a78f4c8ab87998" +checksum = "31c0432476357e58790aaa47a8efb0c5138f137343f3b5f23bd36a27e3b0a6d6" dependencies = [ + "autocfg", "cfg-if", "fastrand", - "redox_syscall 0.3.5", + "redox_syscall", "rustix", - "windows-sys 0.45.0", + "windows-sys 0.48.0", ] [[package]] @@ -1369,9 +1443,9 @@ dependencies = [ [[package]] name = "time" -version = "0.3.21" +version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f3403384eaacbca9923fa06940178ac13e4edb725486d70e8e15881d0c836cc" +checksum = "ea9e1b3cf1243ae005d9e74085d4d542f3125458f3a81af210d901dcd7411efd" dependencies = [ "itoa", "libc", @@ -1413,11 +1487,12 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.28.2" +version = "1.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94d7b1cfd2aa4011f2de74c2c4c63665e27a71006b0a192dcd2710272e73dfa2" +checksum = "374442f06ee49c3a28a8fc9f01a2596fed7559c6b99b31279c3261778e77d84f" dependencies = [ "autocfg", + "backtrace", "bytes", "libc", "mio", @@ -1467,9 +1542,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d6135d499e69981f9ff0ef2167955a5333c35e36f6937d382974566b3d5b94ec" +checksum = "1ebafdf5ad1220cb59e7d17cf4d2c72015297b75b19a10472f99b89225089240" dependencies = [ "serde", "serde_spanned", @@ -1479,20 +1554,20 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.6.2" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a76a9312f5ba4c2dec6b9161fdf25d87ad8a09256ccea5a556fef03c706a10f" +checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b" dependencies = [ "serde", ] [[package]] name = "toml_edit" -version = "0.19.10" +version = "0.19.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2380d56e8670370eee6566b0bfd4265f65b3f432e8c6d85623f728d4fa31f739" +checksum = "266f016b7f039eec8a1a80dfe6156b633d208b9fccca5e4db1d6775b0c4e34a7" dependencies = [ - "indexmap", + "indexmap 2.0.0", "serde", "serde_spanned", "toml_datetime", @@ -1554,9 +1629,9 @@ dependencies = [ [[package]] name = "url" -version = "2.3.1" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d68c799ae75762b8c3fe375feb6600ef5602c883c5d21eb51c09f22b83c4643" +checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" dependencies = [ "form_urlencoded", "idna", @@ -1589,11 +1664,10 @@ checksum = "9d5b2c62b4012a3e1eca5a7e077d13b3bf498c4073e33ccd58626607748ceeca" [[package]] name = "want" -version = "0.3.0" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" dependencies = [ - "log", "try-lock", ] @@ -1605,9 +1679,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bba0e8cb82ba49ff4e229459ff22a191bbe9a1cb3a341610c9c33efc27ddf73" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -1615,9 +1689,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b04bc93f9d6bdee709f6bd2118f57dd6679cf1176a1af464fca3ab0d66d8fb" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", "log", @@ -1630,9 +1704,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.36" +version = "0.4.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d1985d03709c53167ce907ff394f5316aa22cb4e12761295c5dc57dacb6297e" +checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" dependencies = [ "cfg-if", "js-sys", @@ -1642,9 +1716,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14d6b024f1a526bb0234f52840389927257beb670610081360e5a03c5df9c258" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -1652,9 +1726,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e128beba882dd1eb6200e1dc92ae6c5dbaa4311aa7bb211ca035779e5efc39f8" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", @@ -1665,15 +1739,15 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed9d5b4305409d1fc9482fee2d7f9bcbf24b3972bf59817ef757e23982242a93" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" [[package]] name = "web-sys" -version = "0.3.63" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bdd9ef4e984da1187bf8110c5cf5b845fbc87a23602cdf912386a76fcd3a7c2" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" dependencies = [ "js-sys", "wasm-bindgen", @@ -1725,44 +1799,20 @@ dependencies = [ "windows_x86_64_msvc 0.42.2", ] -[[package]] -name = "windows-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets 0.42.2", -] - [[package]] name = "windows-sys" version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets 0.48.0", -] - -[[package]] -name = "windows-targets" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", + "windows-targets", ] [[package]] name = "windows-targets" -version = "0.48.0" +version = "0.48.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +checksum = "05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f" dependencies = [ "windows_aarch64_gnullvm 0.48.0", "windows_aarch64_msvc 0.48.0", @@ -1859,9 +1909,9 @@ checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" [[package]] name = "winnow" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61de7bac303dc551fe038e2b3cef0f571087a47571ea6e79a87692ac99b99699" +checksum = "ca0ace3845f0d96209f0375e6d367e3eb87eb65d27d445bdc9f1843a26f39448" dependencies = [ "memchr", ]