diff -Nru tailspin-1.3.0+dfsg/Cargo.lock tailspin-2.0.0+dfsg/Cargo.lock
--- tailspin-1.3.0+dfsg/Cargo.lock 2023-07-31 15:36:49.000000000 +0000
+++ tailspin-2.0.0+dfsg/Cargo.lock 2023-11-05 06:58:05.000000000 +0000
@@ -28,16 +28,15 @@
[[package]]
name = "anstream"
-version = "0.3.2"
+version = "0.6.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163"
+checksum = "2ab91ebe16eb252986481c5b62f6098f3b698a45e34b5b98200cf20dd2484a44"
dependencies = [
"anstyle",
"anstyle-parse",
"anstyle-query",
"anstyle-wincon",
"colorchoice",
- "is-terminal",
"utf8parse",
]
@@ -67,9 +66,9 @@
[[package]]
name = "anstyle-wincon"
-version = "1.0.1"
+version = "3.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188"
+checksum = "f0699d10d2f4d628a98ee7b57b289abbc98ff3bad977cb3152709d4bf2330628"
dependencies = [
"anstyle",
"windows-sys 0.48.0",
@@ -77,9 +76,9 @@
[[package]]
name = "async-trait"
-version = "0.1.72"
+version = "0.1.74"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc6dde6e4ed435a4c1ee4e73592f5ba9da2151af10076cc04858746af9352d09"
+checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9"
dependencies = [
"proc-macro2",
"quote",
@@ -115,9 +114,9 @@
[[package]]
name = "bitflags"
-version = "2.3.3"
+version = "2.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42"
+checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
[[package]]
name = "bytes"
@@ -139,20 +138,19 @@
[[package]]
name = "clap"
-version = "4.3.19"
+version = "4.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fd304a20bff958a57f04c4e96a2e7594cc4490a0e809cbd48bb6437edaa452d"
+checksum = "ac495e00dcec98c83465d5ad66c5c4fabd652fd6686e7c6269b117e729a6f17b"
dependencies = [
"clap_builder",
"clap_derive",
- "once_cell",
]
[[package]]
name = "clap_builder"
-version = "4.3.19"
+version = "4.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "01c6a3f08f1fe5662a35cfe393aec09c4df95f60ee93b7556505260f75eee9e1"
+checksum = "c77ed9a32a62e6ca27175d00d29d05ca32e396ea1eb5fb01d8256b669cec7663"
dependencies = [
"anstream",
"anstyle",
@@ -162,18 +160,18 @@
[[package]]
name = "clap_complete"
-version = "4.3.2"
+version = "4.4.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5fc443334c81a804575546c5a8a79b4913b50e28d69232903604cada1de817ce"
+checksum = "bffe91f06a11b4b9420f62103854e90867812cd5d01557f853c5ee8e791b12ae"
dependencies = [
"clap",
]
[[package]]
name = "clap_derive"
-version = "4.3.12"
+version = "4.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050"
+checksum = "cf9804afaaf59a91e75b022a30fb7229a7901f60c755489cc61c9b423b836442"
dependencies = [
"heck",
"proc-macro2",
@@ -183,9 +181,36 @@
[[package]]
name = "clap_lex"
-version = "0.5.0"
+version = "0.6.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "702fc72eb24e5a1e48ce58027a675bc24edd52096d5397d4aea7c6dd9eca0bd1"
+
+[[package]]
+name = "color-eyre"
+version = "0.6.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5a667583cca8c4f8436db8de46ea8233c42a7d9ae424a82d338f2e4675229204"
+dependencies = [
+ "backtrace",
+ "color-spantrace",
+ "eyre",
+ "indenter",
+ "once_cell",
+ "owo-colors",
+ "tracing-error",
+]
+
+[[package]]
+name = "color-spantrace"
+version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2da6da31387c7e4ef160ffab6d5e7f00c42626fe39aea70a7b0f1773f7dd6c1b"
+checksum = "1ba75b3d9449ecdccb27ecbc479fdc0b87fa2dd43d2f8298f9bf0e59aacc8dce"
+dependencies = [
+ "once_cell",
+ "owo-colors",
+ "tracing-core",
+ "tracing-error",
+]
[[package]]
name = "colorchoice"
@@ -225,9 +250,9 @@
[[package]]
name = "ctrlc"
-version = "3.4.0"
+version = "3.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a011bbe2c35ce9c1f143b7af6f94f29a167beb4cd1d29e6740ce836f723120e"
+checksum = "82e95fbd621905b854affdc67943b043a0fbb6ed7385fd5a25650d19a8a6cfdf"
dependencies = [
"nix",
"windows-sys 0.48.0",
@@ -282,6 +307,16 @@
]
[[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 = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -369,6 +404,12 @@
checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
[[package]]
+name = "indenter"
+version = "0.3.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
+
+[[package]]
name = "indexmap"
version = "2.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -437,9 +478,9 @@
[[package]]
name = "libc"
-version = "0.2.146"
+version = "0.2.149"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b"
+checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b"
[[package]]
name = "linemux"
@@ -455,9 +496,9 @@
[[package]]
name = "linux-raw-sys"
-version = "0.4.3"
+version = "0.4.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "09fc20d2ca12cb9f044c93e3bd6d32d523e6e2ec3db4f7b2939cd99026ecd3f0"
+checksum = "da2479e8c062e40bf0066ffa0bc823de0a9368974af99c9f6df941d2c231e03f"
[[package]]
name = "lock_api"
@@ -477,9 +518,9 @@
[[package]]
name = "memchr"
-version = "2.5.0"
+version = "2.6.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
+checksum = "8f232d6ef707e1956a43342693d2a31e72989554d58299d7a88738cc95b0d35c"
[[package]]
name = "miniz_oxide"
@@ -504,14 +545,13 @@
[[package]]
name = "nix"
-version = "0.26.2"
+version = "0.27.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a"
+checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053"
dependencies = [
- "bitflags 1.3.2",
+ "bitflags 2.4.1",
"cfg-if",
"libc",
- "static_assertions",
]
[[package]]
@@ -563,6 +603,12 @@
checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d"
[[package]]
+name = "owo-colors"
+version = "3.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c1b04fb49957986fdce4d6ee7a65027d55d4b6d2265e5848bbb507b58ccfdb6f"
+
+[[package]]
name = "parking_lot"
version = "0.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -587,9 +633,9 @@
[[package]]
name = "pin-project-lite"
-version = "0.2.9"
+version = "0.2.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116"
+checksum = "12cc1b0bf1727a77a54b6654e7b5f1af8604923edc8b81885f8ec92f9e3f0a05"
[[package]]
name = "pin-utils"
@@ -670,6 +716,15 @@
]
[[package]]
+name = "redox_syscall"
+version = "0.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
+dependencies = [
+ "bitflags 1.3.2",
+]
+
+[[package]]
name = "redox_users"
version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -682,9 +737,9 @@
[[package]]
name = "regex"
-version = "1.9.1"
+version = "1.10.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b2eae68fc220f7cf2532e4494aded17545fce192d59cd996e0fe7887f4ceb575"
+checksum = "380b951a9c5e80ddfd6136919eef32310721aa4aacd4889a8d39124b026ab343"
dependencies = [
"aho-corasick",
"memchr",
@@ -694,9 +749,9 @@
[[package]]
name = "regex-automata"
-version = "0.3.2"
+version = "0.4.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "83d3daa6976cffb758ec878f108ba0e062a45b2d6ca3a2cca965338855476caf"
+checksum = "5f804c7828047e88b2d32e2d7fe5a105da8ee3264f01902f796c8e067dc2483f"
dependencies = [
"aho-corasick",
"memchr",
@@ -705,9 +760,9 @@
[[package]]
name = "regex-syntax"
-version = "0.7.4"
+version = "0.8.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e5ea92a5b6195c6ef2a0295ea818b312502c6fc94dde986c5553242e18fd4ce2"
+checksum = "c08c74e62047bb2de4ff487b251e4a92e24f48745648451635cec7d591162d9f"
[[package]]
name = "rustc-demangle"
@@ -717,11 +772,11 @@
[[package]]
name = "rustix"
-version = "0.38.1"
+version = "0.38.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbc6396159432b5c8490d4e301d8c705f61860b8b6c863bf79942ce5401968f3"
+checksum = "2b426b0506e5d50a7d8dafcf2e81471400deb602392c7dd110815afb4eaf02a3"
dependencies = [
- "bitflags 2.3.3",
+ "bitflags 2.4.1",
"errno",
"libc",
"linux-raw-sys",
@@ -745,18 +800,18 @@
[[package]]
name = "serde"
-version = "1.0.179"
+version = "1.0.190"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0a5bf42b8d227d4abf38a1ddb08602e229108a517cd4e5bb28f9c7eaafdce5c0"
+checksum = "91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.179"
+version = "1.0.190"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "741e124f5485c7e60c03b043f79f320bff3527f4bbf12cf3831750dc46a0ec2c"
+checksum = "67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3"
dependencies = [
"proc-macro2",
"quote",
@@ -765,14 +820,23 @@
[[package]]
name = "serde_spanned"
-version = "0.6.3"
+version = "0.6.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "96426c9936fd7a0124915f9185ea1d20aa9445cc9821142f0a73bc9207a2e186"
+checksum = "12022b835073e5b11e90a14f86838ceb1c8fb0325b72416845c487ac0fa95e80"
dependencies = [
"serde",
]
[[package]]
+name = "sharded-slab"
+version = "0.1.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "900fba806f70c630b0a382d0d825e17a0f19fcd059a2ade1ff237bcddf446b31"
+dependencies = [
+ "lazy_static",
+]
+
+[[package]]
name = "shellexpand"
version = "3.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -807,21 +871,15 @@
[[package]]
name = "socket2"
-version = "0.4.9"
+version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662"
+checksum = "2538b18701741680e0322a2302176d3253a35388e2e62f172f64f4f16605f877"
dependencies = [
"libc",
- "winapi",
+ "windows-sys 0.48.0",
]
[[package]]
-name = "static_assertions"
-version = "1.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-
-[[package]]
name = "strsim"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -829,9 +887,9 @@
[[package]]
name = "syn"
-version = "2.0.25"
+version = "2.0.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "15e3fc8c0c74267e2df136e5e5fb656a464158aa57624053375eb9c8c6e25ae2"
+checksum = "04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567"
dependencies = [
"proc-macro2",
"quote",
@@ -840,11 +898,12 @@
[[package]]
name = "tailspin"
-version = "1.3.0"
+version = "2.0.0"
dependencies = [
"async-trait",
"clap",
"clap_complete",
+ "color-eyre",
"colored",
"ctrlc",
"lazy_static",
@@ -855,19 +914,30 @@
"serde",
"shellexpand",
"tempfile",
+ "terminal_size",
"tokio",
"toml",
]
[[package]]
name = "tempfile"
-version = "3.7.0"
+version = "3.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5486094ee78b2e5038a6382ed7645bc084dc2ec433426ca4c3cb61e2007b8998"
+checksum = "7ef1adac450ad7f4b3c28589471ade84f25f731a7a0fe30d71dfa9f60fd808e5"
dependencies = [
"cfg-if",
"fastrand",
- "redox_syscall 0.3.5",
+ "redox_syscall 0.4.1",
+ "rustix",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "terminal_size"
+version = "0.3.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7"
+dependencies = [
"rustix",
"windows-sys 0.48.0",
]
@@ -893,12 +963,21 @@
]
[[package]]
+name = "thread_local"
+version = "1.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
+dependencies = [
+ "cfg-if",
+ "once_cell",
+]
+
+[[package]]
name = "tokio"
-version = "1.29.1"
+version = "1.33.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "532826ff75199d5833b9d2c5fe410f29235e25704ee5f0ef599fb51c21f4a4da"
+checksum = "4f38200e3ef7995e5ef13baec2f432a6da0aa9ac495b2c0e8f3b7eec2c92d653"
dependencies = [
- "autocfg",
"backtrace",
"bytes",
"libc",
@@ -925,9 +1004,9 @@
[[package]]
name = "toml"
-version = "0.7.6"
+version = "0.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c17e963a819c331dcacd7ab957d80bc2b9a9c1e71c804826d2f283dd65306542"
+checksum = "8ff9e3abce27ee2c9a37f9ad37238c1bdd4e789c84ba37df76aa4d528f5072cc"
dependencies = [
"serde",
"serde_spanned",
@@ -937,18 +1016,18 @@
[[package]]
name = "toml_datetime"
-version = "0.6.3"
+version = "0.6.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7cda73e2f1397b1262d6dfdcef8aafae14d1de7748d66822d3bfeeb6d03e5e4b"
+checksum = "3550f4e9685620ac18a50ed434eb3aec30db8ba93b0287467bca5826ea25baf1"
dependencies = [
"serde",
]
[[package]]
name = "toml_edit"
-version = "0.19.12"
+version = "0.20.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c500344a19072298cd05a7224b3c0c629348b78692bf48466c5238656e315a78"
+checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81"
dependencies = [
"indexmap",
"serde",
@@ -958,6 +1037,48 @@
]
[[package]]
+name = "tracing"
+version = "0.1.37"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8"
+dependencies = [
+ "cfg-if",
+ "pin-project-lite",
+ "tracing-core",
+]
+
+[[package]]
+name = "tracing-core"
+version = "0.1.31"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a"
+dependencies = [
+ "once_cell",
+ "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-subscriber"
+version = "0.3.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "30a651bc37f915e81f087d86e62a18eec5f79550c7faff886f7090b4ea757c77"
+dependencies = [
+ "sharded-slab",
+ "thread_local",
+ "tracing-core",
+]
+
+[[package]]
name = "unicode-ident"
version = "1.0.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -970,6 +1091,12 @@
checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
[[package]]
+name = "valuable"
+version = "0.1.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
+
+[[package]]
name = "walkdir"
version = "2.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1150,9 +1277,9 @@
[[package]]
name = "winnow"
-version = "0.4.7"
+version = "0.5.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ca0ace3845f0d96209f0375e6d367e3eb87eb65d27d445bdc9f1843a26f39448"
+checksum = "7c2e3184b9c4e92ad5167ca73039d0c42476302ab603e2fec4487511f38ccefc"
dependencies = [
"memchr",
]
diff -Nru tailspin-1.3.0+dfsg/Cargo.toml tailspin-2.0.0+dfsg/Cargo.toml
--- tailspin-1.3.0+dfsg/Cargo.toml 2023-07-31 15:36:49.000000000 +0000
+++ tailspin-2.0.0+dfsg/Cargo.toml 2023-11-05 06:58:05.000000000 +0000
@@ -1,6 +1,6 @@
[package]
name = "tailspin"
-version = "1.3.0"
+version = "2.0.0"
edition = "2021"
authors = ["Ben Sadeh"]
description = "A log file highlighter"
@@ -11,21 +11,23 @@
[[bin]]
path = "src/main.rs"
-name = "spin"
+name = "tspin"
[dependencies]
-async-trait = "0.1.72"
-clap = { version = "4.3.19", features = ["derive"] }
-clap_complete = "4.3.2"
+async-trait = "0.1.74"
+clap = { version = "4.4.7", features = ["derive"] }
+clap_complete = "4.4.4"
+color-eyre = "0.6.2"
colored = "2"
-ctrlc = "3.4.0"
+ctrlc = "3.4.1"
lazy_static = "1.4.0"
linemux = "0.3"
once_cell = "1.18.0"
rand = "0.8.5"
-regex = "1.9.1"
+regex = "1.10.2"
serde = { version = "1.0", features = ["derive"] }
shellexpand = "3.1.0"
-tempfile = "3.7.0"
-tokio = { version = "1.29.1", features = ["full"] }
-toml = "0.7.6"
+tempfile = "3.8.1"
+terminal_size = "0.3.0"
+tokio = { version = "1.33.0", features = ["full"] }
+toml = "0.8.6"
diff -Nru tailspin-1.3.0+dfsg/CHANGELOG.md tailspin-2.0.0+dfsg/CHANGELOG.md
--- tailspin-1.3.0+dfsg/CHANGELOG.md 2023-07-31 15:36:49.000000000 +0000
+++ tailspin-2.0.0+dfsg/CHANGELOG.md 2023-11-05 06:58:05.000000000 +0000
@@ -1,6 +1,48 @@
# Changelog
+## 1.7.1
-## 1.3.0
+
+
+
+## 2.0.0
+
+- Changed the binary name from `spin` to `tspin`
+
+This is a symbolic release to settle on a new binary name with fewer conflicts. Both `tailspin` and `spin` already exist
+as binaries in different systems and distributions. `tspin` is a short and unique name that is unlikely to conflict with
+other binaries.
+
+## 1.6.1
+
+- Fixed a bug where the `--print` flag would occasionally cause a panic
+
+## 1.6.0
+
+- Added new highlight group under Keywords highlighter: HTTP methods
+- Added option for adding a border to keywords highlighter
+- Disable highlights with `disable` for all highlight groups except Keywords
+- Simplified the configuration file format
+- Date and time can be configured to be hidden
+
+## 1.5.1
+
+- Update man pages
+
+## 1.5.0 - 16.09.23
+
+- Errors are now printed to `stderr` instead of `stdout`
+- Date highlighter now supports different highlights for date and time segment
+- Added Key Value highlighter
+- Added unix process highlighter
+
+## 1.4.0 - 12.08.23
+
+- Added `-t`/`--tail` flag to start reading from the end of a file.
+- Fixed a bug where opening a folder would include hidden files
+- Improved initial output when watching folders
+- Improved output when trying to open a file or folder which doesn't exist
+
+## 1.3.0 - 31.07.23
- Added support for tailing folders
- Changed behavior: `tailspin` will now print to `stdout` by default if used in a pipe. For
diff -Nru tailspin-1.3.0+dfsg/completions/spin.bash tailspin-2.0.0+dfsg/completions/spin.bash
--- tailspin-1.3.0+dfsg/completions/spin.bash 2023-07-31 15:36:49.000000000 +0000
+++ tailspin-2.0.0+dfsg/completions/spin.bash 1970-01-01 00:00:00.000000000 +0000
@@ -1,58 +0,0 @@
-_spin() {
- local i cur prev opts cmd
- COMPREPLY=()
- cur="${COMP_WORDS[COMP_CWORD]}"
- prev="${COMP_WORDS[COMP_CWORD-1]}"
- cmd=""
- opts=""
-
- for i in ${COMP_WORDS[@]}
- do
- case "${cmd},${i}" in
- ",$1")
- cmd="spin"
- ;;
- *)
- ;;
- esac
- done
-
- case "${cmd}" in
- spin)
- opts="-f -p -c -l -h -V --follow --print --config-path --follow-command --create-default-config --show-default-config --z-generate-shell-completions --help --version [FILE]"
- if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- fi
- case "${prev}" in
- --config-path)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -c)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --follow-command)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- -l)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- --z-generate-shell-completions)
- COMPREPLY=($(compgen -f "${cur}"))
- return 0
- ;;
- *)
- COMPREPLY=()
- ;;
- esac
- COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
- return 0
- ;;
- esac
-}
-
-complete -F _spin -o bashdefault -o default spin
diff -Nru tailspin-1.3.0+dfsg/completions/spin.fish tailspin-2.0.0+dfsg/completions/spin.fish
--- tailspin-1.3.0+dfsg/completions/spin.fish 2023-07-31 15:36:49.000000000 +0000
+++ tailspin-2.0.0+dfsg/completions/spin.fish 1970-01-01 00:00:00.000000000 +0000
@@ -1,9 +0,0 @@
-complete -c spin -s c -l config-path -d 'Path to a custom configuration file' -r
-complete -c spin -s l -l follow-command -d 'Continuously listens to the stdout of the provided command and prevents interrupt events (Ctrl + C) from reaching the command' -r
-complete -c spin -l z-generate-shell-completions -d 'Print completions to stdout' -r
-complete -c spin -s f -l follow -d 'Follow (tail) the contents of the file'
-complete -c spin -s p -l print -d 'Print the output to stdout'
-complete -c spin -l create-default-config -d 'Generate a new configuration file'
-complete -c spin -l show-default-config -d 'Print the default configuration'
-complete -c spin -s h -l help -d 'Print help'
-complete -c spin -s V -l version -d 'Print version'
diff -Nru tailspin-1.3.0+dfsg/completions/spin.zsh tailspin-2.0.0+dfsg/completions/spin.zsh
--- tailspin-1.3.0+dfsg/completions/spin.zsh 2023-07-31 15:36:49.000000000 +0000
+++ tailspin-2.0.0+dfsg/completions/spin.zsh 1970-01-01 00:00:00.000000000 +0000
@@ -1,47 +0,0 @@
-#compdef spin
-
-autoload -U is-at-least
-
-_spin() {
- typeset -A opt_args
- typeset -a _arguments_options
- local ret=1
-
- if is-at-least 5.2; then
- _arguments_options=(-s -S -C)
- else
- _arguments_options=(-s -C)
- fi
-
- local context curcontext="$curcontext" state line
- _arguments "${_arguments_options[@]}" \
-'-c+[Path to a custom configuration file]:CONFIG_PATH: ' \
-'--config-path=[Path to a custom configuration file]:CONFIG_PATH: ' \
-'(-f --follow)-l+[Continuously listens to the stdout of the provided command and prevents interrupt events (Ctrl + C) from reaching the command]:LISTEN_COMMAND: ' \
-'(-f --follow)--follow-command=[Continuously listens to the stdout of the provided command and prevents interrupt events (Ctrl + C) from reaching the command]:LISTEN_COMMAND: ' \
-'--z-generate-shell-completions=[Print completions to stdout]:GENERATE_SHELL_COMPLETIONS: ' \
-'-f[Follow (tail) the contents of the file]' \
-'--follow[Follow (tail) the contents of the file]' \
-'(-f --follow)-p[Print the output to stdout]' \
-'(-f --follow)--print[Print the output to stdout]' \
-'--create-default-config[Generate a new configuration file]' \
-'(--create-default-config)--show-default-config[Print the default configuration]' \
-'-h[Print help]' \
-'--help[Print help]' \
-'-V[Print version]' \
-'--version[Print version]' \
-'::FILE -- Path to file or folder:' \
-&& ret=0
-}
-
-(( $+functions[_spin_commands] )) ||
-_spin_commands() {
- local commands; commands=()
- _describe -t commands 'spin commands' commands "$@"
-}
-
-if [ "$funcstack[1]" = "_spin" ]; then
- _spin "$@"
-else
- compdef _spin spin
-fi
diff -Nru tailspin-1.3.0+dfsg/completions/tspin.bash tailspin-2.0.0+dfsg/completions/tspin.bash
--- tailspin-1.3.0+dfsg/completions/tspin.bash 1970-01-01 00:00:00.000000000 +0000
+++ tailspin-2.0.0+dfsg/completions/tspin.bash 2023-11-05 06:58:05.000000000 +0000
@@ -0,0 +1,58 @@
+_tspin() {
+ local i cur prev opts cmd
+ COMPREPLY=()
+ cur="${COMP_WORDS[COMP_CWORD]}"
+ prev="${COMP_WORDS[COMP_CWORD-1]}"
+ cmd=""
+ opts=""
+
+ for i in ${COMP_WORDS[@]}
+ do
+ case "${cmd},${i}" in
+ ",$1")
+ cmd="tspin"
+ ;;
+ *)
+ ;;
+ esac
+ done
+
+ case "${cmd}" in
+ tspin)
+ opts="-f -t -p -c -l -h -V --follow --tail --print --config-path --follow-command --z-generate-shell-completions --help --version [FILE]"
+ if [[ ${cur} == -* || ${COMP_CWORD} -eq 1 ]] ; then
+ COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
+ return 0
+ fi
+ case "${prev}" in
+ --config-path)
+ COMPREPLY=($(compgen -f "${cur}"))
+ return 0
+ ;;
+ -c)
+ COMPREPLY=($(compgen -f "${cur}"))
+ return 0
+ ;;
+ --follow-command)
+ COMPREPLY=($(compgen -f "${cur}"))
+ return 0
+ ;;
+ -l)
+ COMPREPLY=($(compgen -f "${cur}"))
+ return 0
+ ;;
+ --z-generate-shell-completions)
+ COMPREPLY=($(compgen -f "${cur}"))
+ return 0
+ ;;
+ *)
+ COMPREPLY=()
+ ;;
+ esac
+ COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
+ return 0
+ ;;
+ esac
+}
+
+complete -F _tspin -o nosort -o bashdefault -o default tspin
diff -Nru tailspin-1.3.0+dfsg/completions/tspin.fish tailspin-2.0.0+dfsg/completions/tspin.fish
--- tailspin-1.3.0+dfsg/completions/tspin.fish 1970-01-01 00:00:00.000000000 +0000
+++ tailspin-2.0.0+dfsg/completions/tspin.fish 2023-11-05 06:58:05.000000000 +0000
@@ -0,0 +1,8 @@
+complete -c tspin -s c -l config-path -d 'Path to a custom configuration file' -r
+complete -c tspin -s l -l follow-command -d 'Continuously listens to the stdout of the provided command and prevents interrupt events (Ctrl + C) from reaching the command' -r
+complete -c tspin -l z-generate-shell-completions -d 'Print completions to stdout' -r
+complete -c tspin -s f -l follow -d 'Follow (tail) the contents of the file'
+complete -c tspin -s t -l tail -d 'Start at the end of the file'
+complete -c tspin -s p -l print -d 'Print the output to stdout'
+complete -c tspin -s h -l help -d 'Print help'
+complete -c tspin -s V -l version -d 'Print version'
diff -Nru tailspin-1.3.0+dfsg/completions/tspin.zsh tailspin-2.0.0+dfsg/completions/tspin.zsh
--- tailspin-1.3.0+dfsg/completions/tspin.zsh 1970-01-01 00:00:00.000000000 +0000
+++ tailspin-2.0.0+dfsg/completions/tspin.zsh 2023-11-05 06:58:05.000000000 +0000
@@ -0,0 +1,47 @@
+#compdef tspin
+
+autoload -U is-at-least
+
+_tspin() {
+ typeset -A opt_args
+ typeset -a _arguments_options
+ local ret=1
+
+ if is-at-least 5.2; then
+ _arguments_options=(-s -S -C)
+ else
+ _arguments_options=(-s -C)
+ fi
+
+ local context curcontext="$curcontext" state line
+ _arguments "${_arguments_options[@]}" \
+'-c+[Path to a custom configuration file]:CONFIG_PATH: ' \
+'--config-path=[Path to a custom configuration file]:CONFIG_PATH: ' \
+'(-f --follow)-l+[Continuously listens to the stdout of the provided command and prevents interrupt events (Ctrl + C) from reaching the command]:LISTEN_COMMAND: ' \
+'(-f --follow)--follow-command=[Continuously listens to the stdout of the provided command and prevents interrupt events (Ctrl + C) from reaching the command]:LISTEN_COMMAND: ' \
+'--z-generate-shell-completions=[Print completions to stdout]:GENERATE_SHELL_COMPLETIONS: ' \
+'-f[Follow (tail) the contents of the file]' \
+'--follow[Follow (tail) the contents of the file]' \
+'-t[Start at the end of the file]' \
+'--tail[Start at the end of the file]' \
+'(-f --follow)-p[Print the output to stdout]' \
+'(-f --follow)--print[Print the output to stdout]' \
+'-h[Print help]' \
+'--help[Print help]' \
+'-V[Print version]' \
+'--version[Print version]' \
+'::FILE -- Path to file or folder:' \
+&& ret=0
+}
+
+(( $+functions[_tspin_commands] )) ||
+_tspin_commands() {
+ local commands; commands=()
+ _describe -t commands 'tspin commands' commands "$@"
+}
+
+if [ "$funcstack[1]" = "_tspin" ]; then
+ _tspin "$@"
+else
+ compdef _tspin tspin
+fi
diff -Nru tailspin-1.3.0+dfsg/data/config.toml tailspin-2.0.0+dfsg/data/config.toml
--- tailspin-1.3.0+dfsg/data/config.toml 2023-07-31 15:36:49.000000000 +0000
+++ tailspin-2.0.0+dfsg/data/config.toml 1970-01-01 00:00:00.000000000 +0000
@@ -1,54 +0,0 @@
-[groups.date]
-style = { fg = "magenta" }
-
-[groups.number]
-style = { fg = "cyan" }
-
-[groups.quotes]
-style = { fg = "yellow" }
-token = '"'
-
-[groups.uuid]
-segment = { fg = "blue", italic = true }
-separator = { fg = "red" }
-
-[groups.ip]
-segment = { fg = "blue", italic = true }
-separator = { fg = "red" }
-
-[groups.path]
-segment = { fg = "green", italic = true }
-separator = { fg = "yellow" }
-
-[groups.url]
-http = { faint = true }
-https = { bold = true }
-host = { fg = "blue", faint = true }
-path = { fg = "blue" }
-query_params_key = { fg = "magenta" }
-query_params_value = { fg = "cyan" }
-symbols = { fg = "red" }
-
-[[groups.keywords]]
-words = ['ERROR']
-style = { fg = "red" }
-
-[[groups.keywords]]
-words = ['WARN']
-style = { fg = "yellow" }
-
-[[groups.keywords]]
-words = ['INFO']
-style = { fg = "white" }
-
-[[groups.keywords]]
-words = ['DEBUG']
-style = { fg = "green" }
-
-[[groups.keywords]]
-words = ['TRACE']
-style = { faint = true }
-
-[[groups.keywords]]
-words = ['null', 'true', 'false']
-style = { fg = "red", italic = true }
\ No newline at end of file
diff -Nru tailspin-1.3.0+dfsg/debian/changelog tailspin-2.0.0+dfsg/debian/changelog
--- tailspin-1.3.0+dfsg/debian/changelog 2023-08-13 08:26:58.000000000 +0000
+++ tailspin-2.0.0+dfsg/debian/changelog 2023-11-05 08:09:40.000000000 +0000
@@ -1,3 +1,15 @@
+tailspin (2.0.0+dfsg-1) unstable; urgency=medium
+
+ * drop patch 2001, obsoleted by Debian package changes;
+ update and unfuzz patches;
+ add build-dependencies
+ on packages for crates color-eyre terminal_size;
+ bump build-dependency for crate toml;
+ stop builddepend on package for crate futures-util
+ * update long description, based on upstream documentation
+
+ -- Jonas Smedegaard Sun, 05 Nov 2023 09:09:40 +0100
+
tailspin (1.3.0+dfsg-1) unstable; urgency=medium
* update patches;
diff -Nru tailspin-1.3.0+dfsg/debian/control tailspin-2.0.0+dfsg/debian/control
--- tailspin-1.3.0+dfsg/debian/control 2023-08-12 23:59:32.000000000 +0000
+++ tailspin-2.0.0+dfsg/debian/control 2023-11-05 08:09:40.000000000 +0000
@@ -14,9 +14,9 @@
librust-clap-4+derive-dev,
librust-clap-complete-4+default-dev,
librust-linemux-0.3+default-dev,
+ librust-color-eyre-0.6+default-dev,
librust-colored-2+default-dev,
librust-ctrlc-3+default-dev,
- librust-futures-util-dev,
librust-lazy-static-1+default-dev,
librust-once-cell-1+default-dev,
librust-rand-0.8+default-dev,
@@ -25,9 +25,10 @@
librust-serde-1+derive-dev,
librust-shellexpand-3+default-dev,
librust-tempfile-3+default-dev,
+ librust-terminal-size-0.2+default-dev,
librust-tokio-1+default-dev,
librust-tokio-1+full-dev,
- librust-toml-0.5+default-dev,
+ librust-toml-0.7+default-dev,
libstring-shellquote-perl,
Standards-Version: 4.6.2
Homepage: https://github.com/bensadeh/tailspin
@@ -49,10 +50,8 @@
${cargo:X-Cargo-Built-Using},
Description: log file highlighter
tailspin is a command line tool
- for viewing (and `tail`-ing) log files.
+ for viewing and tailing log files.
It highlights important keywords
- to make navigating log files easier.
- .
- tailspin is fast and easy to customize.
- It uses less under the hood
- to provide scrollback, search and filtering.
+ to make navigating log files easier,
+ using less under the hood
+ for scrollback, search and filtering.
diff -Nru tailspin-1.3.0+dfsg/debian/copyright_hints tailspin-2.0.0+dfsg/debian/copyright_hints
--- tailspin-1.3.0+dfsg/debian/copyright_hints 2023-08-13 00:02:23.000000000 +0000
+++ tailspin-2.0.0+dfsg/debian/copyright_hints 2023-11-05 08:09:40.000000000 +0000
@@ -8,10 +8,9 @@
Cargo.lock
Cargo.toml
README.md
- completions/spin.bash
- completions/spin.fish
- completions/spin.zsh
- data/config.toml
+ completions/tspin.bash
+ completions/tspin.fish
+ completions/tspin.zsh
debian/TODO
debian/bash-completion
debian/clean
@@ -23,7 +22,6 @@
debian/manpages
debian/patches/1001_deps.patch
debian/patches/1002_rename.patch
- debian/patches/2001_IsTerminal.patch
debian/patches/README
debian/patches/series
debian/rules
@@ -35,42 +33,43 @@
example-logs/example3
example-logs/example4
example-logs/example5
+ rustfmt.toml
src/cli/mod.rs
src/color.rs
- src/controller/config.rs
- src/controller/mod.rs
- src/file_utils/mod.rs
+ src/config/mod.rs
src/highlight_processor.rs
src/highlight_utils.rs
src/highlighters/date.rs
src/highlighters/ip.rs
+ src/highlighters/key_value.rs
src/highlighters/keyword.rs
src/highlighters/mod.rs
src/highlighters/number.rs
src/highlighters/path.rs
+ src/highlighters/process.rs
src/highlighters/quotes.rs
+ src/highlighters/time.rs
src/highlighters/url.rs
src/highlighters/uuid.rs
- src/io_stream/linemux_reader.rs
- src/io_stream/mod.rs
- src/io_stream/temp_file_writer.rs
- src/io_stream/template_io.rs
- src/io_stream/traits.rs
+ src/io/controller/mod.rs
+ src/io/mod.rs
+ src/io/presenter/empty.rs
+ src/io/presenter/less.rs
+ src/io/presenter/mod.rs
+ src/io/reader/command.rs
+ src/io/reader/linemux.rs
+ src/io/reader/mod.rs
+ src/io/reader/stdin.rs
+ src/io/writer/mod.rs
+ src/io/writer/stdout.rs
+ src/io/writer/temp_file.rs
src/line_info.rs
src/main.rs
- src/presenter/empty.rs
- src/presenter/less.rs
- src/presenter/mod.rs
- src/reader/command.rs
- src/reader/linemux.rs
- src/reader/mod.rs
- src/reader/stdin.rs
+ src/regex/mod.rs
+ src/theme/defaults.rs
src/theme/mod.rs
src/theme_io/mod.rs
src/types.rs
- src/writer/mod.rs
- src/writer/stdout.rs
- src/writer/temp_file.rs
util/generate_all.sh
util/generate_man_pages.sh
util/generate_shell_completions.sh
@@ -78,8 +77,8 @@
License: UNKNOWN
FIXME
-Files: man/spin.1
- util/spin.adoc
+Files: man/tspin.1
+ util/tspin.adoc
Copyright: NONE
License: Expat
FIXME
diff -Nru tailspin-1.3.0+dfsg/debian/patches/1001_deps.patch tailspin-2.0.0+dfsg/debian/patches/1001_deps.patch
--- tailspin-1.3.0+dfsg/debian/patches/1001_deps.patch 2023-08-12 23:46:40.000000000 +0000
+++ tailspin-2.0.0+dfsg/debian/patches/1001_deps.patch 2023-11-05 08:09:40.000000000 +0000
@@ -5,26 +5,31 @@
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/Cargo.toml
+++ b/Cargo.toml
-@@ -15,17 +15,17 @@
+@@ -14,12 +14,12 @@
+ name = "tspin"
[dependencies]
- async-trait = "0.1.72"
--clap = { version = "4.3.19", features = ["derive"] }
--clap_complete = "4.3.2"
-+clap = { version = "4.1.13", features = ["derive"] }
-+clap_complete = "4.3.1"
+-async-trait = "0.1.74"
+-clap = { version = "4.4.7", features = ["derive"] }
+-clap_complete = "4.4.4"
++async-trait = "0.1.72"
++clap = { version = "4.4.6", features = ["derive"] }
++clap_complete = "4.4.3"
+ color-eyre = "0.6.2"
colored = "2"
- ctrlc = "3.4.0"
+-ctrlc = "3.4.1"
++ctrlc = "3.4.0"
lazy_static = "1.4.0"
linemux = "0.3"
once_cell = "1.18.0"
- rand = "0.8.5"
--regex = "1.9.1"
-+regex = "1.7.1"
+@@ -27,7 +27,7 @@
+ regex = "1.10.2"
serde = { version = "1.0", features = ["derive"] }
shellexpand = "3.1.0"
--tempfile = "3.7.0"
-+tempfile = "3.6.0"
- tokio = { version = "1.29.1", features = ["full"] }
--toml = "0.7.6"
-+toml = ">= 0.5, < 0.8"
+-tempfile = "3.8.1"
+-terminal_size = "0.3.0"
++tempfile = "3.8.0"
++terminal_size = ">= 0.2.6, < 0.4"
+ tokio = { version = "1.33.0", features = ["full"] }
+-toml = "0.8.6"
++toml = "0.7.6"
diff -Nru tailspin-1.3.0+dfsg/debian/patches/1002_rename.patch tailspin-2.0.0+dfsg/debian/patches/1002_rename.patch
--- tailspin-1.3.0+dfsg/debian/patches/1002_rename.patch 2023-08-05 23:31:41.000000000 +0000
+++ tailspin-2.0.0+dfsg/debian/patches/1002_rename.patch 2023-11-05 08:09:40.000000000 +0000
@@ -6,14 +6,12 @@
This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
--- a/Cargo.toml
+++ b/Cargo.toml
-@@ -9,10 +9,6 @@
- license = "MIT"
- rust-version = "1.70"
+@@ -11,7 +11,7 @@
+
+ [[bin]]
+ path = "src/main.rs"
+-name = "tspin"
++name = "tailspin"
--[[bin]]
--path = "src/main.rs"
--name = "spin"
--
[dependencies]
async-trait = "0.1.72"
- clap = { version = "4.1.13", features = ["derive"] }
diff -Nru tailspin-1.3.0+dfsg/debian/patches/2001_IsTerminal.patch tailspin-2.0.0+dfsg/debian/patches/2001_IsTerminal.patch
--- tailspin-1.3.0+dfsg/debian/patches/2001_IsTerminal.patch 2023-08-12 23:55:40.000000000 +0000
+++ tailspin-2.0.0+dfsg/debian/patches/2001_IsTerminal.patch 1970-01-01 00:00:00.000000000 +0000
@@ -1,44 +0,0 @@
-Description: replace std::io::IsTerminal with crate atty
- std::io::IsTerminal is unstable until rustc v0.70,
- which is not yet in Debian.
-Author: Jonas Smedegaard
-Bug: https://github.com/bensadeh/tailspin/issues/21
-Last-Update: 2023-07-23
----
-This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
---- a/src/controller/config.rs
-+++ b/src/controller/config.rs
-@@ -4,9 +4,10 @@
- Config, Error, FolderInfo, Input, Output, PathAndLineCount, GENERAL_ERROR,
- MISUSE_SHELL_BUILTIN, OK,
- };
-+use atty::Stream;
- use colored::*;
- use std::fs;
--use std::io::{stdin, IsTerminal};
-+use std::io::stdin;
- use std::path::Path;
-
- enum InputType {
-@@ -21,7 +22,7 @@
- }
-
- pub fn create_config(args: Cli) -> Result {
-- let has_data_from_stdin = !stdin().is_terminal();
-+ let has_data_from_stdin = !atty::is(Stream::Stdin);
-
- validate_input(
- has_data_from_stdin,
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -7,9 +7,9 @@
- repository = "https://github.com/bensadeh/tailspin"
- keywords = ["log", "syntax-highlighting", "tail", "less"]
- license = "MIT"
--rust-version = "1.70"
-
- [dependencies]
-+atty = "0.2"
- async-trait = "0.1.72"
- clap = { version = "4.1.13", features = ["derive"] }
- clap_complete = "4.3.1"
diff -Nru tailspin-1.3.0+dfsg/debian/patches/series tailspin-2.0.0+dfsg/debian/patches/series
--- tailspin-1.3.0+dfsg/debian/patches/series 2023-08-05 23:32:06.000000000 +0000
+++ tailspin-2.0.0+dfsg/debian/patches/series 2023-11-05 08:09:40.000000000 +0000
@@ -1,3 +1,2 @@
1001_deps.patch
1002_rename.patch
-2001_IsTerminal.patch
diff -Nru tailspin-1.3.0+dfsg/example-logs/example1 tailspin-2.0.0+dfsg/example-logs/example1
--- tailspin-1.3.0+dfsg/example-logs/example1 2023-07-31 15:36:49.000000000 +0000
+++ tailspin-2.0.0+dfsg/example-logs/example1 2023-11-05 06:58:05.000000000 +0000
@@ -8,10 +8,10 @@
Sun Aug 14 10:51:22.602 DEBUG sharingd (542) is not entitled for com.apple.wifi.join_history, will not allow request
# Date and Time
-2022-08-29 08:11:36 Task completed.
+07:46:34 Data backup created
+10:51:19.251 Event logged
+2022-08-29 08:11:36 Task completed
2022-09-09 11:48:34,534 Last login attempt failed
-2022-09-22T07:46:34.171800155Z Server encountered an error
-2022-09-22T07:46:34.172389889Z Data backup created
2022-09-22T07:46:34.171800155Z Event logged for debugging purposes
# Numbers
@@ -28,6 +28,13 @@
https://www.openai.com/docs/api?apikey=abc123
https://api.example.org/v1/users/123/edit?param=true&flag=false
+# HTTP Methods
+User with IP 192.168.1.105 initiated a GET request for /about/us
+A POST request by 192.168.1.106 to /api/create-account failed
+Received a PUT operation on /api/v1/users/update-profile
+During routine checks at 14:13:40, a PATCH request was detected
+Unauthorized DELETE attempt on /api/v2/data/secure by user
+
# UUID
User logged in, user ID: 5f7d1bce-81ab-4a87-af78-9a37f26c58b1
Invalid request: 9f5f25be-6b08-4aeb-a10a-023b86581b1f
@@ -63,8 +70,19 @@
Purchase for item "Red Bicycle" was successful. Thank you!
Configuration file "PrimaryConfig" loaded. Starting operations.
Processing new order for customer "JohnDoe". Stand by.
-Fetch operation for record "ID_A56789" failed. Retrying.
-Connection established with "Core Server". Commencing data xfer.
-Data sync issue detected with "InventoryDB". Initiate restore.
-File "DataLog" failed to update. Possible permission issue.
+
+# Key-value pairs
+ts=08:11:36 caller=module_service.go:59 module=table-manager
+ts=08:11:36 caller=module_service.go:59 module=ingester-querier
+ts=08:11:36 caller=lifecycler.go:530 msg="file path is empty"
+ts=2022-09-22 caller=ring.go:275 msg="ring doesn't exist"
+ts=2022-09-21 caller=client.go:247 msg="value is nil"
+
+# Processes
+kernel[0]: Page fault at address 0xabcdef
+mysqld[789]: Connected from 127.0.0.1
+docker[654]: Container abcdefgh started successfully
+sshd[222]: Accepted publickey for root from 192.168.1.20
+cron[101]: Running scheduled job ID 23456
+
diff -Nru tailspin-1.3.0+dfsg/man/spin.1 tailspin-2.0.0+dfsg/man/spin.1
--- tailspin-1.3.0+dfsg/man/spin.1 2023-07-31 15:36:49.000000000 +0000
+++ tailspin-2.0.0+dfsg/man/spin.1 1970-01-01 00:00:00.000000000 +0000
@@ -1,82 +0,0 @@
-'\" t
-.\" Title: spin
-.\" Author: [see the "AUTHOR(S)" section]
-.\" Generator: Asciidoctor 2.0.20
-.\" Date: 2023-07-31
-.\" Manual: tailspin
-.\" Source: tailspin 1.3.0
-.\" Language: English
-.\"
-.TH "SPIN" "1" "2023-07-31" "tailspin 1.3.0" "tailspin"
-.ie \n(.g .ds Aq \(aq
-.el .ds Aq '
-.ss \n[.ss] 0
-.nh
-.ad l
-.de URL
-\fI\\$2\fP <\\$1>\\$3
-..
-.als MTO URL
-.if \n[.g] \{\
-. mso www.tmac
-. am URL
-. ad l
-. .
-. am MTO
-. ad l
-. .
-. LINKSTYLE blue R < >
-.\}
-.SH "NAME"
-spin \- A log file highlighter
-.SH "SYNOPSIS"
-.sp
-\fBspin\fP [\fIOPTION\fP]... [\fIFILE\fP|\fIFOLDER\fP]...
-.SH "DESCRIPTION"
-.sp
-tailspin is a command line tool that highlights log files.
-.SH "OPTIONS"
-.sp
-\fB\-f, \-\-follow\fP
-.RS 4
-Follow (tail) the contents of the file.
-Always true if opening a folder or using the \fI\-\-follow\-command\fP flag.
-.RE
-.sp
-\fB\-p, \-\-print\fP
-.RS 4
-Print the output to stdout instead of viewing the contents in the pager \fIless\fP.
-Always true if stdin has data.
-.RE
-.sp
-\fB\-c, \-\-config\-path\fP \fICONFIG_PATH\fP
-.RS 4
-Specify the path to a custom configuration file.
-.RE
-.sp
-\fB\-l, \-\-follow\-command\fP \fICOMMAND\fP
-.RS 4
-Continuously listens to stdout of the provided command.
-The command traps the interrupt signal to allow for cancelling and resuming follow mode while inside \fIless\fP.
-.RE
-.sp
-\fB\-\-create\-default\-config\fP
-.RS 4
-Generate a new configuration file.
-Uses XDG_CONFIG_HOME as the location if set.
-Otherwise, uses ~/.config/tailspin/config.toml as the default path.
-Will not overwrite current config file if one is already present.
-.RE
-.sp
-\fB\-\-show\-default\-config\fP
-.RS 4
-Print the default configuration.
-.RE
-.SH "SEE ALSO"
-.sp
-\fBless\fP(1), \fBtail\fP(1)
-.SH "ABOUT"
-.sp
-Ben Sadeh (github.com/bensadeh/tailspin)
-.sp
-Released under the MIT License
\ No newline at end of file
diff -Nru tailspin-1.3.0+dfsg/man/tspin.1 tailspin-2.0.0+dfsg/man/tspin.1
--- tailspin-1.3.0+dfsg/man/tspin.1 1970-01-01 00:00:00.000000000 +0000
+++ tailspin-2.0.0+dfsg/man/tspin.1 2023-11-05 06:58:05.000000000 +0000
@@ -0,0 +1,76 @@
+'\" t
+.\" Title: tspin
+.\" Author: [see the "AUTHOR(S)" section]
+.\" Generator: Asciidoctor 2.0.20
+.\" Date: 2023-11-05
+.\" Manual: tailspin
+.\" Source: tailspin 2.0.0
+.\" Language: English
+.\"
+.TH "TSPIN" "1" "2023-11-05" "tailspin 2.0.0" "tailspin"
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.ss \n[.ss] 0
+.nh
+.ad l
+.de URL
+\fI\\$2\fP <\\$1>\\$3
+..
+.als MTO URL
+.if \n[.g] \{\
+. mso www.tmac
+. am URL
+. ad l
+. .
+. am MTO
+. ad l
+. .
+. LINKSTYLE blue R < >
+.\}
+.SH "NAME"
+tspin \- A log file highlighter
+.SH "SYNOPSIS"
+.sp
+\fBspin\fP [\fIOPTION\fP]... [\fIFILE\fP|\fIFOLDER\fP]...
+.SH "DESCRIPTION"
+.sp
+tailspin is a command line tool that highlights log files.
+.SH "OPTIONS"
+.sp
+\fB\-f, \-\-follow\fP
+.RS 4
+Follow (tail) the contents of the file.
+Always true if opening a folder or using the \fI\-\-follow\-command\fP flag.
+.RE
+.sp
+\fB\-t, \-\-tail\fP
+.RS 4
+Start at the end of the file.
+Always true if opening a folder.
+.RE
+.sp
+\fB\-p, \-\-print\fP
+.RS 4
+Print the output to stdout instead of viewing the contents in the pager \fIless\fP.
+Always true if using stdin.
+.RE
+.sp
+\fB\-c, \-\-config\-path\fP \fICONFIG_PATH\fP
+.RS 4
+Specify the path to a custom configuration file.
+Defaults to \fIXDG_CONFIG_HOME/tailspin/config.toml\fP or \fI~/.config/tailspin/config.toml\fP if not set.
+.RE
+.sp
+\fB\-l, \-\-follow\-command\fP \fICOMMAND\fP
+.RS 4
+Continuously listen to stdout of the provided command.
+The command traps the interrupt signal to allow for cancelling and resuming follow mode while inside \fIless\fP.
+.RE
+.SH "SEE ALSO"
+.sp
+\fBless\fP(1), \fBtail\fP(1)
+.SH "ABOUT"
+.sp
+Ben Sadeh (github.com/bensadeh/tailspin)
+.sp
+Released under the MIT License
\ No newline at end of file
diff -Nru tailspin-1.3.0+dfsg/README.md tailspin-2.0.0+dfsg/README.md
--- tailspin-1.3.0+dfsg/README.md 2023-07-31 15:36:49.000000000 +0000
+++ tailspin-2.0.0+dfsg/README.md 2023-11-05 06:58:05.000000000 +0000
@@ -2,7 +2,7 @@
-#
+#
A log file highlighter
@@ -16,9 +16,10 @@
- 🪵 View (or `tail`) any log file of any format
- 🍰 No setup or config required
-- 🌈 Highlight numbers, dates, IP-addresses, UUIDs, URLs and more
+- 🌈 Highlights numbers, dates, IP-addresses, UUIDs, URLs and more
- ⚙️ All highlight groups are customizable
-- 🔍 Uses `less` under the hood to provide **scrollback**, **search** and **filtering**
+- 🧬 Easy to integrate with other commands
+- 🔍 Uses `less` under the hood for scrollback, search and filtering
#
@@ -27,7 +28,9 @@
* [Overview](#overview)
* [Installing](#installing)
* [Highlight Groups](#highlight-groups)
+* [Watching folders](#watching-folders)
* [Customizing Highlight Groups](#customizing-highlight-groups)
+* [Working with `stdin` and `stdout`](#working-with-stdin-and-stdout)
* [Using the pager `less`](#using-the-pager-less)
* [Settings](#settings)
@@ -44,31 +47,34 @@
## Installing
-### Cargo
+### Package Managers
+
+The binary name for `tailspin` is `tspin`.
```console
-# Install
+# Homebrew
+brew install tailspin
+
+# Cargo
cargo install tailspin
-# View log file
-spin [file]
-```
+# AUR
+paru -S tailspin
-> **Note**
-> When installing via cargo, make sure that `$HOME/.cargo/bin` is in your `PATH` environment variable
+# Nix
+nix-shell -p tailspin
-### Debian
+# NetBSD
+pkgin install tailspin
+```
-```console
-# Install
-apt install tailspin
+### From Source
-# View log file
-tailspin [file]
+```console
+cargo install --path .
```
-> **Note**
-> Because of a name collision with another `apt` package, the binary name on Debian is `tailspin`
+Binary will be placed in `~/.cargo/bin`, make sure you add the folder to your `PATH` environment variable.
## Highlight Groups
@@ -78,78 +84,261 @@
+
+Config
+
+```toml
+[date]
+style = { fg = "magenta" }
+# To shorten the date, uncomment the line below
+# shorten = { to = "␣", style = { fg = "magenta" } }
+
+[time]
+time = { fg = "blue" }
+zone = { fg = "red" }
+# To shorten the time, uncomment the line below
+# shorten = { to = "␣", style = { fg = "blue" } }
+```
+
+
+
### Keywords
+
+Config
+
+```toml
+[[keywords]]
+words = ['null', 'true', 'false']
+style = { fg = "red", italic = true }
+
+[[keywords]]
+words = ['GET']
+style = { fg = "black", bg = "green" }
+border = true
+
+# You can add as many keywords as you'd like
+```
+
+
+
### URLs