From 952e2ca2964e2a3ababd05f854bbdede6bdb60de Mon Sep 17 00:00:00 2001 From: Dietrich Date: Sun, 3 Oct 2021 07:53:18 +0200 Subject: [PATCH] Add demo mode + various fixes. --- Cargo.lock | 532 ++++++++++++++------------------- README.md | 23 ++ app/src/navigation.rs | 2 +- app/src/pages/list_links.rs | 21 +- app/src/pages/list_users.rs | 6 +- pslink/src/bin/pslink/cli.rs | 137 +++++++-- pslink/src/bin/pslink/main.rs | 2 +- pslink/src/bin/pslink/views.rs | 6 +- pslink/src/models.rs | 2 +- 9 files changed, 386 insertions(+), 345 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a48762b..0f51b34 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -69,9 +69,9 @@ dependencies = [ [[package]] name = "actix-http" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "452299e87817ae5673910e53c243484ca38be3828db819b6011736fc6982e874" +checksum = "5cb8958da437716f3f31b0e76f8daf36554128517d7df37ceba7df00f09622ee" dependencies = [ "actix-codec", "actix-connect", @@ -103,7 +103,7 @@ dependencies = [ "log", "mime", "percent-encoding", - "pin-project 1.0.7", + "pin-project 1.0.8", "rand 0.7.3", "regex", "serde", @@ -285,7 +285,7 @@ dependencies = [ "fxhash", "log", "mime", - "pin-project 1.0.7", + "pin-project 1.0.8", "regex", "serde", "serde_json", @@ -302,7 +302,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad26f77093333e0e7c6ffe54ebe3582d908a104e448723eec6d43d08b07143fb" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -316,16 +316,16 @@ dependencies = [ "actix-service", "actix-web", "derive_more", - "futures 0.3.15", + "futures 0.3.17", "mime_guess", "path-slash", ] [[package]] name = "addr2line" -version = "0.15.2" +version = "0.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7a2e47a1fbe209ee101dd6d61285226744c6c8d3c21c8dc878ba6cb9f467f3a" +checksum = "3e61f2b7f93d2c7d2b08263acaa4a363b3e276806c68af6134c44f523bf1aacd" dependencies = [ "gimli", ] @@ -442,9 +442,9 @@ dependencies = [ [[package]] name = "arc-swap" -version = "1.3.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e906254e445520903e7fc9da4f709886c84ae4bc4ddaf0e093188d66df4dc820" +checksum = "e6df5aef5c5830360ce5218cecb8f018af3438af5686ae945094affc86fdec63" [[package]] name = "argonautica" @@ -469,17 +469,11 @@ dependencies = [ "tempdir", ] -[[package]] -name = "arrayvec" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" - [[package]] name = "assert_cmd" -version = "1.0.7" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d20831bd004dda4c7c372c19cdabff369f794a95e955b3f13fe460e3e1ae95f" +checksum = "c98233c6673d8601ab23e77eb38f999c51100d46c5703b17288c57fddf3a1ffe" dependencies = [ "bstr", "doc-comment", @@ -491,11 +485,11 @@ dependencies = [ [[package]] name = "async-trait" -version = "0.1.50" +version = "0.1.51" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b98e84bbb4cbcdd97da190ba0c58a1bb0de2c1fdf67d159e192ed766aeca722" +checksum = "44318e776df68115a881de9a8fd1b9e53368d7a4a5ce4cc48517da3393233a5e" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -558,9 +552,9 @@ dependencies = [ [[package]] name = "backtrace" -version = "0.3.60" +version = "0.3.61" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7815ea54e4d821e791162e078acbebfd6d8c8939cd559c9335dceb1c8ca7282" +checksum = "e7a905d892734eea339e896738c14b9afce22b5318f64b951e70bf3844419b01" dependencies = [ "addr2line", "cc", @@ -622,21 +616,9 @@ dependencies = [ [[package]] name = "bitflags" -version = "1.2.1" +version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" - -[[package]] -name = "bitvec" -version = "0.19.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8942c8d352ae1838c9dda0b0ca2ab657696ef2232a20147cf1b30ae1a9cb4321" -dependencies = [ - "funty", - "radium", - "tap", - "wyz", -] +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "block-buffer" @@ -669,9 +651,9 @@ dependencies = [ [[package]] name = "bstr" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90682c8d613ad3373e66de8c6411e0ae2ab2571e879d2efbf73558cc66f21279" +checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223" dependencies = [ "lazy_static", "memchr", @@ -695,15 +677,15 @@ checksum = "b4ae4235e6dac0694637c763029ecea1a2ec9e4e06ec2729bd21ba4d9c863eb7" [[package]] name = "bumpalo" -version = "3.7.0" +version = "3.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c59e7af012c713f529e7a3ee57ce9b31ddd858d4b512923602f74608b009631" +checksum = "d9df67f7bf9ef8498769f994239c45613ef0c5899415fb58e9add412d2c1a538" [[package]] name = "bytemuck" -version = "1.7.0" +version = "1.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9966d2ab714d0f785dbac0a0396251a35280aeb42413281617d0209ab4898435" +checksum = "72957246c41db82b8ef88a5486143830adeb8227ef9837740bdec67724cf2c5b" [[package]] name = "byteorder" @@ -719,9 +701,9 @@ checksum = "0e4cec68f03f32e44924783795810fa50a7035d8c8ebe78580ad7e6c703fba38" [[package]] name = "bytes" -version = "1.0.1" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b700ce4376041dcd0a327fd0097c41095743c4c8af8887265942faf1100bd040" +checksum = "c4872d67bab6358e59559027aa3b9157c53d9358c51423c17554809a8858e0f8" [[package]] name = "bytestring" @@ -729,14 +711,14 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "90706ba19e97b90786e19dc0d5e2abd80008d99d4c0c5d1ad0b5e72cec7c494d" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", ] [[package]] name = "cargo-platform" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0226944a63d1bf35a3b5f948dd7c59e263db83695c9e8bffc4037de02e30f1d7" +checksum = "cbdb825da8a5df079a43676dbe042702f1707b1109f713a01420fbb4cc71fa27" dependencies = [ "serde", ] @@ -756,9 +738,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.69" +version = "1.0.70" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e70cc2f62c6ce1868963827bd677764c62d07c3d9a3e1fb1177ee1a9ab199eb2" +checksum = "d26a6ce4b6a484fa3edb70f7efa6fc430fd2b87285fe8b84304fd0936faa0dc0" dependencies = [ "jobserver", ] @@ -933,9 +915,9 @@ checksum = "ea221b5284a47e40033bf9b66f35f984ec0ea2931eb03505246cd27a963f981b" [[package]] name = "cpufeatures" -version = "0.1.5" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "66c99696f6c9dd7f35d486b9d04d7e6e202aa3e8c40d553f2fdf5e7e0c6a71ef" +checksum = "95059428f66df56b63431fdb4e1947ed2190586af5c5a8a8b71122bdf5a7f469" dependencies = [ "libc", ] @@ -976,9 +958,9 @@ dependencies = [ [[package]] name = "crossbeam-deque" -version = "0.8.0" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94af6efb46fef72616855b036a624cf27ba656ffc9be1b9a3c931cfc7749a9a9" +checksum = "6455c0ca19f0d2fbf751b908d5c55c1f5cbc65e03c4225427254b46890bdde1e" dependencies = [ "cfg-if 1.0.0", "crossbeam-epoch", @@ -1020,9 +1002,9 @@ dependencies = [ [[package]] name = "crypto-mac" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4857fd85a0c34b3c3297875b747c1e02e06b6a0ea32dd892d8192b9ce0813ea6" +checksum = "bff07008ec701e8028e2ceb8f83f0e4274ee62bd2dbdc4fefff2e9a91824081a" dependencies = [ "generic-array", "subtle", @@ -1063,7 +1045,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "40eebddd2156ce1bb37b20bbe5151340a31828b1f2d22ba4141f3531710e38df" dependencies = [ "convert_case", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "rustc_version 0.3.3", "syn", @@ -1133,7 +1115,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c5f0096a91d210159eceb2ff5e1c4da18388a170e1e3ce948aac9c8fdbbf595" dependencies = [ "heck", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -1154,7 +1136,7 @@ version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "84278eae0af6e34ff6c1db44c11634a694aafac559ff3080e4db4e4ac35907aa" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -1188,7 +1170,7 @@ version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "aa4da3c766cd7a0db8242e326e9e4e081edd567072893ed320008189715366a4" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", "synstructure", @@ -1196,9 +1178,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.0.20" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd3aec53de10fe96d7d8c565eb17f2c687bb5518a2ec453b5b1252964526abe0" +checksum = "1e6988e897c1c9c485f43b47a529cef42fde0547f9d8d41a7062518f1d8fc53f" dependencies = [ "cfg-if 1.0.0", "crc32fast", @@ -1208,9 +1190,9 @@ dependencies = [ [[package]] name = "float-cmp" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1267f4ac4f343772758f7b1bdcbe767c218bbab93bb432acbf5162bbf85a6c4" +checksum = "98de4bbd547a563b716d8dfa9aad1cb19bfab00f4fa09a6a4ed21dbcf44ce9c4" dependencies = [ "num-traits", ] @@ -1300,7 +1282,7 @@ dependencies = [ "flume", "ignore", "once_cell", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", "unic-langid", @@ -1331,15 +1313,15 @@ dependencies = [ [[package]] name = "flume" -version = "0.10.7" +version = "0.10.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddad16e8529759736a9ce4cdf078ed702e45d3c5b0474a1c65f5149e9fa7f1eb" +checksum = "24c3fd473b3a903a62609e413ed7538f99e10b665ecb502b5e481a95283f8ab4" dependencies = [ "futures-core", "futures-sink", "nanorand", - "pin-project 1.0.7", - "spinning_top", + "pin-project 1.0.8", + "spin 0.9.2", ] [[package]] @@ -1395,12 +1377,6 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" -[[package]] -name = "funty" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed34cd105917e91daa4da6b3728c47b068749d6a62c59811f06ed2ac71d9da7" - [[package]] name = "futures" version = "0.1.31" @@ -1409,9 +1385,9 @@ checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678" [[package]] name = "futures" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7e43a803dae2fa37c1f6a8fe121e1f7bf9548b4dfc0522a42f34145dadfc27" +checksum = "a12aa0eb539080d55c3f2d45a67c3b58b6b0773c1a3ca2dfec66d58c97fd66ca" dependencies = [ "futures-channel", "futures-core", @@ -1424,9 +1400,9 @@ dependencies = [ [[package]] name = "futures-channel" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e682a68b29a882df0545c143dc3646daefe80ba479bcdede94d5a703de2871e2" +checksum = "5da6ba8c3bb3c165d3c7319fc1cc8304facf1fb8db99c5de877183c08a273888" dependencies = [ "futures-core", "futures-sink", @@ -1434,9 +1410,9 @@ dependencies = [ [[package]] name = "futures-core" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0402f765d8a89a26043b889b26ce3c4679d268fa6bb22cd7c6aad98340e179d1" +checksum = "88d1c26957f23603395cd326b0ffe64124b818f4449552f960d815cfba83a53d" [[package]] name = "futures-cpupool" @@ -1450,9 +1426,9 @@ dependencies = [ [[package]] name = "futures-executor" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "badaa6a909fac9e7236d0620a2f57f7664640c56575b71a7552fbd68deafab79" +checksum = "45025be030969d763025784f7f355043dc6bc74093e4ecc5000ca4dc50d8745c" dependencies = [ "futures-core", "futures-task", @@ -1461,40 +1437,40 @@ dependencies = [ [[package]] name = "futures-io" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acc499defb3b348f8d8f3f66415835a9131856ff7714bf10dadfc4ec4bdb29a1" +checksum = "522de2a0fe3e380f1bc577ba0474108faf3f6b18321dbf60b3b9c39a75073377" [[package]] name = "futures-macro" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4c40298486cdf52cc00cd6d6987892ba502c7656a16a4192a9992b1ccedd121" +checksum = "18e4a4b95cea4b4ccbcf1c5675ca7c4ee4e9e75eb79944d07defde18068f79bb" dependencies = [ "autocfg 1.0.1", "proc-macro-hack", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] [[package]] name = "futures-sink" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a57bead0ceff0d6dde8f465ecd96c9338121bb7717d3e7b108059531870c4282" +checksum = "36ea153c13024fe480590b3e3d4cad89a0cfacecc24577b68f86c6ced9c2bc11" [[package]] name = "futures-task" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a16bef9fc1a4dddb5bee51c989e3fbba26569cbb0e31f5b303c184e3dd33dae" +checksum = "1d3d00f4eddb73e498a54394f228cd55853bdf059259e8e7bc6e69d408892e99" [[package]] name = "futures-util" -version = "0.3.15" +version = "0.3.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "feb5c238d27e2bf94ffdfd27b2c29e3df4a68c4193bb6427384259e2bf191967" +checksum = "36568465210a3a6ee45e1f165136d68671471a501e632e9a98d96872222b5481" dependencies = [ "autocfg 1.0.1", "futures-channel", @@ -1587,9 +1563,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.24.0" +version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e4075386626662786ddb0ec9081e7c7eeb1ba31951f447ca780ef9f5d568189" +checksum = "f0a01e0497841a3b2db4f8afa483cce65f7e96a3498bd6c541734792aeac8fe7" [[package]] name = "glob" @@ -1757,11 +1733,11 @@ dependencies = [ [[package]] name = "http" -version = "0.2.4" +version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "527e8c9ac747e28542699a951517aa9a6945af506cd1f2e1b53a576c17b6cc11" +checksum = "1323096b05d41827dadeaee54c9981958c0f94e670bc94ed80037d1a7b8b186b" dependencies = [ - "bytes 1.0.1", + "bytes 1.1.0", "fnv", "itoa", ] @@ -1778,9 +1754,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.4.1" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3a87b616e37e93c22fb19bcd386f02f3af5ea98a25670ad0fce773de23c5e68" +checksum = "acd94fdbe1d4ff688b67b04eee2e17bd50995534a61539e45adfefb45e5e5503" [[package]] name = "httpdate" @@ -1813,7 +1789,7 @@ dependencies = [ "httparse", "httpdate", "itoa", - "pin-project 1.0.7", + "pin-project 1.0.8", "socket2", "tokio", "tower-service", @@ -1894,9 +1870,9 @@ dependencies = [ [[package]] name = "instant" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bee0328b1209d157ef001c94dd85b4f8f64139adb0eac2659f4b08382b2f474d" +checksum = "716d3d89f35ac6a34fd0eed635395f4c3b76fa889338a4632e5231a8684216bd" dependencies = [ "cfg-if 1.0.0", ] @@ -1965,15 +1941,15 @@ dependencies = [ [[package]] name = "itoa" -version = "0.4.7" +version = "0.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd25036021b0de88a0aff6b850051563c6516d0bf53f8638938edbb9de732736" +checksum = "b71991ff56294aa922b450139ee08b3bfc70982c6b2c7562771375cf73542dd4" [[package]] name = "jobserver" -version = "0.1.22" +version = "0.1.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "972f5ae5d1cb9c6ae417789196c803205313edde988685da5e3aae0827b9e7fd" +checksum = "af25a77299a7f711a01975c35a6a424eb6862092cc2d6c72c4ed6cbc56dfc1fa" dependencies = [ "libc", ] @@ -1989,9 +1965,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.51" +version = "0.3.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83bdfbace3a0e81a4253f73b49e960b053e396a11012cbd49b9b74d6a2b67062" +checksum = "7cc9ffccd38c451a86bf13657df244e9c3f37493cce8e5e21e940963777acc84" dependencies = [ "wasm-bindgen", ] @@ -2018,24 +1994,11 @@ version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" -[[package]] -name = "lexical-core" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6607c62aa161d23d17a9072cc5da0be67cdfc89d3afb1e8d9c842bebc2525ffe" -dependencies = [ - "arrayvec", - "bitflags", - "cfg-if 1.0.0", - "ryu", - "static_assertions", -] - [[package]] name = "libc" -version = "0.2.98" +version = "0.2.103" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "320cfe77175da3a483efed4bc0adc1968ca050b098ce4f2f1c13a56626128790" +checksum = "dd8f7255a17a627354f321ef0055d63b898c6fb27eff628af4d1b66b7331edf6" [[package]] name = "libloading" @@ -2066,9 +2029,9 @@ checksum = "7fb9b38af92608140b86b693604b9ffcc5824240a484d1ecd4795bacb2fe88f3" [[package]] name = "lock_api" -version = "0.4.4" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0382880606dff6d15c9476c416d18690b72742aa7b605bb6dd6ec9030fbf07eb" +checksum = "712a4d093c9976e24e7dbca41db895dabcbac38eb5f4045393d17a95bdfb1109" dependencies = [ "scopeguard 1.1.0", ] @@ -2091,12 +2054,6 @@ dependencies = [ "linked-hash-map", ] -[[package]] -name = "maplit" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d" - [[package]] name = "match_cfg" version = "0.1.0" @@ -2114,15 +2071,15 @@ dependencies = [ [[package]] name = "matches" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08" +checksum = "a3e378b66a060d48947b590737b30a1be76706c8dd7b8ba0f2fe3989c68a853f" [[package]] name = "memchr" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc" +checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" [[package]] name = "memoffset" @@ -2149,6 +2106,12 @@ dependencies = [ "unicase", ] +[[package]] +name = "minimal-lexical" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c835948974f68e0bd58636fc6c5b1fbff7b297e3046f11b3b3c18bbac012c6d" + [[package]] name = "miniz_oxide" version = "0.3.7" @@ -2212,18 +2175,18 @@ dependencies = [ [[package]] name = "nanorand" -version = "0.5.2" +version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac1378b66f7c93a1c0f8464a19bf47df8795083842e5090f4b7305973d5a22d0" +checksum = "729eb334247daa1803e0a094d0a5c55711b85571179f5ec6e53eccfdf7008958" dependencies = [ "getrandom 0.2.3", ] [[package]] name = "native-tls" -version = "0.2.7" +version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8d96b2e1c8da3957d58100b09f102c6d9cfdfced01b7ec5a8974044bb09dbd4" +checksum = "48ba9f7719b5a0f42f338907614285fb5fd70e53858141f69898a1fb7203b24d" dependencies = [ "lazy_static", "libc", @@ -2260,14 +2223,12 @@ dependencies = [ [[package]] name = "nom" -version = "6.1.2" +version = "7.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7413f999671bd4745a7b624bd370a569fb6bc574b23c83a3c5ed2e453f3d5e2" +checksum = "7ffd9d26838a953b4af82cbeb9f1592c6798916983959be223a7124e992742c1" dependencies = [ - "bitvec", - "funty", - "lexical-core", "memchr", + "minimal-lexical", "version_check 0.9.3", ] @@ -2330,9 +2291,9 @@ dependencies = [ [[package]] name = "object" -version = "0.25.3" +version = "0.26.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a38f2be3697a57b4060074ff41b44c16870d916ad7877c17696e063257482bc7" +checksum = "39f37e50073ccad23b6d09bcb5b263f4e76d3bb6038e4a3c08e52162ffa8abc2" dependencies = [ "memchr", ] @@ -2351,9 +2312,9 @@ checksum = "624a8340c38c1b80fd549087862da4ba43e08858af025b236e509b6649fc13d5" [[package]] name = "openssl" -version = "0.10.35" +version = "0.10.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "549430950c79ae24e6d02e0b7404534ecf311d94cc9f861e9e4020187d13d885" +checksum = "8d9facdb76fec0b73c406f125d44d86fdad818d66fef0531eec9233ca425ff4a" dependencies = [ "bitflags", "cfg-if 1.0.0", @@ -2371,9 +2332,9 @@ checksum = "28988d872ab76095a6e6ac88d99b54fd267702734fd7ffe610ca27f533ddb95a" [[package]] name = "openssl-sys" -version = "0.9.65" +version = "0.9.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a7907e3bfa08bb85105209cdfcb6c63d109f8f6c1ed6ca318fff5c1853fbc1d" +checksum = "69df2d8dfc6ce3aaf44b40dec6f487d5a886516cf6879c49e98e0710f310a058" dependencies = [ "autocfg 1.0.1", "cc", @@ -2389,11 +2350,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b91cea1dfd50064e52db033179952d18c770cbc5dfefc8eba45d619357ba3914" dependencies = [ "async-trait", - "futures 0.3.15", + "futures 0.3.17", "js-sys", "lazy_static", "percent-encoding", - "pin-project 1.0.7", + "pin-project 1.0.8", "rand 0.8.4", "thiserror", ] @@ -2406,11 +2367,11 @@ checksum = "492848ff47f11b7f9de0443b404e2c5775f695e1af6b7076ca25f999581d547a" dependencies = [ "async-trait", "crossbeam-channel", - "futures 0.3.15", + "futures 0.3.17", "js-sys", "lazy_static", "percent-encoding", - "pin-project 1.0.7", + "pin-project 1.0.8", "rand 0.8.4", "thiserror", ] @@ -2465,7 +2426,7 @@ checksum = "129943a960e6a08c7e70ca5a09f113c273fe7f10ae8420992c78293e3dffdf65" dependencies = [ "Inflector", "proc-macro-error", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -2478,16 +2439,16 @@ checksum = "03f2cb802b5bdfdf52f1ffa0b54ce105e4d346e91990dd571f86c91321ad49e2" dependencies = [ "Inflector", "proc-macro-error", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] [[package]] name = "parking_lot" -version = "0.11.1" +version = "0.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d7744ac029df22dca6284efe4e898991d28e3085c706c972bcd7da4a27a15eb" +checksum = "7d17b78036a60663b797adeaee46f5c9dfebb86948d1255007a1d6be0271ff99" dependencies = [ "instant", "lock_api", @@ -2496,9 +2457,9 @@ dependencies = [ [[package]] name = "parking_lot_core" -version = "0.8.3" +version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa7a782938e745763fe6907fc6ba86946d72f49fe7e21de074e08128a99fb018" +checksum = "d76e8e1493bcac0d2766c42737f34458f1c8c50c0d23bcb24ea953affb273216" dependencies = [ "cfg-if 1.0.0", "instant", @@ -2546,11 +2507,11 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.0.7" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7509cc106041c40a4518d2af7a61530e1eed0e6285296a3d8c5472806ccc4a4" +checksum = "576bc800220cc65dac09e99e97b08b358cfab6e17078de8dc5fee223bd2d0c08" dependencies = [ - "pin-project-internal 1.0.7", + "pin-project-internal 1.0.8", ] [[package]] @@ -2559,18 +2520,18 @@ version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3be26700300be6d9d23264c73211d8190e755b6b5ca7a1b28230025511b52a5e" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] [[package]] name = "pin-project-internal" -version = "1.0.7" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "48c950132583b500556b1efd71d45b319029f2b71518d979fcc208e16b42426f" +checksum = "6e8fe8163d14ce7f0cdac2e040116f22eac817edabff0be91e8aff7e9accf389" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -2595,9 +2556,9 @@ checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" [[package]] name = "pkg-config" -version = "0.3.19" +version = "0.3.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3831453b3449ceb48b6d9c7ad7c96d5ea673e9b470a1dc578c2ce6521230884c" +checksum = "7c9b1041b4387893b91ee6746cddfc28516aff326a3519fb2adf820932c5e6cb" [[package]] name = "png" @@ -2630,9 +2591,9 @@ checksum = "ac74c624d6b2d21f425f752262f42188365d7b8ff1aff74c82e45136510a4857" [[package]] name = "predicates" -version = "2.0.0" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6e46ca79eb4e21e2ec14430340c71250ab69332abf85521c95d3a8bc336aa76" +checksum = "c143348f141cc87aab5b950021bac6145d0e5ae754b0591de23244cee42c9308" dependencies = [ "difflib", "float-cmp", @@ -2650,9 +2611,9 @@ checksum = "57e35a3326b75e49aa85f5dc6ec15b41108cf5aee58eabb1f274dd18b73c2451" [[package]] name = "predicates-tree" -version = "1.0.2" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15f553275e5721409451eb85e15fd9a860a6e5ab4496eb215987502b5f5391f2" +checksum = "d7dd0fd014130206c9352efbdc92be592751b2b9274dff685348341082c6ea3d" dependencies = [ "predicates-core", "treeline", @@ -2665,7 +2626,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" dependencies = [ "proc-macro-error-attr", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", "version_check 0.9.3", @@ -2677,7 +2638,7 @@ version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "version_check 0.9.3", ] @@ -2705,9 +2666,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.27" +version = "1.0.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0d8caf72986c1a598726adc988bb5984792ef84f5ee5aa50209145ee8077038" +checksum = "b9f5105d4fdaab20335ca9565e106a5d9b82b6219b5ba735731124ac6711d23d" dependencies = [ "unicode-xid 0.2.2", ] @@ -2844,15 +2805,9 @@ version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c3d0b9745dc2debf507c8422de05d7226cc1f0644216dfdfead988f9b1ab32a7" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", ] -[[package]] -name = "radium" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "941ba9d78d8e2f7ce474c015eea4d9c6d25b6a3327f9832ee29a4de27f91bbb8" - [[package]] name = "rand" version = "0.4.6" @@ -3099,9 +3054,9 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.2.9" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ab49abadf3f9e1c4bc499e8845e152ad87d2ad2d30371841171169e9d75feee" +checksum = "8383f39639269cde97d255a32bdb68c047337295414940c68bdd30c2e13203ff" dependencies = [ "bitflags", ] @@ -3199,7 +3154,7 @@ dependencies = [ "cc", "libc", "once_cell", - "spin", + "spin 0.5.2", "untrusted", "web-sys", "winapi 0.3.9", @@ -3217,9 +3172,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.20" +version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dead70b0b5e03e9c814bcb6b01e03e68f7c57a80aa48c72ec92152ab3e818d49" +checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" [[package]] name = "rustc-hash" @@ -3313,9 +3268,9 @@ dependencies = [ [[package]] name = "security-framework" -version = "2.3.1" +version = "2.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23a2ac85147a3a11d77ecf1bc7166ec0b92febfa4461c37944e180f319ece467" +checksum = "525bc1abfda2e1998d152c45cf13e696f76d0a4972310b22fac1658b05df7c87" dependencies = [ "bitflags", "core-foundation", @@ -3326,9 +3281,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.3.0" +version = "2.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e4effb91b4b8b6fb7732e670b6cee160278ff8e6bf485c7805d9e319d76e284" +checksum = "a9dd14d83160b528b7bfd66439110573efcfbe281b17fc2ca9f39f550d619c7e" dependencies = [ "core-foundation-sys", "libc", @@ -3344,7 +3299,7 @@ dependencies = [ "cookie", "dbg", "enclose", - "futures 0.3.15", + "futures 0.3.17", "gloo-file", "gloo-timers", "indexmap", @@ -3396,29 +3351,29 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.126" +version = "1.0.130" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec7505abeacaec74ae4778d9d9328fe5a5d04253220a85c4ee022239fc996d03" +checksum = "f12d06de37cf59146fbdecab66aa99f9fe4f78722e3607577a5375d66bd0c913" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.126" +version = "1.0.130" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "963a7dbc9895aeac7ac90e74f34a5d5261828f79df35cbed41e10189d3804d43" +checksum = "d7bc1a1ab1961464eae040d96713baa5a724a8152c1222492465b54322ec508b" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] [[package]] name = "serde_json" -version = "1.0.64" +version = "1.0.68" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "799e97dc9fdae36a5c8b8f2cae9ce2ee9fdce2058c57a93e6099d919fd982f79" +checksum = "0f690853975602e1bfe1ccbf50504d67174e3bcf340f23b5ea9992e0587a52d8" dependencies = [ "indexmap", "itoa", @@ -3440,9 +3395,9 @@ dependencies = [ [[package]] name = "sha-1" -version = "0.9.6" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c4cfa741c5832d0ef7fab46cabed29c2aae926db0b11bb2069edd8db5e64e16" +checksum = "99cd6713db3cf16b6c84e06321e049a9b9f699826e16096d23bbcc44d15d51a6" dependencies = [ "block-buffer", "cfg-if 1.0.0", @@ -3459,9 +3414,9 @@ checksum = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d" [[package]] name = "sha2" -version = "0.9.5" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b362ae5752fd2137731f9fa25fd4d9058af34666ca1966fb969119cc35719f12" +checksum = "b69f9a4c9740d74c5baa3fd2e547f9525fa8088a8a958e0ca2409a514e33f5fa" dependencies = [ "block-buffer", "cfg-if 1.0.0", @@ -3472,9 +3427,9 @@ dependencies = [ [[package]] name = "sharded-slab" -version = "0.1.1" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79c719719ee05df97490f80a45acfc99e5a30ce98a1e4fb67aee422745ae14e3" +checksum = "740223c51853f3145fe7c90360d2d4232f2b62e3449489c207eccde818979982" dependencies = [ "lazy_static", ] @@ -3490,9 +3445,9 @@ dependencies = [ [[package]] name = "slab" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f173ac3d1a7e3b28003f40de0b5ce7fe2710f9b9dc3fc38664cebee46b3b6527" +checksum = "c307a32c1c5c437f38c7fd45d753050587732ba8628319fbdf12a7e289ccc590" [[package]] name = "smallvec" @@ -3516,7 +3471,7 @@ version = "0.6.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1508efa03c362e23817f96cde18abed596a25219a8b2c66e8db33c03543d315b" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -3539,24 +3494,22 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6e63cff320ae2c57904679ba7cb63280a3dc4613885beafb148ee7bf9aa9042d" [[package]] -name = "spinning_top" -version = "0.2.4" +name = "spin" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75adad84ee84b521fb2cca2d4fd0f1dab1d8d026bda3c5bea4ca63b5f9f9293c" +checksum = "511254be0c5bcf062b019a6c89c01a664aa359ded62f78aa72c6fc137c0590e5" dependencies = [ "lock_api", ] [[package]] name = "sqlformat" -version = "0.1.6" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d86e3c77ff882a828346ba401a7ef4b8e440df804491c6064fe8295765de71c" +checksum = "b4b7922be017ee70900be125523f38bdd644f4f06a1b16e8fa5a8ee8c34bffd4" dependencies = [ - "lazy_static", - "maplit", - "nom 6.1.2", - "regex", + "itertools", + "nom 7.0.0", "unicode_categories", ] @@ -3623,11 +3576,11 @@ dependencies = [ "cargo_metadata", "dotenv", "either", - "futures 0.3.15", + "futures 0.3.17", "heck", "hex", "lazy_static", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "serde", "serde_json", @@ -3666,12 +3619,6 @@ dependencies = [ "version_check 0.9.3", ] -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - [[package]] name = "stdweb" version = "0.4.20" @@ -3692,7 +3639,7 @@ version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c87a60a40fccc84bef0652345bbbbbe20a605bf5d0ce81719fc476f5c03b50ef" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "serde", "serde_derive", @@ -3706,7 +3653,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "58fa5ff6ad0d98d1ffa8cb115892b6e69d67799f6763e162a1c9db421dc22e11" dependencies = [ "base-x", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "serde", "serde_derive", @@ -3750,7 +3697,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d06aaeeee809dbc59eb4556183dd927df67db1540de5be8d3ec0b6636358a5ec" dependencies = [ "heck", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -3763,11 +3710,11 @@ checksum = "6bdef32e8150c2a081110b42772ffe7d7c9032b606bc226c8260fd97e0976601" [[package]] name = "syn" -version = "1.0.73" +version = "1.0.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f71489ff30030d2ae598524f61326b902466f72a0fb1a8564c001cc63425bcc7" +checksum = "5239bc68e0fef57495900cfea4e8dc75596d9a319d7e16b1e0a440d24e6fe0a0" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "unicode-xid 0.2.2", ] @@ -3778,18 +3725,12 @@ version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "474aaa926faa1603c40b7885a9eaea29b444d1cb2850cb7c0e37bb1a4182f4fa" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", "unicode-xid 0.2.2", ] -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - [[package]] name = "tempdir" version = "0.3.7" @@ -3840,20 +3781,20 @@ dependencies = [ [[package]] name = "thiserror" -version = "1.0.26" +version = "1.0.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93119e4feac1cbe6c798c34d3a53ea0026b0b1de6a120deef895137c0529bfe2" +checksum = "602eca064b2d83369e2b2f34b09c70b605402801927c65c11071ac911d299b88" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.26" +version = "1.0.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "060d69a0afe7796bf42e9e2ff91f5ee691fb15c53d38b4b62a9a53eb23164745" +checksum = "bad553cc2c78e8de258400763a647e80e6d1b31ee237275d756f6836d204494c" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -3942,7 +3883,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fd3c141a1b43194f3f56a1411225df8646c55781d5f26db825b3d98507eb482f" dependencies = [ "proc-macro-hack", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "standback", "syn", @@ -3956,9 +3897,9 @@ checksum = "29738eedb4388d9ea620eeab9384884fc3f06f586a2eddb56bedc5885126c7c1" [[package]] name = "tinyvec" -version = "1.2.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b5220f05bb7de7f3f53c7c065e1199b3172696fe2db9f9c4d8ad9b4ee74c342" +checksum = "f83b2a3d4d9091d0abd7eba4dc2710b1718583bd4d8992e2190720ea38f391f7" dependencies = [ "tinyvec_macros", ] @@ -3998,7 +3939,7 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e44da00bfc73a25f814cd8d7e57a68a5c31b74b3152a0a1d1f590c97ed06265a" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -4047,9 +3988,9 @@ checksum = "360dfd1d6d30e05fda32ace2c8c70e9c0a9da713275777f5a4dbb8a1893930c6" [[package]] name = "tracing" -version = "0.1.26" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09adeb8c97449311ccd28a427f96fb563e7fd31aabf994189879d9da2394b89d" +checksum = "84f96e095c0c82419687c20ddf5cb3eadb61f4e1405923c9dc8e53a1adacbda8" dependencies = [ "cfg-if 1.0.0", "log", @@ -4065,7 +4006,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cc36fc2f840643e49d220d07cd7ca81bc31c7f6df25f164d4257971533dab354" dependencies = [ "actix-web", - "futures 0.3.15", + "futures 0.3.17", "tracing", "tracing-futures", "uuid", @@ -4073,20 +4014,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.15" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c42e6fa53307c8a17e4ccd4dc81cf5ec38db9209f59b222210375b54ee40d1e2" +checksum = "98863d0dd09fa59a1b79c6750ad80dbda6b75f4e71c437a6a1a8cb91a8bcbd77" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] [[package]] name = "tracing-core" -version = "0.1.18" +version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9ff14f98b1a4b289c6248a023c1c2fa1491062964e9fed67ab29c4e4da4a052" +checksum = "46125608c26121c81b0c6d693eab5a420e416da7e43c426d2e8f7df8da8a3acf" dependencies = [ "lazy_static", ] @@ -4097,7 +4038,7 @@ version = "0.2.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "97d095ae15e245a057c8e8451bab9b3ee1e1f68e9ba2b4fbc18d0ac5237835f2" dependencies = [ - "pin-project 1.0.7", + "pin-project 1.0.8", "tracing", ] @@ -4137,9 +4078,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.2.19" +version = "0.2.24" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab69019741fca4d98be3c62d2b75254528b5432233fd8a4d2739fec20278de48" +checksum = "fdd0568dbfe3baf7048b7908d2b32bca0d81cd56bec6d2a8f894b01d74f86be3" dependencies = [ "ansi_term 0.12.1", "chrono", @@ -4172,7 +4113,7 @@ dependencies = [ "async-trait", "cfg-if 1.0.0", "enum-as-inner", - "futures 0.3.15", + "futures 0.3.17", "idna", "lazy_static", "log", @@ -4190,7 +4131,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "710f593b371175db53a26d0b38ed2978fafb9e9e8d3868b1acd753ea18df0ceb" dependencies = [ "cfg-if 0.1.10", - "futures 0.3.15", + "futures 0.3.17", "ipconfig", "lazy_static", "log", @@ -4219,9 +4160,9 @@ dependencies = [ [[package]] name = "typenum" -version = "1.13.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "879f6906492a7cd215bfa4cf595b600146ccfac0c79bcbd1f3000162af5e8b06" +checksum = "b63708a265f51345575b27fe43f9500ad611579e764c79edbc2037b1121959ec" [[package]] name = "ucd-trie" @@ -4283,12 +4224,9 @@ dependencies = [ [[package]] name = "unicode-bidi" -version = "0.3.5" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eeb8be209bb1c96b7c177c7420d26e04eccacb0eeae6b980e35fcb74678107e0" -dependencies = [ - "matches", -] +checksum = "246f4c42e67e7a4e3c6106ff716a5d067d4132a642840b242e357e468a2a0085" [[package]] name = "unicode-normalization" @@ -4307,9 +4245,9 @@ checksum = "8895849a949e7845e06bd6dc1aa51731a103c42707010a5b591c0038fb73385b" [[package]] name = "unicode-width" -version = "0.1.8" +version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9337591893a19b88d8d87f2cec1e73fad5cdfd10e5a6f349f498ad6ea2ffb1e3" +checksum = "3ed742d4ea2bd1176e236172c8429aaf54486e7ac098db29ffe6529e0ce50973" [[package]] name = "unicode-xid" @@ -4331,9 +4269,9 @@ checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" [[package]] name = "universal-hash" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8326b2c654932e3e4f9196e69d08fdf7cfd718e1dc6f66b347e6024a0c961402" +checksum = "9f214e8f697e925001e66ec2c6e37a4ef93f0f78c2eed7814394e10c62025b05" dependencies = [ "generic-array", "subtle", @@ -4383,7 +4321,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c860ad1273f4eee7006cee05db20c9e60e5d24cba024a32e1094aa8e574f3668" dependencies = [ "nom 4.2.3", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", ] @@ -4466,9 +4404,9 @@ checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" [[package]] name = "wasm-bindgen" -version = "0.2.74" +version = "0.2.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d54ee1d4ed486f78874278e63e4069fc1ab9f6a18ca492076ffb90c5eb2997fd" +checksum = "632f73e236b219150ea279196e54e610f5dbafa5d61786303d4da54f84e47fce" dependencies = [ "cfg-if 1.0.0", "serde", @@ -4478,14 +4416,14 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.74" +version = "0.2.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b33f6a0694ccfea53d94db8b2ed1c3a8a4c86dd936b13b9f0a15ec4a451b900" +checksum = "a317bf8f9fba2476b4b2c85ef4c4af8ff39c3c7f0cdfeed4f82c34a880aa837b" dependencies = [ "bumpalo", "lazy_static", "log", - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", "wasm-bindgen-shared", @@ -4493,9 +4431,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.24" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fba7978c679d53ce2d0ac80c8c175840feb849a161664365d1287b41f2e67f1" +checksum = "8e8d7523cb1f2a4c96c1317ca690031b714a51cc14e05f712446691f413f5d39" dependencies = [ "cfg-if 1.0.0", "js-sys", @@ -4505,9 +4443,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.74" +version = "0.2.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "088169ca61430fe1e58b8096c24975251700e7b1f6fd91cc9d59b04fb9b18bd4" +checksum = "d56146e7c495528bf6587663bea13a8eb588d39b36b679d83972e1a2dbbdacf9" dependencies = [ "quote 1.0.9", "wasm-bindgen-macro-support", @@ -4515,11 +4453,11 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.74" +version = "0.2.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be2241542ff3d9f241f5e2cb6dd09b37efe786df8851c54957683a49f0987a97" +checksum = "7803e0eea25835f8abdc585cd3021b3deb11543c6fe226dcd30b228857c5c5ab" dependencies = [ - "proc-macro2 1.0.27", + "proc-macro2 1.0.29", "quote 1.0.9", "syn", "wasm-bindgen-backend", @@ -4528,15 +4466,15 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.74" +version = "0.2.78" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7cff876b8f18eed75a66cf49b65e7f967cb354a7aa16003fb55dbfd25b44b4f" +checksum = "0237232789cf037d5480773fe568aac745bfe2afbc11a863e97901780a6b47cc" [[package]] name = "web-sys" -version = "0.3.51" +version = "0.3.55" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e828417b379f3df7111d3a2a9e5753706cae29c41f7c4029ee9fd77f3e09e582" +checksum = "38eb105f1c59d9eaa6b5cdc92b859d85b926e82cb2e0945cd0c9259faa6fe9fb" dependencies = [ "js-sys", "wasm-bindgen", @@ -4579,9 +4517,9 @@ dependencies = [ [[package]] name = "whoami" -version = "1.1.2" +version = "1.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4abacf325c958dfeaf1046931d37f2a901b6dfe0968ee965a29e94c6766b2af6" +checksum = "cabfe22aa4936611957e0b5ad9ed0472ac52b2bfb9aedac4a3f3a91a03bd1ff0" dependencies = [ "wasm-bindgen", "web-sys", @@ -4663,9 +4601,3 @@ dependencies = [ "winapi 0.2.8", "winapi-build", ] - -[[package]] -name = "wyz" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85e60b0d1b5f99db2556934e21937020776a5d31520bf169e851ac44e6420214" diff --git a/README.md b/README.md index ab6cc23..e6c79ea 100644 --- a/README.md +++ b/README.md @@ -168,3 +168,26 @@ ExecStart=/var/pslink/pslink runserver [Install] WantedBy=multi-user.target ``` + +### Setup a demo container + +First build the standalone binary: + +```bash +$ cargo make build_standalone +``` + +Create a temporary directory and copy the binary from above: + +```bash +$ mkdir /tmp/pslink-container/ +$ cp target/x86_64-unknown-linux-musl/release/pslink /tmp/pslink-container/ +``` + +Run the container (podman is used here but docker could be used exactly the same): + +```bash +$ podman run --expose 8080 -p=8080:8080 -it pslink-container ./pslink demo -i 0.0.0.0 +``` + +Note that this is **absolutely not for a production use** and only for demo purposes as the links are **deleted on every restart**. diff --git a/app/src/navigation.rs b/app/src/navigation.rs index 5d48b4a..cfc32b3 100644 --- a/app/src/navigation.rs +++ b/app/src/navigation.rs @@ -16,7 +16,7 @@ use crate::Msg; pub fn navigation(i18n: &I18n, base_url: &Url, user: &User) -> Node { // A shortcut for translating strings. let t = move |key: &str| i18n.translate(key, None); - // Translate the wellcome message + // Translate the welcome message let welcome = i18n.translate( "welcome-user", Some(&fluent_args![ "username" => user.username.clone()]), diff --git a/app/src/pages/list_links.rs b/app/src/pages/list_links.rs index 052a138..fed1d1f 100644 --- a/app/src/pages/list_links.rs +++ b/app/src/pages/list_links.rs @@ -91,7 +91,7 @@ impl Deref for Cached { } } -/// There can allways be only one dialog. +/// There can always be only one dialog. #[derive(Debug, Clone)] enum Dialog { EditLink { @@ -150,7 +150,7 @@ pub enum Msg { Query(QueryMsg), // Messages related to querying links Edit(EditMsg), // Messages related to editing links ClearAll, // Clear all messages - SetupObserver, // Make an observer for endles scroll + SetupObserver, // Make an observer for endless scroll Observed(Vec), SetMessage(String), // Set a message to the user } @@ -244,7 +244,7 @@ pub fn update(msg: Msg, model: &mut Model, orders: &mut impl Orders) { log!("element not yet registered! "); }; } else { - log!("Failed to get observer!") + log!("Failed to get observer!"); }; } } @@ -255,13 +255,13 @@ pub fn process_query_messages(msg: QueryMsg, model: &mut Model, orders: &mut imp match msg { QueryMsg::Fetch => { orders.skip(); // No need to rerender - initial_load(model, orders) + initial_load(model, orders); } QueryMsg::FetchAdditional => { orders.skip(); // No need to rerender - consecutive_load(model, orders) + consecutive_load(model, orders); } - // Default to ascending ordering but if the links are already sorted according to this collumn toggle between ascending and descending ordering. + // Default to ascending ordering but if the links are already sorted according to this column toggle between ascending and descending ordering. QueryMsg::OrderBy(column) => { model.formconfig.order = model.formconfig.order.as_ref().map_or_else( || { @@ -316,7 +316,7 @@ pub fn process_query_messages(msg: QueryMsg, model: &mut Model, orders: &mut imp QueryMsg::ReceivedAdditional(response) => { if response.len() < model.formconfig.amount { log!("There are no more links! "); - model.everything_loaded = true + model.everything_loaded = true; }; let mut new_links = response .into_iter() @@ -376,7 +376,7 @@ fn load_links(orders: &mut impl Orders, data: LinkRequestForm) { .json(&data), Msg::SetMessage("Failed to parse data".to_string()) ); - // send the request and recieve a response + // send the request and receive a response let response = unwrap_or_return!( fetch(request).await, Msg::SetMessage("Failed to send data".to_string()) @@ -554,7 +554,7 @@ fn delete_link(link_delta: LinkDelta, orders: &mut impl Orders) { .json(&link_delta), Msg::SetMessage("serialization failed".to_string()) ); - // perform the request and recieve a respnse + // perform the request and receive a response let response = unwrap_or_return!(fetch(request).await, Msg::Edit(EditMsg::FailedToDeleteLink)); @@ -746,7 +746,8 @@ fn view_link(l: &Cached, logged_in_user: &User) -> Node { C!["table_qr"], a![ ev(Ev::Click, |event| event.stop_propagation()), - attrs![At::Href => format!["/admin/download/png/{}", &l.link.code], At::Download => true.as_at_value()], + attrs![At::Href => format!("/admin/download/png/{}", &l.link.code), + At::Download => true.as_at_value()], raw!(&l.cache) ] ] diff --git a/app/src/pages/list_users.rs b/app/src/pages/list_users.rs index b94b92a..d726b40 100644 --- a/app/src/pages/list_users.rs +++ b/app/src/pages/list_users.rs @@ -62,7 +62,7 @@ struct FilterInput { filter_input: ElRef, } -/// The message splits the contained message into messages related to querrying and messages related to editing. +/// The message splits the contained message into messages related to querying and messages related to editing. #[derive(Clone)] pub enum Msg { Query(UserQueryMsg), @@ -161,7 +161,7 @@ pub fn process_query_messages(msg: UserQueryMsg, model: &mut Model, orders: &mut } UserQueryMsg::EmailFilterChanged(s) => { log!("Filter is: ", &s); - // FIXME: Sanitazion does not work for @ + // FIXME: Sanitation does not work for @ let sanit = s.chars().filter(|x| x.is_alphanumeric()).collect(); model.formconfig.filter[UserOverviewColumns::Email].sieve = sanit; orders.send_msg(Msg::Query(UserQueryMsg::Fetch)); @@ -238,7 +238,7 @@ pub fn process_user_edit_messages( let data = model .user_edit .take() - .expect("A user should allways be there on save"); + .expect("A user should always be there on save"); log!("Saving User: ", &data.username); save_user(data, orders); } diff --git a/pslink/src/bin/pslink/cli.rs b/pslink/src/bin/pslink/cli.rs index 1c61791..79a00cd 100644 --- a/pslink/src/bin/pslink/cli.rs +++ b/pslink/src/bin/pslink/cli.rs @@ -1,6 +1,6 @@ use clap::{ - app_from_crate, crate_authors, crate_description, crate_name, crate_version, App, Arg, - ArgMatches, SubCommand, + app_from_crate, crate_authors, crate_description, crate_name, crate_version, App, AppSettings, + Arg, ArgMatches, SubCommand, }; use dotenv::dotenv; use pslink_shared::datatypes::{Secret, User}; @@ -12,7 +12,7 @@ use std::{ }; use pslink::{ - models::{NewUser, UserDbOperations}, + models::{NewLink, NewUser, UserDbOperations}, ServerConfig, ServerError, }; @@ -20,7 +20,7 @@ use tracing::{error, info, trace, warn}; static MIGRATOR: Migrator = sqlx::migrate!(); -/// generate the commandline options available +/// generate the command line options available #[allow(clippy::too_many_lines)] fn generate_cli() -> App<'static, 'static> { app_from_crate!() @@ -47,7 +47,7 @@ fn generate_cli() -> App<'static, 'static> { .short("u") .help("The host url or the page that will be part of the short urls.") .env("PSLINK_PUBLIC_URL") - .default_value("localhost:8080") + .default_value("127.0.0.1:8080") .global(true), ) .arg( @@ -63,7 +63,7 @@ fn generate_cli() -> App<'static, 'static> { Arg::with_name("brand_name") .long("brand-name") .short("b") - .help("The Brandname that will apper in various places.") + .help("The brand name that will appear in various places.") .env("PSLINK_BRAND_NAME") .default_value("Pslink") .global(true), @@ -74,7 +74,7 @@ fn generate_cli() -> App<'static, 'static> { .short("i") .help("The host (ip) that will run the pslink service") .env("PSLINK_IP") - .default_value("localhost") + .default_value("127.0.0.1") .global(true), ) .arg( @@ -95,11 +95,11 @@ fn generate_cli() -> App<'static, 'static> { .long("secret") .help(concat!( "The secret that is used to encrypt the", - " password database keep this as inacessable as possible.", - " As commandlineparameters are visible", + " password database keep this as inaccessible as possible.", + " As command line parameters are visible", " to all users", " it is not wise to use this as", - " a commandline parameter but rather as an environment variable.", + " a command line parameter but rather as an environment variable.", )) .env("PSLINK_SECRET") .default_value("") @@ -125,6 +125,12 @@ fn generate_cli() -> App<'static, 'static> { .about("Create an admin user.") .display_order(2), ) + .subcommand( + SubCommand::with_name("demo") + .about("Create a database and demo user.") + .display_order(3) + .setting(AppSettings::Hidden), + ) } /// parse the options to the [`ServerConfig`] struct @@ -142,7 +148,7 @@ async fn parse_args_to_config(config: ArgMatches<'_>) -> ServerConfig { warn!("If you change the secret all passwords will be invalid"); warn!("Using an auto generated one for this run."); } else { - warn!("The provided secret was too short. Using an autogenerated one."); + warn!("The provided secret was too short. Using an auto generated one."); } thread_rng() @@ -158,7 +164,7 @@ async fn parse_args_to_config(config: ArgMatches<'_>) -> ServerConfig { .value_of("database") .expect(concat!( "Neither the DATABASE_URL environment variable", - " nor the commandline parameters", + " nor the command line parameters", " contain a valid database location." )) .parse::() @@ -186,7 +192,7 @@ async fn parse_args_to_config(config: ArgMatches<'_>) -> ServerConfig { .value_of("port") .expect("Failed to read the port value") .parse::() - .expect("Failed to parse the portnumber"); + .expect("Failed to parse the port number"); let protocol = config .value_of("protocol") .expect("Failed to read the protocol value") @@ -209,7 +215,7 @@ async fn parse_args_to_config(config: ArgMatches<'_>) -> ServerConfig { /// Setup and launch the command /// /// # Panics -/// This funcion panics if preconditions like the availability of the database are not met. +/// This function panics if preconditions like the availability of the database are not met. pub async fn setup() -> Result, ServerError> { // load the environment .env file if available. dotenv().ok(); @@ -225,7 +231,7 @@ pub async fn setup() -> Result, ServerError> { .value_of("database") .expect(concat!( "Neither the DATABASE_URL environment variable", - " nor the commandline parameters", + " nor the command line parameters", " contain a valid database location." )) .parse::() @@ -234,13 +240,14 @@ pub async fn setup() -> Result, ServerError> { if !db.exists() { trace!("No database file found {}", db.display()); if !(config.subcommand_matches("migrate-database").is_none() - | config.subcommand_matches("generate-env").is_none()) + | config.subcommand_matches("generate-env").is_none() + | config.subcommand_matches("demo").is_none()) { let msg = format!( concat!( "Database not found at {}!", - " Create a new database with: `pslink migrate-database`", - "or adjust the databasepath." + "Create a new database with: `pslink migrate-database`", + "or adjust the database path." ), db.display() ); @@ -268,12 +275,40 @@ pub async fn setup() -> Result, ServerError> { }; } if let Some(_create_config) = config.subcommand_matches("create-admin") { - return match create_admin(&server_config).await { + return match request_admin_credentials(&server_config).await { Ok(_) => Ok(None), Err(e) => Err(e), }; } + if let Some(_runserver_config) = config.subcommand_matches("demo") { + let num_users = User::count_admins(&server_config).await; + + match num_users { + Err(_) => { + generate_env_file(&server_config).expect("Failed to generate env file."); + apply_migrations(&server_config) + .await + .expect("Failed to apply migrations."); + let new_admin = NewUser::new( + "demo".to_string(), + "demo@teilgedanken.de".to_string(), + "demo", + &server_config.secret, + ) + .expect("Failed to generate new user credentials."); + create_admin(&new_admin, &server_config) + .await + .expect("Failed to create admin"); + add_example_links(&server_config).await; + return Ok(Some(server_config)); + } + _ => { + return Err(ServerError::User("The database is not empty aborting because this could mean that creating a demo instance would lead in data loss.".to_string())); + } + } + } + if let Some(_runserver_config) = config.subcommand_matches("runserver") { let num_users = User::count_admins(&server_config).await?; @@ -294,8 +329,54 @@ pub async fn setup() -> Result, ServerError> { } } +async fn add_example_links(server_config: &ServerConfig) { + NewLink { + title: "Pslink Repository".to_owned(), + target: "https://github.com/enaut/pslink".to_owned(), + code: "pslink".to_owned(), + author: 1, + created_at: chrono::Local::now().naive_utc(), + } + .insert(server_config) + .await + .expect("Failed to insert example 1"); + + NewLink { + title: "Seed".to_owned(), + target: "https://seed-rs.org/".to_owned(), + code: "seed".to_owned(), + author: 1, + created_at: chrono::Local::now().naive_utc(), + } + .insert(server_config) + .await + .expect("Failed to insert example 1"); + + NewLink { + title: "actix".to_owned(), + target: "https://actix.rs/".to_owned(), + code: "actix".to_owned(), + author: 1, + created_at: chrono::Local::now().naive_utc(), + } + .insert(server_config) + .await + .expect("Failed to insert example 1"); + + NewLink { + title: "rust".to_owned(), + target: "https://www.rust-lang.org/".to_owned(), + code: "rust".to_owned(), + author: 1, + created_at: chrono::Local::now().naive_utc(), + } + .insert(server_config) + .await + .expect("Failed to insert example 1"); +} + /// Interactively create a new admin user. -async fn create_admin(config: &ServerConfig) -> Result<(), ServerError> { +async fn request_admin_credentials(config: &ServerConfig) -> Result<(), ServerError> { info!("Creating an admin user."); let sin = io::stdin(); @@ -306,7 +387,7 @@ async fn create_admin(config: &ServerConfig) -> Result<(), ServerError> { io::stdout().flush().unwrap(); let new_username = sin.lock().lines().next().unwrap().unwrap(); - print!("Please enter the emailadress for {}: ", new_username); + print!("Please enter the email address for {}: ", new_username); io::stdout().flush().unwrap(); let new_email = sin.lock().lines().next().unwrap().unwrap(); @@ -325,16 +406,20 @@ async fn create_admin(config: &ServerConfig) -> Result<(), ServerError> { &config.secret, )?; - new_admin.insert_user(config).await?; - let created_user = User::get_user_by_name(&new_username, config).await?; + create_admin(&new_admin, config).await +} + +async fn create_admin(new_user: &NewUser, config: &ServerConfig) -> Result<(), ServerError> { + new_user.insert_user(config).await?; + let created_user = User::get_user_by_name(&new_user.username, config).await?; created_user.toggle_admin(config).await?; - info!("Admin user created: {}", new_username); + info!("Admin user created: {}", &new_user.username); Ok(()) } -/// Apply any pending migrations to the database. The migrations are embedded in the binary and don't need any addidtional files. +/// Apply any pending migrations to the database. The migrations are embedded in the binary and don't need any additional files. async fn apply_migrations(config: &ServerConfig) -> Result<(), ServerError> { info!( "Creating a database file and running the migrations in the file {}:", @@ -344,7 +429,7 @@ async fn apply_migrations(config: &ServerConfig) -> Result<(), ServerError> { Ok(()) } -/// The commandline parameters provided or if missing the default parameters can be converted and written to a .env file. That way the configuration is saved and automatically reused for subsequent launches. +/// The command line parameters provided or if missing the default parameters can be converted and written to a .env file. That way the configuration is saved and automatically reused for subsequent launches. fn generate_env_file(server_config: &ServerConfig) -> Result<(), ServerError> { if std::path::Path::new(".env").exists() { return Err(ServerError::User( diff --git a/pslink/src/bin/pslink/main.rs b/pslink/src/bin/pslink/main.rs index f3fa050..857a35b 100644 --- a/pslink/src/bin/pslink/main.rs +++ b/pslink/src/bin/pslink/main.rs @@ -79,7 +79,7 @@ async fn main() -> std::result::Result<(), std::io::Error> { // include the static files into the binary include!(concat!(env!("OUT_DIR"), "/generated.rs")); -/// Launch the pslink-webservice +/// Launch the pslink-web-service /// /// # Errors /// This produces a [`ServerError`] if: diff --git a/pslink/src/bin/pslink/views.rs b/pslink/src/bin/pslink/views.rs index 254c203..44ad27f 100644 --- a/pslink/src/bin/pslink/views.rs +++ b/pslink/src/bin/pslink/views.rs @@ -67,9 +67,9 @@ fn detect_language(request: &HttpRequest) -> Result { ); info!("supported languages: {:?}", supported); - if let Some(languagecode) = supported.get(0) { - info!("Supported Language: {}", languagecode); - Ok(languagecode + if let Some(language_code) = supported.get(0) { + info!("Supported Language: {}", language_code); + Ok(language_code .to_string() .parse() .expect("Failed to parse 2 language")) diff --git a/pslink/src/models.rs b/pslink/src/models.rs index 89d2eaa..24f8464 100644 --- a/pslink/src/models.rs +++ b/pslink/src/models.rs @@ -368,7 +368,7 @@ impl NewLink { /// /// # Errors /// fails with [`ServerError`] if the database cannot be acessed or constraints are not met. - pub(crate) async fn insert(self, server_config: &ServerConfig) -> Result<(), ServerError> { + pub async fn insert(self, server_config: &ServerConfig) -> Result<(), ServerError> { sqlx::query!( "Insert into links ( title,