diff --git a/Cargo.lock b/Cargo.lock index d6222c7b8b..161fe205fc 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -116,9 +116,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.95" +version = "1.0.96" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34ac096ce696dc2fcabef30516bb13c0a68a11d30131d3df6f04711467681b04" +checksum = "6b964d184e89d9b6b67dd2715bc8e74cf3107fb2b529990c90cf517326150bf4" [[package]] name = "arc-swap" @@ -408,9 +408,9 @@ checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de" [[package]] name = "async-trait" -version = "0.1.84" +version = "0.1.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1244b10dcd56c92219da4e14caa97e312079e185f04ba3eea25061561dc0a0" +checksum = "644dd749086bf3771a2fbc5f256fdb982d53f011c7d5d560304eafeecebce79d" dependencies = [ "proc-macro2", "quote", @@ -603,9 +603,9 @@ checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" [[package]] name = "cc" -version = "1.2.0" +version = "1.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aeb932158bd710538c73702db6945cb68a8fb08c519e6e12706b94263b36db8" +checksum = "c736e259eea577f443d5c86c304f9f4ae0295c43f3ba05c21f1d66b5f06001af" dependencies = [ "shlex", ] @@ -701,9 +701,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.23" +version = "4.5.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3135e7ec2ef7b10c6ed8950f0f792ed96ee093fa088608f1c76e569722700c84" +checksum = "92b7b18d71fad5313a1e320fa9897994228ce274b60faa4d694fe0ea89cd9e6d" dependencies = [ "clap_builder", "clap_derive", @@ -711,9 +711,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.23" +version = "4.5.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30582fc632330df2bd26877bde0c1f4470d57c582bbc070376afcd04d8cb4838" +checksum = "a35db2071778a7344791a4fb4f95308b5673d219dee3ae348b86642574ecc90c" dependencies = [ "anstream", "anstyle", @@ -723,9 +723,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.18" +version = "4.5.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" +checksum = "bf4ced95c6f4a675af3da73304b9ac4ed991640c36374e4b46795c49e17cf1ed" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -1604,10 +1604,22 @@ dependencies = [ "cfg-if", "js-sys", "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "wasm-bindgen", ] +[[package]] +name = "getrandom" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a49c392881ce6d5c3b8cb70f98717b7c07aabbdff06687b9030dbfbe2725f8" +dependencies = [ + "cfg-if", + "libc", + "wasi 0.13.3+wasi-0.2.2", + "windows-targets 0.52.6", +] + [[package]] name = "gimli" version = "0.31.1" @@ -1782,16 +1794,14 @@ dependencies = [ [[package]] name = "html5ever" -version = "0.29.0" +version = "0.29.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e15626aaf9c351bc696217cbe29cb9b5e86c43f8a46b5e2f5c6c5cf7cb904ce" +checksum = "3b7410cae13cbc75623c98ac4cbfd1f0bedddf3227afc24f370cf0f50a44a11c" dependencies = [ "log", "mac", "markup5ever", - "proc-macro2", - "quote", - "syn 2.0.87", + "match_token", ] [[package]] @@ -1919,9 +1929,9 @@ dependencies = [ [[package]] name = "hyper" -version = "1.5.2" +version = "1.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "256fb8d4bd6413123cc9d91832d78325c48ff41677595be797d90f42969beae0" +checksum = "cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80" dependencies = [ "bytes", "futures-channel", @@ -1946,7 +1956,7 @@ checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" dependencies = [ "futures-util", "http 1.2.0", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "log", "rustls", @@ -1963,7 +1973,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2b90d566bffbce6a75bd8b09a05aa8c2cb1fabb6cb348f8840c9e4c90a0d83b0" dependencies = [ - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "pin-project-lite", "tokio", @@ -1991,7 +2001,7 @@ checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" dependencies = [ "bytes", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "native-tls", "tokio", @@ -2010,7 +2020,7 @@ dependencies = [ "futures-util", "http 1.2.0", "http-body 1.0.1", - "hyper 1.5.2", + "hyper 1.6.0", "pin-project-lite", "socket2 0.5.7", "tokio", @@ -2247,9 +2257,9 @@ dependencies = [ [[package]] name = "indicatif" -version = "0.17.9" +version = "0.17.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbf675b85ed934d3c67b5c5469701eec7db22689d0a2139d856e0925fa28b281" +checksum = "183b3088984b400f4cfac3620d5e076c84da5364016b4f49473de574b2586235" dependencies = [ "console", "number_prefix", @@ -2383,9 +2393,9 @@ checksum = "db13adb97ab515a3691f56e4dbab09283d0b86cb45abd991d8634a9d6f501760" [[package]] name = "libc" -version = "0.2.162" +version = "0.2.170" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "18d287de67fe55fd7e1581fe933d965a5a9477b38e949cfa9f8574ef01506398" +checksum = "875b3680cb2f8f71bdcf9a30f38d48282f5d3c95cbf9b3fa57269bb5d5c06828" [[package]] name = "libredox" @@ -2442,9 +2452,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.22" +version = "0.4.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" +checksum = "30bde2b3dc3671ae49d8e2e9f044c7c005836e7a023ee57cffa25ab82764bb9e" dependencies = [ "value-bag", ] @@ -2523,7 +2533,7 @@ dependencies = [ "html5ever", "html5gum", "http 1.2.0", - "hyper 1.5.2", + "hyper 1.6.0", "ignore", "ip_network", "linkify", @@ -2547,7 +2557,7 @@ dependencies = [ "serde_with", "shellexpand", "tempfile", - "thiserror 2.0.9", + "thiserror 2.0.11", "tokio", "toml", "typed-builder", @@ -2573,9 +2583,9 @@ dependencies = [ [[package]] name = "markup5ever" -version = "0.14.0" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82c88c6129bd24319e62a0359cb6b958fa7e8be6e19bb1663bc396b90883aca5" +checksum = "c7a7213d12e1864c0f002f52c2923d4556935a43dec5e71355c2760e0f6e7a18" dependencies = [ "log", "phf", @@ -2591,6 +2601,17 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" +[[package]] +name = "match_token" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88a9689d8d44bf9964484516275f5cd4c9b59457a6940c1d5d0ecbb94510a36b" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.87", +] + [[package]] name = "matchers" version = "0.1.0" @@ -2647,7 +2668,7 @@ checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" dependencies = [ "hermit-abi 0.3.9", "libc", - "wasi", + "wasi 0.11.0+wasi-snapshot-preview1", "windows-sys 0.52.0", ] @@ -2657,7 +2678,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3" dependencies = [ - "getrandom", + "getrandom 0.2.15", ] [[package]] @@ -2760,9 +2781,9 @@ dependencies = [ [[package]] name = "octocrab" -version = "0.42.1" +version = "0.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b97f949a7cb04608441c2ddb28e15a377e8b5142c2d1835ad2686d434de8558" +checksum = "27527d68322f4c603319f7958973db8f9fa4be62c0e3fafe084f5562cf6353df" dependencies = [ "arc-swap", "async-trait", @@ -2776,7 +2797,7 @@ dependencies = [ "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-rustls", "hyper-timeout", "hyper-util", @@ -2800,9 +2821,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.2" +version = "1.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "945462a4b81e43c4e3ba96bd7b49d834c6f61198356aa858733bc4acf3cbe62e" [[package]] name = "oorandom" @@ -2853,9 +2874,9 @@ dependencies = [ [[package]] name = "openssl-sys" -version = "0.9.104" +version = "0.9.106" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741" +checksum = "8bb61ea9811cc39e3c2069f40b8b8e2e70d8569b361f879786cc7ed48b777cdd" dependencies = [ "cc", "libc", @@ -2881,9 +2902,9 @@ dependencies = [ [[package]] name = "papergrid" -version = "0.13.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2b0f8def1f117e13c895f3eda65a7b5650688da29d6ad04635f61bc7b92eebd" +checksum = "b915f831b85d984193fdc3d3611505871dc139b2534530fa01c1a6a6707b6723" dependencies = [ "bytecount", "fnv", @@ -3234,9 +3255,9 @@ dependencies = [ [[package]] name = "pulldown-cmark" -version = "0.12.2" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f86ba2052aebccc42cbbb3ed234b8b13ce76f75c3551a303cb2bcffcff12bb14" +checksum = "1e8bbe1a966bd2f362681a44f6edce3c2310ac21e4d5067a6e7ec396297a6ea0" dependencies = [ "bitflags 2.6.0", "getopts", @@ -3357,7 +3378,7 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom", + "getrandom 0.2.15", ] [[package]] @@ -3395,7 +3416,7 @@ version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ - "getrandom", + "getrandom 0.2.15", "libredox", "thiserror 1.0.69", ] @@ -3509,7 +3530,7 @@ dependencies = [ "http 1.2.0", "http-body 1.0.1", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-rustls", "hyper-tls 0.6.0", "hyper-util", @@ -3569,15 +3590,14 @@ dependencies = [ [[package]] name = "ring" -version = "0.17.8" +version = "0.17.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +checksum = "da5349ae27d3887ca812fb375b45a4fbb36d8d12d2df394968cd86e35683fe73" dependencies = [ "cc", "cfg-if", - "getrandom", + "getrandom 0.2.15", "libc", - "spin", "untrusted", "windows-sys 0.52.0", ] @@ -3786,18 +3806,18 @@ checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" [[package]] name = "serde" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02fc4265df13d6fa1d00ecff087228cc0a2b5f3c0e87e258d8b94a156e984c70" +checksum = "e8dfc9d19bdbf6d17e22319da49161d5d0108e4188e8b680aef6299eed22df60" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.217" +version = "1.0.218" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9bf7cf98d04a2b28aead066b7496853d4779c9cc183c440dbac457641e19a0" +checksum = "f09503e191f4e797cb8aac08e9a4a4695c5edf6a2e70e376d961ddd5c969f82b" dependencies = [ "proc-macro2", "quote", @@ -3806,9 +3826,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.134" +version = "1.0.139" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d00f4175c42ee48b15416f6193a959ba3a0d67fc699a0db9ad12df9f83991c7d" +checksum = "44f86c3acccc9c65b153fe1b85a3be07fe5515274ec9f0653b4a0875731c72a6" dependencies = [ "itoa", "memchr", @@ -4073,18 +4093,18 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "strum" -version = "0.26.3" +version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +checksum = "f64def088c51c9510a8579e3c5d67c65349dcf755e5479ad3d010aa6454e2c32" dependencies = [ "strum_macros", ] [[package]] name = "strum_macros" -version = "0.26.4" +version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +checksum = "c77a8c5abcaf0f9ce05d62342b7d298c346515365c36b673df4ebe3ced01fde8" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -4200,9 +4220,9 @@ dependencies = [ [[package]] name = "tabled" -version = "0.17.0" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6709222f3973137427ce50559cd564dc187a95b9cfe01613d2f4e93610e510a" +checksum = "121d8171ee5687a4978d1b244f7d99c43e7385a272185a2f1e1fa4dc0979d444" dependencies = [ "papergrid", "tabled_derive", @@ -4210,26 +4230,26 @@ dependencies = [ [[package]] name = "tabled_derive" -version = "0.9.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "931be476627d4c54070a1f3a9739ccbfec9b36b39815106a20cce2243bbcefe1" +checksum = "52d9946811baad81710ec921809e2af67ad77719418673b2a3794932d57b7538" dependencies = [ - "heck 0.4.1", + "heck 0.5.0", "proc-macro-error2", "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.87", ] [[package]] name = "tempfile" -version = "3.15.0" +version = "3.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a8a559c81686f576e8cd0290cd2a24a2a9ad80c98b3478856500fcbd7acd704" +checksum = "22e5a0acb1f3f55f65cc4a866c361b2fb2a0ff6366785ae6fbb5f85df07ba230" dependencies = [ "cfg-if", "fastrand", - "getrandom", + "getrandom 0.3.1", "once_cell", "rustix", "windows-sys 0.59.0", @@ -4263,11 +4283,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.9" +version = "2.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f072643fd0190df67a8bab670c20ef5d8737177d6ac6b2e9a236cb096206b2cc" +checksum = "d452f284b73e6d76dd36758a0c8684b1d5be31f92b89d07fd5822175732206fc" dependencies = [ - "thiserror-impl 2.0.9", + "thiserror-impl 2.0.11", ] [[package]] @@ -4283,9 +4303,9 @@ dependencies = [ [[package]] name = "thiserror-impl" -version = "2.0.9" +version = "2.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b50fa271071aae2e6ee85f842e2e28ba8cd2c5fb67f11fcb1fd70b276f9e7d4" +checksum = "26afc1baea8a989337eeb52b6e72a039780ce45c3edfcc9c5b9d112feeb173c2" dependencies = [ "proc-macro2", "quote", @@ -4370,9 +4390,9 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.42.0" +version = "1.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cec9b21b0450273377fc97bd4c33a8acffc8c996c987a7c5b319a0083707551" +checksum = "3d61fa4ffa3de412bfea335c6ecff681de2b609ba3c77ef3e00e521813a9ed9e" dependencies = [ "backtrace", "bytes", @@ -4388,9 +4408,9 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "2.4.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" +checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8" dependencies = [ "proc-macro2", "quote", @@ -4456,9 +4476,9 @@ dependencies = [ [[package]] name = "toml" -version = "0.8.19" +version = "0.8.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1ed1f98e3fdc28d6d910e6737ae6ab1a93bf1985935a1193e68f93eeb68d24e" +checksum = "cd87a5cdd6ffab733b2f74bc4fd7ee5fff6634124999ac278c35fc78c6120148" dependencies = [ "serde", "serde_spanned", @@ -4477,9 +4497,9 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.22" +version = "0.22.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" +checksum = "17b4795ff5edd201c7cd6dca065ae59972ce77d1b80fa0a84d94950ece7d1474" dependencies = [ "indexmap 2.6.0", "serde", @@ -4748,11 +4768,11 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.11.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a" +checksum = "93d59ca99a559661b96bf898d8fce28ed87935fd2bea9f05983c1464dd6c71b1" dependencies = [ - "getrandom", + "getrandom 0.3.1", ] [[package]] @@ -4807,6 +4827,15 @@ version = "0.11.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" +[[package]] +name = "wasi" +version = "0.13.3+wasi-0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26816d2e1a4a36a2940b96c5296ce403917633dff8f3440e9b236ed6f6bacad2" +dependencies = [ + "wit-bindgen-rt", +] + [[package]] name = "wasm-bindgen" version = "0.2.95" @@ -5121,9 +5150,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.6.20" +version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" +checksum = "0e7f4ea97f6f78012141bcdb6a216b2609f0979ada50b20ca5b52dde2eac2bb1" dependencies = [ "memchr", ] @@ -5151,7 +5180,7 @@ dependencies = [ "futures", "http 1.2.0", "http-body-util", - "hyper 1.5.2", + "hyper 1.6.0", "hyper-util", "log", "once_cell", @@ -5162,6 +5191,15 @@ dependencies = [ "url", ] +[[package]] +name = "wit-bindgen-rt" +version = "0.33.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3268f3d866458b787f390cf61f4bbb563b922d091359f9608842999eaee3943c" +dependencies = [ + "bitflags 2.6.0", +] + [[package]] name = "write16" version = "1.0.0" diff --git a/examples/builder/Cargo.toml b/examples/builder/Cargo.toml index 2514096d62..82e0faaf75 100644 --- a/examples/builder/Cargo.toml +++ b/examples/builder/Cargo.toml @@ -9,7 +9,7 @@ path = "builder.rs" [dependencies] lychee-lib = { path = "../../lychee-lib", default-features = false } -tokio = { version = "1.42.0", features = ["full"] } +tokio = { version = "1.43.0", features = ["full"] } regex = "1.11.1" http = "1.2.0" reqwest = { version = "0.12.9", default-features = false, features = ["gzip"] } diff --git a/examples/chain/Cargo.toml b/examples/chain/Cargo.toml index 02ac965843..e271f7e16c 100644 --- a/examples/chain/Cargo.toml +++ b/examples/chain/Cargo.toml @@ -8,10 +8,10 @@ name = "chain" path = "chain.rs" [dependencies] -async-trait = "0.1.84" +async-trait = "0.1.86" lychee-lib = { path = "../../lychee-lib", default-features = false } reqwest = "0.12.9" -tokio = { version = "1.42.0", features = ["full"] } +tokio = { version = "1.43.0", features = ["full"] } [features] email-check = ["lychee-lib/email-check"] diff --git a/examples/client_pool/Cargo.toml b/examples/client_pool/Cargo.toml index 50ba861a54..3d1e9a30b3 100644 --- a/examples/client_pool/Cargo.toml +++ b/examples/client_pool/Cargo.toml @@ -11,7 +11,7 @@ path = "client_pool.rs" futures = "0.3.31" tokio-stream = "0.1.17" lychee-lib = { path = "../../lychee-lib", default-features = false } -tokio = { version = "1.42.0", features = ["full"] } +tokio = { version = "1.43.0", features = ["full"] } [features] email-check = ["lychee-lib/email-check"] diff --git a/examples/collect_links/Cargo.toml b/examples/collect_links/Cargo.toml index dc66cde9da..bd8ade7751 100644 --- a/examples/collect_links/Cargo.toml +++ b/examples/collect_links/Cargo.toml @@ -9,7 +9,7 @@ path = "collect_links.rs" [dependencies] lychee-lib = { path = "../../lychee-lib", default-features = false } -tokio = { version = "1.42.0", features = ["full"] } +tokio = { version = "1.43.0", features = ["full"] } regex = "1.11.1" http = "1.2.0" tokio-stream = "0.1.17" diff --git a/examples/extract/Cargo.toml b/examples/extract/Cargo.toml index 795bbf4cb0..3da6edb963 100644 --- a/examples/extract/Cargo.toml +++ b/examples/extract/Cargo.toml @@ -9,7 +9,7 @@ path = "extract.rs" [dependencies] lychee-lib = { path = "../../lychee-lib", default-features = false } -tokio = { version = "1.42.0", features = ["full"] } +tokio = { version = "1.43.0", features = ["full"] } [features] email-check = ["lychee-lib/email-check"] diff --git a/examples/simple/Cargo.toml b/examples/simple/Cargo.toml index 42770c4af5..e343cc9a3d 100644 --- a/examples/simple/Cargo.toml +++ b/examples/simple/Cargo.toml @@ -9,7 +9,7 @@ path = "simple.rs" [dependencies] lychee-lib = { path = "../../lychee-lib", default-features = false } -tokio = { version = "1.42.0", features = ["full"] } +tokio = { version = "1.43.0", features = ["full"] } [features] email-check = ["lychee-lib/email-check"] diff --git a/lychee-bin/Cargo.toml b/lychee-bin/Cargo.toml index 254e2b2a96..079728e54b 100644 --- a/lychee-bin/Cargo.toml +++ b/lychee-bin/Cargo.toml @@ -16,9 +16,9 @@ version.workspace = true # requires all dependencies to have a version number. lychee-lib = { path = "../lychee-lib", version = "0.18.1", default-features = false } -anyhow = "1.0.95" +anyhow = "1.0.96" assert-json-diff = "2.0.2" -clap = { version = "4.5.23", features = ["env", "derive"] } +clap = { version = "4.5.30", features = ["env", "derive"] } console = "0.15.10" const_format = "0.2.34" csv = "1.3.1" @@ -29,10 +29,10 @@ headers = "0.4.0" http = "1.2.0" humantime = "2.1.0" humantime-serde = "1.1.1" -indicatif = "0.17.9" -log = "0.4.22" -once_cell = "1.20.2" -openssl-sys = { version = "0.9.104", optional = true } +indicatif = "0.17.11" +log = "0.4.26" +once_cell = "1.20.3" +openssl-sys = { version = "0.9.106", optional = true } pad = "0.1.6" regex = "1.11.1" reqwest = { version = "0.12.9", default-features = false, features = [ @@ -44,16 +44,16 @@ reqwest_cookie_store = "0.8.0" # See https://github.com/briansmith/ring/issues/1163 # This is necessary for the homebrew build # https://github.com/Homebrew/homebrew-core/pull/70216 -ring = "0.17.8" +ring = "0.17.11" secrecy = { version = "0.10.3", features = ["serde"] } -serde = { version = "1.0.217", features = ["derive"] } -serde_json = "1.0.134" -strum = { version = "0.26.3", features = ["derive"] } +serde = { version = "1.0.218", features = ["derive"] } +serde_json = "1.0.139" +strum = { version = "0.27.1", features = ["derive"] } supports-color = "3.0.2" -tabled = "0.17.0" -tokio = { version = "1.42.0", features = ["full"] } +tabled = "0.18.0" +tokio = { version = "1.43.0", features = ["full"] } tokio-stream = "0.1.17" -toml = "0.8.19" +toml = "0.8.20" url = "2.5.4" human-sort = "0.2.2" @@ -62,13 +62,13 @@ assert_cmd = "2.0.16" cookie_store = "0.21.1" predicates = "3.1.3" pretty_assertions = "1.4.1" -tempfile = "3.15.0" +tempfile = "3.17.1" tracing-subscriber = { version = "0.3.19", default-features = false, features = [ "fmt", "registry", "env-filter", ] } -uuid = { version = "1.11.0", features = ["v4"] } +uuid = { version = "1.14.0", features = ["v4"] } wiremock = "0.6.2" [features] diff --git a/lychee-lib/Cargo.toml b/lychee-lib/Cargo.toml index 9fa5518e9e..03ca9384c8 100644 --- a/lychee-lib/Cargo.toml +++ b/lychee-lib/Cargo.toml @@ -13,7 +13,7 @@ version.workspace = true [dependencies] async-stream = "0.3.6" -async-trait = "0.1.84" +async-trait = "0.1.86" cached = "0.54.0" check-if-email-exists = { version = "0.9.1", optional = true } cookie_store = "0.21.1" @@ -21,20 +21,20 @@ email_address = "0.2.9" futures = "0.3.31" glob = "0.3.2" headers = "0.4.0" -html5ever = "0.29.0" +html5ever = "0.29.1" html5gum = "0.7.0" http = "1.2.0" -hyper = "1.5.2" +hyper = "1.6.0" ignore = "0.4.23" ip_network = "0.4.1" linkify = "0.10.0" -log = "0.4.22" -octocrab = "0.42.1" -once_cell = "1.20.2" -openssl-sys = { version = "0.9.104", optional = true } +log = "0.4.26" +octocrab = "0.43.0" +once_cell = "1.20.3" +openssl-sys = { version = "0.9.106", optional = true } path-clean = "1.0.1" percent-encoding = "2.3.1" -pulldown-cmark = "0.12.2" +pulldown-cmark = "0.13.0" regex = "1.11.1" # Use trust-dns to avoid lookup failures on high concurrency # https://github.com/seanmonstar/reqwest/issues/296 @@ -48,14 +48,14 @@ reqwest_cookie_store = { version = "0.8.0", features = ["serde"] } # See https://github.com/briansmith/ring/issues/1163 # This is necessary for the homebrew build # https://github.com/Homebrew/homebrew-core/pull/70216 -ring = "0.17.8" +ring = "0.17.11" secrecy = "0.10.3" -serde = { version = "1.0.217", features = ["derive"] } +serde = { version = "1.0.218", features = ["derive"] } serde_with = "3.12.0" shellexpand = "3.1.0" -thiserror = "2.0.9" -tokio = { version = "1.42.0", features = ["full"] } -toml = "0.8.19" +thiserror = "2.0.11" +tokio = { version = "1.43.0", features = ["full"] } +toml = "0.8.20" typed-builder = "0.20.0" url = { version = "2.5.4", features = ["serde"] } @@ -65,11 +65,11 @@ features = ["runtime-tokio"] [dev-dependencies] doc-comment = "0.3.3" -tempfile = "3.15.0" +tempfile = "3.17.1" wiremock = "0.6.2" -serde_json = "1.0.134" +serde_json = "1.0.139" rstest = "0.24.0" -toml = "0.8.19" +toml = "0.8.20" pretty_assertions = "1.4.0" [features] diff --git a/lychee-lib/src/extract/markdown.rs b/lychee-lib/src/extract/markdown.rs index ff0bfefb2b..ba3d8ed2b9 100644 --- a/lychee-lib/src/extract/markdown.rs +++ b/lychee-lib/src/extract/markdown.rs @@ -30,6 +30,7 @@ pub(crate) fn extract_markdown(input: &str, include_verbatim: bool) -> Vec { // Note: Explicitly listing all link types below to make it easier to // change the behavior for a specific link type in the future. + #[allow(clippy::match_same_arms)] match link_type { // Inline link like `[foo](bar)` // This is the most common link type @@ -60,6 +61,17 @@ pub(crate) fn extract_markdown(input: &str, include_verbatim: bool) -> Vec` LinkType::Email => Some(extract_raw_uri_from_plaintext(&dest_url)), + // Wiki URL (`[[http://example.com]]`) + // This element is currently not matched and I'm not sure why. + // However, we keep it in here for future compatibility with + // markup5ever. + LinkType::WikiLink { has_pothole: _ } => { + Some(vec![RawUri { + text: dest_url.to_string(), + element: Some("a".to_string()), + attribute: Some("href".to_string()), + }]) + } } } @@ -373,4 +385,19 @@ $$ let uris = extract_markdown(markdown, true); assert_eq!(uris, expected); } + + #[test] + fn test_wiki_link() { + let markdown = r"[[https://example.com/destination]]"; + let expected = vec![RawUri { + text: "https://example.com/destination".to_string(), + // This should be a link element, but is currently matched as plaintext + element: None, + attribute: None, + // element: Some("a".to_string()), + // attribute: Some("href".to_string()), + }]; + let uris = extract_markdown(markdown, true); + assert_eq!(uris, expected); + } }