From c23a457e72abe608715ac76f076f47dc42af07a5 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Thu, 30 May 2024 20:31:44 +0200 Subject: Merging upstream version 1.74.1+dfsg1. Signed-off-by: Daniel Baumann --- vendor/tracing-tree/.cargo-checksum.json | 2 +- vendor/tracing-tree/Cargo.lock | 638 ++++++++++++++++++++++--- vendor/tracing-tree/Cargo.toml | 15 +- vendor/tracing-tree/README.md | 21 +- vendor/tracing-tree/examples/basic.rs | 2 +- vendor/tracing-tree/examples/basic.stdout | 30 +- vendor/tracing-tree/examples/no-indent.rs | 79 +++ vendor/tracing-tree/examples/no-indent.stdout | 21 + vendor/tracing-tree/examples/quiet.stdout | 28 +- vendor/tracing-tree/examples/stderr.stderr | 80 ++-- vendor/tracing-tree/examples/wraparound.stdout | 88 ++-- vendor/tracing-tree/src/format.rs | 4 +- vendor/tracing-tree/src/lib.rs | 17 +- vendor/tracing-tree/tests/ui.rs | 98 +--- 14 files changed, 828 insertions(+), 295 deletions(-) create mode 100644 vendor/tracing-tree/examples/no-indent.rs create mode 100644 vendor/tracing-tree/examples/no-indent.stdout (limited to 'vendor/tracing-tree') diff --git a/vendor/tracing-tree/.cargo-checksum.json b/vendor/tracing-tree/.cargo-checksum.json index 5c4c20385..312175066 100644 --- a/vendor/tracing-tree/.cargo-checksum.json +++ b/vendor/tracing-tree/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.lock":"d584fa6e43dbd4c550f02b8644444902040f4ab6086507ac17bc98b0100af72b","Cargo.toml":"182256e2f9361a8277ee72b20146e33e2ecef5d1ed8f357e930bf9e56b1e60c3","LICENSE-APACHE":"c9c77d27bd737506eee1be90c11885fad935695714eafacd6725f41fff9ec8da","LICENSE-MIT":"d31139de68f7e19f9b32cd7de53dbb125b3c68522bbbb1d0c186c33112d34466","README.md":"589c2534836513b4edfa2811269767a9ac3c48da909c8ab936db3e646410dcf7","examples/basic.rs":"b56dad20aa283aae17a9c1364cc0326714cdc89d6a02a6329034e476b3597fd7","examples/basic.stdout":"49767873eb520f3e457b48d930fa86583d9ca5ef5571d67582b08dcb788ff6f2","examples/quiet.rs":"65a4cbb650cea4939ed274c2fd4d50c953151716fa6564b23393e1df6fb7afd7","examples/quiet.stdout":"d58a3240258279821b5d08e0d39ea60dee2dbd6a955f8639daf0d149ad0616fa","examples/stderr.rs":"ce0896f50be810908fb7083661bf39da6c9733ddef9188d40499313a40fe2c7a","examples/stderr.stderr":"8a0f6553fee903f159c6ea528dda6c5b193064ef9b58c765d1f3f60ecba5ac1f","examples/wraparound.rs":"7998f2e7b9e1f0dfc4b0cf11b1cdcf0f44c85aeaabbea9749113584ac7a3879f","examples/wraparound.stdout":"1c042231b3f8b20a843c18af063e43a51fcc852597dd1713f5878d4a8128271c","src/format.rs":"0dbfbe7a1939fefc3ade3ffa2113d382424f387130388fd3431210bbccef8b8b","src/lib.rs":"9c0ce624c037adec963e53deb011f32fa3d6ec5b2e764c91d574a3a451eeaf7f","src/time.rs":"af57c283b55cb84f1b4b3bdf1eb352fbcfd1d2492d65bec5bb5041bd6d12b1b0","tests/format_time.rs":"f119c668d01fca745acdf0fcc938ecc137c9c79b7fa72c668c006f509fef0db8","tests/ui.rs":"32a02ef41ae5cbabe13164f8d665b287b0bb764b2dc5bcb80443cb551df5289a"},"package":"4f9742d8df709837409dbb22aa25dd7769c260406f20ff48a2320b80a4a6aed0"} \ No newline at end of file +{"files":{"Cargo.lock":"4046f9989c418b810f9bd43999016c13754aaa1f15b10b439db5bc7ab62c00d2","Cargo.toml":"33995653f5d0f203eaa4016d136103f4e2b062dac8d5b4abfc5d03857a82ace6","LICENSE-APACHE":"c9c77d27bd737506eee1be90c11885fad935695714eafacd6725f41fff9ec8da","LICENSE-MIT":"d31139de68f7e19f9b32cd7de53dbb125b3c68522bbbb1d0c186c33112d34466","README.md":"8337ed6c0cfe5e45bd25e5ecdf3acbd65fc1f406a35813ec62157e1e470bb0fe","examples/basic.rs":"41ff42bbfa65ba1676f0b09f79d2e6a43c3510ad87944c15da10bfe8faa4ec42","examples/basic.stdout":"093ccbe085637c649b91b11c936135396047ec6209bb60a0f2d0895c94b8177e","examples/no-indent.rs":"67c00ef7ca4d30f753e3a5c05ae98051f845faadc4133ff2fcda834843786c4d","examples/no-indent.stdout":"a21ae7c7f1285fdcf478b6d1a4f24fc5aae79018fb451295dac8bc31378eb7fe","examples/quiet.rs":"65a4cbb650cea4939ed274c2fd4d50c953151716fa6564b23393e1df6fb7afd7","examples/quiet.stdout":"88f5f3e1b2366ae29c3d44e2cfd2f2b58814590830d06f41bd1616c11a4cde6c","examples/stderr.rs":"ce0896f50be810908fb7083661bf39da6c9733ddef9188d40499313a40fe2c7a","examples/stderr.stderr":"8ffaa4accbfc375538179880014c4155d1c48a73ecc14d04060a31efa2273d1d","examples/wraparound.rs":"7998f2e7b9e1f0dfc4b0cf11b1cdcf0f44c85aeaabbea9749113584ac7a3879f","examples/wraparound.stdout":"3e8872a6de0fc259393d0363737d20e4e6f7c7bacad1d46a3a9e7ac55e24d5df","src/format.rs":"18f8a09d1cf3c5123c2a14648b8be77fde37f6bdc773b74195bcf1f2b35f3d19","src/lib.rs":"420140999824780eb3e09fee948612087abd1915a4bdb9d60f49d7068a6af85b","src/time.rs":"af57c283b55cb84f1b4b3bdf1eb352fbcfd1d2492d65bec5bb5041bd6d12b1b0","tests/format_time.rs":"f119c668d01fca745acdf0fcc938ecc137c9c79b7fa72c668c006f509fef0db8","tests/ui.rs":"c73e2a08c4a6f5825af460842af3b83701d1008bddbf720df78b57675e082c77"},"package":"92d6b63348fad3ae0439b8bebf8d38fb5bda0b115d7a8a7e6f165f12790c58c3"} \ No newline at end of file diff --git a/vendor/tracing-tree/Cargo.lock b/vendor/tracing-tree/Cargo.lock index 03f9a84d4..8c74bbe8d 100644 --- a/vendor/tracing-tree/Cargo.lock +++ b/vendor/tracing-tree/Cargo.lock @@ -3,41 +3,117 @@ version = 3 [[package]] -name = "assert_cmd" -version = "1.0.8" +name = "addr2line" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c98233c6673d8601ab23e77eb38f999c51100d46c5703b17288c57fddf3a1ffe" +checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" dependencies = [ - "bstr", - "doc-comment", - "predicates", - "predicates-core", - "predicates-tree", - "wait-timeout", + "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 = "0.7.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac" +dependencies = [ + "memchr", ] +[[package]] +name = "anyhow" +version = "1.0.70" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7de8ce5e0f9f8d88245311066a578d72b7af3e7088f32783804676302df237e4" + [[package]] name = "atty" version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" dependencies = [ - "hermit-abi", + "hermit-abi 0.1.19", "libc", "winapi", ] +[[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 = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + [[package]] name = "bstr" -version = "0.2.17" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223" +checksum = "c3d4260bcc2e8fc9df1eac4919a720effeb63a3f0952f5bf4944adfa18897f09" dependencies = [ - "lazy_static", "memchr", + "once_cell", "regex-automata", + "serde", +] + +[[package]] +name = "camino" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c530edf18f37068ac2d977409ed5cd50d53d73bc653c7647b48eb78976ac9ae2" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo-platform" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbdb825da8a5df079a43676dbe042702f1707b1109f713a01420fbb4cc71fa27" +dependencies = [ + "serde", ] +[[package]] +name = "cargo_metadata" +version = "0.15.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eee4243f1f26fc7a42710e7439c149e2b10b05472f88090acce52632f231a73a" +dependencies = [ + "camino", + "cargo-platform", + "semver", + "serde", + "serde_json", + "thiserror", +] + +[[package]] +name = "cc" +version = "1.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" + [[package]] name = "cfg-if" version = "1.0.0" @@ -45,28 +121,113 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] -name = "difflib" -version = "0.4.0" +name = "color-eyre" +version = "0.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8" +checksum = "5a667583cca8c4f8436db8de46ea8233c42a7d9ae424a82d338f2e4675229204" +dependencies = [ + "backtrace", + "color-spantrace", + "eyre", + "indenter", + "once_cell", + "owo-colors", + "tracing-error", +] [[package]] -name = "doc-comment" -version = "0.3.3" +name = "color-spantrace" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ba75b3d9449ecdccb27ecbc479fdc0b87fa2dd43d2f8298f9bf0e59aacc8dce" +dependencies = [ + "once_cell", + "owo-colors", + "tracing-core", + "tracing-error", +] + +[[package]] +name = "colored" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b3616f750b84d8f0de8a58bda93e08e2a81ad3f523089b05f1dffecab48c6cbd" +dependencies = [ + "atty", + "lazy_static", + "winapi", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200" +dependencies = [ + "cfg-if", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" +checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" +dependencies = [ + "cfg-if", +] [[package]] -name = "either" -version = "1.8.1" +name = "diff" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" +checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" [[package]] -name = "glob" +name = "errno" version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" +checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" +dependencies = [ + "errno-dragonfly", + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "errno-dragonfly" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +dependencies = [ + "cc", + "libc", +] + +[[package]] +name = "eyre" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c2b6b5a29c02cdc822728b7d7b8ae1bab3e3b05d44522770ddd49722eeac7eb" +dependencies = [ + "indenter", + "once_cell", +] + +[[package]] +name = "fastrand" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +dependencies = [ + "instant", +] + +[[package]] +name = "gimli" +version = "0.27.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4" [[package]] name = "hermit-abi" @@ -78,12 +239,47 @@ dependencies = [ ] [[package]] -name = "itertools" -version = "0.10.5" +name = "hermit-abi" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" + +[[package]] +name = "indenter" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683" + +[[package]] +name = "instant" +version = "0.1.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a5bbe824c507c5da5956355e86a746d82e0e1464f65d862cc5e71da70e94b2c" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "io-lifetimes" +version = "1.0.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0fd2260e829bddf4cb6ea802289de2f86d6a7a690192fbe91b3f46e0f2c8473" +checksum = "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220" dependencies = [ - "either", + "hermit-abi 0.3.1", + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "is-terminal" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f" +dependencies = [ + "hermit-abi 0.3.1", + "io-lifetimes", + "rustix", + "windows-sys 0.48.0", ] [[package]] @@ -104,6 +300,12 @@ version = "0.2.141" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3304a64d199bb964be99741b7a14d26972741915b3649639149b2479bb46f4b5" +[[package]] +name = "linux-raw-sys" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b085a4f2cde5781fc4b1717f2e86c62f5cda49de7ba99a7c2eae02b61c9064c" + [[package]] name = "log" version = "0.4.17" @@ -119,6 +321,15 @@ version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +[[package]] +name = "miniz_oxide" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" +dependencies = [ + "adler", +] + [[package]] name = "nu-ansi-term" version = "0.46.0" @@ -138,6 +349,15 @@ dependencies = [ "libc", ] +[[package]] +name = "object" +version = "0.30.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea86265d3d3dcb6a27fc51bd29a4bf387fae9d2986b823079d4986af253eb439" +dependencies = [ + "memchr", +] + [[package]] name = "once_cell" version = "1.17.1" @@ -150,6 +370,12 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39" +[[package]] +name = "owo-colors" +version = "3.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f" + [[package]] name = "pin-project-lite" version = "0.2.9" @@ -157,48 +383,41 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" [[package]] -name = "predicates" -version = "2.1.5" +name = "proc-macro2" +version = "1.0.56" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59230a63c37f3e18569bdb90e4a89cbf5bf8b06fea0b84e65ea10cc4df47addd" +checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435" dependencies = [ - "difflib", - "itertools", - "predicates-core", + "unicode-ident", ] [[package]] -name = "predicates-core" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174" - -[[package]] -name = "predicates-tree" -version = "1.0.9" +name = "quote" +version = "1.0.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf" +checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" dependencies = [ - "predicates-core", - "termtree", + "proc-macro2", ] [[package]] -name = "proc-macro2" -version = "1.0.56" +name = "redox_syscall" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b63bdb0cd06f1f4dedf69b254734f9b45af66e4a031e42a7480257d9898b435" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" dependencies = [ - "unicode-ident", + "bitflags", ] [[package]] -name = "quote" -version = "1.0.26" +name = "regex" +version = "1.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" +checksum = "8b1f693b24f6ac912f4893ef08244d70b6067480d2f1a46e950c9691e6749d1d" dependencies = [ - "proc-macro2", + "aho-corasick", + "memchr", + "regex-syntax", ] [[package]] @@ -207,11 +426,98 @@ version = "0.1.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132" +[[package]] +name = "regex-syntax" +version = "0.6.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" + +[[package]] +name = "rustc-demangle" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d626bb9dae77e28219937af045c257c28bfd3f69333c512553507f5f9798cb76" + +[[package]] +name = "rustc_version" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" +dependencies = [ + "semver", +] + +[[package]] +name = "rustfix" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecd2853d9e26988467753bd9912c3a126f642d05d229a4b53f5752ee36c56481" +dependencies = [ + "anyhow", + "log", + "serde", + "serde_json", +] + +[[package]] +name = "rustix" +version = "0.37.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f79bef90eb6d984c72722595b5b1348ab39275a5e5123faca6863bf07d75a4e0" +dependencies = [ + "bitflags", + "errno", + "io-lifetimes", + "libc", + "linux-raw-sys", + "windows-sys 0.48.0", +] + +[[package]] +name = "ryu" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" + +[[package]] +name = "semver" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" +dependencies = [ + "serde", +] + [[package]] name = "serde" version = "1.0.160" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bb2f3770c8bce3bcda7e149193a069a0f4365bda1fa5cd88e03bca26afc1216c" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.160" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "291a097c63d8497e00160b166a967a4a79c64f3facdd01cbd7502231688d77df" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.15", +] + +[[package]] +name = "serde_json" +version = "1.0.96" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "057d394a50403bcac12672b2b18fb387ab6d289d957dab67dd201875391e52f1" +dependencies = [ + "itoa", + "ryu", + "serde", +] [[package]] name = "sharded-slab" @@ -234,10 +540,48 @@ dependencies = [ ] [[package]] -name = "termtree" -version = "0.4.1" +name = "syn" +version = "2.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "tempfile" +version = "3.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" +checksum = "b9fbec84f381d5795b08656e4912bec604d162bff9291d6189a78f4c8ab87998" +dependencies = [ + "cfg-if", + "fastrand", + "redox_syscall", + "rustix", + "windows-sys 0.45.0", +] + +[[package]] +name = "thiserror" +version = "1.0.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.15", +] [[package]] name = "thread_local" @@ -298,7 +642,7 @@ checksum = "4017f8f45139870ca7e672686113917c71c7a6e02d4924eda67186083c03081a" dependencies = [ "proc-macro2", "quote", - "syn", + "syn 1.0.109", ] [[package]] @@ -311,6 +655,16 @@ dependencies = [ "valuable", ] +[[package]] +name = "tracing-error" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d686ec1c0f384b1277f097b2f279a2ecc11afe8c133c1aabf036a27cb4cd206e" +dependencies = [ + "tracing", + "tracing-subscriber", +] + [[package]] name = "tracing-log" version = "0.1.3" @@ -335,11 +689,9 @@ dependencies = [ [[package]] name = "tracing-tree" -version = "0.2.3" +version = "0.2.4" dependencies = [ - "assert_cmd", - "atty", - "glob", + "is-terminal", "log", "nu-ansi-term", "time", @@ -347,6 +699,29 @@ dependencies = [ "tracing-core", "tracing-log", "tracing-subscriber", + "ui_test", +] + +[[package]] +name = "ui_test" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b5b4baac6b9b74d53ea224bc6dd7ed7276a7fb6785145ba7cfa96c01b63f4cb" +dependencies = [ + "bstr", + "cargo-platform", + "cargo_metadata", + "color-eyre", + "colored", + "crossbeam-channel", + "diff", + "lazy_static", + "regex", + "rustc_version", + "rustfix", + "serde", + "serde_json", + "tempfile", ] [[package]] @@ -361,15 +736,6 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" -[[package]] -name = "wait-timeout" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" -dependencies = [ - "libc", -] - [[package]] name = "winapi" version = "0.3.9" @@ -391,3 +757,135 @@ name = "winapi-x86_64-pc-windows-gnu" version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[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", +] + +[[package]] +name = "windows-targets" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +dependencies = [ + "windows_aarch64_gnullvm 0.48.0", + "windows_aarch64_msvc 0.48.0", + "windows_i686_gnu 0.48.0", + "windows_i686_msvc 0.48.0", + "windows_x86_64_gnu 0.48.0", + "windows_x86_64_gnullvm 0.48.0", + "windows_x86_64_msvc 0.48.0", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" diff --git a/vendor/tracing-tree/Cargo.toml b/vendor/tracing-tree/Cargo.toml index 358b2d607..7d1ffe93a 100644 --- a/vendor/tracing-tree/Cargo.toml +++ b/vendor/tracing-tree/Cargo.toml @@ -12,7 +12,7 @@ [package] edition = "2018" name = "tracing-tree" -version = "0.2.3" +version = "0.2.4" authors = [ "David Barsky ", "Nathan Whitaker", @@ -26,8 +26,8 @@ repository = "https://github.com/davidbarsky/tracing-tree" name = "ui" harness = false -[dependencies.atty] -version = "0.2" +[dependencies.is-terminal] +version = "0.4.7" [dependencies.nu-ansi-term] version = "0.46.0" @@ -56,17 +56,14 @@ features = [ ] default-features = false -[dev-dependencies.assert_cmd] -version = "1" - -[dev-dependencies.glob] -version = "0.3" - [dev-dependencies.log] version = "0.4" [dev-dependencies.tracing] version = "0.1" +[dev-dependencies.ui_test] +version = "0.7" + [features] default = ["tracing-log"] diff --git a/vendor/tracing-tree/README.md b/vendor/tracing-tree/README.md index 06751d4ec..01c3b1c78 100644 --- a/vendor/tracing-tree/README.md +++ b/vendor/tracing-tree/README.md @@ -4,26 +4,7 @@ Instrument your application with [tracing](https://github.com/tokio-rs/tracing) and get tree-structured summaries of your application activity with timing information on the console: -
 
- server{host="localhost", port=8080}
-    0ms  INFO starting
-    300ms  INFO listening
-    conn{peer_addr="82.9.9.9", port=42381}
-      0ms DEBUG connected
-      300ms DEBUG message received, length=2
-    conn{peer_addr="8.8.8.8", port=18230}
-      300ms DEBUG connected
-    conn{peer_addr="82.9.9.9", port=42381}
-      600ms  WARN weak encryption requested, algo="xor"
-      901ms DEBUG response sent, length=8
-      901ms DEBUG disconnected
-    conn{peer_addr="8.8.8.8", port=18230}
-      600ms DEBUG message received, length=5
-      901ms DEBUG response sent, length=8
-      901ms DEBUG disconnected
-    1502ms  WARN internal error
-    1502ms  INFO exit
-
+https://github.com/davidbarsky/tracing-tree/blob/483cc0a118c3170f4246d6fa4a9f018a00d8f0a9/examples/quiet.stdout#L1-L28 (Format inspired by [slog-term](https://github.com/slog-rs/slog#terminal-output-example)) diff --git a/vendor/tracing-tree/examples/basic.rs b/vendor/tracing-tree/examples/basic.rs index 97f6263ff..a736c6524 100644 --- a/vendor/tracing-tree/examples/basic.rs +++ b/vendor/tracing-tree/examples/basic.rs @@ -24,7 +24,7 @@ fn main() { let server_span = span!(Level::TRACE, "server", host = "localhost", port = 8080); let _e2 = server_span.enter(); info!("starting"); - std::thread::sleep(std::time::Duration::from_millis(300)); + std::thread::sleep(std::time::Duration::from_millis(3000)); info!("listening"); let peer1 = span!(Level::TRACE, "conn", peer_addr = "82.9.9.9", port = 42381); peer1.in_scope(|| { diff --git a/vendor/tracing-tree/examples/basic.stdout b/vendor/tracing-tree/examples/basic.stdout index 4a2d83f11..e1d7bb334 100644 --- a/vendor/tracing-tree/examples/basic.stdout +++ b/vendor/tracing-tree/examples/basic.stdout @@ -1,41 +1,41 @@ 1:main┐basic::hierarchical-example version=0.1 1:main├┐basic::hierarchical-example version=0.1 1:main│└┐basic::server host="localhost", port=8080 -1:main│ ├─ms INFO basic starting -1:main│ ├─ms INFO basic listening +1:main│ ├─ Xms INFO basic starting +1:main│ ├─ Xs INFO basic listening 1:main│ ├┐basic::server host="localhost", port=8080 1:main│ │└┐basic::conn peer_addr="82.9.9.9", port=42381 -1:main│ │ ├─ms DEBUG basic connected -1:main│ │ ├─ms DEBUG basic message received, length=2 +1:main│ │ ├─ Xms DEBUG basic connected +1:main│ │ ├─ Xms DEBUG basic message received, length=2 1:main│ │┌┘basic::conn peer_addr="82.9.9.9", port=42381 1:main│ ├┘basic::server host="localhost", port=8080 1:main│ ├┐basic::server host="localhost", port=8080 1:main│ │└┐basic::conn peer_addr="8.8.8.8", port=18230 -1:main│ │ ├─ms DEBUG basic connected +1:main│ │ ├─ Xms DEBUG basic connected 1:main│ │┌┘basic::conn peer_addr="8.8.8.8", port=18230 1:main│ ├┘basic::server host="localhost", port=8080 1:main│ ├┐basic::server host="localhost", port=8080 1:main│ │└┐basic::foomp 42 <- format string, normal_var=43 -1:main│ │ ├─ms ERROR basic hello +1:main│ │ ├─ Xms ERROR basic hello 1:main│ │┌┘basic::foomp 42 <- format string, normal_var=43 1:main│ ├┘basic::server host="localhost", port=8080 1:main│ ├┐basic::server host="localhost", port=8080 1:main│ │└┐basic::conn peer_addr="82.9.9.9", port=42381 -1:main│ │ ├─ms WARN basic weak encryption requested, algo="xor" -1:main│ │ ├─ms DEBUG basic response sent, length=8 -1:main│ │ ├─ms DEBUG basic disconnected +1:main│ │ ├─ Xms WARN basic weak encryption requested, algo="xor" +1:main│ │ ├─ Xms DEBUG basic response sent, length=8 +1:main│ │ ├─ Xms DEBUG basic disconnected 1:main│ │┌┘basic::conn peer_addr="82.9.9.9", port=42381 1:main│ ├┘basic::server host="localhost", port=8080 1:main│ ├┐basic::server host="localhost", port=8080 1:main│ │└┐basic::conn peer_addr="8.8.8.8", port=18230 -1:main│ │ ├─ms DEBUG basic message received, length=5 -1:main│ │ ├─ms DEBUG basic response sent, length=8 -1:main│ │ ├─ms DEBUG basic disconnected +1:main│ │ ├─ Xms DEBUG basic message received, length=5 +1:main│ │ ├─ Xms DEBUG basic response sent, length=8 +1:main│ │ ├─ Xms DEBUG basic disconnected 1:main│ │┌┘basic::conn peer_addr="8.8.8.8", port=18230 1:main│ ├┘basic::server host="localhost", port=8080 -1:main│ ├─ms WARN basic internal error -1:main│ ├─ms ERROR basic this is a log message -1:main│ ├─ms INFO basic exit +1:main│ ├─ Xs WARN basic internal error +1:main│ ├─ Xs ERROR basic this is a log message +1:main│ ├─ Xs INFO basic exit 1:main│┌┘basic::server host="localhost", port=8080 1:main├┘basic::hierarchical-example version=0.1 1:main┘basic::hierarchical-example version=0.1 diff --git a/vendor/tracing-tree/examples/no-indent.rs b/vendor/tracing-tree/examples/no-indent.rs new file mode 100644 index 000000000..288e560fa --- /dev/null +++ b/vendor/tracing-tree/examples/no-indent.rs @@ -0,0 +1,79 @@ +use tracing::{debug, error, info, instrument, span, warn, Level}; +use tracing_subscriber::{layer::SubscriberExt, registry::Registry}; +use tracing_tree::HierarchicalLayer; + +fn main() { + let layer = HierarchicalLayer::default() + .with_writer(std::io::stdout) + .with_indent_amount(2) + .with_thread_names(true) + .with_thread_ids(true) + .with_verbose_exit(false) + .with_verbose_entry(false) + .with_targets(true); + + let subscriber = Registry::default().with(layer); + tracing::subscriber::set_global_default(subscriber).unwrap(); + + let app_span = span!(Level::TRACE, "hierarchical-example", version = %0.1); + let _e = app_span.enter(); + + let server_span = span!(Level::TRACE, "server", host = "localhost", port = 8080); + let _e2 = server_span.enter(); + info!("starting"); + std::thread::sleep(std::time::Duration::from_millis(300)); + info!("listening"); + let peer1 = span!(Level::TRACE, "conn", peer_addr = "82.9.9.9", port = 42381); + peer1.in_scope(|| { + debug!("connected"); + std::thread::sleep(std::time::Duration::from_millis(300)); + debug!(length = 2, "message received"); + }); + drop(peer1); + let peer2 = span!(Level::TRACE, "conn", peer_addr = "8.8.8.8", port = 18230); + peer2.in_scope(|| { + std::thread::sleep(std::time::Duration::from_millis(300)); + debug!("connected"); + }); + drop(peer2); + let peer3 = span!( + Level::TRACE, + "foomp", + normal_var = 43, + "{} <- format string", + 42 + ); + peer3.in_scope(|| { + error!("hello"); + }); + drop(peer3); + let peer1 = span!(Level::TRACE, "conn", peer_addr = "82.9.9.9", port = 42381); + peer1.in_scope(|| { + warn!(algo = "xor", "weak encryption requested"); + std::thread::sleep(std::time::Duration::from_millis(300)); + debug!(length = 8, "response sent"); + debug!("disconnected"); + }); + drop(peer1); + let peer2 = span!(Level::TRACE, "conn", peer_addr = "8.8.8.8", port = 18230); + peer2.in_scope(|| { + debug!(length = 5, "message received"); + std::thread::sleep(std::time::Duration::from_millis(300)); + debug!(length = 8, "response sent"); + debug!("disconnected"); + }); + drop(peer2); + warn!("internal error"); + info!("exit"); +} + +#[instrument] +fn call_a(name: &str) { + info!(name, "got a name"); + call_b(name) +} + +#[instrument] +fn call_b(name: &str) { + info!(name, "got a name"); +} diff --git a/vendor/tracing-tree/examples/no-indent.stdout b/vendor/tracing-tree/examples/no-indent.stdout new file mode 100644 index 000000000..1339211f1 --- /dev/null +++ b/vendor/tracing-tree/examples/no-indent.stdout @@ -0,0 +1,21 @@ +1:main no_indent::hierarchical-example version=0.1 +1:main no_indent::server host="localhost", port=8080 +1:main Xms INFO no_indent starting +1:main Xms INFO no_indent listening +1:main no_indent::conn peer_addr="82.9.9.9", port=42381 +1:main Xms DEBUG no_indent connected +1:main Xms DEBUG no_indent message received, length=2 +1:main no_indent::conn peer_addr="8.8.8.8", port=18230 +1:main Xms DEBUG no_indent connected +1:main no_indent::foomp 42 <- format string, normal_var=43 +1:main Xms ERROR no_indent hello +1:main no_indent::conn peer_addr="82.9.9.9", port=42381 +1:main Xms WARN no_indent weak encryption requested, algo="xor" +1:main Xms DEBUG no_indent response sent, length=8 +1:main Xms DEBUG no_indent disconnected +1:main no_indent::conn peer_addr="8.8.8.8", port=18230 +1:main Xms DEBUG no_indent message received, length=5 +1:main Xms DEBUG no_indent response sent, length=8 +1:main Xms DEBUG no_indent disconnected +1:main Xs WARN no_indent internal error +1:main Xs INFO no_indent exit diff --git a/vendor/tracing-tree/examples/quiet.stdout b/vendor/tracing-tree/examples/quiet.stdout index 96589655a..52160cb85 100644 --- a/vendor/tracing-tree/examples/quiet.stdout +++ b/vendor/tracing-tree/examples/quiet.stdout @@ -1,28 +1,28 @@ 1:main┐quiet::hierarchical-example version=0.1 1:main├─┐quiet::server host="localhost", port=8080 -1:main│ ├─ms INFO quiet starting -1:main│ ├─ms INFO quiet listening +1:main│ ├─ Xms INFO quiet starting +1:main│ ├─ Xms INFO quiet listening 1:main│ ├─┐quiet::conn peer_addr="82.9.9.9", port=42381 -1:main│ │ ├─ms DEBUG quiet connected -1:main│ │ ├─ms DEBUG quiet message received, length=2 +1:main│ │ ├─ Xms DEBUG quiet connected +1:main│ │ ├─ Xms DEBUG quiet message received, length=2 1:main│ ├─┘ 1:main│ ├─┐quiet::conn peer_addr="8.8.8.8", port=18230 -1:main│ │ ├─ms DEBUG quiet connected +1:main│ │ ├─ Xms DEBUG quiet connected 1:main│ ├─┘ 1:main│ ├─┐quiet::foomp 42 <- format string, normal_var=43 -1:main│ │ ├─ms ERROR quiet hello +1:main│ │ ├─ Xms ERROR quiet hello 1:main│ ├─┘ 1:main│ ├─┐quiet::conn peer_addr="82.9.9.9", port=42381 -1:main│ │ ├─ms WARN quiet weak encryption requested, algo="xor" -1:main│ │ ├─ms DEBUG quiet response sent, length=8 -1:main│ │ ├─ms DEBUG quiet disconnected +1:main│ │ ├─ Xms WARN quiet weak encryption requested, algo="xor" +1:main│ │ ├─ Xms DEBUG quiet response sent, length=8 +1:main│ │ ├─ Xms DEBUG quiet disconnected 1:main│ ├─┘ 1:main│ ├─┐quiet::conn peer_addr="8.8.8.8", port=18230 -1:main│ │ ├─ms DEBUG quiet message received, length=5 -1:main│ │ ├─ms DEBUG quiet response sent, length=8 -1:main│ │ ├─ms DEBUG quiet disconnected +1:main│ │ ├─ Xms DEBUG quiet message received, length=5 +1:main│ │ ├─ Xms DEBUG quiet response sent, length=8 +1:main│ │ ├─ Xms DEBUG quiet disconnected 1:main│ ├─┘ -1:main│ ├─ms WARN quiet internal error -1:main│ ├─ms INFO quiet exit +1:main│ ├─ Xs WARN quiet internal error +1:main│ ├─ Xs INFO quiet exit 1:main├─┘ 1:main┘ diff --git a/vendor/tracing-tree/examples/stderr.stderr b/vendor/tracing-tree/examples/stderr.stderr index 0060f268f..c1c242faf 100644 --- a/vendor/tracing-tree/examples/stderr.stderr +++ b/vendor/tracing-tree/examples/stderr.stderr @@ -1,109 +1,109 @@ ┐fibonacci_seq{to=5} -├─ms DEBUG Pushing 0 fibonacci +├─ Xms DEBUG Pushing 0 fibonacci ├─┐nth_fibonacci{n=0} -│ ├─ms DEBUG Base case +│ ├─ Xms DEBUG Base case ├─┘ -├─ms DEBUG Pushing 1 fibonacci +├─ Xms DEBUG Pushing 1 fibonacci ├─┐nth_fibonacci{n=1} -│ ├─ms DEBUG Base case +│ ├─ Xms DEBUG Base case ├─┘ -├─ms DEBUG Pushing 2 fibonacci +├─ Xms DEBUG Pushing 2 fibonacci ├─┐nth_fibonacci{n=2} -│ ├─ms DEBUG Recursing +│ ├─ Xms DEBUG Recursing │ ├─┐nth_fibonacci{n=1} -│ │ ├─ms DEBUG Base case +│ │ ├─ Xms DEBUG Base case │ ├─┘ │ ├─┐nth_fibonacci{n=0} -│ │ ├─ms DEBUG Base case +│ │ ├─ Xms DEBUG Base case │ ├─┘ ├─┘ -├─ms DEBUG Pushing 3 fibonacci +├─ Xms DEBUG Pushing 3 fibonacci ├─┐nth_fibonacci{n=3} -│ ├─ms DEBUG Recursing +│ ├─ Xms DEBUG Recursing │ ├─┐nth_fibonacci{n=2} -│ │ ├─ms DEBUG Recursing +│ │ ├─ Xms DEBUG Recursing │ │ ├─┐nth_fibonacci{n=1} -│ │ │ ├─ms DEBUG Base case +│ │ │ ├─ Xms DEBUG Base case │ │ ├─┘ │ │ ├─┐nth_fibonacci{n=0} -│ │ │ ├─ms DEBUG Base case +│ │ │ ├─ Xms DEBUG Base case │ │ ├─┘ │ ├─┘ │ ├─┐nth_fibonacci{n=1} -│ │ ├─ms DEBUG Base case +│ │ ├─ Xms DEBUG Base case │ ├─┘ ├─┘ -├─ms DEBUG Pushing 4 fibonacci +├─ Xms DEBUG Pushing 4 fibonacci ├─┐nth_fibonacci{n=4} -│ ├─ms DEBUG Recursing +│ ├─ Xms DEBUG Recursing │ ├─┐nth_fibonacci{n=3} -│ │ ├─ms DEBUG Recursing +│ │ ├─ Xms DEBUG Recursing │ │ ├─┐nth_fibonacci{n=2} -│ │ │ ├─ms DEBUG Recursing +│ │ │ ├─ Xms DEBUG Recursing │ │ │ ├─┐nth_fibonacci{n=1} -│ │ │ │ ├─ms DEBUG Base case +│ │ │ │ ├─ Xms DEBUG Base case │ │ │ ├─┘ │ │ │ ├─┐nth_fibonacci{n=0} -│ │ │ │ ├─ms DEBUG Base case +│ │ │ │ ├─ Xms DEBUG Base case │ │ │ ├─┘ │ │ ├─┘ │ │ ├─┐nth_fibonacci{n=1} -│ │ │ ├─ms DEBUG Base case +│ │ │ ├─ Xms DEBUG Base case │ │ ├─┘ │ ├─┘ │ ├─┐nth_fibonacci{n=2} -│ │ ├─ms DEBUG Recursing +│ │ ├─ Xms DEBUG Recursing │ │ ├─┐nth_fibonacci{n=1} -│ │ │ ├─ms DEBUG Base case +│ │ │ ├─ Xms DEBUG Base case │ │ ├─┘ │ │ ├─┐nth_fibonacci{n=0} -│ │ │ ├─ms DEBUG Base case +│ │ │ ├─ Xms DEBUG Base case │ │ ├─┘ │ ├─┘ ├─┘ -├─ms DEBUG Pushing 5 fibonacci +├─ Xms DEBUG Pushing 5 fibonacci ├─┐nth_fibonacci{n=5} -│ ├─ms DEBUG Recursing +│ ├─ Xms DEBUG Recursing │ ├─┐nth_fibonacci{n=4} -│ │ ├─ms DEBUG Recursing +│ │ ├─ Xms DEBUG Recursing │ │ ├─┐nth_fibonacci{n=3} -│ │ │ ├─ms DEBUG Recursing +│ │ │ ├─ Xms DEBUG Recursing │ │ │ ├─┐nth_fibonacci{n=2} -│ │ │ │ ├─ms DEBUG Recursing +│ │ │ │ ├─ Xms DEBUG Recursing │ │ │ │ ├─┐nth_fibonacci{n=1} -│ │ │ │ │ ├─ms DEBUG Base case +│ │ │ │ │ ├─ Xms DEBUG Base case │ │ │ │ ├─┘ │ │ │ │ ├─┐nth_fibonacci{n=0} -│ │ │ │ │ ├─ms DEBUG Base case +│ │ │ │ │ ├─ Xms DEBUG Base case │ │ │ │ ├─┘ │ │ │ ├─┘ │ │ │ ├─┐nth_fibonacci{n=1} -│ │ │ │ ├─ms DEBUG Base case +│ │ │ │ ├─ Xms DEBUG Base case │ │ │ ├─┘ │ │ ├─┘ │ │ ├─┐nth_fibonacci{n=2} -│ │ │ ├─ms DEBUG Recursing +│ │ │ ├─ Xms DEBUG Recursing │ │ │ ├─┐nth_fibonacci{n=1} -│ │ │ │ ├─ms DEBUG Base case +│ │ │ │ ├─ Xms DEBUG Base case │ │ │ ├─┘ │ │ │ ├─┐nth_fibonacci{n=0} -│ │ │ │ ├─ms DEBUG Base case +│ │ │ │ ├─ Xms DEBUG Base case │ │ │ ├─┘ │ │ ├─┘ │ ├─┘ │ ├─┐nth_fibonacci{n=3} -│ │ ├─ms DEBUG Recursing +│ │ ├─ Xms DEBUG Recursing │ │ ├─┐nth_fibonacci{n=2} -│ │ │ ├─ms DEBUG Recursing +│ │ │ ├─ Xms DEBUG Recursing │ │ │ ├─┐nth_fibonacci{n=1} -│ │ │ │ ├─ms DEBUG Base case +│ │ │ │ ├─ Xms DEBUG Base case │ │ │ ├─┘ │ │ │ ├─┐nth_fibonacci{n=0} -│ │ │ │ ├─ms DEBUG Base case +│ │ │ │ ├─ Xms DEBUG Base case │ │ │ ├─┘ │ │ ├─┘ │ │ ├─┐nth_fibonacci{n=1} -│ │ │ ├─ms DEBUG Base case +│ │ │ ├─ Xms DEBUG Base case │ │ ├─┘ │ ├─┘ ├─┘ diff --git a/vendor/tracing-tree/examples/wraparound.stdout b/vendor/tracing-tree/examples/wraparound.stdout index bbf422545..47022e093 100644 --- a/vendor/tracing-tree/examples/wraparound.stdout +++ b/vendor/tracing-tree/examples/wraparound.stdout @@ -1,96 +1,96 @@ 1:main┐wraparound::recurse i=0 -1:main├─ms WARN wraparound boop +1:main├─ Xms WARN wraparound boop 1:main├─┐wraparound::recurse i=1 -1:main│ ├─ms WARN wraparound boop +1:main│ ├─ Xms WARN wraparound boop 1:main│ ├─┐wraparound::recurse i=2 -1:main│ │ ├─ms WARN wraparound boop +1:main│ │ ├─ Xms WARN wraparound boop 1:main│ │ ├─┐wraparound::recurse i=3 -1:main│ │ │ ├─ms WARN wraparound boop +1:main│ │ │ ├─ Xms WARN wraparound boop 1:main│ │ │ ├─┐wraparound::recurse i=4 1:main────────┘ -1:mainms WARN wraparound boop +1:main Xms WARN wraparound boop 1:main┐wraparound::recurse i=5 -1:main├─ms WARN wraparound boop +1:main├─ Xms WARN wraparound boop 1:main├─┐wraparound::recurse i=6 -1:main│ ├─ms WARN wraparound boop +1:main│ ├─ Xms WARN wraparound boop 1:main│ ├─┐wraparound::recurse i=7 -1:main│ │ ├─ms WARN wraparound boop +1:main│ │ ├─ Xms WARN wraparound boop 1:main│ │ ├─┐wraparound::recurse i=8 -1:main│ │ │ ├─ms WARN wraparound boop +1:main│ │ │ ├─ Xms WARN wraparound boop 1:main│ │ │ ├─┐wraparound::recurse i=9 1:main────────┘ -1:mainms WARN wraparound boop +1:main Xms WARN wraparound boop 1:main┐wraparound::recurse i=10 -1:main├─ms WARN wraparound boop +1:main├─ Xms WARN wraparound boop 1:main├─┐wraparound::recurse i=11 -1:main│ ├─ms WARN wraparound boop +1:main│ ├─ Xms WARN wraparound boop 1:main│ ├─┐wraparound::recurse i=12 -1:main│ │ ├─ms WARN wraparound boop +1:main│ │ ├─ Xms WARN wraparound boop 1:main│ │ ├─┐wraparound::recurse i=13 -1:main│ │ │ ├─ms WARN wraparound boop +1:main│ │ │ ├─ Xms WARN wraparound boop 1:main│ │ │ ├─┐wraparound::recurse i=14 1:main────────┘ -1:mainms WARN wraparound boop +1:main Xms WARN wraparound boop 1:main┐wraparound::recurse i=15 -1:main├─ms WARN wraparound boop +1:main├─ Xms WARN wraparound boop 1:main├─┐wraparound::recurse i=16 -1:main│ ├─ms WARN wraparound boop +1:main│ ├─ Xms WARN wraparound boop 1:main│ ├─┐wraparound::recurse i=17 -1:main│ │ ├─ms WARN wraparound boop +1:main│ │ ├─ Xms WARN wraparound boop 1:main│ │ ├─┐wraparound::recurse i=18 -1:main│ │ │ ├─ms WARN wraparound boop +1:main│ │ │ ├─ Xms WARN wraparound boop 1:main│ │ │ ├─┐wraparound::recurse i=19 1:main────────┘ -1:mainms WARN wraparound boop +1:main Xms WARN wraparound boop 1:main┐wraparound::recurse i=20 -1:main├─ms WARN wraparound boop +1:main├─ Xms WARN wraparound boop 1:main├─┐wraparound::recurse i=21 -1:main│ ├─ms WARN wraparound boop -1:main│ ├─ms WARN wraparound bop +1:main│ ├─ Xms WARN wraparound boop +1:main│ ├─ Xms WARN wraparound bop 1:main├─┘ -1:main├─ms WARN wraparound bop +1:main├─ Xms WARN wraparound bop 1:main┘ -1:mainms WARN wraparound bop +1:main Xms WARN wraparound bop 1:main────────┐ 1:main│ │ │ ├─┘ -1:main│ │ │ ├─ms WARN wraparound bop +1:main│ │ │ ├─ Xms WARN wraparound bop 1:main│ │ ├─┘ -1:main│ │ ├─ms WARN wraparound bop +1:main│ │ ├─ Xms WARN wraparound bop 1:main│ ├─┘ -1:main│ ├─ms WARN wraparound bop +1:main│ ├─ Xms WARN wraparound bop 1:main├─┘ -1:main├─ms WARN wraparound bop +1:main├─ Xms WARN wraparound bop 1:main┘ -1:mainms WARN wraparound bop +1:main Xms WARN wraparound bop 1:main────────┐ 1:main│ │ │ ├─┘ -1:main│ │ │ ├─ms WARN wraparound bop +1:main│ │ │ ├─ Xms WARN wraparound bop 1:main│ │ ├─┘ -1:main│ │ ├─ms WARN wraparound bop +1:main│ │ ├─ Xms WARN wraparound bop 1:main│ ├─┘ -1:main│ ├─ms WARN wraparound bop +1:main│ ├─ Xms WARN wraparound bop 1:main├─┘ -1:main├─ms WARN wraparound bop +1:main├─ Xms WARN wraparound bop 1:main┘ -1:mainms WARN wraparound bop +1:main Xms WARN wraparound bop 1:main────────┐ 1:main│ │ │ ├─┘ -1:main│ │ │ ├─ms WARN wraparound bop +1:main│ │ │ ├─ Xms WARN wraparound bop 1:main│ │ ├─┘ -1:main│ │ ├─ms WARN wraparound bop +1:main│ │ ├─ Xms WARN wraparound bop 1:main│ ├─┘ -1:main│ ├─ms WARN wraparound bop +1:main│ ├─ Xms WARN wraparound bop 1:main├─┘ -1:main├─ms WARN wraparound bop +1:main├─ Xms WARN wraparound bop 1:main┘ -1:mainms WARN wraparound bop +1:main Xms WARN wraparound bop 1:main────────┐ 1:main│ │ │ ├─┘ -1:main│ │ │ ├─ms WARN wraparound bop +1:main│ │ │ ├─ Xms WARN wraparound bop 1:main│ │ ├─┘ -1:main│ │ ├─ms WARN wraparound bop +1:main│ │ ├─ Xms WARN wraparound bop 1:main│ ├─┘ -1:main│ ├─ms WARN wraparound bop +1:main│ ├─ Xms WARN wraparound bop 1:main├─┘ -1:main├─ms WARN wraparound bop +1:main├─ Xms WARN wraparound bop 1:main┘ diff --git a/vendor/tracing-tree/src/format.rs b/vendor/tracing-tree/src/format.rs index 895c04be2..aa56178be 100644 --- a/vendor/tracing-tree/src/format.rs +++ b/vendor/tracing-tree/src/format.rs @@ -167,11 +167,12 @@ impl Buffers { } pub(crate) fn indent_current(&mut self, indent: usize, config: &Config, style: SpanMode) { - self.current_buf.push('\n'); let prefix = config.prefix(); // Render something when wraparound occurs so the user is aware of it if config.indent_lines { + self.current_buf.push('\n'); + match style { SpanMode::Close { .. } | SpanMode::PostClose => { if indent > 0 && (indent + 1) % config.wraparound == 0 { @@ -417,6 +418,7 @@ fn indent_block( let indent_str = String::from(" ").repeat(indent_spaces); for line in lines { buf.push_str(prefix); + buf.push(' '); buf.push_str(&indent_str); buf.push_str(line); buf.push('\n'); diff --git a/vendor/tracing-tree/src/lib.rs b/vendor/tracing-tree/src/lib.rs index ec3467493..d171c7608 100644 --- a/vendor/tracing-tree/src/lib.rs +++ b/vendor/tracing-tree/src/lib.rs @@ -4,6 +4,7 @@ pub mod time; use crate::time::FormatTime; use format::{Buffers, ColorLevel, Config, FmtEvent, SpanMode}; +use is_terminal::IsTerminal; use nu_ansi_term::{Color, Style}; use std::{ fmt::{self, Write as _}, @@ -65,7 +66,7 @@ impl Default for HierarchicalLayer { impl HierarchicalLayer io::Stderr> { pub fn new(indent_amount: usize) -> Self { - let ansi = atty::is(atty::Stream::Stderr); + let ansi = io::stderr().is_terminal(); let config = Config { ansi, indent_amount, @@ -364,11 +365,21 @@ where }; if let Some(start) = start { let elapsed = start.elapsed(); + let millis = elapsed.as_millis(); + let secs = elapsed.as_secs(); + let (n, unit) = if millis < 1000 { + (millis as _, "ms") + } else if secs < 60 { + (secs, "s ") + } else { + (secs / 60, "m ") + }; + let n = format!("{n:>3}"); write!( &mut event_buf, "{timestamp}{unit} ", - timestamp = self.styled(Style::new().dimmed(), elapsed.as_millis().to_string()), - unit = self.styled(Style::new().dimmed(), "ms"), + timestamp = self.styled(Style::new().dimmed(), n), + unit = self.styled(Style::new().dimmed(), unit), ) .expect("Unable to write to buffer"); } diff --git a/vendor/tracing-tree/tests/ui.rs b/vendor/tracing-tree/tests/ui.rs index 68c54e66e..cca8241d1 100644 --- a/vendor/tracing-tree/tests/ui.rs +++ b/vendor/tracing-tree/tests/ui.rs @@ -1,79 +1,23 @@ -use assert_cmd::prelude::*; +use ui_test::{color_eyre::Result, run_tests, Config, Mode, OutputConflictHandling}; -use std::process::Command; - -// Timings are flaky, so tests would spuriously fail. -// Thus we replace all `/([0-9]+)ms/` with underscores -fn replace_ms(data: &[u8]) -> Vec { - let mut skip = false; - let mut seen_s = false; - let mut v: Vec = data - .iter() - .rev() - .filter_map(|&b| match (b, skip, seen_s) { - (b'0'..=b'9', true, _) => None, - (_, true, _) => { - skip = false; - Some(b) - } - (b's', _, _) => { - seen_s = true; - Some(b) - } - (b'm', _, true) => { - seen_s = false; - skip = true; - Some(b) - } - _ => Some(b), - }) - .collect(); - v.reverse(); - v -} - -fn main() { - for entry in glob::glob("examples/*.rs").expect("Failed to read glob pattern") { - let entry = entry.unwrap(); - let mut cmd = Command::cargo_bin(entry.with_extension("").to_str().unwrap()).unwrap(); - let output = cmd.unwrap(); - let stderr = entry.with_extension("stderr"); - let stdout = entry.with_extension("stdout"); - - if std::env::args().any(|arg| arg == "--bless") { - if output.stderr.is_empty() { - let _ = std::fs::remove_file(stderr); - } else { - std::fs::write(stderr, replace_ms(&output.stderr)).unwrap(); - } - if output.stdout.is_empty() { - let _ = std::fs::remove_file(stdout); - } else { - std::fs::write(stdout, replace_ms(&output.stdout)).unwrap(); - } - } else { - if output.stderr.is_empty() { - assert!( - !stderr.exists(), - "{} exists but there was no stderr output", - stderr.display() - ); - } else { - assert!( - std::fs::read(&stderr).unwrap() == replace_ms(&output.stderr), - "{} is not the expected output, rerun the test with `cargo test -- -- --bless`", - stderr.display() - ); - } - if output.stdout.is_empty() { - assert!(!stdout.exists()); - } else { - assert!( - std::fs::read(&stdout).unwrap() == replace_ms(&output.stdout), - "{} is not the expected output, rerun the test with `cargo test -- -- --bless`", - stdout.display() - ); - } - } - } +fn main() -> Result<()> { + let mut config = Config::default(); + config.root_dir = "examples".into(); + config.dependencies_crate_manifest_path = Some("test_dependencies/Cargo.toml".into()); + config.args.push("--cfg".into()); + config.args.push("feature=\"tracing-log\"".into()); + config.out_dir = Some("target/ui_test".into()); + config.mode = Mode::Run { exit_code: 0 }; + config.stdout_filter("[0-9]{3}(ms|s|m)", " X$1"); + config.stdout_filter("[0-9]{2}(ms|s|m)", " X$1"); + config.stdout_filter("[0-9]{1}(ms|s|m)", "X$1"); + config.stderr_filter("[0-9]{3}(ms|s|m)", " X$1"); + config.stderr_filter("[0-9]{2}(ms|s|m)", " X$1"); + config.stderr_filter("[0-9]{1}(ms|s|m)", "X$1"); + config.output_conflict_handling = if std::env::args().any(|arg| arg == "--bless") { + OutputConflictHandling::Bless + } else { + OutputConflictHandling::Error + }; + run_tests(config) } -- cgit v1.2.3