diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-07 04:48:35 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-07 04:48:35 +0000 |
commit | 207df6fc406e81bfeebdff7f404bd242ff3f099f (patch) | |
tree | a1a796b056909dd0a04ffec163db9363a8757808 /test/expected | |
parent | Releasing progress-linux version 0.11.2-1~progress7.99u1. (diff) | |
download | lnav-207df6fc406e81bfeebdff7f404bd242ff3f099f.tar.xz lnav-207df6fc406e81bfeebdff7f404bd242ff3f099f.zip |
Merging upstream version 0.12.2.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'test/expected')
452 files changed, 10703 insertions, 2031 deletions
diff --git a/test/expected/expected.am b/test/expected/expected.am index 6a88ee8..bedc4dc 100644 --- a/test/expected/expected.am +++ b/test/expected/expected.am @@ -1,15 +1,35 @@ EXPECTED_FILES = \ + $(srcdir)/%reldir%/test_cli.sh_0b3639753916f71254e8c9cce4ebb8bfd9978d3e.err \ + $(srcdir)/%reldir%/test_cli.sh_0b3639753916f71254e8c9cce4ebb8bfd9978d3e.out \ + $(srcdir)/%reldir%/test_cli.sh_108c6922cde063429f76abc3fdb8a81ad9a2f671.err \ + $(srcdir)/%reldir%/test_cli.sh_108c6922cde063429f76abc3fdb8a81ad9a2f671.out \ + $(srcdir)/%reldir%/test_cli.sh_10c33e465ef7681c6b5519d05d557426b26cd43d.err \ + $(srcdir)/%reldir%/test_cli.sh_10c33e465ef7681c6b5519d05d557426b26cd43d.out \ $(srcdir)/%reldir%/test_cli.sh_17a68b798354f9a6cdfab372006caeb74038d15c.err \ $(srcdir)/%reldir%/test_cli.sh_17a68b798354f9a6cdfab372006caeb74038d15c.out \ + $(srcdir)/%reldir%/test_cli.sh_3114508cf42fb2608ef77f4bc294a84885c97a79.err \ + $(srcdir)/%reldir%/test_cli.sh_3114508cf42fb2608ef77f4bc294a84885c97a79.out \ + $(srcdir)/%reldir%/test_cli.sh_4327033cfae0d4c170a38a3c4a570520bfabb493.err \ + $(srcdir)/%reldir%/test_cli.sh_4327033cfae0d4c170a38a3c4a570520bfabb493.out \ $(srcdir)/%reldir%/test_cli.sh_5524542b1a6954ff9741155101497270a2f0c557.err \ $(srcdir)/%reldir%/test_cli.sh_5524542b1a6954ff9741155101497270a2f0c557.out \ + $(srcdir)/%reldir%/test_cli.sh_76aa57821598962e59063a40c20171040c95a731.err \ + $(srcdir)/%reldir%/test_cli.sh_76aa57821598962e59063a40c20171040c95a731.out \ $(srcdir)/%reldir%/test_cli.sh_97e19b9ff3775d84074455a2e8993a0611b1c269.err \ $(srcdir)/%reldir%/test_cli.sh_97e19b9ff3775d84074455a2e8993a0611b1c269.out \ - $(srcdir)/%reldir%/test_cli.sh_a1a09f890f4604309d0a81bbbec8e50fb7d5e887.err \ - $(srcdir)/%reldir%/test_cli.sh_a1a09f890f4604309d0a81bbbec8e50fb7d5e887.out \ + $(srcdir)/%reldir%/test_cli.sh_af3ace7762b4cc150fcdcac86083b379bded7b32.err \ + $(srcdir)/%reldir%/test_cli.sh_af3ace7762b4cc150fcdcac86083b379bded7b32.out \ + $(srcdir)/%reldir%/test_cli.sh_c69c835a3c43210225cf62564b3e9584c899af20.err \ + $(srcdir)/%reldir%/test_cli.sh_c69c835a3c43210225cf62564b3e9584c899af20.out \ + $(srcdir)/%reldir%/test_cli.sh_cc06341dd560f927512e92c7c0985ed8b25827ae.err \ + $(srcdir)/%reldir%/test_cli.sh_cc06341dd560f927512e92c7c0985ed8b25827ae.out \ $(srcdir)/%reldir%/test_cli.sh_f2e41555f1a5f40f54ce241207af602ed1503a2b.err \ $(srcdir)/%reldir%/test_cli.sh_f2e41555f1a5f40f54ce241207af602ed1503a2b.out \ + $(srcdir)/%reldir%/test_cli.sh_ff7da172f4350a2adb74b8764575823d798ed8b6.err \ + $(srcdir)/%reldir%/test_cli.sh_ff7da172f4350a2adb74b8764575823d798ed8b6.out \ + $(srcdir)/%reldir%/test_cmds.sh_015ffe79a08f4c9f0cd1cb84c6afa4398f879fc7.err \ + $(srcdir)/%reldir%/test_cmds.sh_015ffe79a08f4c9f0cd1cb84c6afa4398f879fc7.out \ $(srcdir)/%reldir%/test_cmds.sh_017b495b95218b7c083951e2dba331cfec6e90be.err \ $(srcdir)/%reldir%/test_cmds.sh_017b495b95218b7c083951e2dba331cfec6e90be.out \ $(srcdir)/%reldir%/test_cmds.sh_0b1e4b1523dfca71927b1fe721c74490c51361d1.err \ @@ -74,6 +94,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_cmds.sh_38fa2a95b703d4ce12e82882eca1938264822690.out \ $(srcdir)/%reldir%/test_cmds.sh_3b20a298e2c059d7f6045cbc0c07ca3db3917695.err \ $(srcdir)/%reldir%/test_cmds.sh_3b20a298e2c059d7f6045cbc0c07ca3db3917695.out \ + $(srcdir)/%reldir%/test_cmds.sh_3b4bea458c59d2bac492e568616b610625037ad0.err \ + $(srcdir)/%reldir%/test_cmds.sh_3b4bea458c59d2bac492e568616b610625037ad0.out \ $(srcdir)/%reldir%/test_cmds.sh_453054e29aaca4c2662c45c2a1f2f63f3510d8dd.err \ $(srcdir)/%reldir%/test_cmds.sh_453054e29aaca4c2662c45c2a1f2f63f3510d8dd.out \ $(srcdir)/%reldir%/test_cmds.sh_4b2d91b19008d5b775090e3ef87c111f9e603b15.err \ @@ -88,6 +110,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_cmds.sh_53a9686102f69b07b034df291f554a00b265ed20.out \ $(srcdir)/%reldir%/test_cmds.sh_55c2fd15ec2c7d96dbef7b36a42a1b7b42f90dbc.err \ $(srcdir)/%reldir%/test_cmds.sh_55c2fd15ec2c7d96dbef7b36a42a1b7b42f90dbc.out \ + $(srcdir)/%reldir%/test_cmds.sh_5630626e6f68c3d4a2c3e5f27d024df5950b88b5.err \ + $(srcdir)/%reldir%/test_cmds.sh_5630626e6f68c3d4a2c3e5f27d024df5950b88b5.out \ $(srcdir)/%reldir%/test_cmds.sh_5bfd08c1639701476d7b9348c36afd46fdbe6f2a.err \ $(srcdir)/%reldir%/test_cmds.sh_5bfd08c1639701476d7b9348c36afd46fdbe6f2a.out \ $(srcdir)/%reldir%/test_cmds.sh_624a41e152675575f4b07c19b2cf0e3a028429a2.err \ @@ -96,6 +120,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_cmds.sh_62d68c0a11757c996f24c8f003e6b4059c3e30b2.out \ $(srcdir)/%reldir%/test_cmds.sh_661ec61acdd8f6fa6ec1e3c2cf5f896eef431351.err \ $(srcdir)/%reldir%/test_cmds.sh_661ec61acdd8f6fa6ec1e3c2cf5f896eef431351.out \ + $(srcdir)/%reldir%/test_cmds.sh_68c774418bac897bd4d4fe9dbbf08454886b2e15.err \ + $(srcdir)/%reldir%/test_cmds.sh_68c774418bac897bd4d4fe9dbbf08454886b2e15.out \ $(srcdir)/%reldir%/test_cmds.sh_6a6031113aca32fabc5a3da64b7be46f5ce5a312.err \ $(srcdir)/%reldir%/test_cmds.sh_6a6031113aca32fabc5a3da64b7be46f5ce5a312.out \ $(srcdir)/%reldir%/test_cmds.sh_6e016c0ed61fc652be1a79b864875ffede64f281.err \ @@ -130,6 +156,10 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_cmds.sh_8d5b43c693e78804a8fb06989392fa8cccb46b7b.out \ $(srcdir)/%reldir%/test_cmds.sh_9445861db011dfa2d21a44788047de345ee291e8.err \ $(srcdir)/%reldir%/test_cmds.sh_9445861db011dfa2d21a44788047de345ee291e8.out \ + $(srcdir)/%reldir%/test_cmds.sh_949826cc086c7a5c87270be172e3caa3bf8f928d.err \ + $(srcdir)/%reldir%/test_cmds.sh_949826cc086c7a5c87270be172e3caa3bf8f928d.out \ + $(srcdir)/%reldir%/test_cmds.sh_9527f941dc84a2ac3a030f222e41c6ccd1961cbe.err \ + $(srcdir)/%reldir%/test_cmds.sh_9527f941dc84a2ac3a030f222e41c6ccd1961cbe.out \ $(srcdir)/%reldir%/test_cmds.sh_95beaabe41d72cf4c6810e79c623da759ac1c71b.err \ $(srcdir)/%reldir%/test_cmds.sh_95beaabe41d72cf4c6810e79c623da759ac1c71b.out \ $(srcdir)/%reldir%/test_cmds.sh_968dac54dc80d91a5da2322890c6c26dfa0d8462.err \ @@ -150,6 +180,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_cmds.sh_ac45fb0f8f9578c3ded0855f694698ec38ce31ad.out \ $(srcdir)/%reldir%/test_cmds.sh_af0fcbd30b3fd0d13477aa3325ef0302052a4d9f.err \ $(srcdir)/%reldir%/test_cmds.sh_af0fcbd30b3fd0d13477aa3325ef0302052a4d9f.out \ + $(srcdir)/%reldir%/test_cmds.sh_b3d0588ad144a841200692b46125bddf66f5d8bb.err \ + $(srcdir)/%reldir%/test_cmds.sh_b3d0588ad144a841200692b46125bddf66f5d8bb.out \ $(srcdir)/%reldir%/test_cmds.sh_b5a530d16c982cf769151291f0bfd612ea71183f.err \ $(srcdir)/%reldir%/test_cmds.sh_b5a530d16c982cf769151291f0bfd612ea71183f.out \ $(srcdir)/%reldir%/test_cmds.sh_b6a3bb78e9d60e5e1f5ce5b18e40d2f1662707ab.err \ @@ -184,16 +216,18 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_cmds.sh_ca66660c973f76a3c2a147c7f5035bcb4e8a8bbc.out \ $(srcdir)/%reldir%/test_cmds.sh_ccd326da92d1cacda63501cd1a3077381a18e8f2.err \ $(srcdir)/%reldir%/test_cmds.sh_ccd326da92d1cacda63501cd1a3077381a18e8f2.out \ + $(srcdir)/%reldir%/test_cmds.sh_d1afefacbdd387f02562c8633968b0162a588502.err \ + $(srcdir)/%reldir%/test_cmds.sh_d1afefacbdd387f02562c8633968b0162a588502.out \ $(srcdir)/%reldir%/test_cmds.sh_d3b69abdfb39e4bfa5828c2f9593e2b2b7ed4d5d.err \ $(srcdir)/%reldir%/test_cmds.sh_d3b69abdfb39e4bfa5828c2f9593e2b2b7ed4d5d.out \ $(srcdir)/%reldir%/test_cmds.sh_d76d77ad95b9f120825417a6a8220c13df9541fc.err \ $(srcdir)/%reldir%/test_cmds.sh_d76d77ad95b9f120825417a6a8220c13df9541fc.out \ - $(srcdir)/%reldir%/test_cmds.sh_d7eebacdcf2cb194f25fa4ef97b7b5376b442467.err \ - $(srcdir)/%reldir%/test_cmds.sh_d7eebacdcf2cb194f25fa4ef97b7b5376b442467.out \ $(srcdir)/%reldir%/test_cmds.sh_d836c84398c831c976df46f46fe3bf5983c44c37.err \ $(srcdir)/%reldir%/test_cmds.sh_d836c84398c831c976df46f46fe3bf5983c44c37.out \ $(srcdir)/%reldir%/test_cmds.sh_d8eeef53a58bdeddbc1028d7c525413e3ca1c8df.err \ $(srcdir)/%reldir%/test_cmds.sh_d8eeef53a58bdeddbc1028d7c525413e3ca1c8df.out \ + $(srcdir)/%reldir%/test_cmds.sh_da5f7160b967e60dbd772573614e2da89c5e22b2.err \ + $(srcdir)/%reldir%/test_cmds.sh_da5f7160b967e60dbd772573614e2da89c5e22b2.out \ $(srcdir)/%reldir%/test_cmds.sh_dbdd62995fdefc8318053af05a32416eccfa79fc.err \ $(srcdir)/%reldir%/test_cmds.sh_dbdd62995fdefc8318053af05a32416eccfa79fc.out \ $(srcdir)/%reldir%/test_cmds.sh_dd41fbbcd71699314af232156d4155fbdf849131.err \ @@ -210,12 +244,16 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_cmds.sh_eb22c3e94c536a1bfaeae0c40d271b5b4b08f4fc.out \ $(srcdir)/%reldir%/test_cmds.sh_ec2b28c6ea328e3ea56b13ab8ca3d9ee856a9dda.err \ $(srcdir)/%reldir%/test_cmds.sh_ec2b28c6ea328e3ea56b13ab8ca3d9ee856a9dda.out \ + $(srcdir)/%reldir%/test_cmds.sh_ec3a64cad41b070a1d04e2bfc3dc14cb2d964091.err \ + $(srcdir)/%reldir%/test_cmds.sh_ec3a64cad41b070a1d04e2bfc3dc14cb2d964091.out \ $(srcdir)/%reldir%/test_cmds.sh_ed5b73be0b991e0e8d6735e31df5b37c4286321b.err \ $(srcdir)/%reldir%/test_cmds.sh_ed5b73be0b991e0e8d6735e31df5b37c4286321b.out \ $(srcdir)/%reldir%/test_cmds.sh_f788d5f5932905d09ecbd581040ec5ce76459da5.err \ $(srcdir)/%reldir%/test_cmds.sh_f788d5f5932905d09ecbd581040ec5ce76459da5.out \ $(srcdir)/%reldir%/test_cmds.sh_ff6faebbde8586e04bfadba14a3d2bb4451784ad.err \ $(srcdir)/%reldir%/test_cmds.sh_ff6faebbde8586e04bfadba14a3d2bb4451784ad.out \ + $(srcdir)/%reldir%/test_config.sh_13fa2428c26fa12e732209620e21466b36bab252.err \ + $(srcdir)/%reldir%/test_config.sh_13fa2428c26fa12e732209620e21466b36bab252.out \ $(srcdir)/%reldir%/test_config.sh_2765ea0d4c037b8c935840604edb0ae796c97a04.err \ $(srcdir)/%reldir%/test_config.sh_2765ea0d4c037b8c935840604edb0ae796c97a04.out \ $(srcdir)/%reldir%/test_config.sh_5fd9fbccc35e9b06abdd913da0c16bdb306b926e.err \ @@ -244,12 +282,34 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_events.sh_d9c7907f907b2335e1328b23fdc46d0968a608d9.out \ $(srcdir)/%reldir%/test_events.sh_ed8dc44add223341c03ccb7b3e18371bdb42b710.err \ $(srcdir)/%reldir%/test_events.sh_ed8dc44add223341c03ccb7b3e18371bdb42b710.out \ + $(srcdir)/%reldir%/test_format_installer.sh_1e08efc3b8c7b67d944a1f8c475cd31d98d5b4f6.err \ + $(srcdir)/%reldir%/test_format_installer.sh_1e08efc3b8c7b67d944a1f8c475cd31d98d5b4f6.out \ + $(srcdir)/%reldir%/test_format_installer.sh_6cd73153a8990b8ddb8ce489e90ec667a442f7f9.err \ + $(srcdir)/%reldir%/test_format_installer.sh_6cd73153a8990b8ddb8ce489e90ec667a442f7f9.out \ + $(srcdir)/%reldir%/test_format_installer.sh_947cbc64a150c7fe2a17e1c7a69e9a932aeaa16b.err \ + $(srcdir)/%reldir%/test_format_installer.sh_947cbc64a150c7fe2a17e1c7a69e9a932aeaa16b.out \ $(srcdir)/%reldir%/test_format_loader.sh_15e861d2327512a721fd42ae51dc5427689e0bb6.err \ $(srcdir)/%reldir%/test_format_loader.sh_15e861d2327512a721fd42ae51dc5427689e0bb6.out \ $(srcdir)/%reldir%/test_format_loader.sh_5992e2695b7e6cf1f3520dbb87af8fc2b8f27088.err \ $(srcdir)/%reldir%/test_format_loader.sh_5992e2695b7e6cf1f3520dbb87af8fc2b8f27088.out \ $(srcdir)/%reldir%/test_format_loader.sh_fca6c1fb9f3aaa69b3ffb2d1a8a86434b2f4a247.err \ $(srcdir)/%reldir%/test_format_loader.sh_fca6c1fb9f3aaa69b3ffb2d1a8a86434b2f4a247.out \ + $(srcdir)/%reldir%/test_gantt.sh_3af11588ee36bab7e2caea0f7a24d3c9cafd2310.err \ + $(srcdir)/%reldir%/test_gantt.sh_3af11588ee36bab7e2caea0f7a24d3c9cafd2310.out \ + $(srcdir)/%reldir%/test_gantt.sh_63500be50fc6743d8312133e2030cbbc39ca15ff.err \ + $(srcdir)/%reldir%/test_gantt.sh_63500be50fc6743d8312133e2030cbbc39ca15ff.out \ + $(srcdir)/%reldir%/test_gantt.sh_74a94ee9103eac5e8e78ca57bccf49efa3827a9d.err \ + $(srcdir)/%reldir%/test_gantt.sh_74a94ee9103eac5e8e78ca57bccf49efa3827a9d.out \ + $(srcdir)/%reldir%/test_gantt.sh_83db753dd2669f801810f311e2d7d74397e10f26.err \ + $(srcdir)/%reldir%/test_gantt.sh_83db753dd2669f801810f311e2d7d74397e10f26.out \ + $(srcdir)/%reldir%/test_gantt.sh_8fed8a7400042814ba13e50be5e3bd1741d82119.err \ + $(srcdir)/%reldir%/test_gantt.sh_8fed8a7400042814ba13e50be5e3bd1741d82119.out \ + $(srcdir)/%reldir%/test_gantt.sh_b013ab41c3cca76cf05a01ca1ba65888be247ada.err \ + $(srcdir)/%reldir%/test_gantt.sh_b013ab41c3cca76cf05a01ca1ba65888be247ada.out \ + $(srcdir)/%reldir%/test_gantt.sh_cde7947f361e5f3d4cd1bbc3f7458f426b6a8eb4.err \ + $(srcdir)/%reldir%/test_gantt.sh_cde7947f361e5f3d4cd1bbc3f7458f426b6a8eb4.out \ + $(srcdir)/%reldir%/test_gantt.sh_e6a4681a5a671c84c020dc91d7ce03c9d17fde07.err \ + $(srcdir)/%reldir%/test_gantt.sh_e6a4681a5a671c84c020dc91d7ce03c9d17fde07.out \ $(srcdir)/%reldir%/test_json_format.sh_168cac40c27f547044c89d39eb0ff2ef81da4b21.err \ $(srcdir)/%reldir%/test_json_format.sh_168cac40c27f547044c89d39eb0ff2ef81da4b21.out \ $(srcdir)/%reldir%/test_json_format.sh_1bb0fd243e916546aea22029245ac590dae17a86.err \ @@ -260,6 +320,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_json_format.sh_4315a3d6124c14cbe3c474b6dbf4cc8720a9859f.out \ $(srcdir)/%reldir%/test_json_format.sh_469f005b0708d629bc95f0c48a5e390f440c1fef.err \ $(srcdir)/%reldir%/test_json_format.sh_469f005b0708d629bc95f0c48a5e390f440c1fef.out \ + $(srcdir)/%reldir%/test_json_format.sh_5795c5ffd98ae581b30c6f0983349bf7a6a84501.err \ + $(srcdir)/%reldir%/test_json_format.sh_5795c5ffd98ae581b30c6f0983349bf7a6a84501.out \ $(srcdir)/%reldir%/test_json_format.sh_6767b91d715338c24c67e928b59c560c84ddf4be.err \ $(srcdir)/%reldir%/test_json_format.sh_6767b91d715338c24c67e928b59c560c84ddf4be.out \ $(srcdir)/%reldir%/test_json_format.sh_6fbe20faa161ab9fa77df7568fff84bf3e47e920.err \ @@ -276,6 +338,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_json_format.sh_84a71e94dc34661a70bb9015b67ba00e93e9cfb5.out \ $(srcdir)/%reldir%/test_json_format.sh_85d03b1b41a7f819af135d2521a8f2c59418e907.err \ $(srcdir)/%reldir%/test_json_format.sh_85d03b1b41a7f819af135d2521a8f2c59418e907.out \ + $(srcdir)/%reldir%/test_json_format.sh_895283eeb4c10e9c1702fafd13723c8085944f88.err \ + $(srcdir)/%reldir%/test_json_format.sh_895283eeb4c10e9c1702fafd13723c8085944f88.out \ $(srcdir)/%reldir%/test_json_format.sh_8f2ebcd319afc7966ef11e31f9dd646bf6f001dd.err \ $(srcdir)/%reldir%/test_json_format.sh_8f2ebcd319afc7966ef11e31f9dd646bf6f001dd.out \ $(srcdir)/%reldir%/test_json_format.sh_952297a90e312d2184fe3e4df795ddc731b096c9.err \ @@ -302,18 +366,24 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_json_format.sh_f740026626ab554dacb249762d8be7d6539b8c6e.out \ $(srcdir)/%reldir%/test_json_format.sh_fe19b7ebd349cd689b3f5c22618eab5ce995e68e.err \ $(srcdir)/%reldir%/test_json_format.sh_fe19b7ebd349cd689b3f5c22618eab5ce995e68e.out \ + $(srcdir)/%reldir%/test_logfile.sh_00877d2e9dadab916a02005a068410dfbd85ec74.err \ + $(srcdir)/%reldir%/test_logfile.sh_00877d2e9dadab916a02005a068410dfbd85ec74.out \ $(srcdir)/%reldir%/test_logfile.sh_05d1505168bf34b89fc0d1a39f1409cfe798119e.err \ $(srcdir)/%reldir%/test_logfile.sh_05d1505168bf34b89fc0d1a39f1409cfe798119e.out \ $(srcdir)/%reldir%/test_logfile.sh_08d731a04c877a34819b35de185e30a74c9fd497.err \ $(srcdir)/%reldir%/test_logfile.sh_08d731a04c877a34819b35de185e30a74c9fd497.out \ $(srcdir)/%reldir%/test_logfile.sh_09bd16e044302f6b121092534708594bdad11b5a.err \ $(srcdir)/%reldir%/test_logfile.sh_09bd16e044302f6b121092534708594bdad11b5a.out \ - $(srcdir)/%reldir%/test_logfile.sh_1c6eee38f66356fcd9a9f0faedaea6dbcc901060.err \ - $(srcdir)/%reldir%/test_logfile.sh_1c6eee38f66356fcd9a9f0faedaea6dbcc901060.out \ + $(srcdir)/%reldir%/test_logfile.sh_18d9a7beeb09041993d0d6da488fc8192d111bd9.err \ + $(srcdir)/%reldir%/test_logfile.sh_18d9a7beeb09041993d0d6da488fc8192d111bd9.out \ $(srcdir)/%reldir%/test_logfile.sh_218ecb88b4753010c4264b3ac351260b4811612f.err \ $(srcdir)/%reldir%/test_logfile.sh_218ecb88b4753010c4264b3ac351260b4811612f.out \ $(srcdir)/%reldir%/test_logfile.sh_290a3c49e53c2229a7400c107338fa0bb38375e2.err \ $(srcdir)/%reldir%/test_logfile.sh_290a3c49e53c2229a7400c107338fa0bb38375e2.out \ + $(srcdir)/%reldir%/test_logfile.sh_2e72d848a51ac1eb476b973c61fe43a65d579ba5.err \ + $(srcdir)/%reldir%/test_logfile.sh_2e72d848a51ac1eb476b973c61fe43a65d579ba5.out \ + $(srcdir)/%reldir%/test_logfile.sh_341e491abcf8772422bafb8b0eaea6492da230f6.err \ + $(srcdir)/%reldir%/test_logfile.sh_341e491abcf8772422bafb8b0eaea6492da230f6.out \ $(srcdir)/%reldir%/test_logfile.sh_3fc6bfd8a6160817211f3e14fde957af75b9dbe7.err \ $(srcdir)/%reldir%/test_logfile.sh_3fc6bfd8a6160817211f3e14fde957af75b9dbe7.out \ $(srcdir)/%reldir%/test_logfile.sh_4a2a907fcb069b8d6e65961a7b2e796d6c3a87b1.err \ @@ -322,12 +392,28 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_logfile.sh_6602faf7817c494c33e32da7ee95f13aa9210d01.out \ $(srcdir)/%reldir%/test_logfile.sh_7c2e11488bccc59458b5775db4b90de964858259.err \ $(srcdir)/%reldir%/test_logfile.sh_7c2e11488bccc59458b5775db4b90de964858259.out \ + $(srcdir)/%reldir%/test_logfile.sh_82d65f4dac07b1623f8202444d5b9144096e8243.err \ + $(srcdir)/%reldir%/test_logfile.sh_82d65f4dac07b1623f8202444d5b9144096e8243.out \ + $(srcdir)/%reldir%/test_logfile.sh_8a5e754cd471e5fdcdaede49c9290903acd7aad6.err \ + $(srcdir)/%reldir%/test_logfile.sh_8a5e754cd471e5fdcdaede49c9290903acd7aad6.out \ $(srcdir)/%reldir%/test_logfile.sh_a7037efd0c4bbf51940137a44e57d94e9307e83e.err \ $(srcdir)/%reldir%/test_logfile.sh_a7037efd0c4bbf51940137a44e57d94e9307e83e.out \ $(srcdir)/%reldir%/test_logfile.sh_c18e14a26d8261c9f72747118a469266121d5459.err \ $(srcdir)/%reldir%/test_logfile.sh_c18e14a26d8261c9f72747118a469266121d5459.out \ + $(srcdir)/%reldir%/test_logfile.sh_cc368d4b4bb6a9b9c79bd5a70ffa1f2d9d01e286.err \ + $(srcdir)/%reldir%/test_logfile.sh_cc368d4b4bb6a9b9c79bd5a70ffa1f2d9d01e286.out \ + $(srcdir)/%reldir%/test_logfile.sh_ccb0d31813367c8d9dc5b5df383fac5b780711c1.err \ + $(srcdir)/%reldir%/test_logfile.sh_ccb0d31813367c8d9dc5b5df383fac5b780711c1.out \ + $(srcdir)/%reldir%/test_logfile.sh_d14f6d8888652321206549df8a9535399f0fd372.err \ + $(srcdir)/%reldir%/test_logfile.sh_d14f6d8888652321206549df8a9535399f0fd372.out \ + $(srcdir)/%reldir%/test_logfile.sh_de8d59879fe6aa5a012b0748ff77ae26c07aea89.err \ + $(srcdir)/%reldir%/test_logfile.sh_de8d59879fe6aa5a012b0748ff77ae26c07aea89.out \ $(srcdir)/%reldir%/test_logfile.sh_e840b674cd65936a72bd64b1dac1524d16fe44c3.err \ $(srcdir)/%reldir%/test_logfile.sh_e840b674cd65936a72bd64b1dac1524d16fe44c3.out \ + $(srcdir)/%reldir%/test_logfile.sh_f171f265d8d45a2707e8b9f53e938f574c614d25.err \ + $(srcdir)/%reldir%/test_logfile.sh_f171f265d8d45a2707e8b9f53e938f574c614d25.out \ + $(srcdir)/%reldir%/test_meta.sh_0ae5840c0758ec95a397493ac3c3d4fabd397a34.err \ + $(srcdir)/%reldir%/test_meta.sh_0ae5840c0758ec95a397493ac3c3d4fabd397a34.out \ $(srcdir)/%reldir%/test_meta.sh_154047fb52e4831aabf7d36512247bad6a6a2cf7.err \ $(srcdir)/%reldir%/test_meta.sh_154047fb52e4831aabf7d36512247bad6a6a2cf7.out \ $(srcdir)/%reldir%/test_meta.sh_3c9b5940f7533c5fc3d4956a6efce50a9e7132d4.err \ @@ -340,6 +426,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_meta.sh_48e85ba0c0945a5085fb4ee255771406061a9c17.out \ $(srcdir)/%reldir%/test_meta.sh_4c39b356748c67ccf8a6027a1af88da532f8252a.err \ $(srcdir)/%reldir%/test_meta.sh_4c39b356748c67ccf8a6027a1af88da532f8252a.out \ + $(srcdir)/%reldir%/test_meta.sh_65325d1bcb58e530a8d681685fea56803f67a2eb.err \ + $(srcdir)/%reldir%/test_meta.sh_65325d1bcb58e530a8d681685fea56803f67a2eb.out \ $(srcdir)/%reldir%/test_meta.sh_7b75763926d832bf9784ca234a060859770aabe7.err \ $(srcdir)/%reldir%/test_meta.sh_7b75763926d832bf9784ca234a060859770aabe7.out \ $(srcdir)/%reldir%/test_meta.sh_811b1a8a176b25001a89e35b295a1117ab76969b.err \ @@ -348,6 +436,10 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_meta.sh_83ac877aa9d38b25945cf96d6326a2468187c40f.out \ $(srcdir)/%reldir%/test_meta.sh_a7489c1f0e001adc732b7e2ab31bb30960fda078.err \ $(srcdir)/%reldir%/test_meta.sh_a7489c1f0e001adc732b7e2ab31bb30960fda078.out \ + $(srcdir)/%reldir%/test_meta.sh_aae427fe704f131f8466fbfc9e7967c2e874530a.err \ + $(srcdir)/%reldir%/test_meta.sh_aae427fe704f131f8466fbfc9e7967c2e874530a.out \ + $(srcdir)/%reldir%/test_meta.sh_b622c04c2bede5371bfa6f2627b0474049ecc5e9.err \ + $(srcdir)/%reldir%/test_meta.sh_b622c04c2bede5371bfa6f2627b0474049ecc5e9.out \ $(srcdir)/%reldir%/test_meta.sh_c063f96398650f130941bbbf4cf63c1244fdbee5.err \ $(srcdir)/%reldir%/test_meta.sh_c063f96398650f130941bbbf4cf63c1244fdbee5.out \ $(srcdir)/%reldir%/test_meta.sh_c75128169049bd88d5eaf8b84a7f617e5ae5d936.err \ @@ -356,6 +448,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_meta.sh_c8fb22932af2467a2651797a8a8d8cddcd09431d.out \ $(srcdir)/%reldir%/test_meta.sh_d6af0b41066ca3be0bbce89c83c011f4ecfa516e.err \ $(srcdir)/%reldir%/test_meta.sh_d6af0b41066ca3be0bbce89c83c011f4ecfa516e.out \ + $(srcdir)/%reldir%/test_meta.sh_f7c55356df0d71c51eb7629c5a81f347083ce1ef.err \ + $(srcdir)/%reldir%/test_meta.sh_f7c55356df0d71c51eb7629c5a81f347083ce1ef.out \ $(srcdir)/%reldir%/test_meta.sh_fd09cb565f44a114d8c9a519e571918e30262eaf.err \ $(srcdir)/%reldir%/test_meta.sh_fd09cb565f44a114d8c9a519e571918e30262eaf.out \ $(srcdir)/%reldir%/test_meta.sh_fdf4a91aa55262255816dff7d605f1f0a5d6fe92.err \ @@ -376,16 +470,78 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_pretty_print.sh_cd361eeca7e91bfab942b75d6c3422c7a456a111.out \ $(srcdir)/%reldir%/test_pretty_print.sh_f8feb52a321026d9562b271eb37a2c56dfaed329.err \ $(srcdir)/%reldir%/test_pretty_print.sh_f8feb52a321026d9562b271eb37a2c56dfaed329.out \ + $(srcdir)/%reldir%/test_prql.sh_06900fac5c2e854b1208320b753fcd43d4ba63a3.err \ + $(srcdir)/%reldir%/test_prql.sh_06900fac5c2e854b1208320b753fcd43d4ba63a3.out \ + $(srcdir)/%reldir%/test_prql.sh_15ebcd913f56cde35af26c6300533d6e76bf1b55.err \ + $(srcdir)/%reldir%/test_prql.sh_15ebcd913f56cde35af26c6300533d6e76bf1b55.out \ + $(srcdir)/%reldir%/test_prql.sh_5aea925b5ad95f55ce6b1b07b7046bc3d7310137.err \ + $(srcdir)/%reldir%/test_prql.sh_5aea925b5ad95f55ce6b1b07b7046bc3d7310137.out \ + $(srcdir)/%reldir%/test_regex101.sh_0fa3663a45aca6a328cb728872af7ed7ee896f1c.err \ + $(srcdir)/%reldir%/test_regex101.sh_0fa3663a45aca6a328cb728872af7ed7ee896f1c.out \ + $(srcdir)/%reldir%/test_regex101.sh_182ae9244db314a953af2bee969726e381bc5a32.err \ + $(srcdir)/%reldir%/test_regex101.sh_182ae9244db314a953af2bee969726e381bc5a32.out \ + $(srcdir)/%reldir%/test_regex101.sh_2158f1f011ba8e1b152396c072790c076fdb8ce8.err \ + $(srcdir)/%reldir%/test_regex101.sh_2158f1f011ba8e1b152396c072790c076fdb8ce8.out \ + $(srcdir)/%reldir%/test_regex101.sh_281af24141680330791db7f7c5fa70833ce08a6b.err \ + $(srcdir)/%reldir%/test_regex101.sh_281af24141680330791db7f7c5fa70833ce08a6b.out \ + $(srcdir)/%reldir%/test_regex101.sh_35703b13990785632cca82123fb3883797959c0b.err \ + $(srcdir)/%reldir%/test_regex101.sh_35703b13990785632cca82123fb3883797959c0b.out \ + $(srcdir)/%reldir%/test_regex101.sh_366730cac50b4a09b7de4b84641791470b1cb9a3.err \ + $(srcdir)/%reldir%/test_regex101.sh_366730cac50b4a09b7de4b84641791470b1cb9a3.out \ + $(srcdir)/%reldir%/test_regex101.sh_3d18474a3e472fff6e23e0c41337ec9188fee591.err \ + $(srcdir)/%reldir%/test_regex101.sh_3d18474a3e472fff6e23e0c41337ec9188fee591.out \ + $(srcdir)/%reldir%/test_regex101.sh_442cc58676590a3604d5c2183f5fe0a75c98351a.err \ + $(srcdir)/%reldir%/test_regex101.sh_442cc58676590a3604d5c2183f5fe0a75c98351a.out \ + $(srcdir)/%reldir%/test_regex101.sh_566fd88d216a44bc1c6e23f2d6f2d0caf99d42f9.err \ + $(srcdir)/%reldir%/test_regex101.sh_566fd88d216a44bc1c6e23f2d6f2d0caf99d42f9.out \ + $(srcdir)/%reldir%/test_regex101.sh_5f2f7ecb6ab9cbec4b41385b91bd038906b8a7b2.err \ + $(srcdir)/%reldir%/test_regex101.sh_5f2f7ecb6ab9cbec4b41385b91bd038906b8a7b2.out \ + $(srcdir)/%reldir%/test_regex101.sh_629bde30483e0a6461076e9058f3a5eb81ae0425.err \ + $(srcdir)/%reldir%/test_regex101.sh_629bde30483e0a6461076e9058f3a5eb81ae0425.out \ + $(srcdir)/%reldir%/test_regex101.sh_630db454054cf92ec9bd0f4e3e83300047f583ff.err \ + $(srcdir)/%reldir%/test_regex101.sh_630db454054cf92ec9bd0f4e3e83300047f583ff.out \ + $(srcdir)/%reldir%/test_regex101.sh_771af6f3d29b8350542d5c6e98bdbf4c223cd531.err \ + $(srcdir)/%reldir%/test_regex101.sh_771af6f3d29b8350542d5c6e98bdbf4c223cd531.out \ + $(srcdir)/%reldir%/test_regex101.sh_7991a5b617867cf37c9f7baa85ffa425f7d455a2.err \ + $(srcdir)/%reldir%/test_regex101.sh_7991a5b617867cf37c9f7baa85ffa425f7d455a2.out \ + $(srcdir)/%reldir%/test_regex101.sh_79ee3f5fe71ccec97b2619d8c1f74ca97ffd2243.err \ + $(srcdir)/%reldir%/test_regex101.sh_79ee3f5fe71ccec97b2619d8c1f74ca97ffd2243.out \ + $(srcdir)/%reldir%/test_regex101.sh_7de76c174c58d67bf93e8f01d6d55ebb6a023f10.err \ + $(srcdir)/%reldir%/test_regex101.sh_7de76c174c58d67bf93e8f01d6d55ebb6a023f10.out \ + $(srcdir)/%reldir%/test_regex101.sh_8a43e6657d4f60e68d31eb8302542ca28e80d077.err \ + $(srcdir)/%reldir%/test_regex101.sh_8a43e6657d4f60e68d31eb8302542ca28e80d077.out \ + $(srcdir)/%reldir%/test_regex101.sh_8e93a3b6b941847c71409a297779fbb0a6666a51.err \ + $(srcdir)/%reldir%/test_regex101.sh_8e93a3b6b941847c71409a297779fbb0a6666a51.out \ + $(srcdir)/%reldir%/test_regex101.sh_95c56a9d146ec9a7c2196559d316f928b2ae6ae9.err \ + $(srcdir)/%reldir%/test_regex101.sh_95c56a9d146ec9a7c2196559d316f928b2ae6ae9.out \ + $(srcdir)/%reldir%/test_regex101.sh_9d101ee29c45cdb8c0f117ad736c9a5dd5da5839.err \ + $(srcdir)/%reldir%/test_regex101.sh_9d101ee29c45cdb8c0f117ad736c9a5dd5da5839.out \ + $(srcdir)/%reldir%/test_regex101.sh_c43e07df9b3068696fdc8759c7561135db981b38.err \ + $(srcdir)/%reldir%/test_regex101.sh_c43e07df9b3068696fdc8759c7561135db981b38.out \ + $(srcdir)/%reldir%/test_regex101.sh_cbd859487e4ea011cd6e0f0f114d70158bfd8b43.err \ + $(srcdir)/%reldir%/test_regex101.sh_cbd859487e4ea011cd6e0f0f114d70158bfd8b43.out \ + $(srcdir)/%reldir%/test_regex101.sh_cf6c0a9f0f04e24ce1fae7a0a434830b14447f83.err \ + $(srcdir)/%reldir%/test_regex101.sh_cf6c0a9f0f04e24ce1fae7a0a434830b14447f83.out \ + $(srcdir)/%reldir%/test_regex101.sh_d84597760285c3964b258726341e018f6cd49954.err \ + $(srcdir)/%reldir%/test_regex101.sh_d84597760285c3964b258726341e018f6cd49954.out \ + $(srcdir)/%reldir%/test_regex101.sh_f23e393dbf23d0d8e276e9b7610c7b74d79980f8.err \ + $(srcdir)/%reldir%/test_regex101.sh_f23e393dbf23d0d8e276e9b7610c7b74d79980f8.out \ + $(srcdir)/%reldir%/test_regex101.sh_fc41b6ee90cbf038620151f16d164b361acf82dd.err \ + $(srcdir)/%reldir%/test_regex101.sh_fc41b6ee90cbf038620151f16d164b361acf82dd.out \ $(srcdir)/%reldir%/test_sessions.sh_0300a1391c33b1c45ddfa90198a6bd0a5404a77f.err \ $(srcdir)/%reldir%/test_sessions.sh_0300a1391c33b1c45ddfa90198a6bd0a5404a77f.out \ $(srcdir)/%reldir%/test_sessions.sh_17b85654b929b2a8fc1705a170ced544783292fa.err \ $(srcdir)/%reldir%/test_sessions.sh_17b85654b929b2a8fc1705a170ced544783292fa.out \ + $(srcdir)/%reldir%/test_sessions.sh_33ab03afda2c9331a289fcbd1abdbc1c37b2e87b.err \ + $(srcdir)/%reldir%/test_sessions.sh_33ab03afda2c9331a289fcbd1abdbc1c37b2e87b.out \ $(srcdir)/%reldir%/test_sessions.sh_345b0e66dab7b881397c4b38380da81092ab70dd.err \ $(srcdir)/%reldir%/test_sessions.sh_345b0e66dab7b881397c4b38380da81092ab70dd.out \ $(srcdir)/%reldir%/test_sessions.sh_430b9522ba1a37983138f3c4935cba91b781e415.err \ $(srcdir)/%reldir%/test_sessions.sh_430b9522ba1a37983138f3c4935cba91b781e415.out \ $(srcdir)/%reldir%/test_sessions.sh_4f13dd3858546b6e04a27e244159d355e368f2ae.err \ $(srcdir)/%reldir%/test_sessions.sh_4f13dd3858546b6e04a27e244159d355e368f2ae.out \ + $(srcdir)/%reldir%/test_sessions.sh_639b83ce8f67975dfdc7086946ec287b43b6fa8c.err \ + $(srcdir)/%reldir%/test_sessions.sh_639b83ce8f67975dfdc7086946ec287b43b6fa8c.out \ $(srcdir)/%reldir%/test_sessions.sh_68a89b56c5e7f7db620084cca1eb547cbb19a2c9.err \ $(srcdir)/%reldir%/test_sessions.sh_68a89b56c5e7f7db620084cca1eb547cbb19a2c9.out \ $(srcdir)/%reldir%/test_sessions.sh_6d87ff483d5785c58fb271a405ff1c35e4f83cd9.err \ @@ -404,8 +560,14 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sessions.sh_b3d71a87fcb4e3487f71ccad8c6ce681db220572.out \ $(srcdir)/%reldir%/test_sessions.sh_b932b33dd087b94d4306dd179c5d4f9ddd394960.err \ $(srcdir)/%reldir%/test_sessions.sh_b932b33dd087b94d4306dd179c5d4f9ddd394960.out \ + $(srcdir)/%reldir%/test_sessions.sh_ba1ded92531350668301431db64df2d2f4a2e9ee.err \ + $(srcdir)/%reldir%/test_sessions.sh_ba1ded92531350668301431db64df2d2f4a2e9ee.out \ $(srcdir)/%reldir%/test_sessions.sh_ddf45811e9906de9f3930fe802ac7b2cc6e48106.err \ $(srcdir)/%reldir%/test_sessions.sh_ddf45811e9906de9f3930fe802ac7b2cc6e48106.out \ + $(srcdir)/%reldir%/test_sessions.sh_e57697be4d81ac8e5b2b2fa84f919b2d494978f3.err \ + $(srcdir)/%reldir%/test_sessions.sh_e57697be4d81ac8e5b2b2fa84f919b2d494978f3.out \ + $(srcdir)/%reldir%/test_sessions.sh_e988439404f2e97604641c8d087855f3efe052e4.err \ + $(srcdir)/%reldir%/test_sessions.sh_e988439404f2e97604641c8d087855f3efe052e4.out \ $(srcdir)/%reldir%/test_shlexer.sh_14dd967cb2af90899c9e5e45d00b676b5a3163aa.err \ $(srcdir)/%reldir%/test_shlexer.sh_14dd967cb2af90899c9e5e45d00b676b5a3163aa.out \ $(srcdir)/%reldir%/test_shlexer.sh_2781f5dd570580cbe746ad91b58a28b8371283b3.err \ @@ -432,44 +594,62 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_shlexer.sh_e0599f0b53d1bd27af767113853f8e84291f137d.out \ $(srcdir)/%reldir%/test_shlexer.sh_e8fa2239ab17e7563d0c524f5400a79d6ff8bfda.err \ $(srcdir)/%reldir%/test_shlexer.sh_e8fa2239ab17e7563d0c524f5400a79d6ff8bfda.out \ + $(srcdir)/%reldir%/test_shlexer.sh_e99fe1cde36b85ebbab86ca820f55ec861cdc20b.err \ + $(srcdir)/%reldir%/test_shlexer.sh_e99fe1cde36b85ebbab86ca820f55ec861cdc20b.out \ $(srcdir)/%reldir%/test_sql.sh_02def66745b063518473df862987747909f56ccc.err \ $(srcdir)/%reldir%/test_sql.sh_02def66745b063518473df862987747909f56ccc.out \ + $(srcdir)/%reldir%/test_sql.sh_09416e332d9b2f76743836b72e71b6e4492e594e.err \ + $(srcdir)/%reldir%/test_sql.sh_09416e332d9b2f76743836b72e71b6e4492e594e.out \ $(srcdir)/%reldir%/test_sql.sh_0a5d13b62da4cb66a59a51b0240b5fe0b6036b7e.err \ $(srcdir)/%reldir%/test_sql.sh_0a5d13b62da4cb66a59a51b0240b5fe0b6036b7e.out \ $(srcdir)/%reldir%/test_sql.sh_0d46ee142f80f262c8c14a22751571cc567df525.err \ $(srcdir)/%reldir%/test_sql.sh_0d46ee142f80f262c8c14a22751571cc567df525.out \ $(srcdir)/%reldir%/test_sql.sh_13429aed81d7edfd47b57e9cdb8a25c43aff35c4.err \ $(srcdir)/%reldir%/test_sql.sh_13429aed81d7edfd47b57e9cdb8a25c43aff35c4.out \ + $(srcdir)/%reldir%/test_sql.sh_19c92996bcc884bfdb70e3d24606cf5070556a74.err \ + $(srcdir)/%reldir%/test_sql.sh_19c92996bcc884bfdb70e3d24606cf5070556a74.out \ $(srcdir)/%reldir%/test_sql.sh_1cbb81cfe40ee16332c5c775a74d06b945aa65c2.err \ $(srcdir)/%reldir%/test_sql.sh_1cbb81cfe40ee16332c5c775a74d06b945aa65c2.out \ + $(srcdir)/%reldir%/test_sql.sh_1f892b85dc9008c7b3bab7fdf8aa372a6d5ae22c.err \ + $(srcdir)/%reldir%/test_sql.sh_1f892b85dc9008c7b3bab7fdf8aa372a6d5ae22c.out \ $(srcdir)/%reldir%/test_sql.sh_2532083f215ed44630621f18df3dd7b77c06ae10.err \ $(srcdir)/%reldir%/test_sql.sh_2532083f215ed44630621f18df3dd7b77c06ae10.out \ + $(srcdir)/%reldir%/test_sql.sh_26ace94793c68c44801e1ec496e7ab6a02304ce3.err \ + $(srcdir)/%reldir%/test_sql.sh_26ace94793c68c44801e1ec496e7ab6a02304ce3.out \ $(srcdir)/%reldir%/test_sql.sh_26c0d94d7837792144f2d0f866fb3c12a0bd410d.err \ $(srcdir)/%reldir%/test_sql.sh_26c0d94d7837792144f2d0f866fb3c12a0bd410d.out \ $(srcdir)/%reldir%/test_sql.sh_2959f0c70fca61a07c6c772f193e73022f7794f1.err \ $(srcdir)/%reldir%/test_sql.sh_2959f0c70fca61a07c6c772f193e73022f7794f1.out \ $(srcdir)/%reldir%/test_sql.sh_2a16a6fd0ff235a7877e1ea93b22d873a3609402.err \ $(srcdir)/%reldir%/test_sql.sh_2a16a6fd0ff235a7877e1ea93b22d873a3609402.out \ + $(srcdir)/%reldir%/test_sql.sh_2c60ed41369d667d1e2a563d54f8edf84682e526.err \ + $(srcdir)/%reldir%/test_sql.sh_2c60ed41369d667d1e2a563d54f8edf84682e526.out \ $(srcdir)/%reldir%/test_sql.sh_2cc8a92c6eb73741080b187a2670d309b8171c90.err \ $(srcdir)/%reldir%/test_sql.sh_2cc8a92c6eb73741080b187a2670d309b8171c90.out \ + $(srcdir)/%reldir%/test_sql.sh_2ed3f3b18ef4ecc68e4dd3cc8041b61fcf2a59af.err \ + $(srcdir)/%reldir%/test_sql.sh_2ed3f3b18ef4ecc68e4dd3cc8041b61fcf2a59af.out \ $(srcdir)/%reldir%/test_sql.sh_2f15b8a38673ac4db45dc6ed2eafe609c332575b.err \ $(srcdir)/%reldir%/test_sql.sh_2f15b8a38673ac4db45dc6ed2eafe609c332575b.out \ $(srcdir)/%reldir%/test_sql.sh_31df37f254255115611fc321b63374a2fa4a1cd5.err \ $(srcdir)/%reldir%/test_sql.sh_31df37f254255115611fc321b63374a2fa4a1cd5.out \ + $(srcdir)/%reldir%/test_sql.sh_3445b783808f174b76f55dc6b998f721a1aae271.err \ + $(srcdir)/%reldir%/test_sql.sh_3445b783808f174b76f55dc6b998f721a1aae271.out \ $(srcdir)/%reldir%/test_sql.sh_3d77a2092192caf98e141a6039e886ede836f044.err \ $(srcdir)/%reldir%/test_sql.sh_3d77a2092192caf98e141a6039e886ede836f044.out \ $(srcdir)/%reldir%/test_sql.sh_4090f96ea11a344c1e2939211da778992dab47d8.err \ $(srcdir)/%reldir%/test_sql.sh_4090f96ea11a344c1e2939211da778992dab47d8.out \ + $(srcdir)/%reldir%/test_sql.sh_4563a807311d0ce3d1f912843e615a6ca579cffa.err \ + $(srcdir)/%reldir%/test_sql.sh_4563a807311d0ce3d1f912843e615a6ca579cffa.out \ $(srcdir)/%reldir%/test_sql.sh_4629b626c65a85d7a5595571e195b67afca272ba.err \ $(srcdir)/%reldir%/test_sql.sh_4629b626c65a85d7a5595571e195b67afca272ba.out \ + $(srcdir)/%reldir%/test_sql.sh_4a13356ccbdeb5f73fa063e292b5a6cb25e6c23e.err \ + $(srcdir)/%reldir%/test_sql.sh_4a13356ccbdeb5f73fa063e292b5a6cb25e6c23e.out \ $(srcdir)/%reldir%/test_sql.sh_50c0b2c93b646b848a017764bde8a4282c556e2d.err \ $(srcdir)/%reldir%/test_sql.sh_50c0b2c93b646b848a017764bde8a4282c556e2d.out \ $(srcdir)/%reldir%/test_sql.sh_528e48a03cdfa7cfbe263a6e22a65606247a8a95.err \ $(srcdir)/%reldir%/test_sql.sh_528e48a03cdfa7cfbe263a6e22a65606247a8a95.out \ $(srcdir)/%reldir%/test_sql.sh_5532c7a21e3f6b7df3aad10d7bdfbb7a812ae6c7.err \ $(srcdir)/%reldir%/test_sql.sh_5532c7a21e3f6b7df3aad10d7bdfbb7a812ae6c7.out \ - $(srcdir)/%reldir%/test_sql.sh_56047c9470e515bc3e3709354c01e5d50462cde7.err \ - $(srcdir)/%reldir%/test_sql.sh_56047c9470e515bc3e3709354c01e5d50462cde7.out \ $(srcdir)/%reldir%/test_sql.sh_57427f3c4b4ec785ffff7c5802c10db0d3e547cf.err \ $(srcdir)/%reldir%/test_sql.sh_57427f3c4b4ec785ffff7c5802c10db0d3e547cf.out \ $(srcdir)/%reldir%/test_sql.sh_57edc93426e6767aa44ab2356c55327553dcdc8d.err \ @@ -478,6 +658,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql.sh_5801770f3e0ecc1d62c7a97116d6da1981bbc7bd.out \ $(srcdir)/%reldir%/test_sql.sh_5fe26fe4fc22f23f8dbe3a6aab394602886f2971.err \ $(srcdir)/%reldir%/test_sql.sh_5fe26fe4fc22f23f8dbe3a6aab394602886f2971.out \ + $(srcdir)/%reldir%/test_sql.sh_61471583c5e2f8ede3a8adefce682c27bf3924c8.err \ + $(srcdir)/%reldir%/test_sql.sh_61471583c5e2f8ede3a8adefce682c27bf3924c8.out \ $(srcdir)/%reldir%/test_sql.sh_62eb85c9569e71a630d72065238559528a16114c.err \ $(srcdir)/%reldir%/test_sql.sh_62eb85c9569e71a630d72065238559528a16114c.out \ $(srcdir)/%reldir%/test_sql.sh_6ad9d0adf85c36363f6b24f49950dcdc13dd34ab.err \ @@ -486,16 +668,22 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql.sh_6edb0c8d5323d1b962d90dd6ecdd7eee9008d7b5.out \ $(srcdir)/%reldir%/test_sql.sh_753c343a256d1286750314957d1b4e155464e03e.err \ $(srcdir)/%reldir%/test_sql.sh_753c343a256d1286750314957d1b4e155464e03e.out \ + $(srcdir)/%reldir%/test_sql.sh_7593b39f4be6fd2124ec7cf10835ee015d475b16.err \ + $(srcdir)/%reldir%/test_sql.sh_7593b39f4be6fd2124ec7cf10835ee015d475b16.out \ $(srcdir)/%reldir%/test_sql.sh_764306f0e5f610ba71f521ba3d19fe158ece0ba5.err \ $(srcdir)/%reldir%/test_sql.sh_764306f0e5f610ba71f521ba3d19fe158ece0ba5.out \ $(srcdir)/%reldir%/test_sql.sh_7f664c9cda0ae1c48333e21051b5e0eeafd5b4bc.err \ $(srcdir)/%reldir%/test_sql.sh_7f664c9cda0ae1c48333e21051b5e0eeafd5b4bc.out \ + $(srcdir)/%reldir%/test_sql.sh_859af4cc5f57345be8dcece599419d58f332841a.err \ + $(srcdir)/%reldir%/test_sql.sh_859af4cc5f57345be8dcece599419d58f332841a.out \ $(srcdir)/%reldir%/test_sql.sh_85fe3b9803254ea54b864d4865d7bd4d7a7f86c6.err \ $(srcdir)/%reldir%/test_sql.sh_85fe3b9803254ea54b864d4865d7bd4d7a7f86c6.out \ $(srcdir)/%reldir%/test_sql.sh_8ee288f1508eaab0367e465e9f382e848f3282aa.err \ $(srcdir)/%reldir%/test_sql.sh_8ee288f1508eaab0367e465e9f382e848f3282aa.out \ $(srcdir)/%reldir%/test_sql.sh_9a209f3ee1b1f543ca2587b695d2eb0e63e74c51.err \ $(srcdir)/%reldir%/test_sql.sh_9a209f3ee1b1f543ca2587b695d2eb0e63e74c51.out \ + $(srcdir)/%reldir%/test_sql.sh_9aaaa810f883f5dcf8a4d5cda4051fdf4640a65c.err \ + $(srcdir)/%reldir%/test_sql.sh_9aaaa810f883f5dcf8a4d5cda4051fdf4640a65c.out \ $(srcdir)/%reldir%/test_sql.sh_9b03e9f7a1bc35e408b3a17ee90cfdadea164df6.err \ $(srcdir)/%reldir%/test_sql.sh_9b03e9f7a1bc35e408b3a17ee90cfdadea164df6.out \ $(srcdir)/%reldir%/test_sql.sh_9ceccab07fbf7130bffe3c201c710719e4a3e9af.err \ @@ -504,6 +692,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql.sh_9e1d05b821822ee40e13fadb24ec558f4bfcff10.out \ $(srcdir)/%reldir%/test_sql.sh_a6b68b9f0044d18e7fa8f9287ddc9110701edc33.err \ $(srcdir)/%reldir%/test_sql.sh_a6b68b9f0044d18e7fa8f9287ddc9110701edc33.out \ + $(srcdir)/%reldir%/test_sql.sh_a7955e89791db9a252d8323436fabc51e2960731.err \ + $(srcdir)/%reldir%/test_sql.sh_a7955e89791db9a252d8323436fabc51e2960731.out \ $(srcdir)/%reldir%/test_sql.sh_ae7b1f1684e14bf9c16e0d789257b6ef57cfb2b1.err \ $(srcdir)/%reldir%/test_sql.sh_ae7b1f1684e14bf9c16e0d789257b6ef57cfb2b1.out \ $(srcdir)/%reldir%/test_sql.sh_afe9cdc4898df5c4e112c13dfe3db6dc089c0d7c.err \ @@ -514,10 +704,14 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql.sh_b2694e4fbecdd128798af25ee0d069e7e35fb499.out \ $(srcdir)/%reldir%/test_sql.sh_b5aa0561a65de7e8e22085db184c72a94b1a89a9.err \ $(srcdir)/%reldir%/test_sql.sh_b5aa0561a65de7e8e22085db184c72a94b1a89a9.out \ + $(srcdir)/%reldir%/test_sql.sh_b9330763dea550bbd006d7ae6ae7ea367f831fa3.err \ + $(srcdir)/%reldir%/test_sql.sh_b9330763dea550bbd006d7ae6ae7ea367f831fa3.out \ $(srcdir)/%reldir%/test_sql.sh_bad03a996c0750733ab99c592b9011851f521a69.err \ $(srcdir)/%reldir%/test_sql.sh_bad03a996c0750733ab99c592b9011851f521a69.out \ $(srcdir)/%reldir%/test_sql.sh_bd46ca4560f8be6307a914e39539bbac0368080a.err \ $(srcdir)/%reldir%/test_sql.sh_bd46ca4560f8be6307a914e39539bbac0368080a.out \ + $(srcdir)/%reldir%/test_sql.sh_c17933125df910588b806a9d07c2655bc71198ef.err \ + $(srcdir)/%reldir%/test_sql.sh_c17933125df910588b806a9d07c2655bc71198ef.out \ $(srcdir)/%reldir%/test_sql.sh_c20b0320096342c180146a5d18a6de82319d70b2.err \ $(srcdir)/%reldir%/test_sql.sh_c20b0320096342c180146a5d18a6de82319d70b2.out \ $(srcdir)/%reldir%/test_sql.sh_c353ef036c505b75996252138fbd4c8d22e8149c.err \ @@ -528,20 +722,30 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql.sh_c73dec2706fc0b9a124f5da3a83f40d8d3255beb.out \ $(srcdir)/%reldir%/test_sql.sh_c7e1dbf4605914720b55787785abfafdf2c4178a.err \ $(srcdir)/%reldir%/test_sql.sh_c7e1dbf4605914720b55787785abfafdf2c4178a.out \ - $(srcdir)/%reldir%/test_sql.sh_cc77a633a66d1778705a34e3657737547b3fb08d.err \ - $(srcdir)/%reldir%/test_sql.sh_cc77a633a66d1778705a34e3657737547b3fb08d.out \ + $(srcdir)/%reldir%/test_sql.sh_d4d540f0ef7e34b693fc72078d1cf2e069f86d81.err \ + $(srcdir)/%reldir%/test_sql.sh_d4d540f0ef7e34b693fc72078d1cf2e069f86d81.out \ $(srcdir)/%reldir%/test_sql.sh_dd540973a0dc86320d84706845a15608196ae5be.err \ $(srcdir)/%reldir%/test_sql.sh_dd540973a0dc86320d84706845a15608196ae5be.out \ + $(srcdir)/%reldir%/test_sql.sh_e44c0e2834038ec8d9b0b10b993967edb711c03c.err \ + $(srcdir)/%reldir%/test_sql.sh_e44c0e2834038ec8d9b0b10b993967edb711c03c.out \ $(srcdir)/%reldir%/test_sql.sh_e70dc7d2b686c7f91c2b41b10f3920c50f3ea405.err \ $(srcdir)/%reldir%/test_sql.sh_e70dc7d2b686c7f91c2b41b10f3920c50f3ea405.out \ + $(srcdir)/%reldir%/test_sql.sh_ef3cecab4ae0b90760f728add5652378e26b2fe6.err \ + $(srcdir)/%reldir%/test_sql.sh_ef3cecab4ae0b90760f728add5652378e26b2fe6.out \ + $(srcdir)/%reldir%/test_sql.sh_fea98f976873ee7b55e6f322dda42719a19fb3f0.err \ + $(srcdir)/%reldir%/test_sql.sh_fea98f976873ee7b55e6f322dda42719a19fb3f0.out \ $(srcdir)/%reldir%/test_sql.sh_ff8a978fc0de0fed675a3cd1454cf435a6856fd5.err \ $(srcdir)/%reldir%/test_sql.sh_ff8a978fc0de0fed675a3cd1454cf435a6856fd5.out \ + $(srcdir)/%reldir%/test_sql.sh_ffbc3dbf8464455358a77acffa10a8dd8a080374.err \ + $(srcdir)/%reldir%/test_sql.sh_ffbc3dbf8464455358a77acffa10a8dd8a080374.out \ $(srcdir)/%reldir%/test_sql_anno.sh_028d5d5af2f3519b59d349d41cb7ecf385253b51.err \ $(srcdir)/%reldir%/test_sql_anno.sh_028d5d5af2f3519b59d349d41cb7ecf385253b51.out \ $(srcdir)/%reldir%/test_sql_anno.sh_0a37c43350ddd7a2d0d75695be32fac083ad04a4.err \ $(srcdir)/%reldir%/test_sql_anno.sh_0a37c43350ddd7a2d0d75695be32fac083ad04a4.out \ $(srcdir)/%reldir%/test_sql_anno.sh_1151e5b727f6b57070bf2c8f047f1d7e02b803a6.err \ $(srcdir)/%reldir%/test_sql_anno.sh_1151e5b727f6b57070bf2c8f047f1d7e02b803a6.out \ + $(srcdir)/%reldir%/test_sql_anno.sh_1398146cf8b4f074ec8b9752f021cf47d011bebc.err \ + $(srcdir)/%reldir%/test_sql_anno.sh_1398146cf8b4f074ec8b9752f021cf47d011bebc.out \ $(srcdir)/%reldir%/test_sql_anno.sh_1b29488b949c294479aa6054f80a35bc106b454b.err \ $(srcdir)/%reldir%/test_sql_anno.sh_1b29488b949c294479aa6054f80a35bc106b454b.out \ $(srcdir)/%reldir%/test_sql_anno.sh_331a152080d2e278b7cc0a37728eca1ded36ed72.err \ @@ -568,6 +772,10 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_anno.sh_c909647ed0e585002074f55c946f3033df1815b2.out \ $(srcdir)/%reldir%/test_sql_anno.sh_ce0506ee7a12eb0f7b970522cc6a79180ecb20cc.err \ $(srcdir)/%reldir%/test_sql_anno.sh_ce0506ee7a12eb0f7b970522cc6a79180ecb20cc.out \ + $(srcdir)/%reldir%/test_sql_anno.sh_de46094b6e005285dc0921ef9979e36240c5042d.err \ + $(srcdir)/%reldir%/test_sql_anno.sh_de46094b6e005285dc0921ef9979e36240c5042d.out \ + $(srcdir)/%reldir%/test_sql_anno.sh_e7dae4ba18c42c416ed03afd8819200f63e89ac8.err \ + $(srcdir)/%reldir%/test_sql_anno.sh_e7dae4ba18c42c416ed03afd8819200f63e89ac8.out \ $(srcdir)/%reldir%/test_sql_anno.sh_f3c64191d6016767a5857fbb1bad26548586bb96.err \ $(srcdir)/%reldir%/test_sql_anno.sh_f3c64191d6016767a5857fbb1bad26548586bb96.out \ $(srcdir)/%reldir%/test_sql_coll_func.sh_077cab6e271c914daf5b221cc512853077891f35.err \ @@ -606,8 +814,12 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_fs_func.sh_18ddc138b263dd06f3fe81fec05bc4330caffef7.out \ $(srcdir)/%reldir%/test_sql_fs_func.sh_20a76db446a0a558dcbdf41033f97d4a22ca1bfa.err \ $(srcdir)/%reldir%/test_sql_fs_func.sh_20a76db446a0a558dcbdf41033f97d4a22ca1bfa.out \ + $(srcdir)/%reldir%/test_sql_fs_func.sh_2aa83fc90c850cdd11e3136a1a02b79c5879824b.err \ + $(srcdir)/%reldir%/test_sql_fs_func.sh_2aa83fc90c850cdd11e3136a1a02b79c5879824b.out \ $(srcdir)/%reldir%/test_sql_fs_func.sh_2c3f66e78deb8721b1d1fe5a787e9958895401d7.err \ $(srcdir)/%reldir%/test_sql_fs_func.sh_2c3f66e78deb8721b1d1fe5a787e9958895401d7.out \ + $(srcdir)/%reldir%/test_sql_fs_func.sh_34baa8050f8278d7b68c29e53bdd9f37da0f34c8.err \ + $(srcdir)/%reldir%/test_sql_fs_func.sh_34baa8050f8278d7b68c29e53bdd9f37da0f34c8.out \ $(srcdir)/%reldir%/test_sql_fs_func.sh_3ed11101a413e47c3dfe219557b7a6df04a64253.err \ $(srcdir)/%reldir%/test_sql_fs_func.sh_3ed11101a413e47c3dfe219557b7a6df04a64253.out \ $(srcdir)/%reldir%/test_sql_fs_func.sh_469380561dccd79c7249562067107c330838eaad.err \ @@ -624,6 +836,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_fs_func.sh_7b5d7dd8d0003ab83e3e5cb0a5ce802fe9a0e3b3.out \ $(srcdir)/%reldir%/test_sql_fs_func.sh_917ffde411c1425e8a6addae0170900dcd553986.err \ $(srcdir)/%reldir%/test_sql_fs_func.sh_917ffde411c1425e8a6addae0170900dcd553986.out \ + $(srcdir)/%reldir%/test_sql_fs_func.sh_9234a453403934587bbbdde355281a956d1fbe5f.err \ + $(srcdir)/%reldir%/test_sql_fs_func.sh_9234a453403934587bbbdde355281a956d1fbe5f.out \ $(srcdir)/%reldir%/test_sql_fs_func.sh_9e2c0a90ce333365ff7354375f2c609bc27135c8.err \ $(srcdir)/%reldir%/test_sql_fs_func.sh_9e2c0a90ce333365ff7354375f2c609bc27135c8.out \ $(srcdir)/%reldir%/test_sql_fs_func.sh_a247b137e71124e496f1beab56c7fe85717c4199.err \ @@ -648,6 +862,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_indexes.sh_026dd9752b6101e0791689d3a2026f7e517e36f5.out \ $(srcdir)/%reldir%/test_sql_indexes.sh_1614ebb5e2e83bab11023354dea8a0885ddf64b4.err \ $(srcdir)/%reldir%/test_sql_indexes.sh_1614ebb5e2e83bab11023354dea8a0885ddf64b4.out \ + $(srcdir)/%reldir%/test_sql_indexes.sh_2b4945247332d01b08e6f17340f7d17f3b3649b8.err \ + $(srcdir)/%reldir%/test_sql_indexes.sh_2b4945247332d01b08e6f17340f7d17f3b3649b8.out \ $(srcdir)/%reldir%/test_sql_indexes.sh_541a8e35f34a206e340a3880128b6ce137847872.err \ $(srcdir)/%reldir%/test_sql_indexes.sh_541a8e35f34a206e340a3880128b6ce137847872.out \ $(srcdir)/%reldir%/test_sql_indexes.sh_59a1497c13a5e09bc8f95ef02552b2835ebea6e5.err \ @@ -740,10 +956,16 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_json_func.sh_f34205b59e04f261897ad89f659595c743a18ca9.out \ $(srcdir)/%reldir%/test_sql_json_func.sh_f34f5dfa938a1ac7721f924beb16bbceec127a1b.err \ $(srcdir)/%reldir%/test_sql_json_func.sh_f34f5dfa938a1ac7721f924beb16bbceec127a1b.out \ + $(srcdir)/%reldir%/test_sql_regexp.sh_02ef03572fd2bcf39bab8e29cf1c735ff7c3f297.err \ + $(srcdir)/%reldir%/test_sql_regexp.sh_02ef03572fd2bcf39bab8e29cf1c735ff7c3f297.out \ $(srcdir)/%reldir%/test_sql_regexp.sh_03257c56e85558aa0cc925b68d3af962afc25125.err \ $(srcdir)/%reldir%/test_sql_regexp.sh_03257c56e85558aa0cc925b68d3af962afc25125.out \ + $(srcdir)/%reldir%/test_sql_regexp.sh_219a579cf7744fa08ab79fadd08b521b2f18a661.err \ + $(srcdir)/%reldir%/test_sql_regexp.sh_219a579cf7744fa08ab79fadd08b521b2f18a661.out \ $(srcdir)/%reldir%/test_sql_regexp.sh_51293df041b6969ccecc60204dce3676d0fb006d.err \ $(srcdir)/%reldir%/test_sql_regexp.sh_51293df041b6969ccecc60204dce3676d0fb006d.out \ + $(srcdir)/%reldir%/test_sql_regexp.sh_a610798fefdacd8d0179a4b17cd757d00fb731be.err \ + $(srcdir)/%reldir%/test_sql_regexp.sh_a610798fefdacd8d0179a4b17cd757d00fb731be.out \ $(srcdir)/%reldir%/test_sql_regexp.sh_b841a0c09601e2419eeb99e85f7e286c889e4801.err \ $(srcdir)/%reldir%/test_sql_regexp.sh_b841a0c09601e2419eeb99e85f7e286c889e4801.out \ $(srcdir)/%reldir%/test_sql_regexp.sh_bbd1128cf61a9af8f9dc937b46217443f42e1a7a.err \ @@ -764,12 +986,16 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_search_table.sh_df0fd242f57a96d40f466493938cda0789a094fa.out \ $(srcdir)/%reldir%/test_sql_search_table.sh_ef9373a76853f345d06234f6e0fe11b5d40da27b.err \ $(srcdir)/%reldir%/test_sql_search_table.sh_ef9373a76853f345d06234f6e0fe11b5d40da27b.out \ + $(srcdir)/%reldir%/test_sql_str_func.sh_00363f89638cb968584afc1ca0a4f52b2cf7a2ae.err \ + $(srcdir)/%reldir%/test_sql_str_func.sh_00363f89638cb968584afc1ca0a4f52b2cf7a2ae.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_005b9365ac99596e539f47c9fe432668c209b21f.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_005b9365ac99596e539f47c9fe432668c209b21f.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_04712488fe50554eb36d3ced80f9a033602f3daa.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_04712488fe50554eb36d3ced80f9a033602f3daa.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_0947bfe7ec626eaa0409a45b10fcbb634fb12eb7.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_0947bfe7ec626eaa0409a45b10fcbb634fb12eb7.out \ + $(srcdir)/%reldir%/test_sql_str_func.sh_0db1c1b406ba6ef2dadcbe90a3fdbe794a664eb5.err \ + $(srcdir)/%reldir%/test_sql_str_func.sh_0db1c1b406ba6ef2dadcbe90a3fdbe794a664eb5.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_11bcc5d32eabbedb6974f160dace9ef1ef0009e9.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_11bcc5d32eabbedb6974f160dace9ef1ef0009e9.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_11d458fdadd00df1239a0eeaac049abb49ed212d.err \ @@ -778,6 +1004,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_str_func.sh_129e58679e72f3cc5864812026e49a7917baf3d0.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_151a0fd71ef6837c8cbd8a67e315019b5812b079.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_151a0fd71ef6837c8cbd8a67e315019b5812b079.out \ + $(srcdir)/%reldir%/test_sql_str_func.sh_1a1e07b6f72bce5402037761fa8afd66c05b4c34.err \ + $(srcdir)/%reldir%/test_sql_str_func.sh_1a1e07b6f72bce5402037761fa8afd66c05b4c34.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_1e7362ac3d9690b1b2cfbd320b6129c46ecfbb8a.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_1e7362ac3d9690b1b2cfbd320b6129c46ecfbb8a.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_211c5428db0590795072c31cb116ef35281e02b5.err \ @@ -790,8 +1018,6 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_str_func.sh_352434d199f7b493668c9f2774472eb69ef0d9f0.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_36fc9005464f1106f969559e640d9fa36d5fadad.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_36fc9005464f1106f969559e640d9fa36d5fadad.out \ - $(srcdir)/%reldir%/test_sql_str_func.sh_3855d2cc0ab29171cae8e722f130adec25eae36e.err \ - $(srcdir)/%reldir%/test_sql_str_func.sh_3855d2cc0ab29171cae8e722f130adec25eae36e.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_3de72fe5c1751dd212a1cd45cf2caa7f3b52bced.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_3de72fe5c1751dd212a1cd45cf2caa7f3b52bced.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_4b402274da152135c6c99456b693e1ecabca0256.err \ @@ -802,6 +1028,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_str_func.sh_51766b600fd158a9e0677f6b0fa31b83537b2e5b.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_5203db1a4a81e43a693f339fd26e1ed635da9d5a.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_5203db1a4a81e43a693f339fd26e1ed635da9d5a.out \ + $(srcdir)/%reldir%/test_sql_str_func.sh_57fc889eefb98571ecf3892ad670646613bf13a3.err \ + $(srcdir)/%reldir%/test_sql_str_func.sh_57fc889eefb98571ecf3892ad670646613bf13a3.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_5abe3717393fba14ec510a37b4b94fedc67aae8e.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_5abe3717393fba14ec510a37b4b94fedc67aae8e.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_5e436fbd4efb140600999c5208886a5a57b8a30e.err \ @@ -814,8 +1042,12 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_str_func.sh_660288b48d9b30244621d873944938f7ef043976.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_6607c0dd8baff16930eb3e0daf6354af5b50052b.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_6607c0dd8baff16930eb3e0daf6354af5b50052b.out \ + $(srcdir)/%reldir%/test_sql_str_func.sh_68860c50e91cd6c1f2004ee0414a6e930ed42c87.err \ + $(srcdir)/%reldir%/test_sql_str_func.sh_68860c50e91cd6c1f2004ee0414a6e930ed42c87.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_69f5d49e62da48e188bd9d6af4bd3adeb21eb7d1.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_69f5d49e62da48e188bd9d6af4bd3adeb21eb7d1.out \ + $(srcdir)/%reldir%/test_sql_str_func.sh_6ac7ab1f90c064944ff66bef5974f050c8227d4b.err \ + $(srcdir)/%reldir%/test_sql_str_func.sh_6ac7ab1f90c064944ff66bef5974f050c8227d4b.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_6ff984d8ed3e5099376d19f0dd20d5fd1ed42494.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_6ff984d8ed3e5099376d19f0dd20d5fd1ed42494.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_71f37db33504b2c08a7a3323c482556f53d88100.err \ @@ -868,6 +1100,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_str_func.sh_b2aafbcaa7befe426d3f9df71c24f16fdc9d2856.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_b81b27abfafbd357d41c407428d41ae0f4bb75e2.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_b81b27abfafbd357d41c407428d41ae0f4bb75e2.out \ + $(srcdir)/%reldir%/test_sql_str_func.sh_b8ebe81c4881f704624a65ec91be0868c310f6ed.err \ + $(srcdir)/%reldir%/test_sql_str_func.sh_b8ebe81c4881f704624a65ec91be0868c310f6ed.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_bac7f6531a2adf70cd1871fb13eab26dff133b7c.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_bac7f6531a2adf70cd1871fb13eab26dff133b7c.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_bfb7088916412360f77683009058b0747784630a.err \ @@ -880,6 +1114,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_str_func.sh_c9e2f41431bef879364dc37a472ab01f64d89f89.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_cc53348c585ee71a7456157ad6b125689813bafe.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_cc53348c585ee71a7456157ad6b125689813bafe.out \ + $(srcdir)/%reldir%/test_sql_str_func.sh_cdc7b869132c33cae3c2565806c2396e1b4d6253.err \ + $(srcdir)/%reldir%/test_sql_str_func.sh_cdc7b869132c33cae3c2565806c2396e1b4d6253.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_ce9db1dbc2e5fee87247135d17787ff3af014d77.err \ $(srcdir)/%reldir%/test_sql_str_func.sh_ce9db1dbc2e5fee87247135d17787ff3af014d77.out \ $(srcdir)/%reldir%/test_sql_str_func.sh_d3367527118052081a541a660b091f6f495b1c0d.err \ @@ -916,12 +1152,16 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_time_func.sh_4035ee76938269e9247f9a696927a9ac18cce80a.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_42f0fc1a154b0d79b4f6e846f283426be498040f.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_42f0fc1a154b0d79b4f6e846f283426be498040f.out \ + $(srcdir)/%reldir%/test_sql_time_func.sh_4364c7f5354fe108874dd22571115e012303e001.err \ + $(srcdir)/%reldir%/test_sql_time_func.sh_4364c7f5354fe108874dd22571115e012303e001.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_4b96fe71bc2d18955e3625b765a6095ab1f7a75d.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_4b96fe71bc2d18955e3625b765a6095ab1f7a75d.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_53b76b094e47691b5bca106142ee470e82e8e420.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_53b76b094e47691b5bca106142ee470e82e8e420.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_6288a9e690d381602b2be5665cc1cd3552733bc2.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_6288a9e690d381602b2be5665cc1cd3552733bc2.out \ + $(srcdir)/%reldir%/test_sql_time_func.sh_63f22db8689c238d51c9b9efe9837147ea5318e6.err \ + $(srcdir)/%reldir%/test_sql_time_func.sh_63f22db8689c238d51c9b9efe9837147ea5318e6.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_652bbd00b5159e22d94970ab1e882997d14b5777.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_652bbd00b5159e22d94970ab1e882997d14b5777.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_6832a58259168622af8b3370b0c89534f98f3f9f.err \ @@ -930,14 +1170,24 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_time_func.sh_72862ec9c8f261a8507d237eb673c7ddfaafd898.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_7797302b63d73234c9ec9f0405c7c0a748daf8e9.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_7797302b63d73234c9ec9f0405c7c0a748daf8e9.out \ + $(srcdir)/%reldir%/test_sql_time_func.sh_7ae9dbbb69dbc50ee6a34afc03d2579f09363068.err \ + $(srcdir)/%reldir%/test_sql_time_func.sh_7ae9dbbb69dbc50ee6a34afc03d2579f09363068.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_9569ab40cb2e51c60f818a6c2729c60d86565e7e.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_9569ab40cb2e51c60f818a6c2729c60d86565e7e.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_9e649c4bc10f4d178519983358f7092e9c5dfe71.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_9e649c4bc10f4d178519983358f7092e9c5dfe71.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_b0257ced663fc444801a5e6cba89c3053acca11e.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_b0257ced663fc444801a5e6cba89c3053acca11e.out \ + $(srcdir)/%reldir%/test_sql_time_func.sh_b3c00f049fdeb551a9165c281630e36359832d1f.err \ + $(srcdir)/%reldir%/test_sql_time_func.sh_b3c00f049fdeb551a9165c281630e36359832d1f.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_b5f9ec3ea8b4551fd40017398d74c524fb54ebc9.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_b5f9ec3ea8b4551fd40017398d74c524fb54ebc9.out \ + $(srcdir)/%reldir%/test_sql_time_func.sh_c1d7dc8a4bd3b8cb86a2f893f58a56f0f6ea1bc3.err \ + $(srcdir)/%reldir%/test_sql_time_func.sh_c1d7dc8a4bd3b8cb86a2f893f58a56f0f6ea1bc3.out \ + $(srcdir)/%reldir%/test_sql_time_func.sh_c5a5fc2edb54d10f1475afa7fed0b62bc05e1dc6.err \ + $(srcdir)/%reldir%/test_sql_time_func.sh_c5a5fc2edb54d10f1475afa7fed0b62bc05e1dc6.out \ + $(srcdir)/%reldir%/test_sql_time_func.sh_c7fc60392a2e52b163da1e1dde6978c16f415a9e.err \ + $(srcdir)/%reldir%/test_sql_time_func.sh_c7fc60392a2e52b163da1e1dde6978c16f415a9e.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_dbe786c096d5a7a5e1d05311b929f1427d8bac79.err \ $(srcdir)/%reldir%/test_sql_time_func.sh_dbe786c096d5a7a5e1d05311b929f1427d8bac79.out \ $(srcdir)/%reldir%/test_sql_time_func.sh_f3b1ea49779117bf45f85ad5615fdc5e89193db6.err \ @@ -946,6 +1196,10 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_28e23f4e98b1acd6478e39844fd9306b444550c3.out \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_32acc1a8bb5028636fdbf08f077f9a835ab51bec.err \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_32acc1a8bb5028636fdbf08f077f9a835ab51bec.out \ + $(srcdir)/%reldir%/test_sql_views_vtab.sh_4363d60040424a573ed79ee4260a32e3cd72f62c.err \ + $(srcdir)/%reldir%/test_sql_views_vtab.sh_4363d60040424a573ed79ee4260a32e3cd72f62c.out \ + $(srcdir)/%reldir%/test_sql_views_vtab.sh_45dbef06572b43cb997682436e753a13e003f792.err \ + $(srcdir)/%reldir%/test_sql_views_vtab.sh_45dbef06572b43cb997682436e753a13e003f792.out \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_485a6ac7c69bd4b5d34d3399a9c17f6a2dc89ad3.err \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_485a6ac7c69bd4b5d34d3399a9c17f6a2dc89ad3.out \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_62d15cb9d5a9259f198aa01ca8ed200d6da38d68.err \ @@ -970,6 +1224,8 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_a1e6ee4f098d525330d5f58a9d71cbbd816d51bb.out \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_a2c0f0e51b3f85ea2a05ecdcacaad962b4fe5d4f.err \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_a2c0f0e51b3f85ea2a05ecdcacaad962b4fe5d4f.out \ + $(srcdir)/%reldir%/test_sql_views_vtab.sh_a7a7fd577f710aa8b0ad5a94fdfb35daea75e06c.err \ + $(srcdir)/%reldir%/test_sql_views_vtab.sh_a7a7fd577f710aa8b0ad5a94fdfb35daea75e06c.out \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_ac1f6e9a88608ef8939f9c2f7061a25a86742d46.err \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_ac1f6e9a88608ef8939f9c2f7061a25a86742d46.out \ $(srcdir)/%reldir%/test_sql_views_vtab.sh_ade121f29bedea0d1a54452cc994b2302ad9dabb.err \ @@ -990,32 +1246,74 @@ EXPECTED_FILES = \ $(srcdir)/%reldir%/test_sql_xml_func.sh_46dfa23e2effabf3fa150c4b871fd8d22b1c834d.out \ $(srcdir)/%reldir%/test_sql_xml_func.sh_4effabf11b59580e5f0727199eb74fba049c0cda.err \ $(srcdir)/%reldir%/test_sql_xml_func.sh_4effabf11b59580e5f0727199eb74fba049c0cda.out \ + $(srcdir)/%reldir%/test_sql_xml_func.sh_81ad7678f080870956db37174bcf1054586cfbad.err \ + $(srcdir)/%reldir%/test_sql_xml_func.sh_81ad7678f080870956db37174bcf1054586cfbad.out \ $(srcdir)/%reldir%/test_sql_xml_func.sh_8912b59d5b515ab1373a3d9bc635ebabacd01dfd.err \ $(srcdir)/%reldir%/test_sql_xml_func.sh_8912b59d5b515ab1373a3d9bc635ebabacd01dfd.out \ $(srcdir)/%reldir%/test_sql_xml_func.sh_b036c73528a446cba46625767517cdac868aba72.err \ $(srcdir)/%reldir%/test_sql_xml_func.sh_b036c73528a446cba46625767517cdac868aba72.out \ + $(srcdir)/%reldir%/test_sql_xml_func.sh_bcbd691bb24c4f7bcb9fe0e035b290815f1c8874.err \ + $(srcdir)/%reldir%/test_sql_xml_func.sh_bcbd691bb24c4f7bcb9fe0e035b290815f1c8874.out \ $(srcdir)/%reldir%/test_sql_xml_func.sh_fefeb387ae14d4171225ea06cbbff3ec43990cf0.err \ $(srcdir)/%reldir%/test_sql_xml_func.sh_fefeb387ae14d4171225ea06cbbff3ec43990cf0.out \ - $(srcdir)/%reldir%/test_sql_yaml_func.sh_41c6abde708a69e74f5b7fde865d88fa75f91e0a.err \ - $(srcdir)/%reldir%/test_sql_yaml_func.sh_41c6abde708a69e74f5b7fde865d88fa75f91e0a.out \ $(srcdir)/%reldir%/test_sql_yaml_func.sh_dc189d02e8979b7ed245d5d750f68b9965984699.err \ $(srcdir)/%reldir%/test_sql_yaml_func.sh_dc189d02e8979b7ed245d5d750f68b9965984699.out \ + $(srcdir)/%reldir%/test_text_file.sh_02a0514e0e384e5511ae202ea519552ba04030ed.err \ + $(srcdir)/%reldir%/test_text_file.sh_02a0514e0e384e5511ae202ea519552ba04030ed.out \ + $(srcdir)/%reldir%/test_text_file.sh_0bba304f34ae07c4fa9e91e0b42f5fe98654a6a8.err \ + $(srcdir)/%reldir%/test_text_file.sh_0bba304f34ae07c4fa9e91e0b42f5fe98654a6a8.out \ + $(srcdir)/%reldir%/test_text_file.sh_11fd274911e45a743b4de616888a64183d07cb76.err \ + $(srcdir)/%reldir%/test_text_file.sh_11fd274911e45a743b4de616888a64183d07cb76.out \ + $(srcdir)/%reldir%/test_text_file.sh_143a40164c93c7ec44a66e7940b92b128a421147.err \ + $(srcdir)/%reldir%/test_text_file.sh_143a40164c93c7ec44a66e7940b92b128a421147.out \ + $(srcdir)/%reldir%/test_text_file.sh_1ce4056d72b871f8bb844c86aade2a9b1da58030.err \ + $(srcdir)/%reldir%/test_text_file.sh_1ce4056d72b871f8bb844c86aade2a9b1da58030.out \ + $(srcdir)/%reldir%/test_text_file.sh_25cef06efcbe106c2e1cc4a166b673e7b244c6d7.err \ + $(srcdir)/%reldir%/test_text_file.sh_25cef06efcbe106c2e1cc4a166b673e7b244c6d7.out \ + $(srcdir)/%reldir%/test_text_file.sh_265a8a5825e6c7dbc85cbe496dab6be7a349f3db.err \ + $(srcdir)/%reldir%/test_text_file.sh_265a8a5825e6c7dbc85cbe496dab6be7a349f3db.out \ + $(srcdir)/%reldir%/test_text_file.sh_4226123565a53b4e3f80e602c1f294721e8e07bf.err \ + $(srcdir)/%reldir%/test_text_file.sh_4226123565a53b4e3f80e602c1f294721e8e07bf.out \ + $(srcdir)/%reldir%/test_text_file.sh_4dd174410d702a7b4be794fb6fa2c8889bd768d6.err \ + $(srcdir)/%reldir%/test_text_file.sh_4dd174410d702a7b4be794fb6fa2c8889bd768d6.out \ + $(srcdir)/%reldir%/test_text_file.sh_596b120fbea638472a27964444e262b4572afacc.err \ + $(srcdir)/%reldir%/test_text_file.sh_596b120fbea638472a27964444e262b4572afacc.out \ $(srcdir)/%reldir%/test_text_file.sh_5b51b55dff7332c5bee2c9b797c401c5614d574a.err \ $(srcdir)/%reldir%/test_text_file.sh_5b51b55dff7332c5bee2c9b797c401c5614d574a.out \ + $(srcdir)/%reldir%/test_text_file.sh_5e9320f18d066e6fc930dbbffc357af64312bd4b.err \ + $(srcdir)/%reldir%/test_text_file.sh_5e9320f18d066e6fc930dbbffc357af64312bd4b.out \ $(srcdir)/%reldir%/test_text_file.sh_6a24078983cf1b7a80b6fb65d5186cd125498136.err \ $(srcdir)/%reldir%/test_text_file.sh_6a24078983cf1b7a80b6fb65d5186cd125498136.out \ + $(srcdir)/%reldir%/test_text_file.sh_73f69c883f60761bff9f8874f61d21a189e92912.err \ + $(srcdir)/%reldir%/test_text_file.sh_73f69c883f60761bff9f8874f61d21a189e92912.out \ + $(srcdir)/%reldir%/test_text_file.sh_786c7262f977201af36b0e69ba1a2aba130bbb06.err \ + $(srcdir)/%reldir%/test_text_file.sh_786c7262f977201af36b0e69ba1a2aba130bbb06.out \ + $(srcdir)/%reldir%/test_text_file.sh_78f252288519c8f767bb2759ea32959dab2ebc46.err \ + $(srcdir)/%reldir%/test_text_file.sh_78f252288519c8f767bb2759ea32959dab2ebc46.out \ $(srcdir)/%reldir%/test_text_file.sh_7b00f32a3fff7fc2d78a87045ae842e58be88480.err \ $(srcdir)/%reldir%/test_text_file.sh_7b00f32a3fff7fc2d78a87045ae842e58be88480.out \ $(srcdir)/%reldir%/test_text_file.sh_87943c6be50d701a03e901f16493314c839af1ab.err \ $(srcdir)/%reldir%/test_text_file.sh_87943c6be50d701a03e901f16493314c839af1ab.out \ + $(srcdir)/%reldir%/test_text_file.sh_8a4954af3e536b3789b1fd5b33519e9d444cc933.err \ + $(srcdir)/%reldir%/test_text_file.sh_8a4954af3e536b3789b1fd5b33519e9d444cc933.out \ $(srcdir)/%reldir%/test_text_file.sh_8b2cd055e6a1db2ed9b2af2a917f8556395fa653.err \ $(srcdir)/%reldir%/test_text_file.sh_8b2cd055e6a1db2ed9b2af2a917f8556395fa653.out \ + $(srcdir)/%reldir%/test_text_file.sh_a87c18c643994c3dbbbbb619a06a601d3668ea71.err \ + $(srcdir)/%reldir%/test_text_file.sh_a87c18c643994c3dbbbbb619a06a601d3668ea71.out \ $(srcdir)/%reldir%/test_text_file.sh_ac486314c4e02e480d829ea2f077b86c49fedcec.err \ $(srcdir)/%reldir%/test_text_file.sh_ac486314c4e02e480d829ea2f077b86c49fedcec.out \ $(srcdir)/%reldir%/test_text_file.sh_ac872aadda29b9a824361a2c711d62ec1c75d40f.err \ $(srcdir)/%reldir%/test_text_file.sh_ac872aadda29b9a824361a2c711d62ec1c75d40f.out \ $(srcdir)/%reldir%/test_text_file.sh_c2a346ca1da2da4346f1d310212e166767993ce9.err \ $(srcdir)/%reldir%/test_text_file.sh_c2a346ca1da2da4346f1d310212e166767993ce9.out \ + $(srcdir)/%reldir%/test_text_file.sh_d59b67113864ef5e77267d7fd8ad4072f5aef0fc.err \ + $(srcdir)/%reldir%/test_text_file.sh_d59b67113864ef5e77267d7fd8ad4072f5aef0fc.out \ $(srcdir)/%reldir%/test_text_file.sh_e088ea61a5382458cc48a2607e2639e52b0be1da.err \ $(srcdir)/%reldir%/test_text_file.sh_e088ea61a5382458cc48a2607e2639e52b0be1da.out \ + $(srcdir)/%reldir%/test_text_file.sh_e556fa91b91579df20d38540a5db9cedbaf68a62.err \ + $(srcdir)/%reldir%/test_text_file.sh_e556fa91b91579df20d38540a5db9cedbaf68a62.out \ + $(srcdir)/%reldir%/test_text_file.sh_f586ef080a86dfe1f981b345bcf8d7a279b2b247.err \ + $(srcdir)/%reldir%/test_text_file.sh_f586ef080a86dfe1f981b345bcf8d7a279b2b247.out \ + $(srcdir)/%reldir%/test_text_file.sh_f7522b0a99550a3ff91aae6582eb861547c535e1.err \ + $(srcdir)/%reldir%/test_text_file.sh_f7522b0a99550a3ff91aae6582eb861547c535e1.out \ $() diff --git a/test/expected/test_cli.sh_a1a09f890f4604309d0a81bbbec8e50fb7d5e887.err b/test/expected/test_cli.sh_0b3639753916f71254e8c9cce4ebb8bfd9978d3e.err index e69de29..e69de29 100644 --- a/test/expected/test_cli.sh_a1a09f890f4604309d0a81bbbec8e50fb7d5e887.err +++ b/test/expected/test_cli.sh_0b3639753916f71254e8c9cce4ebb8bfd9978d3e.err diff --git a/test/expected/test_cli.sh_0b3639753916f71254e8c9cce4ebb8bfd9978d3e.out b/test/expected/test_cli.sh_0b3639753916f71254e8c9cce4ebb8bfd9978d3e.out new file mode 100644 index 0000000..1a62b0e --- /dev/null +++ b/test/expected/test_cli.sh_0b3639753916f71254e8c9cce4ebb8bfd9978d3e.out @@ -0,0 +1,5263 @@ +{ + "tuning": { + "archive-manager": { + "min-free-space": 33554432, + "cache-ttl": "2d" + }, + "piper": { + "max-size": 10485760, + "rotations": 4, + "ttl": "2d" + }, + "file-vtab": { + "max-content-size": 33554432 + }, + "logfile": { + "max-unrecognized-lines": 1000 + }, + "remote": { + "cache-ttl": "2d", + "ssh": { + "command": "ssh", + "transfer-command": "cat > {0:} && chmod ugo+rx ./{0:}", + "start-command": "bash -c ./{0:}", + "flags": "", + "options": { + + }, + "config": { + "BatchMode": "yes", + "ConnectTimeout": "10" + } + } + }, + "clipboard": { + "impls": { + "MacOS": { + "test": "command -v pbcopy", + "general": { + "write": "pbcopy", + "read": "pbpaste -Prefer txt" + }, + "find": { + "write": "pbcopy -pboard find", + "read": "pbpaste -pboard find -Prefer txt" + } + }, + "NeoVim": { + "test": "command -v win32yank.exe", + "general": { + "write": "win32yank.exe -i --crlf", + "read": "win32yank.exe -o --lf" + }, + "find": { + "write": "", + "read": "" + } + }, + "Wayland": { + "test": "test -n \"$WAYLAND_DISPLAY\"", + "general": { + "write": "wl-copy --foreground --type text/plain", + "read": "wl-paste --no-newline" + }, + "find": { + "write": "", + "read": "" + } + }, + "Windows": { + "test": "command -v clip.exe", + "general": { + "write": "clip.exe", + "read": "" + }, + "find": { + "write": "", + "read": "" + } + }, + "X11-xclip": { + "test": "test -n \"$DISPLAY\" && command -v xclip", + "general": { + "write": "xclip -i -selection clipboard", + "read": "xclip -o -selection clipboard" + }, + "find": { + "write": "", + "read": "" + } + }, + "tmux": { + "test": "test -n \"$TMUX\" -a -z \"$SSH_CLIENT\"", + "general": { + "write": "tmux load-buffer -", + "read": "tmux save-buffer -" + }, + "find": { + "write": "", + "read": "" + } + } + } + }, + "url-scheme": { + "docker": { + "handler": "docker-url-handler" + }, + "docker-compose": { + "handler": "docker-compose-url-handler" + }, + "hw": { + "handler": "hw-url-handler" + }, + "journald": { + "handler": "journald-url-handler" + }, + "piper": { + "handler": "piper-url-handler" + }, + "podman": { + "handler": "docker-url-handler" + } + } + }, + "ui": { + "clock-format": "%Y-%m-%dT%H:%M:%S %Z", + "dim-text": false, + "default-colors": true, + "keymap": "default", + "theme": "default", + "theme-defs": { + "default": { + "vars": { + "semantic_highlight_color": "semantic()" + }, + "styles": { + "identifier": { + "color": "semantic()", + "background-color": "", + "underline": false, + "bold": false + }, + "text": { + "color": "Silver", + "background-color": "Black", + "underline": false, + "bold": false + }, + "selected-text": { + "color": "", + "background-color": "DarkCyan", + "underline": false, + "bold": false + }, + "alt-text": { + "color": "", + "background-color": "#262626", + "underline": false, + "bold": false + }, + "error": { + "color": "Red", + "background-color": "", + "underline": false, + "bold": true + }, + "ok": { + "color": "Green", + "background-color": "", + "underline": false, + "bold": true + }, + "info": { + "color": "Maroon", + "background-color": "", + "underline": false, + "bold": true + }, + "warning": { + "color": "Yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "hidden": { + "color": "Yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "cursor-line": { + "color": "Cyan1", + "background-color": "Red", + "underline": true, + "bold": true + }, + "disabled-cursor-line": { + "color": "Cyan1", + "background-color": "#5f005f", + "underline": false, + "bold": false + }, + "adjusted-time": { + "color": "Maroon", + "background-color": "", + "underline": false, + "bold": false + }, + "skewed-time": { + "color": "Yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "file-offset": { + "color": "Silver", + "background-color": "", + "underline": false, + "bold": false + }, + "offset-time": { + "color": "Teal", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid-msg": { + "color": "Yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "popup": { + "color": "Silver", + "background-color": "Teal", + "underline": false, + "bold": false + }, + "focused": { + "color": "Black", + "background-color": "Silver", + "underline": false, + "bold": false + }, + "disabled-focused": { + "color": "Black", + "background-color": "#888", + "underline": false, + "bold": false + }, + "scrollbar": { + "color": "Black", + "background-color": "Silver", + "underline": false, + "bold": false + }, + "h1": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h2": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h3": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h4": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h5": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h6": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "hr": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "hyperlink": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "list-glyph": { + "color": "Yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "breadcrumb": { + "color": "Teal", + "background-color": "", + "underline": false, + "bold": true + }, + "table-border": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "table-header": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "quote-border": { + "color": "#666", + "background-color": "#444", + "underline": false, + "bold": false + }, + "quoted-text": { + "color": "", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-border": { + "color": "Blue", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-text": { + "color": "#eee", + "background-color": "#444", + "underline": false, + "bold": false + }, + "snippet-border": { + "color": "Teal", + "background-color": "", + "underline": false, + "bold": false + }, + "indent-guide": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + } + }, + "syntax-styles": { + "inline-code": { + "color": "Red", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "quoted-code": { + "color": "Silver", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "code-border": { + "color": "#444", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "keyword": { + "color": "#00f", + "background-color": "", + "underline": false, + "bold": false + }, + "string": { + "color": "Green", + "background-color": "", + "underline": false, + "bold": true + }, + "comment": { + "color": "Green", + "background-color": "", + "underline": false, + "bold": false + }, + "doc-directive": { + "color": "Teal", + "background-color": "", + "underline": false, + "bold": false + }, + "variable": { + "color": "Teal", + "background-color": "", + "underline": false, + "bold": false + }, + "symbol": { + "color": "Blue", + "background-color": "", + "underline": false, + "bold": false + }, + "null": { + "color": "Silver", + "background-color": "", + "underline": false, + "bold": false + }, + "ascii-control": { + "color": "Green", + "background-color": "", + "underline": false, + "bold": false + }, + "non-ascii": { + "color": "Yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "number": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "type": { + "color": "Blue", + "background-color": "", + "underline": false, + "bold": false + }, + "function": { + "color": "Cyan1", + "background-color": "", + "underline": false, + "bold": false + }, + "separators-references-accessors": { + "color": "Silver", + "background-color": "", + "underline": false, + "bold": false + }, + "re-special": { + "color": "Teal", + "background-color": "", + "underline": false, + "bold": false + }, + "re-repeat": { + "color": "Yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-delete": { + "color": "Red", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-add": { + "color": "Green", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-section": { + "color": "Maroon", + "background-color": "", + "underline": false, + "bold": false + }, + "spectrogram-low": { + "color": "", + "background-color": "Green", + "underline": false, + "bold": false + }, + "spectrogram-medium": { + "color": "", + "background-color": "Yellow", + "underline": false, + "bold": false + }, + "spectrogram-high": { + "color": "", + "background-color": "Red", + "underline": false, + "bold": false + }, + "file": { + "color": "Blue", + "background-color": "", + "underline": false, + "bold": false + } + }, + "status-styles": { + "text": { + "color": "Black", + "background-color": "Silver", + "underline": false, + "bold": false + }, + "warn": { + "color": "Yellow", + "background-color": "Silver", + "underline": false, + "bold": false + }, + "alert": { + "color": "Red", + "background-color": "Silver", + "underline": false, + "bold": false + }, + "active": { + "color": "Green", + "background-color": "Silver", + "underline": false, + "bold": false + }, + "inactive-alert": { + "color": "Red", + "background-color": "Grey37", + "underline": false, + "bold": false + }, + "inactive": { + "color": "Silver", + "background-color": "Grey37", + "underline": false, + "bold": false + }, + "title-hotkey": { + "color": "Teal", + "background-color": "Blue", + "underline": true, + "bold": false + }, + "title": { + "color": "Silver", + "background-color": "Blue", + "underline": false, + "bold": true + }, + "disabled-title": { + "color": "Black", + "background-color": "Silver", + "underline": false, + "bold": true + }, + "subtitle": { + "color": "Black", + "background-color": "Teal", + "underline": false, + "bold": false + }, + "info": { + "color": "Silver", + "background-color": "Grey37", + "underline": false, + "bold": false + }, + "hotkey": { + "color": "Purple", + "background-color": "", + "underline": true, + "bold": true + }, + "suggestion": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + } + }, + "log-level-styles": { + "trace": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug5": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug4": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug3": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug2": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "info": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "stats": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "notice": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "warning": { + "color": "Yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "error": { + "color": "Red", + "background-color": "", + "underline": false, + "bold": false + }, + "critical": { + "color": "Red", + "background-color": "", + "underline": false, + "bold": false + }, + "fatal": { + "color": "Red", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + } + }, + "highlights": { + "colors": { + "pattern": "(?:#[a-fA-F0-9]{6}|#[a-fA-F0-9]{3}\\b)", + "style": { + "color": "${semantic_highlight_color}", + "background-color": "", + "underline": false, + "bold": false + } + }, + "ipv4": { + "pattern": "\\b(?<!\\d\\.)\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\b(?!\\.\\d)", + "style": { + "color": "${semantic_highlight_color}", + "background-color": "", + "underline": false, + "bold": false + } + }, + "xml": { + "pattern": "</?([^ >=!]+)[^>]*>", + "style": { + "color": "${semantic_highlight_color}", + "background-color": "", + "underline": false, + "bold": false + } + }, + "xml-decl": { + "pattern": "<!([^ >=!]+)[^>]*>", + "style": { + "color": "${semantic_highlight_color}", + "background-color": "", + "underline": false, + "bold": false + } + } + } + }, + "dracula": { + "vars": { + "black": "#282A36", + "blue": "#BD93F9", + "cyan": "#8BE9FD", + "green": "#50FA7B", + "magenta": "#FF79C6", + "orange": "#FFB86C", + "pink": "#FF79C6", + "purple": "#BD93F9", + "red": "#FF5555", + "semantic_highlight_color": "semantic()", + "white": "#F8F8F2", + "yellow": "#F1FA8C" + }, + "styles": { + "identifier": { + "color": "semantic()", + "background-color": "", + "underline": false, + "bold": false + }, + "text": { + "color": "#f6f6f6", + "background-color": "$black", + "underline": false, + "bold": false + }, + "selected-text": { + "color": "", + "background-color": "$cyan", + "underline": false, + "bold": false + }, + "alt-text": { + "color": "", + "background-color": "#1c1c1c", + "underline": false, + "bold": false + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": true + }, + "ok": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": true + }, + "info": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": true + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "hidden": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "cursor-line": { + "color": "$cyan", + "background-color": "#44475A", + "underline": false, + "bold": true + }, + "disabled-cursor-line": { + "color": "$cyan", + "background-color": "#2a2c38", + "underline": false, + "bold": false + }, + "adjusted-time": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "skewed-time": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "file-offset": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "offset-time": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid-msg": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "popup": { + "color": "$black", + "background-color": "$cyan", + "underline": false, + "bold": false + }, + "focused": { + "color": "$black", + "background-color": "$white", + "underline": false, + "bold": false + }, + "disabled-focused": { + "color": "$white", + "background-color": "#333", + "underline": false, + "bold": false + }, + "scrollbar": { + "color": "$black", + "background-color": "#888", + "underline": false, + "bold": false + }, + "h1": { + "color": "$purple", + "background-color": "", + "underline": false, + "bold": true + }, + "h2": { + "color": "$purple", + "background-color": "", + "underline": true, + "bold": false + }, + "h3": { + "color": "$purple", + "background-color": "", + "underline": false, + "bold": false + }, + "h4": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h5": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h6": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "hr": { + "color": "#6272A4", + "background-color": "", + "underline": false, + "bold": false + }, + "hyperlink": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "list-glyph": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "breadcrumb": { + "color": "#99a", + "background-color": "", + "underline": false, + "bold": true + }, + "table-border": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "table-header": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "quote-border": { + "color": "#666", + "background-color": "#444", + "underline": false, + "bold": false + }, + "quoted-text": { + "color": "$yellow", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-border": { + "color": "$blue", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-text": { + "color": "$cyan", + "background-color": "#444", + "underline": false, + "bold": false + }, + "snippet-border": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "indent-guide": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + } + }, + "syntax-styles": { + "inline-code": { + "color": "$green", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "quoted-code": { + "color": "$orange", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "code-border": { + "color": "#444", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "keyword": { + "color": "$pink", + "background-color": "", + "underline": false, + "bold": true + }, + "string": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "comment": { + "color": "#6272A4", + "background-color": "", + "underline": false, + "bold": false + }, + "doc-directive": { + "color": "$pink", + "background-color": "", + "underline": false, + "bold": false + }, + "variable": { + "color": "$orange", + "background-color": "", + "underline": false, + "bold": false + }, + "symbol": { + "color": "#78dce8", + "background-color": "", + "underline": false, + "bold": false + }, + "null": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "ascii-control": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "non-ascii": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "number": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "type": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "function": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "separators-references-accessors": { + "color": "$pink", + "background-color": "", + "underline": false, + "bold": false + }, + "re-special": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "re-repeat": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-delete": { + "color": "#f00", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-add": { + "color": "#0f0", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-section": { + "color": "#6272A4", + "background-color": "", + "underline": false, + "bold": false + }, + "spectrogram-low": { + "color": "", + "background-color": "$green", + "underline": false, + "bold": false + }, + "spectrogram-medium": { + "color": "", + "background-color": "$yellow", + "underline": false, + "bold": false + }, + "spectrogram-high": { + "color": "", + "background-color": "$red", + "underline": false, + "bold": false + }, + "file": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + } + }, + "status-styles": { + "text": { + "color": "#f6f6f6", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "warn": { + "color": "$yellow", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "alert": { + "color": "$red", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "active": { + "color": "$green", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "inactive-alert": { + "color": "$red", + "background-color": "#2f2f2f", + "underline": false, + "bold": false + }, + "inactive": { + "color": "#555", + "background-color": "#2f2f2f", + "underline": false, + "bold": false + }, + "title-hotkey": { + "color": "$black", + "background-color": "#5394ec", + "underline": true, + "bold": false + }, + "title": { + "color": "#f6f6f6", + "background-color": "#5394ec", + "underline": false, + "bold": true + }, + "disabled-title": { + "color": "#5394ec", + "background-color": "#353535", + "underline": false, + "bold": true + }, + "subtitle": { + "color": "#555", + "background-color": "#66d9ee", + "underline": false, + "bold": true + }, + "info": { + "color": "#aaa", + "background-color": "#2f2f2f", + "underline": false, + "bold": false + }, + "hotkey": { + "color": "#fff", + "background-color": "", + "underline": true, + "bold": false + }, + "suggestion": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + } + }, + "log-level-styles": { + "trace": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug5": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug4": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug3": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug2": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "info": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "stats": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "notice": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "critical": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "fatal": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + } + }, + "highlights": { + + } + }, + "eldar": { + "vars": { + "black": "#000000", + "blue": "#729fcf", + "cyan": "#34e2e2", + "green": "#8ae234", + "magenta": "#ad7fa8", + "orange": "#ef8c29", + "red": "#ef2929", + "semantic_highlight_color": "semantic()", + "white": "#ffffff", + "yellow": "#fce94f" + }, + "styles": { + "identifier": { + "color": "semantic()", + "background-color": "", + "underline": false, + "bold": false + }, + "text": { + "color": "$white", + "background-color": "", + "underline": false, + "bold": false + }, + "selected-text": { + "color": "", + "background-color": "$cyan", + "underline": false, + "bold": false + }, + "alt-text": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": true + }, + "ok": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": true + }, + "info": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": true + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "hidden": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "cursor-line": { + "color": "$cyan", + "background-color": "$red", + "underline": true, + "bold": true + }, + "disabled-cursor-line": { + "color": "$cyan", + "background-color": "#5f005f", + "underline": false, + "bold": false + }, + "adjusted-time": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "skewed-time": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "file-offset": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "offset-time": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid-msg": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "popup": { + "color": "$black", + "background-color": "Grey37", + "underline": false, + "bold": false + }, + "focused": { + "color": "$black", + "background-color": "$white", + "underline": false, + "bold": false + }, + "disabled-focused": { + "color": "$white", + "background-color": "#333", + "underline": false, + "bold": false + }, + "scrollbar": { + "color": "$black", + "background-color": "$white", + "underline": false, + "bold": false + }, + "h1": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h2": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h3": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h4": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h5": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h6": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "hr": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "hyperlink": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "list-glyph": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "breadcrumb": { + "color": "#448", + "background-color": "", + "underline": false, + "bold": true + }, + "table-border": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "table-header": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "quote-border": { + "color": "#666", + "background-color": "#444", + "underline": false, + "bold": false + }, + "quoted-text": { + "color": "", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-border": { + "color": "$blue", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-text": { + "color": "#eee", + "background-color": "#444", + "underline": false, + "bold": false + }, + "snippet-border": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "indent-guide": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + } + }, + "syntax-styles": { + "inline-code": { + "color": "$red", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "quoted-code": { + "color": "#eee", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "code-border": { + "color": "#444", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "keyword": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "string": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": true + }, + "comment": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "doc-directive": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "variable": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "symbol": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "null": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "ascii-control": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "non-ascii": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "number": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "type": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + }, + "function": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "separators-references-accessors": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "re-special": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "re-repeat": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-delete": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-add": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-section": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "spectrogram-low": { + "color": "", + "background-color": "$green", + "underline": false, + "bold": false + }, + "spectrogram-medium": { + "color": "", + "background-color": "$yellow", + "underline": false, + "bold": false + }, + "spectrogram-high": { + "color": "", + "background-color": "$red", + "underline": false, + "bold": false + }, + "file": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + } + }, + "status-styles": { + "text": { + "color": "$black", + "background-color": "#999", + "underline": false, + "bold": false + }, + "warn": { + "color": "$yellow", + "background-color": "#999", + "underline": false, + "bold": false + }, + "alert": { + "color": "$red", + "background-color": "#999", + "underline": false, + "bold": false + }, + "active": { + "color": "$green", + "background-color": "#999", + "underline": false, + "bold": false + }, + "inactive-alert": { + "color": "$red", + "background-color": "Grey", + "underline": false, + "bold": false + }, + "inactive": { + "color": "$black", + "background-color": "Grey", + "underline": false, + "bold": false + }, + "title-hotkey": { + "color": "$black", + "background-color": "#5394ec", + "underline": true, + "bold": false + }, + "title": { + "color": "$black", + "background-color": "$blue", + "underline": false, + "bold": true + }, + "disabled-title": { + "color": "#5394ec", + "background-color": "#353535", + "underline": false, + "bold": true + }, + "subtitle": { + "color": "$black", + "background-color": "$cyan", + "underline": false, + "bold": true + }, + "info": { + "color": "$black", + "background-color": "Grey", + "underline": false, + "bold": false + }, + "hotkey": { + "color": "#fff", + "background-color": "", + "underline": true, + "bold": false + }, + "suggestion": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + } + }, + "log-level-styles": { + "trace": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug5": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug4": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug3": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug2": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "info": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "stats": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "notice": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "critical": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "fatal": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + } + }, + "highlights": { + + } + }, + "grayscale": { + "vars": { + "black": "#2d2a2e", + "blue": "#5394ec", + "cyan": "#66d9ee", + "green": "#a7e22e", + "magenta": "#ae81ff", + "plaintext": "#ccc", + "red": "#f92772", + "white": "#f6f6f6", + "yellow": "#fe9720" + }, + "styles": { + "identifier": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "text": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "selected-text": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "alt-text": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": true + }, + "ok": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": true + }, + "info": { + "color": "#aaa", + "background-color": "", + "underline": false, + "bold": true + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "hidden": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "cursor-line": { + "color": "#fff", + "background-color": "#555", + "underline": true, + "bold": true + }, + "disabled-cursor-line": { + "color": "#888", + "background-color": "#333", + "underline": false, + "bold": false + }, + "adjusted-time": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "skewed-time": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "file-offset": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "offset-time": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid-msg": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "popup": { + "color": "$plaintext", + "background-color": "#626262", + "underline": false, + "bold": false + }, + "focused": { + "color": "$black", + "background-color": "$plaintext", + "underline": false, + "bold": false + }, + "disabled-focused": { + "color": "$plaintext", + "background-color": "#333", + "underline": false, + "bold": false + }, + "scrollbar": { + "color": "$black", + "background-color": "#888", + "underline": false, + "bold": false + }, + "h1": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h2": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h3": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h4": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h5": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h6": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "hr": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "hyperlink": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "list-glyph": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "breadcrumb": { + "color": "#999", + "background-color": "", + "underline": false, + "bold": true + }, + "table-border": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "table-header": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "quote-border": { + "color": "#666", + "background-color": "#444", + "underline": false, + "bold": false + }, + "quoted-text": { + "color": "", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-border": { + "color": "#888", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-text": { + "color": "#eee", + "background-color": "#444", + "underline": false, + "bold": false + }, + "snippet-border": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "indent-guide": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + } + }, + "syntax-styles": { + "inline-code": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "quoted-code": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "code-border": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "keyword": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "string": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "comment": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "doc-directive": { + "color": "#aaa", + "background-color": "", + "underline": false, + "bold": false + }, + "variable": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "symbol": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "null": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "ascii-control": { + "color": "#aaa", + "background-color": "", + "underline": false, + "bold": false + }, + "non-ascii": { + "color": "#ccc", + "background-color": "", + "underline": false, + "bold": false + }, + "number": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "type": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "function": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "separators-references-accessors": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "re-special": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "re-repeat": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-delete": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-add": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-section": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "spectrogram-low": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "spectrogram-medium": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "spectrogram-high": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "file": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + } + }, + "status-styles": { + "text": { + "color": "#f6f6f6", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "warn": { + "color": "$yellow", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "alert": { + "color": "$red", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "active": { + "color": "$green", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "inactive-alert": { + "color": "$red", + "background-color": "#2f2f2f", + "underline": false, + "bold": false + }, + "inactive": { + "color": "#555", + "background-color": "#2f2f2f", + "underline": false, + "bold": false + }, + "title-hotkey": { + "color": "$black", + "background-color": "#5394ec", + "underline": true, + "bold": false + }, + "title": { + "color": "#f6f6f6", + "background-color": "#8a8a8a", + "underline": false, + "bold": true + }, + "disabled-title": { + "color": "#5394ec", + "background-color": "#353535", + "underline": false, + "bold": true + }, + "subtitle": { + "color": "#e4e4e4", + "background-color": "#626262", + "underline": false, + "bold": true + }, + "info": { + "color": "#555", + "background-color": "#2f2f2f", + "underline": false, + "bold": false + }, + "hotkey": { + "color": "#fff", + "background-color": "", + "underline": true, + "bold": false + }, + "suggestion": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + } + }, + "log-level-styles": { + "trace": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug5": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug4": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug3": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug2": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "info": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "stats": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "notice": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "critical": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "fatal": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + } + }, + "highlights": { + + } + }, + "monocai": { + "vars": { + "black": "#2d2a2e", + "blue": "#5394ec", + "cyan": "#66d9ee", + "green": "#a7e22e", + "magenta": "#ae81ff", + "orange": "#fc9867", + "red": "#f92772", + "semantic_highlight_color": "semantic()", + "white": "#808080", + "yellow": "#fe9720" + }, + "styles": { + "identifier": { + "color": "semantic()", + "background-color": "", + "underline": false, + "bold": false + }, + "text": { + "color": "#f6f6f6", + "background-color": "$black", + "underline": false, + "bold": false + }, + "selected-text": { + "color": "", + "background-color": "$cyan", + "underline": false, + "bold": false + }, + "alt-text": { + "color": "", + "background-color": "#1c1c1c", + "underline": false, + "bold": false + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": true + }, + "ok": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": true + }, + "info": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": true + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "hidden": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "cursor-line": { + "color": "$cyan", + "background-color": "#7f005f", + "underline": false, + "bold": true + }, + "disabled-cursor-line": { + "color": "$cyan", + "background-color": "#5f005f", + "underline": false, + "bold": false + }, + "adjusted-time": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "skewed-time": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "file-offset": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "offset-time": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid-msg": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "popup": { + "color": "$white", + "background-color": "$cyan", + "underline": false, + "bold": false + }, + "focused": { + "color": "$black", + "background-color": "$white", + "underline": false, + "bold": false + }, + "disabled-focused": { + "color": "$white", + "background-color": "#333", + "underline": false, + "bold": false + }, + "scrollbar": { + "color": "$black", + "background-color": "#888", + "underline": false, + "bold": false + }, + "h1": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": true + }, + "h2": { + "color": "$magenta", + "background-color": "", + "underline": true, + "bold": false + }, + "h3": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "h4": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h5": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h6": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "hr": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "hyperlink": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "list-glyph": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "breadcrumb": { + "color": "$orange", + "background-color": "", + "underline": false, + "bold": true + }, + "table-border": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "table-header": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "quote-border": { + "color": "#666", + "background-color": "#444", + "underline": false, + "bold": false + }, + "quoted-text": { + "color": "", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-border": { + "color": "$blue", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-text": { + "color": "#eee", + "background-color": "#444", + "underline": false, + "bold": false + }, + "snippet-border": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "indent-guide": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + } + }, + "syntax-styles": { + "inline-code": { + "color": "$red", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "quoted-code": { + "color": "#eee", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "code-border": { + "color": "#444", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "keyword": { + "color": "#ff6188", + "background-color": "", + "underline": false, + "bold": true + }, + "string": { + "color": "#ffd866", + "background-color": "", + "underline": false, + "bold": true + }, + "comment": { + "color": "#949194", + "background-color": "", + "underline": false, + "bold": false + }, + "doc-directive": { + "color": "#a9dc76", + "background-color": "", + "underline": false, + "bold": false + }, + "variable": { + "color": "#a9dc76", + "background-color": "", + "underline": false, + "bold": false + }, + "symbol": { + "color": "#78dce8", + "background-color": "", + "underline": false, + "bold": false + }, + "null": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "ascii-control": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "non-ascii": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "number": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "type": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + }, + "function": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "separators-references-accessors": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "re-special": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "re-repeat": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-delete": { + "color": "#f00", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-add": { + "color": "#0f0", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-section": { + "color": "#656e76", + "background-color": "", + "underline": false, + "bold": false + }, + "spectrogram-low": { + "color": "", + "background-color": "$green", + "underline": false, + "bold": false + }, + "spectrogram-medium": { + "color": "", + "background-color": "$yellow", + "underline": false, + "bold": false + }, + "spectrogram-high": { + "color": "", + "background-color": "$red", + "underline": false, + "bold": false + }, + "file": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + } + }, + "status-styles": { + "text": { + "color": "#f6f6f6", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "warn": { + "color": "$yellow", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "alert": { + "color": "$red", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "active": { + "color": "$green", + "background-color": "#353535", + "underline": false, + "bold": false + }, + "inactive-alert": { + "color": "$red", + "background-color": "#2f2f2f", + "underline": false, + "bold": false + }, + "inactive": { + "color": "#555", + "background-color": "#2f2f2f", + "underline": false, + "bold": false + }, + "title-hotkey": { + "color": "$black", + "background-color": "#5394ec", + "underline": true, + "bold": false + }, + "title": { + "color": "#f6f6f6", + "background-color": "#5394ec", + "underline": false, + "bold": true + }, + "disabled-title": { + "color": "#5394ec", + "background-color": "#353535", + "underline": false, + "bold": true + }, + "subtitle": { + "color": "#555", + "background-color": "#66d9ee", + "underline": false, + "bold": true + }, + "info": { + "color": "#aaa", + "background-color": "#2f2f2f", + "underline": false, + "bold": false + }, + "hotkey": { + "color": "#fff", + "background-color": "", + "underline": true, + "bold": false + }, + "suggestion": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + } + }, + "log-level-styles": { + "trace": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug5": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug4": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug3": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug2": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "info": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "stats": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "notice": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "critical": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "fatal": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + } + }, + "highlights": { + + } + }, + "night-owl": { + "vars": { + "black": "#011627", + "blue": "#5394ec", + "cyan": "#33cccc", + "green": "#007f00", + "magenta": "#ff70ff", + "red": "#ff6868", + "semantic_highlight_color": "semantic()", + "white": "#d6deeb", + "yellow": "#cdcd00" + }, + "styles": { + "identifier": { + "color": "semantic()", + "background-color": "#011627", + "underline": false, + "bold": false + }, + "text": { + "color": "#d6deeb", + "background-color": "#011627", + "underline": false, + "bold": false + }, + "selected-text": { + "color": "", + "background-color": "$cyan", + "underline": false, + "bold": false + }, + "alt-text": { + "color": "", + "background-color": "#1c1c1c", + "underline": false, + "bold": false + }, + "error": { + "color": "#ef5350", + "background-color": "", + "underline": false, + "bold": true + }, + "ok": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": true + }, + "info": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": true + }, + "warning": { + "color": "#b39554", + "background-color": "", + "underline": false, + "bold": true + }, + "hidden": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "cursor-line": { + "color": "$cyan", + "background-color": "$red", + "underline": true, + "bold": true + }, + "disabled-cursor-line": { + "color": "$cyan", + "background-color": "#5f005f", + "underline": false, + "bold": false + }, + "adjusted-time": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "skewed-time": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "file-offset": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "offset-time": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid-msg": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "popup": { + "color": "$base00", + "background-color": "$base3", + "underline": false, + "bold": false + }, + "focused": { + "color": "$black", + "background-color": "#666", + "underline": false, + "bold": false + }, + "disabled-focused": { + "color": "$white", + "background-color": "#333", + "underline": false, + "bold": false + }, + "scrollbar": { + "color": "$black", + "background-color": "$white", + "underline": false, + "bold": false + }, + "h1": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h2": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h3": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h4": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h5": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h6": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "hr": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "hyperlink": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "list-glyph": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "breadcrumb": { + "color": "#2d5a80", + "background-color": "", + "underline": false, + "bold": true + }, + "table-border": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "table-header": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "quote-border": { + "color": "#666", + "background-color": "#444", + "underline": false, + "bold": false + }, + "quoted-text": { + "color": "", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-border": { + "color": "$blue", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-text": { + "color": "#eee", + "background-color": "#444", + "underline": false, + "bold": false + }, + "snippet-border": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "indent-guide": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + } + }, + "syntax-styles": { + "inline-code": { + "color": "$red", + "background-color": "#222", + "underline": false, + "bold": false + }, + "quoted-code": { + "color": "#eee", + "background-color": "#222", + "underline": false, + "bold": false + }, + "code-border": { + "color": "#444", + "background-color": "#222", + "underline": false, + "bold": false + }, + "keyword": { + "color": "#c792ea", + "background-color": "", + "underline": false, + "bold": false + }, + "string": { + "color": "#ecc48d", + "background-color": "", + "underline": false, + "bold": true + }, + "comment": { + "color": "#676e95", + "background-color": "", + "underline": false, + "bold": false + }, + "doc-directive": { + "color": "#addb67", + "background-color": "", + "underline": false, + "bold": false + }, + "variable": { + "color": "#addb67", + "background-color": "", + "underline": false, + "bold": false + }, + "symbol": { + "color": "#82aaff", + "background-color": "", + "underline": false, + "bold": false + }, + "null": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "ascii-control": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "non-ascii": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "number": { + "color": "#f78c6c", + "background-color": "", + "underline": false, + "bold": false + }, + "type": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + }, + "function": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "separators-references-accessors": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "re-special": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "re-repeat": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-delete": { + "color": "#b03435", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-add": { + "color": "#264b33", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-section": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "spectrogram-low": { + "color": "", + "background-color": "$green", + "underline": false, + "bold": false + }, + "spectrogram-medium": { + "color": "", + "background-color": "$yellow", + "underline": false, + "bold": false + }, + "spectrogram-high": { + "color": "", + "background-color": "$red", + "underline": false, + "bold": false + }, + "file": { + "color": "#82aaff", + "background-color": "", + "underline": false, + "bold": false + } + }, + "status-styles": { + "text": { + "color": "#f8f8f0", + "background-color": "#162d40", + "underline": false, + "bold": false + }, + "warn": { + "color": "#b39554", + "background-color": "#162d40", + "underline": false, + "bold": false + }, + "alert": { + "color": "#ef5350", + "background-color": "#162d40", + "underline": false, + "bold": false + }, + "active": { + "color": "#264b33", + "background-color": "#162d40", + "underline": false, + "bold": false + }, + "inactive-alert": { + "color": "#ef5350", + "background-color": "#0F1F2B", + "underline": false, + "bold": false + }, + "inactive": { + "color": "#f0f0f0", + "background-color": "#0F1F2B", + "underline": false, + "bold": false + }, + "title-hotkey": { + "color": "$black", + "background-color": "#2d5a80", + "underline": true, + "bold": true + }, + "title": { + "color": "#f8f0f0", + "background-color": "#2d5a80", + "underline": false, + "bold": true + }, + "disabled-title": { + "color": "#5394ec", + "background-color": "#353535", + "underline": false, + "bold": true + }, + "subtitle": { + "color": "#f8f8f0", + "background-color": "#005f5f", + "underline": false, + "bold": false + }, + "info": { + "color": "#aaa", + "background-color": "#0F1F2B", + "underline": false, + "bold": false + }, + "hotkey": { + "color": "#2d5a80", + "background-color": "", + "underline": true, + "bold": true + }, + "suggestion": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + } + }, + "log-level-styles": { + "trace": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug5": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug4": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug3": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug2": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "info": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "stats": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "notice": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "warning": { + "color": "#b39554", + "background-color": "", + "underline": false, + "bold": false + }, + "error": { + "color": "#ef5350", + "background-color": "", + "underline": false, + "bold": false + }, + "critical": { + "color": "#ef5350", + "background-color": "", + "underline": false, + "bold": false + }, + "fatal": { + "color": "#ef5350", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + } + }, + "highlights": { + + } + }, + "solarized-dark": { + "vars": { + "base0": "#839496", + "base00": "#657b83", + "base01": "#586e75", + "base02": "#073642", + "base03": "#002b36", + "base1": "#93a1a1", + "base2": "#eee8d5", + "base3": "#fdf6e3", + "black": "#002b36", + "blue": "#268bd2", + "cyan": "#2aa198", + "green": "#859900", + "magenta": "#d33682", + "orange": "#cb4b16", + "red": "#dc322f", + "semantic_highlight_color": "semantic()", + "violet": "#6c71c4", + "yellow": "#b58900" + }, + "styles": { + "identifier": { + "color": "semantic()", + "background-color": "$base03", + "underline": false, + "bold": false + }, + "text": { + "color": "$base0", + "background-color": "$base03", + "underline": false, + "bold": false + }, + "selected-text": { + "color": "", + "background-color": "$cyan", + "underline": false, + "bold": false + }, + "alt-text": { + "color": "", + "background-color": "$base02", + "underline": false, + "bold": false + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": true + }, + "ok": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": true + }, + "info": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": true + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "hidden": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "cursor-line": { + "color": "$cyan", + "background-color": "$red", + "underline": true, + "bold": true + }, + "disabled-cursor-line": { + "color": "$cyan", + "background-color": "#5f005f", + "underline": false, + "bold": false + }, + "adjusted-time": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "skewed-time": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "file-offset": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "offset-time": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid-msg": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "popup": { + "color": "$base00", + "background-color": "$base3", + "underline": false, + "bold": false + }, + "focused": { + "color": "$base03", + "background-color": "$base01", + "underline": false, + "bold": false + }, + "disabled-focused": { + "color": "$base0", + "background-color": "$base02", + "underline": false, + "bold": false + }, + "scrollbar": { + "color": "$base03", + "background-color": "$base0", + "underline": false, + "bold": false + }, + "h1": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h2": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h3": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h4": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h5": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h6": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "hr": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "hyperlink": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "list-glyph": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "breadcrumb": { + "color": "#99a", + "background-color": "", + "underline": false, + "bold": true + }, + "table-border": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "table-header": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "quote-border": { + "color": "#666", + "background-color": "#444", + "underline": false, + "bold": false + }, + "quoted-text": { + "color": "", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-border": { + "color": "$blue", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-text": { + "color": "#eee", + "background-color": "#444", + "underline": false, + "bold": false + }, + "snippet-border": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "indent-guide": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + } + }, + "syntax-styles": { + "inline-code": { + "color": "$red", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "quoted-code": { + "color": "#eee", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "code-border": { + "color": "#444", + "background-color": "#121212", + "underline": false, + "bold": false + }, + "keyword": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "string": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": true + }, + "comment": { + "color": "$base01", + "background-color": "", + "underline": false, + "bold": false + }, + "doc-directive": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "variable": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + }, + "symbol": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + }, + "null": { + "color": "#888", + "background-color": "", + "underline": false, + "bold": false + }, + "ascii-control": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "non-ascii": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "number": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "type": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + }, + "function": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "separators-references-accessors": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "re-special": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "re-repeat": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-delete": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-add": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-section": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "spectrogram-low": { + "color": "", + "background-color": "$green", + "underline": false, + "bold": false + }, + "spectrogram-medium": { + "color": "", + "background-color": "$yellow", + "underline": false, + "bold": false + }, + "spectrogram-high": { + "color": "", + "background-color": "$red", + "underline": false, + "bold": false + }, + "file": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + } + }, + "status-styles": { + "text": { + "color": "$base2", + "background-color": "$base01", + "underline": false, + "bold": false + }, + "warn": { + "color": "$yellow", + "background-color": "$base01", + "underline": false, + "bold": false + }, + "alert": { + "color": "$red", + "background-color": "$base01", + "underline": false, + "bold": false + }, + "active": { + "color": "$green", + "background-color": "$base01", + "underline": false, + "bold": false + }, + "inactive-alert": { + "color": "$red", + "background-color": "$base02", + "underline": false, + "bold": false + }, + "inactive": { + "color": "$base1", + "background-color": "$base02", + "underline": false, + "bold": false + }, + "title-hotkey": { + "color": "$black", + "background-color": "#5394ec", + "underline": true, + "bold": false + }, + "title": { + "color": "$base02", + "background-color": "$blue", + "underline": false, + "bold": true + }, + "disabled-title": { + "color": "$base01", + "background-color": "$base03", + "underline": false, + "bold": true + }, + "subtitle": { + "color": "$base00", + "background-color": "$cyan", + "underline": false, + "bold": true + }, + "info": { + "color": "$base1", + "background-color": "$base02", + "underline": false, + "bold": false + }, + "hotkey": { + "color": "#fff", + "background-color": "", + "underline": true, + "bold": false + }, + "suggestion": { + "color": "$base02", + "background-color": "", + "underline": false, + "bold": false + } + }, + "log-level-styles": { + "trace": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug5": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug4": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug3": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug2": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "info": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "stats": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "notice": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "critical": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "fatal": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + } + }, + "highlights": { + + } + }, + "solarized-light": { + "vars": { + "base0": "#839496", + "base00": "#657b83", + "base01": "#586e75", + "base02": "#073642", + "base03": "#002b36", + "base1": "#93a1a1", + "base2": "#ededb0", + "base3": "#fdf6e3", + "black": "#002b36", + "blue": "#268bd2", + "cyan": "#2aa198", + "green": "#859900", + "magenta": "#d33682", + "orange": "#cb4b16", + "red": "#dc322f", + "semantic_highlight_color": "semantic()", + "violet": "#6c71c4", + "yellow": "#b58900" + }, + "styles": { + "identifier": { + "color": "semantic()", + "background-color": "", + "underline": false, + "bold": false + }, + "text": { + "color": "$base00", + "background-color": "$base3", + "underline": false, + "bold": false + }, + "selected-text": { + "color": "", + "background-color": "$cyan", + "underline": false, + "bold": false + }, + "alt-text": { + "color": "", + "background-color": "$base2", + "underline": false, + "bold": false + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": true + }, + "ok": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": true + }, + "info": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "hidden": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": true + }, + "cursor-line": { + "color": "$base0", + "background-color": "#fafa4a", + "underline": true, + "bold": true + }, + "disabled-cursor-line": { + "color": "$cyan", + "background-color": "$yellow", + "underline": false, + "bold": false + }, + "adjusted-time": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "skewed-time": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "file-offset": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "offset-time": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid-msg": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "popup": { + "color": "$base00", + "background-color": "$base2", + "underline": false, + "bold": false + }, + "focused": { + "color": "$base03", + "background-color": "$base01", + "underline": false, + "bold": false + }, + "disabled-focused": { + "color": "$base0", + "background-color": "$base02", + "underline": false, + "bold": false + }, + "scrollbar": { + "color": "$base3", + "background-color": "$base00", + "underline": false, + "bold": false + }, + "h1": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h2": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h3": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h4": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h5": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "h6": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "hr": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "hyperlink": { + "color": "", + "background-color": "", + "underline": true, + "bold": false + }, + "list-glyph": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "breadcrumb": { + "color": "#99a", + "background-color": "", + "underline": false, + "bold": true + }, + "table-border": { + "color": "#444", + "background-color": "", + "underline": false, + "bold": false + }, + "table-header": { + "color": "", + "background-color": "", + "underline": false, + "bold": true + }, + "quote-border": { + "color": "#666", + "background-color": "#444", + "underline": false, + "bold": false + }, + "quoted-text": { + "color": "", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-border": { + "color": "$blue", + "background-color": "#444", + "underline": false, + "bold": false + }, + "footnote-text": { + "color": "#eee", + "background-color": "#444", + "underline": false, + "bold": false + }, + "snippet-border": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "indent-guide": { + "color": "$base1", + "background-color": "", + "underline": false, + "bold": false + } + }, + "syntax-styles": { + "inline-code": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "quoted-code": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "code-border": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "keyword": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "string": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": true + }, + "comment": { + "color": "$base1", + "background-color": "", + "underline": false, + "bold": false + }, + "doc-directive": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + }, + "variable": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + }, + "symbol": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + }, + "null": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "ascii-control": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "non-ascii": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "number": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "type": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "function": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "separators-references-accessors": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "re-special": { + "color": "$cyan", + "background-color": "", + "underline": false, + "bold": false + }, + "re-repeat": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-delete": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-add": { + "color": "$green", + "background-color": "", + "underline": false, + "bold": false + }, + "diff-section": { + "color": "$magenta", + "background-color": "", + "underline": false, + "bold": false + }, + "spectrogram-low": { + "color": "", + "background-color": "$green", + "underline": false, + "bold": false + }, + "spectrogram-medium": { + "color": "", + "background-color": "$yellow", + "underline": false, + "bold": false + }, + "spectrogram-high": { + "color": "", + "background-color": "$red", + "underline": false, + "bold": false + }, + "file": { + "color": "$blue", + "background-color": "", + "underline": false, + "bold": false + } + }, + "status-styles": { + "text": { + "color": "$base2", + "background-color": "$base03", + "underline": false, + "bold": false + }, + "warn": { + "color": "$yellow", + "background-color": "$base03", + "underline": false, + "bold": false + }, + "alert": { + "color": "$red", + "background-color": "$base03", + "underline": false, + "bold": false + }, + "active": { + "color": "$green", + "background-color": "$base03", + "underline": false, + "bold": false + }, + "inactive-alert": { + "color": "$red", + "background-color": "$base03", + "underline": false, + "bold": false + }, + "inactive": { + "color": "$base1", + "background-color": "$base03", + "underline": false, + "bold": false + }, + "title-hotkey": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "title": { + "color": "$base2", + "background-color": "$base00", + "underline": false, + "bold": true + }, + "disabled-title": { + "color": "$base2", + "background-color": "$base02", + "underline": false, + "bold": true + }, + "subtitle": { + "color": "$base2", + "background-color": "$base01", + "underline": false, + "bold": true + }, + "info": { + "color": "$base1", + "background-color": "$base03", + "underline": false, + "bold": false + }, + "hotkey": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "suggestion": { + "color": "$base1", + "background-color": "", + "underline": false, + "bold": false + } + }, + "log-level-styles": { + "trace": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug5": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug4": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug3": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug2": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "debug": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "info": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "stats": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "notice": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + }, + "warning": { + "color": "$yellow", + "background-color": "", + "underline": false, + "bold": false + }, + "error": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "critical": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "fatal": { + "color": "$red", + "background-color": "", + "underline": false, + "bold": false + }, + "invalid": { + "color": "", + "background-color": "", + "underline": false, + "bold": false + } + }, + "highlights": { + + } + } + }, + "mouse": { + "mode": "disabled" + }, + "movement": { + "mode": "cursor" + }, + "keymap-defs": { + "de": { + "x21": { + "id": "", + "command": ":goto last 10 minutes after the hour", + "alt-msg": "" + }, + "x22": { + "id": "", + "command": ":goto last 20 minutes after the hour", + "alt-msg": "" + }, + "x24": { + "id": "", + "command": ":goto last 40 minutes after the hour", + "alt-msg": "" + }, + "x25": { + "id": "", + "command": ":goto last 50 minutes after the hour", + "alt-msg": "" + }, + "x26": { + "id": "", + "command": ":goto last hour", + "alt-msg": "" + }, + "x31": { + "id": "", + "command": ":goto next 10 minutes after the hour", + "alt-msg": "" + }, + "x32": { + "id": "", + "command": ":goto next 20 minutes after the hour", + "alt-msg": "" + }, + "x33": { + "id": "", + "command": ":goto next 30 minutes after the hour", + "alt-msg": "" + }, + "x34": { + "id": "", + "command": ":goto next 40 minutes after the hour", + "alt-msg": "" + }, + "x35": { + "id": "", + "command": ":goto next 50 minutes after the hour", + "alt-msg": "" + }, + "x36": { + "id": "", + "command": ":goto next hour", + "alt-msg": "" + }, + "x37": { + "id": "", + "command": ":goto previous minute", + "alt-msg": "" + }, + "x38": { + "id": "", + "command": ":goto next minute", + "alt-msg": "" + }, + "xc2xa7": { + "id": "", + "command": ":goto last 30 minutes after the hour", + "alt-msg": "" + } + }, + "default": { + "x04": { + "id": "", + "command": ";UPDATE lnav_views SET top = top + (height / 2), selection = (CASE movement WHEN 'top' THEN selection ELSE top + (height / 2) + (selection - top) END) WHERE name = (SELECT name FROM lnav_top_view)", + "alt-msg": "" + }, + "x06": { + "id": "", + "command": ";UPDATE lnav_view_filters SET enabled = 1 - enabled WHERE view_name = (SELECT name FROM lnav_view_stack WHERE name in ('log', 'text') ORDER BY rowid DESC LIMIT 1)", + "alt-msg": "" + }, + "x0c": { + "id": "", + "command": ":write-screen-to -", + "alt-msg": "" + }, + "x12": { + "id": "", + "command": ":reset-session", + "alt-msg": "" + }, + "x15": { + "id": "", + "command": ";UPDATE lnav_views SET top = max(0, top - (height / 2)), selection = (CASE movement WHEN 'top' THEN selection ELSE max(0, top - (height / 2) + (selection - top)) END) WHERE name = (SELECT name FROM lnav_top_view)", + "alt-msg": "" + }, + "x17": { + "id": "", + "command": ";UPDATE lnav_views SET options = json_set(options, '$.word-wrap', CASE jget(options, '/word-wrap', 'none') WHEN 'none' THEN 'normal' ELSE 'none' END) WHERE name = (SELECT name FROM lnav_top_view)", + "alt-msg": "" + }, + "x18": { + "id": "", + "command": ";UPDATE lnav_views SET movement = (CASE movement WHEN 'top' THEN 'cursor' ELSE 'top' END) WHERE name = (SELECT name FROM lnav_top_view)", + "alt-msg": "" + }, + "x21": { + "id": "", + "command": ":goto last 10 minutes after the hour", + "alt-msg": "" + }, + "x23": { + "id": "", + "command": ":goto last 30 minutes after the hour", + "alt-msg": "" + }, + "x24": { + "id": "", + "command": ":goto last 40 minutes after the hour", + "alt-msg": "" + }, + "x25": { + "id": "", + "command": ":goto last 50 minutes after the hour", + "alt-msg": "" + }, + "x2f": { + "id": "", + "command": ":prompt search", + "alt-msg": "" + }, + "x31": { + "id": "", + "command": ":goto next 10 minutes after the hour", + "alt-msg": "" + }, + "x32": { + "id": "", + "command": ":goto next 20 minutes after the hour", + "alt-msg": "" + }, + "x33": { + "id": "", + "command": ":goto next 30 minutes after the hour", + "alt-msg": "" + }, + "x34": { + "id": "", + "command": ":goto next 40 minutes after the hour", + "alt-msg": "" + }, + "x35": { + "id": "", + "command": ":goto next 50 minutes after the hour", + "alt-msg": "" + }, + "x36": { + "id": "", + "command": ":goto next hour", + "alt-msg": "" + }, + "x37": { + "id": "", + "command": ":goto previous minute", + "alt-msg": "" + }, + "x38": { + "id": "", + "command": ":goto next minute", + "alt-msg": "" + }, + "x3a": { + "id": "", + "command": ":prompt command", + "alt-msg": "" + }, + "x3b": { + "id": "", + "command": ":prompt sql", + "alt-msg": "" + }, + "x3d": { + "id": "", + "command": ";UPDATE lnav_views SET paused = 1 - paused", + "alt-msg": "" + }, + "x3f": { + "id": "", + "command": ":toggle-view help", + "alt-msg": "" + }, + "x40": { + "id": "", + "command": ":goto last 20 minutes after the hour", + "alt-msg": "" + }, + "x45": { + "id": "", + "command": ":prev-mark error", + "alt-msg": "${keymap_def_alt_warning}" + }, + "x4e": { + "id": "", + "command": ":prev-mark search", + "alt-msg": "${keymap_def_scroll_horiz}" + }, + "x50": { + "id": "", + "command": ":toggle-view pretty", + "alt-msg": "${keymap_def_pop_view}" + }, + "x51": { + "id": "", + "command": "|lnav-pop-view ${keyseq}", + "alt-msg": "" + }, + "x54": { + "id": "", + "command": ";UPDATE lnav_views SET options = json_set(options, '$.row-time-offset', CASE jget(options, '/row-time-offset', 'hide') WHEN 'hide' THEN 'show' ELSE 'hide' END) WHERE name = (SELECT name FROM lnav_top_view)", + "alt-msg": "${keymap_def_time_offset}" + }, + "x55": { + "id": "", + "command": ":prev-mark", + "alt-msg": "" + }, + "x57": { + "id": "", + "command": ":prev-mark warning", + "alt-msg": "${keymap_def_alt_hour_boundary}" + }, + "x58": { + "id": "", + "command": ":close", + "alt-msg": "" + }, + "x5e": { + "id": "", + "command": ":goto last hour", + "alt-msg": "" + }, + "x60": { + "id": "org.lnav.key.breadcrumb.focus", + "command": ":prompt breadcrumb", + "alt-msg": "" + }, + "x63": { + "id": "", + "command": "|lnav-copy-text", + "alt-msg": "${keymap_def_clear}" + }, + "x65": { + "id": "", + "command": ":next-mark error", + "alt-msg": "${keymap_def_alt_warning}" + }, + "x67": { + "id": "", + "command": ":goto 0", + "alt-msg": "" + }, + "x69": { + "id": "", + "command": ":toggle-view histogram", + "alt-msg": "${keymap_def_zoom}" + }, + "x6d": { + "id": "", + "command": ":mark", + "alt-msg": "${keymap_def_next_user_mark}" + }, + "x6e": { + "id": "", + "command": ":next-mark search", + "alt-msg": "${keymap_def_scroll_horiz}" + }, + "x70": { + "id": "", + "command": ";UPDATE lnav_views SET options = json_set(options, '$.row-details', CASE jget(options, '/row-details', 'hide') WHEN 'hide' THEN 'show' ELSE 'hide' END) WHERE name = (SELECT name FROM lnav_top_view)", + "alt-msg": "" + }, + "x71": { + "id": "", + "command": "|lnav-pop-view ${keyseq}", + "alt-msg": "" + }, + "x75": { + "id": "", + "command": ":next-mark", + "alt-msg": "${keymap_def_next_mark}" + }, + "x76": { + "id": "", + "command": ":toggle-view db", + "alt-msg": "" + }, + "x77": { + "id": "", + "command": ":next-mark warning", + "alt-msg": "${keymap_def_alt_hour_boundary}" + }, + "x78": { + "id": "", + "command": ";UPDATE lnav_views SET options = json_set(options, '$.hidden-fields', CASE jget(options, '/hidden-fields', 'hide') WHEN 'hide' THEN 'show' ELSE 'hide' END) WHERE name = (SELECT name FROM lnav_top_view)", + "alt-msg": "" + }, + "x7b": { + "id": "", + "command": ":prev-section", + "alt-msg": "${keymap_def_next_location}" + }, + "x7c": { + "id": "", + "command": ":prompt script", + "alt-msg": "" + }, + "x7d": { + "id": "", + "command": ":next-section", + "alt-msg": "${keymap_def_prev_location}" + } + }, + "fr": { + "x22": { + "id": "", + "command": ":goto next 30 minutes after the hour", + "alt-msg": "" + }, + "x26": { + "id": "", + "command": ":goto next 10 minutes after the hour", + "alt-msg": "" + }, + "x27": { + "id": "", + "command": ":goto next 40 minutes after the hour", + "alt-msg": "" + }, + "x28": { + "id": "", + "command": ":goto next 50 minutes after the hour", + "alt-msg": "" + }, + "x2d": { + "id": "", + "command": ":goto next hour", + "alt-msg": "" + }, + "x31": { + "id": "", + "command": ":goto last 10 minutes after the hour", + "alt-msg": "" + }, + "x32": { + "id": "", + "command": ":goto last 20 minutes after the hour", + "alt-msg": "" + }, + "x33": { + "id": "", + "command": ":goto last 30 minutes after the hour", + "alt-msg": "" + }, + "x34": { + "id": "", + "command": ":goto last 40 minutes after the hour", + "alt-msg": "" + }, + "x35": { + "id": "", + "command": ":goto last 50 minutes after the hour", + "alt-msg": "" + }, + "x36": { + "id": "", + "command": ":goto last hour", + "alt-msg": "" + }, + "x37": { + "id": "", + "command": ":goto previous minute", + "alt-msg": "" + }, + "xc3xa8": { + "id": "", + "command": ":goto next minute", + "alt-msg": "" + }, + "xc3xa9": { + "id": "", + "command": ":goto next 20 minutes after the hour", + "alt-msg": "" + } + }, + "sv": { + "x22": { + "id": "", + "command": ":goto last 20 minutes after the hour", + "alt-msg": "" + }, + "x26": { + "id": "", + "command": ":goto last hour", + "alt-msg": "" + }, + "x2b": { + "id": "", + "command": ";UPDATE lnav_views SET paused = 1 - paused", + "alt-msg": "" + }, + "x3d": { + "id": "", + "command": ":goto last day", + "alt-msg": "" + }, + "x60": { + "id": "", + "command": ":prompt breadcrumb", + "alt-msg": "" + }, + "xc2xa4": { + "id": "", + "command": ":goto last 40 minutes after the hour", + "alt-msg": "" + }, + "xc2xa7": { + "id": "org.lnav.key.breadcrumb.focus", + "command": ":prompt breadcrumb", + "alt-msg": "" + }, + "xe2x82xac": { + "id": "", + "command": ":goto last 40 minutes after the hour", + "alt-msg": "" + } + }, + "uk": { + "x22": { + "id": "", + "command": ":goto last 20 minutes after the hour", + "alt-msg": "" + }, + "xc2xa3": { + "id": "", + "command": ":goto last 30 minutes after the hour", + "alt-msg": "" + } + }, + "us": { + "x21": { + "id": "", + "command": ":goto last 10 minutes after the hour", + "alt-msg": "" + }, + "x23": { + "id": "", + "command": ":goto last 30 minutes after the hour", + "alt-msg": "" + }, + "x24": { + "id": "", + "command": ":goto last 40 minutes after the hour", + "alt-msg": "" + }, + "x25": { + "id": "", + "command": ":goto last 50 minutes after the hour", + "alt-msg": "" + }, + "x31": { + "id": "", + "command": ":goto next 10 minutes after the hour", + "alt-msg": "" + }, + "x32": { + "id": "", + "command": ":goto next 20 minutes after the hour", + "alt-msg": "" + }, + "x33": { + "id": "", + "command": ":goto next 30 minutes after the hour", + "alt-msg": "" + }, + "x34": { + "id": "", + "command": ":goto next 40 minutes after the hour", + "alt-msg": "" + }, + "x35": { + "id": "", + "command": ":goto next 50 minutes after the hour", + "alt-msg": "" + }, + "x36": { + "id": "", + "command": ":goto next hour", + "alt-msg": "" + }, + "x37": { + "id": "", + "command": ":goto previous minute", + "alt-msg": "" + }, + "x38": { + "id": "", + "command": ":goto next minute", + "alt-msg": "" + }, + "x40": { + "id": "", + "command": ":goto last 20 minutes after the hour", + "alt-msg": "" + }, + "x5e": { + "id": "", + "command": ":goto last hour", + "alt-msg": "" + } + } + } + }, + "log": { + "date-time": { + "convert-zoned-to-local": true + }, + "watch-expressions": { + + }, + "annotations": { + "com.vmware.vmacore.backtrace": { + "description": "Convert a vmacore backtrace into human-readable text", + "condition": ":log_body LIKE '%[context]%[/context]%'", + "handler": "com.vmware.btresolver.py" + }, + "org.lnav.test": { + "description": "test annotation", + "condition": ":c_ip IS NOT NULL AND $TEST_ANNO = '1'", + "handler": "anno-test.sh" + } + } + }, + "global": { + "keymap_def_alt_hour_boundary": "Press ${ansi_bold}6${ansi_bold}/${ansi_bold}^${ansi_norm} to move to the next/previous hour boundary", + "keymap_def_alt_warning": "Press ${ansi_bold}w${ansi_norm}/${ansi_bold}W${ansi_norm} to move forward/backward through ${ansi_yellow}warning${ansi_norm} messages", + "keymap_def_clear": "Press ${ansi_bold}C${ansi_norm} to clear marked messages", + "keymap_def_db_view": "Press ${ansi_bold}v${ansi_norm}/${ansi_bold}V${ansi_norm} to switch to the SQL result view", + "keymap_def_hist_view": "Press ${ansi_bold}i${ansi_norm}/${ansi_bold}I${ansi_norm} to switch to the histogram view", + "keymap_def_next_mark": "Press ${ansi_bold}c${ansi_norm} to copy marked lines to the clipboard; press ${ansi_bold}C${ansi_norm} to clear marked lines", + "keymap_def_next_section": "Press ${ansi_bold}}${ansi_norm} to move to the next section in the view", + "keymap_def_next_user_mark": "Press ${ansi_bold}u${ansi_norm}/${ansi_bold}U${ansi_norm} to move forward/backward through user bookmarks", + "keymap_def_pop_view": "Press ${ansi_bold}q${ansi_norm} to return to the previous view", + "keymap_def_prev_section": "Press ${ansi_bold}{${ansi_norm} to move to the previous section in the view", + "keymap_def_scroll_horiz": "Press \\'${ansi_bold}>${ansi_norm}\\' or \\'${ansi_bold}<${ansi_norm}\\' to scroll horizontally to a search result", + "keymap_def_text_view": "Press ${ansi_bold}t${ansi_norm} to switch to the text view", + "keymap_def_time_offset": "Press ${ansi_bold}s${ansi_norm}/${ansi_bold}S${ansi_norm} to move forward/backward through slow downs", + "keymap_def_zoom": "Press ${ansi_bold}z${ansi_norm}/${ansi_bold}Z${ansi_norm} to zoom in/out" + } +} + diff --git a/test/expected/test_cmds.sh_a0e6214b2a85c90d31aee12efde850441cca7eb3.err b/test/expected/test_cli.sh_108c6922cde063429f76abc3fdb8a81ad9a2f671.err index e69de29..e69de29 100644 --- a/test/expected/test_cmds.sh_a0e6214b2a85c90d31aee12efde850441cca7eb3.err +++ b/test/expected/test_cli.sh_108c6922cde063429f76abc3fdb8a81ad9a2f671.err diff --git a/test/expected/test_cli.sh_108c6922cde063429f76abc3fdb8a81ad9a2f671.out b/test/expected/test_cli.sh_108c6922cde063429f76abc3fdb8a81ad9a2f671.out new file mode 100644 index 0000000..45b983b --- /dev/null +++ b/test/expected/test_cli.sh_108c6922cde063429f76abc3fdb8a81ad9a2f671.out @@ -0,0 +1 @@ +hi diff --git a/test/expected/test_cli.sh_10c33e465ef7681c6b5519d05d557426b26cd43d.err b/test/expected/test_cli.sh_10c33e465ef7681c6b5519d05d557426b26cd43d.err new file mode 100644 index 0000000..0f7ae0c --- /dev/null +++ b/test/expected/test_cli.sh_10c33e465ef7681c6b5519d05d557426b26cd43d.err @@ -0,0 +1,4 @@ +[1m[35mⓘ info[0m: the following piper captures were found in: + [1mpiper-tmp/lnav-user-{uid}-work/piper[0m +[36m =[0m [36mnote[0m: The captures currently consume [1m33B[0m of disk space. File sizes include associated metadata. +[36m =[0m [36mhelp[0m: You can reopen a capture by passing the piper URL to lnav diff --git a/test/expected/test_cli.sh_10c33e465ef7681c6b5519d05d557426b26cd43d.out b/test/expected/test_cli.sh_10c33e465ef7681c6b5519d05d557426b26cd43d.out new file mode 100644 index 0000000..26c7111 --- /dev/null +++ b/test/expected/test_cli.sh_10c33e465ef7681c6b5519d05d557426b26cd43d.out @@ -0,0 +1 @@ +[33m just now[0m [1mpiper://p-e25e2eb68547f31e42da0818b4d0084f-000[0m [1m 33.0 B[0m “[32m[0] echo hi[0m” diff --git a/test/expected/test_cmds.sh_d7eebacdcf2cb194f25fa4ef97b7b5376b442467.out b/test/expected/test_cli.sh_3114508cf42fb2608ef77f4bc294a84885c97a79.err index e69de29..e69de29 100644 --- a/test/expected/test_cmds.sh_d7eebacdcf2cb194f25fa4ef97b7b5376b442467.out +++ b/test/expected/test_cli.sh_3114508cf42fb2608ef77f4bc294a84885c97a79.err diff --git a/test/expected/test_cli.sh_3114508cf42fb2608ef77f4bc294a84885c97a79.out b/test/expected/test_cli.sh_3114508cf42fb2608ef77f4bc294a84885c97a79.out new file mode 100644 index 0000000..45b983b --- /dev/null +++ b/test/expected/test_cli.sh_3114508cf42fb2608ef77f4bc294a84885c97a79.out @@ -0,0 +1 @@ +hi diff --git a/test/expected/test_config.sh_5105c29004e297521310ca0bd0fd560b01c2c549.out b/test/expected/test_cli.sh_4327033cfae0d4c170a38a3c4a570520bfabb493.err index e69de29..e69de29 100644 --- a/test/expected/test_config.sh_5105c29004e297521310ca0bd0fd560b01c2c549.out +++ b/test/expected/test_cli.sh_4327033cfae0d4c170a38a3c4a570520bfabb493.err diff --git a/test/expected/test_cli.sh_4327033cfae0d4c170a38a3c4a570520bfabb493.out b/test/expected/test_cli.sh_4327033cfae0d4c170a38a3c4a570520bfabb493.out new file mode 100644 index 0000000..45b983b --- /dev/null +++ b/test/expected/test_cli.sh_4327033cfae0d4c170a38a3c4a570520bfabb493.out @@ -0,0 +1 @@ +hi diff --git a/test/expected/test_format_loader.sh_3f1d6f35e8a9ae4fd3e91ffaa82a037b5a847ab7.out b/test/expected/test_cli.sh_76aa57821598962e59063a40c20171040c95a731.err index e69de29..e69de29 100644 --- a/test/expected/test_format_loader.sh_3f1d6f35e8a9ae4fd3e91ffaa82a037b5a847ab7.out +++ b/test/expected/test_cli.sh_76aa57821598962e59063a40c20171040c95a731.err diff --git a/test/expected/test_cli.sh_76aa57821598962e59063a40c20171040c95a731.out b/test/expected/test_cli.sh_76aa57821598962e59063a40c20171040c95a731.out new file mode 100644 index 0000000..f6223f2 --- /dev/null +++ b/test/expected/test_cli.sh_76aa57821598962e59063a40c20171040c95a731.out @@ -0,0 +1,9 @@ +[ + { + "filepath": "[0] echo hi", + "descriptor": "org.lnav.piper.header", + "mimetype": "application/json", + "ctime": "2013-06-06T19:13:20.000", + "cwd": "{test_dir}" + } +] diff --git a/test/expected/test_cli.sh_a1a09f890f4604309d0a81bbbec8e50fb7d5e887.out b/test/expected/test_cli.sh_a1a09f890f4604309d0a81bbbec8e50fb7d5e887.out deleted file mode 100644 index 1e0a993..0000000 --- a/test/expected/test_cli.sh_a1a09f890f4604309d0a81bbbec8e50fb7d5e887.out +++ /dev/null @@ -1,3 +0,0 @@ -2013-06-06T19:13:20.123 Hello, World! -2013-06-06T19:13:20.123 Goodbye, World! -2013-06-06T19:13:20.123 ---- END-OF-STDIN ---- diff --git a/test/expected/test_format_loader.sh_a47f2b090a5d8a226783835c7ff7d1c8821f11ed.out b/test/expected/test_cli.sh_af3ace7762b4cc150fcdcac86083b379bded7b32.err index e69de29..e69de29 100644 --- a/test/expected/test_format_loader.sh_a47f2b090a5d8a226783835c7ff7d1c8821f11ed.out +++ b/test/expected/test_cli.sh_af3ace7762b4cc150fcdcac86083b379bded7b32.err diff --git a/test/expected/test_cli.sh_af3ace7762b4cc150fcdcac86083b379bded7b32.out b/test/expected/test_cli.sh_af3ace7762b4cc150fcdcac86083b379bded7b32.out new file mode 100644 index 0000000..f6223f2 --- /dev/null +++ b/test/expected/test_cli.sh_af3ace7762b4cc150fcdcac86083b379bded7b32.out @@ -0,0 +1,9 @@ +[ + { + "filepath": "[0] echo hi", + "descriptor": "org.lnav.piper.header", + "mimetype": "application/json", + "ctime": "2013-06-06T19:13:20.000", + "cwd": "{test_dir}" + } +] diff --git a/test/expected/test_json_format.sh_90a037c7d9d70ac4ca97158271ea242787313377.err b/test/expected/test_cli.sh_c69c835a3c43210225cf62564b3e9584c899af20.err index e69de29..e69de29 100644 --- a/test/expected/test_json_format.sh_90a037c7d9d70ac4ca97158271ea242787313377.err +++ b/test/expected/test_cli.sh_c69c835a3c43210225cf62564b3e9584c899af20.err diff --git a/test/expected/test_cli.sh_c69c835a3c43210225cf62564b3e9584c899af20.out b/test/expected/test_cli.sh_c69c835a3c43210225cf62564b3e9584c899af20.out new file mode 100644 index 0000000..7600bd0 --- /dev/null +++ b/test/expected/test_cli.sh_c69c835a3c43210225cf62564b3e9584c899af20.out @@ -0,0 +1,4 @@ +Feb 25 16:20:15 192.168.4.2 haproxy[7]: 95.216.197.33:56224 [25/Feb/2019:16:20:10.111] prod_http_in/sktst2: SSL handshake failure +Feb 25 16:20:16 192.168.4.2 haproxy[7]: 87.183.41.77:50188 [25/Feb/2019:16:20:12.321] prod_http_in~ bk_ktest_sonst/nginx_sonst 0/0/1/0/1 200 5959 - - ---- 9/9/0/0/0 0/0 {Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:65.0) Gecko/20100101 Firefox/65.0} {} "GET /media/pi_fontawesome/css/font-awesome.css?1550939694 HTTP/1.1" +Feb 25 16:20:17 192.168.4.2 haproxy[7]: 87.183.41.77:50187 [25/Feb/2019:16:20:12.325] prod_http_in~ bk_ktest_sonst/nginx_sonst 0/0/1/0/1 200 1859 - - ---- 9/9/0/0/0 0/0 {Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:65.0) Gecko/20100101 Firefox/65.0} {} "GET /media/pi_popup/1.1.0/magnific-popup.css?1550939704 HTTP/1.1" +Feb 25 16:20:18 192.168.4.2 haproxy[7]: 87.183.41.77:50189 [25/Feb/2019:16:20:12.331] prod_http_in~ bk_ktest_sonst/nginx_sonst 0/0/1/0/1 200 2496 - - ---- 9/9/0/0/0 0/0 {Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:65.0) Gecko/20100101 Firefox/65.0} {} "GET /media/core/core.css?1550939640 HTTP/1.1" diff --git a/test/expected/test_json_format.sh_a6be47f1311ed92feaf303142fcb103deb80f456.err b/test/expected/test_cli.sh_cc06341dd560f927512e92c7c0985ed8b25827ae.err index e69de29..e69de29 100644 --- a/test/expected/test_json_format.sh_a6be47f1311ed92feaf303142fcb103deb80f456.err +++ b/test/expected/test_cli.sh_cc06341dd560f927512e92c7c0985ed8b25827ae.err diff --git a/test/expected/test_cli.sh_cc06341dd560f927512e92c7c0985ed8b25827ae.out b/test/expected/test_cli.sh_cc06341dd560f927512e92c7c0985ed8b25827ae.out new file mode 100644 index 0000000..22a87a3 --- /dev/null +++ b/test/expected/test_cli.sh_cc06341dd560f927512e92c7c0985ed8b25827ae.out @@ -0,0 +1,1187 @@ +/global/keymap_def_alt_hour_boundary -> default-keymap.json:5 +/global/keymap_def_alt_warning -> default-keymap.json:4 +/global/keymap_def_clear -> default-keymap.json:13 +/global/keymap_def_db_view -> default-keymap.json:8 +/global/keymap_def_hist_view -> default-keymap.json:9 +/global/keymap_def_next_mark -> default-keymap.json:16 +/global/keymap_def_next_section -> default-keymap.json:15 +/global/keymap_def_next_user_mark -> default-keymap.json:7 +/global/keymap_def_pop_view -> default-keymap.json:11 +/global/keymap_def_prev_section -> default-keymap.json:14 +/global/keymap_def_scroll_horiz -> default-keymap.json:6 +/global/keymap_def_text_view -> default-keymap.json:10 +/global/keymap_def_time_offset -> default-keymap.json:17 +/global/keymap_def_zoom -> default-keymap.json:12 +/log/annotations/com.vmware.vmacore.backtrace/condition -> root-config.json:23 +/log/annotations/com.vmware.vmacore.backtrace/description -> root-config.json:22 +/log/annotations/com.vmware.vmacore.backtrace/handler -> root-config.json:24 +/log/annotations/org.lnav.test/condition -> {test_dir}/configs/installed/anno-test.json:7 +/log/annotations/org.lnav.test/description -> {test_dir}/configs/installed/anno-test.json:6 +/log/annotations/org.lnav.test/handler -> {test_dir}/configs/installed/anno-test.json:8 +/log/date-time/convert-zoned-to-local -> root-config.json:18 +/tuning/archive-manager/cache-ttl -> root-config.json:31 +/tuning/archive-manager/min-free-space -> root-config.json:30 +/tuning/clipboard/impls/MacOS/find/read -> root-config.json:59 +/tuning/clipboard/impls/MacOS/find/write -> root-config.json:58 +/tuning/clipboard/impls/MacOS/general/read -> root-config.json:55 +/tuning/clipboard/impls/MacOS/general/write -> root-config.json:54 +/tuning/clipboard/impls/MacOS/test -> root-config.json:52 +/tuning/clipboard/impls/NeoVim/general/read -> root-config.json:87 +/tuning/clipboard/impls/NeoVim/general/write -> root-config.json:86 +/tuning/clipboard/impls/NeoVim/test -> root-config.json:84 +/tuning/clipboard/impls/Wayland/general/read -> root-config.json:66 +/tuning/clipboard/impls/Wayland/general/write -> root-config.json:65 +/tuning/clipboard/impls/Wayland/test -> root-config.json:63 +/tuning/clipboard/impls/Windows/general/write -> root-config.json:93 +/tuning/clipboard/impls/Windows/test -> root-config.json:91 +/tuning/clipboard/impls/X11-xclip/general/read -> root-config.json:73 +/tuning/clipboard/impls/X11-xclip/general/write -> root-config.json:72 +/tuning/clipboard/impls/X11-xclip/test -> root-config.json:70 +/tuning/clipboard/impls/tmux/general/read -> root-config.json:80 +/tuning/clipboard/impls/tmux/general/write -> root-config.json:79 +/tuning/clipboard/impls/tmux/test -> root-config.json:77 +/tuning/piper/max-size -> root-config.json:45 +/tuning/piper/rotations -> root-config.json:46 +/tuning/piper/ttl -> root-config.json:47 +/tuning/remote/ssh/command -> root-config.json:35 +/tuning/remote/ssh/config/BatchMode -> root-config.json:37 +/tuning/remote/ssh/config/ConnectTimeout -> root-config.json:38 +/tuning/remote/ssh/start-command -> root-config.json:40 +/tuning/remote/ssh/transfer-command -> root-config.json:41 +/tuning/url-scheme/docker-compose/handler -> root-config.json:103 +/tuning/url-scheme/docker/handler -> root-config.json:100 +/tuning/url-scheme/hw/handler -> {test_dir}/configs/installed/hw-url-handler.json:6 +/tuning/url-scheme/journald/handler -> root-config.json:106 +/tuning/url-scheme/piper/handler -> root-config.json:109 +/tuning/url-scheme/podman/handler -> root-config.json:112 +/ui/clock-format -> root-config.json:4 +/ui/default-colors -> root-config.json:6 +/ui/dim-text -> root-config.json:5 +/ui/keymap -> root-config.json:7 +/ui/keymap-defs/de/x21/command -> de-keymap.json:31 +/ui/keymap-defs/de/x22/command -> de-keymap.json:34 +/ui/keymap-defs/de/x24/command -> de-keymap.json:40 +/ui/keymap-defs/de/x25/command -> de-keymap.json:43 +/ui/keymap-defs/de/x26/command -> de-keymap.json:46 +/ui/keymap-defs/de/x31/command -> de-keymap.json:7 +/ui/keymap-defs/de/x32/command -> de-keymap.json:10 +/ui/keymap-defs/de/x33/command -> de-keymap.json:13 +/ui/keymap-defs/de/x34/command -> de-keymap.json:16 +/ui/keymap-defs/de/x35/command -> de-keymap.json:19 +/ui/keymap-defs/de/x36/command -> de-keymap.json:22 +/ui/keymap-defs/de/x37/command -> de-keymap.json:25 +/ui/keymap-defs/de/x38/command -> de-keymap.json:28 +/ui/keymap-defs/de/xc2xa7/command -> de-keymap.json:37 +/ui/keymap-defs/default/x04/command -> default-keymap.json:77 +/ui/keymap-defs/default/x06/command -> default-keymap.json:65 +/ui/keymap-defs/default/x0c/command -> default-keymap.json:68 +/ui/keymap-defs/default/x12/command -> default-keymap.json:71 +/ui/keymap-defs/default/x15/command -> default-keymap.json:80 +/ui/keymap-defs/default/x17/command -> default-keymap.json:146 +/ui/keymap-defs/default/x18/command -> default-keymap.json:74 +/ui/keymap-defs/default/x21/command -> default-keymap.json:47 +/ui/keymap-defs/default/x23/command -> default-keymap.json:53 +/ui/keymap-defs/default/x24/command -> default-keymap.json:56 +/ui/keymap-defs/default/x25/command -> default-keymap.json:59 +/ui/keymap-defs/default/x2f/command -> default-keymap.json:95 +/ui/keymap-defs/default/x31/command -> default-keymap.json:23 +/ui/keymap-defs/default/x32/command -> default-keymap.json:26 +/ui/keymap-defs/default/x33/command -> default-keymap.json:29 +/ui/keymap-defs/default/x34/command -> default-keymap.json:32 +/ui/keymap-defs/default/x35/command -> default-keymap.json:35 +/ui/keymap-defs/default/x36/command -> default-keymap.json:38 +/ui/keymap-defs/default/x37/command -> default-keymap.json:41 +/ui/keymap-defs/default/x38/command -> default-keymap.json:44 +/ui/keymap-defs/default/x3a/command -> default-keymap.json:89 +/ui/keymap-defs/default/x3b/command -> default-keymap.json:98 +/ui/keymap-defs/default/x3d/command -> default-keymap.json:83 +/ui/keymap-defs/default/x3f/command -> default-keymap.json:164 +/ui/keymap-defs/default/x40/command -> default-keymap.json:50 +/ui/keymap-defs/default/x45/alt-msg -> default-keymap.json:102 +/ui/keymap-defs/default/x45/command -> default-keymap.json:101 +/ui/keymap-defs/default/x4e/alt-msg -> default-keymap.json:129 +/ui/keymap-defs/default/x4e/command -> default-keymap.json:128 +/ui/keymap-defs/default/x50/alt-msg -> default-keymap.json:172 +/ui/keymap-defs/default/x50/command -> default-keymap.json:171 +/ui/keymap-defs/default/x51/command -> default-keymap.json:185 +/ui/keymap-defs/default/x54/alt-msg -> default-keymap.json:137 +/ui/keymap-defs/default/x54/command -> default-keymap.json:136 +/ui/keymap-defs/default/x55/command -> default-keymap.json:153 +/ui/keymap-defs/default/x57/alt-msg -> default-keymap.json:110 +/ui/keymap-defs/default/x57/command -> default-keymap.json:109 +/ui/keymap-defs/default/x58/command -> default-keymap.json:86 +/ui/keymap-defs/default/x5e/command -> default-keymap.json:62 +/ui/keymap-defs/default/x60/command -> default-keymap.json:176 +/ui/keymap-defs/default/x60/id -> default-keymap.json:175 +/ui/keymap-defs/default/x63/alt-msg -> default-keymap.json:118 +/ui/keymap-defs/default/x63/command -> default-keymap.json:117 +/ui/keymap-defs/default/x65/alt-msg -> default-keymap.json:106 +/ui/keymap-defs/default/x65/command -> default-keymap.json:105 +/ui/keymap-defs/default/x67/command -> default-keymap.json:121 +/ui/keymap-defs/default/x69/alt-msg -> default-keymap.json:168 +/ui/keymap-defs/default/x69/command -> default-keymap.json:167 +/ui/keymap-defs/default/x6d/alt-msg -> default-keymap.json:125 +/ui/keymap-defs/default/x6d/command -> default-keymap.json:124 +/ui/keymap-defs/default/x6e/alt-msg -> default-keymap.json:133 +/ui/keymap-defs/default/x6e/command -> default-keymap.json:132 +/ui/keymap-defs/default/x70/command -> default-keymap.json:140 +/ui/keymap-defs/default/x71/command -> default-keymap.json:182 +/ui/keymap-defs/default/x75/alt-msg -> default-keymap.json:150 +/ui/keymap-defs/default/x75/command -> default-keymap.json:149 +/ui/keymap-defs/default/x76/command -> default-keymap.json:179 +/ui/keymap-defs/default/x77/alt-msg -> default-keymap.json:114 +/ui/keymap-defs/default/x77/command -> default-keymap.json:113 +/ui/keymap-defs/default/x78/command -> default-keymap.json:143 +/ui/keymap-defs/default/x7b/alt-msg -> default-keymap.json:161 +/ui/keymap-defs/default/x7b/command -> default-keymap.json:160 +/ui/keymap-defs/default/x7c/command -> default-keymap.json:92 +/ui/keymap-defs/default/x7d/alt-msg -> default-keymap.json:157 +/ui/keymap-defs/default/x7d/command -> default-keymap.json:156 +/ui/keymap-defs/fr/x22/command -> fr-keymap.json:13 +/ui/keymap-defs/fr/x26/command -> fr-keymap.json:7 +/ui/keymap-defs/fr/x27/command -> fr-keymap.json:16 +/ui/keymap-defs/fr/x28/command -> fr-keymap.json:19 +/ui/keymap-defs/fr/x2d/command -> fr-keymap.json:22 +/ui/keymap-defs/fr/x31/command -> fr-keymap.json:28 +/ui/keymap-defs/fr/x32/command -> fr-keymap.json:31 +/ui/keymap-defs/fr/x33/command -> fr-keymap.json:34 +/ui/keymap-defs/fr/x34/command -> fr-keymap.json:37 +/ui/keymap-defs/fr/x35/command -> fr-keymap.json:40 +/ui/keymap-defs/fr/x36/command -> fr-keymap.json:43 +/ui/keymap-defs/fr/x37/command -> fr-keymap.json:46 +/ui/keymap-defs/fr/xc3xa8/command -> fr-keymap.json:25 +/ui/keymap-defs/fr/xc3xa9/command -> fr-keymap.json:10 +/ui/keymap-defs/sv/x22/command -> sv-keymap.json:7 +/ui/keymap-defs/sv/x26/command -> sv-keymap.json:16 +/ui/keymap-defs/sv/x2b/command -> sv-keymap.json:22 +/ui/keymap-defs/sv/x3d/command -> sv-keymap.json:19 +/ui/keymap-defs/sv/x60/command -> sv-keymap.json:26 +/ui/keymap-defs/sv/x60/id -> sv-keymap.json:25 +/ui/keymap-defs/sv/xc2xa4/command -> sv-keymap.json:10 +/ui/keymap-defs/sv/xc2xa7/command -> sv-keymap.json:30 +/ui/keymap-defs/sv/xc2xa7/id -> sv-keymap.json:29 +/ui/keymap-defs/sv/xe2x82xac/command -> sv-keymap.json:13 +/ui/keymap-defs/uk/x22/command -> uk-keymap.json:7 +/ui/keymap-defs/uk/xc2xa3/command -> uk-keymap.json:10 +/ui/keymap-defs/us/x21/command -> us-keymap.json:31 +/ui/keymap-defs/us/x23/command -> us-keymap.json:37 +/ui/keymap-defs/us/x24/command -> us-keymap.json:40 +/ui/keymap-defs/us/x25/command -> us-keymap.json:43 +/ui/keymap-defs/us/x31/command -> us-keymap.json:7 +/ui/keymap-defs/us/x32/command -> us-keymap.json:10 +/ui/keymap-defs/us/x33/command -> us-keymap.json:13 +/ui/keymap-defs/us/x34/command -> us-keymap.json:16 +/ui/keymap-defs/us/x35/command -> us-keymap.json:19 +/ui/keymap-defs/us/x36/command -> us-keymap.json:22 +/ui/keymap-defs/us/x37/command -> us-keymap.json:25 +/ui/keymap-defs/us/x38/command -> us-keymap.json:28 +/ui/keymap-defs/us/x40/command -> us-keymap.json:34 +/ui/keymap-defs/us/x5e/command -> us-keymap.json:46 +/ui/mouse/mode -> root-config.json:10 +/ui/movement/mode -> root-config.json:13 +/ui/theme -> root-config.json:8 +/ui/theme-defs/default/highlights/colors/pattern -> default-theme.json:295 +/ui/theme-defs/default/highlights/colors/style/color -> default-theme.json:297 +/ui/theme-defs/default/highlights/ipv4/pattern -> default-theme.json:301 +/ui/theme-defs/default/highlights/ipv4/style/color -> default-theme.json:303 +/ui/theme-defs/default/highlights/xml-decl/pattern -> default-theme.json:313 +/ui/theme-defs/default/highlights/xml-decl/style/color -> default-theme.json:315 +/ui/theme-defs/default/highlights/xml/pattern -> default-theme.json:307 +/ui/theme-defs/default/highlights/xml/style/color -> default-theme.json:309 +/ui/theme-defs/default/log-level-styles/critical/color -> default-theme.json:287 +/ui/theme-defs/default/log-level-styles/error/color -> default-theme.json:284 +/ui/theme-defs/default/log-level-styles/fatal/color -> default-theme.json:290 +/ui/theme-defs/default/log-level-styles/warning/color -> default-theme.json:281 +/ui/theme-defs/default/status-styles/active/background-color -> default-theme.json:254 +/ui/theme-defs/default/status-styles/active/color -> default-theme.json:253 +/ui/theme-defs/default/status-styles/alert/background-color -> default-theme.json:250 +/ui/theme-defs/default/status-styles/alert/color -> default-theme.json:249 +/ui/theme-defs/default/status-styles/disabled-title/background-color -> default-theme.json:233 +/ui/theme-defs/default/status-styles/disabled-title/bold -> default-theme.json:234 +/ui/theme-defs/default/status-styles/disabled-title/color -> default-theme.json:232 +/ui/theme-defs/default/status-styles/hotkey/bold -> default-theme.json:276 +/ui/theme-defs/default/status-styles/hotkey/color -> default-theme.json:274 +/ui/theme-defs/default/status-styles/hotkey/underline -> default-theme.json:275 +/ui/theme-defs/default/status-styles/inactive-alert/background-color -> default-theme.json:266 +/ui/theme-defs/default/status-styles/inactive-alert/color -> default-theme.json:265 +/ui/theme-defs/default/status-styles/inactive/background-color -> default-theme.json:262 +/ui/theme-defs/default/status-styles/inactive/color -> default-theme.json:261 +/ui/theme-defs/default/status-styles/info/background-color -> default-theme.json:258 +/ui/theme-defs/default/status-styles/info/color -> default-theme.json:257 +/ui/theme-defs/default/status-styles/subtitle/background-color -> default-theme.json:238 +/ui/theme-defs/default/status-styles/subtitle/color -> default-theme.json:237 +/ui/theme-defs/default/status-styles/text/background-color -> default-theme.json:242 +/ui/theme-defs/default/status-styles/text/color -> default-theme.json:241 +/ui/theme-defs/default/status-styles/title-hotkey/background-color -> default-theme.json:270 +/ui/theme-defs/default/status-styles/title-hotkey/color -> default-theme.json:269 +/ui/theme-defs/default/status-styles/title-hotkey/underline -> default-theme.json:271 +/ui/theme-defs/default/status-styles/title/background-color -> default-theme.json:228 +/ui/theme-defs/default/status-styles/title/bold -> default-theme.json:229 +/ui/theme-defs/default/status-styles/title/color -> default-theme.json:227 +/ui/theme-defs/default/status-styles/warn/background-color -> default-theme.json:246 +/ui/theme-defs/default/status-styles/warn/color -> default-theme.json:245 +/ui/theme-defs/default/styles/adjusted-time/color -> default-theme.json:55 +/ui/theme-defs/default/styles/alt-text/background-color -> default-theme.json:22 +/ui/theme-defs/default/styles/breadcrumb/bold -> default-theme.json:114 +/ui/theme-defs/default/styles/breadcrumb/color -> default-theme.json:113 +/ui/theme-defs/default/styles/cursor-line/background-color -> default-theme.json:46 +/ui/theme-defs/default/styles/cursor-line/bold -> default-theme.json:47 +/ui/theme-defs/default/styles/cursor-line/color -> default-theme.json:45 +/ui/theme-defs/default/styles/cursor-line/underline -> default-theme.json:48 +/ui/theme-defs/default/styles/disabled-cursor-line/background-color -> default-theme.json:52 +/ui/theme-defs/default/styles/disabled-cursor-line/color -> default-theme.json:51 +/ui/theme-defs/default/styles/disabled-focused/background-color -> default-theme.json:83 +/ui/theme-defs/default/styles/disabled-focused/color -> default-theme.json:82 +/ui/theme-defs/default/styles/error/bold -> default-theme.json:34 +/ui/theme-defs/default/styles/error/color -> default-theme.json:33 +/ui/theme-defs/default/styles/file-offset/color -> default-theme.json:64 +/ui/theme-defs/default/styles/focused/background-color -> default-theme.json:79 +/ui/theme-defs/default/styles/focused/color -> default-theme.json:78 +/ui/theme-defs/default/styles/footnote-border/background-color -> default-theme.json:131 +/ui/theme-defs/default/styles/footnote-border/color -> default-theme.json:130 +/ui/theme-defs/default/styles/footnote-text/background-color -> default-theme.json:135 +/ui/theme-defs/default/styles/footnote-text/color -> default-theme.json:134 +/ui/theme-defs/default/styles/h1/underline -> default-theme.json:86 +/ui/theme-defs/default/styles/h2/underline -> default-theme.json:89 +/ui/theme-defs/default/styles/h3/underline -> default-theme.json:92 +/ui/theme-defs/default/styles/h4/underline -> default-theme.json:95 +/ui/theme-defs/default/styles/h5/underline -> default-theme.json:98 +/ui/theme-defs/default/styles/h6/underline -> default-theme.json:101 +/ui/theme-defs/default/styles/hidden/bold -> default-theme.json:42 +/ui/theme-defs/default/styles/hidden/color -> default-theme.json:41 +/ui/theme-defs/default/styles/hr/color -> default-theme.json:104 +/ui/theme-defs/default/styles/hyperlink/underline -> default-theme.json:107 +/ui/theme-defs/default/styles/identifier/background-color -> default-theme.json:18 +/ui/theme-defs/default/styles/identifier/color -> default-theme.json:19 +/ui/theme-defs/default/styles/indent-guide/color -> default-theme.json:141 +/ui/theme-defs/default/styles/info/bold -> default-theme.json:30 +/ui/theme-defs/default/styles/info/color -> default-theme.json:29 +/ui/theme-defs/default/styles/invalid-msg/color -> default-theme.json:67 +/ui/theme-defs/default/styles/list-glyph/color -> default-theme.json:110 +/ui/theme-defs/default/styles/offset-time/color -> default-theme.json:61 +/ui/theme-defs/default/styles/ok/bold -> default-theme.json:26 +/ui/theme-defs/default/styles/ok/color -> default-theme.json:25 +/ui/theme-defs/default/styles/popup/background-color -> default-theme.json:71 +/ui/theme-defs/default/styles/popup/color -> default-theme.json:70 +/ui/theme-defs/default/styles/quote-border/background-color -> default-theme.json:124 +/ui/theme-defs/default/styles/quote-border/color -> default-theme.json:123 +/ui/theme-defs/default/styles/quoted-text/background-color -> default-theme.json:127 +/ui/theme-defs/default/styles/scrollbar/background-color -> default-theme.json:75 +/ui/theme-defs/default/styles/scrollbar/color -> default-theme.json:74 +/ui/theme-defs/default/styles/selected-text/background-color -> default-theme.json:15 +/ui/theme-defs/default/styles/skewed-time/color -> default-theme.json:58 +/ui/theme-defs/default/styles/snippet-border/color -> default-theme.json:138 +/ui/theme-defs/default/styles/table-border/color -> default-theme.json:117 +/ui/theme-defs/default/styles/table-header/bold -> default-theme.json:120 +/ui/theme-defs/default/styles/text/background-color -> default-theme.json:12 +/ui/theme-defs/default/styles/text/color -> default-theme.json:11 +/ui/theme-defs/default/styles/warning/bold -> default-theme.json:38 +/ui/theme-defs/default/styles/warning/color -> default-theme.json:37 +/ui/theme-defs/default/syntax-styles/ascii-control/color -> default-theme.json:207 +/ui/theme-defs/default/syntax-styles/code-border/background-color -> default-theme.json:155 +/ui/theme-defs/default/syntax-styles/code-border/color -> default-theme.json:154 +/ui/theme-defs/default/syntax-styles/comment/color -> default-theme.json:165 +/ui/theme-defs/default/syntax-styles/diff-add/color -> default-theme.json:186 +/ui/theme-defs/default/syntax-styles/diff-delete/color -> default-theme.json:183 +/ui/theme-defs/default/syntax-styles/diff-section/color -> default-theme.json:189 +/ui/theme-defs/default/syntax-styles/doc-directive/color -> default-theme.json:168 +/ui/theme-defs/default/syntax-styles/file/color -> default-theme.json:201 +/ui/theme-defs/default/syntax-styles/function/color -> default-theme.json:216 +/ui/theme-defs/default/syntax-styles/inline-code/background-color -> default-theme.json:147 +/ui/theme-defs/default/syntax-styles/inline-code/color -> default-theme.json:146 +/ui/theme-defs/default/syntax-styles/keyword/color -> default-theme.json:158 +/ui/theme-defs/default/syntax-styles/non-ascii/color -> default-theme.json:210 +/ui/theme-defs/default/syntax-styles/null/color -> default-theme.json:204 +/ui/theme-defs/default/syntax-styles/number/bold -> default-theme.json:213 +/ui/theme-defs/default/syntax-styles/quoted-code/background-color -> default-theme.json:151 +/ui/theme-defs/default/syntax-styles/quoted-code/color -> default-theme.json:150 +/ui/theme-defs/default/syntax-styles/re-repeat/color -> default-theme.json:180 +/ui/theme-defs/default/syntax-styles/re-special/color -> default-theme.json:177 +/ui/theme-defs/default/syntax-styles/separators-references-accessors/color -> default-theme.json:219 +/ui/theme-defs/default/syntax-styles/spectrogram-high/background-color -> default-theme.json:198 +/ui/theme-defs/default/syntax-styles/spectrogram-low/background-color -> default-theme.json:192 +/ui/theme-defs/default/syntax-styles/spectrogram-medium/background-color -> default-theme.json:195 +/ui/theme-defs/default/syntax-styles/string/bold -> default-theme.json:162 +/ui/theme-defs/default/syntax-styles/string/color -> default-theme.json:161 +/ui/theme-defs/default/syntax-styles/symbol/color -> default-theme.json:174 +/ui/theme-defs/default/syntax-styles/type/color -> default-theme.json:222 +/ui/theme-defs/default/syntax-styles/variable/color -> default-theme.json:171 +/ui/theme-defs/default/vars/semantic_highlight_color -> default-theme.json:7 +/ui/theme-defs/dracula/log-level-styles/critical/color -> dracula.json:303 +/ui/theme-defs/dracula/log-level-styles/error/color -> dracula.json:300 +/ui/theme-defs/dracula/log-level-styles/fatal/color -> dracula.json:306 +/ui/theme-defs/dracula/log-level-styles/warning/color -> dracula.json:297 +/ui/theme-defs/dracula/status-styles/active/background-color -> dracula.json:281 +/ui/theme-defs/dracula/status-styles/active/color -> dracula.json:280 +/ui/theme-defs/dracula/status-styles/alert/background-color -> dracula.json:277 +/ui/theme-defs/dracula/status-styles/alert/color -> dracula.json:276 +/ui/theme-defs/dracula/status-styles/disabled-title/background-color -> dracula.json:241 +/ui/theme-defs/dracula/status-styles/disabled-title/bold -> dracula.json:242 +/ui/theme-defs/dracula/status-styles/disabled-title/color -> dracula.json:240 +/ui/theme-defs/dracula/status-styles/hotkey/color -> dracula.json:264 +/ui/theme-defs/dracula/status-styles/hotkey/underline -> dracula.json:265 +/ui/theme-defs/dracula/status-styles/inactive-alert/background-color -> dracula.json:289 +/ui/theme-defs/dracula/status-styles/inactive-alert/color -> dracula.json:288 +/ui/theme-defs/dracula/status-styles/inactive/background-color -> dracula.json:285 +/ui/theme-defs/dracula/status-styles/inactive/color -> dracula.json:284 +/ui/theme-defs/dracula/status-styles/info/background-color -> dracula.json:256 +/ui/theme-defs/dracula/status-styles/info/color -> dracula.json:255 +/ui/theme-defs/dracula/status-styles/subtitle/background-color -> dracula.json:251 +/ui/theme-defs/dracula/status-styles/subtitle/bold -> dracula.json:252 +/ui/theme-defs/dracula/status-styles/subtitle/color -> dracula.json:250 +/ui/theme-defs/dracula/status-styles/suggestion/color -> dracula.json:292 +/ui/theme-defs/dracula/status-styles/text/background-color -> dracula.json:269 +/ui/theme-defs/dracula/status-styles/text/color -> dracula.json:268 +/ui/theme-defs/dracula/status-styles/title-hotkey/background-color -> dracula.json:260 +/ui/theme-defs/dracula/status-styles/title-hotkey/color -> dracula.json:259 +/ui/theme-defs/dracula/status-styles/title-hotkey/underline -> dracula.json:261 +/ui/theme-defs/dracula/status-styles/title/background-color -> dracula.json:246 +/ui/theme-defs/dracula/status-styles/title/bold -> dracula.json:247 +/ui/theme-defs/dracula/status-styles/title/color -> dracula.json:245 +/ui/theme-defs/dracula/status-styles/warn/background-color -> dracula.json:273 +/ui/theme-defs/dracula/status-styles/warn/color -> dracula.json:272 +/ui/theme-defs/dracula/styles/adjusted-time/color -> dracula.json:64 +/ui/theme-defs/dracula/styles/alt-text/background-color -> dracula.json:32 +/ui/theme-defs/dracula/styles/breadcrumb/bold -> dracula.json:125 +/ui/theme-defs/dracula/styles/breadcrumb/color -> dracula.json:124 +/ui/theme-defs/dracula/styles/cursor-line/background-color -> dracula.json:56 +/ui/theme-defs/dracula/styles/cursor-line/bold -> dracula.json:57 +/ui/theme-defs/dracula/styles/cursor-line/color -> dracula.json:55 +/ui/theme-defs/dracula/styles/disabled-cursor-line/background-color -> dracula.json:61 +/ui/theme-defs/dracula/styles/disabled-cursor-line/color -> dracula.json:60 +/ui/theme-defs/dracula/styles/disabled-focused/background-color -> dracula.json:84 +/ui/theme-defs/dracula/styles/disabled-focused/color -> dracula.json:83 +/ui/theme-defs/dracula/styles/error/bold -> dracula.json:44 +/ui/theme-defs/dracula/styles/error/color -> dracula.json:43 +/ui/theme-defs/dracula/styles/file-offset/color -> dracula.json:73 +/ui/theme-defs/dracula/styles/focused/background-color -> dracula.json:80 +/ui/theme-defs/dracula/styles/focused/color -> dracula.json:79 +/ui/theme-defs/dracula/styles/footnote-border/background-color -> dracula.json:143 +/ui/theme-defs/dracula/styles/footnote-border/color -> dracula.json:142 +/ui/theme-defs/dracula/styles/footnote-text/background-color -> dracula.json:147 +/ui/theme-defs/dracula/styles/footnote-text/color -> dracula.json:146 +/ui/theme-defs/dracula/styles/h1/bold -> dracula.json:96 +/ui/theme-defs/dracula/styles/h1/color -> dracula.json:95 +/ui/theme-defs/dracula/styles/h2/color -> dracula.json:99 +/ui/theme-defs/dracula/styles/h2/underline -> dracula.json:100 +/ui/theme-defs/dracula/styles/h3/color -> dracula.json:103 +/ui/theme-defs/dracula/styles/h4/underline -> dracula.json:106 +/ui/theme-defs/dracula/styles/h5/underline -> dracula.json:109 +/ui/theme-defs/dracula/styles/h6/underline -> dracula.json:112 +/ui/theme-defs/dracula/styles/hidden/bold -> dracula.json:52 +/ui/theme-defs/dracula/styles/hidden/color -> dracula.json:51 +/ui/theme-defs/dracula/styles/hr/color -> dracula.json:115 +/ui/theme-defs/dracula/styles/hyperlink/underline -> dracula.json:118 +/ui/theme-defs/dracula/styles/identifier/color -> dracula.json:22 +/ui/theme-defs/dracula/styles/indent-guide/color -> dracula.json:153 +/ui/theme-defs/dracula/styles/info/bold -> dracula.json:40 +/ui/theme-defs/dracula/styles/info/color -> dracula.json:39 +/ui/theme-defs/dracula/styles/invalid-msg/color -> dracula.json:76 +/ui/theme-defs/dracula/styles/list-glyph/color -> dracula.json:121 +/ui/theme-defs/dracula/styles/offset-time/color -> dracula.json:70 +/ui/theme-defs/dracula/styles/ok/bold -> dracula.json:36 +/ui/theme-defs/dracula/styles/ok/color -> dracula.json:35 +/ui/theme-defs/dracula/styles/popup/background-color -> dracula.json:88 +/ui/theme-defs/dracula/styles/popup/color -> dracula.json:87 +/ui/theme-defs/dracula/styles/quote-border/background-color -> dracula.json:135 +/ui/theme-defs/dracula/styles/quote-border/color -> dracula.json:134 +/ui/theme-defs/dracula/styles/quoted-text/background-color -> dracula.json:139 +/ui/theme-defs/dracula/styles/quoted-text/color -> dracula.json:138 +/ui/theme-defs/dracula/styles/scrollbar/background-color -> dracula.json:92 +/ui/theme-defs/dracula/styles/scrollbar/color -> dracula.json:91 +/ui/theme-defs/dracula/styles/selected-text/background-color -> dracula.json:29 +/ui/theme-defs/dracula/styles/skewed-time/color -> dracula.json:67 +/ui/theme-defs/dracula/styles/snippet-border/color -> dracula.json:150 +/ui/theme-defs/dracula/styles/table-border/color -> dracula.json:128 +/ui/theme-defs/dracula/styles/table-header/bold -> dracula.json:131 +/ui/theme-defs/dracula/styles/text/background-color -> dracula.json:26 +/ui/theme-defs/dracula/styles/text/color -> dracula.json:25 +/ui/theme-defs/dracula/styles/warning/bold -> dracula.json:48 +/ui/theme-defs/dracula/styles/warning/color -> dracula.json:47 +/ui/theme-defs/dracula/syntax-styles/ascii-control/color -> dracula.json:220 +/ui/theme-defs/dracula/syntax-styles/code-border/background-color -> dracula.json:167 +/ui/theme-defs/dracula/syntax-styles/code-border/color -> dracula.json:166 +/ui/theme-defs/dracula/syntax-styles/comment/color -> dracula.json:178 +/ui/theme-defs/dracula/syntax-styles/diff-add/color -> dracula.json:199 +/ui/theme-defs/dracula/syntax-styles/diff-delete/color -> dracula.json:196 +/ui/theme-defs/dracula/syntax-styles/diff-section/color -> dracula.json:202 +/ui/theme-defs/dracula/syntax-styles/doc-directive/color -> dracula.json:181 +/ui/theme-defs/dracula/syntax-styles/file/color -> dracula.json:214 +/ui/theme-defs/dracula/syntax-styles/function/color -> dracula.json:229 +/ui/theme-defs/dracula/syntax-styles/inline-code/background-color -> dracula.json:159 +/ui/theme-defs/dracula/syntax-styles/inline-code/color -> dracula.json:158 +/ui/theme-defs/dracula/syntax-styles/keyword/bold -> dracula.json:171 +/ui/theme-defs/dracula/syntax-styles/keyword/color -> dracula.json:170 +/ui/theme-defs/dracula/syntax-styles/non-ascii/color -> dracula.json:223 +/ui/theme-defs/dracula/syntax-styles/null/color -> dracula.json:217 +/ui/theme-defs/dracula/syntax-styles/number/bold -> dracula.json:226 +/ui/theme-defs/dracula/syntax-styles/quoted-code/background-color -> dracula.json:163 +/ui/theme-defs/dracula/syntax-styles/quoted-code/color -> dracula.json:162 +/ui/theme-defs/dracula/syntax-styles/re-repeat/color -> dracula.json:193 +/ui/theme-defs/dracula/syntax-styles/re-special/color -> dracula.json:190 +/ui/theme-defs/dracula/syntax-styles/separators-references-accessors/color -> dracula.json:232 +/ui/theme-defs/dracula/syntax-styles/spectrogram-high/background-color -> dracula.json:211 +/ui/theme-defs/dracula/syntax-styles/spectrogram-low/background-color -> dracula.json:205 +/ui/theme-defs/dracula/syntax-styles/spectrogram-medium/background-color -> dracula.json:208 +/ui/theme-defs/dracula/syntax-styles/string/bold -> dracula.json:175 +/ui/theme-defs/dracula/syntax-styles/string/color -> dracula.json:174 +/ui/theme-defs/dracula/syntax-styles/symbol/color -> dracula.json:187 +/ui/theme-defs/dracula/syntax-styles/type/color -> dracula.json:235 +/ui/theme-defs/dracula/syntax-styles/variable/color -> dracula.json:184 +/ui/theme-defs/dracula/vars/black -> dracula.json:7 +/ui/theme-defs/dracula/vars/blue -> dracula.json:11 +/ui/theme-defs/dracula/vars/cyan -> dracula.json:13 +/ui/theme-defs/dracula/vars/green -> dracula.json:9 +/ui/theme-defs/dracula/vars/magenta -> dracula.json:12 +/ui/theme-defs/dracula/vars/orange -> dracula.json:15 +/ui/theme-defs/dracula/vars/pink -> dracula.json:17 +/ui/theme-defs/dracula/vars/purple -> dracula.json:16 +/ui/theme-defs/dracula/vars/red -> dracula.json:8 +/ui/theme-defs/dracula/vars/semantic_highlight_color -> dracula.json:18 +/ui/theme-defs/dracula/vars/white -> dracula.json:14 +/ui/theme-defs/dracula/vars/yellow -> dracula.json:10 +/ui/theme-defs/eldar/log-level-styles/critical/color -> eldar.json:299 +/ui/theme-defs/eldar/log-level-styles/error/color -> eldar.json:296 +/ui/theme-defs/eldar/log-level-styles/fatal/color -> eldar.json:302 +/ui/theme-defs/eldar/log-level-styles/warning/color -> eldar.json:293 +/ui/theme-defs/eldar/status-styles/active/background-color -> eldar.json:264 +/ui/theme-defs/eldar/status-styles/active/color -> eldar.json:263 +/ui/theme-defs/eldar/status-styles/alert/background-color -> eldar.json:260 +/ui/theme-defs/eldar/status-styles/alert/color -> eldar.json:259 +/ui/theme-defs/eldar/status-styles/disabled-title/background-color -> eldar.json:237 +/ui/theme-defs/eldar/status-styles/disabled-title/bold -> eldar.json:238 +/ui/theme-defs/eldar/status-styles/disabled-title/color -> eldar.json:236 +/ui/theme-defs/eldar/status-styles/hotkey/color -> eldar.json:276 +/ui/theme-defs/eldar/status-styles/hotkey/underline -> eldar.json:277 +/ui/theme-defs/eldar/status-styles/inactive-alert/background-color -> eldar.json:285 +/ui/theme-defs/eldar/status-styles/inactive-alert/color -> eldar.json:284 +/ui/theme-defs/eldar/status-styles/inactive/background-color -> eldar.json:281 +/ui/theme-defs/eldar/status-styles/inactive/color -> eldar.json:280 +/ui/theme-defs/eldar/status-styles/info/background-color -> eldar.json:268 +/ui/theme-defs/eldar/status-styles/info/color -> eldar.json:267 +/ui/theme-defs/eldar/status-styles/subtitle/background-color -> eldar.json:247 +/ui/theme-defs/eldar/status-styles/subtitle/bold -> eldar.json:248 +/ui/theme-defs/eldar/status-styles/subtitle/color -> eldar.json:246 +/ui/theme-defs/eldar/status-styles/suggestion/color -> eldar.json:288 +/ui/theme-defs/eldar/status-styles/text/background-color -> eldar.json:252 +/ui/theme-defs/eldar/status-styles/text/color -> eldar.json:251 +/ui/theme-defs/eldar/status-styles/title-hotkey/background-color -> eldar.json:272 +/ui/theme-defs/eldar/status-styles/title-hotkey/color -> eldar.json:271 +/ui/theme-defs/eldar/status-styles/title-hotkey/underline -> eldar.json:273 +/ui/theme-defs/eldar/status-styles/title/background-color -> eldar.json:242 +/ui/theme-defs/eldar/status-styles/title/bold -> eldar.json:243 +/ui/theme-defs/eldar/status-styles/title/color -> eldar.json:241 +/ui/theme-defs/eldar/status-styles/warn/background-color -> eldar.json:256 +/ui/theme-defs/eldar/status-styles/warn/color -> eldar.json:255 +/ui/theme-defs/eldar/styles/adjusted-time/color -> eldar.json:64 +/ui/theme-defs/eldar/styles/alt-text/bold -> eldar.json:31 +/ui/theme-defs/eldar/styles/breadcrumb/bold -> eldar.json:123 +/ui/theme-defs/eldar/styles/breadcrumb/color -> eldar.json:122 +/ui/theme-defs/eldar/styles/cursor-line/background-color -> eldar.json:55 +/ui/theme-defs/eldar/styles/cursor-line/bold -> eldar.json:56 +/ui/theme-defs/eldar/styles/cursor-line/color -> eldar.json:54 +/ui/theme-defs/eldar/styles/cursor-line/underline -> eldar.json:57 +/ui/theme-defs/eldar/styles/disabled-cursor-line/background-color -> eldar.json:61 +/ui/theme-defs/eldar/styles/disabled-cursor-line/color -> eldar.json:60 +/ui/theme-defs/eldar/styles/disabled-focused/background-color -> eldar.json:84 +/ui/theme-defs/eldar/styles/disabled-focused/color -> eldar.json:83 +/ui/theme-defs/eldar/styles/error/bold -> eldar.json:43 +/ui/theme-defs/eldar/styles/error/color -> eldar.json:42 +/ui/theme-defs/eldar/styles/file-offset/color -> eldar.json:73 +/ui/theme-defs/eldar/styles/focused/background-color -> eldar.json:80 +/ui/theme-defs/eldar/styles/focused/color -> eldar.json:79 +/ui/theme-defs/eldar/styles/footnote-border/background-color -> eldar.json:140 +/ui/theme-defs/eldar/styles/footnote-border/color -> eldar.json:139 +/ui/theme-defs/eldar/styles/footnote-text/background-color -> eldar.json:144 +/ui/theme-defs/eldar/styles/footnote-text/color -> eldar.json:143 +/ui/theme-defs/eldar/styles/h1/underline -> eldar.json:95 +/ui/theme-defs/eldar/styles/h2/underline -> eldar.json:98 +/ui/theme-defs/eldar/styles/h3/underline -> eldar.json:101 +/ui/theme-defs/eldar/styles/h4/underline -> eldar.json:104 +/ui/theme-defs/eldar/styles/h5/underline -> eldar.json:107 +/ui/theme-defs/eldar/styles/h6/underline -> eldar.json:110 +/ui/theme-defs/eldar/styles/hidden/bold -> eldar.json:51 +/ui/theme-defs/eldar/styles/hidden/color -> eldar.json:50 +/ui/theme-defs/eldar/styles/hr/color -> eldar.json:113 +/ui/theme-defs/eldar/styles/hyperlink/underline -> eldar.json:116 +/ui/theme-defs/eldar/styles/identifier/background-color -> eldar.json:20 +/ui/theme-defs/eldar/styles/identifier/color -> eldar.json:21 +/ui/theme-defs/eldar/styles/indent-guide/color -> eldar.json:150 +/ui/theme-defs/eldar/styles/info/bold -> eldar.json:39 +/ui/theme-defs/eldar/styles/info/color -> eldar.json:38 +/ui/theme-defs/eldar/styles/invalid-msg/color -> eldar.json:76 +/ui/theme-defs/eldar/styles/list-glyph/color -> eldar.json:119 +/ui/theme-defs/eldar/styles/offset-time/color -> eldar.json:70 +/ui/theme-defs/eldar/styles/ok/bold -> eldar.json:35 +/ui/theme-defs/eldar/styles/ok/color -> eldar.json:34 +/ui/theme-defs/eldar/styles/popup/background-color -> eldar.json:88 +/ui/theme-defs/eldar/styles/popup/color -> eldar.json:87 +/ui/theme-defs/eldar/styles/quote-border/background-color -> eldar.json:133 +/ui/theme-defs/eldar/styles/quote-border/color -> eldar.json:132 +/ui/theme-defs/eldar/styles/quoted-text/background-color -> eldar.json:136 +/ui/theme-defs/eldar/styles/scrollbar/background-color -> eldar.json:92 +/ui/theme-defs/eldar/styles/scrollbar/color -> eldar.json:91 +/ui/theme-defs/eldar/styles/selected-text/background-color -> eldar.json:28 +/ui/theme-defs/eldar/styles/skewed-time/color -> eldar.json:67 +/ui/theme-defs/eldar/styles/snippet-border/color -> eldar.json:147 +/ui/theme-defs/eldar/styles/table-border/color -> eldar.json:126 +/ui/theme-defs/eldar/styles/table-header/bold -> eldar.json:129 +/ui/theme-defs/eldar/styles/text/background-color -> eldar.json:25 +/ui/theme-defs/eldar/styles/text/color -> eldar.json:24 +/ui/theme-defs/eldar/styles/warning/bold -> eldar.json:47 +/ui/theme-defs/eldar/styles/warning/color -> eldar.json:46 +/ui/theme-defs/eldar/syntax-styles/ascii-control/color -> eldar.json:219 +/ui/theme-defs/eldar/syntax-styles/code-border/background-color -> eldar.json:164 +/ui/theme-defs/eldar/syntax-styles/code-border/color -> eldar.json:163 +/ui/theme-defs/eldar/syntax-styles/comment/color -> eldar.json:174 +/ui/theme-defs/eldar/syntax-styles/diff-add/color -> eldar.json:198 +/ui/theme-defs/eldar/syntax-styles/diff-delete/color -> eldar.json:195 +/ui/theme-defs/eldar/syntax-styles/diff-section/color -> eldar.json:201 +/ui/theme-defs/eldar/syntax-styles/doc-directive/color -> eldar.json:177 +/ui/theme-defs/eldar/syntax-styles/file/color -> eldar.json:213 +/ui/theme-defs/eldar/syntax-styles/function/color -> eldar.json:225 +/ui/theme-defs/eldar/syntax-styles/inline-code/background-color -> eldar.json:156 +/ui/theme-defs/eldar/syntax-styles/inline-code/color -> eldar.json:155 +/ui/theme-defs/eldar/syntax-styles/keyword/color -> eldar.json:167 +/ui/theme-defs/eldar/syntax-styles/non-ascii/color -> eldar.json:222 +/ui/theme-defs/eldar/syntax-styles/null/color -> eldar.json:216 +/ui/theme-defs/eldar/syntax-styles/number/color -> eldar.json:180 +/ui/theme-defs/eldar/syntax-styles/quoted-code/background-color -> eldar.json:160 +/ui/theme-defs/eldar/syntax-styles/quoted-code/color -> eldar.json:159 +/ui/theme-defs/eldar/syntax-styles/re-repeat/color -> eldar.json:192 +/ui/theme-defs/eldar/syntax-styles/re-special/color -> eldar.json:189 +/ui/theme-defs/eldar/syntax-styles/separators-references-accessors/color -> eldar.json:228 +/ui/theme-defs/eldar/syntax-styles/spectrogram-high/background-color -> eldar.json:210 +/ui/theme-defs/eldar/syntax-styles/spectrogram-low/background-color -> eldar.json:204 +/ui/theme-defs/eldar/syntax-styles/spectrogram-medium/background-color -> eldar.json:207 +/ui/theme-defs/eldar/syntax-styles/string/bold -> eldar.json:171 +/ui/theme-defs/eldar/syntax-styles/string/color -> eldar.json:170 +/ui/theme-defs/eldar/syntax-styles/symbol/color -> eldar.json:186 +/ui/theme-defs/eldar/syntax-styles/type/color -> eldar.json:231 +/ui/theme-defs/eldar/syntax-styles/variable/color -> eldar.json:183 +/ui/theme-defs/eldar/vars/black -> eldar.json:7 +/ui/theme-defs/eldar/vars/blue -> eldar.json:11 +/ui/theme-defs/eldar/vars/cyan -> eldar.json:12 +/ui/theme-defs/eldar/vars/green -> eldar.json:13 +/ui/theme-defs/eldar/vars/magenta -> eldar.json:10 +/ui/theme-defs/eldar/vars/orange -> eldar.json:15 +/ui/theme-defs/eldar/vars/red -> eldar.json:9 +/ui/theme-defs/eldar/vars/semantic_highlight_color -> eldar.json:16 +/ui/theme-defs/eldar/vars/white -> eldar.json:14 +/ui/theme-defs/eldar/vars/yellow -> eldar.json:8 +/ui/theme-defs/grayscale/log-level-styles/critical/color -> grayscale.json:235 +/ui/theme-defs/grayscale/log-level-styles/error/color -> grayscale.json:232 +/ui/theme-defs/grayscale/log-level-styles/fatal/color -> grayscale.json:238 +/ui/theme-defs/grayscale/log-level-styles/warning/color -> grayscale.json:229 +/ui/theme-defs/grayscale/status-styles/active/background-color -> grayscale.json:209 +/ui/theme-defs/grayscale/status-styles/active/color -> grayscale.json:208 +/ui/theme-defs/grayscale/status-styles/alert/background-color -> grayscale.json:205 +/ui/theme-defs/grayscale/status-styles/alert/color -> grayscale.json:204 +/ui/theme-defs/grayscale/status-styles/disabled-title/background-color -> grayscale.json:173 +/ui/theme-defs/grayscale/status-styles/disabled-title/bold -> grayscale.json:174 +/ui/theme-defs/grayscale/status-styles/disabled-title/color -> grayscale.json:172 +/ui/theme-defs/grayscale/status-styles/hotkey/color -> grayscale.json:192 +/ui/theme-defs/grayscale/status-styles/hotkey/underline -> grayscale.json:193 +/ui/theme-defs/grayscale/status-styles/inactive-alert/background-color -> grayscale.json:221 +/ui/theme-defs/grayscale/status-styles/inactive-alert/color -> grayscale.json:220 +/ui/theme-defs/grayscale/status-styles/inactive/background-color -> grayscale.json:217 +/ui/theme-defs/grayscale/status-styles/inactive/color -> grayscale.json:216 +/ui/theme-defs/grayscale/status-styles/info/background-color -> grayscale.json:213 +/ui/theme-defs/grayscale/status-styles/info/color -> grayscale.json:212 +/ui/theme-defs/grayscale/status-styles/subtitle/background-color -> grayscale.json:183 +/ui/theme-defs/grayscale/status-styles/subtitle/bold -> grayscale.json:184 +/ui/theme-defs/grayscale/status-styles/subtitle/color -> grayscale.json:182 +/ui/theme-defs/grayscale/status-styles/suggestion/color -> grayscale.json:224 +/ui/theme-defs/grayscale/status-styles/text/background-color -> grayscale.json:197 +/ui/theme-defs/grayscale/status-styles/text/color -> grayscale.json:196 +/ui/theme-defs/grayscale/status-styles/title-hotkey/background-color -> grayscale.json:188 +/ui/theme-defs/grayscale/status-styles/title-hotkey/color -> grayscale.json:187 +/ui/theme-defs/grayscale/status-styles/title-hotkey/underline -> grayscale.json:189 +/ui/theme-defs/grayscale/status-styles/title/background-color -> grayscale.json:178 +/ui/theme-defs/grayscale/status-styles/title/bold -> grayscale.json:179 +/ui/theme-defs/grayscale/status-styles/title/color -> grayscale.json:177 +/ui/theme-defs/grayscale/status-styles/warn/background-color -> grayscale.json:201 +/ui/theme-defs/grayscale/status-styles/warn/color -> grayscale.json:200 +/ui/theme-defs/grayscale/styles/adjusted-time/color -> grayscale.json:61 +/ui/theme-defs/grayscale/styles/alt-text/bold -> grayscale.json:28 +/ui/theme-defs/grayscale/styles/breadcrumb/bold -> grayscale.json:120 +/ui/theme-defs/grayscale/styles/breadcrumb/color -> grayscale.json:119 +/ui/theme-defs/grayscale/styles/cursor-line/background-color -> grayscale.json:52 +/ui/theme-defs/grayscale/styles/cursor-line/bold -> grayscale.json:53 +/ui/theme-defs/grayscale/styles/cursor-line/color -> grayscale.json:51 +/ui/theme-defs/grayscale/styles/cursor-line/underline -> grayscale.json:54 +/ui/theme-defs/grayscale/styles/disabled-cursor-line/background-color -> grayscale.json:58 +/ui/theme-defs/grayscale/styles/disabled-cursor-line/color -> grayscale.json:57 +/ui/theme-defs/grayscale/styles/disabled-focused/background-color -> grayscale.json:81 +/ui/theme-defs/grayscale/styles/disabled-focused/color -> grayscale.json:80 +/ui/theme-defs/grayscale/styles/error/bold -> grayscale.json:40 +/ui/theme-defs/grayscale/styles/error/color -> grayscale.json:39 +/ui/theme-defs/grayscale/styles/file-offset/color -> grayscale.json:70 +/ui/theme-defs/grayscale/styles/focused/background-color -> grayscale.json:77 +/ui/theme-defs/grayscale/styles/focused/color -> grayscale.json:76 +/ui/theme-defs/grayscale/styles/footnote-border/background-color -> grayscale.json:137 +/ui/theme-defs/grayscale/styles/footnote-border/color -> grayscale.json:136 +/ui/theme-defs/grayscale/styles/footnote-text/background-color -> grayscale.json:141 +/ui/theme-defs/grayscale/styles/footnote-text/color -> grayscale.json:140 +/ui/theme-defs/grayscale/styles/h1/underline -> grayscale.json:92 +/ui/theme-defs/grayscale/styles/h2/underline -> grayscale.json:95 +/ui/theme-defs/grayscale/styles/h3/underline -> grayscale.json:98 +/ui/theme-defs/grayscale/styles/h4/underline -> grayscale.json:101 +/ui/theme-defs/grayscale/styles/h5/underline -> grayscale.json:104 +/ui/theme-defs/grayscale/styles/h6/underline -> grayscale.json:107 +/ui/theme-defs/grayscale/styles/hidden/bold -> grayscale.json:48 +/ui/theme-defs/grayscale/styles/hidden/color -> grayscale.json:47 +/ui/theme-defs/grayscale/styles/hr/color -> grayscale.json:110 +/ui/theme-defs/grayscale/styles/hyperlink/underline -> grayscale.json:113 +/ui/theme-defs/grayscale/styles/identifier/background-color -> grayscale.json:19 +/ui/theme-defs/grayscale/styles/identifier/bold -> grayscale.json:21 +/ui/theme-defs/grayscale/styles/identifier/color -> grayscale.json:20 +/ui/theme-defs/grayscale/styles/indent-guide/color -> grayscale.json:147 +/ui/theme-defs/grayscale/styles/info/bold -> grayscale.json:36 +/ui/theme-defs/grayscale/styles/info/color -> grayscale.json:35 +/ui/theme-defs/grayscale/styles/invalid-msg/color -> grayscale.json:73 +/ui/theme-defs/grayscale/styles/list-glyph/color -> grayscale.json:116 +/ui/theme-defs/grayscale/styles/offset-time/color -> grayscale.json:67 +/ui/theme-defs/grayscale/styles/ok/bold -> grayscale.json:32 +/ui/theme-defs/grayscale/styles/ok/color -> grayscale.json:31 +/ui/theme-defs/grayscale/styles/popup/background-color -> grayscale.json:85 +/ui/theme-defs/grayscale/styles/popup/color -> grayscale.json:84 +/ui/theme-defs/grayscale/styles/quote-border/background-color -> grayscale.json:130 +/ui/theme-defs/grayscale/styles/quote-border/color -> grayscale.json:129 +/ui/theme-defs/grayscale/styles/quoted-text/background-color -> grayscale.json:133 +/ui/theme-defs/grayscale/styles/scrollbar/background-color -> grayscale.json:89 +/ui/theme-defs/grayscale/styles/scrollbar/color -> grayscale.json:88 +/ui/theme-defs/grayscale/styles/skewed-time/color -> grayscale.json:64 +/ui/theme-defs/grayscale/styles/snippet-border/color -> grayscale.json:144 +/ui/theme-defs/grayscale/styles/table-border/color -> grayscale.json:123 +/ui/theme-defs/grayscale/styles/table-header/bold -> grayscale.json:126 +/ui/theme-defs/grayscale/styles/text/background-color -> grayscale.json:25 +/ui/theme-defs/grayscale/styles/text/color -> grayscale.json:24 +/ui/theme-defs/grayscale/styles/warning/bold -> grayscale.json:44 +/ui/theme-defs/grayscale/styles/warning/color -> grayscale.json:43 +/ui/theme-defs/grayscale/syntax-styles/ascii-control/color -> grayscale.json:161 +/ui/theme-defs/grayscale/syntax-styles/comment/color -> grayscale.json:152 +/ui/theme-defs/grayscale/syntax-styles/doc-directive/color -> grayscale.json:155 +/ui/theme-defs/grayscale/syntax-styles/non-ascii/color -> grayscale.json:164 +/ui/theme-defs/grayscale/syntax-styles/null/color -> grayscale.json:158 +/ui/theme-defs/grayscale/syntax-styles/number/bold -> grayscale.json:167 +/ui/theme-defs/grayscale/vars/black -> grayscale.json:7 +/ui/theme-defs/grayscale/vars/blue -> grayscale.json:11 +/ui/theme-defs/grayscale/vars/cyan -> grayscale.json:13 +/ui/theme-defs/grayscale/vars/green -> grayscale.json:9 +/ui/theme-defs/grayscale/vars/magenta -> grayscale.json:12 +/ui/theme-defs/grayscale/vars/plaintext -> grayscale.json:15 +/ui/theme-defs/grayscale/vars/red -> grayscale.json:8 +/ui/theme-defs/grayscale/vars/white -> grayscale.json:14 +/ui/theme-defs/grayscale/vars/yellow -> grayscale.json:10 +/ui/theme-defs/monocai/log-level-styles/critical/color -> monocai.json:300 +/ui/theme-defs/monocai/log-level-styles/error/color -> monocai.json:297 +/ui/theme-defs/monocai/log-level-styles/fatal/color -> monocai.json:303 +/ui/theme-defs/monocai/log-level-styles/warning/color -> monocai.json:294 +/ui/theme-defs/monocai/status-styles/active/background-color -> monocai.json:278 +/ui/theme-defs/monocai/status-styles/active/color -> monocai.json:277 +/ui/theme-defs/monocai/status-styles/alert/background-color -> monocai.json:274 +/ui/theme-defs/monocai/status-styles/alert/color -> monocai.json:273 +/ui/theme-defs/monocai/status-styles/disabled-title/background-color -> monocai.json:238 +/ui/theme-defs/monocai/status-styles/disabled-title/bold -> monocai.json:239 +/ui/theme-defs/monocai/status-styles/disabled-title/color -> monocai.json:237 +/ui/theme-defs/monocai/status-styles/hotkey/color -> monocai.json:261 +/ui/theme-defs/monocai/status-styles/hotkey/underline -> monocai.json:262 +/ui/theme-defs/monocai/status-styles/inactive-alert/background-color -> monocai.json:286 +/ui/theme-defs/monocai/status-styles/inactive-alert/color -> monocai.json:285 +/ui/theme-defs/monocai/status-styles/inactive/background-color -> monocai.json:282 +/ui/theme-defs/monocai/status-styles/inactive/color -> monocai.json:281 +/ui/theme-defs/monocai/status-styles/info/background-color -> monocai.json:253 +/ui/theme-defs/monocai/status-styles/info/color -> monocai.json:252 +/ui/theme-defs/monocai/status-styles/subtitle/background-color -> monocai.json:248 +/ui/theme-defs/monocai/status-styles/subtitle/bold -> monocai.json:249 +/ui/theme-defs/monocai/status-styles/subtitle/color -> monocai.json:247 +/ui/theme-defs/monocai/status-styles/suggestion/color -> monocai.json:289 +/ui/theme-defs/monocai/status-styles/text/background-color -> monocai.json:266 +/ui/theme-defs/monocai/status-styles/text/color -> monocai.json:265 +/ui/theme-defs/monocai/status-styles/title-hotkey/background-color -> monocai.json:257 +/ui/theme-defs/monocai/status-styles/title-hotkey/color -> monocai.json:256 +/ui/theme-defs/monocai/status-styles/title-hotkey/underline -> monocai.json:258 +/ui/theme-defs/monocai/status-styles/title/background-color -> monocai.json:243 +/ui/theme-defs/monocai/status-styles/title/bold -> monocai.json:244 +/ui/theme-defs/monocai/status-styles/title/color -> monocai.json:242 +/ui/theme-defs/monocai/status-styles/warn/background-color -> monocai.json:270 +/ui/theme-defs/monocai/status-styles/warn/color -> monocai.json:269 +/ui/theme-defs/monocai/styles/adjusted-time/color -> monocai.json:62 +/ui/theme-defs/monocai/styles/alt-text/background-color -> monocai.json:30 +/ui/theme-defs/monocai/styles/breadcrumb/bold -> monocai.json:123 +/ui/theme-defs/monocai/styles/breadcrumb/color -> monocai.json:122 +/ui/theme-defs/monocai/styles/cursor-line/background-color -> monocai.json:54 +/ui/theme-defs/monocai/styles/cursor-line/bold -> monocai.json:55 +/ui/theme-defs/monocai/styles/cursor-line/color -> monocai.json:53 +/ui/theme-defs/monocai/styles/disabled-cursor-line/background-color -> monocai.json:59 +/ui/theme-defs/monocai/styles/disabled-cursor-line/color -> monocai.json:58 +/ui/theme-defs/monocai/styles/disabled-focused/background-color -> monocai.json:82 +/ui/theme-defs/monocai/styles/disabled-focused/color -> monocai.json:81 +/ui/theme-defs/monocai/styles/error/bold -> monocai.json:42 +/ui/theme-defs/monocai/styles/error/color -> monocai.json:41 +/ui/theme-defs/monocai/styles/file-offset/color -> monocai.json:71 +/ui/theme-defs/monocai/styles/focused/background-color -> monocai.json:78 +/ui/theme-defs/monocai/styles/focused/color -> monocai.json:77 +/ui/theme-defs/monocai/styles/footnote-border/background-color -> monocai.json:140 +/ui/theme-defs/monocai/styles/footnote-border/color -> monocai.json:139 +/ui/theme-defs/monocai/styles/footnote-text/background-color -> monocai.json:144 +/ui/theme-defs/monocai/styles/footnote-text/color -> monocai.json:143 +/ui/theme-defs/monocai/styles/h1/bold -> monocai.json:94 +/ui/theme-defs/monocai/styles/h1/color -> monocai.json:93 +/ui/theme-defs/monocai/styles/h2/color -> monocai.json:97 +/ui/theme-defs/monocai/styles/h2/underline -> monocai.json:98 +/ui/theme-defs/monocai/styles/h3/color -> monocai.json:101 +/ui/theme-defs/monocai/styles/h4/underline -> monocai.json:104 +/ui/theme-defs/monocai/styles/h5/underline -> monocai.json:107 +/ui/theme-defs/monocai/styles/h6/underline -> monocai.json:110 +/ui/theme-defs/monocai/styles/hidden/bold -> monocai.json:50 +/ui/theme-defs/monocai/styles/hidden/color -> monocai.json:49 +/ui/theme-defs/monocai/styles/hr/color -> monocai.json:113 +/ui/theme-defs/monocai/styles/hyperlink/underline -> monocai.json:116 +/ui/theme-defs/monocai/styles/identifier/color -> monocai.json:20 +/ui/theme-defs/monocai/styles/indent-guide/color -> monocai.json:150 +/ui/theme-defs/monocai/styles/info/bold -> monocai.json:38 +/ui/theme-defs/monocai/styles/info/color -> monocai.json:37 +/ui/theme-defs/monocai/styles/invalid-msg/color -> monocai.json:74 +/ui/theme-defs/monocai/styles/list-glyph/color -> monocai.json:119 +/ui/theme-defs/monocai/styles/offset-time/color -> monocai.json:68 +/ui/theme-defs/monocai/styles/ok/bold -> monocai.json:34 +/ui/theme-defs/monocai/styles/ok/color -> monocai.json:33 +/ui/theme-defs/monocai/styles/popup/background-color -> monocai.json:86 +/ui/theme-defs/monocai/styles/popup/color -> monocai.json:85 +/ui/theme-defs/monocai/styles/quote-border/background-color -> monocai.json:133 +/ui/theme-defs/monocai/styles/quote-border/color -> monocai.json:132 +/ui/theme-defs/monocai/styles/quoted-text/background-color -> monocai.json:136 +/ui/theme-defs/monocai/styles/scrollbar/background-color -> monocai.json:90 +/ui/theme-defs/monocai/styles/scrollbar/color -> monocai.json:89 +/ui/theme-defs/monocai/styles/selected-text/background-color -> monocai.json:27 +/ui/theme-defs/monocai/styles/skewed-time/color -> monocai.json:65 +/ui/theme-defs/monocai/styles/snippet-border/color -> monocai.json:147 +/ui/theme-defs/monocai/styles/table-border/color -> monocai.json:126 +/ui/theme-defs/monocai/styles/table-header/bold -> monocai.json:129 +/ui/theme-defs/monocai/styles/text/background-color -> monocai.json:24 +/ui/theme-defs/monocai/styles/text/color -> monocai.json:23 +/ui/theme-defs/monocai/styles/warning/bold -> monocai.json:46 +/ui/theme-defs/monocai/styles/warning/color -> monocai.json:45 +/ui/theme-defs/monocai/syntax-styles/ascii-control/color -> monocai.json:217 +/ui/theme-defs/monocai/syntax-styles/code-border/background-color -> monocai.json:164 +/ui/theme-defs/monocai/syntax-styles/code-border/color -> monocai.json:163 +/ui/theme-defs/monocai/syntax-styles/comment/color -> monocai.json:175 +/ui/theme-defs/monocai/syntax-styles/diff-add/color -> monocai.json:196 +/ui/theme-defs/monocai/syntax-styles/diff-delete/color -> monocai.json:193 +/ui/theme-defs/monocai/syntax-styles/diff-section/color -> monocai.json:199 +/ui/theme-defs/monocai/syntax-styles/doc-directive/color -> monocai.json:178 +/ui/theme-defs/monocai/syntax-styles/file/color -> monocai.json:211 +/ui/theme-defs/monocai/syntax-styles/function/color -> monocai.json:226 +/ui/theme-defs/monocai/syntax-styles/inline-code/background-color -> monocai.json:156 +/ui/theme-defs/monocai/syntax-styles/inline-code/color -> monocai.json:155 +/ui/theme-defs/monocai/syntax-styles/keyword/bold -> monocai.json:168 +/ui/theme-defs/monocai/syntax-styles/keyword/color -> monocai.json:167 +/ui/theme-defs/monocai/syntax-styles/non-ascii/color -> monocai.json:220 +/ui/theme-defs/monocai/syntax-styles/null/color -> monocai.json:214 +/ui/theme-defs/monocai/syntax-styles/number/bold -> monocai.json:223 +/ui/theme-defs/monocai/syntax-styles/quoted-code/background-color -> monocai.json:160 +/ui/theme-defs/monocai/syntax-styles/quoted-code/color -> monocai.json:159 +/ui/theme-defs/monocai/syntax-styles/re-repeat/color -> monocai.json:190 +/ui/theme-defs/monocai/syntax-styles/re-special/color -> monocai.json:187 +/ui/theme-defs/monocai/syntax-styles/separators-references-accessors/color -> monocai.json:229 +/ui/theme-defs/monocai/syntax-styles/spectrogram-high/background-color -> monocai.json:208 +/ui/theme-defs/monocai/syntax-styles/spectrogram-low/background-color -> monocai.json:202 +/ui/theme-defs/monocai/syntax-styles/spectrogram-medium/background-color -> monocai.json:205 +/ui/theme-defs/monocai/syntax-styles/string/bold -> monocai.json:172 +/ui/theme-defs/monocai/syntax-styles/string/color -> monocai.json:171 +/ui/theme-defs/monocai/syntax-styles/symbol/color -> monocai.json:184 +/ui/theme-defs/monocai/syntax-styles/type/color -> monocai.json:232 +/ui/theme-defs/monocai/syntax-styles/variable/color -> monocai.json:181 +/ui/theme-defs/monocai/vars/black -> monocai.json:7 +/ui/theme-defs/monocai/vars/blue -> monocai.json:11 +/ui/theme-defs/monocai/vars/cyan -> monocai.json:13 +/ui/theme-defs/monocai/vars/green -> monocai.json:9 +/ui/theme-defs/monocai/vars/magenta -> monocai.json:12 +/ui/theme-defs/monocai/vars/orange -> monocai.json:15 +/ui/theme-defs/monocai/vars/red -> monocai.json:8 +/ui/theme-defs/monocai/vars/semantic_highlight_color -> monocai.json:16 +/ui/theme-defs/monocai/vars/white -> monocai.json:14 +/ui/theme-defs/monocai/vars/yellow -> monocai.json:10 +/ui/theme-defs/night-owl/log-level-styles/critical/color -> night-owl.json:299 +/ui/theme-defs/night-owl/log-level-styles/error/color -> night-owl.json:296 +/ui/theme-defs/night-owl/log-level-styles/fatal/color -> night-owl.json:302 +/ui/theme-defs/night-owl/log-level-styles/warning/color -> night-owl.json:293 +/ui/theme-defs/night-owl/status-styles/active/background-color -> night-owl.json:266 +/ui/theme-defs/night-owl/status-styles/active/color -> night-owl.json:265 +/ui/theme-defs/night-owl/status-styles/alert/background-color -> night-owl.json:262 +/ui/theme-defs/night-owl/status-styles/alert/color -> night-owl.json:261 +/ui/theme-defs/night-owl/status-styles/disabled-title/background-color -> night-owl.json:236 +/ui/theme-defs/night-owl/status-styles/disabled-title/bold -> night-owl.json:237 +/ui/theme-defs/night-owl/status-styles/disabled-title/color -> night-owl.json:235 +/ui/theme-defs/night-owl/status-styles/hotkey/bold -> night-owl.json:278 +/ui/theme-defs/night-owl/status-styles/hotkey/color -> night-owl.json:277 +/ui/theme-defs/night-owl/status-styles/hotkey/underline -> night-owl.json:279 +/ui/theme-defs/night-owl/status-styles/inactive-alert/background-color -> night-owl.json:274 +/ui/theme-defs/night-owl/status-styles/inactive-alert/color -> night-owl.json:273 +/ui/theme-defs/night-owl/status-styles/inactive/background-color -> night-owl.json:270 +/ui/theme-defs/night-owl/status-styles/inactive/color -> night-owl.json:269 +/ui/theme-defs/night-owl/status-styles/info/background-color -> night-owl.json:250 +/ui/theme-defs/night-owl/status-styles/info/color -> night-owl.json:249 +/ui/theme-defs/night-owl/status-styles/subtitle/background-color -> night-owl.json:246 +/ui/theme-defs/night-owl/status-styles/subtitle/color -> night-owl.json:245 +/ui/theme-defs/night-owl/status-styles/suggestion/color -> night-owl.json:288 +/ui/theme-defs/night-owl/status-styles/text/background-color -> night-owl.json:254 +/ui/theme-defs/night-owl/status-styles/text/color -> night-owl.json:253 +/ui/theme-defs/night-owl/status-styles/title-hotkey/background-color -> night-owl.json:283 +/ui/theme-defs/night-owl/status-styles/title-hotkey/bold -> night-owl.json:284 +/ui/theme-defs/night-owl/status-styles/title-hotkey/color -> night-owl.json:282 +/ui/theme-defs/night-owl/status-styles/title-hotkey/underline -> night-owl.json:285 +/ui/theme-defs/night-owl/status-styles/title/background-color -> night-owl.json:241 +/ui/theme-defs/night-owl/status-styles/title/bold -> night-owl.json:242 +/ui/theme-defs/night-owl/status-styles/title/color -> night-owl.json:240 +/ui/theme-defs/night-owl/status-styles/warn/background-color -> night-owl.json:258 +/ui/theme-defs/night-owl/status-styles/warn/color -> night-owl.json:257 +/ui/theme-defs/night-owl/styles/adjusted-time/color -> night-owl.json:63 +/ui/theme-defs/night-owl/styles/alt-text/background-color -> night-owl.json:30 +/ui/theme-defs/night-owl/styles/breadcrumb/bold -> night-owl.json:122 +/ui/theme-defs/night-owl/styles/breadcrumb/color -> night-owl.json:121 +/ui/theme-defs/night-owl/styles/cursor-line/background-color -> night-owl.json:54 +/ui/theme-defs/night-owl/styles/cursor-line/bold -> night-owl.json:55 +/ui/theme-defs/night-owl/styles/cursor-line/color -> night-owl.json:53 +/ui/theme-defs/night-owl/styles/cursor-line/underline -> night-owl.json:56 +/ui/theme-defs/night-owl/styles/disabled-cursor-line/background-color -> night-owl.json:60 +/ui/theme-defs/night-owl/styles/disabled-cursor-line/color -> night-owl.json:59 +/ui/theme-defs/night-owl/styles/disabled-focused/background-color -> night-owl.json:83 +/ui/theme-defs/night-owl/styles/disabled-focused/color -> night-owl.json:82 +/ui/theme-defs/night-owl/styles/error/bold -> night-owl.json:42 +/ui/theme-defs/night-owl/styles/error/color -> night-owl.json:41 +/ui/theme-defs/night-owl/styles/file-offset/color -> night-owl.json:72 +/ui/theme-defs/night-owl/styles/focused/background-color -> night-owl.json:79 +/ui/theme-defs/night-owl/styles/focused/color -> night-owl.json:78 +/ui/theme-defs/night-owl/styles/footnote-border/background-color -> night-owl.json:139 +/ui/theme-defs/night-owl/styles/footnote-border/color -> night-owl.json:138 +/ui/theme-defs/night-owl/styles/footnote-text/background-color -> night-owl.json:143 +/ui/theme-defs/night-owl/styles/footnote-text/color -> night-owl.json:142 +/ui/theme-defs/night-owl/styles/h1/underline -> night-owl.json:94 +/ui/theme-defs/night-owl/styles/h2/underline -> night-owl.json:97 +/ui/theme-defs/night-owl/styles/h3/underline -> night-owl.json:100 +/ui/theme-defs/night-owl/styles/h4/underline -> night-owl.json:103 +/ui/theme-defs/night-owl/styles/h5/underline -> night-owl.json:106 +/ui/theme-defs/night-owl/styles/h6/underline -> night-owl.json:109 +/ui/theme-defs/night-owl/styles/hidden/bold -> night-owl.json:50 +/ui/theme-defs/night-owl/styles/hidden/color -> night-owl.json:49 +/ui/theme-defs/night-owl/styles/hr/color -> night-owl.json:112 +/ui/theme-defs/night-owl/styles/hyperlink/underline -> night-owl.json:115 +/ui/theme-defs/night-owl/styles/identifier/background-color -> night-owl.json:19 +/ui/theme-defs/night-owl/styles/identifier/color -> night-owl.json:20 +/ui/theme-defs/night-owl/styles/indent-guide/color -> night-owl.json:149 +/ui/theme-defs/night-owl/styles/info/bold -> night-owl.json:38 +/ui/theme-defs/night-owl/styles/info/color -> night-owl.json:37 +/ui/theme-defs/night-owl/styles/invalid-msg/color -> night-owl.json:75 +/ui/theme-defs/night-owl/styles/list-glyph/color -> night-owl.json:118 +/ui/theme-defs/night-owl/styles/offset-time/color -> night-owl.json:69 +/ui/theme-defs/night-owl/styles/ok/bold -> night-owl.json:34 +/ui/theme-defs/night-owl/styles/ok/color -> night-owl.json:33 +/ui/theme-defs/night-owl/styles/popup/background-color -> night-owl.json:87 +/ui/theme-defs/night-owl/styles/popup/color -> night-owl.json:86 +/ui/theme-defs/night-owl/styles/quote-border/background-color -> night-owl.json:132 +/ui/theme-defs/night-owl/styles/quote-border/color -> night-owl.json:131 +/ui/theme-defs/night-owl/styles/quoted-text/background-color -> night-owl.json:135 +/ui/theme-defs/night-owl/styles/scrollbar/background-color -> night-owl.json:91 +/ui/theme-defs/night-owl/styles/scrollbar/color -> night-owl.json:90 +/ui/theme-defs/night-owl/styles/selected-text/background-color -> night-owl.json:27 +/ui/theme-defs/night-owl/styles/skewed-time/color -> night-owl.json:66 +/ui/theme-defs/night-owl/styles/snippet-border/color -> night-owl.json:146 +/ui/theme-defs/night-owl/styles/table-border/color -> night-owl.json:125 +/ui/theme-defs/night-owl/styles/table-header/bold -> night-owl.json:128 +/ui/theme-defs/night-owl/styles/text/background-color -> night-owl.json:24 +/ui/theme-defs/night-owl/styles/text/color -> night-owl.json:23 +/ui/theme-defs/night-owl/styles/warning/bold -> night-owl.json:46 +/ui/theme-defs/night-owl/styles/warning/color -> night-owl.json:45 +/ui/theme-defs/night-owl/syntax-styles/ascii-control/color -> night-owl.json:218 +/ui/theme-defs/night-owl/syntax-styles/code-border/background-color -> night-owl.json:163 +/ui/theme-defs/night-owl/syntax-styles/code-border/color -> night-owl.json:162 +/ui/theme-defs/night-owl/syntax-styles/comment/color -> night-owl.json:173 +/ui/theme-defs/night-owl/syntax-styles/diff-add/color -> night-owl.json:197 +/ui/theme-defs/night-owl/syntax-styles/diff-delete/color -> night-owl.json:194 +/ui/theme-defs/night-owl/syntax-styles/diff-section/color -> night-owl.json:200 +/ui/theme-defs/night-owl/syntax-styles/doc-directive/color -> night-owl.json:176 +/ui/theme-defs/night-owl/syntax-styles/file/color -> night-owl.json:212 +/ui/theme-defs/night-owl/syntax-styles/function/color -> night-owl.json:224 +/ui/theme-defs/night-owl/syntax-styles/inline-code/background-color -> night-owl.json:155 +/ui/theme-defs/night-owl/syntax-styles/inline-code/color -> night-owl.json:154 +/ui/theme-defs/night-owl/syntax-styles/keyword/color -> night-owl.json:166 +/ui/theme-defs/night-owl/syntax-styles/non-ascii/color -> night-owl.json:221 +/ui/theme-defs/night-owl/syntax-styles/null/color -> night-owl.json:215 +/ui/theme-defs/night-owl/syntax-styles/number/color -> night-owl.json:185 +/ui/theme-defs/night-owl/syntax-styles/quoted-code/background-color -> night-owl.json:159 +/ui/theme-defs/night-owl/syntax-styles/quoted-code/color -> night-owl.json:158 +/ui/theme-defs/night-owl/syntax-styles/re-repeat/color -> night-owl.json:191 +/ui/theme-defs/night-owl/syntax-styles/re-special/color -> night-owl.json:188 +/ui/theme-defs/night-owl/syntax-styles/separators-references-accessors/color -> night-owl.json:227 +/ui/theme-defs/night-owl/syntax-styles/spectrogram-high/background-color -> night-owl.json:209 +/ui/theme-defs/night-owl/syntax-styles/spectrogram-low/background-color -> night-owl.json:203 +/ui/theme-defs/night-owl/syntax-styles/spectrogram-medium/background-color -> night-owl.json:206 +/ui/theme-defs/night-owl/syntax-styles/string/bold -> night-owl.json:170 +/ui/theme-defs/night-owl/syntax-styles/string/color -> night-owl.json:169 +/ui/theme-defs/night-owl/syntax-styles/symbol/color -> night-owl.json:182 +/ui/theme-defs/night-owl/syntax-styles/type/color -> night-owl.json:230 +/ui/theme-defs/night-owl/syntax-styles/variable/color -> night-owl.json:179 +/ui/theme-defs/night-owl/vars/black -> night-owl.json:7 +/ui/theme-defs/night-owl/vars/blue -> night-owl.json:11 +/ui/theme-defs/night-owl/vars/cyan -> night-owl.json:13 +/ui/theme-defs/night-owl/vars/green -> night-owl.json:9 +/ui/theme-defs/night-owl/vars/magenta -> night-owl.json:12 +/ui/theme-defs/night-owl/vars/red -> night-owl.json:8 +/ui/theme-defs/night-owl/vars/semantic_highlight_color -> night-owl.json:15 +/ui/theme-defs/night-owl/vars/white -> night-owl.json:14 +/ui/theme-defs/night-owl/vars/yellow -> night-owl.json:10 +/ui/theme-defs/solarized-dark/log-level-styles/critical/color -> solarized-dark.json:307 +/ui/theme-defs/solarized-dark/log-level-styles/error/color -> solarized-dark.json:304 +/ui/theme-defs/solarized-dark/log-level-styles/fatal/color -> solarized-dark.json:310 +/ui/theme-defs/solarized-dark/log-level-styles/warning/color -> solarized-dark.json:301 +/ui/theme-defs/solarized-dark/status-styles/active/background-color -> solarized-dark.json:272 +/ui/theme-defs/solarized-dark/status-styles/active/color -> solarized-dark.json:271 +/ui/theme-defs/solarized-dark/status-styles/alert/background-color -> solarized-dark.json:268 +/ui/theme-defs/solarized-dark/status-styles/alert/color -> solarized-dark.json:267 +/ui/theme-defs/solarized-dark/status-styles/disabled-title/background-color -> solarized-dark.json:245 +/ui/theme-defs/solarized-dark/status-styles/disabled-title/bold -> solarized-dark.json:246 +/ui/theme-defs/solarized-dark/status-styles/disabled-title/color -> solarized-dark.json:244 +/ui/theme-defs/solarized-dark/status-styles/hotkey/color -> solarized-dark.json:284 +/ui/theme-defs/solarized-dark/status-styles/hotkey/underline -> solarized-dark.json:285 +/ui/theme-defs/solarized-dark/status-styles/inactive-alert/background-color -> solarized-dark.json:293 +/ui/theme-defs/solarized-dark/status-styles/inactive-alert/color -> solarized-dark.json:292 +/ui/theme-defs/solarized-dark/status-styles/inactive/background-color -> solarized-dark.json:289 +/ui/theme-defs/solarized-dark/status-styles/inactive/color -> solarized-dark.json:288 +/ui/theme-defs/solarized-dark/status-styles/info/background-color -> solarized-dark.json:276 +/ui/theme-defs/solarized-dark/status-styles/info/color -> solarized-dark.json:275 +/ui/theme-defs/solarized-dark/status-styles/subtitle/background-color -> solarized-dark.json:255 +/ui/theme-defs/solarized-dark/status-styles/subtitle/bold -> solarized-dark.json:256 +/ui/theme-defs/solarized-dark/status-styles/subtitle/color -> solarized-dark.json:254 +/ui/theme-defs/solarized-dark/status-styles/suggestion/color -> solarized-dark.json:296 +/ui/theme-defs/solarized-dark/status-styles/text/background-color -> solarized-dark.json:260 +/ui/theme-defs/solarized-dark/status-styles/text/color -> solarized-dark.json:259 +/ui/theme-defs/solarized-dark/status-styles/title-hotkey/background-color -> solarized-dark.json:280 +/ui/theme-defs/solarized-dark/status-styles/title-hotkey/color -> solarized-dark.json:279 +/ui/theme-defs/solarized-dark/status-styles/title-hotkey/underline -> solarized-dark.json:281 +/ui/theme-defs/solarized-dark/status-styles/title/background-color -> solarized-dark.json:250 +/ui/theme-defs/solarized-dark/status-styles/title/bold -> solarized-dark.json:251 +/ui/theme-defs/solarized-dark/status-styles/title/color -> solarized-dark.json:249 +/ui/theme-defs/solarized-dark/status-styles/warn/background-color -> solarized-dark.json:264 +/ui/theme-defs/solarized-dark/status-styles/warn/color -> solarized-dark.json:263 +/ui/theme-defs/solarized-dark/styles/adjusted-time/color -> solarized-dark.json:72 +/ui/theme-defs/solarized-dark/styles/alt-text/background-color -> solarized-dark.json:39 +/ui/theme-defs/solarized-dark/styles/breadcrumb/bold -> solarized-dark.json:131 +/ui/theme-defs/solarized-dark/styles/breadcrumb/color -> solarized-dark.json:130 +/ui/theme-defs/solarized-dark/styles/cursor-line/background-color -> solarized-dark.json:63 +/ui/theme-defs/solarized-dark/styles/cursor-line/bold -> solarized-dark.json:64 +/ui/theme-defs/solarized-dark/styles/cursor-line/color -> solarized-dark.json:62 +/ui/theme-defs/solarized-dark/styles/cursor-line/underline -> solarized-dark.json:65 +/ui/theme-defs/solarized-dark/styles/disabled-cursor-line/background-color -> solarized-dark.json:69 +/ui/theme-defs/solarized-dark/styles/disabled-cursor-line/color -> solarized-dark.json:68 +/ui/theme-defs/solarized-dark/styles/disabled-focused/background-color -> solarized-dark.json:100 +/ui/theme-defs/solarized-dark/styles/disabled-focused/color -> solarized-dark.json:99 +/ui/theme-defs/solarized-dark/styles/error/bold -> solarized-dark.json:51 +/ui/theme-defs/solarized-dark/styles/error/color -> solarized-dark.json:50 +/ui/theme-defs/solarized-dark/styles/file-offset/color -> solarized-dark.json:81 +/ui/theme-defs/solarized-dark/styles/focused/background-color -> solarized-dark.json:96 +/ui/theme-defs/solarized-dark/styles/focused/color -> solarized-dark.json:95 +/ui/theme-defs/solarized-dark/styles/footnote-border/background-color -> solarized-dark.json:148 +/ui/theme-defs/solarized-dark/styles/footnote-border/color -> solarized-dark.json:147 +/ui/theme-defs/solarized-dark/styles/footnote-text/background-color -> solarized-dark.json:152 +/ui/theme-defs/solarized-dark/styles/footnote-text/color -> solarized-dark.json:151 +/ui/theme-defs/solarized-dark/styles/h1/underline -> solarized-dark.json:103 +/ui/theme-defs/solarized-dark/styles/h2/underline -> solarized-dark.json:106 +/ui/theme-defs/solarized-dark/styles/h3/underline -> solarized-dark.json:109 +/ui/theme-defs/solarized-dark/styles/h4/underline -> solarized-dark.json:112 +/ui/theme-defs/solarized-dark/styles/h5/underline -> solarized-dark.json:115 +/ui/theme-defs/solarized-dark/styles/h6/underline -> solarized-dark.json:118 +/ui/theme-defs/solarized-dark/styles/hidden/bold -> solarized-dark.json:59 +/ui/theme-defs/solarized-dark/styles/hidden/color -> solarized-dark.json:58 +/ui/theme-defs/solarized-dark/styles/hr/color -> solarized-dark.json:121 +/ui/theme-defs/solarized-dark/styles/hyperlink/underline -> solarized-dark.json:124 +/ui/theme-defs/solarized-dark/styles/identifier/background-color -> solarized-dark.json:28 +/ui/theme-defs/solarized-dark/styles/identifier/color -> solarized-dark.json:29 +/ui/theme-defs/solarized-dark/styles/indent-guide/color -> solarized-dark.json:158 +/ui/theme-defs/solarized-dark/styles/info/bold -> solarized-dark.json:47 +/ui/theme-defs/solarized-dark/styles/info/color -> solarized-dark.json:46 +/ui/theme-defs/solarized-dark/styles/invalid-msg/color -> solarized-dark.json:84 +/ui/theme-defs/solarized-dark/styles/list-glyph/color -> solarized-dark.json:127 +/ui/theme-defs/solarized-dark/styles/offset-time/color -> solarized-dark.json:78 +/ui/theme-defs/solarized-dark/styles/ok/bold -> solarized-dark.json:43 +/ui/theme-defs/solarized-dark/styles/ok/color -> solarized-dark.json:42 +/ui/theme-defs/solarized-dark/styles/popup/background-color -> solarized-dark.json:88 +/ui/theme-defs/solarized-dark/styles/popup/color -> solarized-dark.json:87 +/ui/theme-defs/solarized-dark/styles/quote-border/background-color -> solarized-dark.json:141 +/ui/theme-defs/solarized-dark/styles/quote-border/color -> solarized-dark.json:140 +/ui/theme-defs/solarized-dark/styles/quoted-text/background-color -> solarized-dark.json:144 +/ui/theme-defs/solarized-dark/styles/scrollbar/background-color -> solarized-dark.json:92 +/ui/theme-defs/solarized-dark/styles/scrollbar/color -> solarized-dark.json:91 +/ui/theme-defs/solarized-dark/styles/selected-text/background-color -> solarized-dark.json:36 +/ui/theme-defs/solarized-dark/styles/skewed-time/color -> solarized-dark.json:75 +/ui/theme-defs/solarized-dark/styles/snippet-border/color -> solarized-dark.json:155 +/ui/theme-defs/solarized-dark/styles/table-border/color -> solarized-dark.json:134 +/ui/theme-defs/solarized-dark/styles/table-header/bold -> solarized-dark.json:137 +/ui/theme-defs/solarized-dark/styles/text/background-color -> solarized-dark.json:33 +/ui/theme-defs/solarized-dark/styles/text/color -> solarized-dark.json:32 +/ui/theme-defs/solarized-dark/styles/warning/bold -> solarized-dark.json:55 +/ui/theme-defs/solarized-dark/styles/warning/color -> solarized-dark.json:54 +/ui/theme-defs/solarized-dark/syntax-styles/ascii-control/color -> solarized-dark.json:224 +/ui/theme-defs/solarized-dark/syntax-styles/code-border/background-color -> solarized-dark.json:172 +/ui/theme-defs/solarized-dark/syntax-styles/code-border/color -> solarized-dark.json:171 +/ui/theme-defs/solarized-dark/syntax-styles/comment/color -> solarized-dark.json:182 +/ui/theme-defs/solarized-dark/syntax-styles/diff-add/color -> solarized-dark.json:203 +/ui/theme-defs/solarized-dark/syntax-styles/diff-delete/color -> solarized-dark.json:200 +/ui/theme-defs/solarized-dark/syntax-styles/diff-section/color -> solarized-dark.json:206 +/ui/theme-defs/solarized-dark/syntax-styles/doc-directive/color -> solarized-dark.json:185 +/ui/theme-defs/solarized-dark/syntax-styles/file/color -> solarized-dark.json:218 +/ui/theme-defs/solarized-dark/syntax-styles/function/color -> solarized-dark.json:233 +/ui/theme-defs/solarized-dark/syntax-styles/inline-code/background-color -> solarized-dark.json:164 +/ui/theme-defs/solarized-dark/syntax-styles/inline-code/color -> solarized-dark.json:163 +/ui/theme-defs/solarized-dark/syntax-styles/keyword/color -> solarized-dark.json:175 +/ui/theme-defs/solarized-dark/syntax-styles/non-ascii/color -> solarized-dark.json:227 +/ui/theme-defs/solarized-dark/syntax-styles/null/color -> solarized-dark.json:221 +/ui/theme-defs/solarized-dark/syntax-styles/number/bold -> solarized-dark.json:230 +/ui/theme-defs/solarized-dark/syntax-styles/quoted-code/background-color -> solarized-dark.json:168 +/ui/theme-defs/solarized-dark/syntax-styles/quoted-code/color -> solarized-dark.json:167 +/ui/theme-defs/solarized-dark/syntax-styles/re-repeat/color -> solarized-dark.json:197 +/ui/theme-defs/solarized-dark/syntax-styles/re-special/color -> solarized-dark.json:194 +/ui/theme-defs/solarized-dark/syntax-styles/separators-references-accessors/color -> solarized-dark.json:236 +/ui/theme-defs/solarized-dark/syntax-styles/spectrogram-high/background-color -> solarized-dark.json:215 +/ui/theme-defs/solarized-dark/syntax-styles/spectrogram-low/background-color -> solarized-dark.json:209 +/ui/theme-defs/solarized-dark/syntax-styles/spectrogram-medium/background-color -> solarized-dark.json:212 +/ui/theme-defs/solarized-dark/syntax-styles/string/bold -> solarized-dark.json:179 +/ui/theme-defs/solarized-dark/syntax-styles/string/color -> solarized-dark.json:178 +/ui/theme-defs/solarized-dark/syntax-styles/symbol/color -> solarized-dark.json:191 +/ui/theme-defs/solarized-dark/syntax-styles/type/color -> solarized-dark.json:239 +/ui/theme-defs/solarized-dark/syntax-styles/variable/color -> solarized-dark.json:188 +/ui/theme-defs/solarized-dark/vars/base0 -> solarized-dark.json:11 +/ui/theme-defs/solarized-dark/vars/base00 -> solarized-dark.json:10 +/ui/theme-defs/solarized-dark/vars/base01 -> solarized-dark.json:9 +/ui/theme-defs/solarized-dark/vars/base02 -> solarized-dark.json:8 +/ui/theme-defs/solarized-dark/vars/base03 -> solarized-dark.json:7 +/ui/theme-defs/solarized-dark/vars/base1 -> solarized-dark.json:12 +/ui/theme-defs/solarized-dark/vars/base2 -> solarized-dark.json:13 +/ui/theme-defs/solarized-dark/vars/base3 -> solarized-dark.json:14 +/ui/theme-defs/solarized-dark/vars/black -> solarized-dark.json:15 +/ui/theme-defs/solarized-dark/vars/blue -> solarized-dark.json:21 +/ui/theme-defs/solarized-dark/vars/cyan -> solarized-dark.json:22 +/ui/theme-defs/solarized-dark/vars/green -> solarized-dark.json:23 +/ui/theme-defs/solarized-dark/vars/magenta -> solarized-dark.json:19 +/ui/theme-defs/solarized-dark/vars/orange -> solarized-dark.json:17 +/ui/theme-defs/solarized-dark/vars/red -> solarized-dark.json:18 +/ui/theme-defs/solarized-dark/vars/semantic_highlight_color -> solarized-dark.json:24 +/ui/theme-defs/solarized-dark/vars/violet -> solarized-dark.json:20 +/ui/theme-defs/solarized-dark/vars/yellow -> solarized-dark.json:16 +/ui/theme-defs/solarized-light/log-level-styles/critical/color -> solarized-light.json:257 +/ui/theme-defs/solarized-light/log-level-styles/error/color -> solarized-light.json:254 +/ui/theme-defs/solarized-light/log-level-styles/fatal/color -> solarized-light.json:260 +/ui/theme-defs/solarized-light/log-level-styles/warning/color -> solarized-light.json:251 +/ui/theme-defs/solarized-light/status-styles/active/background-color -> solarized-light.json:231 +/ui/theme-defs/solarized-light/status-styles/active/color -> solarized-light.json:230 +/ui/theme-defs/solarized-light/status-styles/alert/background-color -> solarized-light.json:227 +/ui/theme-defs/solarized-light/status-styles/alert/color -> solarized-light.json:226 +/ui/theme-defs/solarized-light/status-styles/disabled-title/background-color -> solarized-light.json:209 +/ui/theme-defs/solarized-light/status-styles/disabled-title/bold -> solarized-light.json:210 +/ui/theme-defs/solarized-light/status-styles/disabled-title/color -> solarized-light.json:208 +/ui/theme-defs/solarized-light/status-styles/inactive-alert/background-color -> solarized-light.json:243 +/ui/theme-defs/solarized-light/status-styles/inactive-alert/color -> solarized-light.json:242 +/ui/theme-defs/solarized-light/status-styles/inactive/background-color -> solarized-light.json:239 +/ui/theme-defs/solarized-light/status-styles/inactive/color -> solarized-light.json:238 +/ui/theme-defs/solarized-light/status-styles/info/background-color -> solarized-light.json:235 +/ui/theme-defs/solarized-light/status-styles/info/color -> solarized-light.json:234 +/ui/theme-defs/solarized-light/status-styles/subtitle/background-color -> solarized-light.json:214 +/ui/theme-defs/solarized-light/status-styles/subtitle/bold -> solarized-light.json:215 +/ui/theme-defs/solarized-light/status-styles/subtitle/color -> solarized-light.json:213 +/ui/theme-defs/solarized-light/status-styles/suggestion/color -> solarized-light.json:246 +/ui/theme-defs/solarized-light/status-styles/text/background-color -> solarized-light.json:219 +/ui/theme-defs/solarized-light/status-styles/text/color -> solarized-light.json:218 +/ui/theme-defs/solarized-light/status-styles/title/background-color -> solarized-light.json:204 +/ui/theme-defs/solarized-light/status-styles/title/bold -> solarized-light.json:205 +/ui/theme-defs/solarized-light/status-styles/title/color -> solarized-light.json:203 +/ui/theme-defs/solarized-light/status-styles/warn/background-color -> solarized-light.json:223 +/ui/theme-defs/solarized-light/status-styles/warn/color -> solarized-light.json:222 +/ui/theme-defs/solarized-light/styles/adjusted-time/color -> solarized-light.json:67 +/ui/theme-defs/solarized-light/styles/alt-text/background-color -> solarized-light.json:38 +/ui/theme-defs/solarized-light/styles/breadcrumb/bold -> solarized-light.json:123 +/ui/theme-defs/solarized-light/styles/breadcrumb/color -> solarized-light.json:122 +/ui/theme-defs/solarized-light/styles/cursor-line/background-color -> solarized-light.json:58 +/ui/theme-defs/solarized-light/styles/cursor-line/bold -> solarized-light.json:59 +/ui/theme-defs/solarized-light/styles/cursor-line/color -> solarized-light.json:57 +/ui/theme-defs/solarized-light/styles/cursor-line/underline -> solarized-light.json:60 +/ui/theme-defs/solarized-light/styles/disabled-cursor-line/background-color -> solarized-light.json:64 +/ui/theme-defs/solarized-light/styles/disabled-cursor-line/color -> solarized-light.json:63 +/ui/theme-defs/solarized-light/styles/disabled-focused/background-color -> solarized-light.json:92 +/ui/theme-defs/solarized-light/styles/disabled-focused/color -> solarized-light.json:91 +/ui/theme-defs/solarized-light/styles/error/bold -> solarized-light.json:46 +/ui/theme-defs/solarized-light/styles/error/color -> solarized-light.json:45 +/ui/theme-defs/solarized-light/styles/focused/background-color -> solarized-light.json:88 +/ui/theme-defs/solarized-light/styles/focused/color -> solarized-light.json:87 +/ui/theme-defs/solarized-light/styles/footnote-border/background-color -> solarized-light.json:140 +/ui/theme-defs/solarized-light/styles/footnote-border/color -> solarized-light.json:139 +/ui/theme-defs/solarized-light/styles/footnote-text/background-color -> solarized-light.json:144 +/ui/theme-defs/solarized-light/styles/footnote-text/color -> solarized-light.json:143 +/ui/theme-defs/solarized-light/styles/h1/underline -> solarized-light.json:95 +/ui/theme-defs/solarized-light/styles/h2/underline -> solarized-light.json:98 +/ui/theme-defs/solarized-light/styles/h3/underline -> solarized-light.json:101 +/ui/theme-defs/solarized-light/styles/h4/underline -> solarized-light.json:104 +/ui/theme-defs/solarized-light/styles/h5/underline -> solarized-light.json:107 +/ui/theme-defs/solarized-light/styles/h6/underline -> solarized-light.json:110 +/ui/theme-defs/solarized-light/styles/hidden/bold -> solarized-light.json:54 +/ui/theme-defs/solarized-light/styles/hidden/color -> solarized-light.json:53 +/ui/theme-defs/solarized-light/styles/hr/color -> solarized-light.json:113 +/ui/theme-defs/solarized-light/styles/hyperlink/underline -> solarized-light.json:116 +/ui/theme-defs/solarized-light/styles/identifier/color -> solarized-light.json:28 +/ui/theme-defs/solarized-light/styles/indent-guide/color -> solarized-light.json:150 +/ui/theme-defs/solarized-light/styles/invalid-msg/color -> solarized-light.json:76 +/ui/theme-defs/solarized-light/styles/list-glyph/color -> solarized-light.json:119 +/ui/theme-defs/solarized-light/styles/offset-time/color -> solarized-light.json:73 +/ui/theme-defs/solarized-light/styles/ok/bold -> solarized-light.json:42 +/ui/theme-defs/solarized-light/styles/ok/color -> solarized-light.json:41 +/ui/theme-defs/solarized-light/styles/popup/background-color -> solarized-light.json:80 +/ui/theme-defs/solarized-light/styles/popup/color -> solarized-light.json:79 +/ui/theme-defs/solarized-light/styles/quote-border/background-color -> solarized-light.json:133 +/ui/theme-defs/solarized-light/styles/quote-border/color -> solarized-light.json:132 +/ui/theme-defs/solarized-light/styles/quoted-text/background-color -> solarized-light.json:136 +/ui/theme-defs/solarized-light/styles/scrollbar/background-color -> solarized-light.json:84 +/ui/theme-defs/solarized-light/styles/scrollbar/color -> solarized-light.json:83 +/ui/theme-defs/solarized-light/styles/selected-text/background-color -> solarized-light.json:35 +/ui/theme-defs/solarized-light/styles/skewed-time/color -> solarized-light.json:70 +/ui/theme-defs/solarized-light/styles/snippet-border/color -> solarized-light.json:147 +/ui/theme-defs/solarized-light/styles/table-border/color -> solarized-light.json:126 +/ui/theme-defs/solarized-light/styles/table-header/bold -> solarized-light.json:129 +/ui/theme-defs/solarized-light/styles/text/background-color -> solarized-light.json:32 +/ui/theme-defs/solarized-light/styles/text/color -> solarized-light.json:31 +/ui/theme-defs/solarized-light/styles/warning/bold -> solarized-light.json:50 +/ui/theme-defs/solarized-light/styles/warning/color -> solarized-light.json:49 +/ui/theme-defs/solarized-light/syntax-styles/comment/color -> solarized-light.json:162 +/ui/theme-defs/solarized-light/syntax-styles/diff-add/color -> solarized-light.json:183 +/ui/theme-defs/solarized-light/syntax-styles/diff-delete/color -> solarized-light.json:180 +/ui/theme-defs/solarized-light/syntax-styles/diff-section/color -> solarized-light.json:186 +/ui/theme-defs/solarized-light/syntax-styles/doc-directive/color -> solarized-light.json:165 +/ui/theme-defs/solarized-light/syntax-styles/file/color -> solarized-light.json:198 +/ui/theme-defs/solarized-light/syntax-styles/keyword/color -> solarized-light.json:155 +/ui/theme-defs/solarized-light/syntax-styles/re-repeat/color -> solarized-light.json:177 +/ui/theme-defs/solarized-light/syntax-styles/re-special/color -> solarized-light.json:174 +/ui/theme-defs/solarized-light/syntax-styles/spectrogram-high/background-color -> solarized-light.json:195 +/ui/theme-defs/solarized-light/syntax-styles/spectrogram-low/background-color -> solarized-light.json:189 +/ui/theme-defs/solarized-light/syntax-styles/spectrogram-medium/background-color -> solarized-light.json:192 +/ui/theme-defs/solarized-light/syntax-styles/string/bold -> solarized-light.json:159 +/ui/theme-defs/solarized-light/syntax-styles/string/color -> solarized-light.json:158 +/ui/theme-defs/solarized-light/syntax-styles/symbol/color -> solarized-light.json:171 +/ui/theme-defs/solarized-light/syntax-styles/variable/color -> solarized-light.json:168 +/ui/theme-defs/solarized-light/vars/base0 -> solarized-light.json:11 +/ui/theme-defs/solarized-light/vars/base00 -> solarized-light.json:10 +/ui/theme-defs/solarized-light/vars/base01 -> solarized-light.json:9 +/ui/theme-defs/solarized-light/vars/base02 -> solarized-light.json:8 +/ui/theme-defs/solarized-light/vars/base03 -> solarized-light.json:7 +/ui/theme-defs/solarized-light/vars/base1 -> solarized-light.json:12 +/ui/theme-defs/solarized-light/vars/base2 -> solarized-light.json:13 +/ui/theme-defs/solarized-light/vars/base3 -> solarized-light.json:14 +/ui/theme-defs/solarized-light/vars/black -> solarized-light.json:15 +/ui/theme-defs/solarized-light/vars/blue -> solarized-light.json:21 +/ui/theme-defs/solarized-light/vars/cyan -> solarized-light.json:22 +/ui/theme-defs/solarized-light/vars/green -> solarized-light.json:23 +/ui/theme-defs/solarized-light/vars/magenta -> solarized-light.json:19 +/ui/theme-defs/solarized-light/vars/orange -> solarized-light.json:17 +/ui/theme-defs/solarized-light/vars/red -> solarized-light.json:18 +/ui/theme-defs/solarized-light/vars/semantic_highlight_color -> solarized-light.json:24 +/ui/theme-defs/solarized-light/vars/violet -> solarized-light.json:20 +/ui/theme-defs/solarized-light/vars/yellow -> solarized-light.json:16 diff --git a/test/expected/test_cli.sh_f2e41555f1a5f40f54ce241207af602ed1503a2b.out b/test/expected/test_cli.sh_f2e41555f1a5f40f54ce241207af602ed1503a2b.out index 751c83b..2db5d3c 100644 --- a/test/expected/test_cli.sh_f2e41555f1a5f40f54ce241207af602ed1503a2b.out +++ b/test/expected/test_cli.sh_f2e41555f1a5f40f54ce241207af602ed1503a2b.out @@ -1,2 +1,2 @@ -[1m[4mfilepath [0m[1m[4m[7mlines [0m -[1m[7mstdin [0m[1m[7m [0m[1m[7m 4[0m[1m [0m +[1m[4mfilepath[0m[1m[4m [0m[1m[4m[7m lines [0m[1m[4m [0m +stdin [7m 4[0m diff --git a/test/expected/test_logfile.sh_1c6eee38f66356fcd9a9f0faedaea6dbcc901060.err b/test/expected/test_cli.sh_ff7da172f4350a2adb74b8764575823d798ed8b6.err index e69de29..e69de29 100644 --- a/test/expected/test_logfile.sh_1c6eee38f66356fcd9a9f0faedaea6dbcc901060.err +++ b/test/expected/test_cli.sh_ff7da172f4350a2adb74b8764575823d798ed8b6.err diff --git a/test/expected/test_cli.sh_ff7da172f4350a2adb74b8764575823d798ed8b6.out b/test/expected/test_cli.sh_ff7da172f4350a2adb74b8764575823d798ed8b6.out new file mode 100644 index 0000000..8d4265f --- /dev/null +++ b/test/expected/test_cli.sh_ff7da172f4350a2adb74b8764575823d798ed8b6.out @@ -0,0 +1,2 @@ +Hello, World! +Goodbye, World! diff --git a/test/expected/test_cmds.sh_015ffe79a08f4c9f0cd1cb84c6afa4398f879fc7.err b/test/expected/test_cmds.sh_015ffe79a08f4c9f0cd1cb84c6afa4398f879fc7.err new file mode 100644 index 0000000..23dd3a4 --- /dev/null +++ b/test/expected/test_cmds.sh_015ffe79a08f4c9f0cd1cb84c6afa4398f879fc7.err @@ -0,0 +1,7 @@ +[1m[31m✘ error[0m: cannot access -- /bad-dir + [1m[31mreason[0m: No such file or directory +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m:[0m[1m[36m[40mcd[0m[37m[40m /bad-dir [0m +[36m =[0m [36mhelp[0m: [4m:[0m[1m[4mcd[0m[4m [0m[4mdir[0m + ══════════════════════════════════════════════════════════════════════ + Change the current directory diff --git a/test/expected/test_sessions.sh_8732dad5481be991ca7f291d9c5451c7b016cea7.err b/test/expected/test_cmds.sh_015ffe79a08f4c9f0cd1cb84c6afa4398f879fc7.out index e69de29..e69de29 100644 --- a/test/expected/test_sessions.sh_8732dad5481be991ca7f291d9c5451c7b016cea7.err +++ b/test/expected/test_cmds.sh_015ffe79a08f4c9f0cd1cb84c6afa4398f879fc7.out diff --git a/test/expected/test_cmds.sh_017b495b95218b7c083951e2dba331cfec6e90be.err b/test/expected/test_cmds.sh_017b495b95218b7c083951e2dba331cfec6e90be.err index 0d53487..8ecc11d 100644 --- a/test/expected/test_cmds.sh_017b495b95218b7c083951e2dba331cfec6e90be.err +++ b/test/expected/test_cmds.sh_017b495b95218b7c083951e2dba331cfec6e90be.err @@ -1,6 +1,6 @@ [1m[31m✘ error[0m: no log files loaded [36m --> [0m[1mcommand-option[0m:2 [36m | [0m[37m[40m:close [0m -[36m =[0m [36mhelp[0m: [4m:[0m[1m[4mclose[0m +[36m =[0m [36mhelp[0m: [4m:[0m[1m[4mclose[0m[4m [0m[4mpath[0m ══════════════════════════════════════════════════════════════════════ - Close the top file in the view + Close the given file(s) or the top file in the view diff --git a/test/expected/test_cmds.sh_1d92c5bc12f5e7aaa6d84c5ed47f0b9f96e36c6a.out b/test/expected/test_cmds.sh_1d92c5bc12f5e7aaa6d84c5ed47f0b9f96e36c6a.out index 6dfcc1c..227341b 100644 --- a/test/expected/test_cmds.sh_1d92c5bc12f5e7aaa6d84c5ed47f0b9f96e36c6a.out +++ b/test/expected/test_cmds.sh_1d92c5bc12f5e7aaa6d84c5ed47f0b9f96e36c6a.out @@ -1,14 +1,8 @@ [ { "log_line": 0, - "log_part": null, "log_time": "2009-07-20 22:59:26.000", - "log_idle_msecs": 0, "log_level": "info", - "log_mark": 0, - "log_comment": null, - "log_tags": null, - "log_filters": null, "c_ip": "192.168.202.254", "cs_method": "GET", "cs_referer": "-", @@ -19,18 +13,19 @@ "cs_version": "HTTP/1.0", "sc_bytes": 134, "sc_status": 200, - "cs_host": null + "cs_host": null, + "log_part": null, + "log_idle_msecs": 0, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null }, { "log_line": 1, - "log_part": null, "log_time": "2009-07-20 22:59:29.000", - "log_idle_msecs": 3000, "log_level": "error", - "log_mark": 0, - "log_comment": null, - "log_tags": null, - "log_filters": null, "c_ip": "192.168.202.254", "cs_method": "GET", "cs_referer": "-", @@ -41,18 +36,19 @@ "cs_version": "HTTP/1.0", "sc_bytes": 46210, "sc_status": 404, - "cs_host": null + "cs_host": null, + "log_part": null, + "log_idle_msecs": 3000, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null }, { "log_line": 2, - "log_part": null, "log_time": "2009-07-20 22:59:29.000", - "log_idle_msecs": 0, "log_level": "info", - "log_mark": 0, - "log_comment": null, - "log_tags": null, - "log_filters": null, "c_ip": "192.168.202.254", "cs_method": "GET", "cs_referer": "-", @@ -63,6 +59,13 @@ "cs_version": "HTTP/1.0", "sc_bytes": 78929, "sc_status": 200, - "cs_host": null + "cs_host": null, + "log_part": null, + "log_idle_msecs": 0, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null } ] diff --git a/test/expected/test_cmds.sh_2e123104cdd2087ac40731a0aa533ba6a87ea744.out b/test/expected/test_cmds.sh_2e123104cdd2087ac40731a0aa533ba6a87ea744.out index 8c91cd9..156d9d9 100644 --- a/test/expected/test_cmds.sh_2e123104cdd2087ac40731a0aa533ba6a87ea744.out +++ b/test/expected/test_cmds.sh_2e123104cdd2087ac40731a0aa533ba6a87ea744.out @@ -1 +1 @@ -[31m2009-07-20 22:59:30,221:[0m[31mERROR[0m[31m:[0m[7m[31mGoodbye[0m[31m, World![0m +[31m2009-07-20 22:59:30,221[0m[31m:ERROR[0m[31m:[0m[7m[31mGoodbye[0m[31m, World![0m diff --git a/test/expected/test_cmds.sh_2e67bdbbc9a14aa772b2a9f755ed8f8124708558.out b/test/expected/test_cmds.sh_2e67bdbbc9a14aa772b2a9f755ed8f8124708558.out index 3f55261..ce0cfbf 100644 --- a/test/expected/test_cmds.sh_2e67bdbbc9a14aa772b2a9f755ed8f8124708558.out +++ b/test/expected/test_cmds.sh_2e67bdbbc9a14aa772b2a9f755ed8f8124708558.out @@ -1,23 +1,23 @@ -Apr 7 00:49:42 Tim-Abaft-iMac abashed[0]: Aberrant [abhorrent5701Aberrant]: Link up on en0, 1-Aboard, Full-abortive, Abounding flow-abrupt, Absent [796d,2301,0de1,0300,cde1,3800] -Apr 7 05:49:53 Tim-Abaft-iMac.absorbing Abstracted[17212]: -[absurd abundant] absurd abusive accept: <acceptable:0x511f30 - accessible=<KSOmahaServer:0x510d80> - url="https://achondroplasia.example.com/account/accurate2" - achiever=0 - acid=1 - acidic=1 - acoustic=1 +Apr 7 00:49:42 Tim-Stacks-iMac aback[0]: Abaft [abandoned5701Abaft]: Link up on en0, 1-Gigabit, Full-duplex, Ablaze flow-control, Able [796d,2301,0de1,0300,cde1,3800] +Apr 7 05:49:53 Tim-Stacks-iMac.local Aboard[17212]: -[aboriginal abortive] aboriginal abounding abrasive: <abrupt:0x511f30 + absent=<KSOmahaServer:0x510d80> + url="https://achondroplasia.example.com/absorbing/abstracted2" + absurd=0 + abundant=1 + abusive=1 + accept=1 body= <?xml version="1.0" encoding="UTF-8" standalone="yes"?> - <o:gupdate xmlns:o="http://acinetobacter-infections.example.com/accurate2/acrid" protocol="2.0" version="Act-1.2.0.7709" ismachine="1" requestid="{1ca0a968-cbe9-e75b-d00b-4859609878ea}"> - <o:os platform="mac" version="activity" sp="10.10.2_x86_64h"></o:os> - <o:app appid="com.actually.Ad hoc" version="1.2.0.7709" lang="en-us" installage="180" brand="GGLG"> + <o:gupdate xmlns:o="http://acinetobacter-infections.example.com/abstracted2/accessible" protocol="2.0" version="KeystoneDaemon-1.2.0.7709" ismachine="1" requestid="{1ca0a968-cbe9-e75b-d00b-4859609878ea}"> + <o:os platform="mac" version="account" sp="10.10.2_x86_64h"></o:os> + <o:app appid="com.achiever.Acid" version="1.2.0.7709" lang="en-us" installage="180" brand="GGLG"> <o:ping r="1" a="1"></o:ping> <o:updatecheck></o:updatecheck> </o:app> </o:gupdate> > -Apr 7 07:31:56 Tim-Abaft-iMac.absorbing Add[36403]: ADDICTED: The Adhesive adjoining adjustment is admit 10.9.2 adorable of 10.10.2. Use advice's afford afraid to get afterthought aggressive agonizing agree - Call agreement: -Apr 7 07:31:56 Tim-Abaft-iMac.absorbing Add[36403]: 0 Ahead 0x00007fff8a9b3d9b ___Adhesive_Air_airplane_airport + 113 -Apr 7 07:31:56 Tim-Abaft-iMac.absorbing Add[36403]: 1 ajar.alarm 0x00007fff8bc84c13 _alcoholic_alert_alike + 8 -Apr 7 07:32:56 Tim-Abaft-iMac.absorbing alive[234]: Bad data { abc, 123, 456 )}] +Apr 7 07:31:56 Tim-Stacks-iMac.local Acoustic[36403]: ACOUSTICS: The Act action activity is actually 10.9.2 ad hoc of 10.10.2. Use add's addition adhesive to get admire admit adorable adventurous + Call advice: +Apr 7 07:31:56 Tim-Stacks-iMac.local Acoustic[36403]: 0 Advise 0x00007fff8a9b3d9b ___Act_Afford_afraid_aftermath + 113 +Apr 7 07:31:56 Tim-Stacks-iMac.local Acoustic[36403]: 1 afternoon.afterthought 0x00007fff8bc84c13 _aggressive_agonizing_agree + 8 +Apr 7 07:32:56 Tim-Stacks-iMac.local agreeable[234]: Bad data { abc, 123, 456 )}] diff --git a/test/expected/test_cmds.sh_2ff0fe712c9b0012e42282c5f77b0b83cad37ddf.out b/test/expected/test_cmds.sh_2ff0fe712c9b0012e42282c5f77b0b83cad37ddf.out index c6eedf2..43bbc04 100644 --- a/test/expected/test_cmds.sh_2ff0fe712c9b0012e42282c5f77b0b83cad37ddf.out +++ b/test/expected/test_cmds.sh_2ff0fe712c9b0012e42282c5f77b0b83cad37ddf.out @@ -1 +1 @@ -[31m2009-07-20 22:59:30,221:[0m[31mERROR[0m[31m:Goodbye, World![0m +[31m2009-07-20 22:59:30,221[0m[31m:ERROR[0m[31m:Goodbye, World![0m diff --git a/test/expected/test_sessions.sh_e39648f425c3f291c9d1c0d14595a019abd0cb48.err b/test/expected/test_cmds.sh_3b4bea458c59d2bac492e568616b610625037ad0.err index e69de29..e69de29 100644 --- a/test/expected/test_sessions.sh_e39648f425c3f291c9d1c0d14595a019abd0cb48.err +++ b/test/expected/test_cmds.sh_3b4bea458c59d2bac492e568616b610625037ad0.err diff --git a/test/expected/test_cmds.sh_3b4bea458c59d2bac492e568616b610625037ad0.out b/test/expected/test_cmds.sh_3b4bea458c59d2bac492e568616b610625037ad0.out new file mode 100644 index 0000000..891f4a7 --- /dev/null +++ b/test/expected/test_cmds.sh_3b4bea458c59d2bac492e568616b610625037ad0.out @@ -0,0 +1,2 @@ +⋮:⋮:foo bar baz +[33m⋮[0m[33m:[0m[33m⋮[0m[33m:foo bar baz[0m diff --git a/test/expected/test_cmds.sh_453054e29aaca4c2662c45c2a1f2f63f3510d8dd.out b/test/expected/test_cmds.sh_453054e29aaca4c2662c45c2a1f2f63f3510d8dd.out index dcd3557..1192d46 100644 --- a/test/expected/test_cmds.sh_453054e29aaca4c2662c45c2a1f2f63f3510d8dd.out +++ b/test/expected/test_cmds.sh_453054e29aaca4c2662c45c2a1f2f63f3510d8dd.out @@ -1,2 +1,2 @@ -[7m[31m2009-07-20 22:59:30,221:[0m[7m[31mERROR[0m[7m[31m:Goodbye, World![0m -[31m2009-07-20 22:59:30,221:[0m[31mERROR[0m[31m:Goodbye, World![0m +[7m[31m2009-07-20 22:59:30,221[0m[7m[31m:ERROR[0m[7m[31m:Goodbye, World![0m +[31m2009-07-20 22:59:30,221[0m[31m:ERROR[0m[31m:Goodbye, World![0m diff --git a/test/expected/test_cmds.sh_4f06183ed231669965965f5042fbbb507fa7deab.out b/test/expected/test_cmds.sh_4f06183ed231669965965f5042fbbb507fa7deab.out index ef822cd..278a6d1 100644 --- a/test/expected/test_cmds.sh_4f06183ed231669965965f5042fbbb507fa7deab.out +++ b/test/expected/test_cmds.sh_4f06183ed231669965965f5042fbbb507fa7deab.out @@ -1,3 +1,3 @@ 2009-07-20 22:59:27,672:DEBUG:Hello, World! How are you today? -[31m2009-07-20 22:59:30,221:[0m[31mERROR[0m[31m:Goodbye, World![0m +[31m2009-07-20 22:59:30,221[0m[31m:ERROR[0m[31m:Goodbye, World![0m diff --git a/test/expected/test_cmds.sh_55c2fd15ec2c7d96dbef7b36a42a1b7b42f90dbc.err b/test/expected/test_cmds.sh_55c2fd15ec2c7d96dbef7b36a42a1b7b42f90dbc.err index e90b75a..5163792 100644 --- a/test/expected/test_cmds.sh_55c2fd15ec2c7d96dbef7b36a42a1b7b42f90dbc.err +++ b/test/expected/test_cmds.sh_55c2fd15ec2c7d96dbef7b36a42a1b7b42f90dbc.err @@ -1,4 +1,4 @@ [1m[31m✘ error[0m: unknown bookmark type: foobar [36m --> [0m[1mcommand-option[0m:2 [36m | [0m[37m[40m:[0m[1m[36m[40mnext-mark[0m[37m[40m foobar [0m -[36m =[0m [36mhelp[0m: available types: error, file, meta, search, user, user-expr, warning +[36m =[0m [36mhelp[0m: available types: error, file, meta, partition, search, user, user-expr, warning diff --git a/test/expected/test_sql_str_func.sh_3855d2cc0ab29171cae8e722f130adec25eae36e.out b/test/expected/test_cmds.sh_5630626e6f68c3d4a2c3e5f27d024df5950b88b5.err index e69de29..e69de29 100644 --- a/test/expected/test_sql_str_func.sh_3855d2cc0ab29171cae8e722f130adec25eae36e.out +++ b/test/expected/test_cmds.sh_5630626e6f68c3d4a2c3e5f27d024df5950b88b5.err diff --git a/test/expected/test_cmds.sh_5630626e6f68c3d4a2c3e5f27d024df5950b88b5.out b/test/expected/test_cmds.sh_5630626e6f68c3d4a2c3e5f27d024df5950b88b5.out new file mode 100644 index 0000000..f9264f7 --- /dev/null +++ b/test/expected/test_cmds.sh_5630626e6f68c3d4a2c3e5f27d024df5950b88b5.out @@ -0,0 +1,2 @@ +Hello +World diff --git a/test/expected/test_sql_yaml_func.sh_41c6abde708a69e74f5b7fde865d88fa75f91e0a.out b/test/expected/test_cmds.sh_68c774418bac897bd4d4fe9dbbf08454886b2e15.err index e69de29..e69de29 100644 --- a/test/expected/test_sql_yaml_func.sh_41c6abde708a69e74f5b7fde865d88fa75f91e0a.out +++ b/test/expected/test_cmds.sh_68c774418bac897bd4d4fe9dbbf08454886b2e15.err diff --git a/test/expected/test_cmds.sh_68c774418bac897bd4d4fe9dbbf08454886b2e15.out b/test/expected/test_cmds.sh_68c774418bac897bd4d4fe9dbbf08454886b2e15.out new file mode 100644 index 0000000..0dd4cb7 --- /dev/null +++ b/test/expected/test_cmds.sh_68c774418bac897bd4d4fe9dbbf08454886b2e15.out @@ -0,0 +1,3 @@ +192.168.202.254 - - [20/Jul/2009:22:59:26 +0000] "GET /vmw/cgi/tramp HTTP/1.0" 200 134 "-" "gPXE/0.9.7" +[31m192.168.202.254[0m[31m - [0m[31m-[0m[31m [[0m[31m20/Jul/2009:22:59:29 +0000[0m[31m] "[0m[31mGET[0m[31m [0m[31m/vmw/vSphere/default/vmkboot.gz[0m[31m [0m[31mHTTP/1.0[0m[31m" 404 46210 "[0m[31m-[0m[31m" "[0m[31mgPXE/0.9.7[0m[31m"[0m +192.168.202.254 - - [20/Jul/2009:22:59:29 +0000] "GET /vmw/vSphere/default/vmkernel.gz HTTP/1.0" 200 78929 "-" "gPXE/0.9.7" diff --git a/test/expected/test_cmds.sh_7cb644890c4b945ff3f1e15c86a58c85cb5425c0.out b/test/expected/test_cmds.sh_7cb644890c4b945ff3f1e15c86a58c85cb5425c0.out index 7ad9d78..6377559 100644 --- a/test/expected/test_cmds.sh_7cb644890c4b945ff3f1e15c86a58c85cb5425c0.out +++ b/test/expected/test_cmds.sh_7cb644890c4b945ff3f1e15c86a58c85cb5425c0.out @@ -1,5 +1,5 @@ -┏━━┳━━━━━━━━━━━━━┓ -┃c1┃ c2 ┃ -┡━━╇━━━━━━━━━━━━━┩ -│ 1│Hello, World!│ -└━━┴━━━━━━━━━━━━━┘ +┏━━━━━━━━━━┳━━━━━━━━━━━━━┓ +┃ c1 ┃ c2 ┃ +┡━━━━━━━━━━╇━━━━━━━━━━━━━┩ +│ 1│Hello, World!│ +└━━━━━━━━━━┴━━━━━━━━━━━━━┘ diff --git a/test/expected/test_text_file.sh_2e69c22dcfa37b5c3e8490a6026eacb7ca953998.out b/test/expected/test_cmds.sh_949826cc086c7a5c87270be172e3caa3bf8f928d.err index e69de29..e69de29 100644 --- a/test/expected/test_text_file.sh_2e69c22dcfa37b5c3e8490a6026eacb7ca953998.out +++ b/test/expected/test_cmds.sh_949826cc086c7a5c87270be172e3caa3bf8f928d.err diff --git a/test/expected/test_cmds.sh_949826cc086c7a5c87270be172e3caa3bf8f928d.out b/test/expected/test_cmds.sh_949826cc086c7a5c87270be172e3caa3bf8f928d.out new file mode 100644 index 0000000..0ac26ae --- /dev/null +++ b/test/expected/test_cmds.sh_949826cc086c7a5c87270be172e3caa3bf8f928d.out @@ -0,0 +1 @@ +{"ts": "2013-09-06T22:00:49.124817Z", "lvl": "INFO", "msg": "Shutting down service", "user": "steve@example.com"} info steve@example.com diff --git a/test/expected/test_text_file.sh_801414c6bb6d3f9225973eafa3c6dfa49cd2081d.err b/test/expected/test_cmds.sh_9527f941dc84a2ac3a030f222e41c6ccd1961cbe.err index e69de29..e69de29 100644 --- a/test/expected/test_text_file.sh_801414c6bb6d3f9225973eafa3c6dfa49cd2081d.err +++ b/test/expected/test_cmds.sh_9527f941dc84a2ac3a030f222e41c6ccd1961cbe.err diff --git a/test/expected/test_cmds.sh_9527f941dc84a2ac3a030f222e41c6ccd1961cbe.out b/test/expected/test_cmds.sh_9527f941dc84a2ac3a030f222e41c6ccd1961cbe.out new file mode 100644 index 0000000..b91e5b5 --- /dev/null +++ b/test/expected/test_cmds.sh_9527f941dc84a2ac3a030f222e41c6ccd1961cbe.out @@ -0,0 +1 @@ +[31mHello, World![0m diff --git a/test/expected/test_cmds.sh_a00943ef715598c7554b85de8502454e41bb9e28.out b/test/expected/test_cmds.sh_a00943ef715598c7554b85de8502454e41bb9e28.out index 01761e9..bcef8b0 100644 --- a/test/expected/test_cmds.sh_a00943ef715598c7554b85de8502454e41bb9e28.out +++ b/test/expected/test_cmds.sh_a00943ef715598c7554b85de8502454e41bb9e28.out @@ -1,4 +1,4 @@ -[7m Thu Nov 03 09:20:00 [0m[1m[7m[31m 1 normal 2 errors 0 warnings [0m 0 marks -[7m Thu Nov 03 09:45:00 [0m 1 normal 0 errors 0 warnings 0 marks -[1m[7m[31m Fri Feb 03 09:20:00 [0m 0 normal 1 errors 0 warnings 0 marks -[7m Wed Jan 03 09:20:00 [0m 1 normal 0 errors 0 warnings 0 marks +[7m Thu Nov 03 09:20:00 [0m[1m[7m[31m 1 normal 2 errors 0 warnings [0m 0 marks +[7m Thu Nov 03 09:45:00 [0m 1 normal 0 errors 0 warnings 0 marks +[1m[7m[31m Fri Feb 03 09:20:00 [0m[1m 0 normal 1 errors 0 warnings 0 marks[0m +[1m[7m Wed Jan 03 09:20:00 [0m[1m 1 normal 0 errors 0 warnings 0 marks[0m diff --git a/test/expected/test_cmds.sh_a0e6214b2a85c90d31aee12efde850441cca7eb3.out b/test/expected/test_cmds.sh_a0e6214b2a85c90d31aee12efde850441cca7eb3.out deleted file mode 100644 index 1d3eae4..0000000 --- a/test/expected/test_cmds.sh_a0e6214b2a85c90d31aee12efde850441cca7eb3.out +++ /dev/null @@ -1,2 +0,0 @@ -[1m[4mlog_top_line() [0m - 51 diff --git a/test/expected/test_cmds.sh_a8006c4169d76baecd99a0699c2fc66a583ad676.err b/test/expected/test_cmds.sh_a8006c4169d76baecd99a0699c2fc66a583ad676.err index 644b202..94f8e7b 100644 --- a/test/expected/test_cmds.sh_a8006c4169d76baecd99a0699c2fc66a583ad676.err +++ b/test/expected/test_cmds.sh_a8006c4169d76baecd99a0699c2fc66a583ad676.err @@ -3,5 +3,5 @@ [36m | [0m[37m[40m:[0m[1m[36m[40mfilter-out[0m[37m[40m 32 [0m [36m =[0m [36mhelp[0m: [4m:[0m[1m[4mfilter-out[0m[4m [0m[4mpattern[0m ══════════════════════════════════════════════════════════════════════ - Remove lines that match the given regular expression in the current - view + Remove lines that match the given regular expression in the + current view diff --git a/test/expected/test_cmds.sh_ac45fb0f8f9578c3ded0855f694698ec38ce31ad.out b/test/expected/test_cmds.sh_ac45fb0f8f9578c3ded0855f694698ec38ce31ad.out index fa6a319..877b967 100644 --- a/test/expected/test_cmds.sh_ac45fb0f8f9578c3ded0855f694698ec38ce31ad.out +++ b/test/expected/test_cmds.sh_ac45fb0f8f9578c3ded0855f694698ec38ce31ad.out @@ -1,12 +1,12 @@ { - [35m"foo bar"[0m: null, + [35m"foo bar"[0m: [1m[36mnull[0m, [35m"array"[0m: [ - 1, - 2, - 3 + [1m1[0m, + [1m2[0m, + [1m3[0m ], [35m"obj"[0m: { - [35m"one"[0m: 1, - [35m"two"[0m: true + [35m"one"[0m: [1m1[0m, + [35m"two"[0m: [1m[36mtrue[0m } } diff --git a/test/expected/test_cmds.sh_af0fcbd30b3fd0d13477aa3325ef0302052a4d9f.out b/test/expected/test_cmds.sh_af0fcbd30b3fd0d13477aa3325ef0302052a4d9f.out index be06882..f4f4bcd 100644 --- a/test/expected/test_cmds.sh_af0fcbd30b3fd0d13477aa3325ef0302052a4d9f.out +++ b/test/expected/test_cmds.sh_af0fcbd30b3fd0d13477aa3325ef0302052a4d9f.out @@ -1 +1 @@ -[7m [0mSat Nov 03 08:00:00 1 normal 0 errors 0 warnings 0 marks +[7m Sat Nov 03 08:00:00 1 normal 0 errors 0 warnings [0m 0 marks diff --git a/test/expected/test_text_file.sh_c21295f131c221861568bda5014b76ef99bdd11f.err b/test/expected/test_cmds.sh_b3d0588ad144a841200692b46125bddf66f5d8bb.err index e69de29..e69de29 100644 --- a/test/expected/test_text_file.sh_c21295f131c221861568bda5014b76ef99bdd11f.err +++ b/test/expected/test_cmds.sh_b3d0588ad144a841200692b46125bddf66f5d8bb.err diff --git a/test/expected/test_cmds.sh_b3d0588ad144a841200692b46125bddf66f5d8bb.out b/test/expected/test_cmds.sh_b3d0588ad144a841200692b46125bddf66f5d8bb.out new file mode 100644 index 0000000..8ab686e --- /dev/null +++ b/test/expected/test_cmds.sh_b3d0588ad144a841200692b46125bddf66f5d8bb.out @@ -0,0 +1 @@ +Hello, World! diff --git a/test/expected/test_cmds.sh_b6a3bb78e9d60e5e1f5ce5b18e40d2f1662707ab.out b/test/expected/test_cmds.sh_b6a3bb78e9d60e5e1f5ce5b18e40d2f1662707ab.out index aca5279..8352cf5 100644 --- a/test/expected/test_cmds.sh_b6a3bb78e9d60e5e1f5ce5b18e40d2f1662707ab.out +++ b/test/expected/test_cmds.sh_b6a3bb78e9d60e5e1f5ce5b18e40d2f1662707ab.out @@ -51,33 +51,27 @@ not have to manually specify the log file format. The currently supported formats are: syslog, apache, strace, tcsh history, and generic log files with timestamps. -Lnav will also display data piped in on the standard input. The -following options are available when doing so: - - [33m•[0m [37m[40m -t [0m Prepend timestamps to the lines of data being read - in on the standard input. - [33m•[0m [37m[40m -w file [0m Write the contents of the standard input to - this file. +Lnav will also display data piped in on the standard input. To automatically execute queries or lnav commands after the files have been loaded, you can use the following options: [33m•[0m [37m[40m -c cmd [0m A command, query, or file to execute. The first character determines the type of operation: a colon - ([37m[40m : [0m) is used for the built-in commands; a semi-colon ([37m[40m ;[0m - ) for SQL queries; and a pipe symbol ([37m[40m | [0m) for executing - a file containing other commands. For example, to open - the file "foo.log" and go to the tenth line in the file, - you can do: + ([37m[40m : [0m) is used for the built-in commands; a semi-colon ( + [37m[40m ; [0m) for SQL/PRQL queries; and a pipe symbol ([37m[40m | [0m) for + executing a file containing other commands. For example, + to open the file "foo.log" and go to the tenth line in + the file, you can do: ▌[37m[40mlnav -c [0m[35m[40m':goto 10'[0m[37m[40m foo.log [0m This option can be given multiple times to execute multiple operations in sequence. [33m•[0m [37m[40m -f file [0m A file that contains commands, queries, or - files to execute. This option is a shortcut for [37m[40m -c '|file'[0m - . You can use a dash ([37m[40m - [0m) to execute commands from the - standard input. + files to execute. This option is a shortcut for + [37m[40m -c '|file' [0m. You can use a dash ([37m[40m - [0m) to execute + commands from the standard input. To execute commands/queries without opening the interactive text UI, you can pass the [37m[40m -n [0m option. This combination of options allows you @@ -111,7 +105,8 @@ On color displays, the lines will be highlighted as follows: [33m•[0m Errors will be colored in [31mred[0m; [33m•[0m warnings will be [33myellow[0m; - [33m•[0m boundaries between days will be [4munderlined[0m; and + [33m•[0m boundaries between days will be [4munderlined[0m; + and [33m•[0m various color highlights will be applied to: IP addresses, SQL keywords, XML tags, file and line numbers in Java backtraces, and quoted strings. @@ -132,13 +127,14 @@ each message and pressing again will show the full paths. Above and below the main body are status lines that display a variety of information. The top line displays: - [33m•[0m The current time, configurable by the [37m[40m /ui/clock-format [0m - property. - [33m•[0m The highest priority message from the [37m[40m lnav_user_notifications [0m - table. You can insert rows into this table to display - your own status messages. The default message displayed - on startup explains how to focus on the next status line - at the top, which is an interactive breadcrumb bar. + [33m•[0m The current time, configurable by the + [37m[40m /ui/clock-format [0m property. + [33m•[0m The highest priority message from the + [37m[40m lnav_user_notifications [0m table. You can insert rows into + this table to display your own status messages. The + default message displayed on startup explains how to + focus on the next status line at the top, which is an + interactive breadcrumb bar. The second status line at the top display breadcrumbs for the top line in the main view. Pressing [37m[40m ENTER [0m will focus input on the breadcrumb @@ -147,8 +143,8 @@ breadcrumbs are: [33m•[0m The name of the current view. [33m•[0m In the log view, the timestamp of the top log message. - [33m•[0m In the log view, the format of the log file the top log - message is from. + [33m•[0m In the log view, the format of the log file the top + log message is from. [33m•[0m The name of the file the top line was pulled from. [33m•[0m If the top line is within a larger chunk of structured data, the path to the value in the top line will be @@ -156,8 +152,8 @@ breadcrumbs are: Notes: - [33m1.[0m Pressing [37m[40m CTRL-A [0m/[37m[40m CTRL-E [0m will select the first/last - breadcrumb. + [33m1.[0m Pressing [37m[40m CTRL-A [0m/[37m[40m CTRL-E [0m will select the + first/last breadcrumb. [33m2.[0m Typing text while a breadcrumb is selected will perform a fuzzy search on the possibilities. @@ -172,7 +168,8 @@ the following: [33m•[0m The number of enabled filters and the total number of filters. - [33m•[0m The number of lines not displayed because of filtering. + [33m•[0m The number of lines not displayed because of + filtering. To edit the filters, you can press TAB to change the focus from the main view to the filter editor. The editor allows you to create, @@ -207,14 +204,14 @@ can always use [37m[40m q [0m to pop the top view off of the stack. the log file view. Q Similar to [37m[40m q [0m, except it will try to sync the top time between the current and former views. For - example, when leaving the spectrogram view with [37m[40m Q[0m - , the top time in that view will be matched to the - top time in the log view. + example, when leaving the spectrogram view with + [37m[40m Q [0m, the top time in that view will be matched to + the top time in the log view. TAB Toggle focusing on the filter editor or the main view. ENTER Focus on the breadcrumb bar. - a/A Restore the view that was previously popped with [37m[40m q[0m - /[37m[40m Q [0m. The [37m[40m A [0m hotkey will try to match the top + a/A Restore the view that was previously popped with + [37m[40m q [0m/[37m[40m Q [0m. The [37m[40m A [0m hotkey will try to match the top times between the two views. X Close the current text file or log file. @@ -263,11 +260,10 @@ can always use [37m[40m q [0m to pop the top view off of the stack. and then the last message arrives five seconds later, the last message will be highlighted as a slow down. - {/} Move to the previous/next location in history. - Whenever you jump to a new location in the view, - the location will be added to the history. The - history is not updated when using only the arrow - keys. + {/} Move to the previous/next section in the view. In + the LOG view, this moves through partitions. In + other views, it moves through sections of + documents. [4mChronological Navigation[0m @@ -427,10 +423,10 @@ can always use [37m[40m q [0m to pop the top view off of the stack. name are treated as arguments can be referenced in the script using [37m[40m $1 [0m, [37m[40m $2 [0m, and so on, like in a shell script. - CTRL+], ESCAPE Abort command-line entry started with [37m[40m / [0m, [37m[40m : [0m, [37m[40m ;[0m - , or [37m[40m | [0m. + CTRL+], ESCAPE Abort command-line entry started with [37m[40m / [0m, [37m[40m : [0m, + [37m[40m ; [0m, or [37m[40m | [0m. - ▌[1mNote[0m: The regular expression format used by lnav is [4mPCRE[1][0m + ▌[1mNote[0m: The regular expression format used by lnav is ]8;;http://perldoc.perl.org/perlre.html\[4mPCRE[0m]8;;\[4m[1][0m ▌(Perl-Compatible Regular Expressions). ▌ ▌ ▌[1] - http://perldoc.perl.org/perlre.html @@ -471,14 +467,14 @@ mouse to mark lines of text and move the view by grabbing the scrollbar. NOTE: You need to manually enable this feature by setting the LNAV_EXP -environment variable to "mouse". F2 toggles mouse support. +environment variable to "mouse". [37m[40m F2 [0m toggles mouse support. -[1mSQL Queries (experimental)[0m +[1mLog Analysis[0m Lnav has support for performing SQL queries on log files using the -Sqlite3 "virtual" table feature. For all supported log file types, +SQLite3 "virtual" table feature. For all supported log file types, lnav will create tables that can be queried using the subset of SQL -that is supported by Sqlite3. For example, to get the top ten URLs +that is supported by SQLite3. For example, to get the top ten URLs being accessed in any loaded Apache log files, you can execute: ▌[37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[37m[40mcs_uri_stem[0m[37m[40m, [0m[1m[37m[40mcount[0m[37m[40m([0m[1m[37m[40m*[0m[37m[40m) [0m[1m[36m[40mAS[0m[37m[40m [0m[37m[40mtotal[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[37m[40maccess_log[0m[37m[40m [0m @@ -542,8 +538,8 @@ structured. log_procname The name of the process that sent the message. log_pid The process ID of the process that sent the message. - [33m•[0m [37m[40m access_log [0m (The column names are the same as those in - the Microsoft LogParser tool.) + [33m•[0m [37m[40m access_log [0m (The column names are the same as those + in the Microsoft LogParser tool.) Column Description ══════════════════════════════════════════════════════════ @@ -579,6 +575,37 @@ example of a top ten query into the "/tmp/topten.db" file, you can do: ▌[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[37m[40maccess_log[0m[37m[40m [0m[1m[36m[40mGROUP[0m[37m[40m [0m[1m[36m[40mBY[0m[37m[40m [0m[37m[40mcs_uri_stem[0m[37m[40m [0m[1m[36m[40mORDER[0m[37m[40m [0m[1m[36m[40mBY[0m[37m[40m [0m[37m[40mtotal[0m[37m[40m [0m[1m[36m[40mDESC[0m[37m[40m [0m ▌[37m[40m [0m[1m[36m[40mLIMIT[0m[37m[40m [0m[1m[37m[40m10[0m[37m[40m; [0m +[4mPRQL Support[0m + +The Pipelined Relational Query Language ]8;;https://prql-lang.org\[4m(PRQL)[0m]8;;\[4m[1][0m is an alternative +database query language that compiles to SQL. The main advantage of +PRQL, in the context of lnav, is that it is easier to work with +interactively compared to SQL. For example, lnav can provide previews +of different stages of the pipeline and provide more accurate +tab-completions for the columns in the result set. + + ▌[1] - https://prql-lang.org + +You can execute a PRQL query in the SQL prompt. A PRQL query starts +with the [37m[40m from [0m keyword that specifies the table to use as a data +source. The next stage of a pipeline is started by entering a pipe +symbol ([37m[40m | [0m) followed by a ]8;;https://prql-lang.org/book/reference/stdlib/transforms/index.html\[4mPRQL transform[0m]8;;\[4m[1][0m. As you build the query +in the prompt, lnav will display any relevant help and preview for the +current and previous stages of the pipeline. + + ▌[1] - https://prql-lang.org/book/reference/stdlib/transforms/index.html + +Using the top ten URLs query from earlier as an example, the PRQL +version would be as follows: + + ▌[37m[40m;[0m[1m[36m[40mfrom[0m[37m[40m [0m[37m[40maccess_log[0m[37m[40m | [0m[37m[40mstats[0m[37m[40m.[0m[37m[40mcount_by[0m[37m[40m [0m[37m[40mcs_uri_stem[0m[37m[40m | [0m[1m[36m[40mtake[0m[37m[40m [0m[1m[37m[40m10[0m[37m[40m [0m + +The first stage selects the data source, the web [37m[40m access_log [0m table in +this case. The [37m[40m stats.count_by [0m transform is a convenience provided +by lnav that groups by the given column, counts the rows in each +group, and sorts by count in descending order. The [37m[40m take 10 [0mturns +into the [37m[40m LIMIT 10 [0m. + [1mDynamic logline Table (experimental)[0m (NOTE: This feature is still very new and not completely reliable yet, @@ -702,7 +729,7 @@ For support questions, email: [4mParameter[0m [4mmsg[0m The message to display [4mSee Also[0m - [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:cd[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m [4mExample[0m @@ -711,26 +738,53 @@ For support questions, email: +[4m:[0m[1m[4mannotate[0m +══════════════════════════════════════════════════════════════════════ + Analyze the focused log message and attach annotations +[4mSee Also[0m + [1m:comment[0m, [1m:tag[0m + [4m:[0m[1m[4mappend-to[0m[4m [0m[4mpath[0m ══════════════════════════════════════════════════════════════════════ Append marked lines in the current view to the given file [4mParameter[0m [4mpath[0m The path to the file to append to [4mSee Also[0m - [1m:echo[0m, [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, - [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1mecholn()[0m + [1m.dump[0m, [1m.read[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, + [1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, + [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, + [1m:write-view-to[0m, [1mecholn()[0m [4mExample[0m #1 To append marked lines to the file /tmp/interesting-lines.txt: [37m[40m:[0m[1m[36m[40mappend-to[0m[37m[40m /tmp/interesting-lines.txt [0m +[4m:[0m[1m[4mcd[0m[4m [0m[4mdir[0m +══════════════════════════════════════════════════════════════════════ + Change the current directory +[4mParameter[0m + [4mdir[0m The new current directory +[4mSee Also[0m + [1m:alt-msg[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, + [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m + [4m:[0m[1m[4mclear-comment[0m ══════════════════════════════════════════════════════════════════════ Clear the comment attached to the top log line [4mSee Also[0m - [1m:comment[0m, [1m:tag[0m + [1m:annotate[0m, [1m:comment[0m, [1m:tag[0m + +[4m:[0m[1m[4mclear-file-timezone[0m[4m [0m[4mpattern[0m +══════════════════════════════════════════════════════════════════════ + Clear the timezone setting for the focused file or the given glob + pattern. +[4mParameter[0m + [4mpattern[0m The glob pattern to match against files that + should no longer use this timezone +[4mSee Also[0m + [1m:set-file-timezone[0m [4m:[0m[1m[4mclear-filter-expr[0m ══════════════════════════════════════════════════════════════════════ @@ -764,20 +818,24 @@ For support questions, email: Clear the partition the top line is a part of -[4m:[0m[1m[4mclose[0m +[4m:[0m[1m[4mclose[0m[4m [0m[4mpath[0m ══════════════════════════════════════════════════════════════════════ - Close the top file in the view + Close the given file(s) or the top file in the view +[4mParameter[0m + [4mpath[0m A path or glob pattern that specifies the files to + close [4m:[0m[1m[4mcomment[0m[4m [0m[4mtext[0m ══════════════════════════════════════════════════════════════════════ - Attach a comment to the top log line. The comment will be displayed - right below the log message it is associated with. The comment can - be formatted using markdown and you can add new-lines with '\n'. + Attach a comment to the top log line. The comment will be + displayed right below the log message it is associated with. The + comment can be formatted using markdown and you can add new-lines + with '\n'. [4mParameter[0m [4mtext[0m The comment text [4mSee Also[0m - [1m:clear-comment[0m, [1m:tag[0m + [1m:annotate[0m, [1m:clear-comment[0m, [1m:tag[0m [4mExample[0m #1 To add the comment 'This is where it all went wrong' to the top line: [37m[40m:[0m[1m[36m[40mcomment[0m[37m[40m This is where it all went wrong [0m @@ -803,9 +861,17 @@ For support questions, email: +[4m:[0m[1m[4mconvert-time-to[0m[4m [0m[4mzone[0m +══════════════════════════════════════════════════════════════════════ + Convert the focused timestamp to the given timezone +[4mParameter[0m + [4mzone[0m The timezone name + + [4m:[0m[1m[4mcreate-logline-table[0m[4m [0m[4mtable-name[0m ══════════════════════════════════════════════════════════════════════ - Create an SQL table using the top line of the log view as a template + Create an SQL table using the top line of the log view as a + template [4mParameter[0m [4mtable-name[0m The name for the new table [4mSee Also[0m @@ -823,8 +889,8 @@ For support questions, email: Create an SQL table based on a regex search [4mParameters[0m [4mtable-name[0m The name of the table to create - [4mpattern[0m The regular expression used to capture the - table columns. If not given, the current search + [4mpattern[0m The regular expression used to capture + the table columns. If not given, the current search pattern is used. [4mSee Also[0m [1m:create-logline-table[0m, [1m:create-logline-table[0m, [1m:delete-search-table[0m, @@ -834,14 +900,14 @@ For support questions, email: [4mExample[0m #1 To create a table named 'task_durations' that matches log messages with the pattern 'duration=(?<duration>\d+)': - [37m[40m:[0m[1m[36m[40mcreate-search-table[0m[37m[40m task_durations duration=[0m[1m[32m[40m([0m[1m[32m[40m?[0m[1m[36m[40m<[0m[37m[40mduration[0m[1m[36m[40m>[0m[1m[37m[40m\d[0m[1m[36m[40m+[0m[1m[32m[40m)[0m + [37m[40m:[0m[1m[36m[40mcreate-search-table[0m[37m[40m task_durations duration=[0m[1m[32m[40m([0m[1m[32m[40m?[0m[1m[36m[40m<[0m[37m[40mduration>[0m[1m[37m[40m\d[0m[1m[36m[40m+[0m[1m[32m[40m)[0m -[4m:[0m[1m[4mcurre[0m[1m[4mnt-time[0m +[4m:[0m[1m[4mcurrent-time[0m ══════════════════════════════════════════════════════════════════════ - Print the current time in human-readable form and seconds since the - epoch + Print the current time in human-readable form and seconds since + the epoch [4m:[0m[1m[4mdelete-filter[0m[4m [0m[4mpattern[0m @@ -896,7 +962,7 @@ For support questions, email: [4mParameter[0m [4mtag[0m The tags to delete [4mSee Also[0m - [1m:comment[0m, [1m:tag[0m + [1m:annotate[0m, [1m:comment[0m, [1m:tag[0m [4mExample[0m #1 To remove the tags '#BUG123' and '#needs-review' from all log lines: [37m[40m:[0m[1m[36m[40mdelete-tags[0m[37m[40m [0m[37m[40m#BUG123[0m[37m[40m [0m[37m[40m#needs-review[0m[37m[40m [0m @@ -934,12 +1000,13 @@ For support questions, email: [4m-n[0m Do not print a line-feed at the end of the output [4mmsg[0m The message to display [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m, - [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, - [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, - [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, - [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:eval[0m, [1m:export-session-to[0m, + [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, + [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, + [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, + [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, + [1m:write-view-to[0m, [1mecholn()[0m [4mExample[0m #1 To output 'Hello, World!': [37m[40m:[0m[1m[36m[40mecho[0m[37m[40m Hello, World! [0m @@ -972,9 +1039,10 @@ For support questions, email: Evaluate the given command/query after doing environment variable substitution [4mParameter[0m - [4mcommand[0m The command or query to perform substitution on. + [4mcommand[0m The command or query to perform substitution + on. [4mSee Also[0m - [1m:alt-msg[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:alt-msg[0m, [1m:cd[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m [4mExample[0m @@ -985,17 +1053,17 @@ For support questions, email: [4m:[0m[1m[4mexport-session-to[0m[4m [0m[4mpath[0m ══════════════════════════════════════════════════════════════════════ - Export the current lnav state to an executable lnav script file that - contains the commands needed to restore the current session + Export the current lnav state to an executable lnav script file + that contains the commands needed to restore the current session [4mParameter[0m [4mpath[0m The path to the file to write [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, - [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, - [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, - [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, - [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, - [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, + [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:sh[0m, + [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, + [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, + [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, + [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m [4m:[0m[1m[4mfilter-expr[0m[4m [0m[4mexpr[0m ══════════════════════════════════════════════════════════════════════ @@ -1035,8 +1103,8 @@ For support questions, email: [4m:[0m[1m[4mfilter-out[0m[4m [0m[4mpattern[0m ══════════════════════════════════════════════════════════════════════ - Remove lines that match the given regular expression in the current - view + Remove lines that match the given regular expression in the + current view [4mParameter[0m [4mpattern[0m The regular expression to match [4mSee Also[0m @@ -1056,7 +1124,8 @@ For support questions, email: number, percent into the file, timestamp, or an anchor in a text file [4mSee Also[0m - [1m:next-location[0m, [1m:next-mark[0m, [1m:prev-location[0m, [1m:prev-mark[0m, [1m:relative-goto[0m + [1m:next-location[0m, [1m:next-mark[0m, [1m:next-section[0m, [1m:prev-location[0m, [1m:prev-mark[0m, + [1m:prev-section[0m, [1m:relative-goto[0m [4mExamples[0m #1 To go to line 22: [37m[40m:[0m[1m[36m[40mgoto[0m[37m[40m 22 [0m @@ -1102,7 +1171,7 @@ For support questions, email: [4m:[0m[1m[4mhide-file[0m[4m [0m[4mpath[0m ══════════════════════════════════════════════════════════════════════ - Hide the given file(s) and skip indexing until it is shown again. + Hide the given file(s) and skip indexing until it is shown again. If no path is given, the current file in the view is hidden [4mParameter[0m [4mpath[0m A path or glob pattern that specifies the files to @@ -1154,8 +1223,8 @@ For support questions, email: [4m:[0m[1m[4mhighlight[0m[4m [0m[4mpattern[0m ══════════════════════════════════════════════════════════════════════ - Add coloring to log messages fragments that match the given regular - expression + Add coloring to log messages fragments that match the given + regular expression [4mParameter[0m [4mpattern[0m The regular expression to match [4mSee Also[0m @@ -1196,23 +1265,31 @@ For support questions, email: ══════════════════════════════════════════════════════════════════════ Move to the next position in the location history [4mSee Also[0m - [1m:goto[0m, [1m:next-mark[0m, [1m:prev-location[0m, [1m:prev-mark[0m, [1m:relative-goto[0m + [1m:goto[0m, [1m:next-mark[0m, [1m:next-section[0m, [1m:prev-location[0m, [1m:prev-mark[0m, + [1m:prev-section[0m, [1m:relative-goto[0m [4m:[0m[1m[4mnext-mark[0m[4m [0m[4mtype[0m[4m1[0m[4m [[0m[4m...[0m[4m [0m[4mtype[0m[4mN[0m[4m][0m ══════════════════════════════════════════════════════════════════════ Move to the next bookmark of the given type in the current view [4mParameter[0m - [4mtype[0m The type of bookmark -- error, warning, search, user, - file, meta + [4mtype[0m The type of bookmark -- error, warning, search, + user, file, meta [4mSee Also[0m - [1m:goto[0m, [1m:hide-unmarked-lines[0m, [1m:mark[0m, [1m:next-location[0m, [1m:prev-location[0m, - [1m:prev-mark[0m, [1m:prev-mark[0m, [1m:relative-goto[0m + [1m:goto[0m, [1m:hide-unmarked-lines[0m, [1m:mark[0m, [1m:next-location[0m, [1m:next-section[0m, + [1m:prev-location[0m, [1m:prev-mark[0m, [1m:prev-mark[0m, [1m:prev-section[0m, [1m:relative-goto[0m [4mExample[0m #1 To go to the next error: [37m[40m:[0m[1m[36m[40mnext-mark[0m[37m[40m error [0m +[4m:[0m[1m[4mnext-section[0m +══════════════════════════════════════════════════════════════════════ + Move to the next section in the document +[4mSee Also[0m + [1m:goto[0m, [1m:next-location[0m, [1m:next-mark[0m, [1m:prev-location[0m, [1m:prev-mark[0m, + [1m:prev-section[0m, [1m:relative-goto[0m + [4m:[0m[1m[4mopen[0m[4m [0m[4mpath[0m[4m1[0m[4m [[0m[4m...[0m[4m [0m[4mpath[0m[4mN[0m[4m][0m ══════════════════════════════════════════════════════════════════════ Open the given file(s) in lnav. Opening files on machines @@ -1246,13 +1323,15 @@ For support questions, email: [4m:[0m[1m[4mpipe-line-to[0m[4m [0m[4mshell-cmd[0m ══════════════════════════════════════════════════════════════════════ - Pipe the top line to the given shell command + Pipe the focused line to the given shell command. Any fields + defined by the format will be set as environment variables. [4mParameter[0m [4mshell-cmd[0m The shell command-line to execute [4mSee Also[0m - [1m:append-to[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:pipe-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, - [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1mecholn()[0m + [1m.dump[0m, [1m.read[0m, [1m:append-to[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:pipe-to[0m, + [1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, + [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, + [1m:write-view-to[0m, [1mecholn()[0m [4mExample[0m #1 To write the top line to 'sed' for processing: [37m[40m:[0m[1m[36m[40mpipe-line-to[0m[37m[40m sed -e 's/foo/bar/g' [0m @@ -1265,9 +1344,10 @@ For support questions, email: [4mParameter[0m [4mshell-cmd[0m The shell command-line to execute [4mSee Also[0m - [1m:append-to[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, - [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1mecholn()[0m + [1m.dump[0m, [1m.read[0m, [1m:append-to[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:pipe-line-to[0m, + [1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, + [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, + [1m:write-view-to[0m, [1mecholn()[0m [4mExample[0m #1 To write marked lines to 'sed' for processing: [37m[40m:[0m[1m[36m[40mpipe-to[0m[37m[40m sed -e s/foo/bar/g [0m @@ -1278,23 +1358,33 @@ For support questions, email: ══════════════════════════════════════════════════════════════════════ Move to the previous position in the location history [4mSee Also[0m - [1m:goto[0m, [1m:next-location[0m, [1m:next-mark[0m, [1m:prev-mark[0m, [1m:relative-goto[0m + [1m:goto[0m, [1m:next-location[0m, [1m:next-mark[0m, [1m:next-section[0m, [1m:prev-mark[0m, + [1m:prev-section[0m, [1m:relative-goto[0m [4m:[0m[1m[4mprev-mark[0m[4m [0m[4mtype[0m[4m1[0m[4m [[0m[4m...[0m[4m [0m[4mtype[0m[4mN[0m[4m][0m ══════════════════════════════════════════════════════════════════════ - Move to the previous bookmark of the given type in the current view + Move to the previous bookmark of the given type in the current + view [4mParameter[0m - [4mtype[0m The type of bookmark -- error, warning, search, user, - file, meta + [4mtype[0m The type of bookmark -- error, warning, search, + user, file, meta [4mSee Also[0m [1m:goto[0m, [1m:hide-unmarked-lines[0m, [1m:mark[0m, [1m:next-location[0m, [1m:next-mark[0m, - [1m:next-mark[0m, [1m:prev-location[0m, [1m:relative-goto[0m + [1m:next-mark[0m, [1m:next-section[0m, [1m:prev-location[0m, [1m:prev-section[0m, + [1m:relative-goto[0m [4mExample[0m #1 To go to the previous error: [37m[40m:[0m[1m[36m[40mprev-mark[0m[37m[40m error [0m +[4m:[0m[1m[4mprev-section[0m +══════════════════════════════════════════════════════════════════════ + Move to the previous section in the document +[4mSee Also[0m + [1m:goto[0m, [1m:next-location[0m, [1m:next-mark[0m, [1m:next-section[0m, [1m:prev-location[0m, + [1m:prev-mark[0m, [1m:relative-goto[0m + [4m:[0m[1m[4mprompt[0m[4m [0m[4mtype[0m[4m [[0m[4m--alt[0m[4m] [[0m[4mprompt[0m[4m] [[0m[4minitial-value[0m[4m][0m ══════════════════════════════════════════════════════════════════════ Open the given prompt @@ -1304,8 +1394,9 @@ For support questions, email: [4m--alt[0m Perform the alternate action for this prompt by default [4mprompt[0m The prompt to display - [4minitial-value[0m The initial value to fill in for the - prompt + [4mValues[0m: [1mbreadcrumb[0m|[1mcommand[0m|[1mscript[0m|[1msearch[0m|[1msql[0m + [4minitial-value[0m The initial value to fill in for + the prompt [4mExamples[0m #1 To open the command prompt with 'filter-in' already filled in: @@ -1336,7 +1427,7 @@ For support questions, email: ══════════════════════════════════════════════════════════════════════ Forcefully rebuild file indexes [4mSee Also[0m - [1m:alt-msg[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:redirect-to[0m, + [1m:alt-msg[0m, [1m:cd[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-view-to[0m @@ -1345,15 +1436,16 @@ For support questions, email: Redirect the output of commands that write to stdout to the given file [4mParameter[0m - [4mpath[0m The path to the file to write. If not specified, the - current redirect will be cleared + [4mpath[0m The path to the file to write. If not specified, + the current redirect will be cleared [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, - [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:write-csv-to[0m, - [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, - [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, - [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, - [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, + [1m:export-session-to[0m, [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, + [1m:rebuild[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, + [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, + [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, + [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, + [1m:write-view-to[0m, [1mecholn()[0m [4mExample[0m #1 To write the output of lnav commands to the file /tmp/script-output.txt: [37m[40m:[0m[1m[36m[40mredirect-to[0m[37m[40m /tmp/script-output.txt [0m @@ -1371,7 +1463,8 @@ For support questions, email: [4mParameter[0m [4mline-count|N%[0m The amount to move the view by. [4mSee Also[0m - [1m:goto[0m, [1m:next-location[0m, [1m:next-mark[0m, [1m:prev-location[0m, [1m:prev-mark[0m + [1m:goto[0m, [1m:next-location[0m, [1m:next-mark[0m, [1m:next-section[0m, [1m:prev-location[0m, + [1m:prev-mark[0m, [1m:prev-section[0m [4mExamples[0m #1 To move 22 lines down in the view: [37m[40m:[0m[1m[36m[40mrelative-goto[0m[37m[40m +22 [0m @@ -1418,6 +1511,18 @@ For support questions, email: +[4m:[0m[1m[4mset-file-timezone[0m[4m [0m[4mzone[0m[4m [[0m[4mpattern[0m[4m][0m +══════════════════════════════════════════════════════════════════════ + Set the timezone to use for log messages that do not include a + timezone. The timezone is applied to the focused file or the given + glob pattern. +[4mParameters[0m + [4mzone[0m The timezone name + [4mpattern[0m The glob pattern to match against files that + should use this timezone +[4mSee Also[0m + [1m:clear-file-timezone[0m + [4m:[0m[1m[4mset-min-log-level[0m[4m [0m[4mlog-level[0m ══════════════════════════════════════════════════════════════════════ Set the minimum log level to display in the log view @@ -1430,6 +1535,19 @@ For support questions, email: +[4m:[0m[1m[4msh[0m[4m [0m[4m--name=<name>[0m[4m [0m[4mcmdline[0m +══════════════════════════════════════════════════════════════════════ + Execute the given command-line and display the captured output +[4mParameters[0m + [4m--name=<name>[0m The name to give to the captured + output + [4mcmdline[0m The command-line to execute. +[4mSee Also[0m + [1m:alt-msg[0m, [1m:cd[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:rebuild[0m, + [1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, + [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, + [1m:write-view-to[0m + [4m:[0m[1m[4mshow-fields[0m[4m [0m[4mfield-name[0m[4m1[0m[4m [[0m[4m...[0m[4m [0m[4mfield-name[0m[4mN[0m[4m][0m ══════════════════════════════════════════════════════════════════════ Show log message fields that were previously hidden @@ -1487,8 +1605,8 @@ For support questions, email: [4m:[0m[1m[4msummarize[0m[4m [0m[4mcolumn-name[0m ══════════════════════════════════════════════════════════════════════ - Execute a SQL query that computes the characteristics of the values - in the given column + Execute a SQL query that computes the characteristics of the + values in the given column [4mParameter[0m [4mcolumn-name[0m The name of the column to analyze. @@ -1516,7 +1634,7 @@ For support questions, email: [4mParameter[0m [4mtag[0m The tags to attach [4mSee Also[0m - [1m:comment[0m, [1m:delete-tags[0m, [1m:untag[0m + [1m:annotate[0m, [1m:comment[0m, [1m:delete-tags[0m, [1m:untag[0m [4mExample[0m #1 To add the tags '#BUG123' and '#needs-review' to the top line: [37m[40m:[0m[1m[36m[40mtag[0m[37m[40m [0m[37m[40m#BUG123[0m[37m[40m [0m[37m[40m#needs-review[0m[37m[40m [0m @@ -1563,7 +1681,7 @@ For support questions, email: [4mParameter[0m [4mtag[0m The tags to detach [4mSee Also[0m - [1m:comment[0m, [1m:tag[0m + [1m:annotate[0m, [1m:comment[0m, [1m:tag[0m [4mExample[0m #1 To remove the tags '#BUG123' and '#needs-review' from the top line: [37m[40m:[0m[1m[36m[40muntag[0m[37m[40m [0m[37m[40m#BUG123[0m[37m[40m [0m[37m[40m#needs-review[0m[37m[40m [0m @@ -1577,11 +1695,11 @@ For support questions, email: [4m--anonymize[0m Anonymize the table contents [4mpath[0m The path to the file to write [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m, - [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m, - [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, - [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:create-logline-table[0m, + [1m:create-search-table[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, + [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, + [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, @@ -1599,14 +1717,15 @@ For support questions, email: [4m--anonymize[0m Anonymize the row contents [4mpath[0m The path to the file to write [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m, - [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m, - [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, - [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, - [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, - [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, - [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, - [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:create-logline-table[0m, + [1m:create-search-table[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, + [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:redirect-to[0m, [1m:sh[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, + [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, + [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, + [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, + [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, + [1m:write-view-to[0m, [1mecholn()[0m [4mExample[0m #1 To write SQL results as CSV to /tmp/table.csv: [37m[40m:[0m[1m[36m[40mwrite-csv-to[0m[37m[40m /tmp/table.csv [0m @@ -1620,14 +1739,15 @@ For support questions, email: [4m--anonymize[0m Anonymize the JSON values [4mpath[0m The path to the file to write [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m, - [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m, - [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-jsonlines-to[0m, - [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, - [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, - [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, - [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:create-logline-table[0m, + [1m:create-search-table[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, + [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, + [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, + [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, + [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, + [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, + [1m:write-view-to[0m, [1mecholn()[0m [4mExample[0m #1 To write SQL results as JSON to /tmp/table.json: [37m[40m:[0m[1m[36m[40mwrite-json-to[0m[37m[40m /tmp/table.json [0m @@ -1641,14 +1761,15 @@ For support questions, email: [4m--anonymize[0m Anonymize the JSON values [4mpath[0m The path to the file to write [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m, - [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m, - [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, - [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, - [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, - [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, - [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1mecholn()[0m + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:create-logline-table[0m, + [1m:create-search-table[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, + [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, + [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-raw-to[0m, + [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, + [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, + [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, + [1mecholn()[0m [4mExample[0m #1 To write SQL results as JSON Lines to /tmp/table.json: [37m[40m:[0m[1m[36m[40mwrite-jsonlines-to[0m[37m[40m /tmp/table.json [0m @@ -1661,16 +1782,16 @@ For support questions, email: messages to the file. In the DB view, the contents of the cells are written to the output file. [4mParameters[0m - [4m--view={log,db}[0m The view to use as the source of - data + [4m--view={log,db}[0m The view to use as the source + of data [4m--anonymize[0m Anonymize the lines [4mpath[0m The path to the file to write [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m, - [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m, - [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, - [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:create-logline-table[0m, + [1m:create-search-table[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, + [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, + [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, @@ -1689,11 +1810,11 @@ For support questions, email: [4m--anonymize[0m Anonymize the lines [4mpath[0m The path to the file to write [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m, - [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m, - [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, - [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:create-logline-table[0m, + [1m:create-search-table[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, + [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, + [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, @@ -1711,11 +1832,11 @@ For support questions, email: [4m--anonymize[0m Anonymize the table contents [4mpath[0m The path to the file to write [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m, - [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m, - [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, - [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:create-logline-table[0m, + [1m:create-search-table[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, + [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, + [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-to[0m, [1m:write-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, @@ -1733,13 +1854,13 @@ For support questions, email: [4m--anonymize[0m Anonymize the lines [4mpath[0m The path to the file to write [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, - [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, - [1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, - [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, - [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, - [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-view-to[0m, [1m:write-view-to[0m, - [1mecholn()[0m + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, + [1m:export-session-to[0m, [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, + [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, + [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, + [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, + [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-view-to[0m, + [1m:write-view-to[0m, [1mecholn()[0m [4mExample[0m #1 To write marked lines to the file /tmp/interesting-lines.txt: [37m[40m:[0m[1m[36m[40mwrite-to[0m[37m[40m /tmp/interesting-lines.txt [0m @@ -1754,11 +1875,11 @@ For support questions, email: [4m--anonymize[0m Anonymize the lines [4mpath[0m The path to the file to write [4mSee Also[0m - [1m:alt-msg[0m, [1m:append-to[0m, [1m:create-logline-table[0m, [1m:create-search-table[0m, - [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, [1m:export-session-to[0m, - [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, [1m:redirect-to[0m, - [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, - [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, + [1m.dump[0m, [1m.read[0m, [1m:alt-msg[0m, [1m:append-to[0m, [1m:cd[0m, [1m:create-logline-table[0m, + [1m:create-search-table[0m, [1m:echo[0m, [1m:echo[0m, [1m:eval[0m, [1m:export-session-to[0m, + [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, [1m:rebuild[0m, [1m:redirect-to[0m, + [1m:redirect-to[0m, [1m:sh[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, [1m:write-csv-to[0m, + [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, @@ -1864,13 +1985,13 @@ For support questions, email: [4mSee Also[0m [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To anonymize an IP address: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40manonymize[0m[37m[40m([0m[35m[40m'Hello, 192.168.1.2'[0m[37m[40m) [0m @@ -2042,8 +2163,8 @@ For support questions, email: [1m[4mchanges[0m[4m()[0m ══════════════════════════════════════════════════════════════════════ - The number of database rows that were changed, inserted, or deleted - by the most recent statement. + The number of database rows that were changed, inserted, or + deleted by the most recent statement. [1m[4mchar[0m[4m([0m[4mX[0m[4m, ...)[0m @@ -2055,16 +2176,16 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To get a string with the code points 0x48 and 0x49: - [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mchar[0m[37m[40m([0m[1m[37m[40m0[0m[37m[40mx48[0m[37m[40m, [0m[1m[37m[40m0[0m[37m[40mx49[0m[37m[40m) [0m + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mchar[0m[37m[40m([0m[1m[37m[40m0x48[0m[37m[40m, [0m[1m[37m[40m0x49[0m[37m[40m) [0m @@ -2081,13 +2202,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To search for the string 'abc' within 'abcabc' and starting at position 2: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mcharindex[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m, [0m[35m[40m'abcabc'[0m[37m[40m, [0m[1m[37m[40m2[0m[37m[40m) [0m @@ -2145,7 +2266,7 @@ For support questions, email: value to the left. [4mSee Also[0m [1mdatetime()[0m, [1mhumanize_duration()[0m, [1mjulianday()[0m, [1mstrftime()[0m, [1mtime()[0m, - [1mtimediff()[0m, [1mtimeslice()[0m + [1mtimediff()[0m, [1mtimeslice()[0m, [1mtimezone()[0m [4mExamples[0m #1 To get the date portion of the timestamp '2017-01-02T03:04:05': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mdate[0m[37m[40m([0m[35m[40m'2017-01-02T03:04:05'[0m[37m[40m) [0m @@ -2164,12 +2285,13 @@ For support questions, email: ══════════════════════════════════════════════════════════════════════ Returns the date and time in this format: YYYY-MM-DD HH:MM:SS. [4mParameters[0m - [4mtimestring[0m The string to convert to a date with time. + [4mtimestring[0m The string to convert to a date with + time. [4mmodifier[0m A transformation that is applied to the value to the left. [4mSee Also[0m [1mdate()[0m, [1mhumanize_duration()[0m, [1mjulianday()[0m, [1mstrftime()[0m, [1mtime()[0m, - [1mtimediff()[0m, [1mtimeslice()[0m + [1mtimediff()[0m, [1mtimeslice()[0m, [1mtimezone()[0m [4mExamples[0m #1 To get the date and time portion of the timestamp '2017-01-02T03:04:05': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mdatetime[0m[37m[40m([0m[35m[40m'2017-01-02T03:04:05'[0m[37m[40m) [0m @@ -2195,13 +2317,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To decode the URI-encoded string '%63%75%72%6c': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mdecode[0m[37m[40m([0m[35m[40m'%63%75%72%6c'[0m[37m[40m, [0m[35m[40m'uri'[0m[37m[40m) [0m @@ -2266,10 +2388,10 @@ For support questions, email: [4mParameter[0m [4mvalue[0m The value to write to the current output file [4mSee Also[0m - [1m:append-to[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:pipe-line-to[0m, [1m:pipe-to[0m, - [1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, [1m:write-jsonlines-to[0m, - [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, [1m:write-to[0m, - [1m:write-view-to[0m + [1m.dump[0m, [1m.read[0m, [1m:append-to[0m, [1m:echo[0m, [1m:export-session-to[0m, [1m:pipe-line-to[0m, + [1m:pipe-to[0m, [1m:redirect-to[0m, [1m:write-csv-to[0m, [1m:write-json-to[0m, + [1m:write-jsonlines-to[0m, [1m:write-raw-to[0m, [1m:write-screen-to[0m, [1m:write-table-to[0m, + [1m:write-to[0m, [1m:write-view-to[0m [1m[4mencode[0m[4m([0m[4mvalue[0m[4m, [0m[4malgorithm[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ @@ -2281,13 +2403,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To base64-encode 'Hello, World!': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mencode[0m[37m[40m([0m[35m[40m'Hello, World!'[0m[37m[40m, [0m[35m[40m'base64'[0m[37m[40m) [0m @@ -2311,13 +2433,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To test if the string 'notbad.jpg' ends with '.jpg': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mendswith[0m[37m[40m([0m[35m[40m'notbad.jpg'[0m[37m[40m, [0m[35m[40m'.jpg'[0m[37m[40m) [0m @@ -2352,13 +2474,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To extract key/value pairs from a string: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mextract[0m[37m[40m([0m[35m[40m'foo=1 bar=2 name="Rolo Tomassi"'[0m[37m[40m) [0m @@ -2394,6 +2516,42 @@ For support questions, email: +[1m[4mfstat[0m[4m([0m[4mpattern[0m[4m)[0m +══════════════════════════════════════════════════════════════════════ + A table-valued function for getting information about file + paths/globs +[4mParameter[0m + [4mpattern[0m The file path or glob pattern to query. +[4mResults[0m + [4mst_parent[0m The parent path of the directory entry + [4mst_name[0m The name of the directory entry + [4mst_dev[0m The device number + [4mst_ino[0m The inode number + [4mst_type[0m The type of the entry + [4mst_mode[0m The protection mode + [4mst_nlink[0m The number of hard links to the entry + [4mst_uid[0m The ID of the owning user + [4mst_user[0m The user name + [4mst_gid[0m The ID of the owning group + [4mst_group[0m The group name + [4mst_rdev[0m The device type + [4mst_size[0m The size of the entry in bytes + [4mst_blksize[0m The optimal size for I/O + [4mst_blocks[0m Blocks allocated for the file + [4mst_atime[0m The last access time + [4mst_mtime[0m The last modified time + [4mst_ctime[0m The creation time + [4merror[0m Error message if there was a problem + looking up the entry + [4mdata[0m The contents of the file + +[4mExample[0m +#1 To read a file and raise an error if there is a problem: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mifnull[0m[37m[40m([0m[37m[40mdata[0m[37m[40m, [0m[1m[37m[40mraise_error[0m[37m[40m([0m[35m[40m'cannot read: '[0m[37m[40m [0m[1m[37m[40m||[0m[37m[40m [0m[37m[40mst_name[0m[37m[40m, [0m[37m[40merror[0m[37m[40m)) [0m[1m[36m[40mFROM[0m + [37m[40m [0m[1m[37m[40mfstat[0m[37m[40m([0m[35m[40m'/non-existent'[0m[37m[40m)[0m + + + [1m[4mgenerate_series[0m[4m([0m[4mstart[0m[4m, [0m[4mstop[0m[4m, [[0m[4mstep[0m[4m])[0m ══════════════════════════════════════════════════════════════════════ A table-valued-function that returns the whole numbers between a @@ -2468,12 +2626,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, [1mhumanize_duration()[0m, - [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, - [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, - [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, - [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, - [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, - [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, [1mleftstr()[0m, [1mlength()[0m, + [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, + [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, + [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, + [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, + [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, + [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To concatenate the values of the column 'ex_procname' from the table 'lnav_example_log': @@ -2498,12 +2657,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgunzip()[0m, [1mgzip()[0m, [1mhumanize_duration()[0m, - [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, - [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, - [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, - [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, - [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, - [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, [1mleftstr()[0m, [1mlength()[0m, + [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, + [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, + [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, + [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, + [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, + [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To produce a hash of all of the values of 'column1': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mgroup_spooky_hash[0m[37m[40m([0m[37m[40mcolumn1[0m[37m[40m) [0m[1m[36m[40mFROM[0m[37m[40m ([0m[1m[36m[40mVALUES[0m[37m[40m ([0m[35m[40m'abc'[0m[37m[40m), ([0m[35m[40m'123'[0m[37m[40m))[0m @@ -2518,13 +2678,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [1m[4mgzip[0m[4m([0m[4mvalue[0m[4m, ...)[0m ══════════════════════════════════════════════════════════════════════ @@ -2534,13 +2694,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [1m[4mhex[0m[4m([0m[4mX[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ @@ -2563,14 +2723,14 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdate()[0m, [1mdatetime()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, - [1mgunzip()[0m, [1mgzip()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mjulianday()[0m, - [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, - [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, - [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, - [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1mstrftime()[0m, [1msubstr()[0m, [1mtime()[0m, - [1mtimediff()[0m, [1mtimeslice()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mgunzip()[0m, [1mgzip()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mjulianday()[0m, [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, + [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, + [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, + [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, + [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, + [1mstrftime()[0m, [1msubstr()[0m, [1mtime()[0m, [1mtimediff()[0m, [1mtimeslice()[0m, [1mtimezone()[0m, + [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To format a duration: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mhumanize_duration[0m[37m[40m([0m[1m[37m[40m15[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[37m[40m60[0m[37m[40m) [0m @@ -2589,18 +2749,40 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1minstr()[0m, [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, - [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, - [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, - [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, - [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, - [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_id()[0m, [1minstr()[0m, [1mleftstr()[0m, [1mlength()[0m, + [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, + [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, + [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, + [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, + [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, + [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To format an amount: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mhumanize_file_size[0m[37m[40m([0m[1m[37m[40m10[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[37m[40m1024[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[37m[40m1024[0m[37m[40m) [0m +[1m[4mhumanize_id[0m[4m([0m[4mid[0m[4m)[0m +══════════════════════════════════════════════════════════════════════ + Colorize the given ID using ANSI escape codes. +[4mParameter[0m + [4mid[0m The identifier to color +[4mSee Also[0m + [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, + [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, + [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m +[4mExample[0m +#1 To colorize the ID 'cluster1': + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mhumanize_id[0m[37m[40m([0m[35m[40m'cluster1'[0m[37m[40m) [0m + + + [1m[4mifnull[0m[4m([0m[4mX[0m[4m, [0m[4mY[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ Returns a copy of its first non-NULL argument, or NULL if both @@ -2626,13 +2808,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mleftstr()[0m, [1mlength()[0m, - [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, - [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1mleftstr()[0m, + [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To test get the position of 'b' in the string 'abc': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40minstr[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m, [0m[35m[40m'b'[0m[37m[40m) [0m @@ -2647,8 +2829,11 @@ For support questions, email: [4mptr[0m The JSON-Pointer to lookup in the object. [4mdefault[0m The default value if the value was not found [4mSee Also[0m - [1mjson_concat()[0m, [1mjson_contains()[0m, [1mjson_group_array()[0m, - [1mjson_group_object()[0m, [1myaml_to_json()[0m + [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, + [1mjson_remove()[0m, [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, + [1mjson_valid()[0m, [1myaml_to_json()[0m [4mExamples[0m #1 To get the root of a JSON value: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjget[0m[37m[40m([0m[35m[40m'1'[0m[37m[40m, [0m[35m[40m''[0m[37m[40m) [0m @@ -2691,9 +2876,65 @@ For support questions, email: +[1m[4mjson[0m[4m([0m[4mX[0m[4m)[0m +══════════════════════════════════════════════════════════════════════ + Verifies that its argument is valid JSON and returns a minified + version or throws an error. +[4mParameter[0m + [4mX[0m The string to interpret as JSON. +[4mSee Also[0m + [1mjget()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, + [1mjson_remove()[0m, [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, + [1mjson_valid()[0m, [1myaml_to_json()[0m + +[1m[4mjson_array[0m[4m([0m[4mX[0m[4m, ...)[0m +══════════════════════════════════════════════════════════════════════ + Constructs a JSON array from its arguments. +[4mParameter[0m + [4mX[0m The values of the JSON array +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, [1mjson_contains()[0m, + [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, [1mjson_group_object()[0m, + [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, [1mjson_remove()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To create an array of all types: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_array[0m[37m[40m([0m[1m[36m[40mNULL[0m[37m[40m, [0m[1m[37m[40m1[0m[37m[40m, [0m[1m[37m[40m2.1[0m[37m[40m, [0m[35m[40m'three'[0m[37m[40m, [0m[1m[37m[40mjson_array[0m[37m[40m([0m[1m[37m[40m4[0m[37m[40m), [0m[1m[37m[40mjson_object[0m[37m[40m([0m[35m[40m'five'[0m[37m[40m, [0m[35m[40m'six'[0m[37m[40m))[0m + + +#2 To create an empty array: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_array[0m[37m[40m() [0m + + + +[1m[4mjson_array_length[0m[4m([0m[4mX[0m[4m, [[0m[4mP[0m[4m])[0m +══════════════════════════════════════════════════════════════════════ + Returns the length of a JSON array. +[4mParameters[0m + [4mX[0m The JSON object. + [4mP[0m The path to the array in 'X'. +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_concat()[0m, [1mjson_contains()[0m, + [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, [1mjson_group_object()[0m, + [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, [1mjson_remove()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To get the length of an array: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_array_length[0m[37m[40m([0m[35m[40m'[1, 2, 3]'[0m[37m[40m) [0m + + +#2 To get the length of a nested array: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_array_length[0m[37m[40m([0m[35m[40m'{"arr": [1, 2, 3]}'[0m[37m[40m, [0m[35m[40m'$.arr'[0m[37m[40m)[0m + + + [1m[4mjson_concat[0m[4m([0m[4mjson[0m[4m, [0m[4mvalue[0m[4m, ...)[0m ══════════════════════════════════════════════════════════════════════ - Returns an array with the given values concatenated onto the end. + Returns an array with the given values concatenated onto the end. If the initial value is null, the result will be an array with the given elements. If the initial value is an array, the result will be an array with the given values at the end. If the initial value @@ -2703,7 +2944,10 @@ For support questions, email: [4mjson[0m The initial JSON value. [4mvalue[0m The value(s) to add to the end of the array. [4mSee Also[0m - [1mjget()[0m, [1mjson_contains()[0m, [1mjson_group_array()[0m, [1mjson_group_object()[0m, + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_contains()[0m, + [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, [1mjson_group_object()[0m, + [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, [1mjson_remove()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, [1myaml_to_json()[0m [4mExamples[0m #1 To append the number 4 to null: @@ -2726,7 +2970,10 @@ For support questions, email: [4mjson[0m The JSON value to query. [4mvalue[0m The value to look for in the first argument [4mSee Also[0m - [1mjget()[0m, [1mjson_concat()[0m, [1mjson_group_array()[0m, [1mjson_group_object()[0m, + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, [1mjson_group_object()[0m, + [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, [1mjson_remove()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, [1myaml_to_json()[0m [4mExamples[0m #1 To test if a JSON array contains the number 4: @@ -2738,13 +2985,69 @@ For support questions, email: +[1m[4mjson_each[0m[4m([0m[4mX[0m[4m, [[0m[4mP[0m[4m])[0m +══════════════════════════════════════════════════════════════════════ + A table-valued-function that returns the children of the top-level + JSON value +[4mParameters[0m + [4mX[0m The JSON value to query + [4mP[0m The path to the value to query +[4mResults[0m + [4mkey[0m The array index for elements of an array or + property names of the object + [4mvalue[0m The value for the current element + [4mtype[0m The type of the current element + [4matom[0m The SQL value of the element, if it is a + primitive type + [4mfullkey[0m The path to the current element +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, + [1mjson_remove()[0m, [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, + [1mjson_valid()[0m, [1myaml_to_json()[0m +[4mExample[0m +#1 To iterate over an array: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[1m[37m[40mjson_each[0m[37m[40m([0m[35m[40m'[null,1,"two",{"three":4.5}]'[0m[37m[40m)[0m + + + +[1m[4mjson_extract[0m[4m([0m[4mX[0m[4m, [0m[4mP[0m[4m, ...)[0m +══════════════════════════════════════════════════════════════════════ + Returns the value(s) from the given JSON at the given path(s). +[4mParameters[0m + [4mX[0m The JSON value. + [4mP[0m The path to extract. +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_group_array()[0m, [1mjson_group_object()[0m, + [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, [1mjson_remove()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To get a number: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_extract[0m[37m[40m([0m[35m[40m'{"num": 1}'[0m[37m[40m, [0m[35m[40m'$.num'[0m[37m[40m) [0m + + +#2 To get two numbers: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_extract[0m[37m[40m([0m[35m[40m'{"num": 1, "val": 2}'[0m[37m[40m, [0m[35m[40m'$.num'[0m[37m[40m, [0m[35m[40m'$.val'[0m[37m[40m)[0m + + +#3 To get an object: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_extract[0m[37m[40m([0m[35m[40m'{"obj": {"sub": 1}}'[0m[37m[40m, [0m[35m[40m'$.obj'[0m[37m[40m)[0m + + + [1m[4mjson_group_array[0m[4m([0m[4mvalue[0m[4m, ...)[0m ══════════════════════════════════════════════════════════════════════ Collect the given values from a query into a JSON array [4mParameter[0m [4mvalue[0m The values to append to the array [4mSee Also[0m - [1mjget()[0m, [1mjson_concat()[0m, [1mjson_contains()[0m, [1mjson_group_object()[0m, + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_object()[0m, + [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, [1mjson_remove()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, [1myaml_to_json()[0m [4mExamples[0m #1 To create an array from arguments: @@ -2763,7 +3066,10 @@ For support questions, email: [4mname[0m The property name for the value [4mvalue[0m The value to add to the object [4mSee Also[0m - [1mjget()[0m, [1mjson_concat()[0m, [1mjson_contains()[0m, [1mjson_group_array()[0m, + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, [1mjson_remove()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, [1myaml_to_json()[0m [4mExamples[0m #1 To create an object from arguments: @@ -2775,17 +3081,242 @@ For support questions, email: +[1m[4mjson_insert[0m[4m([0m[4mX[0m[4m, [0m[4mP[0m[4m, [0m[4mY[0m[4m)[0m +══════════════════════════════════════════════════════════════════════ + Inserts values into a JSON object/array at the given locations, if + it does not already exist +[4mParameters[0m + [4mX[0m The JSON value to update + [4mP[0m The path to the insertion point. A '#' array index means + append the value + [4mY[0m The value to insert +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, [1mjson_remove()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To append to an array: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_insert[0m[37m[40m([0m[35m[40m'[1, 2]'[0m[37m[40m, [0m[35m[40m'$[#]'[0m[37m[40m, [0m[1m[37m[40m3[0m[37m[40m) [0m + + +#2 To update an object: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_insert[0m[37m[40m([0m[35m[40m'{"a": 1}'[0m[37m[40m, [0m[35m[40m'$.b'[0m[37m[40m, [0m[1m[37m[40m2[0m[37m[40m) [0m + + +#3 To ensure a value is set: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_insert[0m[37m[40m([0m[35m[40m'{"a": 1}'[0m[37m[40m, [0m[35m[40m'$.a'[0m[37m[40m, [0m[1m[37m[40m2[0m[37m[40m) [0m + + +#4 To update multiple values: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_insert[0m[37m[40m([0m[35m[40m'{"a": 1}'[0m[37m[40m, [0m[35m[40m'$.b'[0m[37m[40m, [0m[1m[37m[40m2[0m[37m[40m, [0m[35m[40m'$.c'[0m[37m[40m, [0m[1m[37m[40m3[0m[37m[40m)[0m + + + +[1m[4mjson_object[0m[4m([0m[4mN[0m[4m, [0m[4mV[0m[4m)[0m +══════════════════════════════════════════════════════════════════════ + Create a JSON object from the given arguments +[4mParameters[0m + [4mN[0m The property name + [4mV[0m The property value +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_quote()[0m, [1mjson_remove()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To create an object: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_object[0m[37m[40m([0m[35m[40m'a'[0m[37m[40m, [0m[1m[37m[40m1[0m[37m[40m, [0m[35m[40m'b'[0m[37m[40m, [0m[35m[40m'c'[0m[37m[40m) [0m + + +#2 To create an empty object: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_object[0m[37m[40m() [0m + + + +[1m[4mjson_quote[0m[4m([0m[4mX[0m[4m)[0m +══════════════════════════════════════════════════════════════════════ + Returns the JSON representation of the given value, if it is not + already JSON +[4mParameter[0m + [4mX[0m The value to convert +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_remove()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To convert a string: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_quote[0m[37m[40m([0m[35m[40m'Hello, World!'[0m[37m[40m) [0m + + +#2 To pass through an existing JSON value: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_quote[0m[37m[40m([0m[1m[37m[40mjson[0m[37m[40m([0m[35m[40m'"Hello, World!"'[0m[37m[40m)) [0m + + + +[1m[4mjson_remove[0m[4m([0m[4mX[0m[4m, [0m[4mP[0m[4m, ...)[0m +══════════════════════════════════════════════════════════════════════ + Removes paths from a JSON value +[4mParameters[0m + [4mX[0m The JSON value to update + [4mP[0m The paths to remove +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, + [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To remove elements of an array: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_remove[0m[37m[40m([0m[35m[40m'[1,2,3]'[0m[37m[40m, [0m[35m[40m'$[1]'[0m[37m[40m, [0m[35m[40m'$[1]'[0m[37m[40m) [0m + + +#2 To remove object properties: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_remove[0m[37m[40m([0m[35m[40m'{"a":1,"b":2}'[0m[37m[40m, [0m[35m[40m'$.b'[0m[37m[40m) [0m + + + +[1m[4mjson_replace[0m[4m([0m[4mX[0m[4m, [0m[4mP[0m[4m, [0m[4mY[0m[4m)[0m +══════════════════════════════════════════════════════════════════════ + Replaces existing values in a JSON object/array at the given + locations +[4mParameters[0m + [4mX[0m The JSON value to update + [4mP[0m The path to replace + [4mY[0m The new value for the property +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, + [1mjson_remove()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To replace an existing value: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_replace[0m[37m[40m([0m[35m[40m'{"a": 1}'[0m[37m[40m, [0m[35m[40m'$.a'[0m[37m[40m, [0m[1m[37m[40m2[0m[37m[40m) [0m + + +#2 To replace a value without creating a new property: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_replace[0m[37m[40m([0m[35m[40m'{"a": 1}'[0m[37m[40m, [0m[35m[40m'$.a'[0m[37m[40m, [0m[1m[37m[40m2[0m[37m[40m, [0m[35m[40m'$.b'[0m[37m[40m, [0m[1m[37m[40m3[0m[37m[40m)[0m + + + +[1m[4mjson_set[0m[4m([0m[4mX[0m[4m, [0m[4mP[0m[4m, [0m[4mY[0m[4m)[0m +══════════════════════════════════════════════════════════════════════ + Inserts or replaces existing values in a JSON object/array at the + given locations +[4mParameters[0m + [4mX[0m The JSON value to update + [4mP[0m The path to the insertion point. A '#' array index means + append the value + [4mY[0m The value to set +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, + [1mjson_remove()[0m, [1mjson_replace()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To replace an existing array element: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_set[0m[37m[40m([0m[35m[40m'[1, 2]'[0m[37m[40m, [0m[35m[40m'$[1]'[0m[37m[40m, [0m[1m[37m[40m3[0m[37m[40m) [0m + + +#2 To replace a value and create a new property: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_set[0m[37m[40m([0m[35m[40m'{"a": 1}'[0m[37m[40m, [0m[35m[40m'$.a'[0m[37m[40m, [0m[1m[37m[40m2[0m[37m[40m, [0m[35m[40m'$.b'[0m[37m[40m, [0m[1m[37m[40m3[0m[37m[40m) [0m + + + +[1m[4mjson_tree[0m[4m([0m[4mX[0m[4m, [[0m[4mP[0m[4m])[0m +══════════════════════════════════════════════════════════════════════ + A table-valued-function that recursively descends through a JSON + value +[4mParameters[0m + [4mX[0m The JSON value to query + [4mP[0m The path to the value to query +[4mResults[0m + [4mkey[0m The array index for elements of an array or + property names of the object + [4mvalue[0m The value for the current element + [4mtype[0m The type of the current element + [4matom[0m The SQL value of the element, if it is a + primitive type + [4mfullkey[0m The path to the current element + [4mpath[0m The path to the container of this element +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, + [1mjson_remove()[0m, [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_type()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExample[0m +#1 To iterate over an array: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[36m[40mkey[0m[37m[40m,[0m[37m[40mvalue[0m[37m[40m,[0m[37m[40mtype[0m[37m[40m,[0m[37m[40matom[0m[37m[40m,[0m[37m[40mfullkey[0m[37m[40m,[0m[37m[40mpath[0m[37m[40m [0m[1m[36m[40mFROM[0m + [37m[40m [0m[1m[37m[40mjson_tree[0m[37m[40m([0m[35m[40m'[null,1,"two",{"three":4.5}]'[0m[37m[40m)[0m + + + +[1m[4mjson_type[0m[4m([0m[4mX[0m[4m, [[0m[4mP[0m[4m])[0m +══════════════════════════════════════════════════════════════════════ + Returns the type of a JSON value +[4mParameters[0m + [4mX[0m The JSON value to query + [4mP[0m The path to the value +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, + [1mjson_remove()[0m, [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_valid()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To get the type of a value: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_type[0m[37m[40m([0m[35m[40m'[null,1,2.1,"three",{"four":5}]'[0m[37m[40m)[0m + + +#2 To get the type of an array element: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_type[0m[37m[40m([0m[35m[40m'[null,1,2.1,"three",{"four":5}]'[0m[37m[40m, [0m[35m[40m'$[0]'[0m[37m[40m)[0m + + +#3 To get the type of a string: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_type[0m[37m[40m([0m[35m[40m'[null,1,2.1,"three",{"four":5}]'[0m[37m[40m, [0m[35m[40m'$[3]'[0m[37m[40m)[0m + + + +[1m[4mjson_valid[0m[4m([0m[4mX[0m[4m)[0m +══════════════════════════════════════════════════════════════════════ + Tests if the given value is valid JSON +[4mParameter[0m + [4mX[0m The value to check +[4mSee Also[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, + [1mjson_remove()[0m, [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, + [1myaml_to_json()[0m +[4mExamples[0m +#1 To check an empty string: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_valid[0m[37m[40m([0m[35m[40m''[0m[37m[40m) [0m + + +#2 To check a string: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjson_valid[0m[37m[40m([0m[35m[40m'"a"'[0m[37m[40m) [0m + + + [1m[4mjulianday[0m[4m([0m[4mtimestring[0m[4m, [0m[4mmodifier[0m[4m, ...)[0m ══════════════════════════════════════════════════════════════════════ Returns the number of days since noon in Greenwich on November 24, 4714 B.C. [4mParameters[0m - [4mtimestring[0m The string to convert to a date with time. + [4mtimestring[0m The string to convert to a date with + time. [4mmodifier[0m A transformation that is applied to the value to the left. [4mSee Also[0m [1mdate()[0m, [1mdatetime()[0m, [1mhumanize_duration()[0m, [1mstrftime()[0m, [1mtime()[0m, - [1mtimediff()[0m, [1mtimeslice()[0m + [1mtimediff()[0m, [1mtimeslice()[0m, [1mtimezone()[0m [4mExamples[0m #1 To get the julian day from the timestamp '2017-01-02T03:04:05': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mjulianday[0m[37m[40m([0m[35m[40m'2017-01-02T03:04:05'[0m[37m[40m) [0m @@ -2802,11 +3333,13 @@ For support questions, email: [1m[4mlag[0m[4m([0m[4mexpr[0m[4m, [[0m[4moffset[0m[4m], [[0m[4mdefault[0m[4m])[0m ══════════════════════════════════════════════════════════════════════ - Returns the result of evaluating the expression against the previous - row in the partition. + Returns the result of evaluating the expression against the + previous row in the partition. [4mParameters[0m - [4mexpr[0m The expression to execute over the previous row - [4moffset[0m The offset from the current row in the partition + [4mexpr[0m The expression to execute over the previous + row + [4moffset[0m The offset from the current row in the + partition [4mdefault[0m The default value if the previous row does not exist instead of NULL [4mSee Also[0m @@ -2821,8 +3354,8 @@ For support questions, email: [1m[4mlast_value[0m[4m([0m[4mexpr[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ - Returns the result of evaluating the expression against the last row - in the window frame. + Returns the result of evaluating the expression against the last + row in the window frame. [4mParameter[0m [4mexpr[0m The expression to execute over the last row [4mSee Also[0m @@ -2831,13 +3364,14 @@ For support questions, email: [1m[4mlead[0m[4m([0m[4mexpr[0m[4m, [[0m[4moffset[0m[4m], [[0m[4mdefault[0m[4m])[0m ══════════════════════════════════════════════════════════════════════ - Returns the result of evaluating the expression against the next row - in the partition. + Returns the result of evaluating the expression against the next + row in the partition. [4mParameters[0m [4mexpr[0m The expression to execute over the next row - [4moffset[0m The offset from the current row in the partition - [4mdefault[0m The default value if the next row does not exist - instead of NULL + [4moffset[0m The offset from the current row in the + partition + [4mdefault[0m The default value if the next row does not + exist instead of NULL [4mSee Also[0m [1mcume_dist()[0m, [1mdense_rank()[0m, [1mfirst_value()[0m, [1mlag()[0m, [1mlast_value()[0m, [1mnth_value()[0m, [1mntile()[0m, [1mpercent_rank()[0m, [1mrank()[0m, [1mrow_number()[0m @@ -2852,13 +3386,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mlength()[0m, - [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, - [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To get the first character of the string 'abc': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mleftstr[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m, [0m[1m[37m[40m1[0m[37m[40m) [0m @@ -2878,13 +3412,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, - [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To get the length of the string 'abc': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mlength[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m) [0m @@ -2895,12 +3429,12 @@ For support questions, email: ══════════════════════════════════════════════════════════════════════ Match a string against a pattern [4mParameters[0m - [4mpattern[0m The pattern to match. A percent symbol (%) will - match zero or more characters and an underscore (_) will - match a single character. + [4mpattern[0m The pattern to match. A percent symbol (%) + will match zero or more characters and an underscore (_) + will match a single character. [4mstr[0m The string to match - [4mescape[0m The escape character that can be used to prefix - a literal percent or underscore in the pattern. + [4mescape[0m The escape character that can be used to + prefix a literal percent or underscore in the pattern. [4mExamples[0m #1 To test if the string 'aabcc' contains the letter 'b': @@ -2981,6 +3515,11 @@ For support questions, email: +[1m[4mlog_msg_line[0m[4m()[0m +══════════════════════════════════════════════════════════════════════ + Return the starting line number of the focused log message. + + [1m[4mlog_top_datetime[0m[4m()[0m ══════════════════════════════════════════════════════════════════════ Return the timestamp of the line at the top of the log view. @@ -2988,7 +3527,7 @@ For support questions, email: [1m[4mlog_top_line[0m[4m()[0m ══════════════════════════════════════════════════════════════════════ - Return the line number at the top of the log view. + Return the number of the focused line of the log view. [1m[4mlogfmt2json[0m[4m([0m[4mstr[0m[4m)[0m @@ -2999,13 +3538,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, - [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To extract key/value pairs from a log message: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mlogfmt2json[0m[37m[40m([0m[35m[40m'foo=1 bar=2 name="Rolo Tomassi"'[0m[37m[40m)[0m @@ -3021,13 +3560,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, - [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To lowercase the string 'AbC': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mlower[0m[37m[40m([0m[35m[40m'AbC'[0m[37m[40m) [0m @@ -3044,13 +3583,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, - [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To trim the leading space characters from the string ' abc': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mltrim[0m[37m[40m([0m[35m[40m' abc'[0m[37m[40m) [0m @@ -3066,8 +3605,8 @@ For support questions, email: Returns the argument with the maximum value, or return NULL if any argument is NULL. [4mParameter[0m - [4mX[0m The numbers to find the maximum of. If only one argument is - given, this function operates as an aggregate. + [4mX[0m The numbers to find the maximum of. If only one argument + is given, this function operates as an aggregate. [4mSee Also[0m [1mabs()[0m, [1macos()[0m, [1macosh()[0m, [1masin()[0m, [1masinh()[0m, [1matan()[0m, [1matan2()[0m, [1matanh()[0m, [1matn2()[0m, [1mavg()[0m, [1mceil()[0m, [1mdegrees()[0m, [1mexp()[0m, [1mfloor()[0m, [1mlog()[0m, [1mlog10()[0m, @@ -3088,8 +3627,8 @@ For support questions, email: Returns the argument with the minimum value, or return NULL if any argument is NULL. [4mParameter[0m - [4mX[0m The numbers to find the minimum of. If only one argument is - given, this function operates as an aggregate. + [4mX[0m The numbers to find the minimum of. If only one argument + is given, this function operates as an aggregate. [4mSee Also[0m [1mabs()[0m, [1macos()[0m, [1macosh()[0m, [1masin()[0m, [1masinh()[0m, [1matan()[0m, [1matan2()[0m, [1matanh()[0m, [1matn2()[0m, [1mavg()[0m, [1mceil()[0m, [1mdegrees()[0m, [1mexp()[0m, [1mfloor()[0m, [1mlog()[0m, [1mlog10()[0m, @@ -3107,8 +3646,8 @@ For support questions, email: [1m[4mnth_value[0m[4m([0m[4mexpr[0m[4m, [0m[4mN[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ - Returns the result of evaluating the expression against the nth row - in the window frame. + Returns the result of evaluating the expression against the nth + row in the window frame. [4mParameters[0m [4mexpr[0m The expression to execute over the nth row [4mN[0m The row number @@ -3153,13 +3692,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadl()[0m, [1mpadr()[0m, [1mparse_url()[0m, - [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadl()[0m, [1mpadr()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To pad the string 'abc' to a length of six characters: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mpadc[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m, [0m[1m[37m[40m6[0m[37m[40m) [0m[1m[37m[40m||[0m[37m[40m [0m[35m[40m'def'[0m[37m[40m [0m @@ -3180,13 +3719,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadr()[0m, [1mparse_url()[0m, - [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadr()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To pad the string 'abc' to a length of six characters: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mpadl[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m, [0m[1m[37m[40m6[0m[37m[40m) [0m @@ -3207,13 +3746,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mparse_url()[0m, - [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To pad the string 'abc' to a length of six characters: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mpadr[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m, [0m[1m[37m[40m6[0m[37m[40m) [0m[1m[37m[40m||[0m[37m[40m [0m[35m[40m'def'[0m[37m[40m [0m @@ -3226,31 +3765,33 @@ For support questions, email: [1m[4mparse_url[0m[4m([0m[4murl[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ - Parse a URL and return the components in a JSON object. Limitations: - not all URL schemes are supported and repeated query parameters are - not captured. + Parse a URL and return the components in a JSON object. + Limitations: not all URL schemes are supported and repeated query + parameters are not captured. [4mParameter[0m [4murl[0m The URL to parse [4mResults[0m [4mscheme[0m The URL's scheme - [4musername[0m The name of the user specified in the URL + [4musername[0m The name of the user specified in the + URL [4mpassword[0m The password specified in the URL [4mhost[0m The host name / IP specified in the URL [4mport[0m The port specified in the URL [4mpath[0m The path specified in the URL [4mquery[0m The query string in the URL - [4mparameters[0m An object containing the query parameters + [4mparameters[0m An object containing the query + parameters [4mfragment[0m The fragment specified in the URL [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1munparse_url()[0m, - [1mupper()[0m, [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To parse the URL 'https://example.com/search?q=hello%20world': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mparse_url[0m[37m[40m([0m[35m[40m'https://example.com/search?q=hello%20world'[0m[37m[40m)[0m @@ -3301,23 +3842,23 @@ For support questions, email: [1m[4mprintf[0m[4m([0m[4mformat[0m[4m, [0m[4mX[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ - Returns a string with this functions arguments substituted into the - given format. Substitution points are specified using percent (%) - options, much like the standard C printf() function. + Returns a string with this functions arguments substituted into + the given format. Substitution points are specified using percent + (%) options, much like the standard C printf() function. [4mParameters[0m [4mformat[0m The format of the string to return. - [4mX[0m The argument to substitute at a given position in - the format. + [4mX[0m The argument to substitute at a given position + in the format. [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To substitute 'World' into the string 'Hello, %s!': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mprintf[0m[37m[40m([0m[35m[40m'Hello, %s!'[0m[37m[40m, [0m[35m[40m'World'[0m[37m[40m) [0m @@ -3340,13 +3881,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, - [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, - [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To capitalize the words in the string 'hello, world!': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mproper[0m[37m[40m([0m[35m[40m'hello, world!'[0m[37m[40m) [0m @@ -3385,11 +3926,17 @@ For support questions, email: -[1m[4mraise_error[0m[4m([0m[4mmsg[0m[4m)[0m +[1m[4mraise_error[0m[4m([0m[4mmsg[0m[4m, [[0m[4mreason[0m[4m])[0m ══════════════════════════════════════════════════════════════════════ Raises an error with the given message when executed -[4mParameter[0m - [4mmsg[0m The error message +[4mParameters[0m + [4mmsg[0m The error message + [4mreason[0m The reason the error occurred + +[4mExample[0m +#1 To raise an error if a variable is not set: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mifnull[0m[37m[40m([0m[37m[40m$val[0m[37m[40m, [0m[1m[37m[40mraise_error[0m[37m[40m([0m[35m[40m'please set $val'[0m[37m[40m, [0m[35m[40m'because'[0m[37m[40m))[0m + [1m[4mrandom[0m[4m()[0m @@ -3454,23 +4001,24 @@ For support questions, email: regex. [4mcapture_name[0m The name of the capture in the regex. - [4mcapture_count[0m The total number of captures in the - regex. + [4mcapture_count[0m The total number of captures in + the regex. [4mrange_start[0m The start of the capture in the input string. - [4mrange_stop[0m The stop of the capture in the input + [4mrange_stop[0m The stop of the capture in the + input string. + [4mcontent[0m The captured value from the string. - [4mcontent[0m The captured value from the string. [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture_into_json()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, - [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, - [1mxpath()[0m + [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, + [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To extract the key/value pairs 'a'/1 and 'b'/2 from the string 'a=1; b=2': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[1m[37m[40mregexp_capture[0m[37m[40m([0m[35m[40m'a=1; b=2'[0m[37m[40m, [0m[35m[40m'(\w+)=(\d+)'[0m[37m[40m)[0m @@ -3498,12 +4046,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_match()[0m, - [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, - [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, - [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, + [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, [1mstartswith()[0m, + [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, + [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To extract the key/value pairs 'a'/1 and 'b'/2 from the string 'a=1; b=2': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[1m[37m[40mregexp_capture_into_json[0m[37m[40m([0m[35m[40m'a=1; b=2'[0m[37m[40m, [0m[35m[40m'(\w+)=(\d+)'[0m[37m[40m)[0m @@ -3520,13 +4069,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_replace()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To capture the digits from the string '123': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mregexp_match[0m[37m[40m([0m[35m[40m'(\d+)'[0m[37m[40m, [0m[35m[40m'123'[0m[37m[40m) [0m @@ -3555,13 +4104,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_match()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To replace the word at the start of the string 'Hello, World!' with 'Goodbye': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mregexp_replace[0m[37m[40m([0m[35m[40m'Hello, World!'[0m[37m[40m, [0m[35m[40m'^(\w+)'[0m[37m[40m, [0m[35m[40m'Goodbye'[0m[37m[40m)[0m @@ -3577,20 +4126,21 @@ For support questions, email: Returns a string formed by substituting the replacement string for every occurrence of the old string in the given string. [4mParameters[0m - [4mstr[0m The string to perform substitutions on. + [4mstr[0m The string to perform substitutions + on. [4mold[0m The string to be replaced. - [4mreplacement[0m The string to replace any occurrences of - the old string with. + [4mreplacement[0m The string to replace any occurrences + of the old string with. [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To replace the string 'x' with 'z' in 'abc': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[36m[40mreplace[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m, [0m[35m[40m'x'[0m[37m[40m, [0m[35m[40m'z'[0m[37m[40m) [0m @@ -3610,13 +4160,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, - [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, - [1mupper()[0m, [1mxpath()[0m + [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, + [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To repeat the string 'abc' three times: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mreplicate[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m, [0m[1m[37m[40m3[0m[37m[40m) [0m @@ -3631,13 +4181,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To reverse the string 'abc': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mreverse[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m) [0m @@ -3654,13 +4204,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrtrim()[0m, [1msparkline()[0m, [1mspooky_hash()[0m, - [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, - [1mupper()[0m, [1mxpath()[0m + [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, + [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To get the last character of the string 'abc': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mrightstr[0m[37m[40m([0m[35m[40m'abc'[0m[37m[40m, [0m[1m[37m[40m1[0m[37m[40m) [0m @@ -3673,8 +4223,8 @@ For support questions, email: [1m[4mround[0m[4m([0m[4mnum[0m[4m, [[0m[4mdigits[0m[4m])[0m ══════════════════════════════════════════════════════════════════════ - Returns a floating-point value rounded to the given number of digits - to the right of the decimal point. + Returns a floating-point value rounded to the given number of + digits to the right of the decimal point. [4mParameters[0m [4mnum[0m The value to round. [4mdigits[0m The number of digits to the right of the decimal @@ -3700,8 +4250,8 @@ For support questions, email: [1m[4mrow_number[0m[4m()[0m ══════════════════════════════════════════════════════════════════════ - Returns the number of the row within the current partition, starting - from 1. + Returns the number of the row within the current partition, + starting from 1. [4mSee Also[0m [1mcume_dist()[0m, [1mdense_rank()[0m, [1mfirst_value()[0m, [1mlag()[0m, [1mlast_value()[0m, [1mlead()[0m, [1mnth_value()[0m, [1mntile()[0m, [1mpercent_rank()[0m, [1mrank()[0m @@ -3722,13 +4272,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To trim the space characters from the end of the string 'abc ': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mrtrim[0m[37m[40m([0m[35m[40m'abc '[0m[37m[40m) [0m @@ -3739,6 +4289,20 @@ For support questions, email: +[1m[4mshell_exec[0m[4m([0m[4mcmd[0m[4m, [[0m[4minput[0m[4m], [[0m[4moptions[0m[4m])[0m +══════════════════════════════════════════════════════════════════════ + Executes a shell command and returns its output. +[4mParameters[0m + [4mcmd[0m The command to execute. + [4minput[0m A blob of data to write to the command's + standard input. + [4moptions[0m A JSON object containing options for the + execution with the following properties: + [4menv[0m - An object containing the environment + variables to set or, if NULL, to unset. +[4mSee Also[0m + + [1m[4msign[0m[4m([0m[4mnum[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ Returns the sign of the given number as -1, 0, or 1 @@ -3765,10 +4329,10 @@ For support questions, email: [1m[4msparkline[0m[4m([0m[4mvalue[0m[4m, [[0m[4mupper[0m[4m])[0m ══════════════════════════════════════════════════════════════════════ - Function used to generate a sparkline bar chart. The non-aggregate - version converts a single numeric value on a range to a bar chart - character. The aggregate version returns a string with a bar - character for every numeric input + Function used to generate a sparkline bar chart. The + non-aggregate version converts a single numeric value on a range to + a bar chart character. The aggregate version returns a string with + a bar character for every numeric input [4mParameters[0m [4mvalue[0m The numeric value to convert [4mupper[0m The upper bound of the numeric range. The @@ -3777,13 +4341,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1mspooky_hash()[0m, - [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, - [1mupper()[0m, [1mxpath()[0m + [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, + [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To get the unicode block element for the value 32 in the range of 0-128: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40msparkline[0m[37m[40m([0m[1m[37m[40m32[0m[37m[40m, [0m[1m[37m[40m128[0m[37m[40m) [0m @@ -3802,13 +4366,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, - [1mupper()[0m, [1mxpath()[0m + [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, + [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To produce a hash for the string 'Hello, World!': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mspooky_hash[0m[37m[40m([0m[35m[40m'Hello, World!'[0m[37m[40m) [0m @@ -3829,8 +4393,8 @@ For support questions, email: [1m[4msqlite_compileoption_get[0m[4m([0m[4mN[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ - Returns the N-th compile-time option used to build SQLite or NULL if - N is out of range. + Returns the N-th compile-time option used to build SQLite or NULL + if N is out of range. [4mParameter[0m [4mN[0m The option number to get @@ -3850,8 +4414,8 @@ For support questions, email: [1m[4msqlite_source_id[0m[4m()[0m ══════════════════════════════════════════════════════════════════════ - Returns a string that identifies the specific version of the source - code that was used to build the SQLite library. + Returns a string that identifies the specific version of the + source code that was used to build the SQLite library. [1m[4msqlite_version[0m[4m()[0m @@ -3884,13 +4448,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, - [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, + [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To test if the string 'foobar' starts with 'foo': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mstartswith[0m[37m[40m([0m[35m[40m'foobar'[0m[37m[40m, [0m[35m[40m'foo'[0m[37m[40m) [0m @@ -3911,12 +4475,12 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To get the 'b', 'c', and 'd' characters from the string 'abcabc': @@ -3926,17 +4490,19 @@ For support questions, email: [1m[4mstrftime[0m[4m([0m[4mformat[0m[4m, [0m[4mtimestring[0m[4m, [0m[4mmodifier[0m[4m, ...)[0m ══════════════════════════════════════════════════════════════════════ - Returns the date formatted according to the format string specified - as the first argument. + Returns the date formatted according to the format string + specified as the first argument. [4mParameters[0m - [4mformat[0m A format string with substitutions similar - to those found in the strftime() standard C library. - [4mtimestring[0m The string to convert to a date with time. + [4mformat[0m A format string with substitutions + similar to those found in the strftime() standard C + library. + [4mtimestring[0m The string to convert to a date with + time. [4mmodifier[0m A transformation that is applied to the value to the left. [4mSee Also[0m [1mdate()[0m, [1mdatetime()[0m, [1mhumanize_duration()[0m, [1mjulianday()[0m, [1mtime()[0m, - [1mtimediff()[0m, [1mtimeslice()[0m + [1mtimediff()[0m, [1mtimeslice()[0m, [1mtimezone()[0m [4mExamples[0m #1 To get the year from the timestamp '2017-01-02T03:04:05': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mstrftime[0m[37m[40m([0m[35m[40m'%Y'[0m[37m[40m, [0m[35m[40m'2017-01-02T03:04:05'[0m[37m[40m) [0m @@ -3969,13 +4535,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To get the substring starting at the second character until the end of the string 'abc': @@ -4024,7 +4590,7 @@ For support questions, email: value to the left. [4mSee Also[0m [1mdate()[0m, [1mdatetime()[0m, [1mhumanize_duration()[0m, [1mjulianday()[0m, [1mstrftime()[0m, - [1mtimediff()[0m, [1mtimeslice()[0m + [1mtimediff()[0m, [1mtimeslice()[0m, [1mtimezone()[0m [4mExamples[0m #1 To get the time portion of the timestamp '2017-01-02T03:04:05': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mtime[0m[37m[40m([0m[35m[40m'2017-01-02T03:04:05'[0m[37m[40m) [0m @@ -4047,7 +4613,7 @@ For support questions, email: [4mtime2[0m The timestamp to subtract from the first [4mSee Also[0m [1mdate()[0m, [1mdatetime()[0m, [1mhumanize_duration()[0m, [1mjulianday()[0m, [1mstrftime()[0m, - [1mtime()[0m, [1mtimeslice()[0m + [1mtime()[0m, [1mtimeslice()[0m, [1mtimezone()[0m [4mExamples[0m #1 To get the difference between two timestamps: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mtimediff[0m[37m[40m([0m[35m[40m'2017-02-03T04:05:06'[0m[37m[40m, [0m[35m[40m'2017-02-03T04:05:00'[0m[37m[40m)[0m @@ -4060,14 +4626,14 @@ For support questions, email: [1m[4mtimeslice[0m[4m([0m[4mtime[0m[4m, [0m[4mslice[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ - Return the start of the slice of time that the given timestamp falls - in. If the time falls outside of the slice, NULL is returned. + Return the start of the slice of time that the given timestamp + falls in. If the time falls outside of the slice, NULL is returned. [4mParameters[0m [4mtime[0m The timestamp to get the time slice for. [4mslice[0m The size of the time slices [4mSee Also[0m [1mdate()[0m, [1mdatetime()[0m, [1mhumanize_duration()[0m, [1mjulianday()[0m, [1mstrftime()[0m, - [1mtime()[0m, [1mtimediff()[0m + [1mtime()[0m, [1mtimediff()[0m, [1mtimezone()[0m [4mExamples[0m #1 To get the timestamp rounded down to the start of the ten minute slice: [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mtimeslice[0m[37m[40m([0m[35m[40m'2017-01-01T05:05:00'[0m[37m[40m, [0m[35m[40m'10m'[0m[37m[40m) [0m @@ -4084,6 +4650,30 @@ For support questions, email: +[1m[4mtimezone[0m[4m([0m[4mtz[0m[4m, [0m[4mts[0m[4m)[0m +══════════════════════════════════════════════════════════════════════ + Convert a timestamp to the given timezone +[4mParameters[0m + [4mtz[0m The target timezone + [4mts[0m The source timestamp +[4mSee Also[0m + [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdate()[0m, [1mdatetime()[0m, [1mdecode()[0m, + [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, + [1mgunzip()[0m, [1mgzip()[0m, [1mhumanize_duration()[0m, [1mhumanize_duration()[0m, + [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, [1mjulianday()[0m, [1mleftstr()[0m, + [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, + [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, + [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1mstrftime()[0m, [1msubstr()[0m, [1mtime()[0m, + [1mtimediff()[0m, [1mtimeslice()[0m, [1mtrim()[0m, [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, + [1mxpath()[0m +[4mExample[0m +#1 To convert a time to America/Los_Angeles: + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mtimezone[0m[37m[40m([0m[35m[40m'America/Los_Angeles'[0m[37m[40m, [0m[35m[40m'2022-03-02T10:00'[0m[37m[40m)[0m + + + [1m[4mtotal[0m[4m([0m[4mX[0m[4m)[0m ══════════════════════════════════════════════════════════════════════ Returns the sum of the values in the group as a floating-point. @@ -4103,8 +4693,8 @@ For support questions, email: [1m[4mtotal_changes[0m[4m()[0m ══════════════════════════════════════════════════════════════════════ - Returns the number of row changes caused by INSERT, UPDATE or DELETE - statements since the current database connection was opened. + Returns the number of row changes caused by INSERT, UPDATE or + DELETE statements since the current database connection was opened. [1m[4mtrim[0m[4m([0m[4mstr[0m[4m, [[0m[4mchars[0m[4m])[0m @@ -4119,13 +4709,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExamples[0m #1 To trim spaces from the start and end of the string ' abc ': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mtrim[0m[37m[40m([0m[35m[40m' abc '[0m[37m[40m) [0m @@ -4162,12 +4752,12 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, [1munparse_url()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To get the unicode code point for the first character of 'abc': @@ -4191,13 +4781,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1mupper()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1mupper()[0m, [1mxpath()[0m [4mExample[0m #1 To unparse the object '{"scheme": "https", "host": "example.com"}': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40munparse_url[0m[37m[40m([0m[35m[40m'{"scheme": "https", "host": "example.com"}'[0m[37m[40m)[0m @@ -4213,13 +4803,13 @@ For support questions, email: [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mxpath()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mxpath()[0m [4mExample[0m #1 To uppercase the string 'aBc': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mupper[0m[37m[40m([0m[35m[40m'aBc'[0m[37m[40m) [0m @@ -4236,31 +4826,34 @@ For support questions, email: [4mxmldoc[0m The XML document as a string. [4mResults[0m [4mresult[0m The result of the XPATH expression. - [4mnode_path[0m The absolute path to the node containing the - result. - [4mnode_attr[0m The node's attributes stored in JSON object. + [4mnode_path[0m The absolute path to the node containing + the result. + [4mnode_attr[0m The node's attributes stored in JSON + object. [4mnode_text[0m The node's text value. [4mSee Also[0m [1manonymize()[0m, [1mchar()[0m, [1mcharindex()[0m, [1mdecode()[0m, [1mencode()[0m, [1mendswith()[0m, [1mextract()[0m, [1mgroup_concat()[0m, [1mgroup_spooky_hash()[0m, [1mgunzip()[0m, [1mgzip()[0m, - [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1minstr()[0m, [1mleftstr()[0m, - [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, [1mpadr()[0m, - [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, + [1mhumanize_duration()[0m, [1mhumanize_file_size()[0m, [1mhumanize_id()[0m, [1minstr()[0m, + [1mleftstr()[0m, [1mlength()[0m, [1mlogfmt2json()[0m, [1mlower()[0m, [1mltrim()[0m, [1mpadc()[0m, [1mpadl()[0m, + [1mpadr()[0m, [1mparse_url()[0m, [1mprintf()[0m, [1mproper()[0m, [1mregexp_capture()[0m, [1mregexp_capture_into_json()[0m, [1mregexp_match()[0m, [1mregexp_replace()[0m, [1mreplace()[0m, [1mreplicate()[0m, [1mreverse()[0m, [1mrightstr()[0m, [1mrtrim()[0m, [1msparkline()[0m, - [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtrim()[0m, [1municode()[0m, - [1munparse_url()[0m, [1mupper()[0m + [1mspooky_hash()[0m, [1mstartswith()[0m, [1mstrfilter()[0m, [1msubstr()[0m, [1mtimezone()[0m, [1mtrim()[0m, + [1municode()[0m, [1munparse_url()[0m, [1mupper()[0m [4mExamples[0m #1 To select the XML nodes on the path '/abc/def': [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[1m[37m[40mxpath[0m[37m[40m([0m[35m[40m'/abc/def'[0m[37m[40m, [0m[35m[40m'<abc><def a="b">Hello</def><def>Bye</def></abc>'[0m[37m[40m)[0m #2 To select all 'a' attributes on the path '/abc/def': - [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[1m[37m[40mxpath[0m[37m[40m([0m[35m[40m'/abc/def/@a'[0m[37m[40m, [0m[35m[40m'<abc><def a="b">Hello</def><def>Bye</def></abc>'[0m[37m[40m)[0m + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[1m[37m[40mxpath[0m[37m[40m([0m[35m[40m'/abc/def/@a'[0m[37m[40m, [0m[35m[40m'<abc><def[0m + [35m[40m [0m[35m[40ma="b">Hello</def><def>Bye</def></abc>'[0m[37m[40m)[0m #3 To select the text nodes on the path '/abc/def': - [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[1m[37m[40mxpath[0m[37m[40m([0m[35m[40m'/abc/def/text()'[0m[37m[40m, [0m[35m[40m'<abc><def a="b">Hello ★</def></abc>'[0m[37m[40m)[0m + [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[1m[37m[40mxpath[0m[37m[40m([0m[35m[40m'/abc/def/text()'[0m[37m[40m, [0m[35m[40m'<abc><def a="b">Hello[0m + [35m[40m [0m[35m[40m★</def></abc>'[0m[37m[40m)[0m @@ -4270,8 +4863,11 @@ For support questions, email: [4mParameter[0m [4myaml[0m The YAML value to convert to JSON. [4mSee Also[0m - [1mjget()[0m, [1mjson_concat()[0m, [1mjson_contains()[0m, [1mjson_group_array()[0m, - [1mjson_group_object()[0m + [1mjget()[0m, [1mjson()[0m, [1mjson_array()[0m, [1mjson_array_length()[0m, [1mjson_concat()[0m, + [1mjson_contains()[0m, [1mjson_each()[0m, [1mjson_extract()[0m, [1mjson_group_array()[0m, + [1mjson_group_object()[0m, [1mjson_insert()[0m, [1mjson_object()[0m, [1mjson_quote()[0m, + [1mjson_remove()[0m, [1mjson_replace()[0m, [1mjson_set()[0m, [1mjson_tree()[0m, [1mjson_type()[0m, + [1mjson_valid()[0m [4mExample[0m #1 To convert the document "abc: def": [37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40myaml_to_json[0m[37m[40m([0m[35m[40m'abc: def'[0m[37m[40m) [0m @@ -4290,7 +4886,8 @@ For support questions, email: Attach a database file to the current connection. [4mParameters[0m [4mfilename[0m The path to the database file. - [4mschema-name[0m The prefix for tables in this database. + [4mschema-name[0m The prefix for tables in this + database. [4mExample[0m #1 To attach the database file '/tmp/customers.db' with the name customers: @@ -4306,8 +4903,9 @@ For support questions, email: [4mParameters[0m [4mbase-expr[0m The base expression that is used for comparison in the branches - [4mcmp-expr[0m The expression to test if this branch should - be taken + [4mcmp-expr[0m The expression to test if this branch + should be taken + [4mthen-expr[0m - The result for this branch. [4melse-expr[0m The result of this CASE if no branches matched. @@ -4321,8 +4919,8 @@ For support questions, email: ══════════════════════════════════════════════════════════════════════ Assign a name to a SELECT statement [4mParameters[0m - [4mIF NOT EXISTS[0m Do not create the view if it already - exists + [4mIF NOT EXISTS[0m Do not create the view if it + already exists [4mschema-name.[0m The database to create the view in [4mview-name[0m The name of the view [4mselect-stmt[0m The SELECT statement the view @@ -4341,7 +4939,8 @@ For support questions, email: ══════════════════════════════════════════════════════════════════════ Detach a database from the current connection. [4mParameter[0m - [4mschema-name[0m The prefix for tables in this database. + [4mschema-name[0m The prefix for tables in this + database. [4mExample[0m #1 To detach the database named 'customers': @@ -4383,10 +4982,10 @@ For support questions, email: [4mtable[0m The table(s) to query for data [4mcond[0m The conditions used to select the rows to return. - [4mgrouping-expr[0m The expression to use when grouping - rows. - [4mordering-term[0m The values to use when ordering the - result set. + [4mgrouping-expr[0m The expression to use when + grouping rows. + [4mordering-term[0m The values to use when ordering + the result set. [4mlimit-expr[0m The maximum number of rows to return. @@ -4402,8 +5001,10 @@ For support questions, email: [4mParameters[0m [4mtable[0m The table to update [4mcolumn-name[0m The columns in the table to update. - [4mcond[0m The condition used to determine whether - a row should be updated. + [4mexpr[0m - The values to place into the + column. + [4mcond[0m The condition used to determine + whether a row should be updated. [4mExample[0m #1 To mark the syslog message at line 40: @@ -4416,7 +5017,7 @@ For support questions, email: Create a temporary view that exists only for the duration of a SQL statement. [4mParameters[0m - [4mcte-table-name[0m The name for the temporary table. + [4mcte-table-name[0m The name for the temporary + table. [4mselect-stmt[0m The SELECT statement used to populate the temporary table. - diff --git a/test/expected/test_cmds.sh_b755a8b48c0f602f0270500b0117b76e11db546e.out b/test/expected/test_cmds.sh_b755a8b48c0f602f0270500b0117b76e11db546e.out index 5fb4d90..e27bfe5 100644 --- a/test/expected/test_cmds.sh_b755a8b48c0f602f0270500b0117b76e11db546e.out +++ b/test/expected/test_cmds.sh_b755a8b48c0f602f0270500b0117b76e11db546e.out @@ -33,5 +33,6 @@ Apr 7 07:32:56 Tim-Stacks-iMac.local logger[234]: Bad data { abc, 123, 456 -) -}] + ) +} +] diff --git a/test/expected/test_cmds.sh_c7fabc25374ff47c47931f63b1d697061b816a28.out b/test/expected/test_cmds.sh_c7fabc25374ff47c47931f63b1d697061b816a28.out index 76c53dd..fe0221c 100644 --- a/test/expected/test_cmds.sh_c7fabc25374ff47c47931f63b1d697061b816a28.out +++ b/test/expected/test_cmds.sh_c7fabc25374ff47c47931f63b1d697061b816a28.out @@ -1,2 +1,2 @@ -[7m Sat Nov 03 09:20:0[0m[1m[7m[31m0 1 normal 2 errors [0m[7m[32m 0 warnings [0m 1 marks -[7m Sat Nov 03 09:45:0[0m0 1 normal 0 errors 0 warnings 0 marks +[7m Sat Nov 03 09:20:00[0m[1m[7m[31m 1 normal 2 errors [0m[7m[32m 0 warnings [0m 1 marks +[7m Sat Nov 03 09:45:00[0m 1 normal 0 errors 0 warnings 0 marks diff --git a/test/expected/test_cmds.sh_ccd326da92d1cacda63501cd1a3077381a18e8f2.out b/test/expected/test_cmds.sh_ccd326da92d1cacda63501cd1a3077381a18e8f2.out index bc67837..0c0137a 100644 --- a/test/expected/test_cmds.sh_ccd326da92d1cacda63501cd1a3077381a18e8f2.out +++ b/test/expected/test_cmds.sh_ccd326da92d1cacda63501cd1a3077381a18e8f2.out @@ -1 +1 @@ -[7m [0m[1m[7m[31mS[0mat Nov 03 00:00:00 2 normal 2 errors 0 warnings 0 marks +[7m Sat Nov 03 00:00:00 2 normal [0m[1m[7m[31m 2 errors 0 warnings [0m 0 marks diff --git a/test/expected/test_cmds.sh_d0d0ff9b68adc17136329f457fe52d5addcb12c0.err b/test/expected/test_cmds.sh_d0d0ff9b68adc17136329f457fe52d5addcb12c0.err new file mode 100644 index 0000000..a55e4f8 --- /dev/null +++ b/test/expected/test_cmds.sh_d0d0ff9b68adc17136329f457fe52d5addcb12c0.err @@ -0,0 +1,6 @@ +[1m[31m✘ error[0m: invalid epoch time: 16120724091612072409 -- Value too large to be stored in data type +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m:[0m[1m[36m[40munix-time[0m[37m[40m 16120724091612072409 [0m +[36m =[0m [36mhelp[0m: [4m:[0m[1m[4munix-time[0m[4m [0m[4mseconds[0m + ══════════════════════════════════════════════════════════════════════ + Convert epoch time to a human-readable form diff --git a/test/expected/test_cmds.sh_d0d0ff9b68adc17136329f457fe52d5addcb12c0.out b/test/expected/test_cmds.sh_d0d0ff9b68adc17136329f457fe52d5addcb12c0.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_cmds.sh_d0d0ff9b68adc17136329f457fe52d5addcb12c0.out diff --git a/test/expected/test_cmds.sh_d1afefacbdd387f02562c8633968b0162a588502.err b/test/expected/test_cmds.sh_d1afefacbdd387f02562c8633968b0162a588502.err new file mode 100644 index 0000000..040fef2 --- /dev/null +++ b/test/expected/test_cmds.sh_d1afefacbdd387f02562c8633968b0162a588502.err @@ -0,0 +1,6 @@ +[1m[31m✘ error[0m: {test_dir}/logfile_access_log.0 is not a directory +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m:[0m[1m[36m[40mcd[0m[37m[40m {test_dir}/logfile_access_log.0[0m +[36m =[0m [36mhelp[0m: [4m:[0m[1m[4mcd[0m[4m [0m[4mdir[0m + ══════════════════════════════════════════════════════════════════════ + Change the current directory diff --git a/test/expected/test_cmds.sh_d1afefacbdd387f02562c8633968b0162a588502.out b/test/expected/test_cmds.sh_d1afefacbdd387f02562c8633968b0162a588502.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_cmds.sh_d1afefacbdd387f02562c8633968b0162a588502.out diff --git a/test/expected/test_cmds.sh_d7eebacdcf2cb194f25fa4ef97b7b5376b442467.err b/test/expected/test_cmds.sh_d7eebacdcf2cb194f25fa4ef97b7b5376b442467.err deleted file mode 100644 index 07df1b2..0000000 --- a/test/expected/test_cmds.sh_d7eebacdcf2cb194f25fa4ef97b7b5376b442467.err +++ /dev/null @@ -1,7 +0,0 @@ -[1m[31m✘ error[0m: invalid timestamp: 2022-06-16Tabc - [1m[31mreason[0m: the leading part of the timestamp was matched, however, the trailing text “Tabc” was not -[36m --> [0m[1mcommand-option[0m:1 -[36m | [0m[37m[40m:[0m[1m[36m[40mgoto[0m[37m[40m 2022-06-16Tabc [0m -[36m | [0m[37m[40m [0m[32m[40m^--^ unrecognized input[0m[37m[40m [0m -[36m =[0m [36mnote[0m: input matched time format “%Y-%m-%d” -[36m =[0m [36mhelp[0m: fix the timestamp or remove the trailing text diff --git a/test/expected/test_cmds.sh_d836c84398c831c976df46f46fe3bf5983c44c37.out b/test/expected/test_cmds.sh_d836c84398c831c976df46f46fe3bf5983c44c37.out index 1d3eae4..926f0f5 100644 --- a/test/expected/test_cmds.sh_d836c84398c831c976df46f46fe3bf5983c44c37.out +++ b/test/expected/test_cmds.sh_d836c84398c831c976df46f46fe3bf5983c44c37.out @@ -1,2 +1,2 @@ -[1m[4mlog_top_line() [0m +[1m[4mlog_top_line()[0m[1m[4m [0m 51 diff --git a/test/expected/test_cmds.sh_da5f7160b967e60dbd772573614e2da89c5e22b2.err b/test/expected/test_cmds.sh_da5f7160b967e60dbd772573614e2da89c5e22b2.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_cmds.sh_da5f7160b967e60dbd772573614e2da89c5e22b2.err diff --git a/test/expected/test_cmds.sh_da5f7160b967e60dbd772573614e2da89c5e22b2.out b/test/expected/test_cmds.sh_da5f7160b967e60dbd772573614e2da89c5e22b2.out new file mode 100644 index 0000000..c9c79dc --- /dev/null +++ b/test/expected/test_cmds.sh_da5f7160b967e60dbd772573614e2da89c5e22b2.out @@ -0,0 +1 @@ +2009-07-20T15:59:26.000 -0700 diff --git a/test/expected/test_cmds.sh_dbdd62995fdefc8318053af05a32416eccfa79fc.out b/test/expected/test_cmds.sh_dbdd62995fdefc8318053af05a32416eccfa79fc.out index f3d0606..24a89e7 100644 --- a/test/expected/test_cmds.sh_dbdd62995fdefc8318053af05a32416eccfa79fc.out +++ b/test/expected/test_cmds.sh_dbdd62995fdefc8318053af05a32416eccfa79fc.out @@ -1 +1 @@ -[7m [0m[1m[7m[31mS[0mat Nov 03 08:00:00 2 normal 2 errors 0 warnings 0 marks +[7m Sat Nov 03 08:00:00 2 normal [0m[1m[7m[31m 2 errors 0 warnings [0m 0 marks diff --git a/test/expected/test_cmds.sh_df6f4cea16bb8f20e6408fe4b40335e6de8a7f18.out b/test/expected/test_cmds.sh_df6f4cea16bb8f20e6408fe4b40335e6de8a7f18.out index e905c55..85a13ff 100644 --- a/test/expected/test_cmds.sh_df6f4cea16bb8f20e6408fe4b40335e6de8a7f18.out +++ b/test/expected/test_cmds.sh_df6f4cea16bb8f20e6408fe4b40335e6de8a7f18.out @@ -1,3 +1,3 @@ -10.0.0.1 - - [20/Jul/2009:22:59:26 +0000] "GET /vmw/cgi/aberrant HTTP/1.0" 200 134 "-" "gPXE/0.9.7" -10.0.0.1 - - [20/Jul/2009:22:59:29 +0000] "GET /vmw/abject/ablaze/able.gz HTTP/1.0" 404 46210 "-" "gPXE/0.9.7" -10.0.0.1 - - [20/Jul/2009:22:59:29 +0000] "GET /vmw/abject/ablaze/aboard.gz HTTP/1.0" 200 78929 "-" "gPXE/0.9.7" +10.0.0.1 - - [20/Jul/2009:22:59:26 +0000] "GET /vmw/cgi/abashed HTTP/1.0" 200 134 "-" "gPXE/0.9.7" +10.0.0.1 - - [20/Jul/2009:22:59:29 +0000] "GET /vmw/aberrant/abhorrent/abiding.gz HTTP/1.0" 404 46210 "-" "gPXE/0.9.7" +10.0.0.1 - - [20/Jul/2009:22:59:29 +0000] "GET /vmw/aberrant/abhorrent/ablaze.gz HTTP/1.0" 200 78929 "-" "gPXE/0.9.7" diff --git a/test/expected/test_cmds.sh_e7e8244fac65bc51dbd5af31be476fe3b8776bfc.out b/test/expected/test_cmds.sh_e7e8244fac65bc51dbd5af31be476fe3b8776bfc.out index 21e4506..012e2ef 100644 --- a/test/expected/test_cmds.sh_e7e8244fac65bc51dbd5af31be476fe3b8776bfc.out +++ b/test/expected/test_cmds.sh_e7e8244fac65bc51dbd5af31be476fe3b8776bfc.out @@ -1,12 +1,12 @@ { -[35m "foo [0mbar" : null, -[35m "array" : [[0m -[35m 1,[0m -[35m 2,[0m -[35m 3[0m -[35m ],[0m -[35m "obj" : [0m{ - "one[35m" : 1[0m, - [35m [0m"two" [35m: tru[0me + [35m"foo bar"[0m : [1m[36mnull[0m, + [35m"array"[0m : [ + [1m1[0m, + [1m2[0m, + [1m3[0m + ], + [35m"obj"[0m : { + [35m"one"[0m : [1m1[0m, + [35m"two"[0m : [1m[36mtrue[0m } } diff --git a/test/expected/test_cmds.sh_eb22c3e94c536a1bfaeae0c40d271b5b4b08f4fc.out b/test/expected/test_cmds.sh_eb22c3e94c536a1bfaeae0c40d271b5b4b08f4fc.out index 6599581..96a0a22 100644 --- a/test/expected/test_cmds.sh_eb22c3e94c536a1bfaeae0c40d271b5b4b08f4fc.out +++ b/test/expected/test_cmds.sh_eb22c3e94c536a1bfaeae0c40d271b5b4b08f4fc.out @@ -1,3 +1,3 @@ -{"log_line":0,"log_part":null,"log_time":"2009-07-20 22:59:26.000","log_idle_msecs":0,"log_level":"info","log_mark":0,"log_comment":null,"log_tags":null,"log_filters":null,"c_ip":"192.168.202.254","cs_method":"GET","cs_referer":"-","cs_uri_query":null,"cs_uri_stem":"/vmw/cgi/tramp","cs_user_agent":"gPXE/0.9.7","cs_username":"-","cs_version":"HTTP/1.0","sc_bytes":134,"sc_status":200,"cs_host":null} -{"log_line":1,"log_part":null,"log_time":"2009-07-20 22:59:29.000","log_idle_msecs":3000,"log_level":"error","log_mark":0,"log_comment":null,"log_tags":null,"log_filters":null,"c_ip":"192.168.202.254","cs_method":"GET","cs_referer":"-","cs_uri_query":null,"cs_uri_stem":"/vmw/vSphere/default/vmkboot.gz","cs_user_agent":"gPXE/0.9.7","cs_username":"-","cs_version":"HTTP/1.0","sc_bytes":46210,"sc_status":404,"cs_host":null} -{"log_line":2,"log_part":null,"log_time":"2009-07-20 22:59:29.000","log_idle_msecs":0,"log_level":"info","log_mark":0,"log_comment":null,"log_tags":null,"log_filters":null,"c_ip":"192.168.202.254","cs_method":"GET","cs_referer":"-","cs_uri_query":null,"cs_uri_stem":"/vmw/vSphere/default/vmkernel.gz","cs_user_agent":"gPXE/0.9.7","cs_username":"-","cs_version":"HTTP/1.0","sc_bytes":78929,"sc_status":200,"cs_host":null} +{"log_line":0,"log_time":"2009-07-20 22:59:26.000","log_level":"info","c_ip":"192.168.202.254","cs_method":"GET","cs_referer":"-","cs_uri_query":null,"cs_uri_stem":"/vmw/cgi/tramp","cs_user_agent":"gPXE/0.9.7","cs_username":"-","cs_version":"HTTP/1.0","sc_bytes":134,"sc_status":200,"cs_host":null,"log_part":null,"log_idle_msecs":0,"log_mark":0,"log_comment":null,"log_tags":null,"log_annotations":null,"log_filters":null} +{"log_line":1,"log_time":"2009-07-20 22:59:29.000","log_level":"error","c_ip":"192.168.202.254","cs_method":"GET","cs_referer":"-","cs_uri_query":null,"cs_uri_stem":"/vmw/vSphere/default/vmkboot.gz","cs_user_agent":"gPXE/0.9.7","cs_username":"-","cs_version":"HTTP/1.0","sc_bytes":46210,"sc_status":404,"cs_host":null,"log_part":null,"log_idle_msecs":3000,"log_mark":0,"log_comment":null,"log_tags":null,"log_annotations":null,"log_filters":null} +{"log_line":2,"log_time":"2009-07-20 22:59:29.000","log_level":"info","c_ip":"192.168.202.254","cs_method":"GET","cs_referer":"-","cs_uri_query":null,"cs_uri_stem":"/vmw/vSphere/default/vmkernel.gz","cs_user_agent":"gPXE/0.9.7","cs_username":"-","cs_version":"HTTP/1.0","sc_bytes":78929,"sc_status":200,"cs_host":null,"log_part":null,"log_idle_msecs":0,"log_mark":0,"log_comment":null,"log_tags":null,"log_annotations":null,"log_filters":null} diff --git a/test/expected/test_cmds.sh_ec3a64cad41b070a1d04e2bfc3dc14cb2d964091.err b/test/expected/test_cmds.sh_ec3a64cad41b070a1d04e2bfc3dc14cb2d964091.err new file mode 100644 index 0000000..5874e8a --- /dev/null +++ b/test/expected/test_cmds.sh_ec3a64cad41b070a1d04e2bfc3dc14cb2d964091.err @@ -0,0 +1,6 @@ +[1m[31m✘ error[0m: Unable to get timezone: bad-zone -- bad-zone not found in timezone database +[36m --> [0m[1mcommand-option[0m:2 +[36m | [0m[37m[40m:[0m[1m[36m[40mconvert-time-to[0m[37m[40m bad-zone [0m +[36m =[0m [36mhelp[0m: [4m:[0m[1m[4mconvert-time-to[0m[4m [0m[4mzone[0m + ══════════════════════════════════════════════════════════════════════ + Convert the focused timestamp to the given timezone diff --git a/test/expected/test_cmds.sh_ec3a64cad41b070a1d04e2bfc3dc14cb2d964091.out b/test/expected/test_cmds.sh_ec3a64cad41b070a1d04e2bfc3dc14cb2d964091.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_cmds.sh_ec3a64cad41b070a1d04e2bfc3dc14cb2d964091.out diff --git a/test/expected/test_config.sh_13fa2428c26fa12e732209620e21466b36bab252.err b/test/expected/test_config.sh_13fa2428c26fa12e732209620e21466b36bab252.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_config.sh_13fa2428c26fa12e732209620e21466b36bab252.err diff --git a/test/expected/test_config.sh_13fa2428c26fa12e732209620e21466b36bab252.out b/test/expected/test_config.sh_13fa2428c26fa12e732209620e21466b36bab252.out new file mode 100644 index 0000000..3d14be3 --- /dev/null +++ b/test/expected/test_config.sh_13fa2428c26fa12e732209620e21466b36bab252.out @@ -0,0 +1 @@ +Hello, /finn at seattle! diff --git a/test/expected/test_config.sh_5105c29004e297521310ca0bd0fd560b01c2c549.err b/test/expected/test_config.sh_5105c29004e297521310ca0bd0fd560b01c2c549.err deleted file mode 100644 index 092b26a..0000000 --- a/test/expected/test_config.sh_5105c29004e297521310ca0bd0fd560b01c2c549.err +++ /dev/null @@ -1,20 +0,0 @@ -[1m[31m✘ error[0m: '[1mbad[0m' is not a supported configuration $schema version -[36m --> [0m[1m{test_dir}/bad-config2/formats/invalid-config/config.bad-schema.json[0m:2 -[36m | [0m[37m[40m "$schema": "bad" [0m -[36m =[0m [36mnote[0m: expecting one of the following $schema values: - [1m https://lnav.org/schemas/config-v1.schema.json[0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/$schema[0m [4m<schema-uri>[0m - [1mDescription[0m - The URI that specifies the schema that describes this type of file - [1mExample[0m - https://lnav.org/schemas/config-v1.schema.json -[1m[31m✘ error[0m: invalid JSON -[36m --> [0m[1m{test_dir}/bad-config2/formats/invalid-config/config.malformed.json[0m:3 -[36m | [0mparse error: object key and value must be separated by a colon (':') -[36m | [0m "ui": "theme", "abc", "def": "" } -[36m | [0m (right here) ------^ -[36m | [0m -[1m[31m✘ error[0m: invalid JSON - [1m[31mreason[0m: parse error: premature EOF -[36m --> [0m[1m{test_dir}/bad-config2/formats/invalid-config/config.truncated.json[0m:3 diff --git a/test/expected/test_config.sh_a0907769aba112d628e7ebe39c4ec252e5e0bc69.err b/test/expected/test_config.sh_a0907769aba112d628e7ebe39c4ec252e5e0bc69.err index ec11ba5..f04b83a 100644 --- a/test/expected/test_config.sh_a0907769aba112d628e7ebe39c4ec252e5e0bc69.err +++ b/test/expected/test_config.sh_a0907769aba112d628e7ebe39c4ec252e5e0bc69.err @@ -1,4 +1,23 @@ -[1m[31m✘ error[0m: '[1mbad[0m' is not a supported configuration $schema version +[33m⚠ warning[0m: unexpected value for property “[1m/ui/theme-defs/invalid-theme/styles/text/bad-property[0m” +[36m --> [0m[1m{test_dir}/bad-config2/configs/invalid-theme/config.json[0m:9 +[36m | [0m[37m[40m "bad-property": "abc"[0m +[36m =[0m [36mhelp[0m: [1mAvailable Properties[0m + [1mcolor[0m [4m#hex|color_name[0m + [1mbackground-color[0m [4m#hex|color_name[0m + [1munderline[0m + [1mbold[0m +[1m[31m✘ error[0m: “abc(” is not a valid regular expression + [1m[31mreason[0m: missing closing parenthesis +[36m --> [0m[1m/ui/theme-defs/invalid-theme/highlights/foobar/pattern[0m +[36m | [0m[37m[40mabc[0m[1m[7m[32m[40m([0m[37m[40m [0m +[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m[37m[40m [0m +[36m --> [0m[1m{test_dir}/bad-config2/configs/invalid-theme/config.json[0m:14 +[36m | [0m[37m[40m "pattern": "abc("[0m +[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m + [1m/ui/theme-defs/invalid-theme/highlights/foobar/pattern[0m [4mregular expression[0m + [1mDescription[0m + The regular expression to highlight +[1m[31m✘ error[0m: “[1mbad[0m” is not a supported configuration $schema version [36m --> [0m[1m{test_dir}/bad-config2/formats/invalid-config/config.bad-schema.json[0m:2 [36m | [0m[37m[40m "$schema": "bad" [0m [36m =[0m [36mnote[0m: expecting one of the following $schema values: @@ -36,3 +55,28 @@ [1m[31m✘ error[0m: invalid JSON [1m[31mreason[0m: parse error: premature EOF [36m --> [0m[1m{test_dir}/bad-config2/formats/invalid-config/config.truncated.json[0m:3 +[1m[31m✘ error[0m: missing value for property “[1m/log/annotations/org.lnav.test.no-condition/condition[0m” + [1m[31mreason[0m: incomplete input +[36m --> [0m[1m/log/annotations/org.lnav.test.no-condition/condition[0m +[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m + [1m/log/annotations/org.lnav.test.no-condition/condition[0m [4m<SQL-expression>[0m + [1mDescription[0m + The SQLite expression to execute for a log message that determines whether or not this annotation is applicable. The expression is evaluated the same way as a filter expression +[1m[31m✘ error[0m: missing value for property “[1m/log/annotations/org.lnav.test.no-handler/handler[0m” + [1m[31mreason[0m: Every annotation requires a handler +[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m + [1m/log/annotations/org.lnav.test.no-handler/handler[0m [4m<script>[0m + [1mDescription[0m + The script to execute to generate the annotation content. A JSON object with the log message content will be sent to the script on the standard input +[1m[31m✘ error[0m: invalid value for property “[1m/ui/theme-defs/invalid-theme/styles/text/color[0m” + [1m[31mreason[0m: invalid color -- “InvalidColor” +[1m[31m | [0m [1m[31mreason[0m: Unknown color: 'InvalidColor'. See https://jonasjacek.github.io/colors/ for a list of supported color names +[36m --> [0m[1m{test_dir}/bad-config2/configs/invalid-theme/config.json[0m:8 +[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m + [1m/ui/theme-defs/invalid-theme/styles/text/color[0m [4m#hex|color_name[0m + [1mDescription[0m + The foreground color value for this style. The value can be the name of an xterm color, the hexadecimal value, or a theme variable reference. + [1mExamples[0m + #fff + Green + $black diff --git a/test/expected/test_config.sh_d708b6fd32d83ce0ee00ca5383388308ba5a06e1.err b/test/expected/test_config.sh_d708b6fd32d83ce0ee00ca5383388308ba5a06e1.err index 93cba93..1849a63 100644 --- a/test/expected/test_config.sh_d708b6fd32d83ce0ee00ca5383388308ba5a06e1.err +++ b/test/expected/test_config.sh_d708b6fd32d83ce0ee00ca5383388308ba5a06e1.err @@ -1,6 +1,6 @@ [1m[31m✘ error[0m: invalid value for property “[1m/ui/theme[0m” [1m[31mreason[0m: unknown theme -- “baddy” -[1m[31m | [0m [36m =[0m [36mhelp[0m: The available themes are: default, eldar, grayscale, monocai, night-owl, solarized-dark, solarized-light +[1m[31m | [0m [36m =[0m [36mhelp[0m: The available themes are: default, dracula, eldar, grayscale, monocai, night-owl, solarized-dark, solarized-light [36m --> [0m[1mcommand-option[0m:1 [36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m [1m/ui/theme[0m [4mtheme_name[0m diff --git a/test/expected/test_format_installer.sh_1e08efc3b8c7b67d944a1f8c475cd31d98d5b4f6.err b/test/expected/test_format_installer.sh_1e08efc3b8c7b67d944a1f8c475cd31d98d5b4f6.err new file mode 100644 index 0000000..8b4f3e4 --- /dev/null +++ b/test/expected/test_format_installer.sh_1e08efc3b8c7b67d944a1f8c475cd31d98d5b4f6.err @@ -0,0 +1,2 @@ +[1m[31m✘ error[0m: unable to open configuration file: [1m/non-existent/file[0m + [1m[31mreason[0m: No such file or directory diff --git a/test/expected/test_format_installer.sh_1e08efc3b8c7b67d944a1f8c475cd31d98d5b4f6.out b/test/expected/test_format_installer.sh_1e08efc3b8c7b67d944a1f8c475cd31d98d5b4f6.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_format_installer.sh_1e08efc3b8c7b67d944a1f8c475cd31d98d5b4f6.out diff --git a/test/expected/test_format_installer.sh_6cd73153a8990b8ddb8ce489e90ec667a442f7f9.err b/test/expected/test_format_installer.sh_6cd73153a8990b8ddb8ce489e90ec667a442f7f9.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_format_installer.sh_6cd73153a8990b8ddb8ce489e90ec667a442f7f9.err diff --git a/test/expected/test_format_installer.sh_6cd73153a8990b8ddb8ce489e90ec667a442f7f9.out b/test/expected/test_format_installer.sh_6cd73153a8990b8ddb8ce489e90ec667a442f7f9.out new file mode 100644 index 0000000..95b5acd --- /dev/null +++ b/test/expected/test_format_installer.sh_6cd73153a8990b8ddb8ce489e90ec667a442f7f9.out @@ -0,0 +1,2 @@ +[1m[32m✔ [0minstalled -- [1m../installer-test-home/.lnav/formats/installed/test_log.json[0m +[36m =[0m [36mnote[0m: the previously installed “[1mtest_log.json[0m” was backed up to -- [1m../installer-test-home/.lnav/formats/installed/test_log.json.bak[0m diff --git a/test/expected/test_format_installer.sh_947cbc64a150c7fe2a17e1c7a69e9a932aeaa16b.err b/test/expected/test_format_installer.sh_947cbc64a150c7fe2a17e1c7a69e9a932aeaa16b.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_format_installer.sh_947cbc64a150c7fe2a17e1c7a69e9a932aeaa16b.err diff --git a/test/expected/test_format_installer.sh_947cbc64a150c7fe2a17e1c7a69e9a932aeaa16b.out b/test/expected/test_format_installer.sh_947cbc64a150c7fe2a17e1c7a69e9a932aeaa16b.out new file mode 100644 index 0000000..8ac09f2 --- /dev/null +++ b/test/expected/test_format_installer.sh_947cbc64a150c7fe2a17e1c7a69e9a932aeaa16b.out @@ -0,0 +1 @@ +[1m[35mⓘ info[0m: file is already installed at -- [1m../installer-test-home/.lnav/formats/installed/test_log.json[0m diff --git a/test/expected/test_format_loader.sh_15e861d2327512a721fd42ae51dc5427689e0bb6.out b/test/expected/test_format_loader.sh_15e861d2327512a721fd42ae51dc5427689e0bb6.out index 5f62842..2b877c6 100644 --- a/test/expected/test_format_loader.sh_15e861d2327512a721fd42ae51dc5427689e0bb6.out +++ b/test/expected/test_format_loader.sh_15e861d2327512a721fd42ae51dc5427689e0bb6.out @@ -1,9 +1,9 @@ -log_line,log_part,log_time,log_idle_msecs,log_level,log_mark,log_comment,log_tags,log_filters -0,<NULL>,2016-06-30 12:00:01.000,0,trace,0,<NULL>,<NULL>,<NULL> -1,<NULL>,2016-06-30 12:00:02.000,1000,debug,0,<NULL>,<NULL>,<NULL> -2,<NULL>,2016-06-30 12:00:03.000,1000,debug2,0,<NULL>,<NULL>,<NULL> -3,<NULL>,2016-06-30 12:00:04.000,1000,debug3,0,<NULL>,<NULL>,<NULL> -4,<NULL>,2016-06-30 12:00:05.000,1000,info,0,<NULL>,<NULL>,<NULL> -5,<NULL>,2016-06-30 12:00:06.000,1000,warning,0,<NULL>,<NULL>,<NULL> -6,<NULL>,2016-06-30 12:00:07.000,1000,fatal,0,<NULL>,<NULL>,<NULL> -7,<NULL>,2016-06-30 12:00:08.000,1000,info,0,<NULL>,<NULL>,<NULL> +log_line,log_time,log_level,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +0,2016-06-30 12:00:01.000,trace,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +1,2016-06-30 12:00:02.000,debug,<NULL>,1000,0,<NULL>,<NULL>,<NULL>,<NULL> +2,2016-06-30 12:00:03.000,debug2,<NULL>,1000,0,<NULL>,<NULL>,<NULL>,<NULL> +3,2016-06-30 12:00:04.000,debug3,<NULL>,1000,0,<NULL>,<NULL>,<NULL>,<NULL> +4,2016-06-30 12:00:05.000,info,<NULL>,1000,0,<NULL>,<NULL>,<NULL>,<NULL> +5,2016-06-30 12:00:06.000,warning,<NULL>,1000,0,<NULL>,<NULL>,<NULL>,<NULL> +6,2016-06-30 12:00:07.000,fatal,<NULL>,1000,0,<NULL>,<NULL>,<NULL>,<NULL> +7,2016-06-30 12:00:08.000,info,<NULL>,1000,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_format_loader.sh_3f1d6f35e8a9ae4fd3e91ffaa82a037b5a847ab7.err b/test/expected/test_format_loader.sh_3f1d6f35e8a9ae4fd3e91ffaa82a037b5a847ab7.err deleted file mode 100644 index 202b451..0000000 --- a/test/expected/test_format_loader.sh_3f1d6f35e8a9ae4fd3e91ffaa82a037b5a847ab7.err +++ /dev/null @@ -1,171 +0,0 @@ -[1m[31m✘ error[0m: “invalid(abc” is not a valid regular expression - [1m[31mreason[0m: missing closing parenthesis -[36m --> [0m[1m/invalid_props_log/tags/badtag3/pattern[0m -[36m | [0m[37m[40minvalid[0m[1m[7m[32m[40m([0m[37m[40mabc [0m -[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:35 -[36m | [0m[37m[40m "pattern": "invalid(abc"[0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/invalid_props_log/tags/badtag3/pattern[0m [4m<regex>[0m - [1mDescription[0m - The regular expression to match against the body of the log message - [1mExample[0m - \w+ is down -[1m[31m✘ error[0m: “abc(def” is not a valid regular expression - [1m[31mreason[0m: missing closing parenthesis -[36m --> [0m[1m/invalid_props_log/search-table/bad_table_regex/pattern[0m -[36m | [0m[37m[40mabc[0m[1m[7m[32m[40m([0m[37m[40mdef [0m -[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m[37m[40m [0m -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:40 -[36m | [0m[37m[40m "pattern": "abc(def" [0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/invalid_props_log/search-table/bad_table_regex/pattern[0m [4m<regex>[0m - [1mDescription[0m - The regular expression for this search table. -[1m[31m✘ error[0m: “^(?<timestamp>\d+: (?<body>.*)$” is not a valid regular expression - [1m[31mreason[0m: missing closing parenthesis -[36m --> [0m[1m/bad_regex_log/regex/std/pattern[0m -[36m | [0m[1m[36m[40m^[0m[1m[7m[32m[40m([0m[1m[32m[40m?[0m[1m[36m[40m<[0m[37m[40mtimestamp>[0m[1m[37m[40m\d[0m[1m[36m[40m+[0m[37m[40m: [0m[1m[32m[40m([0m[1m[32m[40m?[0m[1m[36m[40m<[0m[37m[40mbody>[0m[1m[36m[40m.[0m[1m[36m[40m*[0m[1m[32m[40m)[0m[1m[36m[40m$[0m[37m[40m [0m -[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-regex/format.json[0m:6 -[36m | [0m[37m[40m "pattern": "^(?<timestamp>\\d+: (?<body>.*)$"[0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/bad_regex_log/regex/std/pattern[0m [4m<message-regex>[0m - [1mDescription[0m - The regular expression to match a log message and capture fields. -[1m[31m✘ error[0m: “(foo” is not a valid regular expression - [1m[31mreason[0m: missing closing parenthesis -[36m --> [0m[1mpattern[0m -[36m | [0m[1m[7m[32m[40m([0m[37m[40mfoo [0m -[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m[37m[40m [0m -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-regex/format.json[0m:13 -[36m | [0m[37m[40m "error": "(foo" [0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/bad_regex_log/level/error[0m [4m<pattern|integer>[0m - [1mDescription[0m - The regular expression used to match the log text for this level. For JSON logs with numeric levels, this should be the number for the corresponding level. -[1m[31m✘ error[0m: “abc(” is not a valid regular expression - [1m[31mreason[0m: missing closing parenthesis -[36m --> [0m[1m/bad_regex_log/highlights/foobar/pattern[0m -[36m | [0m[37m[40mabc[0m[1m[7m[32m[40m([0m[37m[40m [0m -[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m[37m[40m [0m -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-regex/format.json[0m:25 -[36m | [0m[37m[40m "pattern": "abc(" [0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/bad_regex_log/highlights/foobar/pattern[0m [4m<regex>[0m - [1mDescription[0m - A regular expression to highlight in logs of this format. -[1m[31m✘ error[0m: “foo” is not a valid value for option “[1m/bad_sample_log/value/pid/kind[0m” -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:24 -[36m | [0m[37m[40m "kind": "foo" [0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/bad_sample_log/value/pid/kind[0m [4m<data-type>[0m - [1mDescription[0m - The type of data in the field - [1mAllowed Values[0m - [1mstring[0m, [1minteger[0m, [1mfloat[0m, [1mboolean[0m, [1mjson[0m, [1mstruct[0m, [1mquoted[0m, [1mxml[0m -[1m[31m✘ error[0m: '[1mbad[0m' is not a supported log format $schema version -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-schema/format.json[0m:2 -[36m | [0m[37m[40m "$schema": "bad" [0m -[36m =[0m [36mnote[0m: expecting one of the following $schema values: - [1m https://lnav.org/schemas/format-v1.schema.json[0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/$schema[0m [4mThe URI of the schema for this file[0m - [1mDescription[0m - Specifies the type of this file -[1m[31m✘ error[0m: invalid pattern: “[1mincomplete-match[0m” - [1m[31mreason[0m: pattern does not match entire message -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-regex/format.json[0m:20 -[36m | [0m[37m[40m1428634687123; foo [0m -[36m | [0m[37m[40m [0m[1m[31m[40m^ matched up to here[0m[37m[40m [0m -[36m =[0m [36mnote[0m: [1mincomplete-match[0m = [1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[36m+[0m[1m[32m)[0m; -[36m =[0m [36mhelp[0m: update the regular expression to fully capture the sample message -[1m[31m✘ error[0m: invalid sample log message: "abc: foo" - [1m[31mreason[0m: unrecognized timestamp -- abc -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:30 -[36m =[0m [36mnote[0m: the following custom formats were tried: - abc - [36m^ [0m“[1m%i[0m”[36m matched up to here[0m -[36m =[0m [36mhelp[0m: If the timestamp format is not supported by default, you can add a custom format with the “[1mtimestamp-format[0m” property -[1m[31m✘ error[0m: invalid sample log message: "1428634687123| debug hello" - [1m[31mreason[0m: “[1mdebug[0m” does not match the expected level of “[1minfo[0m” -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:33 -[36m =[0m [36mnote[0m: matched regex = [1mwith-level[0m - captured level = “debug” -[1m[31m✘ error[0m: invalid pattern: “[1mwith-level[0m” - [1m[31mreason[0m: pattern does not match entire multiline sample message -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:37 -[36m =[0m [36mnote[0m: [1mwith-level[0m = [1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[36m+[0m[1m[32m)[0m\| [1m[32m([0m[1m[32m?[0m[1m[36m<[0mlevel>[1m\w[0m[1m[36m+[0m[1m[32m)[0m [1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m\w[0m[1m[36m+[0m[1m[32m)[0m[1m[36m$[0m -[36m =[0m [36mhelp[0m: use “.*” to match new-lines -[1m[31m✘ error[0m: invalid sample log message: "1428634687123; foo bar" - [1m[31mreason[0m: sample does not match any patterns -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:41 -[36m =[0m [36mnote[0m: the following shows how each pattern matched this sample: - [37m[40m1428634687123; foo bar[0m - [36m^ [0m[1mbad-time[0m[36m matched up to here[0m - [36m^ [0m[1msemi[0m[36m matched up to here[0m - [36m^ [0m[1mstd[0m[36m matched up to here[0m - [36m^ [0m[1mwith-level[0m[36m matched up to here[0m -[36m =[0m [36mnote[0m: [1mbad-time [0m = “[1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\w[0m[1m[36m+[0m[1m[32m)[0m: [1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m\w[0m[1m[36m+[0m[1m[32m)[0m[1m[36m$[0m” - [1msemi [0m = “[1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[36m+[0m[1m[32m)[0m; [1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m\w[0m[1m[36m+[0m[1m[32m)[0m[1m[36m$[0m” - [1mstd [0m = “[1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[36m+[0m[1m[32m)[0m: [1m[32m([0m[1m[32m?[0m[1m[36m<[0mpid>[1m\w[0m[1m[36m+[0m[1m[32m)[0m [1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m[36m.[0m[1m[36m*[0m[1m[32m)[0m[1m[36m$[0m” - [1mwith-level[0m = “[1m[36m^[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[36m+[0m[1m[32m)[0m\| [1m[32m([0m[1m[32m?[0m[1m[36m<[0mlevel>[1m\w[0m[1m[36m+[0m[1m[32m)[0m [1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m\w[0m[1m[36m+[0m[1m[32m)[0m[1m[36m$[0m” - -[33m⚠ warning[0m: invalid pattern: “[1m/bad_sample_log/regex/semi[0m” - [33mreason[0m: pattern does not match any samples -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:10 -[36m =[0m [36mhelp[0m: every pattern should have at least one sample that it matches -[33m⚠ warning[0m: invalid pattern: “[1m/bad_sample_log/regex/std[0m” - [33mreason[0m: pattern does not match any samples -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:7 -[36m =[0m [36mhelp[0m: every pattern should have at least one sample that it matches -[33m⚠ warning[0m: invalid value “[1m/invalid_props_log/value/non-existent[0m” - [33mreason[0m: no patterns have a capture named “non-existent” -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4 -[36m =[0m [36mnote[0m: the following captures are available: - [1mbody[0m, [1mpid[0m, [1mtimestamp[0m -[36m =[0m [36mhelp[0m: values are populated from captures in patterns, so at least one pattern must have a capture with this value name -[1m[31m✘ error[0m: invalid tag definition “[1m/invalid_props_log/tags/badtag[0m” - [1m[31mreason[0m: tag definitions must have a non-empty pattern -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4 -[1m[31m✘ error[0m: invalid tag definition “[1m/invalid_props_log/tags/badtag2[0m” - [1m[31mreason[0m: tag definitions must have a non-empty pattern -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4 -[1m[31m✘ error[0m: invalid tag definition “[1m/invalid_props_log/tags/badtag3[0m” - [1m[31mreason[0m: tag definitions must have a non-empty pattern -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4 -[1m[31m✘ error[0m: invalid value for property “[1m/invalid_props_log/timestamp-field[0m” - [1m[31mreason[0m: “ts” was not found in the pattern at [1m/invalid_props_log/regex/std[0m -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4 -[36m =[0m [36mnote[0m: the following captures are available: - [1mbody[0m, [1mpid[0m, [1mtimestamp[0m -[1m[31m✘ error[0m: “not a color” is not a valid color value for property “[1m/invalid_props_log/highlights/hl1/color[0m” - [1m[31mreason[0m: Unknown color: 'not a color'. See https://jonasjacek.github.io/colors/ for a list of supported color names -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:23 -[1m[31m✘ error[0m: “also not a color” is not a valid color value for property “[1m/invalid_props_log/highlights/hl1/background-color[0m” - [1m[31mreason[0m: Unknown color: 'also not a color'. See https://jonasjacek.github.io/colors/ for a list of supported color names -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:24 -[1m[31m✘ error[0m: “[1mno_regexes_log[0m” is not a valid log format - [1m[31mreason[0m: no regexes specified -[36m --> [0m[1m{test_dir}/bad-config/formats/no-regexes/format.json[0m:4 -[1m[31m✘ error[0m: “[1mno_regexes_log[0m” is not a valid log format - [1m[31mreason[0m: log message samples must be included in a format definition -[36m --> [0m[1m{test_dir}/bad-config/formats/no-regexes/format.json[0m:4 -[1m[31m✘ error[0m: “[1mno_sample_log[0m” is not a valid log format - [1m[31mreason[0m: log message samples must be included in a format definition -[36m --> [0m[1m{test_dir}/bad-config/formats/no-samples/format.json[0m:4 -[1m[31m✘ error[0m: failed to compile SQL statement - [1m[31mreason[0m: near "TALE": syntax error -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sql/init.sql[0m:4 -[36m | [0m[32m[40m-- comment test [0m -[36m | [0m[1m[36m[40mCREATE[0m[37m[40m [0m[37m[40mTALE[0m[37m[40m [0m[1m[37m[40minvalid[0m[1m[37m[40m [0m[37m[40m([0m[37m[40mx[0m[37m[40m [0m[37m[40my[0m[37m[40m [0m[37m[40mz[0m[37m[40m); [0m -[36m | [0m[37m[40m [0m[36m[40m^ [0m[1m[31m[40mnear "TALE": syntax error[0m[37m[40m [0m -[1m[31m✘ error[0m: failed to execute SQL statement - [1m[31mreason[0m: [1m[31m✘ error[0m: “abc(” is not a valid regular expression -[1m[31m | [0m [1m[31mreason[0m: missing closing parenthesis -[1m[31m | [0m [36m --> [0m[1marg[0m -[1m[31m | [0m [36m | [0m[37m[40mabc[0m[1m[7m[32m[40m([0m[37m[40m [0m -[1m[31m | [0m [36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m -[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sql/init2.sql[0m -[36m | [0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mregexp_match[0m[1m[7m[31m[40m([0m[35m[40m'abc('[0m[37m[40m, [0m[35m[40m'123'[0m[37m[40m) [0m -[36m | [0m[1m[36m[40mFROM[0m[37m[40m [0m[37m[40msqlite_master[0m[37m[40m; [0m diff --git a/test/expected/test_format_loader.sh_5992e2695b7e6cf1f3520dbb87af8fc2b8f27088.err b/test/expected/test_format_loader.sh_5992e2695b7e6cf1f3520dbb87af8fc2b8f27088.err index c3d7699..578c06f 100644 --- a/test/expected/test_format_loader.sh_5992e2695b7e6cf1f3520dbb87af8fc2b8f27088.err +++ b/test/expected/test_format_loader.sh_5992e2695b7e6cf1f3520dbb87af8fc2b8f27088.err @@ -104,6 +104,13 @@ [1m/$schema[0m [4mThe URI of the schema for this file[0m [1mDescription[0m Specifies the type of this file +[1m[31m✘ error[0m: SQL expression is invalid + [1m[31mreason[0m: unrecognized token: "'foobar" +[36m --> [0m[1m/bad_file_format1/converter/header/expr/default[0m +[36m | [0m[37m[40m:header[0m[37m[40m [0m[1m[36m[40mREGEXP[0m[37m[40m [0m[1m[7m[31m[40m'[0m[37m[40mfoobar [0m +[1m[31m✘ error[0m: A command is required when a converter is defined +[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-file-format/format.json[0m:4 +[36m =[0m [36mhelp[0m: The converter command transforms the file into a format that can be consumed by lnav [1m[31m✘ error[0m: invalid line format element “[1m/bad_json_log/line-format/0/field[0m” [1m[31mreason[0m: “” is not a defined value [36m --> [0m[1m{test_dir}/bad-config/formats/invalid-json-format/format.json[0m:7 @@ -160,6 +167,10 @@ [33mreason[0m: pattern does not match any samples [36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sample/format.json[0m:7 [36m =[0m [36mhelp[0m: every pattern should have at least one sample that it matches +[1m[31m✘ error[0m: invalid pattern: “[1m/invalid_props_log/regex/std[0m” + [1m[31mreason[0m: no timestamp capture found in the pattern +[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4 +[36m =[0m [36mhelp[0m: all log messages need a timestamp [33m⚠ warning[0m: invalid value “[1m/invalid_props_log/value/non-existent[0m” [33mreason[0m: no patterns have a capture named “non-existent” [36m --> [0m[1m{test_dir}/bad-config/formats/invalid-properties/format.json[0m:4 @@ -198,6 +209,10 @@ [1m[31m✘ error[0m: “[1mno_sample_log[0m” is not a valid log format [1m[31mreason[0m: log message samples must be included in a format definition [36m --> [0m[1m{test_dir}/bad-config/formats/no-samples/format.json[0m:4 +[1m[31m✘ error[0m: invalid sample log message: "gitea | 2023/09/24 22:15:55 cmd/web.go:223:runWeb() [I] Starting Gitea on PID: 7" + [1m[31mreason[0m: timestamp was not captured +[36m --> [0m[1m{test_dir}/bad-config/formats/invalid-no-tscap/format.json[0m:25 +[36m =[0m [36mhelp[0m: A timestamp needs to be captured in order for a line to be recognized as a log message [1m[31m✘ error[0m: failed to compile SQL statement [1m[31mreason[0m: near "TALE": syntax error [36m --> [0m[1m{test_dir}/bad-config/formats/invalid-sql/init.sql[0m:4 diff --git a/test/expected/test_format_loader.sh_a47f2b090a5d8a226783835c7ff7d1c8821f11ed.err b/test/expected/test_format_loader.sh_a47f2b090a5d8a226783835c7ff7d1c8821f11ed.err deleted file mode 100644 index f657d87..0000000 --- a/test/expected/test_format_loader.sh_a47f2b090a5d8a226783835c7ff7d1c8821f11ed.err +++ /dev/null @@ -1,61 +0,0 @@ -[1m[31m✘ error[0m: invalid JSON -[36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-json/format.json[0m:4 -[36m | [0mparse error: object key and value must be separated by a colon (':') -[36m | [0m ar_log": { "abc" } } -[36m | [0m (right here) ------^ -[36m | [0m -[1m[31m✘ error[0m: “abc(” is not a valid regular expression - [1m[31mreason[0m: missing closing parenthesis -[36m --> [0m[1m/invalid_key_log/level-pointer[0m -[36m | [0m[37m[40mabc[0m[1m[7m[32m[40m([0m[37m[40m [0m -[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m[37m[40m [0m -[36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-key/format.json[0m:4 -[36m | [0m[37m[40m "level-pointer": "abc(", [0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/invalid_key_log/level-pointer[0m - [1mDescription[0m - A regular-expression that matches the JSON-pointer of the level property -[1m[31m✘ error[0m: “def[ghi” is not a valid regular expression - [1m[31mreason[0m: missing terminating ] for character class -[36m --> [0m[1m/invalid_key_log/file-pattern[0m -[36m | [0m[37m[40mdef[0m[1m[7m[32m[40m[[0m[37m[40mghi [0m -[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing terminating ] for character class[0m -[36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-key/format.json[0m:5 -[36m | [0m[37m[40m "file-pattern": "def[ghi", [0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/invalid_key_log/file-pattern[0m - [1mDescription[0m - A regular expression that restricts this format to log files with a matching name -[33m⚠ warning[0m: unexpected value for property “[1m/invalid_key_log/value/test/identifiers[0m” -[36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-key/format.json[0m:14 -[36m | [0m[37m[40m "identifiers": true [0m -[36m =[0m [36mhelp[0m: [1mAvailable Properties[0m - [1mkind[0m [4m<data-type>[0m - [1mcollate[0m [4m<function>[0m - [1munit[0m[1m/[0m - [1midentifier[0m [4m<bool>[0m - [1mforeign-key[0m [4m<bool>[0m - [1mhidden[0m [4m<bool>[0m - [1maction-list[0m [4m<string>[0m - [1mrewriter[0m [4m<command>[0m - [1mdescription[0m [4m<string>[0m -[1m[31m✘ error[0m: “-1.2” is not a valid value for “[1m/invalid_key_log/timestamp-divisor[0m” - [1m[31mreason[0m: value cannot be less than or equal to zero -[36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-key/format.json[0m:25 -[36m | [0m[37m[40m "timestamp-divisor": -1.2 [0m -[36m =[0m [36mhelp[0m: [1mProperty Synopsis[0m - [1m/invalid_key_log/timestamp-divisor[0m [4m<number>[0m - [1mDescription[0m - The value to divide a numeric timestamp by in a JSON log. -[1m[31m✘ error[0m: “[1mfoobar_log[0m” is not a valid log format - [1m[31mreason[0m: no regexes specified -[36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-json/format.json[0m:3 -[1m[31m✘ error[0m: “[1mfoobar_log[0m” is not a valid log format - [1m[31mreason[0m: log message samples must be included in a format definition -[36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-json/format.json[0m:3 -[1m[31m✘ error[0m: “[1minvalid_key_log[0m” is not a valid log format - [1m[31mreason[0m: structured logs cannot have regexes -[36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-key/format.json[0m:4 -[1m[31m✘ error[0m: invalid line format element “[1m/invalid_key_log/line-format/0/field[0m” - [1m[31mreason[0m: “non-existent” is not a defined value -[36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-key/format.json[0m:22 diff --git a/test/expected/test_format_loader.sh_fca6c1fb9f3aaa69b3ffb2d1a8a86434b2f4a247.err b/test/expected/test_format_loader.sh_fca6c1fb9f3aaa69b3ffb2d1a8a86434b2f4a247.err index 3272370..6ce508e 100644 --- a/test/expected/test_format_loader.sh_fca6c1fb9f3aaa69b3ffb2d1a8a86434b2f4a247.err +++ b/test/expected/test_format_loader.sh_fca6c1fb9f3aaa69b3ffb2d1a8a86434b2f4a247.err @@ -58,6 +58,10 @@ [1m[31m✘ error[0m: “[1mfoobar_log[0m” is not a valid log format [1m[31mreason[0m: log message samples must be included in a format definition [36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-json/format.json[0m:3 +[1m[31m✘ error[0m: invalid pattern: “[1m/invalid_key_log/regex/foo[0m” + [1m[31mreason[0m: no timestamp capture found in the pattern +[36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-key/format.json[0m:4 +[36m =[0m [36mhelp[0m: all log messages need a timestamp [1m[31m✘ error[0m: “[1minvalid_key_log[0m” is not a valid log format [1m[31mreason[0m: structured logs cannot have regexes [36m --> [0m[1m{test_dir}/bad-config-json/formats/invalid-key/format.json[0m:4 diff --git a/test/expected/test_gantt.sh_3af11588ee36bab7e2caea0f7a24d3c9cafd2310.err b/test/expected/test_gantt.sh_3af11588ee36bab7e2caea0f7a24d3c9cafd2310.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_3af11588ee36bab7e2caea0f7a24d3c9cafd2310.err diff --git a/test/expected/test_gantt.sh_3af11588ee36bab7e2caea0f7a24d3c9cafd2310.out b/test/expected/test_gantt.sh_3af11588ee36bab7e2caea0f7a24d3c9cafd2310.out new file mode 100644 index 0000000..c523914 --- /dev/null +++ b/test/expected/test_gantt.sh_3af11588ee36bab7e2caea0f7a24d3c9cafd2310.out @@ -0,0 +1,86 @@ + 2011-11-03T00:17 5m 2011-11-03T00:22 + 5m +[1m[4m[35m Duration [0m[4m|[0m[4m [0m[1m[4m[31m✘[0m[4m[33m▲[0m[4m [0m[4m|[0m[1m[4m[35m Operation[0m +[32m 844[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCwFs1P2UcUdlSxD2L[0m[7m[32ma[0m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCoX7zA3OJKGUOSCBY[0m[7m[32m2[0m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCdrfXZ1NOFPEawF21[0m[1m[7m[32m8[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCJwUi9bdB9c1lLW44[0m[1m[7m[32m [0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCJxSUgkInyKSHiju1[0m[7m[32m [0m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCT0JIh479jXIGt0Po[0m[7m[32m1[0m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC6Q4Vm14ZJIlZhsXq[0m[1m[7m[32mk[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 1s070[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCtgxRAqDLvrRUQdqe[0m[1m[7m[32m [0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCdysLK1XpcrXOpVDu[0m[7m[32mh[0m[32m [0m[32m192.168.2.76[0m +[32m 200[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC6nSoj1Qco9PGyslz[0m[7m[32m6[0m[32m [0m[32m192.168.2.76[0m +[1m[32m 23s044[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCN5hnY3x51j6Hr1v4[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCdZUPH2DKOE7zzCLE[0m[1m[7m[32m3[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m 32s388[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCmWpC33jXuKpXNLci[0m[7m[32me[0m[7m[32m 1[0m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCsBgiE1WmGP4Yo749[0m[7m[32mh[0m[32m [0m[32m192.168.2.76[0m +[1m[32m 657[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCYfHyC28tAhkLYkXB[0m[1m[7m[32m7[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCtANmVrHYMtkWqPE5[0m[1m[7m[32m [0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m 647[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCSTH8n1O1nv0ztxNQ[0m[7m[32md[0m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC4uDKU5tpeRU9Su19[0m[7m[32m [0m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCEh6Ka2HInkNSH01L2[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 4s840[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCjPGiy13ncXKxU765j[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 6s895[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCPoz7NUpXISemlNSd[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[32m 6s837[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCt6ixh35y9AEr7J7o9[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 6s889[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCaEFHq2HVQ5iGJQiD9[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 6s875[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCjinlH2fzDtvzI9637[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 6s884[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCedw7H3ddE2yLiLoXc[0m[7m[32m [0m[32m192.168.2.76[0m +[32m 6s917[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCAUlC249svUfE6q0g3[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCIJIDL1ULo4HpT24Gl[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 016[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCLsqp41RLUd83arUQb[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 166[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCbCciH11995WKkobR1[0m[7m[32m [0m[32m192.168.2.76[0m +[32m 457[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mClcvKE1dqsEFQu46m9[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCaP2LpLGvsmX7yJO[0m[1m[32m [0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 043[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCNbPns4mOMGgjI8Ele[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 557[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC185u7u9Q4qhJPhzl[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[32m 129[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCKzjfhsJ8vrn2rrfg[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 562[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCiIjAe1n5MnPOVpQ9f[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCGv2Tp4Ngt8MmKmVRd[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 7s071[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC5DisEMFU77Wk9Kae[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCs5yEZ3ELZTeuTOsP4[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 4s667[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCu4gIx1BDNtGOl7Ht2[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 1s288[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCRgW2I2zo3SInm6iT8[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCWJhMU2cTLEnseTmCb[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m 042[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCejI402rKGtdBXij4f[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC2KnU34GcVV6amo8va[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC5vx4911iSMAJuShFd[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCbUCgw1DrIGcXzONB7[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m 502[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC96j2X1DixgLTj2Oi8[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCYYyja3FFNEnftw3K6[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m█[0m[1m[33m [0m[1m[32m [0m[1m[32mCBHHuR1xFnm5C5CQB[0m[1m[7m[32mc[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCD1jfU3p9abEm77mzf[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC0K9DaoPFkfnzwlZa[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m 616[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCbQAWi3GX2bCmX5L56[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[1m[32m 298[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCd8s2R3OGDgkhnvSu9[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[32m 205[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCBeaXe4Iyj1gXd2Iq[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCmWpSw3VtjiAceBCwf[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[1m[32m 1m12s201[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCbNCgO1MzloHRNeY4f[0m[1m[32m 1[0m[1m[7m[32m92.168.2[0m[1m[32m.76[0m +[1m[32m 315[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCX1GjC4vn52UY1uDv6[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCaPClb1Bf0RrRGtyWi[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m 35s642[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCibfNy1QQW4ImDWRq5[0m[32m 1[0m[7m[32m92.1[0m[32m68.2.76[0m +[1m[32m 1m11s547[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCTRXSR3blXJE5ZE7Ij[0m[1m[32m 1[0m[1m[7m[32m92.168.2[0m[1m[32m.76[0m +[1m[32m 1m11s536[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCnGze54kQWWpKqrrZ4[0m[1m[32m 1[0m[1m[7m[32m92.168.2[0m[1m[32m.76[0m +[32m 12s337[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC3TZMB4CrUwYfkGJy1[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCK957ERTz8lBycly4[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[1m[32m 1s309[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCO5QKYQkcSdxQFA35[0m[1m[32m 19[0m[1m[7m[32m2[0m[1m[32m.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCurHpb1TGZOktTRNP1[0m[1m[32m 19[0m[1m[7m[32m2[0m[1m[32m.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCuUKOQ1R3CqKBgeTdf[0m[32m 19[0m[7m[32m2[0m[32m.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC3xkHgJnzZszVSTpi[0m[32m 192[0m[7m[32m.[0m[32m168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCMrjgF2XLmRh9C9TR4[0m[1m[32m 192[0m[1m[7m[32m.[0m[1m[32m168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC2vQ8sVgyADHjtEda[0m[1m[32m 192.[0m[1m[7m[32m1[0m[1m[32m68.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCD69521bDXIAb4IkW[0m[32m 192.[0m[7m[32m1[0m[32m68.2.76[0m +[32m 6s648[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCC3vUI3gFB04zLvWRa[0m[32m 192.[0m[7m[32m1[0m[32m68.2.76[0m +[1m[32m 2s666[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC7Krri4g9tZfHniGXh[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCmxyBl2c8XAMTuHEk4[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[32m 499[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCSvs6v26bQqFylkk6l[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC4pHul1H3OeWYz7o7i[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC7Lcvr4vsTf6eYpBva[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCV8faD4L1sLL5kDwN9[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCxyAKs10ppnHFP6O8i[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC6MrHk2C7rLuJqhjsg[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCvfUrT2DgYXXoZw9Ah[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCBX0254QJoklXNbvv2[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC6Ym6jvMgikT0xTTc[0m[32m 192.168.2[0m[7m[32m.[0m[32m76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCRNn9f1zKNlzHSM5pa[0m[32m 192.168.2[0m[7m[32m.[0m[32m76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCJLgi92kpp2gLgGTE5[0m[1m[32m 192.168.2[0m[1m[7m[32m.[0m[1m[32m76[0m diff --git a/test/expected/test_gantt.sh_63500be50fc6743d8312133e2030cbbc39ca15ff.err b/test/expected/test_gantt.sh_63500be50fc6743d8312133e2030cbbc39ca15ff.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_63500be50fc6743d8312133e2030cbbc39ca15ff.err diff --git a/test/expected/test_gantt.sh_63500be50fc6743d8312133e2030cbbc39ca15ff.out b/test/expected/test_gantt.sh_63500be50fc6743d8312133e2030cbbc39ca15ff.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_63500be50fc6743d8312133e2030cbbc39ca15ff.out diff --git a/test/expected/test_gantt.sh_74a94ee9103eac5e8e78ca57bccf49efa3827a9d.err b/test/expected/test_gantt.sh_74a94ee9103eac5e8e78ca57bccf49efa3827a9d.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_74a94ee9103eac5e8e78ca57bccf49efa3827a9d.err diff --git a/test/expected/test_gantt.sh_74a94ee9103eac5e8e78ca57bccf49efa3827a9d.out b/test/expected/test_gantt.sh_74a94ee9103eac5e8e78ca57bccf49efa3827a9d.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_74a94ee9103eac5e8e78ca57bccf49efa3827a9d.out diff --git a/test/expected/test_gantt.sh_83db753dd2669f801810f311e2d7d74397e10f26.err b/test/expected/test_gantt.sh_83db753dd2669f801810f311e2d7d74397e10f26.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_83db753dd2669f801810f311e2d7d74397e10f26.err diff --git a/test/expected/test_gantt.sh_83db753dd2669f801810f311e2d7d74397e10f26.out b/test/expected/test_gantt.sh_83db753dd2669f801810f311e2d7d74397e10f26.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_83db753dd2669f801810f311e2d7d74397e10f26.out diff --git a/test/expected/test_gantt.sh_8fed8a7400042814ba13e50be5e3bd1741d82119.err b/test/expected/test_gantt.sh_8fed8a7400042814ba13e50be5e3bd1741d82119.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_8fed8a7400042814ba13e50be5e3bd1741d82119.err diff --git a/test/expected/test_gantt.sh_8fed8a7400042814ba13e50be5e3bd1741d82119.out b/test/expected/test_gantt.sh_8fed8a7400042814ba13e50be5e3bd1741d82119.out new file mode 100644 index 0000000..ffa9459 --- /dev/null +++ b/test/expected/test_gantt.sh_8fed8a7400042814ba13e50be5e3bd1741d82119.out @@ -0,0 +1,85 @@ + 2011-11-03T00:17 5m 2011-11-03T00:22 + 5m +[1m[4m[35m Duration [0m[4m|[0m[4m [0m[1m[4m[31m✘[0m[4m[33m▲[0m[4m [0m[4m|[0m[1m[4m[35m Operation[0m +[32m 844[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCwFs1P2UcUdlSxD2L[0m[7m[32ma[0m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCoX7zA3OJKGUOSCBY[0m[7m[32m2[0m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCdrfXZ1NOFPEawF21[0m[1m[7m[32m8[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCJwUi9bdB9c1lLW44[0m[1m[7m[32m [0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCJxSUgkInyKSHiju1[0m[7m[32m [0m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCT0JIh479jXIGt0Po[0m[7m[32m1[0m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC6Q4Vm14ZJIlZhsXq[0m[1m[7m[32mk[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 1s070[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCtgxRAqDLvrRUQdqe[0m[1m[7m[32m [0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m 200[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC6nSoj1Qco9PGyslz[0m[7m[32m6[0m[32m [0m[32m192.168.2.76[0m +[32m 23s044[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCN5hnY3x51j6Hr1v4[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCdZUPH2DKOE7zzCLE[0m[1m[7m[32m3[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 32s388[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCmWpC33jXuKpXNLci[0m[1m[7m[32me[0m[1m[7m[32m 1[0m[1m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCsBgiE1WmGP4Yo749[0m[7m[32mh[0m[32m [0m[32m192.168.2.76[0m +[32m 657[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCYfHyC28tAhkLYkXB[0m[7m[32m7[0m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCtANmVrHYMtkWqPE5[0m[1m[7m[32m [0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 647[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCSTH8n1O1nv0ztxNQ[0m[1m[7m[32md[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC4uDKU5tpeRU9Su19[0m[7m[32m [0m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCEh6Ka2HInkNSH01L2[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 4s840[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCjPGiy13ncXKxU765j[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 6s895[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCPoz7NUpXISemlNSd[0m[1m[32m [0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 6s837[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCt6ixh35y9AEr7J7o9[0m[7m[32m [0m[32m192.168.2.76[0m +[32m 6s889[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCaEFHq2HVQ5iGJQiD9[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 6s875[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCjinlH2fzDtvzI9637[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 6s884[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCedw7H3ddE2yLiLoXc[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 6s917[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCAUlC249svUfE6q0g3[0m[7m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCIJIDL1ULo4HpT24Gl[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 016[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCLsqp41RLUd83arUQb[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 166[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCbCciH11995WKkobR1[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 457[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mClcvKE1dqsEFQu46m9[0m[7m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCaP2LpLGvsmX7yJO[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 043[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCNbPns4mOMGgjI8Ele[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 557[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC185u7u9Q4qhJPhzl[0m[1m[32m [0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 129[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCKzjfhsJ8vrn2rrfg[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[32m 562[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCiIjAe1n5MnPOVpQ9f[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCGv2Tp4Ngt8MmKmVRd[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 7s071[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC5DisEMFU77Wk9Kae[0m[1m[32m [0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCs5yEZ3ELZTeuTOsP4[0m[7m[32m [0m[32m192.168.2.76[0m +[32m 4s667[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCu4gIx1BDNtGOl7Ht2[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 1s288[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCRgW2I2zo3SInm6iT8[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCWJhMU2cTLEnseTmCb[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[32m 042[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCejI402rKGtdBXij4f[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC2KnU34GcVV6amo8va[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC5vx4911iSMAJuShFd[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCbUCgw1DrIGcXzONB7[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[32m 502[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC96j2X1DixgLTj2Oi8[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCYYyja3FFNEnftw3K6[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m█[0m[1m[33m [0m[1m[32m [0m[1m[32mCBHHuR1xFnm5C5CQB[0m[1m[7m[32mc[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCD1jfU3p9abEm77mzf[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC0K9DaoPFkfnzwlZa[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m 616[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCbQAWi3GX2bCmX5L56[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[1m[32m 298[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCd8s2R3OGDgkhnvSu9[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[1m[32m 205[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCBeaXe4Iyj1gXd2Iq[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCmWpSw3VtjiAceBCwf[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m 1m12s201[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCbNCgO1MzloHRNeY4f[0m[32m 1[0m[7m[32m92.168.2[0m[32m.76[0m +[1m[32m 315[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCX1GjC4vn52UY1uDv6[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCaPClb1Bf0RrRGtyWi[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[32m 35s642[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCibfNy1QQW4ImDWRq5[0m[32m 1[0m[7m[32m92.1[0m[32m68.2.76[0m +[32m 1m11s547[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCTRXSR3blXJE5ZE7Ij[0m[32m 1[0m[7m[32m92.168.2[0m[32m.76[0m +[1m[32m 1m11s536[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCnGze54kQWWpKqrrZ4[0m[1m[32m 1[0m[1m[7m[32m92.168.2[0m[1m[32m.76[0m +[1m[32m 12s337[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC3TZMB4CrUwYfkGJy1[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCK957ERTz8lBycly4[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m 1s309[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCO5QKYQkcSdxQFA35[0m[32m 19[0m[7m[32m2[0m[32m.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCurHpb1TGZOktTRNP1[0m[1m[32m 19[0m[1m[7m[32m2[0m[1m[32m.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCuUKOQ1R3CqKBgeTdf[0m[1m[32m 19[0m[1m[7m[32m2[0m[1m[32m.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC3xkHgJnzZszVSTpi[0m[32m 192[0m[7m[32m.[0m[32m168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCMrjgF2XLmRh9C9TR4[0m[32m 192[0m[7m[32m.[0m[32m168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC2vQ8sVgyADHjtEda[0m[1m[32m 192.[0m[1m[7m[32m1[0m[1m[32m68.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCD69521bDXIAb4IkW[0m[1m[32m 192.[0m[1m[7m[32m1[0m[1m[32m68.2.76[0m +[32m 6s648[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCC3vUI3gFB04zLvWRa[0m[32m 192.[0m[7m[32m1[0m[32m68.2.76[0m +[32m 2s666[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC7Krri4g9tZfHniGXh[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCmxyBl2c8XAMTuHEk4[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[1m[32m 499[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCSvs6v26bQqFylkk6l[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC4pHul1H3OeWYz7o7i[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC7Lcvr4vsTf6eYpBva[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCV8faD4L1sLL5kDwN9[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCxyAKs10ppnHFP6O8i[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC6MrHk2C7rLuJqhjsg[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCvfUrT2DgYXXoZw9Ah[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCBX0254QJoklXNbvv2[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC6Ym6jvMgikT0xTTc[0m[1m[32m 192.168.2[0m[1m[7m[32m.[0m[1m[32m76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCRNn9f1zKNlzHSM5pa[0m[32m 192.168.2[0m[7m[32m.[0m[32m76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCJLgi92kpp2gLgGTE5[0m[32m 192.168.2[0m[7m[32m.[0m[32m76[0m diff --git a/test/expected/test_gantt.sh_b013ab41c3cca76cf05a01ca1ba65888be247ada.err b/test/expected/test_gantt.sh_b013ab41c3cca76cf05a01ca1ba65888be247ada.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_b013ab41c3cca76cf05a01ca1ba65888be247ada.err diff --git a/test/expected/test_gantt.sh_b013ab41c3cca76cf05a01ca1ba65888be247ada.out b/test/expected/test_gantt.sh_b013ab41c3cca76cf05a01ca1ba65888be247ada.out new file mode 100644 index 0000000..67a56e3 --- /dev/null +++ b/test/expected/test_gantt.sh_b013ab41c3cca76cf05a01ca1ba65888be247ada.out @@ -0,0 +1,70 @@ + 2011-11-03T00:17 5m 2011-11-03T00:22 + 5m +[1m[4m[35m Duration [0m[4m|[0m[4m [0m[1m[4m[31m✘[0m[4m[33m▲[0m[4m [0m[4m|[0m[1m[4m[35m Operation[0m +[32m 23s044[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCN5hnY3x51j6Hr1v4[0m[7m[32m [0m[32m192.168.2.76[0m +[32m 32s388[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCmWpC33jXuKpXNLci[0m[7m[32me[0m[7m[32m 1[0m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCEh6Ka2HInkNSH01L2[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 4s840[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCjPGiy13ncXKxU765j[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 6s895[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCPoz7NUpXISemlNSd[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[32m 6s837[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCt6ixh35y9AEr7J7o9[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 6s889[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCaEFHq2HVQ5iGJQiD9[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 6s875[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCjinlH2fzDtvzI9637[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 6s884[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCedw7H3ddE2yLiLoXc[0m[7m[32m [0m[32m192.168.2.76[0m +[32m 6s917[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCAUlC249svUfE6q0g3[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCIJIDL1ULo4HpT24Gl[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 016[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCLsqp41RLUd83arUQb[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 166[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCbCciH11995WKkobR1[0m[7m[32m [0m[32m192.168.2.76[0m +[32m 457[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mClcvKE1dqsEFQu46m9[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCaP2LpLGvsmX7yJO[0m[1m[32m [0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 043[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCNbPns4mOMGgjI8Ele[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 557[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC185u7u9Q4qhJPhzl[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[32m 129[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCKzjfhsJ8vrn2rrfg[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 562[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCiIjAe1n5MnPOVpQ9f[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCGv2Tp4Ngt8MmKmVRd[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 7s071[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC5DisEMFU77Wk9Kae[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCs5yEZ3ELZTeuTOsP4[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 4s667[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCu4gIx1BDNtGOl7Ht2[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 1s288[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCRgW2I2zo3SInm6iT8[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCWJhMU2cTLEnseTmCb[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m 042[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCejI402rKGtdBXij4f[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC2KnU34GcVV6amo8va[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC5vx4911iSMAJuShFd[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCbUCgw1DrIGcXzONB7[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m 502[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC96j2X1DixgLTj2Oi8[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCYYyja3FFNEnftw3K6[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m█[0m[1m[33m [0m[1m[32m [0m[1m[32mCBHHuR1xFnm5C5CQB[0m[1m[7m[32mc[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCD1jfU3p9abEm77mzf[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC0K9DaoPFkfnzwlZa[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m 616[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCbQAWi3GX2bCmX5L56[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[1m[32m 298[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCd8s2R3OGDgkhnvSu9[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[32m 205[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCBeaXe4Iyj1gXd2Iq[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCmWpSw3VtjiAceBCwf[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[1m[32m 1m12s201[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCbNCgO1MzloHRNeY4f[0m[1m[32m 1[0m[1m[7m[32m92.168.2[0m[1m[32m.76[0m +[1m[32m 315[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCX1GjC4vn52UY1uDv6[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCaPClb1Bf0RrRGtyWi[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m 35s642[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCibfNy1QQW4ImDWRq5[0m[32m 1[0m[7m[32m92.1[0m[32m68.2.76[0m +[1m[32m 1m11s547[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCTRXSR3blXJE5ZE7Ij[0m[1m[32m 1[0m[1m[7m[32m92.168.2[0m[1m[32m.76[0m +[1m[32m 1m11s536[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCnGze54kQWWpKqrrZ4[0m[1m[32m 1[0m[1m[7m[32m92.168.2[0m[1m[32m.76[0m +[32m 12s337[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC3TZMB4CrUwYfkGJy1[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCK957ERTz8lBycly4[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[1m[32m 1s309[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCO5QKYQkcSdxQFA35[0m[1m[32m 19[0m[1m[7m[32m2[0m[1m[32m.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCurHpb1TGZOktTRNP1[0m[1m[32m 19[0m[1m[7m[32m2[0m[1m[32m.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCuUKOQ1R3CqKBgeTdf[0m[32m 19[0m[7m[32m2[0m[32m.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC3xkHgJnzZszVSTpi[0m[32m 192[0m[7m[32m.[0m[32m168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCMrjgF2XLmRh9C9TR4[0m[1m[32m 192[0m[1m[7m[32m.[0m[1m[32m168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC2vQ8sVgyADHjtEda[0m[1m[32m 192.[0m[1m[7m[32m1[0m[1m[32m68.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCD69521bDXIAb4IkW[0m[32m 192.[0m[7m[32m1[0m[32m68.2.76[0m +[32m 6s648[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCC3vUI3gFB04zLvWRa[0m[32m 192.[0m[7m[32m1[0m[32m68.2.76[0m +[1m[32m 2s666[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC7Krri4g9tZfHniGXh[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCmxyBl2c8XAMTuHEk4[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[32m 499[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCSvs6v26bQqFylkk6l[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC4pHul1H3OeWYz7o7i[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC7Lcvr4vsTf6eYpBva[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCV8faD4L1sLL5kDwN9[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCxyAKs10ppnHFP6O8i[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC6MrHk2C7rLuJqhjsg[0m[32m 192.1[0m[7m[32m6[0m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCvfUrT2DgYXXoZw9Ah[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCBX0254QJoklXNbvv2[0m[1m[32m 192.1[0m[1m[7m[32m6[0m[1m[32m8.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC6Ym6jvMgikT0xTTc[0m[32m 192.168.2[0m[7m[32m.[0m[32m76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCRNn9f1zKNlzHSM5pa[0m[32m 192.168.2[0m[7m[32m.[0m[32m76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCJLgi92kpp2gLgGTE5[0m[1m[32m 192.168.2[0m[1m[7m[32m.[0m[1m[32m76[0m diff --git a/test/expected/test_gantt.sh_cde7947f361e5f3d4cd1bbc3f7458f426b6a8eb4.err b/test/expected/test_gantt.sh_cde7947f361e5f3d4cd1bbc3f7458f426b6a8eb4.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_cde7947f361e5f3d4cd1bbc3f7458f426b6a8eb4.err diff --git a/test/expected/test_gantt.sh_cde7947f361e5f3d4cd1bbc3f7458f426b6a8eb4.out b/test/expected/test_gantt.sh_cde7947f361e5f3d4cd1bbc3f7458f426b6a8eb4.out new file mode 100644 index 0000000..75ceff3 --- /dev/null +++ b/test/expected/test_gantt.sh_cde7947f361e5f3d4cd1bbc3f7458f426b6a8eb4.out @@ -0,0 +1,4 @@ + 2011-11-03T00:17 5m 2011-11-03T00:22 + 5m +[1m[4m[35m Duration [0m[4m|[0m[4m [0m[1m[4m[31m✘[0m[4m[33m▲[0m[4m [0m[4m|[0m[1m[4m[35m Operation[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCdysLK1XpcrXOpVDu[0m[7m[32mh[0m[32m [0m[32m192.168.2.76[0m diff --git a/test/expected/test_gantt.sh_e6a4681a5a671c84c020dc91d7ce03c9d17fde07.err b/test/expected/test_gantt.sh_e6a4681a5a671c84c020dc91d7ce03c9d17fde07.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_gantt.sh_e6a4681a5a671c84c020dc91d7ce03c9d17fde07.err diff --git a/test/expected/test_gantt.sh_e6a4681a5a671c84c020dc91d7ce03c9d17fde07.out b/test/expected/test_gantt.sh_e6a4681a5a671c84c020dc91d7ce03c9d17fde07.out new file mode 100644 index 0000000..8e609b1 --- /dev/null +++ b/test/expected/test_gantt.sh_e6a4681a5a671c84c020dc91d7ce03c9d17fde07.out @@ -0,0 +1,70 @@ + 2011-11-03T00:17 5m 2011-11-03T00:22 + 5m +[1m[4m[35m Duration [0m[4m|[0m[4m [0m[1m[4m[31m✘[0m[4m[33m▲[0m[4m [0m[4m|[0m[1m[4m[35m Operation[0m +[32m 844[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCwFs1P2UcUdlSxD2L[0m[7m[32ma[0m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCoX7zA3OJKGUOSCBY[0m[7m[32m2[0m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCdrfXZ1NOFPEawF21[0m[1m[7m[32m8[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCJwUi9bdB9c1lLW44[0m[1m[7m[32m [0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCJxSUgkInyKSHiju1[0m[7m[32m [0m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCT0JIh479jXIGt0Po[0m[7m[32m1[0m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC6Q4Vm14ZJIlZhsXq[0m[1m[7m[32mk[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 1s070[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCtgxRAqDLvrRUQdqe[0m[1m[7m[32m [0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCdysLK1XpcrXOpVDu[0m[7m[32mh[0m[32m [0m[32m192.168.2.76[0m +[32m 200[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC6nSoj1Qco9PGyslz[0m[7m[32m6[0m[32m [0m[32m192.168.2.76[0m +[1m[32m 23s044[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCN5hnY3x51j6Hr1v4[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCdZUPH2DKOE7zzCLE[0m[1m[7m[32m3[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m 32s388[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCmWpC33jXuKpXNLci[0m[7m[32me[0m[7m[32m 1[0m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCsBgiE1WmGP4Yo749[0m[7m[32mh[0m[32m [0m[32m192.168.2.76[0m +[1m[32m 657[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCYfHyC28tAhkLYkXB[0m[1m[7m[32m7[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCtANmVrHYMtkWqPE5[0m[1m[7m[32m [0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m 647[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCSTH8n1O1nv0ztxNQ[0m[7m[32md[0m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC4uDKU5tpeRU9Su19[0m[7m[32m [0m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCEh6Ka2HInkNSH01L2[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 4s840[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCjPGiy13ncXKxU765j[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 6s895[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCPoz7NUpXISemlNSd[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[32m 6s837[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCt6ixh35y9AEr7J7o9[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 6s889[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCaEFHq2HVQ5iGJQiD9[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 6s875[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCjinlH2fzDtvzI9637[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 6s884[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCedw7H3ddE2yLiLoXc[0m[7m[32m [0m[32m192.168.2.76[0m +[32m 6s917[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCAUlC249svUfE6q0g3[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCIJIDL1ULo4HpT24Gl[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 016[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCLsqp41RLUd83arUQb[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 166[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCbCciH11995WKkobR1[0m[7m[32m [0m[32m192.168.2.76[0m +[32m 457[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mClcvKE1dqsEFQu46m9[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCaP2LpLGvsmX7yJO[0m[1m[32m [0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 043[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCNbPns4mOMGgjI8Ele[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 557[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC185u7u9Q4qhJPhzl[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[32m 129[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCKzjfhsJ8vrn2rrfg[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 562[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCiIjAe1n5MnPOVpQ9f[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCGv2Tp4Ngt8MmKmVRd[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[32m 7s071[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC5DisEMFU77Wk9Kae[0m[32m [0m[7m[32m [0m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCs5yEZ3ELZTeuTOsP4[0m[7m[32m [0m[32m192.168.2.76[0m +[1m[32m 4s667[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCu4gIx1BDNtGOl7Ht2[0m[1m[7m[32m [0m[1m[32m192.168.2.76[0m +[1m[32m 1s288[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCRgW2I2zo3SInm6iT8[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCWJhMU2cTLEnseTmCb[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m 042[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCejI402rKGtdBXij4f[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC2KnU34GcVV6amo8va[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mC5vx4911iSMAJuShFd[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCbUCgw1DrIGcXzONB7[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m 502[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC96j2X1DixgLTj2Oi8[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCYYyja3FFNEnftw3K6[0m[1m[32m [0m[1m[7m[32m1[0m[1m[32m92.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m█[0m[1m[33m [0m[1m[32m [0m[1m[32mCBHHuR1xFnm5C5CQB[0m[1m[7m[32mc[0m[1m[32m [0m[1m[32m192.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCD1jfU3p9abEm77mzf[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC0K9DaoPFkfnzwlZa[0m[32m [0m[7m[32m1[0m[32m92.168.2.76[0m +[1m[32m 616[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCbQAWi3GX2bCmX5L56[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[1m[32m 298[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCd8s2R3OGDgkhnvSu9[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[32m 205[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCBeaXe4Iyj1gXd2Iq[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCmWpSw3VtjiAceBCwf[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[1m[32m 1m12s201[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCbNCgO1MzloHRNeY4f[0m[1m[32m 1[0m[1m[7m[32m92.168.2[0m[1m[32m.76[0m +[1m[32m 315[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCX1GjC4vn52UY1uDv6[0m[1m[32m 1[0m[1m[7m[32m9[0m[1m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCaPClb1Bf0RrRGtyWi[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m 35s642[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCibfNy1QQW4ImDWRq5[0m[32m 1[0m[7m[32m92.1[0m[32m68.2.76[0m +[1m[32m 1m11s547[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCTRXSR3blXJE5ZE7Ij[0m[1m[32m 1[0m[1m[7m[32m92.168.2[0m[1m[32m.76[0m +[1m[32m 1m11s536[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCnGze54kQWWpKqrrZ4[0m[1m[32m 1[0m[1m[7m[32m92.168.2[0m[1m[32m.76[0m +[32m 12s337[0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC3TZMB4CrUwYfkGJy1[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCK957ERTz8lBycly4[0m[32m 1[0m[7m[32m9[0m[32m2.168.2.76[0m +[1m[32m 1s309[0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCO5QKYQkcSdxQFA35[0m[1m[32m 19[0m[1m[7m[32m2[0m[1m[32m.168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCurHpb1TGZOktTRNP1[0m[1m[32m 19[0m[1m[7m[32m2[0m[1m[32m.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mCuUKOQ1R3CqKBgeTdf[0m[32m 19[0m[7m[32m2[0m[32m.168.2.76[0m +[32m [0m[32m [0m[1m[31m [0m[33m [0m[32m [0m[32mC3xkHgJnzZszVSTpi[0m[32m 192[0m[7m[32m.[0m[32m168.2.76[0m +[1m[32m [0m[1m[32m [0m[1m[31m [0m[1m[33m [0m[1m[32m [0m[1m[32mCMrjgF2XLmRh9C9TR4[0m[1m[32m 192[0m[1m[7m[32m.[0m[1m[32m168.2.76[0m diff --git a/test/expected/test_json_format.sh_168cac40c27f547044c89d39eb0ff2ef81da4b21.out b/test/expected/test_json_format.sh_168cac40c27f547044c89d39eb0ff2ef81da4b21.out index 55657f7..dd6c9d2 100644 --- a/test/expected/test_json_format.sh_168cac40c27f547044c89d39eb0ff2ef81da4b21.out +++ b/test/expected/test_json_format.sh_168cac40c27f547044c89d39eb0ff2ef81da4b21.out @@ -1,11 +1,11 @@ -{"ts": "2013-09-06T20:00:48.124817Z", "lvl": "TRACE", "msg": "trace test"} -{"ts": "2013-09-06T20:00:49.124817Z", "lvl": "INFO", "msg": "Starting up \u001B[0;32mservice\u001B[0m"} +{"ts": "2013-09-06T20:00:48.124817Z", "logger": "com.example.foo.bar.bazzer", "lvl": "TRACE", "msg": "trace test"} +{"ts": "2013-09-06T20:00:49.124817Z", "logger": "com.example.demo", "lvl": "INFO", "msg": "Starting up \u001B[0;32mservice\u001B[0m"} {"ts": "2013-09-06T22:00:49.124817Z", "lvl": "INFO", "msg": "Shutting down service", "user": "steve@example.com"} -{"ts": "2013-09-06T22:00:59.124817Z", "lvl": "DEBUG5", "msg": "Details...\n"} -{"ts": "2013-09-06T22:00:59.124817Z", "lvl": "DEBUG4", "msg": "Details...\n"} +{"ts": "2013-09-06T22:00:59.124817Z", "lvl": "DEBUG5", "msg": "D\bDetails...\n"} +{"ts": "2013-09-06T22:00:59.124817Z", "lvl": "DEBUG4", "msg": "D\bDe\betails...\n"} {"ts": "2013-09-06T22:00:59.124817Z", "lvl": "DEBUG3", "msg": "Details...\n"} {"ts": "2013-09-06T22:00:59.124817Z", "lvl": "DEBUG2", "msg": "Details...\n"} -{"ts": "2013-09-06T22:00:59.124817Z", "lvl": "DEBUG", "msg": "Details..."} +{"ts": "2013-09-06 22:01:00Z", "lvl": "DEBUG", "msg": "Details..."} {"ts": "2013-09-06T22:01:49.124817Z", "lvl": "STATS", "msg": "1 beat per second"} {"ts": "2013-09-06T22:01:49.124817Z", "lvl": "WARNING", "msg": "not looking good"} {"ts": "2013-09-06T22:01:49.124817Z", "lvl": "ERROR", "msg": "looking bad"} diff --git a/test/expected/test_json_format.sh_1bb0fd243e916546aea22029245ac590dae17a86.out b/test/expected/test_json_format.sh_1bb0fd243e916546aea22029245ac590dae17a86.out index 59872f2..c85be78 100644 --- a/test/expected/test_json_format.sh_1bb0fd243e916546aea22029245ac590dae17a86.out +++ b/test/expected/test_json_format.sh_1bb0fd243e916546aea22029245ac590dae17a86.out @@ -1,14 +1,14 @@ -log_line,log_part,log_time,log_idle_msecs,log_level,log_mark,log_comment,log_tags,log_filters,@fields/user,@fields/trace# -0,<NULL>,2013-09-06 20:00:48.124,0,trace,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -2,<NULL>,2013-09-06 20:00:49.124,1000,info,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -4,<NULL>,2013-09-06 22:00:49.124,7200000,info,0,<NULL>,<NULL>,<NULL>,steve@example.com,<NULL> -7,<NULL>,2013-09-06 22:00:59.124,10000,debug5,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -9,<NULL>,2013-09-06 22:00:59.124,0,debug4,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -11,<NULL>,2013-09-06 22:00:59.124,0,debug3,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -13,<NULL>,2013-09-06 22:00:59.124,0,debug2,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -15,<NULL>,2013-09-06 22:00:59.124,0,debug,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -17,<NULL>,2013-09-06 22:01:49.124,50000,stats,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -19,<NULL>,2013-09-06 22:01:49.124,0,warning,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -21,<NULL>,2013-09-06 22:01:49.124,0,error,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -23,<NULL>,2013-09-06 22:01:49.124,0,critical,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL> -25,<NULL>,2013-09-06 22:01:49.124,0,fatal,0,<NULL>,<NULL>,<NULL>,<NULL>,line:1 +log_line,log_time,log_level,@fields/user,@fields/trace#,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +0,2013-09-06 20:00:48.124,trace,<NULL>,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +2,2013-09-06 20:00:49.124,info,<NULL>,<NULL>,<NULL>,1000,0,<NULL>,<NULL>,<NULL>,<NULL> +4,2013-09-06 22:00:49.124,info,steve@example.com,<NULL>,<NULL>,7200000,0,<NULL>,<NULL>,<NULL>,<NULL> +7,2013-09-06 22:00:59.124,debug5,<NULL>,<NULL>,<NULL>,10000,0,<NULL>,<NULL>,<NULL>,<NULL> +9,2013-09-06 22:00:59.124,debug4,<NULL>,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +11,2013-09-06 22:00:59.124,debug3,<NULL>,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +13,2013-09-06 22:00:59.124,debug2,<NULL>,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +15,2013-09-06 22:00:59.124,debug,<NULL>,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +17,2013-09-06 22:01:49.124,stats,<NULL>,<NULL>,<NULL>,50000,0,<NULL>,<NULL>,<NULL>,<NULL> +19,2013-09-06 22:01:49.124,warning,<NULL>,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +21,2013-09-06 22:01:49.124,error,<NULL>,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +23,2013-09-06 22:01:49.124,critical,<NULL>,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +25,2013-09-06 22:01:49.124,fatal,<NULL>,line:1,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_json_format.sh_40223ac4742883f883ccc61044bfffd6e102cca6.out b/test/expected/test_json_format.sh_40223ac4742883f883ccc61044bfffd6e102cca6.out index 0dc139f..53d473d 100644 --- a/test/expected/test_json_format.sh_40223ac4742883f883ccc61044bfffd6e102cca6.out +++ b/test/expected/test_json_format.sh_40223ac4742883f883ccc61044bfffd6e102cca6.out @@ -1,194 +1,212 @@ [ { "log_line": 0, - "log_part": null, "log_time": "2013-09-06 20:00:48.124", - "log_idle_msecs": 0, "log_level": "trace", - "log_mark": 0, - "log_comment": null, - "log_tags": null, - "log_filters": null, "arr": null, "obj": null, + "logger": "com.example.foo.bar.bazzer", "lvl": "TRACE", - "user": null + "user": null, + "log_part": null, + "log_idle_msecs": 0, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null }, { "log_line": 2, - "log_part": null, "log_time": "2013-09-06 20:00:49.124", - "log_idle_msecs": 1000, "log_level": "info", - "log_mark": 0, - "log_comment": null, - "log_tags": null, - "log_filters": null, "arr": null, "obj": null, + "logger": "com.example.demo", "lvl": "INFO", - "user": null + "user": null, + "log_part": null, + "log_idle_msecs": 1000, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null }, { "log_line": 4, - "log_part": null, "log_time": "2013-09-06 22:00:49.124", - "log_idle_msecs": 7200000, "log_level": "info", - "log_mark": 0, - "log_comment": null, - "log_tags": null, - "log_filters": null, "arr": null, "obj": null, + "logger": null, "lvl": "INFO", - "user": "steve@example.com" + "user": "steve@example.com", + "log_part": null, + "log_idle_msecs": 7200000, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null }, { "log_line": 7, - "log_part": null, "log_time": "2013-09-06 22:00:59.124", - "log_idle_msecs": 10000, "log_level": "debug5", - "log_mark": 0, - "log_comment": null, - "log_tags": null, - "log_filters": null, "arr": null, "obj": null, + "logger": null, "lvl": "DEBUG5", - "user": null + "user": null, + "log_part": null, + "log_idle_msecs": 10000, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null }, { "log_line": 9, - "log_part": null, "log_time": "2013-09-06 22:00:59.124", - "log_idle_msecs": 0, "log_level": "debug4", - "log_mark": 0, - "log_comment": null, - "log_tags": null, - "log_filters": null, "arr": null, "obj": null, + "logger": null, "lvl": "DEBUG4", - "user": null - }, - { - "log_line": 11, + "user": null, "log_part": null, - "log_time": "2013-09-06 22:00:59.124", "log_idle_msecs": 0, - "log_level": "debug3", "log_mark": 0, "log_comment": null, "log_tags": null, - "log_filters": null, + "log_annotations": null, + "log_filters": null + }, + { + "log_line": 11, + "log_time": "2013-09-06 22:00:59.124", + "log_level": "debug3", "arr": null, "obj": null, + "logger": null, "lvl": "DEBUG3", - "user": null - }, - { - "log_line": 13, + "user": null, "log_part": null, - "log_time": "2013-09-06 22:00:59.124", "log_idle_msecs": 0, - "log_level": "debug2", "log_mark": 0, "log_comment": null, "log_tags": null, - "log_filters": null, + "log_annotations": null, + "log_filters": null + }, + { + "log_line": 13, + "log_time": "2013-09-06 22:00:59.124", + "log_level": "debug2", "arr": null, "obj": null, + "logger": null, "lvl": "DEBUG2", - "user": null - }, - { - "log_line": 15, + "user": null, "log_part": null, - "log_time": "2013-09-06 22:00:59.124", "log_idle_msecs": 0, - "log_level": "debug", "log_mark": 0, "log_comment": null, "log_tags": null, - "log_filters": null, + "log_annotations": null, + "log_filters": null + }, + { + "log_line": 15, + "log_time": "2013-09-06 22:01:00.000", + "log_level": "debug", "arr": null, "obj": null, + "logger": null, "lvl": "DEBUG", - "user": null + "user": null, + "log_part": null, + "log_idle_msecs": 876, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null }, { "log_line": 17, - "log_part": null, "log_time": "2013-09-06 22:01:49.124", - "log_idle_msecs": 50000, "log_level": "stats", - "log_mark": 0, - "log_comment": null, - "log_tags": null, - "log_filters": null, "arr": null, "obj": null, + "logger": null, "lvl": "STATS", - "user": null + "user": null, + "log_part": null, + "log_idle_msecs": 49124, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null }, { "log_line": 19, - "log_part": null, "log_time": "2013-09-06 22:01:49.124", - "log_idle_msecs": 0, "log_level": "warning", - "log_mark": 0, - "log_comment": null, - "log_tags": null, - "log_filters": null, "arr": null, "obj": null, + "logger": null, "lvl": "WARNING", - "user": null - }, - { - "log_line": 21, + "user": null, "log_part": null, - "log_time": "2013-09-06 22:01:49.124", "log_idle_msecs": 0, - "log_level": "error", "log_mark": 0, "log_comment": null, "log_tags": null, - "log_filters": null, + "log_annotations": null, + "log_filters": null + }, + { + "log_line": 21, + "log_time": "2013-09-06 22:01:49.124", + "log_level": "error", "arr": null, "obj": null, + "logger": null, "lvl": "ERROR", - "user": null - }, - { - "log_line": 23, + "user": null, "log_part": null, - "log_time": "2013-09-06 22:01:49.124", "log_idle_msecs": 0, - "log_level": "critical", "log_mark": 0, "log_comment": null, "log_tags": null, - "log_filters": null, + "log_annotations": null, + "log_filters": null + }, + { + "log_line": 23, + "log_time": "2013-09-06 22:01:49.124", + "log_level": "critical", "arr": null, "obj": null, + "logger": null, "lvl": "CRITICAL", - "user": null - }, - { - "log_line": 25, + "user": null, "log_part": null, - "log_time": "2013-09-06 22:01:49.124", "log_idle_msecs": 0, - "log_level": "fatal", "log_mark": 0, "log_comment": null, "log_tags": null, - "log_filters": null, + "log_annotations": null, + "log_filters": null + }, + { + "log_line": 25, + "log_time": "2013-09-06 22:01:49.124", + "log_level": "fatal", "arr": [ "hi", { @@ -199,7 +217,15 @@ "field1": "hi", "field2": 2 }, + "logger": null, "lvl": "FATAL", - "user": null + "user": null, + "log_part": null, + "log_idle_msecs": 0, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null } ] diff --git a/test/expected/test_json_format.sh_4315a3d6124c14cbe3c474b6dbf4cc8720a9859f.out b/test/expected/test_json_format.sh_4315a3d6124c14cbe3c474b6dbf4cc8720a9859f.out index 9b7fbf1..2063d71 100644 --- a/test/expected/test_json_format.sh_4315a3d6124c14cbe3c474b6dbf4cc8720a9859f.out +++ b/test/expected/test_json_format.sh_4315a3d6124c14cbe3c474b6dbf4cc8720a9859f.out @@ -1,3 +1,3 @@ -2017-03-24T20:06:26.240 1.1.1.1 GET 200 443 /example/uri/5 -[31m2017-03-24T20:12:47.764[0m[31m [0m[31m1.1.1.1[0m[31m [0m[31mGET[0m[31m 500 4433 [0m[31m/example/uri/5[0m -[33m2017-03-24T20:15:31.694[0m[33m [0m[33m1.1.1.1[0m[33m [0m[33mGET[0m[33m 400 44345 [0m[33m/example/uri/5[0m +2017-03-24T20:06:26.240Z 1.1.1.1 GET 200 443 /example/uri/5 +[31m2017-03-24T20:12:47.764Z[0m[31m [0m[31m1.1.1.1[0m[31m [0m[31mGET[0m[31m 500 4433 [0m[31m/example/uri/5[0m +[33m2017-03-24T20:15:31.694Z[0m[33m [0m[33m1.1.1.1[0m[33m [0m[33mGET[0m[33m 400 44345 [0m[33m/example/uri/5[0m diff --git a/test/expected/test_json_format.sh_469f005b0708d629bc95f0c48a5e390f440c1fef.out b/test/expected/test_json_format.sh_469f005b0708d629bc95f0c48a5e390f440c1fef.out index ee41abb..8a1d53c 100644 --- a/test/expected/test_json_format.sh_469f005b0708d629bc95f0c48a5e390f440c1fef.out +++ b/test/expected/test_json_format.sh_469f005b0708d629bc95f0c48a5e390f440c1fef.out @@ -1,29 +1,29 @@ -[2013-09-06T20:00:48.124] TRACE trace test +[2013-09-06T20:00:48.124817Z] ⋮ <c.e.foo.bar.bazzer > trace test -[2013-09-06T20:00:49.124] INFO Starting up [32mservice[0m +[2013-09-06T20:00:49.124817Z] ⋮ <com.example.demo > Starting up [32mservice[0m -[2013-09-06T22:00:49.124] INFO Shutting down service +[2013-09-06T22:00:49.124817Z] ⋮ Shutting down service user: steve@example.com -[2013-09-06T22:00:59.124] DEBUG5 Details... +[2013-09-06T22:00:59.124817Z] ⋮ [1mD[0metails... -[2013-09-06T22:00:59.124] DEBUG4 Details... +[2013-09-06T22:00:59.124817Z] ⋮ [1mDe[0mtails... -[2013-09-06T22:00:59.124] DEBUG3 Details... +[2013-09-06T22:00:59.124817Z] ⋮ Details... -[2013-09-06T22:00:59.124] DEBUG2 Details... +[2013-09-06T22:00:59.124817Z] ⋮ Details... -[2013-09-06T22:00:59.124] DEBUG Details... +[2013-09-06 22:01:00Z] ⋮ Details... -[2013-09-06T22:01:49.124] STATS 1 beat per second +[2013-09-06T22:01:49.124817Z] ⋮ 1 beat per second -[33m[2[0m[33m013-09-06T22:01:49.124][0m[33m WARNING n[0m[33mot looking good[0m +[33m[[0m[33m2013-09-06T22:01:49.124817Z[0m[33m] [0m[33m⋮[0m[33m [0m[33mnot looking good[0m -[31m[2[0m[31m013-09-06T22:01:49.124][0m[31m ERROR l[0m[31mooking bad[0m +[31m[[0m[31m2013-09-06T22:01:49.124817Z[0m[31m] [0m[31m⋮[0m[31m [0m[31mlooking bad[0m -[31m[2[0m[31m013-09-06T22:01:49.124][0m[31m CRITICAL s[0m[31mooo bad[0m +[31m[[0m[31m2013-09-06T22:01:49.124817Z[0m[31m] [0m[31m⋮[0m[31m [0m[31msooo bad[0m -[31m[2[0m[31m013-09-06T22:01:49.124][0m[31m FATAL s[0m[31mhoot[0m +[31m[[0m[31m2013-09-06T22:01:49.124817Z[0m[31m] [0m[31m⋮[0m[31m [0m[31mshoot[0m [31m obj: { "field1" : "hi", "field2": 2 }[0m [31m arr: ["hi", {"sub1": true}][0m diff --git a/test/expected/test_json_format.sh_5795c5ffd98ae581b30c6f0983349bf7a6a84501.err b/test/expected/test_json_format.sh_5795c5ffd98ae581b30c6f0983349bf7a6a84501.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_json_format.sh_5795c5ffd98ae581b30c6f0983349bf7a6a84501.err diff --git a/test/expected/test_json_format.sh_5795c5ffd98ae581b30c6f0983349bf7a6a84501.out b/test/expected/test_json_format.sh_5795c5ffd98ae581b30c6f0983349bf7a6a84501.out new file mode 100644 index 0000000..94d521d --- /dev/null +++ b/test/expected/test_json_format.sh_5795c5ffd98ae581b30c6f0983349bf7a6a84501.out @@ -0,0 +1,52 @@ +2024-01-01T15:00:00Z MemberEvent mujianwu added Envoy-Z-Lab to Uotan-Dev/UotanWorkStation-ROM-Builder +2024-01-01T15:00:00Z PushEvent mdmaid69 committed “float further safety possibly strike” to mdmaid69/reimagined-giggle +2024-01-01T15:00:00Z ForkEvent SynthWave-Systems forked SynthWave-Systems/ampleforth-contracts from ampleforth/ampleforth-contracts +2024-01-01T15:00:00Z PullRequestEvent tobexyz closed pull-request #90 “merge latest release to master” in tobexyz/yaacc-code +2024-01-01T15:00:00Z PushEvent dim12512a committed “Empty Commit” to dim12512a/Repo5 +2024-01-01T15:00:00Z PushEvent github-shvabra committed “new change” to saby/ios-sabycom +2024-01-01T15:00:00Z CreateEvent roman1923 repository off main in roman1923/no-woo-small-cta-fast-food-shop +2024-01-01T15:00:00Z PushEvent appref5555ix63 committed “Empty Commit” to appref5555ix63/Repo4 +2024-01-01T15:00:00Z PullRequestReviewEvent megusasuke0 created review 1799820649 for pull-request #1 “Feature/lesson01” in megusasuke0/frontendhandson +2024-01-01T15:00:00Z PushEvent dim12512a committed “Empty Commit” to dim12512a/Repo6 +2024-01-01T15:00:00Z ForkEvent Shadowxiaomo forked Shadowxiaomo/MemDumper from kp7742/MemDumper +2024-01-01T15:00:00Z PushEvent Jinyeong1611 committed “방향값 추가” to Jinyeong1611/pacman +2024-01-01T15:00:00Z PullRequestEvent dependabot closed pull-request #911 “Bump @storybook/addon-a11y from 7.5.3 to 7.6.3” in DNNCommunity/dnn-elements +2024-01-01T15:00:01Z PushEvent ColeMalinchock1 committed “Update backup JSON file” to ColeMalinchock1/HGT-JSON-Server +2024-01-01T15:00:01Z PushEvent uyenlexx committed “update navbar and search” to HoanqDucAnh/Keebie +2024-01-01T15:00:01Z DeleteEvent direwolf-github branch direwolf-github/ephemeral-ci-f72a7b4a +2024-01-01T15:00:01Z PushEvent Zarakkhan-dev committed “khtam” to Zarakkhan-dev/LegalaiAssistentBackend +2024-01-01T15:00:01Z PushEvent appref5555ix63 committed “Empty Commit” to appref5555ix63/Repo2 +2024-01-01T15:00:01Z ForkEvent tarinisunil forked tarinisunil/Get_Better_at_CP_in_2_Months from sahilbansal17/Get_Better_at_CP_in_2_Months +2024-01-01T15:00:01Z ForkEvent jackblack369 forked jackblack369/danswer from danswer-ai/danswer +2024-01-01T15:00:01Z ForkEvent vineetp6 forked vineetp6/pydub from jiaaro/pydub +2024-01-01T15:00:01Z PushEvent lhduc94 committed “push book” to lhduc94/kungfupandas +2024-01-01T15:00:01Z PushEvent ranadebsaha committed “Add files via upload” to ranadebsaha/DSA +2024-01-01T15:00:01Z PushEvent harmanpa committed “Add ability for STL and DXF parsers to read from InputStream rather than just files” to harmanpa/jgeom +2024-01-01T15:00:01Z PushEvent dim12512a committed “Empty Commit” to dim12512a/Repo6 +2024-01-01T15:00:01Z PushEvent namson26 committed “ industry talk PPG and Habib” to namson26/Technology-Information-System +2024-01-01T15:00:01Z PushEvent mdmaid69 committed “last recover hurt off claim” to mdmaid69/reimagined-giggle +2024-01-01T15:00:01Z PushEvent dim12512a committed “Empty Commit” to dim12512a/Repo7 +2024-01-01T15:00:01Z PullRequestEvent tomgransden closed pull-request #26 “Dev/tg/add firestore” in tomgransden/MyTummyHurtsApp +2024-01-01T15:00:01Z PushEvent dim12512a committed “Empty Commit” to dim12512a/Repo7 +2024-01-01T15:00:01Z PushEvent vedant-z committed “Update to 2 in STEP and README.md” to Exp-Intro-to-GitHub-Flow-Cohort-1/series-intro-to-github-flow-vedant-z + payload/commits#/message: Create PROFILE.md + payload/commits#/message: Update to 3 in STEP and README.md +2024-01-01T15:00:01Z WatchEvent morteza-rp started MasoudKaviani/filoger_fanap_402 +2024-01-01T15:00:01Z PushEvent B74LABgit committed “committing files” to B74LABgit/CAM +2024-01-01T15:00:01Z PushEvent sdhz151 sdhz153/Actions-OpenWrt +2024-01-01T15:00:01Z CreateEvent UjjawalSah repository off main in UjjawalSah/ModernFarming +2024-01-01T15:00:01Z PushEvent wodcoredev committed “Update index.html” to wod-core/website +2024-01-01T15:00:01Z PushEvent Vsonneveld committed “The genre has been updated” to Vsonneveld/foroxity-genres +2024-01-01T15:00:01Z PushEvent diphons committed “cpu_input_boost: use MI_DRM notifier” to diphons/sdm845-419 +2024-01-01T15:00:01Z PushEvent l1nky-1337 committed “README.md” to l1nky-1337/TimeFn-Updated +2024-01-01T15:00:01Z CreateEvent luiz8910 repository off main in luiz8910/codeflix +2024-01-01T15:00:01Z PushEvent Owl3CM committed “sync” to Owl3CM/Eze-Scripts +2024-01-01T15:00:01Z PullRequestReviewEvent SamboyCoding created review 1799820647 for pull-request #255 “Support Type Parameters in Call Analysis” in SamboyCoding/Cpp2IL +2024-01-01T15:00:01Z PushEvent lu146enza committed “Empty Commit” to lu146enza/Repo9 +2024-01-01T15:00:01Z PushEvent fdvorak committed “automated commit 2024-01-01 15:59:14” to fdvorak/sandWind +2024-01-01T15:00:01Z PushEvent github-shvabra committed “new change” to saby/ios-sabycom +2024-01-01T15:00:01Z DeleteEvent artamonovkirill branch tomtom-international/goji-http-client +2024-01-01T15:00:01Z PullRequestEvent github-actions closed pull-request #45 “build(deps-dev): bump ts-node from 10.9.1 to 10.9.2” in jckimble/Github-Graph-Background +2024-01-01T15:00:01Z PushEvent leegical committed “Upload by PicGo” to leegical/Blog_img +2024-01-01T15:00:01Z CreateEvent mohil298 repository off main in mohil298/PCB-Designing +2024-01-01T15:00:01Z PullRequestReviewEvent ehsandeep created review 1799820657 for pull-request #1102 “chore(deps): bump github.com/projectdiscovery/goflags from 0.1.32 to 0.1.33 in /v2” in projectdiscovery/subfinder diff --git a/test/expected/test_json_format.sh_6767b91d715338c24c67e928b59c560c84ddf4be.out b/test/expected/test_json_format.sh_6767b91d715338c24c67e928b59c560c84ddf4be.out index 19672db..9809b55 100644 --- a/test/expected/test_json_format.sh_6767b91d715338c24c67e928b59c560c84ddf4be.out +++ b/test/expected/test_json_format.sh_6767b91d715338c24c67e928b59c560c84ddf4be.out @@ -1,41 +1,41 @@ -2023-03-24T14:26:16.243 renovate[7] DEBUG Found gitlabci-include package files +2023-03-24T14:26:16.243Z renovate[7] DEBUG Found gitlabci-include package files logContext: qjifsaDDI repository: webgui/custom-icons-transformer -2023-03-24T14:26:16.243 renovate[7] DEBUG Found npm package files +2023-03-24T14:26:16.243Z renovate[7] DEBUG Found npm package files logContext: qjifsaDDI repository: webgui/custom-icons-transformer -2023-03-24T14:26:16.243 renovate[7] DEBUG [/Users/trentm/tm/node-bunyan/examples/src.js:20:Wuzzle.woos] Found 3 package file(s) +2023-03-24T14:26:16.243Z renovate[7] DEBUG [/Users/trentm/tm/node-bunyan/examples/src.js:20:Wuzzle.woos] Found 3 package file(s) logContext: qjifsaDDI repository: webgui/custom-icons-transformer -2023-03-24T14:26:16.243 renovate[7] INFO Dependency extraction complete +2023-03-24T14:26:16.243Z renovate[7] INFO Dependency extraction complete logContext: qjifsaDDI repository: webgui/custom-icons-transformer baseBranch: main stats: {"managers":{"gitlabci":{"fileCount":1,"depCount":1},"gitlabci-include":{"fileCount":1,"depCount":1},"npm":{"fileCount":1,"depCount":15}},"total":{"fileCount":3,"depCount":17}} -2023-03-24T14:26:16.390 renovate[7] DEBUG Dependency node has unsupported/unversioned value lts-bullseye-slim (versioning=docker) +2023-03-24T14:26:16.390Z renovate[7] DEBUG Dependency node has unsupported/unversioned value lts-bullseye-slim (versioning=docker) logContext: qjifsaDDI repository: webgui/custom-icons-transformer -2023-03-24T14:26:17.493 renovate[7] DEBUG Release 2.8.7 is pending status checks +2023-03-24T14:26:17.493Z renovate[7] DEBUG Release 2.8.7 is pending status checks logContext: qjifsaDDI repository: webgui/custom-icons-transformer depName: prettier check: stabilityDays -2023-03-24T14:26:17.897 renovate[7] DEBUG Release 4.4.1 is pending status checks +2023-03-24T14:26:17.897Z renovate[7] DEBUG Release 4.4.1 is pending status checks logContext: qjifsaDDI repository: webgui/custom-icons-transformer depName: rimraf check: stabilityDays -2023-03-24T14:26:17.897 renovate[7] DEBUG All releases are pending - using latest +2023-03-24T14:26:17.897Z renovate[7] DEBUG All releases are pending - using latest logContext: qjifsaDDI repository: webgui/custom-icons-transformer depName: rimraf bucket: non-major -2023-03-24T14:26:18.330 renovate[7] DEBUG Release 2.10.0 is pending status checks +2023-03-24T14:26:18.330Z renovate[7] DEBUG Release 2.10.0 is pending status checks logContext: qjifsaDDI repository: webgui/custom-icons-transformer depName: prettier-plugin-svelte check: stabilityDays -2023-03-24T14:26:18.331 renovate[7] DEBUG All releases are pending - using latest +2023-03-24T14:26:18.331Z renovate[7] DEBUG All releases are pending - using latest logContext: qjifsaDDI repository: webgui/custom-icons-transformer depName: prettier-plugin-svelte diff --git a/test/expected/test_json_format.sh_6fbe20faa161ab9fa77df7568fff84bf3e47e920.out b/test/expected/test_json_format.sh_6fbe20faa161ab9fa77df7568fff84bf3e47e920.out index 128f5ab..3363f23 100644 --- a/test/expected/test_json_format.sh_6fbe20faa161ab9fa77df7568fff84bf3e47e920.out +++ b/test/expected/test_json_format.sh_6fbe20faa161ab9fa77df7568fff84bf3e47e920.out @@ -1,4 +1,4 @@ -log_line,log_part,log_time,log_idle_msecs,log_level,log_mark,log_comment,log_tags,log_filters,user,cl -0,<NULL>,2013-09-06 20:00:49.124,0,info,0,<NULL>,<NULL>,<NULL>,<NULL>,com.exmaple.foo -1,<NULL>,2013-09-06 22:00:49.124,7200000,info,0,<NULL>,<NULL>,<NULL>,steve@example.com,com.exmaple.foo -3,<NULL>,2013-09-06 22:01:49.124,60000,error,0,<NULL>,<NULL>,<NULL>,<NULL>,com.exmaple.foo +log_line,log_time,log_level,user,cl,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +0,2013-09-06 20:00:49.124,info,<NULL>,com.exmaple.foo,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +1,2013-09-06 22:00:49.124,info,steve@example.com,com.exmaple.foo,<NULL>,7200000,0,<NULL>,<NULL>,<NULL>,<NULL> +3,2013-09-06 22:01:49.124,error,<NULL>,com.exmaple.foo,<NULL>,60000,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_json_format.sh_7724d1a96d74d4418dd44d7416270f9bb64b2564.out b/test/expected/test_json_format.sh_7724d1a96d74d4418dd44d7416270f9bb64b2564.out index c861d3a..16d7261 100644 --- a/test/expected/test_json_format.sh_7724d1a96d74d4418dd44d7416270f9bb64b2564.out +++ b/test/expected/test_json_format.sh_7724d1a96d74d4418dd44d7416270f9bb64b2564.out @@ -1,29 +1,29 @@ -2013-09-06T20:00:48.124 TRACE trace test +2013-09-06T20:00:48.124817Z TRACE trace test @fields: { "lvl": "TRACE", "msg": "trace test"} -2013-09-06T20:00:49.124 INFO Starting up service +2013-09-06T20:00:49.124817Z INFO Starting up service @fields: { "lvl": "INFO", "msg": "Starting up service"} -2013-09-06T22:00:49.124 INFO Shutting down service +2013-09-06T22:00:49.124817Z INFO Shutting down service @fields/user: steve@example.com @fields: { "lvl": "INFO", "msg": "Shutting down service", "user": "steve@example.com"} -2013-09-06T22:00:59.124 DEBUG5 Details... +2013-09-06T22:00:59.124817Z DEBUG5 Details... @fields: { "lvl": "DEBUG5", "msg": "Details..."} -2013-09-06T22:00:59.124 DEBUG4 Details... +2013-09-06T22:00:59.124817Z DEBUG4 Details... @fields: { "lvl": "DEBUG4", "msg": "Details..."} -2013-09-06T22:00:59.124 DEBUG3 Details... +2013-09-06T22:00:59.124817Z DEBUG3 Details... @fields: { "lvl": "DEBUG3", "msg": "Details..."} -2013-09-06T22:00:59.124 DEBUG2 Details... +2013-09-06T22:00:59.124817Z DEBUG2 Details... @fields: { "lvl": "DEBUG2", "msg": "Details..."} -2013-09-06T22:00:59.124 DEBUG Details... +2013-09-06T22:00:59.124817Z DEBUG Details... @fields: { "lvl": "DEBUG", "msg": "Details..."} -2013-09-06T22:01:49.124 STATS 1 beat per second +2013-09-06T22:01:49.124817Z STATS 1 beat per second @fields: { "lvl": "STATS", "msg": "1 beat per second"} -[33m2013-09-06T22:01:49.124[0m[33m WARNING [0m[33mnot looking good[0m +[33m2013-09-06T22:01:49.124817Z[0m[33m WARNING [0m[33mnot looking good[0m [33m @fields: { "lvl": "WARNING", "msg": "not looking good"}[0m -[31m2013-09-06T22:01:49.124[0m[31m ERROR [0m[31mlooking bad[0m +[31m2013-09-06T22:01:49.124817Z[0m[31m ERROR [0m[31mlooking bad[0m [31m @fields: { "lvl": "ERROR", "msg": "looking bad"}[0m -[31m2013-09-06T22:01:49.124[0m[31m CRITICAL [0m[31msooo bad[0m +[31m2013-09-06T22:01:49.124817Z[0m[31m CRITICAL [0m[31msooo bad[0m [31m @fields: { "lvl": "CRITICAL", "msg": "sooo bad"}[0m -[31m2013-09-06T22:01:49.124[0m[31m FATAL [0m[31mshoot[0m +[31m2013-09-06T22:01:49.124817Z[0m[31m FATAL [0m[31mshoot[0m [31m @fields/trace#: line:1[0m [31m @fields/trace#: line:2[0m [31m @fields: { "lvl": "FATAL", "msg": "shoot", "trace": ["line:1", "line:2"]}[0m diff --git a/test/expected/test_json_format.sh_7c6529f6bf4a0cb565f5665fdcba032f0ae1ebbe.out b/test/expected/test_json_format.sh_7c6529f6bf4a0cb565f5665fdcba032f0ae1ebbe.out index ce295e2..72f625a 100644 --- a/test/expected/test_json_format.sh_7c6529f6bf4a0cb565f5665fdcba032f0ae1ebbe.out +++ b/test/expected/test_json_format.sh_7c6529f6bf4a0cb565f5665fdcba032f0ae1ebbe.out @@ -1,12 +1,12 @@ -2013-09-06T20:00:48.124 TRACE trace test +2013-09-06T20:00:48.124817Z TRACE trace test @fields: { "lvl": "TRACE", "msg": "trace test"} -2013-09-06T20:00:49.124 INFO Starting up service +2013-09-06T20:00:49.124817Z INFO Starting up service @fields: { "lvl": "INFO", "msg": "Starting up service"} [offset: 186] {"ts": "2013-09-06T22:00:49.124817Z", "@fields": { "lvl": "INFO", "msg": "Shutting down service\nline2\nline3\nline4\nline5\nline6\nline7\nline8\nline9\nline10 parse error: premature EOF {"ts": "2013-09-06T22:00:49.124 (right here) ------^ -2013-09-06T22:00:59.124 DEBUG5 Details... +2013-09-06T22:00:59.124817Z DEBUG5 Details... @fields: { "lvl": "DEBUG5", "msg": "Details..."} -2013-09-06T22:00:59.222 DEBUG4 Details... +2013-09-06T22:00:59.222222Z DEBUG4 Details... @fields: { "lvl": "DEBUG4", "msg": "Details..."} diff --git a/test/expected/test_json_format.sh_80959e2bb6a7fdf938c2e4dbd7d7c81eb84fa072.out b/test/expected/test_json_format.sh_80959e2bb6a7fdf938c2e4dbd7d7c81eb84fa072.out index 63376a4..4656a00 100644 --- a/test/expected/test_json_format.sh_80959e2bb6a7fdf938c2e4dbd7d7c81eb84fa072.out +++ b/test/expected/test_json_format.sh_80959e2bb6a7fdf938c2e4dbd7d7c81eb84fa072.out @@ -1,6 +1,6 @@ -2013-09-06T20:00:48.124 TRACE trace test +2013-09-06T20:00:48.124817Z TRACE trace test @fields: { "lvl": "TRACE", "msg": "trace test"} -2013-09-06T20:00:49.124 INFO Starting up service +2013-09-06T20:00:49.124817Z INFO Starting up service @fields: { "lvl": "INFO", "msg": "Starting up service"} [offset: 186] {"ts": "2013-09-06T22:00:49.124817Z", "@fields": { "lvl": "INFO", "msg": parse error: premature EOF diff --git a/test/expected/test_json_format.sh_84a71e94dc34661a70bb9015b67ba00e93e9cfb5.out b/test/expected/test_json_format.sh_84a71e94dc34661a70bb9015b67ba00e93e9cfb5.out index 58b44ab..474ad83 100644 --- a/test/expected/test_json_format.sh_84a71e94dc34661a70bb9015b67ba00e93e9cfb5.out +++ b/test/expected/test_json_format.sh_84a71e94dc34661a70bb9015b67ba00e93e9cfb5.out @@ -1,2 +1,2 @@ -[31m2018-08-21T14:04:21.221[0m[31m 38708007 [0m[31mmedusa-GpsLocator.service[0m[31m [0m[31mpython[0m[31m[[0m[31m184[0m[31m] FATAL [0m[31mGPS Reference longitude: 7.358143333[0m -2018-08-21T14:04:21.221 38708007 medusa-GpsLocator.service python[184] INFO GPS Reference latitude: 46.908706667 +[31m2018-08-21T14:04:21.221373Z[0m[31m 38708007 [0m[31mmedusa-GpsLocator.service[0m[31m [0m[31mpython[0m[31m[[0m[31m184[0m[31m] FATAL [0m[31mGPS Reference longitude: 7.358143333[0m +2018-08-21T14:04:21.221373Z 38708007 medusa-GpsLocator.service python[184] INFO GPS Reference latitude: 46.908706667 diff --git a/test/expected/test_json_format.sh_85d03b1b41a7f819af135d2521a8f2c59418e907.out b/test/expected/test_json_format.sh_85d03b1b41a7f819af135d2521a8f2c59418e907.out index 660e90e..48ec77c 100644 --- a/test/expected/test_json_format.sh_85d03b1b41a7f819af135d2521a8f2c59418e907.out +++ b/test/expected/test_json_format.sh_85d03b1b41a7f819af135d2521a8f2c59418e907.out @@ -1,14 +1,14 @@ -log_line,log_part,log_time,log_idle_msecs,log_level,log_mark,log_comment,log_tags,log_filters,arr,obj,lvl,user -0,<NULL>,2013-09-06 20:00:48.124,0,trace,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,TRACE,<NULL> -2,<NULL>,2013-09-06 20:00:49.124,1000,info,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,INFO,<NULL> -4,<NULL>,2013-09-06 22:00:49.124,7200000,info,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,INFO,steve@example.com -7,<NULL>,2013-09-06 22:00:59.124,10000,debug5,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,DEBUG5,<NULL> -9,<NULL>,2013-09-06 22:00:59.124,0,debug4,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,DEBUG4,<NULL> -11,<NULL>,2013-09-06 22:00:59.124,0,debug3,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,DEBUG3,<NULL> -13,<NULL>,2013-09-06 22:00:59.124,0,debug2,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,DEBUG2,<NULL> -15,<NULL>,2013-09-06 22:00:59.124,0,debug,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,DEBUG,<NULL> -17,<NULL>,2013-09-06 22:01:49.124,50000,stats,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,STATS,<NULL> -19,<NULL>,2013-09-06 22:01:49.124,0,warning,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,WARNING,<NULL> -21,<NULL>,2013-09-06 22:01:49.124,0,error,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,ERROR,<NULL> -23,<NULL>,2013-09-06 22:01:49.124,0,critical,0,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,CRITICAL,<NULL> -25,<NULL>,2013-09-06 22:01:49.124,0,fatal,0,<NULL>,<NULL>,<NULL>,"[""hi"", {""sub1"": true}]","{ ""field1"" : ""hi"", ""field2"": 2 }",FATAL,<NULL> +log_line,log_time,log_level,arr,obj,logger,lvl,user,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +0,2013-09-06 20:00:48.124,trace,<NULL>,<NULL>,com.example.foo.bar.bazzer,TRACE,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +2,2013-09-06 20:00:49.124,info,<NULL>,<NULL>,com.example.demo,INFO,<NULL>,<NULL>,1000,0,<NULL>,<NULL>,<NULL>,<NULL> +4,2013-09-06 22:00:49.124,info,<NULL>,<NULL>,<NULL>,INFO,steve@example.com,<NULL>,7200000,0,<NULL>,<NULL>,<NULL>,<NULL> +7,2013-09-06 22:00:59.124,debug5,<NULL>,<NULL>,<NULL>,DEBUG5,<NULL>,<NULL>,10000,0,<NULL>,<NULL>,<NULL>,<NULL> +9,2013-09-06 22:00:59.124,debug4,<NULL>,<NULL>,<NULL>,DEBUG4,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +11,2013-09-06 22:00:59.124,debug3,<NULL>,<NULL>,<NULL>,DEBUG3,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +13,2013-09-06 22:00:59.124,debug2,<NULL>,<NULL>,<NULL>,DEBUG2,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +15,2013-09-06 22:01:00.000,debug,<NULL>,<NULL>,<NULL>,DEBUG,<NULL>,<NULL>,876,0,<NULL>,<NULL>,<NULL>,<NULL> +17,2013-09-06 22:01:49.124,stats,<NULL>,<NULL>,<NULL>,STATS,<NULL>,<NULL>,49124,0,<NULL>,<NULL>,<NULL>,<NULL> +19,2013-09-06 22:01:49.124,warning,<NULL>,<NULL>,<NULL>,WARNING,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +21,2013-09-06 22:01:49.124,error,<NULL>,<NULL>,<NULL>,ERROR,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +23,2013-09-06 22:01:49.124,critical,<NULL>,<NULL>,<NULL>,CRITICAL,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +25,2013-09-06 22:01:49.124,fatal,"[""hi"", {""sub1"": true}]","{ ""field1"" : ""hi"", ""field2"": 2 }",<NULL>,FATAL,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_json_format.sh_895283eeb4c10e9c1702fafd13723c8085944f88.err b/test/expected/test_json_format.sh_895283eeb4c10e9c1702fafd13723c8085944f88.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_json_format.sh_895283eeb4c10e9c1702fafd13723c8085944f88.err diff --git a/test/expected/test_json_format.sh_895283eeb4c10e9c1702fafd13723c8085944f88.out b/test/expected/test_json_format.sh_895283eeb4c10e9c1702fafd13723c8085944f88.out new file mode 100644 index 0000000..143d8af --- /dev/null +++ b/test/expected/test_json_format.sh_895283eeb4c10e9c1702fafd13723c8085944f88.out @@ -0,0 +1,20 @@ +2023-10-01T02:39:09+00:00 twv 10.0.0.1 INFO files_antivirus Tried to scan non file + user: admin + method: + url: -- +2023-10-01T02:39:09+00:00 twv INFO files_antivirus Tried to scan non file + user: -- + method: + url: -- +2023-10-01T02:50:03+00:00 pZp INFO fulltextsearch_elasticsearch Request: PUT http://elasticsearch:9200/nextcloud/_doc/files%3A1780281 + user: -- + method: +[4m url: --[0m +2023-10-16T01:47:44+00:00 WO0 192.168.1.1 INFO memories Memories: Updated item successfully + user: jeff + method: PATCH + url: -- +2023-10-16T01:50:18+00:00 Sbl 192.168.1.1 INFO files_versions Mark to expire /Documents/phat.txt next version should be 1697407738 or smaller. (prevTimestamp: 1697411338; step: 3600 + user: jeff + method: + url: -- diff --git a/test/expected/test_json_format.sh_90a037c7d9d70ac4ca97158271ea242787313377.out b/test/expected/test_json_format.sh_90a037c7d9d70ac4ca97158271ea242787313377.out deleted file mode 100644 index 30ddacc..0000000 --- a/test/expected/test_json_format.sh_90a037c7d9d70ac4ca97158271ea242787313377.out +++ /dev/null @@ -1,3 +0,0 @@ -2017-03-24T20:06:26.240 1.1.1.1 GET 200 /example/uri/5 -[31m2017-03-24T20:12:47.764[0m[31m [0m[31m1.1.1.1[0m[31m [0m[31mGET[0m[31m 500 [0m[31m/example/uri/5[0m -[33m2017-03-24T20:15:31.694[0m[33m [0m[33m1.1.1.1[0m[33m [0m[33mGET[0m[33m 400 [0m[33m/example/uri/5[0m diff --git a/test/expected/test_json_format.sh_952297a90e312d2184fe3e4df795ddc731b096c9.out b/test/expected/test_json_format.sh_952297a90e312d2184fe3e4df795ddc731b096c9.out index 7cb7336..6de63a2 100644 --- a/test/expected/test_json_format.sh_952297a90e312d2184fe3e4df795ddc731b096c9.out +++ b/test/expected/test_json_format.sh_952297a90e312d2184fe3e4df795ddc731b096c9.out @@ -1,4 +1,4 @@ -[-09-06T22:00:49.124] INFO Shutting down service +[-09-06T22:00:49.124817Z] INFO Shutting down service user: steve@example.com diff --git a/test/expected/test_json_format.sh_a06b3cdd46b387e72d6faa4cce648b8b11ae870b.out b/test/expected/test_json_format.sh_a06b3cdd46b387e72d6faa4cce648b8b11ae870b.out index c3b21be..264a35e 100644 --- a/test/expected/test_json_format.sh_a06b3cdd46b387e72d6faa4cce648b8b11ae870b.out +++ b/test/expected/test_json_format.sh_a06b3cdd46b387e72d6faa4cce648b8b11ae870b.out @@ -1,29 +1,29 @@ - -[2013-09-06T20:00:48.124] ⋮ trace testbork bork bork - -[2013-09-06T20:00:49.124] ⋮ Starting up [32mservice[0mbork bork bork - -[2013-09-06T22:00:49.124] ⋮ Shutting down servicebork bork bork + +[2013-09-06T20:00:48.124817Z] ⋮ <c.e.foo.bar.bazzer > trace testbork bork bork + +[2013-09-06T20:00:49.124817Z] ⋮ <com.example.demo > Starting up [32mservice[0mbork bork bork + +[2013-09-06T22:00:49.124817Z] ⋮ Shutting down servicebork bork bork user: mailto:steve@example.com - -[2013-09-06T22:00:59.124] ⋮ Details... + +[2013-09-06T22:00:59.124817Z] ⋮ [1mD[0metails... bork bork bork - -[2013-09-06T22:00:59.124] ⋮ Details... + +[2013-09-06T22:00:59.124817Z] ⋮ [1mDe[0mtails... bork bork bork - -[2013-09-06T22:00:59.124] ⋮ Details... + +[2013-09-06T22:00:59.124817Z] ⋮ Details... bork bork bork - -[2013-09-06T22:00:59.124] ⋮ Details... + +[2013-09-06T22:00:59.124817Z] ⋮ Details... bork bork bork - -[2013-09-06T22:00:59.124] ⋮ Details...bork bork bork - -[2013-09-06T22:01:49.124] ⋮ 1 beat per secondbork bork bork - -[33m[[0m[33m2013-09-06T22:01:49.124[0m[33m] [0m[33m⋮[0m[33m [0m[33mnot looking goodbork bork bork[0m - -[31m[[0m[31m2013-09-06T22:01:49.124[0m[31m] [0m[31m⋮[0m[31m [0m[31mlooking bad[0m[31mbork bork bork[0m - -[31m[[0m[31m2013-09-06T22:01:49.124[0m[31m] [0m[31m⋮[0m[31m [0m[31msooo bad[0m[31mbork bork bork[0m + +[2013-09-06 22:01:00Z] ⋮ Details...bork bork bork + +[2013-09-06T22:01:49.124817Z] ⋮ 1 beat per secondbork bork bork + +[33m[[0m[33m2013-09-06T22:01:49.124817Z[0m[33m] [0m[33m⋮[0m[33m [0m[33mnot looking goodbork bork bork[0m + +[31m[[0m[31m2013-09-06T22:01:49.124817Z[0m[31m] [0m[31m⋮[0m[31m [0m[31mlooking badbork bork bork[0m + +[31m[[0m[31m2013-09-06T22:01:49.124817Z[0m[31m] [0m[31m⋮[0m[31m [0m[31msooo badbork bork bork[0m diff --git a/test/expected/test_json_format.sh_a6be47f1311ed92feaf303142fcb103deb80f456.out b/test/expected/test_json_format.sh_a6be47f1311ed92feaf303142fcb103deb80f456.out deleted file mode 100644 index b356898..0000000 --- a/test/expected/test_json_format.sh_a6be47f1311ed92feaf303142fcb103deb80f456.out +++ /dev/null @@ -1,4 +0,0 @@ -log_line,log_part,log_time,log_idle_msecs,log_level,log_mark,log_comment,log_tags,log_filters,client_ip,request/method,request/uri,request/size,response/status,details1,details2,details3 -0,<NULL>,2017-03-24 20:06:26.240,0,info,0,<NULL>,<NULL>,<NULL>,1.1.1.1,GET,/example/uri/5,166,200,<NULL>,<NULL>,<NULL> -1,<NULL>,2017-03-24 20:12:47.764,381524,critical,0,<NULL>,<NULL>,<NULL>,1.1.1.1,GET,/example/uri/5,166,500,<NULL>,<NULL>,<NULL> -2,<NULL>,2017-03-24 20:15:31.694,163930,warning,0,<NULL>,<NULL>,<NULL>,1.1.1.1,GET,/example/uri/5,166,400,"{""foo"": ""bar""}","{""foo"": ""bar""}","{""foo"": ""bar""}" diff --git a/test/expected/test_json_format.sh_ad3a238d03493de305544f9b30a0c69d4f474d3a.out b/test/expected/test_json_format.sh_ad3a238d03493de305544f9b30a0c69d4f474d3a.out index db5fbef..399bb82 100644 --- a/test/expected/test_json_format.sh_ad3a238d03493de305544f9b30a0c69d4f474d3a.out +++ b/test/expected/test_json_format.sh_ad3a238d03493de305544f9b30a0c69d4f474d3a.out @@ -1 +1 @@ -87.226.160.250 2022-10-30T00:00:02.000 "HEAD / HTTP/1.1" 301 570 +87.226.160.250 [2022-10-30T00:00:02Z] "HEAD / HTTP/1.1" 301 570 diff --git a/test/expected/test_json_format.sh_c1a23804c39b0f74642286d69865ee9d0961a58a.out b/test/expected/test_json_format.sh_c1a23804c39b0f74642286d69865ee9d0961a58a.out index 889eb99..dc77753 100644 --- a/test/expected/test_json_format.sh_c1a23804c39b0f74642286d69865ee9d0961a58a.out +++ b/test/expected/test_json_format.sh_c1a23804c39b0f74642286d69865ee9d0961a58a.out @@ -1,2 +1,2 @@ -2022-09-24T00:00:09.484 Hello, World! -2022-09-24T00:00:19.222 Goodbye, World! +2022-09-24T00:00:09.484000000Z Hello, World! +2022-09-24T00:00:19.222000123Z Goodbye, World! diff --git a/test/expected/test_json_format.sh_c60050b3469f37c5b0864e1dc7eb354e91d6ec81.out b/test/expected/test_json_format.sh_c60050b3469f37c5b0864e1dc7eb354e91d6ec81.out index abb3b80..2e9cd45 100644 --- a/test/expected/test_json_format.sh_c60050b3469f37c5b0864e1dc7eb354e91d6ec81.out +++ b/test/expected/test_json_format.sh_c60050b3469f37c5b0864e1dc7eb354e91d6ec81.out @@ -1,4 +1,4 @@ -[31m2016-08-03T12:06:31.009[0m[31m - [0m[31m;Exception initializing page context;[0m[31m java.lang.NoClassDefFoundError: javax/el/StaticFieldELResolver[0m +[31m2016-08-03T17:06:31.009+0000[0m[31m - [0m[31m;Exception initializing page context;[0m[31m java.lang.NoClassDefFoundError: javax/el/StaticFieldELResolver[0m [31m at org.apache.jasper.runtime.JspFactoryImpl.internalGetPageContext(JspFactoryImpl.java:172)[0m [31m at org.apache.jasper.runtime.JspFactoryImpl.getPageContext(JspFactoryImpl.java:123)[0m [31m at org.apache.jsp.errors._404_002dnot_002dfound_jsp._jspService(_404_002dnot_002dfound_jsp.java:38)[0m @@ -41,7 +41,7 @@ [31m thread_name: http-bio-[0m[31m0.0.0.0[0m[31m-8081-exec-198[0m [31m level: ERROR[0m [31m customer: foobaz[0m -[31m2016-08-03T12:06:31.009[0m[31m - [0m[31m;Exception initializing page context;[0m[31m [0m +[31m2016-08-03T17:06:31.009+0000[0m[31m - [0m[31m;Exception initializing page context;[0m[31m [0m [31m @version: 1[0m [31m logger_name: [0m[31morg.apache.jasper.runtime.JspFactoryImpl[0m [31m thread_name: http-bio-[0m[31m0.0.0.0[0m[31m-8081-exec-198[0m diff --git a/test/expected/test_json_format.sh_d0ec34389274affb70a5a76ba4789d51fd60f602.out b/test/expected/test_json_format.sh_d0ec34389274affb70a5a76ba4789d51fd60f602.out index aa47418..6495db7 100644 --- a/test/expected/test_json_format.sh_d0ec34389274affb70a5a76ba4789d51fd60f602.out +++ b/test/expected/test_json_format.sh_d0ec34389274affb70a5a76ba4789d51fd60f602.out @@ -1,4 +1,4 @@ -log_line,log_part,log_time,log_idle_msecs,log_level,log_mark,log_comment,log_tags,log_filters,client_ip,request/method,request/uri,request/size,response/status,response/size,details1,details2,details3 -0,<NULL>,2017-03-24 20:06:26.240,0,info,0,<NULL>,<NULL>,<NULL>,1.1.1.1,GET,/example/uri/5,166,200,443,<NULL>,<NULL>,<NULL> -1,<NULL>,2017-03-24 20:12:47.764,381524,critical,0,<NULL>,<NULL>,<NULL>,1.1.1.1,GET,/example/uri/5,166,500,4433,<NULL>,<NULL>,<NULL> -2,<NULL>,2017-03-24 20:15:31.694,163930,warning,0,<NULL>,<NULL>,<NULL>,1.1.1.1,GET,/example/uri/5,166,400,44345,"{""foo"": ""bar""}","{""foo"": ""bar""}","{""foo"": ""bar""}" +log_line,log_time,log_level,client_ip,request/method,request/uri,request/size,response/status,response/size,details1,details2,details3,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +0,2017-03-24 20:06:26.240,info,1.1.1.1,GET,/example/uri/5,166,200,443,<NULL>,<NULL>,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +1,2017-03-24 20:12:47.764,critical,1.1.1.1,GET,/example/uri/5,166,500,4433,<NULL>,<NULL>,<NULL>,<NULL>,381524,0,<NULL>,<NULL>,<NULL>,<NULL> +2,2017-03-24 20:15:31.694,warning,1.1.1.1,GET,/example/uri/5,166,400,44345,"{""foo"": ""bar""}","{""foo"": ""bar""}","{""foo"": ""bar""}",<NULL>,163930,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_json_format.sh_d7362cffc8335c2fe6b6527315de59bd6f5dcc7f.out b/test/expected/test_json_format.sh_d7362cffc8335c2fe6b6527315de59bd6f5dcc7f.out index 9a1c882..c65a346 100644 --- a/test/expected/test_json_format.sh_d7362cffc8335c2fe6b6527315de59bd6f5dcc7f.out +++ b/test/expected/test_json_format.sh_d7362cffc8335c2fe6b6527315de59bd6f5dcc7f.out @@ -1,3 +1,3 @@ -2017-03-24T16:06:26.240 1.1.1.1 GET 200 443 /example/uri/5 -[31m2017-03-24T16:12:47.764[0m[31m [0m[31m1.1.1.1[0m[31m [0m[31mGET[0m[31m 500 4433 [0m[31m/example/uri/5[0m -[33m2017-03-24T16:15:31.694[0m[33m [0m[33m1.1.1.1[0m[33m [0m[33mGET[0m[33m 400 44345 [0m[33m/example/uri/5[0m +2017-03-24T16:06:26.240-0400 1.1.1.1 GET 200 443 /example/uri/5 +[31m2017-03-24T16:12:47.764-0400[0m[31m [0m[31m1.1.1.1[0m[31m [0m[31mGET[0m[31m 500 4433 [0m[31m/example/uri/5[0m +[33m2017-03-24T16:15:31.694-0400[0m[33m [0m[33m1.1.1.1[0m[33m [0m[33mGET[0m[33m 400 44345 [0m[33m/example/uri/5[0m diff --git a/test/expected/test_json_format.sh_dfff27a651650a04d93de9a06ab5480e94ce3a79.out b/test/expected/test_json_format.sh_dfff27a651650a04d93de9a06ab5480e94ce3a79.out index db24336..379fc40 100644 --- a/test/expected/test_json_format.sh_dfff27a651650a04d93de9a06ab5480e94ce3a79.out +++ b/test/expected/test_json_format.sh_dfff27a651650a04d93de9a06ab5480e94ce3a79.out @@ -1,4 +1,4 @@ -log_line,log_part,log_time,log_idle_msecs,log_level,log_mark,log_comment,log_tags,log_filters,client_ip,request/method,request/uri,request/size,response/status,response/size,details1,details2,details3 -0,<NULL>,2017-03-24 16:06:26.240,0,info,0,<NULL>,<NULL>,<NULL>,1.1.1.1,GET,/example/uri/5,166,200,443,<NULL>,<NULL>,<NULL> -1,<NULL>,2017-03-24 16:12:47.764,381524,critical,0,<NULL>,<NULL>,<NULL>,1.1.1.1,GET,/example/uri/5,166,500,4433,<NULL>,<NULL>,<NULL> -2,<NULL>,2017-03-24 16:15:31.694,163930,warning,0,<NULL>,<NULL>,<NULL>,1.1.1.1,GET,/example/uri/5,166,400,44345,"{""foo"": ""bar""}","{""foo"": ""bar""}","{""foo"": ""bar""}" +log_line,log_time,log_level,client_ip,request/method,request/uri,request/size,response/status,response/size,details1,details2,details3,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +0,2017-03-24 16:06:26.240,info,1.1.1.1,GET,/example/uri/5,166,200,443,<NULL>,<NULL>,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +1,2017-03-24 16:12:47.764,critical,1.1.1.1,GET,/example/uri/5,166,500,4433,<NULL>,<NULL>,<NULL>,<NULL>,381524,0,<NULL>,<NULL>,<NULL>,<NULL> +2,2017-03-24 16:15:31.694,warning,1.1.1.1,GET,/example/uri/5,166,400,44345,"{""foo"": ""bar""}","{""foo"": ""bar""}","{""foo"": ""bar""}",<NULL>,163930,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_json_format.sh_e36401aa54bc61de71f8dcbe66ea16effa59ea52.out b/test/expected/test_json_format.sh_e36401aa54bc61de71f8dcbe66ea16effa59ea52.out index 05d531a..f80f324 100644 --- a/test/expected/test_json_format.sh_e36401aa54bc61de71f8dcbe66ea16effa59ea52.out +++ b/test/expected/test_json_format.sh_e36401aa54bc61de71f8dcbe66ea16effa59ea52.out @@ -1,2 +1,2 @@ -87.226.160.250 2022-10-30T00:00:02.000 "HEAD / HTTP/1.1" 301 570 +87.226.160.250 [2022-10-30T00:00:02Z] "HEAD / HTTP/1.1" 301 570 RayID: 761fde4e984e5ab2 diff --git a/test/expected/test_json_format.sh_f740026626ab554dacb249762d8be7d6539b8c6e.out b/test/expected/test_json_format.sh_f740026626ab554dacb249762d8be7d6539b8c6e.out index 52f2372..d1cb873 100644 --- a/test/expected/test_json_format.sh_f740026626ab554dacb249762d8be7d6539b8c6e.out +++ b/test/expected/test_json_format.sh_f740026626ab554dacb249762d8be7d6539b8c6e.out @@ -1,2 +1,2 @@ -[2013-09-06T20:00:49.124] INFO Starting up [32mservice[0m +[2013-09-06T20:00:49.124817Z] ⋮ <com.example.demo > Starting up [32mservice[0m diff --git a/test/expected/test_json_format.sh_fe19b7ebd349cd689b3f5c22618eab5ce995e68e.out b/test/expected/test_json_format.sh_fe19b7ebd349cd689b3f5c22618eab5ce995e68e.out index 325af1f..87d2dd4 100644 --- a/test/expected/test_json_format.sh_fe19b7ebd349cd689b3f5c22618eab5ce995e68e.out +++ b/test/expected/test_json_format.sh_fe19b7ebd349cd689b3f5c22618eab5ce995e68e.out @@ -1,4 +1,4 @@ --09-06T22:00:49.124 INFO Shutting down service +-09-06T22:00:49.124817Z INFO Shutting down service @fields/user: steve@example.com @fields: { "lvl": "INFO", "msg": "Shutting down service", "user": "steve@example.com"} diff --git a/test/expected/test_logfile.sh_00877d2e9dadab916a02005a068410dfbd85ec74.err b/test/expected/test_logfile.sh_00877d2e9dadab916a02005a068410dfbd85ec74.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_00877d2e9dadab916a02005a068410dfbd85ec74.err diff --git a/test/expected/test_logfile.sh_00877d2e9dadab916a02005a068410dfbd85ec74.out b/test/expected/test_logfile.sh_00877d2e9dadab916a02005a068410dfbd85ec74.out new file mode 100644 index 0000000..c271f3c --- /dev/null +++ b/test/expected/test_logfile.sh_00877d2e9dadab916a02005a068410dfbd85ec74.out @@ -0,0 +1,4 @@ +[31mNov 03 16:23:38[0m[31m [0m[31mveridian[0m[31m [0m[31mautomount[0m[31m[[0m[31m7998[0m[31m][0m[31m: [0m[31mlookup(file): lookup for foobar failed[0m +Nov 03 16:23:38 veridian automount[16442]: attempting to mount entry /auto/opt +[31mNov 03 16:23:38[0m[31m [0m[31mveridian[0m[31m [0m[31mautomount[0m[31m[[0m[31m7999[0m[31m][0m[31m: [0m[31mlookup(file): lookup for opt failed[0m +Nov 03 16:47:02 veridian sudo: timstack : TTY=pts/6 ; PWD=/auto/wstimstack/rpms/lbuild/test ; USER=root ; COMMAND=/usr/bin/tail /var/log/messages diff --git a/test/expected/test_logfile.sh_08d731a04c877a34819b35de185e30a74c9fd497.out b/test/expected/test_logfile.sh_08d731a04c877a34819b35de185e30a74c9fd497.out index 9b2a7cd..1d2ec4e 100644 --- a/test/expected/test_logfile.sh_08d731a04c877a34819b35de185e30a74c9fd497.out +++ b/test/expected/test_logfile.sh_08d731a04c877a34819b35de185e30a74c9fd497.out @@ -1,3 +1,3 @@ -2600-12-03 09:23:00.000000 0: -2600-12-03 09:23:00.000000 0: -2600-12-03 09:23:00.000000 0: +2600-01-03 09:23:00 0: +00:2 0 00:00:00 0: +2600-01-03 09:23:00 0: diff --git a/test/expected/test_logfile.sh_18d9a7beeb09041993d0d6da488fc8192d111bd9.err b/test/expected/test_logfile.sh_18d9a7beeb09041993d0d6da488fc8192d111bd9.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_18d9a7beeb09041993d0d6da488fc8192d111bd9.err diff --git a/test/expected/test_logfile.sh_18d9a7beeb09041993d0d6da488fc8192d111bd9.out b/test/expected/test_logfile.sh_18d9a7beeb09041993d0d6da488fc8192d111bd9.out new file mode 100644 index 0000000..6e52658 --- /dev/null +++ b/test/expected/test_logfile.sh_18d9a7beeb09041993d0d6da488fc8192d111bd9.out @@ -0,0 +1,3 @@ + File Offset 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f ASCII + 0 23 44 61 74 65 3a 09 33 2f 39 2f 33 2f 30 85 20 #Date:_3 /9/3/0×_ + 10 32 0a 30 0a 2_0_ diff --git a/test/expected/test_logfile.sh_1c6eee38f66356fcd9a9f0faedaea6dbcc901060.out b/test/expected/test_logfile.sh_1c6eee38f66356fcd9a9f0faedaea6dbcc901060.out deleted file mode 100644 index ff67043..0000000 --- a/test/expected/test_logfile.sh_1c6eee38f66356fcd9a9f0faedaea6dbcc901060.out +++ /dev/null @@ -1,2 +0,0 @@ -[1m[4m filepath [0m[1m[4m descriptor [0m[1m[4m mimetype [0m[1m[4m content [0m -[1m{test_dir}/logfile_syslog.1.gz[0m[1m [0m[1mnet.zlib.gzip.header[0m[1m [0m[1mapplication/json[0m[1m [0m[1m{"name":"logfile_syslog.1","mtime":"2007-11-03T16:23:00.000","comment":""} [0m diff --git a/test/expected/test_logfile.sh_218ecb88b4753010c4264b3ac351260b4811612f.out b/test/expected/test_logfile.sh_218ecb88b4753010c4264b3ac351260b4811612f.out index 4ed341d..683602c 100644 --- a/test/expected/test_logfile.sh_218ecb88b4753010c4264b3ac351260b4811612f.out +++ b/test/expected/test_logfile.sh_218ecb88b4753010c4264b3ac351260b4811612f.out @@ -1,2 +1,2 @@ -[1m[4mbasename(filepath) [0m[1m[4m descriptor [0m[1m[4m mimetype [0m[1m[4m content [0m -[1mlogfile_syslog.1.gz[0m[1m [0m[1mnet.zlib.gzip.header[0m[1m [0m[1mapplication/json[0m[1m [0m[1m{"name":"logfile_syslog.1","mtime":"2007-11-03T09:23:00.000","comment":""} [0m +[1m[4mbasename(filepath) [0m[1m[4m [0m[1m[4m descriptor [0m[1m[4m [0m[1m[4m mimetype [0m[1m[4m [0m[1m[4m content [0m[1m[4m [0m +logfile_syslog.1.gz net.zlib.gzip.header application/json {"name":"logfile_syslog.1","mtime":"2007-11-03T09:23:00.000","comment":""} diff --git a/test/expected/test_logfile.sh_290a3c49e53c2229a7400c107338fa0bb38375e2.out b/test/expected/test_logfile.sh_290a3c49e53c2229a7400c107338fa0bb38375e2.out index 7731fde..3052066 100644 --- a/test/expected/test_logfile.sh_290a3c49e53c2229a7400c107338fa0bb38375e2.out +++ b/test/expected/test_logfile.sh_290a3c49e53c2229a7400c107338fa0bb38375e2.out @@ -1,2 +1,2 @@ -#Fields: ? ) -0 + File Offset 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f ASCII + 0 23 46 69 65 6c 64 73 3a 20 f9 09 29 0a 30 0a #Fields: _×_)_0_ diff --git a/test/expected/test_logfile.sh_2e72d848a51ac1eb476b973c61fe43a65d579ba5.err b/test/expected/test_logfile.sh_2e72d848a51ac1eb476b973c61fe43a65d579ba5.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_2e72d848a51ac1eb476b973c61fe43a65d579ba5.err diff --git a/test/expected/test_logfile.sh_2e72d848a51ac1eb476b973c61fe43a65d579ba5.out b/test/expected/test_logfile.sh_2e72d848a51ac1eb476b973c61fe43a65d579ba5.out new file mode 100644 index 0000000..1925cdc --- /dev/null +++ b/test/expected/test_logfile.sh_2e72d848a51ac1eb476b973c61fe43a65d579ba5.out @@ -0,0 +1,2 @@ +[1m[4m options_path [0m[1m[4m [0m[1m[4m options [0m[1m[4m [0m +{test_dir}/logfile_syslog.0 {"default-zone":"America/Los_Angeles"} diff --git a/test/expected/test_logfile.sh_341e491abcf8772422bafb8b0eaea6492da230f6.err b/test/expected/test_logfile.sh_341e491abcf8772422bafb8b0eaea6492da230f6.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_341e491abcf8772422bafb8b0eaea6492da230f6.err diff --git a/test/expected/test_logfile.sh_341e491abcf8772422bafb8b0eaea6492da230f6.out b/test/expected/test_logfile.sh_341e491abcf8772422bafb8b0eaea6492da230f6.out new file mode 100644 index 0000000..f625ce6 --- /dev/null +++ b/test/expected/test_logfile.sh_341e491abcf8772422bafb8b0eaea6492da230f6.out @@ -0,0 +1,3 @@ +Aug 27 14:22:01 2022 -- 613 +Aug 27 14:22:01 2022 -- 694 +Aug 27 14:22:01 2022 -- 888 diff --git a/test/expected/test_logfile.sh_3fc6bfd8a6160817211f3e14fde957af75b9dbe7.out b/test/expected/test_logfile.sh_3fc6bfd8a6160817211f3e14fde957af75b9dbe7.out index 8d8b6ce..6a73ecb 100644 --- a/test/expected/test_logfile.sh_3fc6bfd8a6160817211f3e14fde957af75b9dbe7.out +++ b/test/expected/test_logfile.sh_3fc6bfd8a6160817211f3e14fde957af75b9dbe7.out @@ -1,2 +1,3 @@ -#Date: 20?0-2-02 -0 + File Offset 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f ASCII + 0 23 44 61 74 65 3a 09 32 30 80 30 2d 32 2d 30 32 #Date:_2 0×0-2-02 + 10 0a 30 0a _0_ diff --git a/test/expected/test_logfile.sh_82d65f4dac07b1623f8202444d5b9144096e8243.err b/test/expected/test_logfile.sh_82d65f4dac07b1623f8202444d5b9144096e8243.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_82d65f4dac07b1623f8202444d5b9144096e8243.err diff --git a/test/expected/test_logfile.sh_82d65f4dac07b1623f8202444d5b9144096e8243.out b/test/expected/test_logfile.sh_82d65f4dac07b1623f8202444d5b9144096e8243.out new file mode 100644 index 0000000..409849c --- /dev/null +++ b/test/expected/test_logfile.sh_82d65f4dac07b1623f8202444d5b9144096e8243.out @@ -0,0 +1,3 @@ +192.168.202.254 - - [20/Jul/2009:15:59:26 -0700] "GET /vmw/cgi/tramp HTTP/1.0" 200 134 "-" "gPXE/0.9.7" +192.168.202.254 - - [20/Jul/2009:15:59:29 -0700] "GET /vmw/vSphere/default/vmkboot.gz HTTP/1.0" 404 46210 "-" "gPXE/0.9.7" +192.168.202.254 - - [20/Jul/2009:15:59:29 -0700] "GET /vmw/vSphere/default/vmkernel.gz HTTP/1.0" 200 78929 "-" "gPXE/0.9.7" diff --git a/test/expected/test_logfile.sh_8a5e754cd471e5fdcdaede49c9290903acd7aad6.err b/test/expected/test_logfile.sh_8a5e754cd471e5fdcdaede49c9290903acd7aad6.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_8a5e754cd471e5fdcdaede49c9290903acd7aad6.err diff --git a/test/expected/test_logfile.sh_8a5e754cd471e5fdcdaede49c9290903acd7aad6.out b/test/expected/test_logfile.sh_8a5e754cd471e5fdcdaede49c9290903acd7aad6.out new file mode 100644 index 0000000..dbd0803 --- /dev/null +++ b/test/expected/test_logfile.sh_8a5e754cd471e5fdcdaede49c9290903acd7aad6.out @@ -0,0 +1,3 @@ +Jul 20 15:59:26 2009 -- 000 +Jul 20 15:59:29 2009 -- 000 +Jul 20 15:59:29 2009 -- 000 diff --git a/test/expected/test_logfile.sh_c18e14a26d8261c9f72747118a469266121d5459.out b/test/expected/test_logfile.sh_c18e14a26d8261c9f72747118a469266121d5459.out index 0733b93..0635648 100644 --- a/test/expected/test_logfile.sh_c18e14a26d8261c9f72747118a469266121d5459.out +++ b/test/expected/test_logfile.sh_c18e14a26d8261c9f72747118a469266121d5459.out @@ -1,3 +1,3 @@ -log_line log_part log_time log_idle_msecs log_level log_mark log_comment log_tags log_filters col_0 col_1 - 0 <NULL> 2021-05-19 08:00:01.000 0 info 0 <NULL> <NULL> <NULL> 1 /abc/def - 2 <NULL> 2021-05-19 08:00:03.000 2000 info 0 <NULL> <NULL> <NULL> 3 /ghi/jkl +log_line log_time log_level col_0 col_1 log_part log_idle_msecs log_mark log_comment log_tags log_annotations log_filters + 0 2021-05-19 08:00:01.000 info 1 /abc/def <NULL> 0 0 <NULL> <NULL> <NULL> <NULL> + 2 2021-05-19 08:00:03.000 info 3 /ghi/jkl <NULL> 2000 0 <NULL> <NULL> <NULL> <NULL> diff --git a/test/expected/test_logfile.sh_cc368d4b4bb6a9b9c79bd5a70ffa1f2d9d01e286.err b/test/expected/test_logfile.sh_cc368d4b4bb6a9b9c79bd5a70ffa1f2d9d01e286.err new file mode 100644 index 0000000..36412d9 --- /dev/null +++ b/test/expected/test_logfile.sh_cc368d4b4bb6a9b9c79bd5a70ffa1f2d9d01e286.err @@ -0,0 +1,15 @@ +[1m[31m✘ error[0m: “bad” is not a valid timezone + [1m[31mreason[0m: bad not found in timezone database +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m:[0m[1m[36m[40mset-file-timezone[0m[37m[40m bad [0m +[36m =[0m [36mnote[0m: did you mean one of the following? + [1mAmerica/Bahia_Banderas[0m + [1mAsia/Ashkhabad[0m + [1mBrazil/DeNoronha[0m + [1mAmerica/Barbados[0m + [1mAsia/Baghdad[0m +[36m =[0m [36mhelp[0m: [4m:[0m[1m[4mset-file-timezone[0m[4m [0m[4mzone[0m[4m [[0m[4mpattern[0m[4m][0m + ══════════════════════════════════════════════════════════════════════ + Set the timezone to use for log messages that do not include a + timezone. The timezone is applied to the focused file or the given + glob pattern. diff --git a/test/expected/test_logfile.sh_cc368d4b4bb6a9b9c79bd5a70ffa1f2d9d01e286.out b/test/expected/test_logfile.sh_cc368d4b4bb6a9b9c79bd5a70ffa1f2d9d01e286.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_cc368d4b4bb6a9b9c79bd5a70ffa1f2d9d01e286.out diff --git a/test/expected/test_logfile.sh_ccb0d31813367c8d9dc5b5df383fac5b780711c1.err b/test/expected/test_logfile.sh_ccb0d31813367c8d9dc5b5df383fac5b780711c1.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_ccb0d31813367c8d9dc5b5df383fac5b780711c1.err diff --git a/test/expected/test_logfile.sh_ccb0d31813367c8d9dc5b5df383fac5b780711c1.out b/test/expected/test_logfile.sh_ccb0d31813367c8d9dc5b5df383fac5b780711c1.out new file mode 100644 index 0000000..1bf2d2a --- /dev/null +++ b/test/expected/test_logfile.sh_ccb0d31813367c8d9dc5b5df383fac5b780711c1.out @@ -0,0 +1,3 @@ +Aug 27 10:22:01 2022 -- 613 +Aug 27 10:22:01 2022 -- 694 +Aug 27 10:22:01 2022 -- 888 diff --git a/test/expected/test_logfile.sh_d14f6d8888652321206549df8a9535399f0fd372.err b/test/expected/test_logfile.sh_d14f6d8888652321206549df8a9535399f0fd372.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_d14f6d8888652321206549df8a9535399f0fd372.err diff --git a/test/expected/test_logfile.sh_d14f6d8888652321206549df8a9535399f0fd372.out b/test/expected/test_logfile.sh_d14f6d8888652321206549df8a9535399f0fd372.out new file mode 100644 index 0000000..c271f3c --- /dev/null +++ b/test/expected/test_logfile.sh_d14f6d8888652321206549df8a9535399f0fd372.out @@ -0,0 +1,4 @@ +[31mNov 03 16:23:38[0m[31m [0m[31mveridian[0m[31m [0m[31mautomount[0m[31m[[0m[31m7998[0m[31m][0m[31m: [0m[31mlookup(file): lookup for foobar failed[0m +Nov 03 16:23:38 veridian automount[16442]: attempting to mount entry /auto/opt +[31mNov 03 16:23:38[0m[31m [0m[31mveridian[0m[31m [0m[31mautomount[0m[31m[[0m[31m7999[0m[31m][0m[31m: [0m[31mlookup(file): lookup for opt failed[0m +Nov 03 16:47:02 veridian sudo: timstack : TTY=pts/6 ; PWD=/auto/wstimstack/rpms/lbuild/test ; USER=root ; COMMAND=/usr/bin/tail /var/log/messages diff --git a/test/expected/test_logfile.sh_de8d59879fe6aa5a012b0748ff77ae26c07aea89.err b/test/expected/test_logfile.sh_de8d59879fe6aa5a012b0748ff77ae26c07aea89.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_de8d59879fe6aa5a012b0748ff77ae26c07aea89.err diff --git a/test/expected/test_logfile.sh_de8d59879fe6aa5a012b0748ff77ae26c07aea89.out b/test/expected/test_logfile.sh_de8d59879fe6aa5a012b0748ff77ae26c07aea89.out new file mode 100644 index 0000000..6feae9d --- /dev/null +++ b/test/expected/test_logfile.sh_de8d59879fe6aa5a012b0748ff77ae26c07aea89.out @@ -0,0 +1,4 @@ +[31mNov 03 13:23:38[0m[31m [0m[31mveridian[0m[31m [0m[31mautomount[0m[31m[[0m[31m7998[0m[31m][0m[31m: [0m[31mlookup(file): lookup for foobar failed[0m +Nov 03 13:23:38 veridian automount[16442]: attempting to mount entry /auto/opt +[31mNov 03 13:23:38[0m[31m [0m[31mveridian[0m[31m [0m[31mautomount[0m[31m[[0m[31m7999[0m[31m][0m[31m: [0m[31mlookup(file): lookup for opt failed[0m +Nov 03 13:47:02 veridian sudo: timstack : TTY=pts/6 ; PWD=/auto/wstimstack/rpms/lbuild/test ; USER=root ; COMMAND=/usr/bin/tail /var/log/messages diff --git a/test/expected/test_logfile.sh_e840b674cd65936a72bd64b1dac1524d16fe44c3.out b/test/expected/test_logfile.sh_e840b674cd65936a72bd64b1dac1524d16fe44c3.out index 9de987f..f551cf0 100644 --- a/test/expected/test_logfile.sh_e840b674cd65936a72bd64b1dac1524d16fe44c3.out +++ b/test/expected/test_logfile.sh_e840b674cd65936a72bd64b1dac1524d16fe44c3.out @@ -1,11 +1,11 @@ -[1m[4m log_time [0m[1m[4m log_body [0m -[1m2022-09-19 09:24:04.000[0m[1m [0m[1mtid:1d1f - Mux ID not found in mapping dictionary [0m +[1m[4m log_time [0m[1m[4m [0m[1m[4m log_body [0m[1m[4m [0m +2022-09-19 09:24:04.000 tid:1d1f - Mux ID not found in mapping dictionary 2022-09-19 09:24:04.000 tid:1d1f - Can't handle disconnect with invalid ecid [1m2022-09-19 09:24:20.000[0m[1m [0m[1mEntered:_AMMuxedDeviceDisconnected, mux-device:1003 [0m -2022-09-19 09:24:20.000 Entered:_AMMuxedDeviceDisconnected, mux-device:1003 -[1m2022-09-19 09:24:20.000[0m[1m [0m[1mEntered:__thr_AMMuxedDeviceDisconnected, mux-device:1003 [0m +[1m2022-09-19 09:24:20.000[0m[1m [0m[1mEntered:_AMMuxedDeviceDisconnected, mux-device:1003 [0m +2022-09-19 09:24:20.000 Entered:__thr_AMMuxedDeviceDisconnected, mux-device:1003 2022-09-19 09:24:20.000 Entered:__thr_AMMuxedDeviceDisconnected, mux-device:1003 [1m2022-09-19 09:24:20.000[0m[1m [0m[1mtid:191f - Mux ID not found in mapping dictionary [0m -2022-09-19 09:24:20.000 tid:1d1f - Mux ID not found in mapping dictionary -[1m2022-09-19 09:24:20.000[0m[1m [0m[1mtid:191f - Can't handle disconnect with invalid ecid [0m +[1m2022-09-19 09:24:20.000[0m[1m [0m[1mtid:1d1f - Mux ID not found in mapping dictionary [0m +2022-09-19 09:24:20.000 tid:191f - Can't handle disconnect with invalid ecid 2022-09-19 09:24:20.000 tid:1d1f - Can't handle disconnect with invalid ecid diff --git a/test/expected/test_logfile.sh_f171f265d8d45a2707e8b9f53e938f574c614d25.err b/test/expected/test_logfile.sh_f171f265d8d45a2707e8b9f53e938f574c614d25.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_logfile.sh_f171f265d8d45a2707e8b9f53e938f574c614d25.err diff --git a/test/expected/test_logfile.sh_f171f265d8d45a2707e8b9f53e938f574c614d25.out b/test/expected/test_logfile.sh_f171f265d8d45a2707e8b9f53e938f574c614d25.out new file mode 100644 index 0000000..c210568 --- /dev/null +++ b/test/expected/test_logfile.sh_f171f265d8d45a2707e8b9f53e938f574c614d25.out @@ -0,0 +1,3 @@ +Aug 27 07:22:01 2022 -- 613 +Aug 27 07:22:01 2022 -- 694 +Aug 27 07:22:01 2022 -- 888 diff --git a/test/expected/test_meta.sh_0ae5840c0758ec95a397493ac3c3d4fabd397a34.err b/test/expected/test_meta.sh_0ae5840c0758ec95a397493ac3c3d4fabd397a34.err new file mode 100644 index 0000000..8b8ac40 --- /dev/null +++ b/test/expected/test_meta.sh_0ae5840c0758ec95a397493ac3c3d4fabd397a34.err @@ -0,0 +1,7 @@ +[1m[31m✘ error[0m: unexpected JSON value +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m;[0m[1m[36m[40mUPDATE[0m[37m[40m [0m[37m[40maccess_log[0m[37m[40m [0m[1m[36m[40mSET[0m[37m[40m [0m[37m[40mlog_annotations[0m[37m[40m [0m[1m[37m[40m=[0m[37m[40m [0m[35m[40m'1'[0m[37m[40m [0m[1m[36m[40mWHERE[0m[37m[40m [0m[37m[40mlog_line[0m[37m[40m [0m[1m[37m[40m=[0m[37m[40m [0m[1m[37m[40m0[0m +[36m --> [0m[1mlog_annotations[0m:1 +[36m | [0m[37m[40m1 [0m +[36m =[0m [36mhelp[0m: [1mAvailable Properties[0m + [1m(.*)[0m diff --git a/test/expected/test_meta.sh_0ae5840c0758ec95a397493ac3c3d4fabd397a34.out b/test/expected/test_meta.sh_0ae5840c0758ec95a397493ac3c3d4fabd397a34.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_meta.sh_0ae5840c0758ec95a397493ac3c3d4fabd397a34.out diff --git a/test/expected/test_meta.sh_41f643bb4f720130625b042563e9591bee4ae588.out b/test/expected/test_meta.sh_41f643bb4f720130625b042563e9591bee4ae588.out index 171d0f7..d2ad552 100644 --- a/test/expected/test_meta.sh_41f643bb4f720130625b042563e9591bee4ae588.out +++ b/test/expected/test_meta.sh_41f643bb4f720130625b042563e9591bee4ae588.out @@ -1,2 +1,2 @@ -[1m[4mlog_tags [0m +[1m[4mlog_tags[0m[1m[4m [0m ["#foo"] diff --git a/test/expected/test_meta.sh_4283bf9128e0396c4ff141faf68279d5a3d8ac63.err b/test/expected/test_meta.sh_4283bf9128e0396c4ff141faf68279d5a3d8ac63.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_meta.sh_4283bf9128e0396c4ff141faf68279d5a3d8ac63.err diff --git a/test/expected/test_meta.sh_4283bf9128e0396c4ff141faf68279d5a3d8ac63.out b/test/expected/test_meta.sh_4283bf9128e0396c4ff141faf68279d5a3d8ac63.out new file mode 100644 index 0000000..f1362fc --- /dev/null +++ b/test/expected/test_meta.sh_4283bf9128e0396c4ff141faf68279d5a3d8ac63.out @@ -0,0 +1,41 @@ +#!lnav -Nf +# This file is an export of an lnav session. You can type +# '|/path/to/this/file' in lnav to execute this file and +# restore the state of the session. + +;SELECT raise_error('This session export was made with a newer version of lnav, please upgrade to ' || '0.11.2' || ' or later') + WHERE lnav_version() < '0.11.2' COLLATE naturalcase + +# The files loaded into the session were: + + +# Set this environment variable to override this value or edit this script. +;INSERT OR IGNORE INTO environ (name, value) VALUES ('LOG_DIR_0', '{top_srcdir_parent}') +:open $LOG_DIR_0/lnav/test/logfile_access_log.0 + +:rebuild + + +# The following SQL statements will restore the bookmarks, +# comments, and tags that were added in the session. + +;SELECT total_changes() AS before_mark_changes +;UPDATE all_logs SET log_mark = 0, log_comment = NULL, log_tags = NULL, log_annotations = '{"org.lnav.test":"Hello, <span style=\"color: #f00\">World</span>!\n"}' WHERE log_time_msecs = 1248130766000 AND log_format = 'access_log' AND log_line_hash = 'v1:3f7e0f10f2473f83b2b4eacccfc9b4e2' +;UPDATE all_logs SET log_mark = 0, log_comment = NULL, log_tags = '["#foo"]', log_annotations = NULL WHERE log_time_msecs = 1248130769000 AND log_format = 'access_log' AND log_line_hash = 'v1:7ad4831dd06e0d6b0ffd965c7d65285f' + +;SELECT 2 - (total_changes() - $before_mark_changes) AS failed_mark_changes +;SELECT echoln(printf('%sERROR%s: failed to restore %d bookmarks', + $ansi_red, $ansi_norm, $failed_mark_changes)) + WHERE $failed_mark_changes != 0 + + +# The following SQL statements will restore the filters that +# were added in the session. + +;REPLACE INTO lnav_view_filters (view_name, enabled, type, language, pattern) VALUES ('log', 0, 'in', 'regex', 'credential status') + + +# The following commands will restore the state of the LOG view. + +:switch-to-view log +:goto 0 diff --git a/test/expected/test_meta.sh_65325d1bcb58e530a8d681685fea56803f67a2eb.err b/test/expected/test_meta.sh_65325d1bcb58e530a8d681685fea56803f67a2eb.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_meta.sh_65325d1bcb58e530a8d681685fea56803f67a2eb.err diff --git a/test/expected/test_meta.sh_65325d1bcb58e530a8d681685fea56803f67a2eb.out b/test/expected/test_meta.sh_65325d1bcb58e530a8d681685fea56803f67a2eb.out new file mode 100644 index 0000000..25d62c1 --- /dev/null +++ b/test/expected/test_meta.sh_65325d1bcb58e530a8d681685fea56803f67a2eb.out @@ -0,0 +1,2 @@ +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_tags [0m[1m[4m [0m + 46 ["#bro-test"] diff --git a/test/expected/test_meta.sh_aae427fe704f131f8466fbfc9e7967c2e874530a.err b/test/expected/test_meta.sh_aae427fe704f131f8466fbfc9e7967c2e874530a.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_meta.sh_aae427fe704f131f8466fbfc9e7967c2e874530a.err diff --git a/test/expected/test_meta.sh_aae427fe704f131f8466fbfc9e7967c2e874530a.out b/test/expected/test_meta.sh_aae427fe704f131f8466fbfc9e7967c2e874530a.out new file mode 100644 index 0000000..fc8266d --- /dev/null +++ b/test/expected/test_meta.sh_aae427fe704f131f8466fbfc9e7967c2e874530a.out @@ -0,0 +1,2 @@ +[1m[4mlog_line[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m + 0 {"abc":"def"} diff --git a/test/expected/test_meta.sh_ad2f396f332d14ed6e95936983bc7e4aeea0bfac.err b/test/expected/test_meta.sh_ad2f396f332d14ed6e95936983bc7e4aeea0bfac.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_meta.sh_ad2f396f332d14ed6e95936983bc7e4aeea0bfac.err diff --git a/test/expected/test_meta.sh_ad2f396f332d14ed6e95936983bc7e4aeea0bfac.out b/test/expected/test_meta.sh_ad2f396f332d14ed6e95936983bc7e4aeea0bfac.out new file mode 100644 index 0000000..9fe4123 --- /dev/null +++ b/test/expected/test_meta.sh_ad2f396f332d14ed6e95936983bc7e4aeea0bfac.out @@ -0,0 +1,7 @@ +192.168.202.254 - - [20/Jul/2009:22:59:26 +0000] "GET /vmw/cgi/tramp HTTP/1.0" 200 134 "-" "gPXE/0.9.7" +[32m ├ org.lnav.test:[0m +[32m ╰ [0mHello, [31mWorld[0m! +[31m192.168.202.254[0m[31m - [0m[31m-[0m[31m [[0m[31m20/Jul/2009:22:59:29 +0000[0m[31m] "[0m[31mGET[0m[31m [0m[31m/vmw/vSphere/default/vmkboot.gz[0m[31m [0m[31mHTTP/1.0[0m[31m" 404 46210 "[0m[31m-[0m[31m" "[0m[31mgPXE/0.9.7[0m[31m"[0m +[32m 📝 Annotations available, focus on this line and use [0m[32m[40m:annotate[0m[32m to apply them[0m +192.168.202.254 - - [20/Jul/2009:22:59:29 +0000] "GET /vmw/vSphere/default/vmkernel.gz HTTP/1.0" 200 78929 "-" "gPXE/0.9.7" +[32m 📝 Annotations available, focus on this line and use [0m[32m[40m:annotate[0m[32m to apply them[0m diff --git a/test/expected/test_meta.sh_b622c04c2bede5371bfa6f2627b0474049ecc5e9.err b/test/expected/test_meta.sh_b622c04c2bede5371bfa6f2627b0474049ecc5e9.err new file mode 100644 index 0000000..cf52340 --- /dev/null +++ b/test/expected/test_meta.sh_b622c04c2bede5371bfa6f2627b0474049ecc5e9.err @@ -0,0 +1,6 @@ +[1m[31m✘ error[0m: invalid JSON + [1m[31mreason[0m: parse error: premature EOF +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m;[0m[1m[36m[40mUPDATE[0m[37m[40m [0m[37m[40maccess_log[0m[37m[40m [0m[1m[36m[40mSET[0m[37m[40m [0m[37m[40mlog_annotations[0m[37m[40m [0m[1m[37m[40m=[0m[37m[40m [0m[35m[40m'{"abc": "def"'[0m[37m[40m [0m[1m[36m[40mWHERE[0m[37m[40m [0m[37m[40mlog_line[0m[37m[40m [0m[1m[37m[40m=[0m[37m[40m [0m[1m[37m[40m0[0m +[36m --> [0m[1mlog_annotations[0m:1 +[36m | [0m[37m[40m{"abc": "def" [0m diff --git a/test/expected/test_meta.sh_b622c04c2bede5371bfa6f2627b0474049ecc5e9.out b/test/expected/test_meta.sh_b622c04c2bede5371bfa6f2627b0474049ecc5e9.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_meta.sh_b622c04c2bede5371bfa6f2627b0474049ecc5e9.out diff --git a/test/expected/test_meta.sh_c75128169049bd88d5eaf8b84a7f617e5ae5d936.out b/test/expected/test_meta.sh_c75128169049bd88d5eaf8b84a7f617e5ae5d936.out index 8462ae3..6f1aae9 100644 --- a/test/expected/test_meta.sh_c75128169049bd88d5eaf8b84a7f617e5ae5d936.out +++ b/test/expected/test_meta.sh_c75128169049bd88d5eaf8b84a7f617e5ae5d936.out @@ -1,4 +1,4 @@ -[1m[4mlog_line [0m[1m[4m log_comment [0m[1m[4mlog_tags [0m -[1m 0[0m[1m [0m[1mHello, World![0m[1m [0m[1m["#foo"] [0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_comment [0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m + 0 Hello, World! ["#foo"] 1 <NULL> <NULL> [1m 2[0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m diff --git a/test/expected/test_meta.sh_d6af0b41066ca3be0bbce89c83c011f4ecfa516e.out b/test/expected/test_meta.sh_d6af0b41066ca3be0bbce89c83c011f4ecfa516e.out index a3e5357..6300f44 100644 --- a/test/expected/test_meta.sh_d6af0b41066ca3be0bbce89c83c011f4ecfa516e.out +++ b/test/expected/test_meta.sh_d6af0b41066ca3be0bbce89c83c011f4ecfa516e.out @@ -1,5 +1,5 @@ [7m192.168.202.254[0m[7m - [0m[7m-[0m[7m [[0m[7m20/Jul/2009:22:59:26 +0000[0m[7m] "[0m[7mGET[0m[7m [0m[7m/vmw/cgi/tramp[0m[7m [0m[7mHTTP/1.0[0m[7m" 200 134 "[0m[7m-[0m[7m" "[0m[7mgPXE/0.9.7[0m[7m"[0m -[7m[31m192.168.202.254[0m[7m[31m - [0m[7m[31m-[0m[7m[31m [[0m[7m[31m20/Jul/2009:22:59:29 +0000[0m[7m[31m] "[0m[7m[31mGET[0m[7m[31m [0m[7m[31m/vmw/vSphere/default/vmkboot.gz[0m[7m[31m [0m[7m[31mHTTP/1.0[0m[7m[31m" 404 46210 "[0m[7m[31m-[0m[7m[31m" "[0m[7m[31mgPXE/0.9.7[0m[7m[31m"[0m ├ [32mHello, World![0m └ #foo +[7m[31m192.168.202.254[0m[7m[31m - [0m[7m[31m-[0m[7m[31m [[0m[7m[31m20/Jul/2009:22:59:29 +0000[0m[7m[31m] "[0m[7m[31mGET[0m[7m[31m [0m[7m[31m/vmw/vSphere/default/vmkboot.gz[0m[7m[31m [0m[7m[31mHTTP/1.0[0m[7m[31m" 404 46210 "[0m[7m[31m-[0m[7m[31m" "[0m[7m[31mgPXE/0.9.7[0m[7m[31m"[0m [7m192.168.202.254[0m[7m - [0m[7m-[0m[7m [[0m[7m20/Jul/2009:22:59:29 +0000[0m[7m] "[0m[7mGET[0m[7m [0m[7m/vmw/vSphere/default/vmkernel.gz[0m[7m [0m[7mHTTP/1.0[0m[7m" 200 78929 "[0m[7m-[0m[7m" "[0m[7mgPXE/0.9.7[0m[7m"[0m diff --git a/test/expected/test_meta.sh_f7c55356df0d71c51eb7629c5a81f347083ce1ef.err b/test/expected/test_meta.sh_f7c55356df0d71c51eb7629c5a81f347083ce1ef.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_meta.sh_f7c55356df0d71c51eb7629c5a81f347083ce1ef.err diff --git a/test/expected/test_meta.sh_f7c55356df0d71c51eb7629c5a81f347083ce1ef.out b/test/expected/test_meta.sh_f7c55356df0d71c51eb7629c5a81f347083ce1ef.out new file mode 100644 index 0000000..25d62c1 --- /dev/null +++ b/test/expected/test_meta.sh_f7c55356df0d71c51eb7629c5a81f347083ce1ef.out @@ -0,0 +1,2 @@ +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_tags [0m[1m[4m [0m + 46 ["#bro-test"] diff --git a/test/expected/test_pretty_print.sh_3c255c3c8b28df9d694b329a265e8b8140dae4a2.out b/test/expected/test_pretty_print.sh_3c255c3c8b28df9d694b329a265e8b8140dae4a2.out index 35fadf8..974a0b4 100644 --- a/test/expected/test_pretty_print.sh_3c255c3c8b28df9d694b329a265e8b8140dae4a2.out +++ b/test/expected/test_pretty_print.sh_3c255c3c8b28df9d694b329a265e8b8140dae4a2.out @@ -1,8 +1,8 @@ { -[35m "wra[0mpper": [ + [35m"wrapper"[0m: [ {[35m"message"[0m:[35m""[0m -[35m select Id from Account where id = $sfid[0m -[35m ^[0m -[35m ERROR at Row:1:Column:34[0m -[35m line 1:34 no viable alternative at character '$'[0m -[35m""[0m}]} +[35m [0m[35m [0m[35m select Id from Account where id = $sfid[0m +[35m [0m[35m [0m[35m [0m[35m [0m[35m ^[0m +[35m [0m[35m [0m[35m ERROR at Row:1:Column:34[0m +[35m [0m[35m [0m[35m line[0m 1:34 no viable alternative at character '$' +""}]} diff --git a/test/expected/test_pretty_print.sh_7192f8f68adb14705c8a60e73ff8248c61c7fd03.out b/test/expected/test_pretty_print.sh_7192f8f68adb14705c8a60e73ff8248c61c7fd03.out index 613cc3a..18f1d8a 100644 --- a/test/expected/test_pretty_print.sh_7192f8f68adb14705c8a60e73ff8248c61c7fd03.out +++ b/test/expected/test_pretty_print.sh_7192f8f68adb14705c8a60e73ff8248c61c7fd03.out @@ -1,5 +1,5 @@ 2015-04-18T13:16:30.003 { "wrapper": {"msg": r"" Hello, - World! -""}} + + ""}} diff --git a/test/expected/test_pretty_print.sh_a5bee322ea3374690e44a88a16cb6b84feaa11d3.out b/test/expected/test_pretty_print.sh_a5bee322ea3374690e44a88a16cb6b84feaa11d3.out index 0ac4c9a..f9264f7 100644 --- a/test/expected/test_pretty_print.sh_a5bee322ea3374690e44a88a16cb6b84feaa11d3.out +++ b/test/expected/test_pretty_print.sh_a5bee322ea3374690e44a88a16cb6b84feaa11d3.out @@ -1,3 +1,2 @@ Hello World - diff --git a/test/expected/test_prql.sh_06900fac5c2e854b1208320b753fcd43d4ba63a3.err b/test/expected/test_prql.sh_06900fac5c2e854b1208320b753fcd43d4ba63a3.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_prql.sh_06900fac5c2e854b1208320b753fcd43d4ba63a3.err diff --git a/test/expected/test_prql.sh_06900fac5c2e854b1208320b753fcd43d4ba63a3.out b/test/expected/test_prql.sh_06900fac5c2e854b1208320b753fcd43d4ba63a3.out new file mode 100644 index 0000000..8b17a01 --- /dev/null +++ b/test/expected/test_prql.sh_06900fac5c2e854b1208320b753fcd43d4ba63a3.out @@ -0,0 +1,2 @@ +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4m c_ip [0m[1m[4m [0m[1m[4mcs_method[0m[1m[4m [0m[1m[4mcs_referer[0m[1m[4m [0m[1m[4mcs_uri_query[0m[1m[4m [0m[1m[4m cs_uri_stem [0m[1m[4m [0m[1m[4mcs_user_agent[0m[1m[4m [0m[1m[4mcs_username[0m[1m[4m [0m[1m[4mcs_version[0m[1m[4m [0m[1m[4m[7m sc_bytes [0m[1m[4m [0m[1m[4msc_status[0m[1m[4m [0m[1m[4mcs_host[0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m + 0 2009-07-20 22:59:26.000 info 192.168.202.254 GET - <NULL> /vmw/cgi/tramp gPXE/0.9.7 - HTTP/1.0 [1m[7m 134[0m 200 <NULL> <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> diff --git a/test/expected/test_prql.sh_15ebcd913f56cde35af26c6300533d6e76bf1b55.err b/test/expected/test_prql.sh_15ebcd913f56cde35af26c6300533d6e76bf1b55.err new file mode 100644 index 0000000..2d3ebea --- /dev/null +++ b/test/expected/test_prql.sh_15ebcd913f56cde35af26c6300533d6e76bf1b55.err @@ -0,0 +1,10 @@ +[1m[31m✘ error[0m: unable to compile PRQL: [1m[36mfrom[0m access_log | [1m[36mtake[0m abc + [1m[31mreason[0m: `take` expected int or range, but found this.access_log.abc +[36m =[0m [36mnote[0m: Error: + ╭─[:1:24] + │ + 1 │ from access_log | take abc + │ ─┬─ + │ ╰─── `take` expected int or range, but found this.access_log.abc + ───╯ + diff --git a/test/expected/test_prql.sh_15ebcd913f56cde35af26c6300533d6e76bf1b55.out b/test/expected/test_prql.sh_15ebcd913f56cde35af26c6300533d6e76bf1b55.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_prql.sh_15ebcd913f56cde35af26c6300533d6e76bf1b55.out diff --git a/test/expected/test_prql.sh_451e242cdfa2db9005d4fe752a7b05d1ab5cba29.err b/test/expected/test_prql.sh_451e242cdfa2db9005d4fe752a7b05d1ab5cba29.err new file mode 100644 index 0000000..1c7eb34 --- /dev/null +++ b/test/expected/test_prql.sh_451e242cdfa2db9005d4fe752a7b05d1ab5cba29.err @@ -0,0 +1,10 @@ +[1m[31m✘ error[0m: unable to compile PRQL: [1m[36mfrom[0m db.access_log | [1m[36mtake[0m abc + [1m[31mreason[0m: `take` expected int or range, but found this.access_log.abc +[36m =[0m [36mnote[0m: Error: + ╭─[:1:27] + │ + 1 │ from db.access_log | take abc + │ ─┬─ + │ ╰─── `take` expected int or range, but found this.access_log.abc + ───╯ + diff --git a/test/expected/test_prql.sh_451e242cdfa2db9005d4fe752a7b05d1ab5cba29.out b/test/expected/test_prql.sh_451e242cdfa2db9005d4fe752a7b05d1ab5cba29.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_prql.sh_451e242cdfa2db9005d4fe752a7b05d1ab5cba29.out diff --git a/test/expected/test_prql.sh_45d57a042092ffdcd28ea35a892f02859e78f33d.err b/test/expected/test_prql.sh_45d57a042092ffdcd28ea35a892f02859e78f33d.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_prql.sh_45d57a042092ffdcd28ea35a892f02859e78f33d.err diff --git a/test/expected/test_prql.sh_45d57a042092ffdcd28ea35a892f02859e78f33d.out b/test/expected/test_prql.sh_45d57a042092ffdcd28ea35a892f02859e78f33d.out new file mode 100644 index 0000000..e73b017 --- /dev/null +++ b/test/expected/test_prql.sh_45d57a042092ffdcd28ea35a892f02859e78f33d.out @@ -0,0 +1,2 @@ +[1m[4mlog_line [0m[1m[4m log_time [0m[1m[4mlog_level [0m[1m[4m c_ip [0m[1m[4mcs_method [0m[1m[4mcs_referer [0m[1m[4mcs_uri_query [0m[1m[4m cs_uri_stem [0m[1m[4mcs_user_agent [0m[1m[4mcs_username [0m[1m[4mcs_version [0m[1m[4m[7msc_bytes [0m[1m[4msc_status [0m[1m[4mcs_host [0m[1m[4mlog_part [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_annotations [0m[1m[4mlog_filters [0m + 0 2009-07-20 22:59:26.000 info 192.168.202.254 GET - <NULL> /vmw/cgi/tramp gPXE/0.9.7 - HTTP/1.0 [1m 134[0m 200 <NULL> <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> diff --git a/test/expected/test_prql.sh_5aea925b5ad95f55ce6b1b07b7046bc3d7310137.err b/test/expected/test_prql.sh_5aea925b5ad95f55ce6b1b07b7046bc3d7310137.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_prql.sh_5aea925b5ad95f55ce6b1b07b7046bc3d7310137.err diff --git a/test/expected/test_prql.sh_5aea925b5ad95f55ce6b1b07b7046bc3d7310137.out b/test/expected/test_prql.sh_5aea925b5ad95f55ce6b1b07b7046bc3d7310137.out new file mode 100644 index 0000000..3c62603 --- /dev/null +++ b/test/expected/test_prql.sh_5aea925b5ad95f55ce6b1b07b7046bc3d7310137.out @@ -0,0 +1,4 @@ +[1m[4m tslice [0m[1m[4m [0m[1m[4m v [0m[1m[4m [0m +2011-11-03 00:19:00.000 [7m{"a.fsdn.com":33,"Other":31,"ad.[0m[7mdoubleclick.net":10,"www.goo⋯[0m[7m"\xaf"dia.com"[0m[7m:6,"s0.2m[0m[7mdn.net":[0m[7m5,"googl[0m[7meads.g.[0m[7mdoubl[0m[7mecli[0m[7mck[0m.net":3} +2011-11-03 00:20:00.000 [7m{"www.bro-ids.org":24,"[0m[7mwww.google.com[0m[7m":15,"[0m[7msearc[0m[7mh.twi[0m[7mtter[0m[7m.[0m[7mc[0m[7m⋯[0m"\x8b""\xaf"ds.org":2,"ad.doubleclick.net":1,"cont-sjl-1.pandora.com":1} +[1m2011-11-03 00:21:00.000[0m[1m [0m[1m[7m{[0m[1m[7m"[0m[1m[7mw[0m[1m[7mw[0m[1m[7mw[0m[1m.google.com":2,"ajax.googleapis.com":1,"api.twitter.com":1,"search.twitter.com":1,"www.bro-ids.org":1} [0m diff --git a/test/expected/test_regex101.sh_2158f1f011ba8e1b152396c072790c076fdb8ce8.err b/test/expected/test_regex101.sh_2158f1f011ba8e1b152396c072790c076fdb8ce8.err index bbcd290..e69de29 100644 --- a/test/expected/test_regex101.sh_2158f1f011ba8e1b152396c072790c076fdb8ce8.err +++ b/test/expected/test_regex101.sh_2158f1f011ba8e1b152396c072790c076fdb8ce8.err @@ -1,3 +0,0 @@ -[33m⚠ warning[0m: not deleting regex101 entry “[1mzpEnjV[0m” - [33mreason[0m: delete code is not known for this entry -[36m =[0m [36mnote[0m: formats created by importing a regex101.com entry will not have a delete code diff --git a/test/expected/test_regex101.sh_366730cac50b4a09b7de4b84641791470b1cb9a3.out b/test/expected/test_regex101.sh_366730cac50b4a09b7de4b84641791470b1cb9a3.out index 7f5397d..8035940 100644 --- a/test/expected/test_regex101.sh_366730cac50b4a09b7de4b84641791470b1cb9a3.out +++ b/test/expected/test_regex101.sh_366730cac50b4a09b7de4b84641791470b1cb9a3.out @@ -3,7 +3,7 @@ "unit_test_log": { "regex": { "std": { - "pattern": "\\[(?<timestamp>\\d+\\/\\d+\\/\\d+ \\d+:\\d+:\\d+) (?<jobserver>[\\w.]+) (?<workqueue>[\\w.]+) (?<processid>\\d+)\\] (?<body>.*)$" + "pattern": "(?<timestamp>[A-Za-z]+ [A-Za-z]+ +[0-9]+ [0-9]+:[0-9]+:[0-9]+ [0-9]+) : (?<level>[A-Z][a-z]+): (?<seq>\\([0-9]+\\) )?(?<body>.*)$" } } } diff --git a/test/expected/test_regex101.sh_3d18474a3e472fff6e23e0c41337ec9188fee591.err b/test/expected/test_regex101.sh_3d18474a3e472fff6e23e0c41337ec9188fee591.err index 32c87d4..7450da8 100644 --- a/test/expected/test_regex101.sh_3d18474a3e472fff6e23e0c41337ec9188fee591.err +++ b/test/expected/test_regex101.sh_3d18474a3e472fff6e23e0c41337ec9188fee591.err @@ -1,34 +1,13 @@ -[1m[31m✘ error[0m: invalid value “[1m/unit_test_log/value/jobserver[0m” - [1m[31mreason[0m: no patterns have a capture named “jobserver” -[36m =[0m [36mnote[0m: the following captures are available: - -[36m =[0m [36mhelp[0m: values are populated from captures in patterns, so at least one pattern must have a capture with this value name -[1m[31m✘ error[0m: invalid value “[1m/unit_test_log/value/processid[0m” - [1m[31mreason[0m: no patterns have a capture named “processid” -[36m =[0m [36mnote[0m: the following captures are available: - -[36m =[0m [36mhelp[0m: values are populated from captures in patterns, so at least one pattern must have a capture with this value name -[1m[31m✘ error[0m: invalid value “[1m/unit_test_log/value/timestamp[0m” - [1m[31mreason[0m: no patterns have a capture named “timestamp” -[36m =[0m [36mnote[0m: the following captures are available: - -[36m =[0m [36mhelp[0m: values are populated from captures in patterns, so at least one pattern must have a capture with this value name -[1m[31m✘ error[0m: invalid value “[1m/unit_test_log/value/workqueue[0m” - [1m[31mreason[0m: no patterns have a capture named “workqueue” -[36m =[0m [36mnote[0m: the following captures are available: - -[36m =[0m [36mhelp[0m: values are populated from captures in patterns, so at least one pattern must have a capture with this value name -[1m[31m✘ error[0m: invalid sample log message: "[03/22/2021 02:00:02 job1074.example.com db.db81.example_events 54026] {\"ELAPSED\":\"0.011\",\"LEVEL\":\"info\",\"MESSAGE\":\"finished in 0.011\\n\",\"PREFIX\":\"YFgyWQriCmsAAofJAAAAHg\",\"ROUTINGKEY\":\"EXAMPLE1366.Example.Events._Publish\"}" - [1m[31mreason[0m: sample does not match any patterns -[36m --> [0m[1mregex101-home/.lnav/formats/installed/unit_test_log.json[0m:26 -[36m =[0m [36mnote[0m: the following shows how each pattern matched this sample: - [37m[40m[03/22/2021 02:00:02 job1074.example.com db.db81.example_events 54026] {"ELAPSED":"0.011","LEVEL":"info","MESSAGE":"finished in 0.011\n","PREFIX":"YFgyWQriCmsAAofJAAAAHg","ROUTINGKEY":"EXAMPLE1366.Example.Events._Publish"}[0m -[36m =[0m [36mnote[0m: [1mstd[0m = “” - -[1m[31m✘ error[0m: invalid sample log message: "[03/22/2021 02:00:02 job1074.example.com db.db81.example_events 54026] {\"ELAPSED\":\"0.011\",\"LEVEL\":\"info\",\"MESSAGE\":\"finished in 0.011\\n\",\"PREFIX\":\"YFgyWQriCmsAAofJAAAAHg\",\"ROUTINGKEY\":\"EXAMPLE1366.Example.Events._Publish\"}" - [1m[31mreason[0m: sample does not match any patterns -[36m --> [0m[1mregex101-home/.lnav/formats/installed/unit_test_log.json[0m:30 -[36m =[0m [36mnote[0m: the following shows how each pattern matched this sample: - [37m[40m[03/22/2021 02:00:02 job1074.example.com db.db81.example_events 54026] {"ELAPSED":"0.011","LEVEL":"info","MESSAGE":"finished in 0.011\n","PREFIX":"YFgyWQriCmsAAofJAAAAHg","ROUTINGKEY":"EXAMPLE1366.Example.Events._Publish"}[0m -[36m =[0m [36mnote[0m: [1mstd[0m = “” - +[1m[31m✘ error[0m: invalid pattern: “[1m/unit_test_log/regex/std[0m” + [1m[31mreason[0m: no timestamp capture found in the pattern +[36m =[0m [36mhelp[0m: all log messages need a timestamp +[1m[31m✘ error[0m: invalid value for property “[1m/unit_test_log/timestamp-field[0m” + [1m[31mreason[0m: “timestamp” was not found in the pattern at [1m/unit_test_log/regex/std[0m +[1m[31m✘ error[0m: invalid value for property “[1m/unit_test_log/timestamp-field[0m” + [1m[31mreason[0m: “timestamp” was not found in the pattern at [1m/unit_test_log/regex/std[0m +[1m[31m✘ error[0m: invalid value for property “[1m/unit_test_log/timestamp-field[0m” + [1m[31mreason[0m: “timestamp” was not found in the pattern at [1m/unit_test_log/regex/std[0m +[1m[31m✘ error[0m: invalid value for property “[1m/unit_test_log/timestamp-field[0m” + [1m[31mreason[0m: “timestamp” was not found in the pattern at [1m/unit_test_log/regex/std[0m +[1m[31m✘ error[0m: invalid value for property “[1m/unit_test_log/timestamp-field[0m” + [1m[31mreason[0m: “timestamp” was not found in the pattern at [1m/unit_test_log/regex/std[0m diff --git a/test/expected/test_regex101.sh_7991a5b617867cf37c9f7baa85ffa425f7d455a2.err b/test/expected/test_regex101.sh_7991a5b617867cf37c9f7baa85ffa425f7d455a2.err index 450b99b..ec9b9c5 100644 --- a/test/expected/test_regex101.sh_7991a5b617867cf37c9f7baa85ffa425f7d455a2.err +++ b/test/expected/test_regex101.sh_7991a5b617867cf37c9f7baa85ffa425f7d455a2.err @@ -1,5 +1,5 @@ [1m[31m✘ error[0m: expecting an operation to perform on the [1mstd[0m regex using regex101.com [36m =[0m [36mhelp[0m: the available subcommands are: - • [1m[36mpush[0m: create/update an entry for this regex on regex101.com - • [1m[36mpull[0m: create a patch format file for this regular expression based on the entry in regex101.com - • [1m[36mdelete[0m: delete the entry regex101.com that was created by a push operation + [33m•[0m [1m[36mpush[0m: create/update an entry for this regex on regex101.com + [33m•[0m [1m[36mpull[0m: create a patch format file for this regular expression based on the entry in regex101.com + [33m•[0m [1m[36mdelete[0m: delete the entry regex101.com that was created by a push operation diff --git a/test/expected/test_regex101.sh_8e93a3b6b941847c71409a297779fbb0a6666a51.err b/test/expected/test_regex101.sh_8e93a3b6b941847c71409a297779fbb0a6666a51.err index db47111..e3e6069 100644 --- a/test/expected/test_regex101.sh_8e93a3b6b941847c71409a297779fbb0a6666a51.err +++ b/test/expected/test_regex101.sh_8e93a3b6b941847c71409a297779fbb0a6666a51.err @@ -1,3 +1,3 @@ [1m[31m✘ error[0m: expecting an operation to perform on the [1mstd[0m regular expression [36m =[0m [36mhelp[0m: the available subcommands are: - • [1m[36mregex101[0m: use regex101.com to edit this regular expression + [33m•[0m [1m[36mregex101[0m: use regex101.com to edit this regular expression diff --git a/test/expected/test_regex101.sh_cbd859487e4ea011cd6e0f0f114d70158bfd8b43.out b/test/expected/test_regex101.sh_cbd859487e4ea011cd6e0f0f114d70158bfd8b43.out index c06f523..b4c5d30 100644 --- a/test/expected/test_regex101.sh_cbd859487e4ea011cd6e0f0f114d70158bfd8b43.out +++ b/test/expected/test_regex101.sh_cbd859487e4ea011cd6e0f0f114d70158bfd8b43.out @@ -4,30 +4,35 @@ "description": "Format file generated from regex101 entry -- https://regex101.com/r/zpEnjV/2", "regex": { "std": { - "pattern": "\\[(?<timestamp>\\d+\\/\\d+\\/\\d+ \\d+:\\d+:\\d+) (?<jobserver>[\\w.]+) (?<workqueue>[\\w.]+) (?<processid>\\d+)\\] (?<body>.*)$" + "pattern": "(?<timestamp>[A-Za-z]+ [A-Za-z]+ +[0-9]+ [0-9]+:[0-9]+:[0-9]+ [0-9]+) : (?<level>[A-Z][a-z]+): (?<seq>\\([0-9]+\\) )?(?<body>.*)$" } }, "value": { - "jobserver": { + "level": { "kind": "string" }, - "processid": { + "seq": { "kind": "string" }, "timestamp": { "kind": "string" - }, - "workqueue": { - "kind": "string" } }, "sample": [ { - "line": "[03/22/2021 02:00:02 job1074.example.com db.db81.example_events 54026] {\"ELAPSED\":\"0.011\",\"LEVEL\":\"info\",\"MESSAGE\":\"finished in 0.011\\n\",\"PREFIX\":\"YFgyWQriCmsAAofJAAAAHg\",\"ROUTINGKEY\":\"EXAMPLE1366.Example.Events._Publish\"}" + "line": "Fri Jul 15 23:12:58 2016 : Info: Loaded virtual server <default>" + }, + { + "line": "Fri Jul 15 23:12:58 2016 : Warning: Ignoring \"sql\" (see raddb/mods-available/README.rst)" + }, + { + "line": "Wed Oct 18 22:17:43 2023 : Info: (102211) radutmp: NAS wifi-router rebooted (Accounting-Off packet seen)" + }, + { + "line": "Fri Oct 20 18:50:05 2023 : Auth: (105290) Login OK: [iphonese3] (from client wifi-router port 0 via TLS tunnel)" }, { - "description": "sample 1", - "line": "[03/22/2021 02:00:02 job1074.example.com db.db81.example_events 54026] {\"ELAPSED\":\"0.011\",\"LEVEL\":\"info\",\"MESSAGE\":\"finished in 0.011\\n\",\"PREFIX\":\"YFgyWQriCmsAAofJAAAAHg\",\"ROUTINGKEY\":\"EXAMPLE1366.Example.Events._Publish\"}" + "line": "Fri Oct 20 18:50:05 2023 : Auth: (105291) Login OK: [iphonese3] (from client wifi-router port 197 cli 22-2E-28-D6-F5-CC)" } ] } diff --git a/test/expected/test_regex101.sh_d84597760285c3964b258726341e018f6cd49954.err b/test/expected/test_regex101.sh_d84597760285c3964b258726341e018f6cd49954.err index 85a97ba..ea8c31d 100644 --- a/test/expected/test_regex101.sh_d84597760285c3964b258726341e018f6cd49954.err +++ b/test/expected/test_regex101.sh_d84597760285c3964b258726341e018f6cd49954.err @@ -2,6 +2,6 @@ [36m =[0m [36mnote[0m: this regex is currently associated with the following regex101.com entry: [1mhttps://regex101.com/r/zpEnjV[0m [36m =[0m [36mhelp[0m: the available subcommands are: - • [1m[36mpush[0m: create/update an entry for this regex on regex101.com - • [1m[36mpull[0m: create a patch format file for this regular expression based on the entry in regex101.com - • [1m[36mdelete[0m: delete the entry regex101.com that was created by a push operation + [33m•[0m [1m[36mpush[0m: create/update an entry for this regex on regex101.com + [33m•[0m [1m[36mpull[0m: create a patch format file for this regular expression based on the entry in regex101.com + [33m•[0m [1m[36mdelete[0m: delete the entry regex101.com that was created by a push operation diff --git a/test/expected/test_sessions.sh_33ab03afda2c9331a289fcbd1abdbc1c37b2e87b.err b/test/expected/test_sessions.sh_33ab03afda2c9331a289fcbd1abdbc1c37b2e87b.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sessions.sh_33ab03afda2c9331a289fcbd1abdbc1c37b2e87b.err diff --git a/test/expected/test_sessions.sh_33ab03afda2c9331a289fcbd1abdbc1c37b2e87b.out b/test/expected/test_sessions.sh_33ab03afda2c9331a289fcbd1abdbc1c37b2e87b.out new file mode 100644 index 0000000..2a19a15 --- /dev/null +++ b/test/expected/test_sessions.sh_33ab03afda2c9331a289fcbd1abdbc1c37b2e87b.out @@ -0,0 +1,11 @@ +2011-11-03 00:20:39.348046 ⋮ 192.168.2.76 52099 192.150.187.43 80 2 GET www.bro-ids.org /frames/header.html http://git.bro-ids.org/ 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 3516 200 OK - - (empty) - - - - - - Fzea5XNhn9eNRMvx7 - text/html +2011-11-03 00:20:39.448670 ⋮ 192.168.2.76 52109 192.150.187.43 80 1 GET www.bro-ids.org /frames/footer.html http://git.bro-ids.org/ 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 6695 200 OK - - (empty) - - - - - - FkCp6k4tqksK3tiSy7 - text/html +2011-11-03 00:20:39.463465 ⋮ 192.168.2.76 52099 192.150.187.43 80 3 GET www.bro-ids.org /images/logo-bro-small.png http://www.bro-ids.org/frames/header.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 6075 200 OK - - (empty) - - - - - - Fw6FlF4WtotJFNXmHb - image/png +2011-11-03 00:20:39.786857 ⋮ 192.168.2.76 52110 199.59.148.201 80 1 GET search.twitter.com /search.json?&q=#BroIDS&rpp=2&callback=jsonp1320279639636 http://www.bro-ids.org/frames/footer.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 1543 200 OK - - (empty) - - - - - - Feut0t346XEHsQ0OC7 - text/plain +2011-11-03 00:21:12.372857 ⋮ 192.168.2.76 52111 192.150.187.43 80 1 GET www.bro-ids.org /research/index.html http://www.bro-ids.org/frames/header.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 47728 200 OK - - (empty) - - - - - - FOze0l2aT79uPyMiv7 - text/html +2011-11-03 00:21:13.121725 ⋮ 192.168.2.76 52087 209.85.145.95 80 7 GET ajax.googleapis.com /ajax/services/feed/load?v=1.0&callback=jsonp1320279672539&q=http://blog.bro-ids.org/feeds/posts/default&num=5 http://www.bro-ids.org/research/index.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 6584 200 OK - - (empty) - - - - - - FXEXQEMH8DrEuAdg8 - text/plain +2011-11-03 00:21:13.123842 ⋮ 192.168.2.76 52089 74.125.225.83 80 4 GET www.google.com /uds/css/clear.gif http://www.google.com/uds/api/search/1.0/473bb688d0c0dd605119ad983f5a4386/default+en.css 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 0 304 Not Modified - - (empty) - - - - - - - - - +2011-11-03 00:21:13.123121 ⋮ 192.168.2.76 52084 74.125.225.83 80 9 GET www.google.com /uds/css/small-logo.png http://www.bro-ids.org/research/index.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 0 304 Not Modified - - (empty) - - - - - - - - - +2011-11-03 00:21:13.198815 ⋮ 192.168.2.76 52112 199.59.148.201 80 1 GET search.twitter.com /search.json?&q=#BroIDS&rpp=2&callback=jsonp1320279672537 http://www.bro-ids.org/research/index.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 1543 200 OK - - (empty) - - - - - - Fzjgwn8xXem3Esvk - text/plain +#close 2017-04-16-21-36-10 +2011-11-03 00:21:13.204466 ⋮ 192.168.2.76 52113 199.59.148.20 80 1 GET api.twitter.com /1/statuses/user_timeline.json?screen_name=Bro_IDS&count=2&include_rts=1&callback=jsonp1320279672538 http://www.bro-ids.org/research/index.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 6095 200 OK - - (empty) - - - - - - FAVIuu2XZQyVznfnq8 - text/plain diff --git a/test/expected/test_sessions.sh_639b83ce8f67975dfdc7086946ec287b43b6fa8c.err b/test/expected/test_sessions.sh_639b83ce8f67975dfdc7086946ec287b43b6fa8c.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sessions.sh_639b83ce8f67975dfdc7086946ec287b43b6fa8c.err diff --git a/test/expected/test_sessions.sh_639b83ce8f67975dfdc7086946ec287b43b6fa8c.out b/test/expected/test_sessions.sh_639b83ce8f67975dfdc7086946ec287b43b6fa8c.out new file mode 100644 index 0000000..4023598 --- /dev/null +++ b/test/expected/test_sessions.sh_639b83ce8f67975dfdc7086946ec287b43b6fa8c.out @@ -0,0 +1,89 @@ +[ + { + "top_meta": { + "time": "2009-07-20 22:59:29.000", + "file": "{test_dir}/logfile_access_log.0", + "anchor": "#middle", + "breadcrumbs": [ + { + "display_value": "⊑ middle", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "middle" + } + ] + }, + { + "display_value": "2009-07-20T22:59:29.000", + "search_placeholder": "(Enter an absolute or relative time)", + "possibilities": [ + { + "display_value": "-1 day" + }, + { + "display_value": "-1h" + }, + { + "display_value": "-30m" + }, + { + "display_value": "-15m" + }, + { + "display_value": "-5m" + }, + { + "display_value": "-1m" + }, + { + "display_value": "+1m" + }, + { + "display_value": "+5m" + }, + { + "display_value": "+15m" + }, + { + "display_value": "+30m" + }, + { + "display_value": "+1h" + }, + { + "display_value": "+1 day" + } + ] + }, + { + "display_value": "access_log", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "access_log" + } + ] + }, + { + "display_value": "logfile_access_log.0[2]", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "logfile_access_log.0" + } + ] + }, + { + "display_value": "192.168.202.254", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "192.168.202.254" + } + ] + } + ] + } + } +] diff --git a/test/expected/test_sessions.sh_6d87ff483d5785c58fb271a405ff1c35e4f83cd9.out b/test/expected/test_sessions.sh_6d87ff483d5785c58fb271a405ff1c35e4f83cd9.out index eb9e677..8b72915 100644 --- a/test/expected/test_sessions.sh_6d87ff483d5785c58fb271a405ff1c35e4f83cd9.out +++ b/test/expected/test_sessions.sh_6d87ff483d5785c58fb271a405ff1c35e4f83cd9.out @@ -3,8 +3,8 @@ # '|/path/to/this/file' in lnav to execute this file and # restore the state of the session. -;SELECT raise_error('This session export was made with a newer version of lnav, please upgrade to ' || '0.11.2' || ' or later') - WHERE lnav_version() < '0.11.2' COLLATE naturalcase +;SELECT raise_error('This session export was made with a newer version of lnav, please upgrade to ' || '0.12.2' || ' or later') + WHERE lnav_version() < '0.12.2' COLLATE naturalcase # The files loaded into the session were: @@ -21,7 +21,7 @@ # comments, and tags that were added in the session. ;SELECT total_changes() AS before_mark_changes -;UPDATE all_logs SET log_mark = 1, log_comment = NULL, log_tags = NULL WHERE log_time_msecs = 1248130769000 AND log_format = 'access_log' AND log_line_hash = 'v1:b05c1bdfe75cde41e151c89087e31951' +;UPDATE all_logs SET log_mark = 1, log_comment = NULL, log_tags = NULL, log_annotations = NULL WHERE log_time_msecs = 1248130769000 AND log_format = 'access_log' AND log_line_hash = 'v1:b05c1bdfe75cde41e151c89087e31951' ;SELECT 1 - (total_changes() - $before_mark_changes) AS failed_mark_changes ;SELECT echoln(printf('%sERROR%s: failed to restore %d bookmarks', diff --git a/test/expected/test_sessions.sh_8732dad5481be991ca7f291d9c5451c7b016cea7.out b/test/expected/test_sessions.sh_8732dad5481be991ca7f291d9c5451c7b016cea7.out deleted file mode 100644 index a1e2e6f..0000000 --- a/test/expected/test_sessions.sh_8732dad5481be991ca7f291d9c5451c7b016cea7.out +++ /dev/null @@ -1,33 +0,0 @@ -#!lnav -Nf -# This file is an export of an lnav session. You can type -# '|/path/to/this/file' in lnav to execute this file and -# restore the state of the session. - -;SELECT raise_error('This session export was made with a newer version of lnav, please upgrade to ' || '0.11.0' || ' or later') - WHERE lnav_version() < '0.11.0' COLLATE naturalcase - -# The files loaded into the session were: - - -;INSERT OR IGNORE INTO environ (name, value) VALUES ('LOG_DIR_0', '{top_srcdir_parent}') -:open $LOG_DIR_0/lnav/test/logfile_access_log.0 - -:rebuild - - -# The following SQL statements will restore the bookmarks, -# comments, and tags that were added in the session. - -;SELECT total_changes() AS before_mark_changes -;UPDATE all_logs SET log_mark = 1, log_comment = NULL, log_tags = NULL WHERE log_time_msecs = 1248130769000 AND log_format = 'access_log' AND log_line_hash = 'v1:b05c1bdfe75cde41e151c89087e31951' - -;SELECT 1 - (total_changes() - $before_mark_changes) AS failed_mark_changes -;SELECT echoln(printf('%sERROR%s: failed to restore %d bookmarks', - $ansi_red, $ansi_norm, $failed_mark_changes)) - WHERE $failed_mark_changes != 0 - - -# The following commands will restore the state of the LOG view. - -:switch-to-view log -:goto 1 diff --git a/test/expected/test_sessions.sh_9978aaa475513f9981840e612f853a7707ffcf90.out b/test/expected/test_sessions.sh_9978aaa475513f9981840e612f853a7707ffcf90.out index 3c84ede..20f826b 100644 --- a/test/expected/test_sessions.sh_9978aaa475513f9981840e612f853a7707ffcf90.out +++ b/test/expected/test_sessions.sh_9978aaa475513f9981840e612f853a7707ffcf90.out @@ -9,3 +9,4 @@ db schema pretty spectro +gantt diff --git a/test/expected/test_sessions.sh_ba1ded92531350668301431db64df2d2f4a2e9ee.err b/test/expected/test_sessions.sh_ba1ded92531350668301431db64df2d2f4a2e9ee.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sessions.sh_ba1ded92531350668301431db64df2d2f4a2e9ee.err diff --git a/test/expected/test_sessions.sh_ba1ded92531350668301431db64df2d2f4a2e9ee.out b/test/expected/test_sessions.sh_ba1ded92531350668301431db64df2d2f4a2e9ee.out new file mode 100644 index 0000000..0e301c3 --- /dev/null +++ b/test/expected/test_sessions.sh_ba1ded92531350668301431db64df2d2f4a2e9ee.out @@ -0,0 +1,5 @@ +192.168.202.254 - - [20/Jul/2009:22:59:26 +0000] "GET /vmw/cgi/tramp HTTP/1.0" 200 134 "-" "gPXE/0.9.7" + ├ org.lnav.test: + ╰ Hello, World! +192.168.202.254 - - [20/Jul/2009:22:59:29 +0000] "GET /vmw/vSphere/default/vmkboot.gz HTTP/1.0" 404 46210 "-" "gPXE/0.9.7" +192.168.202.254 - - [20/Jul/2009:22:59:29 +0000] "GET /vmw/vSphere/default/vmkernel.gz HTTP/1.0" 200 78929 "-" "gPXE/0.9.7" diff --git a/test/expected/test_sessions.sh_e57697be4d81ac8e5b2b2fa84f919b2d494978f3.err b/test/expected/test_sessions.sh_e57697be4d81ac8e5b2b2fa84f919b2d494978f3.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sessions.sh_e57697be4d81ac8e5b2b2fa84f919b2d494978f3.err diff --git a/test/expected/test_sessions.sh_e57697be4d81ac8e5b2b2fa84f919b2d494978f3.out b/test/expected/test_sessions.sh_e57697be4d81ac8e5b2b2fa84f919b2d494978f3.out new file mode 100644 index 0000000..2a19a15 --- /dev/null +++ b/test/expected/test_sessions.sh_e57697be4d81ac8e5b2b2fa84f919b2d494978f3.out @@ -0,0 +1,11 @@ +2011-11-03 00:20:39.348046 ⋮ 192.168.2.76 52099 192.150.187.43 80 2 GET www.bro-ids.org /frames/header.html http://git.bro-ids.org/ 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 3516 200 OK - - (empty) - - - - - - Fzea5XNhn9eNRMvx7 - text/html +2011-11-03 00:20:39.448670 ⋮ 192.168.2.76 52109 192.150.187.43 80 1 GET www.bro-ids.org /frames/footer.html http://git.bro-ids.org/ 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 6695 200 OK - - (empty) - - - - - - FkCp6k4tqksK3tiSy7 - text/html +2011-11-03 00:20:39.463465 ⋮ 192.168.2.76 52099 192.150.187.43 80 3 GET www.bro-ids.org /images/logo-bro-small.png http://www.bro-ids.org/frames/header.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 6075 200 OK - - (empty) - - - - - - Fw6FlF4WtotJFNXmHb - image/png +2011-11-03 00:20:39.786857 ⋮ 192.168.2.76 52110 199.59.148.201 80 1 GET search.twitter.com /search.json?&q=#BroIDS&rpp=2&callback=jsonp1320279639636 http://www.bro-ids.org/frames/footer.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 1543 200 OK - - (empty) - - - - - - Feut0t346XEHsQ0OC7 - text/plain +2011-11-03 00:21:12.372857 ⋮ 192.168.2.76 52111 192.150.187.43 80 1 GET www.bro-ids.org /research/index.html http://www.bro-ids.org/frames/header.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 47728 200 OK - - (empty) - - - - - - FOze0l2aT79uPyMiv7 - text/html +2011-11-03 00:21:13.121725 ⋮ 192.168.2.76 52087 209.85.145.95 80 7 GET ajax.googleapis.com /ajax/services/feed/load?v=1.0&callback=jsonp1320279672539&q=http://blog.bro-ids.org/feeds/posts/default&num=5 http://www.bro-ids.org/research/index.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 6584 200 OK - - (empty) - - - - - - FXEXQEMH8DrEuAdg8 - text/plain +2011-11-03 00:21:13.123842 ⋮ 192.168.2.76 52089 74.125.225.83 80 4 GET www.google.com /uds/css/clear.gif http://www.google.com/uds/api/search/1.0/473bb688d0c0dd605119ad983f5a4386/default+en.css 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 0 304 Not Modified - - (empty) - - - - - - - - - +2011-11-03 00:21:13.123121 ⋮ 192.168.2.76 52084 74.125.225.83 80 9 GET www.google.com /uds/css/small-logo.png http://www.bro-ids.org/research/index.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 0 304 Not Modified - - (empty) - - - - - - - - - +2011-11-03 00:21:13.198815 ⋮ 192.168.2.76 52112 199.59.148.201 80 1 GET search.twitter.com /search.json?&q=#BroIDS&rpp=2&callback=jsonp1320279672537 http://www.bro-ids.org/research/index.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 1543 200 OK - - (empty) - - - - - - Fzjgwn8xXem3Esvk - text/plain +#close 2017-04-16-21-36-10 +2011-11-03 00:21:13.204466 ⋮ 192.168.2.76 52113 199.59.148.20 80 1 GET api.twitter.com /1/statuses/user_timeline.json?screen_name=Bro_IDS&count=2&include_rts=1&callback=jsonp1320279672538 http://www.bro-ids.org/research/index.html 1.1 Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1 0 6095 200 OK - - (empty) - - - - - - FAVIuu2XZQyVznfnq8 - text/plain diff --git a/test/expected/test_sessions.sh_e988439404f2e97604641c8d087855f3efe052e4.err b/test/expected/test_sessions.sh_e988439404f2e97604641c8d087855f3efe052e4.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sessions.sh_e988439404f2e97604641c8d087855f3efe052e4.err diff --git a/test/expected/test_sessions.sh_e39648f425c3f291c9d1c0d14595a019abd0cb48.out b/test/expected/test_sessions.sh_e988439404f2e97604641c8d087855f3efe052e4.out index 0473e9d..05b7505 100644 --- a/test/expected/test_sessions.sh_e39648f425c3f291c9d1c0d14595a019abd0cb48.out +++ b/test/expected/test_sessions.sh_e988439404f2e97604641c8d087855f3efe052e4.out @@ -3,12 +3,13 @@ # '|/path/to/this/file' in lnav to execute this file and # restore the state of the session. -;SELECT raise_error('This session export was made with a newer version of lnav, please upgrade to ' || '0.11.0' || ' or later') - WHERE lnav_version() < '0.11.0' COLLATE naturalcase +;SELECT raise_error('This session export was made with a newer version of lnav, please upgrade to ' || '0.12.2' || ' or later') + WHERE lnav_version() < '0.12.2' COLLATE naturalcase # The files loaded into the session were: +# Set this environment variable to override this value or edit this script. ;INSERT OR IGNORE INTO environ (name, value) VALUES ('LOG_DIR_0', '{test_dir}') :open $LOG_DIR_0/support-dump/logfile_access_log.0 @@ -19,7 +20,7 @@ # comments, and tags that were added in the session. ;SELECT total_changes() AS before_mark_changes -;UPDATE all_logs SET log_mark = 1, log_comment = NULL, log_tags = NULL WHERE log_time_msecs = 1248130769000 AND log_format = 'access_log' AND log_line_hash = 'v1:b05c1bdfe75cde41e151c89087e31951' +;UPDATE all_logs SET log_mark = 0, log_comment = NULL, log_tags = NULL, log_annotations = '{"org.lnav.test":"Hello, <span style=\"color: #f00\">World</span>!\n"}' WHERE log_time_msecs = 1248130766000 AND log_format = 'access_log' AND log_line_hash = 'v1:3f7e0f10f2473f83b2b4eacccfc9b4e2' ;SELECT 1 - (total_changes() - $before_mark_changes) AS failed_mark_changes ;SELECT echoln(printf('%sERROR%s: failed to restore %d bookmarks', @@ -27,7 +28,13 @@ WHERE $failed_mark_changes != 0 +# The following SQL statements will restore the filters that +# were added in the session. + +;REPLACE INTO lnav_view_filters (view_name, enabled, type, language, pattern) VALUES ('log', 0, 'in', 'regex', 'credential status') + + # The following commands will restore the state of the LOG view. :switch-to-view log -:goto 1 +:goto 0 diff --git a/test/expected/test_shlexer.sh_14dd967cb2af90899c9e5e45d00b676b5a3163aa.out b/test/expected/test_shlexer.sh_14dd967cb2af90899c9e5e45d00b676b5a3163aa.out index fd072bc..0dd4080 100644 --- a/test/expected/test_shlexer.sh_14dd967cb2af90899c9e5e45d00b676b5a3163aa.out +++ b/test/expected/test_shlexer.sh_14dd967cb2af90899c9e5e45d00b676b5a3163aa.out @@ -1,7 +1,8 @@ ~ foo til ^ wsp ^ +eof ^ eval -- ../test foo split: - 0 -- ../test - 1 -- foo + 0 ^ -- ../test + 1 ^-^ -- foo diff --git a/test/expected/test_shlexer.sh_2781f5dd570580cbe746ad91b58a28b8371283b3.out b/test/expected/test_shlexer.sh_2781f5dd570580cbe746ad91b58a28b8371283b3.out index b7ba9e8..2081fa3 100644 --- a/test/expected/test_shlexer.sh_2781f5dd570580cbe746ad91b58a28b8371283b3.out +++ b/test/expected/test_shlexer.sh_2781f5dd570580cbe746ad91b58a28b8371283b3.out @@ -1,7 +1,8 @@ ~nonexistent/bar baz til ^----------^ wsp ^ +eof ^ eval -- ~nonexistent/bar baz split: - 0 -- ~nonexistent/bar - 1 -- baz + 0 ^--------------^ -- ~nonexistent/bar + 1 ^-^ -- baz diff --git a/test/expected/test_shlexer.sh_2af44d06fc137a77bc230be86376ccad23a2806b.out b/test/expected/test_shlexer.sh_2af44d06fc137a77bc230be86376ccad23a2806b.out index 85cca78..8d6bcc0 100644 --- a/test/expected/test_shlexer.sh_2af44d06fc137a77bc230be86376ccad23a2806b.out +++ b/test/expected/test_shlexer.sh_2af44d06fc137a77bc230be86376ccad23a2806b.out @@ -1,2 +1,2 @@ \ -err ^ +err ^ -- invalid escape diff --git a/test/expected/test_shlexer.sh_6858e530a8ecb77cbaec1a7507768dd5a1942ac9.out b/test/expected/test_shlexer.sh_6858e530a8ecb77cbaec1a7507768dd5a1942ac9.out index f677b17..6869e6d 100644 --- a/test/expected/test_shlexer.sh_6858e530a8ecb77cbaec1a7507768dd5a1942ac9.out +++ b/test/expected/test_shlexer.sh_6858e530a8ecb77cbaec1a7507768dd5a1942ac9.out @@ -1,5 +1,6 @@ ${FOO} qrf ^----^ +eof ^ eval -- bar split: - 0 -- bar + 0 ^----^ -- bar diff --git a/test/expected/test_shlexer.sh_7f31e16ea2469da7a4328c93c7bcc8e109f84d2f.out b/test/expected/test_shlexer.sh_7f31e16ea2469da7a4328c93c7bcc8e109f84d2f.out index 630eb1c..46009ec 100644 --- a/test/expected/test_shlexer.sh_7f31e16ea2469da7a4328c93c7bcc8e109f84d2f.out +++ b/test/expected/test_shlexer.sh_7f31e16ea2469da7a4328c93c7bcc8e109f84d2f.out @@ -2,6 +2,7 @@ dst ^ qrf ^----^ den ^ +eof ^ eval -- "abc xyz 123" split: - 0 -- abc xyz 123 + 0 ^--------------^ -- abc xyz 123 diff --git a/test/expected/test_shlexer.sh_8aeebcdef56edd783579eaaddaff7c5cc127bb86.out b/test/expected/test_shlexer.sh_8aeebcdef56edd783579eaaddaff7c5cc127bb86.out index 759e75b..5eda1e5 100644 --- a/test/expected/test_shlexer.sh_8aeebcdef56edd783579eaaddaff7c5cc127bb86.out +++ b/test/expected/test_shlexer.sh_8aeebcdef56edd783579eaaddaff7c5cc127bb86.out @@ -1,6 +1,7 @@ 'abc $DEF 123' sst ^ sen ^ +eof ^ eval -- 'abc $DEF 123' split: - 0 -- abc $DEF 123 + 0 ^------------^ -- abc $DEF 123 diff --git a/test/expected/test_shlexer.sh_8e9addb0e5b6f4254d81dd89ecf12783109644bb.out b/test/expected/test_shlexer.sh_8e9addb0e5b6f4254d81dd89ecf12783109644bb.out index 2cbee1a..6ea7ec2 100644 --- a/test/expected/test_shlexer.sh_8e9addb0e5b6f4254d81dd89ecf12783109644bb.out +++ b/test/expected/test_shlexer.sh_8e9addb0e5b6f4254d81dd89ecf12783109644bb.out @@ -2,6 +2,7 @@ dst ^ ref ^--^ den ^ +eof ^ eval -- "abc xyz 123" split: - 0 -- abc xyz 123 + 0 ^------------^ -- abc xyz 123 diff --git a/test/expected/test_shlexer.sh_90961e6728e96d0a44535a6c9907cc990c10316c.out b/test/expected/test_shlexer.sh_90961e6728e96d0a44535a6c9907cc990c10316c.out index 9a2b2a7..1fc686b 100644 --- a/test/expected/test_shlexer.sh_90961e6728e96d0a44535a6c9907cc990c10316c.out +++ b/test/expected/test_shlexer.sh_90961e6728e96d0a44535a6c9907cc990c10316c.out @@ -1,6 +1,7 @@ "def" dst ^ den ^ +eof ^ eval -- "def" split: - 0 -- def + 0 ^---^ -- def diff --git a/test/expected/test_shlexer.sh_95c4e861804a5434900fdb4d67b149d1baa2edf4.out b/test/expected/test_shlexer.sh_95c4e861804a5434900fdb4d67b149d1baa2edf4.out index 30a7791..465073b 100644 --- a/test/expected/test_shlexer.sh_95c4e861804a5434900fdb4d67b149d1baa2edf4.out +++ b/test/expected/test_shlexer.sh_95c4e861804a5434900fdb4d67b149d1baa2edf4.out @@ -1,5 +1,6 @@ $FOO ref ^--^ +eof ^ eval -- bar split: - 0 -- bar + 0 ^--^ -- bar diff --git a/test/expected/test_shlexer.sh_d7fe5f6b8fc9ba00539fad0fa0bfb08319d8b04b.out b/test/expected/test_shlexer.sh_d7fe5f6b8fc9ba00539fad0fa0bfb08319d8b04b.out index a2ae7ff..8feba4e 100644 --- a/test/expected/test_shlexer.sh_d7fe5f6b8fc9ba00539fad0fa0bfb08319d8b04b.out +++ b/test/expected/test_shlexer.sh_d7fe5f6b8fc9ba00539fad0fa0bfb08319d8b04b.out @@ -1,6 +1,7 @@ 'abc' sst ^ sen ^ +eof ^ eval -- 'abc' split: - 0 -- abc + 0 ^---^ -- abc diff --git a/test/expected/test_shlexer.sh_d9d46422a913e3a06ddbd262933ef5352c30e68f.out b/test/expected/test_shlexer.sh_d9d46422a913e3a06ddbd262933ef5352c30e68f.out index def9d5c..5f35534 100644 --- a/test/expected/test_shlexer.sh_d9d46422a913e3a06ddbd262933ef5352c30e68f.out +++ b/test/expected/test_shlexer.sh_d9d46422a913e3a06ddbd262933ef5352c30e68f.out @@ -2,8 +2,9 @@ wsp ^ ref ^--^ wsp ^^ +eof ^ eval -- abc xyz 123 split: - 0 -- abc - 1 -- xyz - 2 -- 123 + 0 ^-^ -- abc + 1 ^--^ -- xyz + 2 ^-^ -- 123 diff --git a/test/expected/test_shlexer.sh_e0599f0b53d1bd27af767113853f8e84291f137d.out b/test/expected/test_shlexer.sh_e0599f0b53d1bd27af767113853f8e84291f137d.out index 9b84999..eece1b6 100644 --- a/test/expected/test_shlexer.sh_e0599f0b53d1bd27af767113853f8e84291f137d.out +++ b/test/expected/test_shlexer.sh_e0599f0b53d1bd27af767113853f8e84291f137d.out @@ -1,6 +1,7 @@ '"' sst ^ sen ^ +eof ^ eval -- '"' split: - 0 -- " + 0 ^-^ -- " diff --git a/test/expected/test_shlexer.sh_e8fa2239ab17e7563d0c524f5400a79d6ff8bfda.out b/test/expected/test_shlexer.sh_e8fa2239ab17e7563d0c524f5400a79d6ff8bfda.out index a668d4d..41a0f64 100644 --- a/test/expected/test_shlexer.sh_e8fa2239ab17e7563d0c524f5400a79d6ff8bfda.out +++ b/test/expected/test_shlexer.sh_e8fa2239ab17e7563d0c524f5400a79d6ff8bfda.out @@ -1,6 +1,7 @@ "'" dst ^ den ^ +eof ^ eval -- "'" split: - 0 -- ' + 0 ^-^ -- ' diff --git a/test/expected/test_shlexer.sh_e99fe1cde36b85ebbab86ca820f55ec861cdc20b.err b/test/expected/test_shlexer.sh_e99fe1cde36b85ebbab86ca820f55ec861cdc20b.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_shlexer.sh_e99fe1cde36b85ebbab86ca820f55ec861cdc20b.err diff --git a/test/expected/test_shlexer.sh_e99fe1cde36b85ebbab86ca820f55ec861cdc20b.out b/test/expected/test_shlexer.sh_e99fe1cde36b85ebbab86ca820f55ec861cdc20b.out new file mode 100644 index 0000000..9a7083d --- /dev/null +++ b/test/expected/test_shlexer.sh_e99fe1cde36b85ebbab86ca820f55ec861cdc20b.out @@ -0,0 +1,6 @@ + abc +wsp ^ +eof ^ +eval -- abc +split: + 0 ^-^ -- abc diff --git a/test/expected/test_sql.sh_09416e332d9b2f76743836b72e71b6e4492e594e.err b/test/expected/test_sql.sh_09416e332d9b2f76743836b72e71b6e4492e594e.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_09416e332d9b2f76743836b72e71b6e4492e594e.err diff --git a/test/expected/test_sql.sh_09416e332d9b2f76743836b72e71b6e4492e594e.out b/test/expected/test_sql.sh_09416e332d9b2f76743836b72e71b6e4492e594e.out new file mode 100644 index 0000000..4b7bf9a --- /dev/null +++ b/test/expected/test_sql.sh_09416e332d9b2f76743836b72e71b6e4492e594e.out @@ -0,0 +1,3 @@ +group_concat(cs_uri_stem),sc_status +"/vmw/cgi/tramp,/vmw/vSphere/default/vmkernel.gz",200 +/vmw/vSphere/default/vmkboot.gz,404 diff --git a/test/expected/test_sql.sh_0a5d13b62da4cb66a59a51b0240b5fe0b6036b7e.out b/test/expected/test_sql.sh_0a5d13b62da4cb66a59a51b0240b5fe0b6036b7e.out index 386f1e3..332a12e 100644 --- a/test/expected/test_sql.sh_0a5d13b62da4cb66a59a51b0240b5fe0b6036b7e.out +++ b/test/expected/test_sql.sh_0a5d13b62da4cb66a59a51b0240b5fe0b6036b7e.out @@ -1,2 +1,2 @@ -[1m[4m lnav_top_file() [0m +[1m[4m lnav_top_file() [0m[1m[4m [0m {test_dir}/logfile_access_log.0 diff --git a/test/expected/test_sql.sh_13429aed81d7edfd47b57e9cdb8a25c43aff35c4.out b/test/expected/test_sql.sh_13429aed81d7edfd47b57e9cdb8a25c43aff35c4.out index 4acb940..a8b3bc8 100644 --- a/test/expected/test_sql.sh_13429aed81d7edfd47b57e9cdb8a25c43aff35c4.out +++ b/test/expected/test_sql.sh_13429aed81d7edfd47b57e9cdb8a25c43aff35c4.out @@ -1,2 +1,2 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4m c_ip [0m[1m[4m[7mcs_bytes [0m[1m[4mcs_method [0m[1m[4mcs_uri_query [0m[1m[4m cs_uri_stem [0m[1m[4mcs_username [0m[1m[4m[7mcs_vars [0m[1m[4mcs_version [0m[1m[4ms_app [0m[1m[4ms_core [0m[1m[4ms_pid [0m[1m[4ms_req [0m[1m[4m[7ms_runtime [0m[1m[4m[7ms_switches [0m[1m[4ms_worker_reqs [0m[1m[4m[7msc_bytes [0m[1m[4m[7msc_header_bytes [0m[1m[4m[7msc_headers [0m[1m[4msc_status [0m -[1m[7m 0[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2016-03-13 22:49:12.000[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m127.0.0.1[0m[1m[7m [0m[1m[7m 696[0m[1m[7m [0m[1m[7mPOST [0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m/update_metrics[0m[1m[7m [0m[1m[7m [0m[1m[7m [0m[1m[7m [0m[1m[7m 38[0m[1m[7m [0m[1m[7mH[0m[1m[7mTTP/1.1 [0m[1m[7m [0m[1m[7m0 [0m[1m[7m [0m[1m[7m [0m[1m[7m3 [0m[1m[7m [0m[1m[7m88185[0m[1m[7m [0m[1m[7m 1[0m[1m[7m [0m[1m[7m 0.129[0m[1m[7m [0m[1m[7m 1[0m[1m[7m [0m[1m[7m 1[0m[1m[7m [0m[1m[7m 47[0m[1m[7m [0m[1m[7m 378[0m[1m[7m [0m[1m[7m 9[0m[1m[7m [0m[1m[7m [0m[1m[7m [0m[1m 200 [0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4m c_ip [0m[1m[4m [0m[1m[4m[7m cs_bytes [0m[1m[4m [0m[1m[4mcs_method[0m[1m[4m [0m[1m[4mcs_uri_query[0m[1m[4m [0m[1m[4m cs_uri_stem [0m[1m[4m [0m[1m[4mcs_username[0m[1m[4m [0m[1m[4m[7m cs_vars [0m[1m[4m [0m[1m[4mcs_version[0m[1m[4m [0m[1m[4ms_app[0m[1m[4m [0m[1m[4ms_core[0m[1m[4m [0m[1m[4ms_pid[0m[1m[4m [0m[1m[4ms_req[0m[1m[4m [0m[1m[4m[7ms_runtime [0m[1m[4m [0m[1m[4m[7ms_switches[0m[1m[4m [0m[1m[4ms_worker_reqs[0m[1m[4m [0m[1m[4m[7m sc_bytes [0m[1m[4m [0m[1m[4m[7msc_header_bytes[0m[1m[4m [0m[1m[4m[7msc_headers[0m[1m[4m [0m[1m[4msc_status[0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m + 0 2016-03-13 22:49:12.000 info 127.0.0.1 [1m[7m 696[0m POST <NULL> /update_metrics [1m[7m 38[0m HTTP/1.1 0 3 88185 1 [1m[7m 0.129[0m [1m[7m 1[0m 1 [1m[7m 47[0m [1m[7m 378[0m [1m[7m 9[0m 200 <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> diff --git a/test/expected/test_sql.sh_19c92996bcc884bfdb70e3d24606cf5070556a74.err b/test/expected/test_sql.sh_19c92996bcc884bfdb70e3d24606cf5070556a74.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_19c92996bcc884bfdb70e3d24606cf5070556a74.err diff --git a/test/expected/test_sql.sh_19c92996bcc884bfdb70e3d24606cf5070556a74.out b/test/expected/test_sql.sh_19c92996bcc884bfdb70e3d24606cf5070556a74.out new file mode 100644 index 0000000..b3c6c23 --- /dev/null +++ b/test/expected/test_sql.sh_19c92996bcc884bfdb70e3d24606cf5070556a74.out @@ -0,0 +1,46 @@ +[ + { + "log_line": 0, + "log_time": "2014-06-15 01:04:52.000", + "log_level": "info", + "contextid": "82e87195d704585501", + "data": "http://localhost:8086|/|<samlp:Response xmlns:samlp=\"urn:oasis:names:tc:SAML:2.0:protocol\" ID=\"s2daac0735bf476f4560aab81104b623bedfb0cbc0\" InResponseTo=\"84cbf2be33f6410bbe55877545a93f02\" Version=\"2.0\" IssueInstant=\"2014-06-15T01:04:52Z\" Destination=\"http://localhost:8086/api/1/rest/admin/org/530e42ccd6f45fd16d0d0717/saml/consume\"><saml:Issuer xmlns:saml=\"urn:oasis:names:tc:SAML:2.0:assertion\">http://openam.vagrant.dev/openam</saml:Issuer><samlp:Status xmlns:samlp=\"urn:oasis:names:tc:SAML:2.0:protocol\">\\n<samlp:StatusCode xmlns:samlp=\"urn:oasis:names:tc:SAML:2.0:protocol\"\\nValue=\"urn:oasis:names:tc:SAML:2.0:status:Success\">\\n</samlp:StatusCode>\\n</samlp:Status><saml:Assertion xmlns:saml=\"urn:oasis:names:tc:SAML:2.0:assertion\" ID=\"s2a0bee0da937e236167e99b209802056033816ac2\" IssueInstant=\"2014-06-15T01:04:52Z\" Version=\"2.0\">\\n<saml:Issuer>http://openam.vagrant.dev/openam</saml:Issuer><ds:Signature xmlns:ds=\"http://www.w3.org/2000/09/xmldsig#\">\\n<ds:SignedInfo>\\n<ds:CanonicalizationMethod Algorithm=\"http://www.w3.org/2001/10/xml-exc-c14n#\"/>\\n<ds:SignatureMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#rsa-sha1\"/>\\n<ds:Reference URI=\"#s2a0bee0da937e236167e99b209802056033816ac2\">\\n<ds:Transforms>\\n<ds:Transform Algorithm=\"http://www.w3.org/2000/09/xmldsig#enveloped-signature\"/>\\n<ds:Transform Algorithm=\"http://www.w3.org/2001/10/xml-exc-c14n#\"/>\\n</ds:Transforms>\\n<ds:DigestMethod Algorithm=\"http://www.w3.org/2000/09/xmldsig#sha1\"/>\\n<ds:DigestValue>4uSmVzjovUdQd3px/RcnoxQBsqE=</ds:DigestValue>\\n</ds:Reference>\\n</ds:SignedInfo>\\n<ds:SignatureValue>\\nhm/grge36uA6j1OWif2bTcvVTwESjmuJa27NxepW0AiV5YlcsHDl7RAIk6k/CjsSero3bxGbm56m\\nYncOEi9F1Tu7dS0bfx+vhm/kKTPgwZctf4GWn4qQwP+KeoZywbNj9ShsYJ+zPKzXwN4xBSuPjMxP\\nNf5szzjEWpOndQO/uDs=\\n</ds:SignatureValue>\\n<ds:KeyInfo>\\n<ds:X509Data>\\n<ds:X509Certificate>\\nMIICQDCCAakCBEeNB0swDQYJKoZIhvcNAQEEBQAwZzELMAkGA1UEBhMCVVMxEzARBgNVBAgTCkNh\\nbGlmb3JuaWExFDASBgNVBAcTC1NhbnRhIENsYXJhMQwwCgYDVQQKEwNTdW4xEDAOBgNVBAsTB09w\\nZW5TU08xDTALBgNVBAMTBHRlc3QwHhcNMDgwMTE1MTkxOTM5WhcNMTgwMTEyMTkxOTM5WjBnMQsw\\nCQYDVQQGEwJVUzETMBEGA1UECBMKQ2FsaWZvcm5pYTEUMBIGA1UEBxMLU2FudGEgQ2xhcmExDDAK\\nBgNVBAoTA1N1bjEQMA4GA1UECxMHT3BlblNTTzENMAsGA1UEAxMEdGVzdDCBnzANBgkqhkiG9w0B\\nAQEFAAOBjQAwgYkCgYEArSQc/U75GB2AtKhbGS5piiLkmJzqEsp64rDxbMJ+xDrye0EN/q1U5Of+\\nRkDsaN/igkAvV1cuXEgTL6RlafFPcUX7QxDhZBhsYF9pbwtMzi4A4su9hnxIhURebGEmxKW9qJNY\\nJs0Vo5+IgjxuEWnjnnVgHTs1+mq5QYTA7E6ZyL8CAwEAATANBgkqhkiG9w0BAQQFAAOBgQB3Pw/U\\nQzPKTPTYi9upbFXlrAKMwtFf2OW4yvGWWvlcwcNSZJmTJ8ARvVYOMEVNbsT4OFcfu2/PeYoAdiDA\\ncGy/F2Zuj8XJJpuQRSE6PtQqBuDEHjjmOQJ0rV/r8mO1ZCtHRhpZ5zYRjhRC9eCbjx9VrFax0JDC\\n/FfwWigmrW0Y0Q==\\n</ds:X509Certificate>\\n</ds:X509Data>\\n</ds:KeyInfo>\\n</ds:Signature><saml:Subject>\\n<saml:NameID Format=\"urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress\" NameQualifier=\"http://openam.vagrant.dev/openam\">user@example.com</saml:NameID><saml:SubjectConfirmation Method=\"urn:oasis:names:tc:SAML:2.0:cm:bearer\">\\n<saml:SubjectConfirmationData InResponseTo=\"84cbf2be33f6410bbe55877545a93f02\" NotOnOrAfter=\"2014-06-15T01:14:52Z\" Recipient=\"http://localhost:8086/api/1/rest/admin/org/530e42ccd6f45fd16d0d0717/saml/consume\"/></saml:SubjectConfirmation>\\n</saml:Subject><saml:Conditions NotBefore=\"2014-06-15T00:54:52Z\" NotOnOrAfter=\"2014-06-15T01:14:52Z\">\\n<saml:AudienceRestriction>\\n<saml:Audience>http://localhost:8086</saml:Audience>\\n</saml:AudienceRestriction>\\n</saml:Conditions>\\n<saml:AuthnStatement AuthnInstant=\"2014-06-15T01:00:25Z\" SessionIndex=\"s2f9b4d4b453d12b40ef3905cc959cdb40579c2301\"><saml:AuthnContext><saml:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport</saml:AuthnContextClassRef></saml:AuthnContext></saml:AuthnStatement></saml:Assertion></samlp:Response>", + "domain": "dc=openam", + "hostname": "192.168.33.1\t", + "ipaddr": "Not Available", + "loggedby": "cn=dsameuser,ou=DSAME Users,dc=openam", + "loginid": "id=openamuser,ou=user,dc=openam", + "messageid": "SAML2-37", + "modulename": "SAML2.access", + "nameid": "user@example.com", + "log_part": null, + "log_idle_msecs": 0, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null + }, + { + "log_line": 1, + "log_time": "2014-06-15 01:04:52.000", + "log_level": "trace", + "contextid": "ec5708a7f199678a01", + "data": "vagrant|/", + "domain": "dc=openam", + "hostname": "127.0.1.1\t", + "ipaddr": "Not Available", + "loggedby": "cn=dsameuser,ou=DSAME Users,dc=openam", + "loginid": "cn=dsameuser,ou=DSAME Users,dc=openam", + "messageid": "COT-22", + "modulename": "COT.access", + "nameid": "Not Available", + "log_part": null, + "log_idle_msecs": 0, + "log_mark": 0, + "log_comment": null, + "log_tags": null, + "log_annotations": null, + "log_filters": null + } +] diff --git a/test/expected/test_sql.sh_1cbb81cfe40ee16332c5c775a74d06b945aa65c2.out b/test/expected/test_sql.sh_1cbb81cfe40ee16332c5c775a74d06b945aa65c2.out index df0e6d7..391a786 100644 --- a/test/expected/test_sql.sh_1cbb81cfe40ee16332c5c775a74d06b945aa65c2.out +++ b/test/expected/test_sql.sh_1cbb81cfe40ee16332c5c775a74d06b945aa65c2.out @@ -1,3 +1,3 @@ -[1m[4mid [0m[1m[4mfirst_name [0m[1m[4mlast_name [0m[1m[4m[7mage [0m -[1m[7m [0m[1m0[0m[1m [0m[1mPhil [0m[1m [0m[1mMyman [0m[1m [0m[1m 30 [0m -[7m 1[0m[7m [0m[7mLem [0m[7m [0m[7mHewitt [0m[7m [0m[7m 35[0m +[1m[4mid[0m[1m[4m [0m[1m[4mfirst_name[0m[1m[4m [0m[1m[4mlast_name[0m[1m[4m [0m[1m[4m[7m age [0m[1m[4m [0m + 0 Phil Myman [7m [0m 30 + 1 Lem Hewitt [7m 35[0m diff --git a/test/expected/test_sql.sh_1f892b85dc9008c7b3bab7fdf8aa372a6d5ae22c.err b/test/expected/test_sql.sh_1f892b85dc9008c7b3bab7fdf8aa372a6d5ae22c.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_1f892b85dc9008c7b3bab7fdf8aa372a6d5ae22c.err diff --git a/test/expected/test_sql.sh_1f892b85dc9008c7b3bab7fdf8aa372a6d5ae22c.out b/test/expected/test_sql.sh_1f892b85dc9008c7b3bab7fdf8aa372a6d5ae22c.out new file mode 100644 index 0000000..2c56abe --- /dev/null +++ b/test/expected/test_sql.sh_1f892b85dc9008c7b3bab7fdf8aa372a6d5ae22c.out @@ -0,0 +1,23 @@ +[ + { + "cs_headers": { + "User-Agent": "Mozilla/5.0 (Linux; Android 4.4.4; SM-G900V Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.59 Mobile Safari/537.36", + "Referer": "http://example.com/Search/SearchResults.pg?informationRecipient.languageCode.c=en", + "Host": "xzy.example.com" + } + }, + { + "cs_headers": { + "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36", + "Referer": null, + "Host": "example.hello.com" + } + }, + { + "cs_headers": { + "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36", + "Referer": null, + "Host": "hello.example.com" + } + } +] diff --git a/test/expected/test_sql.sh_26ace94793c68c44801e1ec496e7ab6a02304ce3.err b/test/expected/test_sql.sh_26ace94793c68c44801e1ec496e7ab6a02304ce3.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_26ace94793c68c44801e1ec496e7ab6a02304ce3.err diff --git a/test/expected/test_sql.sh_26ace94793c68c44801e1ec496e7ab6a02304ce3.out b/test/expected/test_sql.sh_26ace94793c68c44801e1ec496e7ab6a02304ce3.out new file mode 100644 index 0000000..85a077d --- /dev/null +++ b/test/expected/test_sql.sh_26ace94793c68c44801e1ec496e7ab6a02304ce3.out @@ -0,0 +1,2 @@ +name,content,length(content) +logfile_empty.0,,0 diff --git a/test/expected/test_sql.sh_2a16a6fd0ff235a7877e1ea93b22d873a3609402.err b/test/expected/test_sql.sh_2a16a6fd0ff235a7877e1ea93b22d873a3609402.err index bc74c2d..782fe5e 100644 --- a/test/expected/test_sql.sh_2a16a6fd0ff235a7877e1ea93b22d873a3609402.err +++ b/test/expected/test_sql.sh_2a16a6fd0ff235a7877e1ea93b22d873a3609402.err @@ -1,4 +1,3 @@ -[1m[31m✘ error[0m: call to [1m[4mraise_error[0m[4m([0m[4mmsg[0m[4m)[0m failed - [1m[31mreason[0m: oops! +[1m[31m✘ error[0m: oops! [36m --> [0m[1mcommand-option[0m:1 [36m | [0m[37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40mraise_error[0m[37m[40m([0m[35m[40m'oops!'[0m[37m[40m) [0m diff --git a/test/expected/test_sql.sh_2c60ed41369d667d1e2a563d54f8edf84682e526.err b/test/expected/test_sql.sh_2c60ed41369d667d1e2a563d54f8edf84682e526.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_2c60ed41369d667d1e2a563d54f8edf84682e526.err diff --git a/test/expected/test_sql.sh_2c60ed41369d667d1e2a563d54f8edf84682e526.out b/test/expected/test_sql.sh_2c60ed41369d667d1e2a563d54f8edf84682e526.out new file mode 100644 index 0000000..29ea19f --- /dev/null +++ b/test/expected/test_sql.sh_2c60ed41369d667d1e2a563d54f8edf84682e526.out @@ -0,0 +1,2 @@ +[1m[4mlog_top_line()[0m[1m[4m [0m[1m[4mlog_msg_line()[0m[1m[4m [0m + 1 0 diff --git a/test/expected/test_sql.sh_2ed3f3b18ef4ecc68e4dd3cc8041b61fcf2a59af.err b/test/expected/test_sql.sh_2ed3f3b18ef4ecc68e4dd3cc8041b61fcf2a59af.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_2ed3f3b18ef4ecc68e4dd3cc8041b61fcf2a59af.err diff --git a/test/expected/test_sql.sh_2ed3f3b18ef4ecc68e4dd3cc8041b61fcf2a59af.out b/test/expected/test_sql.sh_2ed3f3b18ef4ecc68e4dd3cc8041b61fcf2a59af.out new file mode 100644 index 0000000..90d743c --- /dev/null +++ b/test/expected/test_sql.sh_2ed3f3b18ef4ecc68e4dd3cc8041b61fcf2a59af.out @@ -0,0 +1,5 @@ +log_line,log_time,log_level,log_hostname,log_msgid,log_pid,log_pri,log_procname,log_struct,log_syslog_tag,syslog_version,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +0,2007-11-03 09:23:38.000,error,veridian,<NULL>,7998,<NULL>,automount,<NULL>,automount[7998],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +1,2007-11-03 09:23:38.000,info,veridian,<NULL>,16442,<NULL>,automount,<NULL>,automount[16442],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +2,2007-11-03 09:23:38.000,error,veridian,<NULL>,7999,<NULL>,automount,<NULL>,automount[7999],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +3,2007-11-03 09:47:02.000,info,veridian,<NULL>,<NULL>,<NULL>,sudo,<NULL>,sudo,<NULL>,<NULL>,1404000,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_sql.sh_2f15b8a38673ac4db45dc6ed2eafe609c332575b.out b/test/expected/test_sql.sh_2f15b8a38673ac4db45dc6ed2eafe609c332575b.out index df0e6d7..391a786 100644 --- a/test/expected/test_sql.sh_2f15b8a38673ac4db45dc6ed2eafe609c332575b.out +++ b/test/expected/test_sql.sh_2f15b8a38673ac4db45dc6ed2eafe609c332575b.out @@ -1,3 +1,3 @@ -[1m[4mid [0m[1m[4mfirst_name [0m[1m[4mlast_name [0m[1m[4m[7mage [0m -[1m[7m [0m[1m0[0m[1m [0m[1mPhil [0m[1m [0m[1mMyman [0m[1m [0m[1m 30 [0m -[7m 1[0m[7m [0m[7mLem [0m[7m [0m[7mHewitt [0m[7m [0m[7m 35[0m +[1m[4mid[0m[1m[4m [0m[1m[4mfirst_name[0m[1m[4m [0m[1m[4mlast_name[0m[1m[4m [0m[1m[4m[7m age [0m[1m[4m [0m + 0 Phil Myman [7m [0m 30 + 1 Lem Hewitt [7m 35[0m diff --git a/test/expected/test_sql.sh_31df37f254255115611fc321b63374a2fa4a1cd5.out b/test/expected/test_sql.sh_31df37f254255115611fc321b63374a2fa4a1cd5.out index 5118721..2f3d6d4 100644 --- a/test/expected/test_sql.sh_31df37f254255115611fc321b63374a2fa4a1cd5.out +++ b/test/expected/test_sql.sh_31df37f254255115611fc321b63374a2fa4a1cd5.out @@ -1,2 +1,2 @@ -[1m[4m replicate('foobar', 120) [0m +[1m[4m replicate('foobar', 120) [0m[1m[4m [0m foobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobar⋯oobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobar diff --git a/test/expected/test_sql.sh_3445b783808f174b76f55dc6b998f721a1aae271.err b/test/expected/test_sql.sh_3445b783808f174b76f55dc6b998f721a1aae271.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_3445b783808f174b76f55dc6b998f721a1aae271.err diff --git a/test/expected/test_sql.sh_3445b783808f174b76f55dc6b998f721a1aae271.out b/test/expected/test_sql.sh_3445b783808f174b76f55dc6b998f721a1aae271.out new file mode 100644 index 0000000..79125db --- /dev/null +++ b/test/expected/test_sql.sh_3445b783808f174b76f55dc6b998f721a1aae271.out @@ -0,0 +1,83 @@ +log_line,log_part,log_body +0,<NULL>,restart. +1,<NULL>,Invalid query packet. +2,<NULL>,DHCPREQUEST on eth0 to 10.1.10.1 port 67 (xid=0x654a04aa) +3,<NULL>,DHCPNAK from 10.1.10.1 (xid=0x654a04aa) +4,<NULL>,/sbin/dhclient-script : updated /etc/resolv.conf +5,<NULL>,Withdrawing address record for 10.1.10.49 on eth0. +6,<NULL>,Leaving mDNS multicast group on interface eth0.IPv4 with address 10.1.10.49. +7,<NULL>,iface.c: interface_mdns_mcast_join() called but no local address available. +8,<NULL>,Interface eth0.IPv4 no longer relevant for mDNS. +9,<NULL>,DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 5 (xid=0x4e17f141) +10,<NULL>,DHCPOFFER from 10.1.10.1 +11,<NULL>,DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0x4e17f141) +12,<NULL>,DHCPACK from 10.1.10.1 (xid=0x4e17f141) +13,<NULL>,New relevant interface eth0.IPv4 for mDNS. +14,<NULL>,Joining mDNS multicast group on interface eth0.IPv4 with address 10.1.10.103. +15,<NULL>,Registering new address record for 10.1.10.103 on eth0. +16,<NULL>,Withdrawing address record for 10.1.10.103 on eth0. +17,<NULL>,Leaving mDNS multicast group on interface eth0.IPv4 with address 10.1.10.103. +18,<NULL>,iface.c: interface_mdns_mcast_join() called but no local address available. +19,<NULL>,Interface eth0.IPv4 no longer relevant for mDNS. +20,<NULL>,New relevant interface eth0.IPv4 for mDNS. +21,<NULL>,Joining mDNS multicast group on interface eth0.IPv4 with address 10.1.10.103. +22,<NULL>,Registering new address record for 10.1.10.103 on eth0. +23,<NULL>,/sbin/dhclient-script : updated /etc/resolv.conf +24,10.1.10.103,bound to 10.1.10.103 -- renewal in 54694 seconds. +25,10.1.10.103,Invalid query packet. +26,10.1.10.103,Invalid query packet. +27,10.1.10.103,DHCPREQUEST on eth0 to 10.1.10.1 port 67 (xid=0x4e17f141) +28,10.1.10.103,DHCPACK from 10.1.10.1 (xid=0x4e17f141) +29,10.1.10.103,bound to 10.1.10.103 -- renewal in 8787 seconds. +30,10.1.10.103,Invalid query packet. +31,10.1.10.103,DHCPREQUEST on eth0 to 10.1.10.1 port 67 (xid=0x4e17f141) +32,10.1.10.103,DHCPACK from 10.1.10.1 (xid=0x4e17f141) +33,10.1.10.103,bound to 10.1.10.103 -- renewal in 9938 seconds. +34,10.1.10.103,Invalid query packet. +35,10.1.10.103,DHCPREQUEST on eth0 to 10.1.10.1 port 67 (xid=0x4e17f141) +36,10.1.10.103,DHCPACK from 10.1.10.1 (xid=0x4e17f141) +37,10.1.10.103,bound to 10.1.10.103 -- renewal in 2656 seconds. +38,10.1.10.103,Invalid query packet. +39,10.1.10.103,DHCPREQUEST on eth0 to 10.1.10.1 port 67 (xid=0x4e17f141) +40,10.1.10.103,DHCPACK from 10.1.10.1 (xid=0x4e17f141) +41,10.1.10.103,bound to 10.1.10.103 -- renewal in 15112 seconds. +42,10.1.10.103,Invalid query packet. +43,10.1.10.103,Invalid query packet. +44,10.1.10.103,Invalid query packet. +45,10.1.10.103,DHCPREQUEST on eth0 to 10.1.10.1 port 67 (xid=0x4e17f141) +46,10.1.10.103,DHCPNAK from 10.1.10.1 (xid=0x4e17f141) +47,10.1.10.103,/sbin/dhclient-script : updated /etc/resolv.conf +48,10.1.10.103,Withdrawing address record for 10.1.10.103 on eth0. +49,10.1.10.103,Leaving mDNS multicast group on interface eth0.IPv4 with address 10.1.10.103. +50,10.1.10.103,iface.c: interface_mdns_mcast_join() called but no local address available. +51,10.1.10.103,Interface eth0.IPv4 no longer relevant for mDNS. +52,10.1.10.103,DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 5 (xid=0xd16b79d) +53,10.1.10.103,DHCPOFFER from 10.1.10.1 +54,10.1.10.103,DHCPREQUEST on eth0 to 255.255.255.255 port 67 (xid=0xd16b79d) +55,10.1.10.103,DHCPACK from 10.1.10.1 (xid=0xd16b79d) +56,10.1.10.103,New relevant interface eth0.IPv4 for mDNS. +57,10.1.10.103,Joining mDNS multicast group on interface eth0.IPv4 with address 10.1.10.62. +58,10.1.10.103,Registering new address record for 10.1.10.62 on eth0. +59,10.1.10.103,Withdrawing address record for 10.1.10.62 on eth0. +60,10.1.10.103,Leaving mDNS multicast group on interface eth0.IPv4 with address 10.1.10.62. +61,10.1.10.103,iface.c: interface_mdns_mcast_join() called but no local address available. +62,10.1.10.103,Interface eth0.IPv4 no longer relevant for mDNS. +63,10.1.10.103,New relevant interface eth0.IPv4 for mDNS. +64,10.1.10.103,Joining mDNS multicast group on interface eth0.IPv4 with address 10.1.10.62. +65,10.1.10.103,Registering new address record for 10.1.10.62 on eth0. +66,10.1.10.103,/sbin/dhclient-script : updated /etc/resolv.conf +67,10.1.10.62,bound to 10.1.10.62 -- renewal in 31782 seconds. +68,10.1.10.62,Invalid query packet. +69,10.1.10.62,Invalid query packet. +70,10.1.10.62,DHCPREQUEST on eth0 to 10.1.10.1 port 67 (xid=0xd16b79d) +71,10.1.10.62,DHCPACK from 10.1.10.1 (xid=0xd16b79d) +72,10.1.10.62,bound to 10.1.10.62 -- renewal in 19742 seconds. +73,10.1.10.62,Invalid query packet. +74,10.1.10.62,Invalid query packet. +75,10.1.10.62,DHCPREQUEST on eth0 to 10.1.10.1 port 67 (xid=0xd16b79d) +76,10.1.10.62,DHCPACK from 10.1.10.1 (xid=0xd16b79d) +77,10.1.10.62,bound to 10.1.10.62 -- renewal in 55327 seconds. +78,10.1.10.62,Invalid query packet. +79,10.1.10.62,Invalid response packet from host 10.1.10.10. +80,10.1.10.62,Invalid response packet from host fe80::22c9:d0ff:fe15:1b7c. +81,10.1.10.62,Invalid query packet. diff --git a/test/expected/test_sql.sh_4563a807311d0ce3d1f912843e615a6ca579cffa.err b/test/expected/test_sql.sh_4563a807311d0ce3d1f912843e615a6ca579cffa.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_4563a807311d0ce3d1f912843e615a6ca579cffa.err diff --git a/test/expected/test_sql.sh_4563a807311d0ce3d1f912843e615a6ca579cffa.out b/test/expected/test_sql.sh_4563a807311d0ce3d1f912843e615a6ca579cffa.out new file mode 100644 index 0000000..61a6828 --- /dev/null +++ b/test/expected/test_sql.sh_4563a807311d0ce3d1f912843e615a6ca579cffa.out @@ -0,0 +1,40 @@ +[ + { + "fields": { + "namespace": "inc-1-enh-domain-c14-ns-2", + "pod": "hello-inc-1-enh-domain-c14-ns-2-3-d8f465685-k75gp", + "reason": "", + "status": "Pending" + } + }, + { + "fields": { + "error": "pod inc-1-domain-c14-ns-6/fe-inc-1-domain-c14-ns-6-5-656d9bb695-4584b is not found: PodNotFound", + "namespace": "inc-1-domain-c14-ns-6", + "pod": "fe-inc-1-domain-c14-ns-6-5-656d9bb695-4584b", + "uid": "be2def59-3a08-42fd-8f84-6f64cfcefa93" + } + }, + { + "fields": { + "namespace": "inc-1-domain-c14-ns-6", + "pod": "fe-inc-1-domain-c14-ns-6-5-656d9bb695-4584b", + "uid": "be2def59-3a08-42fd-8f84-6f64cfcefa93" + } + }, + { + "fields": { + "namespace": "inc-1-domain-c14-ns-6", + "pod": "fe-inc-1-domain-c14-ns-6-5-656d9bb695-4584b", + "uid": "be2def59-3a08-42fd-8f84-6f64cfcefa93" + } + }, + { + "fields": { + "namespace": "inc-1-enh-domain-c14-ns-2", + "pod": "hello-inc-1-enh-domain-c14-ns-2-7-5ddd6bcd69-6rqct", + "reason": "", + "status": "Pending" + } + } +] diff --git a/test/expected/test_sql.sh_4a13356ccbdeb5f73fa063e292b5a6cb25e6c23e.err b/test/expected/test_sql.sh_4a13356ccbdeb5f73fa063e292b5a6cb25e6c23e.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_4a13356ccbdeb5f73fa063e292b5a6cb25e6c23e.err diff --git a/test/expected/test_sql.sh_4a13356ccbdeb5f73fa063e292b5a6cb25e6c23e.out b/test/expected/test_sql.sh_4a13356ccbdeb5f73fa063e292b5a6cb25e6c23e.out new file mode 100644 index 0000000..85511da --- /dev/null +++ b/test/expected/test_sql.sh_4a13356ccbdeb5f73fa063e292b5a6cb25e6c23e.out @@ -0,0 +1,2 @@ +log_line,log_time,log_level,bro_ts,bro_uid,bro_id_orig_h,bro_id_orig_p,bro_id_resp_h,bro_id_resp_p,bro_trans_depth,bro_method,bro_host,bro_uri,bro_referrer,bro_version,bro_user_agent,bro_request_body_len,bro_response_body_len,bro_status_code,bro_status_msg,bro_info_code,bro_info_msg,bro_tags,bro_username,bro_password,bro_proxied,bro_orig_fuids,bro_orig_filenames,bro_orig_mime_types,bro_resp_fuids,bro_resp_filenames,bro_resp_mime_types,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +118,2011-11-03 00:19:49.337,error,1320279589.337053,CBHHuR1xFnm5C5CQBc,192.168.2.76,52074,74.125.225.76,80,1,GET,i4.ytimg.com,/vi/gDbg_GeuiSY/hqdefault.jpg,<NULL>,1.1,Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1,0,893,404,Not Found,<NULL>,<NULL>,,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,F2GiAw3j1m22R2yIg2,<NULL>,image/jpeg,<NULL>,18,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_sql.sh_5532c7a21e3f6b7df3aad10d7bdfbb7a812ae6c7.out b/test/expected/test_sql.sh_5532c7a21e3f6b7df3aad10d7bdfbb7a812ae6c7.out index dbb2a2f..53f730f 100644 --- a/test/expected/test_sql.sh_5532c7a21e3f6b7df3aad10d7bdfbb7a812ae6c7.out +++ b/test/expected/test_sql.sh_5532c7a21e3f6b7df3aad10d7bdfbb7a812ae6c7.out @@ -1,2 +1,2 @@ -log_line,log_part,log_time,log_idle_msecs,log_level,log_mark,log_comment,log_tags,log_filters,log_hostname,log_msgid,log_pid,log_pri,log_procname,log_struct,log_syslog_tag,syslog_version,col_0,TTY,PWD,USER,COMMAND -0,<NULL>,2007-11-03 09:47:02.000,0,info,0,<NULL>,<NULL>,[1],veridian,<NULL>,<NULL>,<NULL>,sudo,<NULL>,sudo,<NULL>,timstack,pts/6,/auto/wstimstack/rpms/lbuild/test,root,/usr/bin/tail /var/log/messages +log_line,log_time,log_level,log_hostname,log_msgid,log_pid,log_pri,log_procname,log_struct,log_syslog_tag,syslog_version,col_0,TTY,PWD,USER,COMMAND,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +0,2007-11-03 09:47:02.000,info,veridian,<NULL>,<NULL>,<NULL>,sudo,<NULL>,sudo,<NULL>,timstack,pts/6,/auto/wstimstack/rpms/lbuild/test,root,/usr/bin/tail /var/log/messages,<NULL>,0,0,<NULL>,<NULL>,<NULL>,[1] diff --git a/test/expected/test_sql.sh_57edc93426e6767aa44ab2356c55327553dcdc8d.err b/test/expected/test_sql.sh_57edc93426e6767aa44ab2356c55327553dcdc8d.err index 600e19d..979055d 100644 --- a/test/expected/test_sql.sh_57edc93426e6767aa44ab2356c55327553dcdc8d.err +++ b/test/expected/test_sql.sh_57edc93426e6767aa44ab2356c55327553dcdc8d.err @@ -1,5 +1,4 @@ -[1m[31m✘ error[0m: call to [1m[4mraise_error[0m[4m([0m[4mmsg[0m[4m)[0m failed - [1m[31mreason[0m: no data was redirected to lnav's standard-input +[1m[31m✘ error[0m: no data was redirected to lnav's standard-input [36m --> [0m[1mcommand-option[0m:1 [36m | [0m[37m[40m|rename-stdin foo [0m [36m --> [0m[1m../test/.lnav/formats/default/rename-stdin.lnav[0m:7 diff --git a/test/expected/test_sql.sh_61471583c5e2f8ede3a8adefce682c27bf3924c8.err b/test/expected/test_sql.sh_61471583c5e2f8ede3a8adefce682c27bf3924c8.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_61471583c5e2f8ede3a8adefce682c27bf3924c8.err diff --git a/test/expected/test_sql.sh_61471583c5e2f8ede3a8adefce682c27bf3924c8.out b/test/expected/test_sql.sh_61471583c5e2f8ede3a8adefce682c27bf3924c8.out new file mode 100644 index 0000000..5fc70f1 --- /dev/null +++ b/test/expected/test_sql.sh_61471583c5e2f8ede3a8adefce682c27bf3924c8.out @@ -0,0 +1,11 @@ +[ + { + "sc_substatus": 0 + }, + { + "sc_substatus": 0 + }, + { + "sc_substatus": null + } +] diff --git a/test/expected/test_sql.sh_62eb85c9569e71a630d72065238559528a16114c.out b/test/expected/test_sql.sh_62eb85c9569e71a630d72065238559528a16114c.out index 898c9a8..0f485fb 100644 --- a/test/expected/test_sql.sh_62eb85c9569e71a630d72065238559528a16114c.out +++ b/test/expected/test_sql.sh_62eb85c9569e71a630d72065238559528a16114c.out @@ -1,2 +1,2 @@ -[1m[4mfilepath [0m +[1m[4mfilepath[0m[1m[4m [0m foo diff --git a/test/expected/test_sql.sh_753c343a256d1286750314957d1b4e155464e03e.out b/test/expected/test_sql.sh_753c343a256d1286750314957d1b4e155464e03e.out index 801a9af..069e77a 100644 --- a/test/expected/test_sql.sh_753c343a256d1286750314957d1b4e155464e03e.out +++ b/test/expected/test_sql.sh_753c343a256d1286750314957d1b4e155464e03e.out @@ -1,2 +1,2 @@ -[1m[4mlog_top_datetime() [0m +[1m[4mlog_top_datetime()[0m[1m[4m [0m <NULL> diff --git a/test/expected/test_sql.sh_7593b39f4be6fd2124ec7cf10835ee015d475b16.err b/test/expected/test_sql.sh_7593b39f4be6fd2124ec7cf10835ee015d475b16.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_7593b39f4be6fd2124ec7cf10835ee015d475b16.err diff --git a/test/expected/test_sql.sh_7593b39f4be6fd2124ec7cf10835ee015d475b16.out b/test/expected/test_sql.sh_7593b39f4be6fd2124ec7cf10835ee015d475b16.out new file mode 100644 index 0000000..e304578 --- /dev/null +++ b/test/expected/test_sql.sh_7593b39f4be6fd2124ec7cf10835ee015d475b16.out @@ -0,0 +1,2 @@ +[1m[4mlog_top_line()[0m[1m[4m [0m[1m[4mlog_msg_line()[0m[1m[4m [0m + 2 2 diff --git a/test/expected/test_sql.sh_764306f0e5f610ba71f521ba3d19fe158ece0ba5.out b/test/expected/test_sql.sh_764306f0e5f610ba71f521ba3d19fe158ece0ba5.out index fabc853..57b6d27 100644 --- a/test/expected/test_sql.sh_764306f0e5f610ba71f521ba3d19fe158ece0ba5.out +++ b/test/expected/test_sql.sh_764306f0e5f610ba71f521ba3d19fe158ece0ba5.out @@ -1,2 +1,2 @@ -[1m[4m col_0 [0m +[1m[4m col_0 [0m[1m[4m [0m eth0.IPv4 diff --git a/test/expected/test_sql.sh_7f664c9cda0ae1c48333e21051b5e0eeafd5b4bc.err b/test/expected/test_sql.sh_7f664c9cda0ae1c48333e21051b5e0eeafd5b4bc.err index 1a0c2b0..d068056 100644 --- a/test/expected/test_sql.sh_7f664c9cda0ae1c48333e21051b5e0eeafd5b4bc.err +++ b/test/expected/test_sql.sh_7f664c9cda0ae1c48333e21051b5e0eeafd5b4bc.err @@ -1,5 +1,4 @@ -[1m[31m✘ error[0m: call to [1m[4mraise_error[0m[4m([0m[4mmsg[0m[4m)[0m failed - [1m[31mreason[0m: expecting the new name for stdin as the first argument +[1m[31m✘ error[0m: expecting the new name for stdin as the first argument [36m --> [0m[1mcommand-option[0m:1 [36m | [0m[37m[40m|rename-stdin [0m [36m --> [0m[1m../test/.lnav/formats/default/rename-stdin.lnav[0m:6 diff --git a/test/expected/test_sql.sh_859af4cc5f57345be8dcece599419d58f332841a.err b/test/expected/test_sql.sh_859af4cc5f57345be8dcece599419d58f332841a.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_859af4cc5f57345be8dcece599419d58f332841a.err diff --git a/test/expected/test_sql.sh_859af4cc5f57345be8dcece599419d58f332841a.out b/test/expected/test_sql.sh_859af4cc5f57345be8dcece599419d58f332841a.out new file mode 100644 index 0000000..f648fc6 --- /dev/null +++ b/test/expected/test_sql.sh_859af4cc5f57345be8dcece599419d58f332841a.out @@ -0,0 +1,4 @@ +[4mMin: 0 [0m[4m[42m [0m[4m 1-23 [0m[4m[43m [0m[4m 24-48 [0m[4m[41m [0m[4m 49+[0m[4m Max: 291690[0m +[41m [0m[43mT[0m[42mh[0m[42mu[0m[42m [0m[42mN[0m[42mo[0m[42mv[0m[42m [0m[42m0[0m[42m3[0m[42m [0m[42m0[0m[42m0[0m:1[42m5[0m:00[42m [0m [42m [0m[42m [0m [42m [0m[42m [0m [42m [0m [42m [0m [42m [0m [42m [0m +▲ [1m70[0m values in the range [1m0.00[0m-[1m3788.18[0m +[43m [0m[42mT[0m[42mh[0m[42mu[0m[42m [0m[42mN[0m[42mo[0mv[42m [0m03 [42m0[0m0:[42m2[0m0:00 diff --git a/test/expected/test_sql.sh_8ee288f1508eaab0367e465e9f382e848f3282aa.out b/test/expected/test_sql.sh_8ee288f1508eaab0367e465e9f382e848f3282aa.out index b21f574..c5c0c0e 100644 --- a/test/expected/test_sql.sh_8ee288f1508eaab0367e465e9f382e848f3282aa.out +++ b/test/expected/test_sql.sh_8ee288f1508eaab0367e465e9f382e848f3282aa.out @@ -1,4 +1,4 @@ -[1m[4m log_time [0m +[1m[4m log_time [0m[1m[4m [0m 2009-07-20 22:59:26.000 2009-07-20 22:59:29.000 -2009-07-20 22:59:29.000 +[1m2009-07-20 22:59:29.000 [0m diff --git a/test/expected/test_sql.sh_9aaaa810f883f5dcf8a4d5cda4051fdf4640a65c.err b/test/expected/test_sql.sh_9aaaa810f883f5dcf8a4d5cda4051fdf4640a65c.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_9aaaa810f883f5dcf8a4d5cda4051fdf4640a65c.err diff --git a/test/expected/test_sql.sh_9aaaa810f883f5dcf8a4d5cda4051fdf4640a65c.out b/test/expected/test_sql.sh_9aaaa810f883f5dcf8a4d5cda4051fdf4640a65c.out new file mode 100644 index 0000000..a54d338 --- /dev/null +++ b/test/expected/test_sql.sh_9aaaa810f883f5dcf8a4d5cda4051fdf4640a65c.out @@ -0,0 +1,4 @@ +log_line,log_time,log_level,log_msg_format,log_msg_values,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters,log_msg_schema +0,2015-11-03 09:23:38.000,info,# is up,"{""col_0"":""eth0""}",<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,ce6143108d22799c9c7a994e21e7302e +1,2015-11-03 09:23:38.000,info,# is up,"{""col_0"":""eth1""}",<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,ce6143108d22799c9c7a994e21e7302e +2,2015-11-03 09:23:38.000,info,# is down,"{""col_0"":""eth0""}",<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,83cd119b5b6f7e79abff4d28946b7a61 diff --git a/test/expected/test_sql.sh_a7955e89791db9a252d8323436fabc51e2960731.err b/test/expected/test_sql.sh_a7955e89791db9a252d8323436fabc51e2960731.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_a7955e89791db9a252d8323436fabc51e2960731.err diff --git a/test/expected/test_sql.sh_a7955e89791db9a252d8323436fabc51e2960731.out b/test/expected/test_sql.sh_a7955e89791db9a252d8323436fabc51e2960731.out new file mode 100644 index 0000000..de137d9 --- /dev/null +++ b/test/expected/test_sql.sh_a7955e89791db9a252d8323436fabc51e2960731.out @@ -0,0 +1,3 @@ +log_line,log_time,log_level,c_ip,cs_method,cs_referer,cs_uri_query,cs_uri_stem,cs_user_agent,cs_username,cs_version,sc_bytes,sc_status,cs_host,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +1,2015-03-24 14:02:50.000,info,127.0.0.1,GET,<NULL>,<NULL>,/includes/js/combined-javascript.js,<NULL>,-,HTTP/1.1,65508,200,<NULL>,<NULL>,6927348000,0,<NULL>,<NULL>,<NULL>,<NULL> +2,2015-03-24 14:02:50.000,error,127.0.0.1,GET,<NULL>,<NULL>,/bad.foo,<NULL>,-,HTTP/1.1,65508,404,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_sql.sh_ae7b1f1684e14bf9c16e0d789257b6ef57cfb2b1.out b/test/expected/test_sql.sh_ae7b1f1684e14bf9c16e0d789257b6ef57cfb2b1.out index c012bd8..176be31 100644 --- a/test/expected/test_sql.sh_ae7b1f1684e14bf9c16e0d789257b6ef57cfb2b1.out +++ b/test/expected/test_sql.sh_ae7b1f1684e14bf9c16e0d789257b6ef57cfb2b1.out @@ -1,2 +1,2 @@ -[1m[4m log_time [0m +[1m[4m log_time [0m[1m[4m [0m 2009-07-20 22:59:26.000 diff --git a/test/expected/test_sql.sh_afe9cdc4898df5c4e112c13dfe3db6dc089c0d7c.out b/test/expected/test_sql.sh_afe9cdc4898df5c4e112c13dfe3db6dc089c0d7c.out index 4382802..a44dcba 100644 --- a/test/expected/test_sql.sh_afe9cdc4898df5c4e112c13dfe3db6dc089c0d7c.out +++ b/test/expected/test_sql.sh_afe9cdc4898df5c4e112c13dfe3db6dc089c0d7c.out @@ -1,4 +1,4 @@ -[1m[4m log_body [0m +[1m[4m log_body [0m[1m[4m [0m lookup(file): lookup for foobar failed attempting to mount entry /auto/opt -lookup(file): lookup for opt failed +[1mlookup(file): lookup for opt failed [0m diff --git a/test/expected/test_sql.sh_b085d26043f9661d70f82cb90ecb3c5245d25eac.out b/test/expected/test_sql.sh_b085d26043f9661d70f82cb90ecb3c5245d25eac.out index b21f574..c5c0c0e 100644 --- a/test/expected/test_sql.sh_b085d26043f9661d70f82cb90ecb3c5245d25eac.out +++ b/test/expected/test_sql.sh_b085d26043f9661d70f82cb90ecb3c5245d25eac.out @@ -1,4 +1,4 @@ -[1m[4m log_time [0m +[1m[4m log_time [0m[1m[4m [0m 2009-07-20 22:59:26.000 2009-07-20 22:59:29.000 -2009-07-20 22:59:29.000 +[1m2009-07-20 22:59:29.000 [0m diff --git a/test/expected/test_sql.sh_b5aa0561a65de7e8e22085db184c72a94b1a89a9.out b/test/expected/test_sql.sh_b5aa0561a65de7e8e22085db184c72a94b1a89a9.out index c2c44ad..c126651 100644 --- a/test/expected/test_sql.sh_b5aa0561a65de7e8e22085db184c72a94b1a89a9.out +++ b/test/expected/test_sql.sh_b5aa0561a65de7e8e22085db184c72a94b1a89a9.out @@ -1,2 +1,2 @@ -[1m[4m log_body [0m +[1m[4m log_body [0m[1m[4m [0m timstack : TTY=pts/6 ; PWD=/auto/wstimstack/rpms/lbuild/test ; USER=root ; COMMAND=/usr/bin/tail /var/log/messages diff --git a/test/expected/test_sql.sh_b9330763dea550bbd006d7ae6ae7ea367f831fa3.err b/test/expected/test_sql.sh_b9330763dea550bbd006d7ae6ae7ea367f831fa3.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_b9330763dea550bbd006d7ae6ae7ea367f831fa3.err diff --git a/test/expected/test_sql.sh_b9330763dea550bbd006d7ae6ae7ea367f831fa3.out b/test/expected/test_sql.sh_b9330763dea550bbd006d7ae6ae7ea367f831fa3.out new file mode 100644 index 0000000..de2964d --- /dev/null +++ b/test/expected/test_sql.sh_b9330763dea550bbd006d7ae6ae7ea367f831fa3.out @@ -0,0 +1,10 @@ +node_text +"Gambardella, Matthew" +"Ralls, Kim" +"Corets, Eva" +"Randall, Cynthia" +"Thurman, Paula" +"Knorr, Stefan" +"Kress, Peter" +"O'Brien, Tim" +"Galos, Mike" diff --git a/test/expected/test_sql.sh_bad03a996c0750733ab99c592b9011851f521a69.out b/test/expected/test_sql.sh_bad03a996c0750733ab99c592b9011851f521a69.out index 85a1303..9892416 100644 --- a/test/expected/test_sql.sh_bad03a996c0750733ab99c592b9011851f521a69.out +++ b/test/expected/test_sql.sh_bad03a996c0750733ab99c592b9011851f521a69.out @@ -1,5 +1,5 @@ -[1m[4mmatch_index [0m[1m[4m content [0m[1m[4m case match_index when 2 then replicate('abc', 1000) else '' end [0m -[1m[7m [0m[1m 0[0m[1m [0m[1m{"col_0":10}[0m[1m [0m[1m [0m -[7m 1[0m[7m [0m[7m{"col_0":50}[0m[7m [0m[7m [0m -[1m[7m 2[0m[1m[7m [0m[1m[7m{"col_0":50}[0m[1m[7m [0m[1m[7mabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc⋯bcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc [0m -[7m 3[0m[7m [0m[7m{"col_0":50}[0m[7m [0m[7m [0m +[1m[4mmatch_index[0m[1m[4m [0m[1m[4m content [0m[1m[4m [0m[1m[4m case match_index when 2 then replicate('abc', 1000) else '' end [0m[1m[4m [0m + 0 [7m{[0m"col_0":10} + 1 [7m{"col_0":50}[0m +[1m 2[0m[1m [0m[1m[7m{"col_0":50}[0m[1m [0m[1mabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc⋯bcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabcabc [0m +[1m 3[0m[1m [0m[1m[7m{"col_0":50}[0m[1m [0m[1m [0m diff --git a/test/expected/test_sql.sh_bd46ca4560f8be6307a914e39539bbac0368080a.out b/test/expected/test_sql.sh_bd46ca4560f8be6307a914e39539bbac0368080a.out index 7041f45..f32bdce 100644 --- a/test/expected/test_sql.sh_bd46ca4560f8be6307a914e39539bbac0368080a.out +++ b/test/expected/test_sql.sh_bd46ca4560f8be6307a914e39539bbac0368080a.out @@ -1,2 +1,2 @@ -[1m[4mlnav_top_file() [0m +[1m[4mlnav_top_file()[0m[1m[4m [0m <NULL> diff --git a/test/expected/test_sql.sh_c17933125df910588b806a9d07c2655bc71198ef.err b/test/expected/test_sql.sh_c17933125df910588b806a9d07c2655bc71198ef.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_c17933125df910588b806a9d07c2655bc71198ef.err diff --git a/test/expected/test_sql.sh_c17933125df910588b806a9d07c2655bc71198ef.out b/test/expected/test_sql.sh_c17933125df910588b806a9d07c2655bc71198ef.out new file mode 100644 index 0000000..62d3056 --- /dev/null +++ b/test/expected/test_sql.sh_c17933125df910588b806a9d07c2655bc71198ef.out @@ -0,0 +1,6 @@ +log_line,log_time,log_level,bro_ts,bro_uid,bro_id_orig_h,bro_id_orig_p,bro_id_resp_h,bro_id_resp_p,bro_trans_depth,bro_method,bro_host,bro_uri,bro_referrer,bro_version,bro_user_agent,bro_request_body_len,bro_response_body_len,bro_status_code,bro_status_msg,bro_info_code,bro_info_msg,bro_tags,bro_username,bro_password,bro_proxied,bro_orig_fuids,bro_orig_filenames,bro_orig_mime_types,bro_resp_fuids,bro_resp_filenames,bro_resp_mime_types,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +0,2011-11-03 00:19:26.452,info,1320279566.452687,CwFs1P2UcUdlSxD2La,192.168.2.76,52026,132.235.215.119,80,1,GET,www.reddit.com,/,<NULL>,1.1,Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1,0,109978,200,OK,<NULL>,<NULL>,,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,Ftw3fJ2JJF3ntMTL2,<NULL>,text/html,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +1,2011-11-03 00:19:26.831,info,1320279566.831619,CJxSUgkInyKSHiju1,192.168.2.76,52030,72.21.211.173,80,1,GET,e.thumbs.redditmedia.com,/E-pbDbmiBclPkDaX.jpg,http://www.reddit.com/,1.1,Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1,0,2300,200,OK,<NULL>,<NULL>,,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,FFTf9Zdgk3YkfCKo3,<NULL>,image/jpeg,<NULL>,379,0,<NULL>,<NULL>,<NULL>,<NULL> +2,2011-11-03 00:19:26.831,info,1320279566.831563,CJwUi9bdB9c1lLW44,192.168.2.76,52029,72.21.211.173,80,1,GET,f.thumbs.redditmedia.com,/BP5bQfy4o-C7cF6A.jpg,http://www.reddit.com/,1.1,Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1,0,2272,200,OK,<NULL>,<NULL>,,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,FfXtOj3o7aub4vbs2j,<NULL>,image/jpeg,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +3,2011-11-03 00:19:26.831,info,1320279566.831473,CoX7zA3OJKGUOSCBY2,192.168.2.76,52027,72.21.211.173,80,1,GET,e.thumbs.redditmedia.com,/SVUtep3Rhg5FTRn4.jpg,http://www.reddit.com/,1.1,Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1,0,2562,200,OK,<NULL>,<NULL>,,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,F21Ybs3PTqS6O4Q2Zh,<NULL>,image/jpeg,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +4,2011-11-03 00:19:26.831,info,1320279566.831643,CT0JIh479jXIGt0Po1,192.168.2.76,52031,72.21.211.173,80,1,GET,f.thumbs.redditmedia.com,/uuy31444rLSyKdHS.jpg,http://www.reddit.com/,1.1,Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:7.0.1) Gecko/20100101 Firefox/7.0.1,0,1595,200,OK,<NULL>,<NULL>,,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,<NULL>,Fdk0MZ1wQmKWAJ4WH4,<NULL>,image/jpeg,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_sql.sh_c353ef036c505b75996252138fbd4c8d22e8149c.out b/test/expected/test_sql.sh_c353ef036c505b75996252138fbd4c8d22e8149c.out index b21f574..c5c0c0e 100644 --- a/test/expected/test_sql.sh_c353ef036c505b75996252138fbd4c8d22e8149c.out +++ b/test/expected/test_sql.sh_c353ef036c505b75996252138fbd4c8d22e8149c.out @@ -1,4 +1,4 @@ -[1m[4m log_time [0m +[1m[4m log_time [0m[1m[4m [0m 2009-07-20 22:59:26.000 2009-07-20 22:59:29.000 -2009-07-20 22:59:29.000 +[1m2009-07-20 22:59:29.000 [0m diff --git a/test/expected/test_sql.sh_c5b8da04734fadf3b9eea80e0af997e38e0fb811.out b/test/expected/test_sql.sh_c5b8da04734fadf3b9eea80e0af997e38e0fb811.out index 86a4d5a..54fad85 100644 --- a/test/expected/test_sql.sh_c5b8da04734fadf3b9eea80e0af997e38e0fb811.out +++ b/test/expected/test_sql.sh_c5b8da04734fadf3b9eea80e0af997e38e0fb811.out @@ -1,3 +1,3 @@ -[1m[4mlog_line [0m[1m[4m col_0 [0m -[1m 0[0m[1m [0m[1meth0.IPv4 [0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m col_0 [0m[1m[4m [0m + 0 eth0.IPv4 7 eth0.IPv4 diff --git a/test/expected/test_sql.sh_c7e1dbf4605914720b55787785abfafdf2c4178a.out b/test/expected/test_sql.sh_c7e1dbf4605914720b55787785abfafdf2c4178a.out index 762b09c..f3306ab 100644 --- a/test/expected/test_sql.sh_c7e1dbf4605914720b55787785abfafdf2c4178a.out +++ b/test/expected/test_sql.sh_c7e1dbf4605914720b55787785abfafdf2c4178a.out @@ -1,2 +1,2 @@ -[1m[4m log_top_datetime() [0m +[1m[4m log_top_datetime() [0m[1m[4m [0m 2016-03-13 22:49:15.000 diff --git a/test/expected/test_sql.sh_d4d540f0ef7e34b693fc72078d1cf2e069f86d81.err b/test/expected/test_sql.sh_d4d540f0ef7e34b693fc72078d1cf2e069f86d81.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_d4d540f0ef7e34b693fc72078d1cf2e069f86d81.err diff --git a/test/expected/test_sql.sh_d4d540f0ef7e34b693fc72078d1cf2e069f86d81.out b/test/expected/test_sql.sh_d4d540f0ef7e34b693fc72078d1cf2e069f86d81.out new file mode 100644 index 0000000..6d2a99a --- /dev/null +++ b/test/expected/test_sql.sh_d4d540f0ef7e34b693fc72078d1cf2e069f86d81.out @@ -0,0 +1,4 @@ +[1m[4m[7m total [0m[1m[4m [0m[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mduration[0m[1m[4m [0m[1m[4mlog_formats[0m[1m[4m [0m[1m[4m log_msg_format [0m[1m[4m [0m +[1m[7m 2[0m 0 2007-04-28 06:53:55.000 syslog_log New relevant interface # for # +[1m[7m 2[0m 1 2007-04-28 06:53:55.000 syslog_log Joining # multicast group on interface # with address # +[1m[7m 2[0m[1m [0m[1m 2[0m[1m [0m[1m2007-04-28 06:53:55.000[0m[1m [0m[1m [0m[1m [0m[1msyslog_log [0m[1m [0m[1mRegistering new address record for # on # [0m diff --git a/test/expected/test_sql.sh_dd540973a0dc86320d84706845a15608196ae5be.err b/test/expected/test_sql.sh_dd540973a0dc86320d84706845a15608196ae5be.err index c7ee159..a179b11 100644 --- a/test/expected/test_sql.sh_dd540973a0dc86320d84706845a15608196ae5be.err +++ b/test/expected/test_sql.sh_dd540973a0dc86320d84706845a15608196ae5be.err @@ -1,5 +1,4 @@ -[1m[31m✘ error[0m: call to [1m[4mraise_error[0m[4m([0m[4mmsg[0m[4m)[0m failed - [1m[31mreason[0m: oops! +[1m[31m✘ error[0m: oops! [36m --> [0m[1mcommand-option[0m:2 [36m | [0m[37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[37m[40m$inum[0m[37m[40m, [0m[37m[40m$nul[0m[37m[40m, [0m[37m[40m$fnum[0m[37m[40m, [0m[37m[40m$str[0m[37m[40m, [0m[1m[37m[40mraise_error[0m[37m[40m([0m[35m[40m'oops!'[0m[37m[40m)[0m [36m =[0m [36mnote[0m: the bound parameters are set as follows: diff --git a/test/expected/test_sql.sh_e44c0e2834038ec8d9b0b10b993967edb711c03c.err b/test/expected/test_sql.sh_e44c0e2834038ec8d9b0b10b993967edb711c03c.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_e44c0e2834038ec8d9b0b10b993967edb711c03c.err diff --git a/test/expected/test_sql.sh_e44c0e2834038ec8d9b0b10b993967edb711c03c.out b/test/expected/test_sql.sh_e44c0e2834038ec8d9b0b10b993967edb711c03c.out new file mode 100644 index 0000000..ab55ad7 --- /dev/null +++ b/test/expected/test_sql.sh_e44c0e2834038ec8d9b0b10b993967edb711c03c.out @@ -0,0 +1,11 @@ +duration,bro_uid,req +116.438679,CwFs1P2UcUdlSxD2La,GET www.reddit.com +115.202498,CdZUPH2DKOE7zzCLE3,GET feeds.bbci.co.uk +115.121914,CdrfXZ1NOFPEawF218,GET c.thumbs.redditmedia.com +115.121837,CoX7zA3OJKGUOSCBY2,GET e.thumbs.redditmedia.com +115.12181,CJxSUgkInyKSHiju1,GET e.thumbs.redditmedia.com +115.121506,CT0JIh479jXIGt0Po1,GET f.thumbs.redditmedia.com +115.121339,CJwUi9bdB9c1lLW44,GET f.thumbs.redditmedia.com +115.119217,C6Q4Vm14ZJIlZhsXqk,GET a.thumbs.redditmedia.com +72.274459,CbNCgO1MzloHRNeY4f,GET www.google.com +71.658218,CnGze54kQWWpKqrrZ4,GET ajax.googleapis.com diff --git a/test/expected/test_sql.sh_ef3cecab4ae0b90760f728add5652378e26b2fe6.err b/test/expected/test_sql.sh_ef3cecab4ae0b90760f728add5652378e26b2fe6.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_ef3cecab4ae0b90760f728add5652378e26b2fe6.err diff --git a/test/expected/test_sql.sh_ef3cecab4ae0b90760f728add5652378e26b2fe6.out b/test/expected/test_sql.sh_ef3cecab4ae0b90760f728add5652378e26b2fe6.out new file mode 100644 index 0000000..c0c942f --- /dev/null +++ b/test/expected/test_sql.sh_ef3cecab4ae0b90760f728add5652378e26b2fe6.out @@ -0,0 +1,2 @@ +log_line,log_time,log_level,c_ip,cs_method,cs_referer,cs_uri_query,cs_uri_stem,cs_user_agent,cs_username,cs_version,sc_bytes,sc_status,cs_host,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +1,2009-07-20 22:59:29.000,error,192.168.202.254,GET,-,<NULL>,/vmw/vSphere/default/vmkboot.gz,gPXE/0.9.7,-,HTTP/1.0,46210,404,<NULL>,<NULL>,3000,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_sql.sh_fea98f976873ee7b55e6f322dda42719a19fb3f0.err b/test/expected/test_sql.sh_fea98f976873ee7b55e6f322dda42719a19fb3f0.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_fea98f976873ee7b55e6f322dda42719a19fb3f0.err diff --git a/test/expected/test_sql.sh_fea98f976873ee7b55e6f322dda42719a19fb3f0.out b/test/expected/test_sql.sh_fea98f976873ee7b55e6f322dda42719a19fb3f0.out new file mode 100644 index 0000000..8307aba --- /dev/null +++ b/test/expected/test_sql.sh_fea98f976873ee7b55e6f322dda42719a19fb3f0.out @@ -0,0 +1,2 @@ +[1m[4mlog_top_line()[0m[1m[4m [0m[1m[4mlog_msg_line()[0m[1m[4m [0m + <NULL> <NULL> diff --git a/test/expected/test_sql.sh_ffbc3dbf8464455358a77acffa10a8dd8a080374.err b/test/expected/test_sql.sh_ffbc3dbf8464455358a77acffa10a8dd8a080374.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql.sh_ffbc3dbf8464455358a77acffa10a8dd8a080374.err diff --git a/test/expected/test_sql.sh_ffbc3dbf8464455358a77acffa10a8dd8a080374.out b/test/expected/test_sql.sh_ffbc3dbf8464455358a77acffa10a8dd8a080374.out new file mode 100644 index 0000000..b67d10f --- /dev/null +++ b/test/expected/test_sql.sh_ffbc3dbf8464455358a77acffa10a8dd8a080374.out @@ -0,0 +1,4 @@ +log_line,log_time,log_level,c_ip,cs_method,cs_referer,cs_uri_query,cs_uri_stem,cs_user_agent,cs_username,cs_version,sc_bytes,sc_status,cs_host,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters +0,2009-07-20 22:59:26.000,info,192.168.202.254,GET,-,<NULL>,/vmw/cgi/tramp,gPXE/0.9.7,-,HTTP/1.0,134,200,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> +1,2009-07-20 22:59:29.000,error,192.168.202.254,GET,-,<NULL>,/vmw/vSphere/default/vmkboot.gz,gPXE/0.9.7,-,HTTP/1.0,46210,404,<NULL>,<NULL>,3000,0,<NULL>,<NULL>,<NULL>,<NULL> +2,2009-07-20 22:59:29.000,info,192.168.202.254,GET,-,<NULL>,/vmw/vSphere/default/vmkernel.gz,gPXE/0.9.7,-,HTTP/1.0,78929,200,<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL> diff --git a/test/expected/test_sql_anno.sh_1398146cf8b4f074ec8b9752f021cf47d011bebc.err b/test/expected/test_sql_anno.sh_1398146cf8b4f074ec8b9752f021cf47d011bebc.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_anno.sh_1398146cf8b4f074ec8b9752f021cf47d011bebc.err diff --git a/test/expected/test_sql_anno.sh_1398146cf8b4f074ec8b9752f021cf47d011bebc.out b/test/expected/test_sql_anno.sh_1398146cf8b4f074ec8b9752f021cf47d011bebc.out new file mode 100644 index 0000000..7d0d083 --- /dev/null +++ b/test/expected/test_sql_anno.sh_1398146cf8b4f074ec8b9752f021cf47d011bebc.out @@ -0,0 +1,9 @@ + SELECT json_object('abc', 'def') ->> '$.abc' + sql_keyword ------ + sql_func ------------------------ + sql_ident ----------- + sql_string ----- + sql_comma - + sql_string ----- + sql_oper --- + sql_string ------- diff --git a/test/expected/test_sql_anno.sh_de46094b6e005285dc0921ef9979e36240c5042d.err b/test/expected/test_sql_anno.sh_de46094b6e005285dc0921ef9979e36240c5042d.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_anno.sh_de46094b6e005285dc0921ef9979e36240c5042d.err diff --git a/test/expected/test_sql_anno.sh_de46094b6e005285dc0921ef9979e36240c5042d.out b/test/expected/test_sql_anno.sh_de46094b6e005285dc0921ef9979e36240c5042d.out new file mode 100644 index 0000000..0dd8902 --- /dev/null +++ b/test/expected/test_sql_anno.sh_de46094b6e005285dc0921ef9979e36240c5042d.out @@ -0,0 +1,7 @@ + SELECT 0x77, 123, 123e4 + sql_keyword ------ + sql_number ---- + sql_comma - + sql_number --- + sql_comma - + sql_number ----- diff --git a/test/expected/test_sql_anno.sh_e7dae4ba18c42c416ed03afd8819200f63e89ac8.err b/test/expected/test_sql_anno.sh_e7dae4ba18c42c416ed03afd8819200f63e89ac8.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_anno.sh_e7dae4ba18c42c416ed03afd8819200f63e89ac8.err diff --git a/test/expected/test_sql_anno.sh_e7dae4ba18c42c416ed03afd8819200f63e89ac8.out b/test/expected/test_sql_anno.sh_e7dae4ba18c42c416ed03afd8819200f63e89ac8.out new file mode 100644 index 0000000..fa79088 --- /dev/null +++ b/test/expected/test_sql_anno.sh_e7dae4ba18c42c416ed03afd8819200f63e89ac8.out @@ -0,0 +1,17 @@ + from access_log | filter cs_method == 'GET' || cs_method == 'PUT' + prql_stage ---------------- + prql_transform ---- + prql_ident ---------- + prql_fqid ---------- + prql_stage ------------------------------------------------- + prql_pipe - + prql_transform ------ + prql_ident --------- + prql_fqid --------- + prql_oper -- + prql_string ----- + prql_oper -- + prql_ident --------- + prql_fqid --------- + prql_oper -- + prql_string ----- diff --git a/test/expected/test_sql_fs_func.sh_2aa83fc90c850cdd11e3136a1a02b79c5879824b.err b/test/expected/test_sql_fs_func.sh_2aa83fc90c850cdd11e3136a1a02b79c5879824b.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_fs_func.sh_2aa83fc90c850cdd11e3136a1a02b79c5879824b.err diff --git a/test/expected/test_sql_fs_func.sh_2aa83fc90c850cdd11e3136a1a02b79c5879824b.out b/test/expected/test_sql_fs_func.sh_2aa83fc90c850cdd11e3136a1a02b79c5879824b.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_fs_func.sh_2aa83fc90c850cdd11e3136a1a02b79c5879824b.out diff --git a/test/expected/test_sql_fs_func.sh_34baa8050f8278d7b68c29e53bdd9f37da0f34c8.err b/test/expected/test_sql_fs_func.sh_34baa8050f8278d7b68c29e53bdd9f37da0f34c8.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_fs_func.sh_34baa8050f8278d7b68c29e53bdd9f37da0f34c8.err diff --git a/test/expected/test_sql_fs_func.sh_34baa8050f8278d7b68c29e53bdd9f37da0f34c8.out b/test/expected/test_sql_fs_func.sh_34baa8050f8278d7b68c29e53bdd9f37da0f34c8.out new file mode 100644 index 0000000..f5e1ef9 --- /dev/null +++ b/test/expected/test_sql_fs_func.sh_34baa8050f8278d7b68c29e53bdd9f37da0f34c8.out @@ -0,0 +1,2 @@ +shell_exec('echo hi') + hi␊ diff --git a/test/expected/test_sql_fs_func.sh_9234a453403934587bbbdde355281a956d1fbe5f.err b/test/expected/test_sql_fs_func.sh_9234a453403934587bbbdde355281a956d1fbe5f.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_fs_func.sh_9234a453403934587bbbdde355281a956d1fbe5f.err diff --git a/test/expected/test_sql_fs_func.sh_9234a453403934587bbbdde355281a956d1fbe5f.out b/test/expected/test_sql_fs_func.sh_9234a453403934587bbbdde355281a956d1fbe5f.out new file mode 100644 index 0000000..2329234 --- /dev/null +++ b/test/expected/test_sql_fs_func.sh_9234a453403934587bbbdde355281a956d1fbe5f.out @@ -0,0 +1,2 @@ +st_parent st_name st_dev st_ino st_type st_mode st_nlink st_uid st_user st_gid st_group st_rdev st_size st_blksize st_blocks st_atime st_mtime st_ctime error +/ non-existent <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> <NULL> No such file or directory diff --git a/test/expected/test_sql_fs_func.sh_9e2c0a90ce333365ff7354375f2c609bc27135c8.err b/test/expected/test_sql_fs_func.sh_9e2c0a90ce333365ff7354375f2c609bc27135c8.err index c8a3fd0..cac88c8 100644 --- a/test/expected/test_sql_fs_func.sh_9e2c0a90ce333365ff7354375f2c609bc27135c8.err +++ b/test/expected/test_sql_fs_func.sh_9e2c0a90ce333365ff7354375f2c609bc27135c8.err @@ -1 +1 @@ -error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to readlink(path) failed","attrs":[{"start":8,"end":16,"type":"role","value":47},{"start":17,"end":21,"type":"role","value":46},{"start":8,"end":22,"type":"role","value":60}]},"reason":{"str":"unable to stat path: non-existent-link -- No such file or directory","attrs":[]},"snippets":[],"help":{"str":"","attrs":[]}} +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to readlink(path) failed","attrs":[{"start":8,"end":16,"type":"role","value":49},{"start":17,"end":21,"type":"role","value":48},{"start":8,"end":22,"type":"role","value":65}]},"reason":{"str":"unable to stat path: non-existent-link -- No such file or directory","attrs":[]},"snippets":[],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_fs_func.sh_cf670dfa1ae7ac5a074baa642068c6d26ac8e096.err b/test/expected/test_sql_fs_func.sh_cf670dfa1ae7ac5a074baa642068c6d26ac8e096.err index aa68134..fdc556a 100644 --- a/test/expected/test_sql_fs_func.sh_cf670dfa1ae7ac5a074baa642068c6d26ac8e096.err +++ b/test/expected/test_sql_fs_func.sh_cf670dfa1ae7ac5a074baa642068c6d26ac8e096.err @@ -1 +1 @@ -error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to realpath(path) failed","attrs":[{"start":8,"end":16,"type":"role","value":47},{"start":17,"end":21,"type":"role","value":46},{"start":8,"end":22,"type":"role","value":60}]},"reason":{"str":"Could not get real path for non-existent-path -- No such file or directory","attrs":[]},"snippets":[],"help":{"str":"","attrs":[]}} +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to realpath(path) failed","attrs":[{"start":8,"end":16,"type":"role","value":49},{"start":17,"end":21,"type":"role","value":48},{"start":8,"end":22,"type":"role","value":65}]},"reason":{"str":"Could not get real path for non-existent-path -- No such file or directory","attrs":[]},"snippets":[],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_indexes.sh_1614ebb5e2e83bab11023354dea8a0885ddf64b4.out b/test/expected/test_sql_indexes.sh_1614ebb5e2e83bab11023354dea8a0885ddf64b4.out index 7179021..f16755c 100644 --- a/test/expected/test_sql_indexes.sh_1614ebb5e2e83bab11023354dea8a0885ddf64b4.out +++ b/test/expected/test_sql_indexes.sh_1614ebb5e2e83bab11023354dea8a0885ddf64b4.out @@ -1,3 +1,3 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4mlog_msg_format [0m -[1m[7m [0m[1m 1[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2009-07-20 22:59:29.000[0m[1m [0m[1m 3000[0m[1m [0m[1merror [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m [0m -[7m 3[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2013-02-15 06:00:31.000[0m[7m [0m[7m 112777262000[0m[7m [0m[7merror [0m[7m [0m[7m 0[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m [0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4mlog_msg_format[0m[1m[4m [0m[1m[4mlog_msg_values[0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m + 1 2009-07-20 22:59:29.000 error null <NULL> [1m[7m [0m[1m 3000[0m 0 <NULL> <NULL> <NULL> <NULL> + 3 2013-02-15 06:00:31.000 error null <NULL> [1m[7m 112777262000[0m 0 <NULL> <NULL> <NULL> <NULL> diff --git a/test/expected/test_sql_indexes.sh_2b4945247332d01b08e6f17340f7d17f3b3649b8.err b/test/expected/test_sql_indexes.sh_2b4945247332d01b08e6f17340f7d17f3b3649b8.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_indexes.sh_2b4945247332d01b08e6f17340f7d17f3b3649b8.err diff --git a/test/expected/test_sql_indexes.sh_2b4945247332d01b08e6f17340f7d17f3b3649b8.out b/test/expected/test_sql_indexes.sh_2b4945247332d01b08e6f17340f7d17f3b3649b8.out new file mode 100644 index 0000000..240259b --- /dev/null +++ b/test/expected/test_sql_indexes.sh_2b4945247332d01b08e6f17340f7d17f3b3649b8.out @@ -0,0 +1,5 @@ +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4mlog_msg_format[0m[1m[4m [0m[1m[4mlog_msg_values[0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m + 0 2009-07-20 22:59:26.000 info null <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> + 1 2009-07-20 22:59:29.000 error null <NULL> [1m[7m [0m[1m 3000[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 2[0m[1m [0m[1m2009-07-20 22:59:29.000[0m[1m [0m[1minfo [0m[1m [0m[1m [0m[1m [0m[1mnull [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m +[1m 3[0m[1m [0m[1m2013-02-15 06:00:31.000[0m[1m [0m[1merror [0m[1m [0m[1m [0m[1m [0m[1mnull [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 112777262000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m diff --git a/test/expected/test_sql_indexes.sh_541a8e35f34a206e340a3880128b6ce137847872.out b/test/expected/test_sql_indexes.sh_541a8e35f34a206e340a3880128b6ce137847872.out index 5467779..a5e2a8e 100644 --- a/test/expected/test_sql_indexes.sh_541a8e35f34a206e340a3880128b6ce137847872.out +++ b/test/expected/test_sql_indexes.sh_541a8e35f34a206e340a3880128b6ce137847872.out @@ -1,5 +1,5 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4m c_ip [0m[1m[4mcs_method [0m[1m[4mcs_referer [0m[1m[4mcs_uri_query [0m[1m[4m cs_uri_stem [0m[1m[4mcs_user_agent [0m[1m[4mcs_username [0m[1m[4mcs_version [0m[1m[4m[7msc_bytes [0m[1m[4msc_status [0m[1m[4mcs_host [0m[1m[4m log_unique_path [0m -[1m[7m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2009-07-20 22:59:26.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m192.168.202.254[0m[1m [0m[1mGET [0m[1m [0m[1m- [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m/vmw/cgi/tramp [0m[1m [0m[1mgPXE/0.9.7 [0m[1m [0m[1m- [0m[1m [0m[1mHTTP/1.0 [0m[1m [0m[1m 134[0m[1m [0m[1m 200[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1mlogfile_access_log.0 [0m -[7m [0m[7m [0m 1 <NULL> 2009-07-20 22:59:29.000 3000 error 0 <NULL> <NULL> <NULL> 192.168.202.254 GET - <NULL> /vmw/vSphere/default/vmkboot.gz gPXE/0.9.7 - HTTP/1.0 46210 404 <NULL> logfile_access_log.0 -[1m[7m [0m[1m 2[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2009-07-20 22:59:29.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m192.168.202.254[0m[1m [0m[1mGET [0m[1m [0m[1m- [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m/vmw/vSphere/default/vmkernel.gz[0m[1m [0m[1mgPXE/0.9.7 [0m[1m [0m[1m- [0m[1m [0m[1mHTTP/1.0 [0m[1m [0m[1m 78929[0m[1m [0m[1m 200[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1mlogfile_access_log.0 [0m -[7m 3[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2013-02-15 06:00:31.000[0m[7m [0m[7m 112777262000[0m[7m [0m[7merror [0m[7m [0m[7m 0[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m10.112.81.15 [0m[7m [0m[7m<NULL> [0m[7m [0m[7m- [0m[7m [0m[7m <NULL>[0m[7m [0m[7m<NULL> [0m[7m [0m[7m- [0m[7m [0m[7m- [0m[7m [0m[7m<NULL> [0m[7m [0m[7m 0[0m[7m [0m[7m 400[0m[7m [0m[7m <NULL>[0m[7m [0m[7mlogfile_access_log.[0m1 +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4m c_ip [0m[1m[4m [0m[1m[4mcs_method[0m[1m[4m [0m[1m[4mcs_referer[0m[1m[4m [0m[1m[4mcs_uri_query[0m[1m[4m [0m[1m[4m cs_uri_stem [0m[1m[4m [0m[1m[4mcs_user_agent[0m[1m[4m [0m[1m[4mcs_username[0m[1m[4m [0m[1m[4mcs_version[0m[1m[4m [0m[1m[4m[7m sc_bytes [0m[1m[4m [0m[1m[4msc_status[0m[1m[4m [0m[1m[4mcs_host[0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m[1m[4m log_unique_path [0m[1m[4m [0m + 0 2009-07-20 22:59:26.000 info 192.168.202.254 GET - <NULL> /vmw/cgi/tramp gPXE/0.9.7 - HTTP/1.0 [1m[7m [0m[1m 134[0m 200 <NULL> <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> logfile_access_log.0 + 1 2009-07-20 22:59:29.000 error 192.168.202.254 GET - <NULL> /vmw/vSphere/default/vmkboot.gz gPXE/0.9.7 - HTTP/1.0 [1m[7m 4[0m[1m6210[0m 404 <NULL> <NULL> [1m[7m [0m[1m 3000[0m 0 <NULL> <NULL> <NULL> <NULL> logfile_access_log.0 +[1m 2[0m[1m [0m[1m2009-07-20 22:59:29.000[0m[1m [0m[1minfo [0m[1m [0m[1m192.168.202.254[0m[1m [0m[1mGET [0m[1m [0m[1m- [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m/vmw/vSphere/default/vmkernel.gz[0m[1m [0m[1mgPXE/0.9.7 [0m[1m [0m[1m- [0m[1m [0m[1mHTTP/1.0 [0m[1m [0m[1m[7m 78929[0m[1m [0m[1m 200[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1mlogfile_access_log.0 [0m +[1m 3[0m[1m [0m[1m2013-02-15 06:00:31.000[0m[1m [0m[1merror [0m[1m [0m[1m10.112.81.15[0m[1m [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m- [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m- [0m[1m [0m[1m- [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m 0[0m[1m [0m[1m 400[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 112777262000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1mlogfile_access_log.1 [0m diff --git a/test/expected/test_sql_indexes.sh_59a1497c13a5e09bc8f95ef02552b2835ebea6e5.out b/test/expected/test_sql_indexes.sh_59a1497c13a5e09bc8f95ef02552b2835ebea6e5.out index 823c4d0..5c73e94 100644 --- a/test/expected/test_sql_indexes.sh_59a1497c13a5e09bc8f95ef02552b2835ebea6e5.out +++ b/test/expected/test_sql_indexes.sh_59a1497c13a5e09bc8f95ef02552b2835ebea6e5.out @@ -1,2 +1,2 @@ -[1m[4m[7m$id [0m[1m[4m[7m$parent [0m[1m[4m[7m$notused [0m[1m[4m replace($detail, 'SCAN TABLE', 'SCAN') [0m -[1m[7m 2[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7mSCAN all_logs VIRTUAL TABLE INDEX 1:SEARCH all_logs USING log_level <[0m[1m ? [0m +[1m[4m$id[0m[1m[4m [0m[1m[4m[7m $parent [0m[1m[4m [0m[1m[4m[7m $notused [0m[1m[4m [0m[1m[4m replace($detail, 'SCAN TABLE', 'SCAN') [0m[1m[4m [0m + 2 [1m 0[0m [1m 0[0m SCAN all_logs VIRTUAL TABLE INDEX 1:SEARCH all_logs USING log_level < ? diff --git a/test/expected/test_sql_indexes.sh_69fd19d56a8cd1fc9c7eb9351270eabb491f8233.out b/test/expected/test_sql_indexes.sh_69fd19d56a8cd1fc9c7eb9351270eabb491f8233.out index cb2aac6..c44444c 100644 --- a/test/expected/test_sql_indexes.sh_69fd19d56a8cd1fc9c7eb9351270eabb491f8233.out +++ b/test/expected/test_sql_indexes.sh_69fd19d56a8cd1fc9c7eb9351270eabb491f8233.out @@ -1,5 +1,5 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4mlog_msg_format [0m[1m[4mlog_format [0m -[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2009-07-20 22:59:26.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m [0m[1m [0m[1maccess_log [0m -[7m [0m 1 <NULL> 2009-07-20 22:59:29.000 3000 error 0 <NULL> <NULL> <NULL> access_log -[1m 2[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2009-07-20 22:59:29.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m [0m[1m [0m[1maccess_log [0m -[7m 3[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2013-02-15 06:00:31.000[0m[7m [0m[7m 112777262000[0m[7m [0m[7merror [0m[7m [0m[7m 0[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m [0m[7m [0m[7maccess_log[0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4mlog_msg_format[0m[1m[4m [0m[1m[4mlog_msg_values[0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m[1m[4mlog_format[0m[1m[4m [0m + 0 2009-07-20 22:59:26.000 info null <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> access_log + 1 2009-07-20 22:59:29.000 error null <NULL> [1m[7m [0m[1m 3000[0m 0 <NULL> <NULL> <NULL> <NULL> access_log +[1m 2[0m[1m [0m[1m2009-07-20 22:59:29.000[0m[1m [0m[1minfo [0m[1m [0m[1m [0m[1m [0m[1mnull [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1maccess_log [0m +[1m 3[0m[1m [0m[1m2013-02-15 06:00:31.000[0m[1m [0m[1merror [0m[1m [0m[1m [0m[1m [0m[1mnull [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 112777262000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1maccess_log [0m diff --git a/test/expected/test_sql_indexes.sh_6f707b6e856dbaab6f95e7e89b98dc3652021f85.out b/test/expected/test_sql_indexes.sh_6f707b6e856dbaab6f95e7e89b98dc3652021f85.out index ee48805..8e21b1b 100644 --- a/test/expected/test_sql_indexes.sh_6f707b6e856dbaab6f95e7e89b98dc3652021f85.out +++ b/test/expected/test_sql_indexes.sh_6f707b6e856dbaab6f95e7e89b98dc3652021f85.out @@ -1,3 +1,3 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4mlog_msg_format [0m -[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2009-07-20 22:59:26.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m [0m - 2 <NULL> 2009-07-20 22:59:29.000 0 info 0 <NULL> <NULL> <NULL> +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4mlog_msg_format[0m[1m[4m [0m[1m[4mlog_msg_values[0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m + 0 2009-07-20 22:59:26.000 info null <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> + 2 2009-07-20 22:59:29.000 info null <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> diff --git a/test/expected/test_sql_indexes.sh_b615b6737b1e0d383c8ce4a1db56332f11dbc158.out b/test/expected/test_sql_indexes.sh_b615b6737b1e0d383c8ce4a1db56332f11dbc158.out index 2a91985..f56f904 100644 --- a/test/expected/test_sql_indexes.sh_b615b6737b1e0d383c8ce4a1db56332f11dbc158.out +++ b/test/expected/test_sql_indexes.sh_b615b6737b1e0d383c8ce4a1db56332f11dbc158.out @@ -1,2 +1,2 @@ -[1m[4m[7m$id [0m[1m[4m[7m$parent [0m[1m[4m[7m$notused [0m[1m[4m replace($detail, 'SCAN TABLE', 'SCAN') [0m -[1m[7m 2[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7mSCAN all_logs VIRTUAL TABLE INDEX 1:SEARCH all_logs USING log_format =[0m[1m ? [0m +[1m[4m$id[0m[1m[4m [0m[1m[4m[7m $parent [0m[1m[4m [0m[1m[4m[7m $notused [0m[1m[4m [0m[1m[4m replace($detail, 'SCAN TABLE', 'SCAN') [0m[1m[4m [0m + 2 [1m 0[0m [1m 0[0m SCAN all_logs VIRTUAL TABLE INDEX 1:SEARCH all_logs USING log_format = ? diff --git a/test/expected/test_sql_indexes.sh_dab07d8de7728752ae938a174468d75e85f3ae7e.out b/test/expected/test_sql_indexes.sh_dab07d8de7728752ae938a174468d75e85f3ae7e.out index 82958af..7d20aa3 100644 --- a/test/expected/test_sql_indexes.sh_dab07d8de7728752ae938a174468d75e85f3ae7e.out +++ b/test/expected/test_sql_indexes.sh_dab07d8de7728752ae938a174468d75e85f3ae7e.out @@ -1,2 +1,2 @@ -[1m[4m[7m$id [0m[1m[4m[7m$parent [0m[1m[4m[7m$notused [0m[1m[4m replace($detail, 'SCAN TABLE', 'SCAN') [0m -[1m[7m 2[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7mSCAN access_log VIRTUAL TABLE INDEX 1:SEARCH access_log USING log_path GLOB[0m[1m ? [0m +[1m[4m$id[0m[1m[4m [0m[1m[4m[7m $parent [0m[1m[4m [0m[1m[4m[7m $notused [0m[1m[4m [0m[1m[4m replace($detail, 'SCAN TABLE', 'SCAN') [0m[1m[4m [0m + 2 [1m 0[0m [1m 0[0m SCAN access_log VIRTUAL TABLE INDEX 1:SEARCH access_log USING log_path GLOB ? diff --git a/test/expected/test_sql_indexes.sh_f7681c234d4f60df16c997a05163aeb058c52870.out b/test/expected/test_sql_indexes.sh_f7681c234d4f60df16c997a05163aeb058c52870.out index 16c7c37..240259b 100644 --- a/test/expected/test_sql_indexes.sh_f7681c234d4f60df16c997a05163aeb058c52870.out +++ b/test/expected/test_sql_indexes.sh_f7681c234d4f60df16c997a05163aeb058c52870.out @@ -1,5 +1,5 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4mlog_msg_format [0m -[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2009-07-20 22:59:26.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m [0m -[7m [0m 1 <NULL> 2009-07-20 22:59:29.000 3000 error 0 <NULL> <NULL> <NULL> -[1m 2[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2009-07-20 22:59:29.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m [0m -[7m 3[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2013-02-15 06:00:31.000[0m[7m [0m[7m 112777262000[0m[7m [0m[7merror [0m[7m [0m[7m 0[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m [0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4mlog_msg_format[0m[1m[4m [0m[1m[4mlog_msg_values[0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m + 0 2009-07-20 22:59:26.000 info null <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> + 1 2009-07-20 22:59:29.000 error null <NULL> [1m[7m [0m[1m 3000[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 2[0m[1m [0m[1m2009-07-20 22:59:29.000[0m[1m [0m[1minfo [0m[1m [0m[1m [0m[1m [0m[1mnull [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m +[1m 3[0m[1m [0m[1m2013-02-15 06:00:31.000[0m[1m [0m[1merror [0m[1m [0m[1m [0m[1m [0m[1mnull [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 112777262000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m diff --git a/test/expected/test_sql_json_func.sh_026077f4d573ee034467065b7e4f1878bdd4e2f2.err b/test/expected/test_sql_json_func.sh_026077f4d573ee034467065b7e4f1878bdd4e2f2.err index 9654daa..84205dc 100644 --- a/test/expected/test_sql_json_func.sh_026077f4d573ee034467065b7e4f1878bdd4e2f2.err +++ b/test/expected/test_sql_json_func.sh_026077f4d573ee034467065b7e4f1878bdd4e2f2.err @@ -1,4 +1 @@ -error: sqlite3_exec failed -- parse error: premature EOF - [123, true - (right here) ------^ - +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"invalid JSON","attrs":[]},"reason":{"str":"parse error: premature EOF\n [123, true\n (right here) ------^","attrs":[]},"snippets":[],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_json_func.sh_5f2feef079a51410e1f8661bfe92da1c3277f665.err b/test/expected/test_sql_json_func.sh_5f2feef079a51410e1f8661bfe92da1c3277f665.err index f784e9c..99b48bc 100644 --- a/test/expected/test_sql_json_func.sh_5f2feef079a51410e1f8661bfe92da1c3277f665.err +++ b/test/expected/test_sql_json_func.sh_5f2feef079a51410e1f8661bfe92da1c3277f665.err @@ -1 +1 @@ -error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to json_contains(json, value) failed","attrs":[{"start":8,"end":21,"type":"role","value":47},{"start":22,"end":26,"type":"role","value":46},{"start":28,"end":33,"type":"role","value":46},{"start":8,"end":34,"type":"role","value":60}]},"reason":{"str":"parse error: premature EOF\n [\"hi\", \"bye\", \"solong]\n (right here) ------^","attrs":[]},"snippets":[],"help":{"str":"","attrs":[]}} +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to json_contains(json, value) failed","attrs":[{"start":8,"end":21,"type":"role","value":49},{"start":22,"end":26,"type":"role","value":48},{"start":28,"end":33,"type":"role","value":48},{"start":8,"end":34,"type":"role","value":65}]},"reason":{"str":"parse error: premature EOF\n [\"hi\", \"bye\", \"solong]\n (right here) ------^","attrs":[]},"snippets":[],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_json_func.sh_e0ab80f50fb008700ab6cfb90694ed014d40e44b.err b/test/expected/test_sql_json_func.sh_e0ab80f50fb008700ab6cfb90694ed014d40e44b.err index 456ef7a..6033ba4 100644 --- a/test/expected/test_sql_json_func.sh_e0ab80f50fb008700ab6cfb90694ed014d40e44b.err +++ b/test/expected/test_sql_json_func.sh_e0ab80f50fb008700ab6cfb90694ed014d40e44b.err @@ -1 +1 @@ -error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to json_concat(json, value, ...) failed","attrs":[{"start":8,"end":19,"type":"role","value":47},{"start":20,"end":24,"type":"role","value":46},{"start":26,"end":31,"type":"role","value":46},{"start":8,"end":37,"type":"role","value":60}]},"reason":{"str":"Invalid JSON: parse error: premature EOF\n [null,\n (right here) ------^","attrs":[]},"snippets":[],"help":{"str":"","attrs":[]}} +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to json_concat(json, value, ...) failed","attrs":[{"start":8,"end":19,"type":"role","value":49},{"start":20,"end":24,"type":"role","value":48},{"start":26,"end":31,"type":"role","value":48},{"start":8,"end":37,"type":"role","value":65}]},"reason":{"str":"Invalid JSON: parse error: premature EOF\n [null,\n (right here) ------^","attrs":[]},"snippets":[],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_json_func.sh_f34f5dfa938a1ac7721f924beb16bbceec127a1b.err b/test/expected/test_sql_json_func.sh_f34f5dfa938a1ac7721f924beb16bbceec127a1b.err index e8eef68..cffd039 100644 --- a/test/expected/test_sql_json_func.sh_f34f5dfa938a1ac7721f924beb16bbceec127a1b.err +++ b/test/expected/test_sql_json_func.sh_f34f5dfa938a1ac7721f924beb16bbceec127a1b.err @@ -1,4 +1 @@ -error: sqlite3_exec failed -- parse error: premature EOF - [null, true, 20, 30, 40 - (right here) ------^ - +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"invalid JSON","attrs":[]},"reason":{"str":"parse error: premature EOF\n [null, true, 20, 30, 40\n (right here) ------^","attrs":[]},"snippets":[],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_regexp.sh_02ef03572fd2bcf39bab8e29cf1c735ff7c3f297.err b/test/expected/test_sql_regexp.sh_02ef03572fd2bcf39bab8e29cf1c735ff7c3f297.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_regexp.sh_02ef03572fd2bcf39bab8e29cf1c735ff7c3f297.err diff --git a/test/expected/test_sql_regexp.sh_02ef03572fd2bcf39bab8e29cf1c735ff7c3f297.out b/test/expected/test_sql_regexp.sh_02ef03572fd2bcf39bab8e29cf1c735ff7c3f297.out new file mode 100644 index 0000000..8948203 --- /dev/null +++ b/test/expected/test_sql_regexp.sh_02ef03572fd2bcf39bab8e29cf1c735ff7c3f297.out @@ -0,0 +1,3 @@ +[1m[4mregexp_replace(cs_uri_query, '.*rapidView=(\d+).*', '\1')[0m[1m[4m [0m +1295 +1839 diff --git a/test/expected/test_sql_regexp.sh_03257c56e85558aa0cc925b68d3af962afc25125.out b/test/expected/test_sql_regexp.sh_03257c56e85558aa0cc925b68d3af962afc25125.out index 19aa1c4..5074519 100644 --- a/test/expected/test_sql_regexp.sh_03257c56e85558aa0cc925b68d3af962afc25125.out +++ b/test/expected/test_sql_regexp.sh_03257c56e85558aa0cc925b68d3af962afc25125.out @@ -1,4 +1,4 @@ -[1m[4mmatch_index [0m[1m[4mcapture_index [0m[1m[4mcapture_name [0m[1m[4mcapture_count [0m[1m[4mrange_start [0m[1m[4mrange_stop [0m[1m[4mcontent [0m -[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 3[0m[1m [0m[1m 1[0m[1m [0m[1m 9[0m[1m [0m[1mabc=def; [0m +[1m[4mmatch_index[0m[1m[4m [0m[1m[4mcapture_index[0m[1m[4m [0m[1m[4mcapture_name[0m[1m[4m [0m[1m[4mcapture_count[0m[1m[4m [0m[1m[4mrange_start[0m[1m[4m [0m[1m[4mrange_stop[0m[1m[4m [0m[1m[4mcontent [0m[1m[4m [0m + 0 0 <NULL> 3 1 9 abc=def; 0 1 <NULL> 3 1 4 abc [1m 0[0m[1m [0m[1m 2[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 3[0m[1m [0m[1m 5[0m[1m [0m[1m 8[0m[1m [0m[1mdef [0m diff --git a/test/expected/test_sql_regexp.sh_219a579cf7744fa08ab79fadd08b521b2f18a661.err b/test/expected/test_sql_regexp.sh_219a579cf7744fa08ab79fadd08b521b2f18a661.err new file mode 100644 index 0000000..824c120 --- /dev/null +++ b/test/expected/test_sql_regexp.sh_219a579cf7744fa08ab79fadd08b521b2f18a661.err @@ -0,0 +1,7 @@ +[1m[31m✘ error[0m: “^(” is not a valid regular expression + [1m[31mreason[0m: missing closing parenthesis +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mfrom[0m[37m[40m [0m[1m[37m[40mregexp_capture_into_json[0m[37m[40m([0m[35m[40m'abc=def;ghi=jkl;'[0m[37m[40m, [0m[35m[40m'^('[0m[37m[40m)[0m +[36m --> [0m[1mpattern[0m +[36m | [0m[1m[36m[40m^[0m[1m[7m[32m[40m([0m[37m[40m [0m +[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m[37m[40m [0m diff --git a/test/expected/test_sql_regexp.sh_219a579cf7744fa08ab79fadd08b521b2f18a661.out b/test/expected/test_sql_regexp.sh_219a579cf7744fa08ab79fadd08b521b2f18a661.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_regexp.sh_219a579cf7744fa08ab79fadd08b521b2f18a661.out diff --git a/test/expected/test_sql_regexp.sh_51293df041b6969ccecc60204dce3676d0fb006d.out b/test/expected/test_sql_regexp.sh_51293df041b6969ccecc60204dce3676d0fb006d.out index 4917183..dfdbb10 100644 --- a/test/expected/test_sql_regexp.sh_51293df041b6969ccecc60204dce3676d0fb006d.out +++ b/test/expected/test_sql_regexp.sh_51293df041b6969ccecc60204dce3676d0fb006d.out @@ -1,2 +1,2 @@ -[1m[4mmatch_index [0m[1m[4m content [0m -[1m[7m 0[0m[1m[7m [0m[1m[7m{"key":"foo","value":4670}[0m[1m [0m +[1m[4mmatch_index[0m[1m[4m [0m[1m[4m content [0m[1m[4m [0m + 0 [7m{"key":"foo","value":4670}[0m diff --git a/test/expected/test_sql_regexp.sh_a610798fefdacd8d0179a4b17cd757d00fb731be.err b/test/expected/test_sql_regexp.sh_a610798fefdacd8d0179a4b17cd757d00fb731be.err new file mode 100644 index 0000000..209f89e --- /dev/null +++ b/test/expected/test_sql_regexp.sh_a610798fefdacd8d0179a4b17cd757d00fb731be.err @@ -0,0 +1,7 @@ +[1m[31m✘ error[0m: “^(” is not a valid regular expression + [1m[31mreason[0m: missing closing parenthesis +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mfrom[0m[37m[40m [0m[1m[37m[40mregexp_capture[0m[37m[40m([0m[35m[40m'abc=def;ghi=jkl;'[0m[37m[40m, [0m[35m[40m'^('[0m[37m[40m)[0m +[36m --> [0m[1mpattern[0m +[36m | [0m[1m[36m[40m^[0m[1m[7m[32m[40m([0m[37m[40m [0m +[36m | [0m[37m[40m [0m[1m[31m[40m^ [0m[1m[31m[40mmissing closing parenthesis[0m[37m[40m [0m diff --git a/test/expected/test_sql_regexp.sh_a610798fefdacd8d0179a4b17cd757d00fb731be.out b/test/expected/test_sql_regexp.sh_a610798fefdacd8d0179a4b17cd757d00fb731be.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_regexp.sh_a610798fefdacd8d0179a4b17cd757d00fb731be.out diff --git a/test/expected/test_sql_regexp.sh_b841a0c09601e2419eeb99e85f7e286c889e4801.out b/test/expected/test_sql_regexp.sh_b841a0c09601e2419eeb99e85f7e286c889e4801.out index 78f05ff..8ce275a 100644 --- a/test/expected/test_sql_regexp.sh_b841a0c09601e2419eeb99e85f7e286c889e4801.out +++ b/test/expected/test_sql_regexp.sh_b841a0c09601e2419eeb99e85f7e286c889e4801.out @@ -1,27 +1,27 @@ -log_line,log_part,log_time,log_idle_msecs,log_level,log_mark,log_comment,log_tags,log_filters,log_hostname,log_msgid,log_pid,log_pri,log_procname,log_struct,log_syslog_tag,syslog_version,match_index,content -2,<NULL>,2022-08-16 00:32:15.000,199000,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,0,"{""value"":""com.apple.cdscheduler""}" -2,<NULL>,2022-08-16 00:32:15.000,199000,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,1,"{""value"":"" claims selected messages.\n\tThose messages may not appear in standard system log files or in the ASL database.""}" -5,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,0,"{""value"":""com.apple.install""}" -5,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,1,"{""value"":"" claims selected messages.\n\tThose messages may not appear in standard system log files or in the ASL database.""}" -8,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,0,"{""value"":""com.apple.authd""}" -8,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,1,"{""value"":"" sharing output destination ""}" -8,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,2,"{""value"":""/var/log/asl""}" -8,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,3,"{""value"":"" with ASL Module ""}" -8,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,4,"{""value"":""com.apple.asl""}" -8,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,5,"{""value"":"".\n\tOutput parameters from ASL Module ""}" -8,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,6,"{""value"":""com.apple.asl""}" -8,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,7,"{""value"":"" override any specified in ASL Module ""}" -8,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,8,"{""value"":""com.apple.authd""}" -8,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,9,"{""value"":"".""}" -11,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,0,"{""value"":""com.apple.authd""}" -11,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,1,"{""value"":"" sharing output destination ""}" -11,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,2,"{""value"":""/var/log/system.log""}" -11,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,3,"{""value"":"" with ASL Module ""}" -11,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,4,"{""value"":""com.apple.asl""}" -11,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,5,"{""value"":"".\n\tOutput parameters from ASL Module ""}" -11,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,6,"{""value"":""com.apple.asl""}" -11,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,7,"{""value"":"" override any specified in ASL Module ""}" -11,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,8,"{""value"":""com.apple.authd""}" -11,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,9,"{""value"":"".""}" -14,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,0,"{""value"":""com.apple.authd""}" -14,<NULL>,2022-08-16 00:32:15.000,0,info,0,<NULL>,<NULL>,<NULL>,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,1,"{""value"":"" claims selected messages.\n\tThose messages may not appear in standard system log files or in the ASL database.""}" +log_line,log_time,log_level,log_hostname,log_msgid,log_pid,log_pri,log_procname,log_struct,log_syslog_tag,syslog_version,log_part,log_idle_msecs,log_mark,log_comment,log_tags,log_annotations,log_filters,match_index,content +2,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,199000,0,<NULL>,<NULL>,<NULL>,<NULL>,0,"{""value"":""com.apple.cdscheduler""}" +2,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,199000,0,<NULL>,<NULL>,<NULL>,<NULL>,1,"{""value"":"" claims selected messages.\n\tThose messages may not appear in standard system log files or in the ASL database.""}" +5,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,0,"{""value"":""com.apple.install""}" +5,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,1,"{""value"":"" claims selected messages.\n\tThose messages may not appear in standard system log files or in the ASL database.""}" +8,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,0,"{""value"":""com.apple.authd""}" +8,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,1,"{""value"":"" sharing output destination ""}" +8,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,2,"{""value"":""/var/log/asl""}" +8,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,3,"{""value"":"" with ASL Module ""}" +8,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,4,"{""value"":""com.apple.asl""}" +8,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,5,"{""value"":"".\n\tOutput parameters from ASL Module ""}" +8,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,6,"{""value"":""com.apple.asl""}" +8,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,7,"{""value"":"" override any specified in ASL Module ""}" +8,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,8,"{""value"":""com.apple.authd""}" +8,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,9,"{""value"":"".""}" +11,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,0,"{""value"":""com.apple.authd""}" +11,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,1,"{""value"":"" sharing output destination ""}" +11,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,2,"{""value"":""/var/log/system.log""}" +11,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,3,"{""value"":"" with ASL Module ""}" +11,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,4,"{""value"":""com.apple.asl""}" +11,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,5,"{""value"":"".\n\tOutput parameters from ASL Module ""}" +11,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,6,"{""value"":""com.apple.asl""}" +11,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,7,"{""value"":"" override any specified in ASL Module ""}" +11,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,8,"{""value"":""com.apple.authd""}" +11,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,9,"{""value"":"".""}" +14,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,0,"{""value"":""com.apple.authd""}" +14,2022-08-16 00:32:15.000,info,Tims-Air,<NULL>,314,<NULL>,syslogd,<NULL>,syslogd[314],<NULL>,<NULL>,0,0,<NULL>,<NULL>,<NULL>,<NULL>,1,"{""value"":"" claims selected messages.\n\tThose messages may not appear in standard system log files or in the ASL database.""}" diff --git a/test/expected/test_sql_regexp.sh_bbd1128cf61a9af8f9dc937b46217443f42e1a7a.out b/test/expected/test_sql_regexp.sh_bbd1128cf61a9af8f9dc937b46217443f42e1a7a.out index 655ce13..43adbdc 100644 --- a/test/expected/test_sql_regexp.sh_bbd1128cf61a9af8f9dc937b46217443f42e1a7a.out +++ b/test/expected/test_sql_regexp.sh_bbd1128cf61a9af8f9dc937b46217443f42e1a7a.out @@ -1,2 +1,2 @@ -[1m[4mmatch_index [0m[1m[4m content [0m -[1m 0[0m[1m [0m[1m{"key":"foo","value":"123e"} [0m +[1m[4mmatch_index[0m[1m[4m [0m[1m[4m content [0m[1m[4m [0m + 0 {"key":"foo","value":"123e"} diff --git a/test/expected/test_sql_regexp.sh_d61af17ff19d640ddfc879460910991825eedd05.out b/test/expected/test_sql_regexp.sh_d61af17ff19d640ddfc879460910991825eedd05.out index 6e952fb..2d39ef5 100644 --- a/test/expected/test_sql_regexp.sh_d61af17ff19d640ddfc879460910991825eedd05.out +++ b/test/expected/test_sql_regexp.sh_d61af17ff19d640ddfc879460910991825eedd05.out @@ -1,2 +1,2 @@ -[1m[4mmatch_index [0m[1m[4m content [0m -[1m 0[0m[1m [0m[1m{"col_0":"abc","col_1":"def"} [0m +[1m[4mmatch_index[0m[1m[4m [0m[1m[4m content [0m[1m[4m [0m + 0 {"col_0":"abc","col_1":"def"} diff --git a/test/expected/test_sql_regexp.sh_ed6e9f13f178def009ee58c2aeea8c3c70fdb580.out b/test/expected/test_sql_regexp.sh_ed6e9f13f178def009ee58c2aeea8c3c70fdb580.out index fef8e26..ae86ce4 100644 --- a/test/expected/test_sql_regexp.sh_ed6e9f13f178def009ee58c2aeea8c3c70fdb580.out +++ b/test/expected/test_sql_regexp.sh_ed6e9f13f178def009ee58c2aeea8c3c70fdb580.out @@ -1,2 +1,2 @@ -[1m[4mmatch_index [0m[1m[4m content [0m -[1m 0[0m[1m [0m[1m{"key":"foo","value":"0x123e"} [0m +[1m[4mmatch_index[0m[1m[4m [0m[1m[4m content [0m[1m[4m [0m + 0 {"key":"foo","value":"0x123e"} diff --git a/test/expected/test_sql_search_table.sh_1a0d872ebc492fcecb2e79a0993170d5fc771a5b.out b/test/expected/test_sql_search_table.sh_1a0d872ebc492fcecb2e79a0993170d5fc771a5b.out index d56bc20..9a85781 100644 --- a/test/expected/test_sql_search_table.sh_1a0d872ebc492fcecb2e79a0993170d5fc771a5b.out +++ b/test/expected/test_sql_search_table.sh_1a0d872ebc492fcecb2e79a0993170d5fc771a5b.out @@ -1,2 +1,2 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4m comp [0m[1m[4m opid [0m[1m[4m tid [0m[1m[4m user [0m[1m[4m item [0m[1m[4mprc [0m[1m[4mreason [0m[1m[4m req [0m[1m[4m sid [0m[1m[4m src [0m[1m[4m sub [0m[1m[4mvpxa_update [0m[1m[4m line [0m[1m[4m file [0m[1m[4mmatch_index [0m[1m[4m lro_id [0m[1m[4m entity [0m[1m[4m operation [0m[1m[4m SessionId [0m[1m[4m SessionSubId [0m -[1m[7m 2[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 11:58:12.376[0m[1m[7m [0m[1m[7m 182[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7me3979f6[0m[1m[7m [0m[1m[7m45709[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7mvpxd[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7mOriginator@6876[0m[1m[7m [0m[1m[7mvpxLro[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7mlro-846064[0m[1m[7m [0m[1m[7mSessionManager[0m[1m[7m [0m[1m[7mvim.SessionManager.sessionIsActive[0m[1m[7m [0m[1m[7m52626140-422b-6287-b4e4-344192c6a01d[0m[1m[7m [0m[1m[7m523e0a4b-6e83-6bcd-9342-22502dd89866[0m[1m [0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4m comp [0m[1m[4m [0m[1m[4m opid [0m[1m[4m [0m[1m[4m tid [0m[1m[4m [0m[1m[4m user [0m[1m[4m [0m[1m[4m file [0m[1m[4m [0m[1m[4m item [0m[1m[4m [0m[1m[4m line [0m[1m[4m [0m[1m[4mprc [0m[1m[4m [0m[1m[4mreason[0m[1m[4m [0m[1m[4m req [0m[1m[4m [0m[1m[4m sid [0m[1m[4m [0m[1m[4m src [0m[1m[4m [0m[1m[4m sub [0m[1m[4m [0m[1m[4mvpxa_update[0m[1m[4m [0m[1m[4mmatch_index[0m[1m[4m [0m[1m[4m lro_id [0m[1m[4m [0m[1m[4m entity [0m[1m[4m [0m[1m[4m operation [0m[1m[4m [0m[1m[4m SessionId [0m[1m[4m [0m[1m[4m SessionSubId [0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m + 2 2022-06-02 11:58:12.376 info <NULL> e3979f6 45709 <NULL> <NULL> <NULL> <NULL> vpxd <NULL> <NULL> <NULL> Originator@6876 vpxLro <NULL> 0 lro-846064 SessionManager vim.SessionManager.sessionIsActive 52626140-422b-6287-b4e4-344192c6a01d 523e0a4b-6e83-6bcd-9342-22502dd89866 <NULL> [1m[7m 182[0m 0 <NULL> <NULL> <NULL> <NULL> diff --git a/test/expected/test_sql_search_table.sh_3f5f74863d065418bca5a000e6ad3d9344635164.out b/test/expected/test_sql_search_table.sh_3f5f74863d065418bca5a000e6ad3d9344635164.out index c92cf49..20f031d 100644 --- a/test/expected/test_sql_search_table.sh_3f5f74863d065418bca5a000e6ad3d9344635164.out +++ b/test/expected/test_sql_search_table.sh_3f5f74863d065418bca5a000e6ad3d9344635164.out @@ -1,12 +1,12 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4mmatch_index [0m[1m[4m name [0m -[1m[7m 2[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-08-16 00:32:15.000[0m[1m[7m [0m[1m[7m 199000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7mcom.apple.cdscheduler[0m[1m [0m - 5 <NULL> 2022-08-16 00:32:15.000 0 info 0 <NULL> <NULL> <NULL> 0 com.apple.install -[1m 8[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2022-08-16 00:32:15.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1mcom.apple.authd [0m - 8 <NULL> 2022-08-16 00:32:15.000 0 info 0 <NULL> <NULL> <NULL> 1 com.apple.asl -[1m 8[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2022-08-16 00:32:15.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 2[0m[1m [0m[1mcom.apple.asl [0m - 8 <NULL> 2022-08-16 00:32:15.000 0 info 0 <NULL> <NULL> <NULL> 3 com.apple.authd -[1m 11[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2022-08-16 00:32:15.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1mcom.apple.authd [0m - 11 <NULL> 2022-08-16 00:32:15.000 0 info 0 <NULL> <NULL> <NULL> 1 com.apple.asl -[1m 11[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2022-08-16 00:32:15.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 2[0m[1m [0m[1mcom.apple.asl [0m - 11 <NULL> 2022-08-16 00:32:15.000 0 info 0 <NULL> <NULL> <NULL> 3 com.apple.authd -[1m 14[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2022-08-16 00:32:15.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1mcom.apple.authd [0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4mmatch_index[0m[1m[4m [0m[1m[4m name [0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m + 2 2022-08-16 00:32:15.000 info 0 com.apple.cdscheduler <NULL> [1m[7m 199000[0m 0 <NULL> <NULL> <NULL> <NULL> + 5 2022-08-16 00:32:15.000 info 0 com.apple.install <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 8[0m[1m [0m[1m2022-08-16 00:32:15.000[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1mcom.apple.authd [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m +[1m 8[0m[1m [0m[1m2022-08-16 00:32:15.000[0m[1m [0m[1minfo [0m[1m [0m[1m 1[0m[1m [0m[1mcom.apple.asl [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m + 8 2022-08-16 00:32:15.000 info 2 com.apple.asl <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> + 8 2022-08-16 00:32:15.000 info 3 com.apple.authd <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 11[0m[1m [0m[1m2022-08-16 00:32:15.000[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1mcom.apple.authd [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m +[1m 11[0m[1m [0m[1m2022-08-16 00:32:15.000[0m[1m [0m[1minfo [0m[1m [0m[1m 1[0m[1m [0m[1mcom.apple.asl [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m + 11 2022-08-16 00:32:15.000 info 2 com.apple.asl <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> + 11 2022-08-16 00:32:15.000 info 3 com.apple.authd <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 14[0m[1m [0m[1m2022-08-16 00:32:15.000[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1mcom.apple.authd [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m diff --git a/test/expected/test_sql_search_table.sh_5aaae556ecb1661602f176215e28f661d3404032.out b/test/expected/test_sql_search_table.sh_5aaae556ecb1661602f176215e28f661d3404032.out index 738eab3..ed52844 100644 --- a/test/expected/test_sql_search_table.sh_5aaae556ecb1661602f176215e28f661d3404032.out +++ b/test/expected/test_sql_search_table.sh_5aaae556ecb1661602f176215e28f661d3404032.out @@ -1,4 +1,4 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4mmatch_index [0m[1m[4muser [0m[1m[4mpid [0m[1m[4m[7mcpu_pct [0m[1m[4m[7mmem_pct [0m[1m[4m[7mvsz [0m[1m[4m[7mrss [0m[1m[4mtty [0m[1m[4mstat [0m[1m[4mstart_time [0m[1m[4mcpu_time [0m[1m[4m cmd [0m[1m[4m cmd_name [0m[1m[4mcmd_args [0m -[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2022-06-02 00:01:01.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 1[0m[1m [0m[1mroot[0m[1m [0m[1m 2[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mS [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m[kthreadd][0m[1m [0m[1m[kthreadd][0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m -[7m 12[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 00:02:01.000[0m[7m [0m[7m 60000[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m 1[0m[7m [0m[7mroot[0m[7m [0m[7m 2[0m[7m [0m[7m 0[0m[7m [0m[7m 0[0m[7m [0m[7m 0[0m[7m [0m[7m 0[0m[7m [0m[7m? [0m[7m [0m[7mS [0m[7m [0m[7mJun01 [0m[7m [0m[7m0:00 [0m[7m [0m[7m[kthreadd][0m[7m [0m[7m[kthreadd][0m[7m [0m[7m <N[0mULL> -[1m[7m 30[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:03:01.000[0m[1m[7m [0m[1m[7m 60000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m 1[0m[1m[7m [0m[1m[7mroot[0m[1m[7m [0m[1m[7m 2[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m? [0m[1m[7m [0m[1m[7mS [0m[1m[7m [0m[1m[7mJun01 [0m[1m[7m [0m[1m[7m0:00 [0m[1m[7m [0m[1m[7m[kthreadd][0m[1m[7m [0m[1m[7m[kthreadd][0m[1m[7m [0m[1m[7m <N[0m[1mULL> [0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4mmatch_index[0m[1m[4m [0m[1m[4muser[0m[1m[4m [0m[1m[4m ppid [0m[1m[4m [0m[1m[4mpid[0m[1m[4m [0m[1m[4m[7m cpu_pct [0m[1m[4m [0m[1m[4m[7m mem_pct [0m[1m[4m [0m[1m[4m[7m vsz [0m[1m[4m [0m[1m[4m[7m rss [0m[1m[4m [0m[1m[4mtty[0m[1m[4m [0m[1m[4mstat[0m[1m[4m [0m[1m[4mstart_time[0m[1m[4m [0m[1m[4mcpu_time[0m[1m[4m [0m[1m[4mmaj_flt[0m[1m[4m [0m[1m[4mmin_flt[0m[1m[4m [0m[1m[4m cmd [0m[1m[4m [0m[1m[4m cmd_name [0m[1m[4m [0m[1m[4mcmd_args[0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m + 0 2022-06-02 00:01:01.000 info 1 root <NULL> 2 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? S Jun01 0:00 <NULL> <NULL> [kthreadd] [kthreadd] <NULL> <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> + 12 2022-06-02 00:02:01.000 info 1 root <NULL> 2 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? S Jun01 0:00 <NULL> <NULL> [kthreadd] [kthreadd] <NULL> <NULL> [1m[7m 60000[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 30[0m[1m [0m[1m2022-06-02 00:03:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 1[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 2[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mS [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[kthreadd][0m[1m [0m[1m[kthreadd][0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 60000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m diff --git a/test/expected/test_sql_search_table.sh_df0fd242f57a96d40f466493938cda0789a094fa.out b/test/expected/test_sql_search_table.sh_df0fd242f57a96d40f466493938cda0789a094fa.out index 326fcbd..7fa2742 100644 --- a/test/expected/test_sql_search_table.sh_df0fd242f57a96d40f466493938cda0789a094fa.out +++ b/test/expected/test_sql_search_table.sh_df0fd242f57a96d40f466493938cda0789a094fa.out @@ -1,24 +1,24 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4mmatch_index [0m[1m[4muser [0m[1m[4mpid [0m[1m[4m[7mcpu_pct [0m[1m[4m[7mmem_pct [0m[1m[4m[7m vsz [0m[1m[4m[7mrss [0m[1m[4mtty [0m[1m[4mstat [0m[1m[4mstart_time [0m[1m[4mcpu_time [0m[1m[4m cmd [0m[1m[4m cmd_name [0m[1m[4m cmd_args [0m -[1m[7m 0[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:01:01.000[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7mroot[0m[1m[7m [0m[1m[7m 1[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m158392[0m[1m[7m [0m[1m[7m7792[0m[1m[7m [0m[1m[7m? [0m[1m[7m [0m[1m[7mSs [0m[1m[7m [0m[1m[7mJun01 [0m[1m[7m [0m[1m[7m0:14 [0m[1m[7m [0m[1m[7m/lib/systemd/systemd --switche[0m[1m[7md-root --sy[0m[1mstem --deserialize 16[0m[1m [0m[1m/lib/systemd/systemd [0m[1m [0m[1m--switched-root --system --deserialize 16 [0m - 0 <NULL> 2022-06-02 00:01:01.000 0 info 0 <NULL> <NULL> <NULL> 1 root 2 0 0 0 0 ? S Jun01 0:00 [kthreadd] [kthreadd] <NULL> -[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2022-06-02 00:01:01.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 2[0m[1m [0m[1mroot[0m[1m [0m[1m 3[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m[rcu_gp] [0m[1m [0m[1m[rcu_gp] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m - 0 <NULL> 2022-06-02 00:01:01.000 0 info 0 <NULL> <NULL> <NULL> 3 root 4 0 0 0 0 ? I< Jun01 0:00 [rcu_par_gp] [rcu_par_gp] <NULL> -[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2022-06-02 00:01:01.000[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 4[0m[1m [0m[1mroot[0m[1m [0m[1m 6[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m[kworker/0:0H-kblockd] [0m[1m [0m[1m[kworker/0:0H-kblockd][0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m -[7m 12[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 00:02:01.000[0m[7m [0m[7m 60000[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <[0m[7mNULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m 0[0m[7m [0m[7mroot[0m[7m [0m[7m 1[0m[7m [0m[7m 0[0m[7m [0m[7m 0[0m[7m [0m[7m158392[0m[7m [0m[7m7792[0m[7m [0m[7m? [0m[7m [0m[7mSs [0m[7m [0m[7mJun01 [0m[7m [0m[7m0:14 [0m[7m [0m[7m/lib/systemd/systemd --switched-root --system --deserialize 16[0m[7m [0m[7m/lib/systemd/systemd [0m[7m [0m[7m--switched-root --system -[0m[7m-deserializ[0me 16 -[1m[7m 12[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:02:01.000[0m[1m[7m [0m[1m[7m 60000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 1[0m[1m [0m[1mroot[0m[1m [0m[1m 2[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mS [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m[kthreadd] [0m[1m [0m[1m[kthreadd] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m -[7m 12[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 00:02:01.000[0m[7m [0m[7m 60000[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <[0mNULL> <NULL> <NULL> 2 root 3 0 0 0 0 ? I< Jun01 0:00 [rcu_gp] [rcu_gp] <NULL> -[1m[7m 12[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:02:01.000[0m[1m[7m [0m[1m[7m 60000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 3[0m[1m [0m[1mroot[0m[1m [0m[1m 4[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m[rcu_par_gp] [0m[1m [0m[1m[rcu_par_gp] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m -[7m 12[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 00:02:01.000[0m[7m [0m[7m 60000[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <[0mNULL> <NULL> <NULL> 4 root 6 0 0 0 0 ? I< Jun01 0:00 [kworker/0:0H-kblockd] [kworker/0:0H-kblockd] <NULL> -[1m[7m 12[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:02:01.000[0m[1m[7m [0m[1m[7m 60000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 5[0m[1m [0m[1mroot[0m[1m [0m[1m 8[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m[mm_percpu_wq] [0m[1m [0m[1m[mm_percpu_wq] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m -[7m 12[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 00:02:01.000[0m[7m [0m[7m 60000[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <[0mNULL> <NULL> <NULL> 6 root 9 0 0 0 0 ? S Jun01 0:00 [ksoftirqd/0] [ksoftirqd/0] <NULL> -[1m[7m 12[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:02:01.000[0m[1m[7m [0m[1m[7m 60000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 7[0m[1m [0m[1mroot[0m[1m [0m[1m 10[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:23 [0m[1m [0m[1m[rcu_sched] [0m[1m [0m[1m[rcu_sched] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m -[7m 12[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 00:02:01.000[0m[7m [0m[7m 60000[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <[0mNULL> <NULL> <NULL> 8 root 11 0 0 0 0 ? I Jun01 0:00 [rcu_bh] [rcu_bh] <NULL> -[1m[7m 12[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:02:01.000[0m[1m[7m [0m[1m[7m 60000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 9[0m[1m [0m[1mroot[0m[1m [0m[1m 12[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mS [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m[migration/0] [0m[1m [0m[1m[migration/0] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m -[7m 12[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 00:02:01.000[0m[7m [0m[7m 60000[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <[0mNULL> <NULL> <NULL> 10 root 14 0 0 0 0 ? S Jun01 0:00 [cpuhp/0] [cpuhp/0] <NULL> -[1m[7m 30[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:03:01.000[0m[1m[7m [0m[1m[7m 60000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <[0m[1m[7mNULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7mroot[0m[1m[7m [0m[1m[7m 1[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m158392[0m[1m[7m [0m[1m[7m7792[0m[1m[7m [0m[1m[7m? [0m[1m[7m [0m[1m[7mSs [0m[1m[7m [0m[1m[7mJun01 [0m[1m[7m [0m[1m[7m0:14 [0m[1m[7m [0m[1m[7m/lib/systemd/systemd --switched-root --system --deserialize 16[0m[1m[7m [0m[1m[7m/lib/systemd/systemd [0m[1m[7m [0m[1m[7m--switched-root --system -[0m[1m[7m-deserializ[0m[1me 16 [0m -[7m 30[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 00:03:01.000[0m[7m [0m[7m 60000[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <[0mNULL> <NULL> <NULL> 1 root 2 0 0 0 0 ? S Jun01 0:00 [kthreadd] [kthreadd] <NULL> -[1m[7m 30[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:03:01.000[0m[1m[7m [0m[1m[7m 60000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 2[0m[1m [0m[1mroot[0m[1m [0m[1m 3[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m[rcu_gp] [0m[1m [0m[1m[rcu_gp] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m -[7m 30[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 00:03:01.000[0m[7m [0m[7m 60000[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <[0mNULL> <NULL> <NULL> 3 root 4 0 0 0 0 ? I< Jun01 0:00 [rcu_par_gp] [rcu_par_gp] <NULL> -[1m[7m 30[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:03:01.000[0m[1m[7m [0m[1m[7m 60000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 4[0m[1m [0m[1mroot[0m[1m [0m[1m 6[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m[kworker/0:0H-kblockd] [0m[1m [0m[1m[kworker/0:0H-kblockd][0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m -[7m 30[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 00:03:01.000[0m[7m [0m[7m 60000[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <[0mNULL> <NULL> <NULL> 5 root 8 0 0 0 0 ? I< Jun01 0:00 [mm_percpu_wq] [mm_percpu_wq] <NULL> -[1m[7m 30[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 00:03:01.000[0m[1m[7m [0m[1m[7m 60000[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 6[0m[1m [0m[1mroot[0m[1m [0m[1m 9[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mS [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m[ksoftirqd/0] [0m[1m [0m[1m[ksoftirqd/0] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4mmatch_index[0m[1m[4m [0m[1m[4muser[0m[1m[4m [0m[1m[4m ppid [0m[1m[4m [0m[1m[4mpid[0m[1m[4m [0m[1m[4m[7m cpu_pct [0m[1m[4m [0m[1m[4m[7m mem_pct [0m[1m[4m [0m[1m[4m[7m vsz [0m[1m[4m [0m[1m[4m[7m rss [0m[1m[4m [0m[1m[4mtty[0m[1m[4m [0m[1m[4mstat[0m[1m[4m [0m[1m[4mstart_time[0m[1m[4m [0m[1m[4mcpu_time[0m[1m[4m [0m[1m[4mmaj_flt[0m[1m[4m [0m[1m[4mmin_flt[0m[1m[4m [0m[1m[4m cmd [0m[1m[4m [0m[1m[4m cmd_name [0m[1m[4m [0m[1m[4m cmd_args [0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m + 0 2022-06-02 00:01:01.000 info 0 root <NULL> 1 [1m 0[0m [1m 0[0m [1m[7m 158392[0m [1m[7m 7792[0m ? Ss Jun01 0:14 <NULL> <NULL> /lib/systemd/systemd --switched-root --system --deserialize 16 /lib/systemd/systemd --switched-root --system --deserialize 16 <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> + 0 2022-06-02 00:01:01.000 info 1 root <NULL> 2 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? S Jun01 0:00 <NULL> <NULL> [kthreadd] [kthreadd] <NULL> <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 0[0m[1m [0m[1m2022-06-02 00:01:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 2[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 3[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[rcu_gp] [0m[1m [0m[1m[rcu_gp] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m +[1m 0[0m[1m [0m[1m2022-06-02 00:01:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 3[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 4[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[rcu_par_gp] [0m[1m [0m[1m[rcu_par_gp] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m + 0 2022-06-02 00:01:01.000 info 4 root <NULL> 6 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? I< Jun01 0:00 <NULL> <NULL> [kworker/0:0H-kblockd] [kworker/0:0H-kblockd] <NULL> <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> + 12 2022-06-02 00:02:01.000 info 0 root <NULL> 1 [1m 0[0m [1m 0[0m [1m[7m 158392[0m [1m[7m 7792[0m ? Ss Jun01 0:14 <NULL> <NULL> /lib/systemd/systemd --switched-root --system --deserialize 16 /lib/systemd/systemd --switched-root --system --deserialize 16 <NULL> [1m[7m 60000[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 12[0m[1m [0m[1m2022-06-02 00:02:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 1[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 2[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mS [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[kthreadd] [0m[1m [0m[1m[kthreadd] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 60000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m +[1m 12[0m[1m [0m[1m2022-06-02 00:02:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 2[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 3[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[rcu_gp] [0m[1m [0m[1m[rcu_gp] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 60000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m + 12 2022-06-02 00:02:01.000 info 3 root <NULL> 4 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? I< Jun01 0:00 <NULL> <NULL> [rcu_par_gp] [rcu_par_gp] <NULL> <NULL> [1m[7m 60000[0m 0 <NULL> <NULL> <NULL> <NULL> + 12 2022-06-02 00:02:01.000 info 4 root <NULL> 6 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? I< Jun01 0:00 <NULL> <NULL> [kworker/0:0H-kblockd] [kworker/0:0H-kblockd] <NULL> <NULL> [1m[7m 60000[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 12[0m[1m [0m[1m2022-06-02 00:02:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 5[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 8[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[mm_percpu_wq] [0m[1m [0m[1m[mm_percpu_wq] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 60000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m +[1m 12[0m[1m [0m[1m2022-06-02 00:02:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 6[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 9[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mS [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[ksoftirqd/0] [0m[1m [0m[1m[ksoftirqd/0] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 60000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m + 12 2022-06-02 00:02:01.000 info 7 root <NULL> 10 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? I Jun01 0:23 <NULL> <NULL> [rcu_sched] [rcu_sched] <NULL> <NULL> [1m[7m 60000[0m 0 <NULL> <NULL> <NULL> <NULL> + 12 2022-06-02 00:02:01.000 info 8 root <NULL> 11 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? I Jun01 0:00 <NULL> <NULL> [rcu_bh] [rcu_bh] <NULL> <NULL> [1m[7m 60000[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 12[0m[1m [0m[1m2022-06-02 00:02:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 9[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 12[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mS [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[migration/0] [0m[1m [0m[1m[migration/0] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 60000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m +[1m 12[0m[1m [0m[1m2022-06-02 00:02:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 10[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 14[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mS [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[cpuhp/0] [0m[1m [0m[1m[cpuhp/0] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 60000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m + 30 2022-06-02 00:03:01.000 info 0 root <NULL> 1 [1m 0[0m [1m 0[0m [1m[7m 158392[0m [1m[7m 7792[0m ? Ss Jun01 0:14 <NULL> <NULL> /lib/systemd/systemd --switched-root --system --deserialize 16 /lib/systemd/systemd --switched-root --system --deserialize 16 <NULL> [1m[7m 60000[0m 0 <NULL> <NULL> <NULL> <NULL> + 30 2022-06-02 00:03:01.000 info 1 root <NULL> 2 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? S Jun01 0:00 <NULL> <NULL> [kthreadd] [kthreadd] <NULL> <NULL> [1m[7m 60000[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 30[0m[1m [0m[1m2022-06-02 00:03:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 2[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 3[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[rcu_gp] [0m[1m [0m[1m[rcu_gp] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 60000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m +[1m 30[0m[1m [0m[1m2022-06-02 00:03:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 3[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 4[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mI< [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[rcu_par_gp] [0m[1m [0m[1m[rcu_par_gp] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 60000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m + 30 2022-06-02 00:03:01.000 info 4 root <NULL> 6 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? I< Jun01 0:00 <NULL> <NULL> [kworker/0:0H-kblockd] [kworker/0:0H-kblockd] <NULL> <NULL> [1m[7m 60000[0m 0 <NULL> <NULL> <NULL> <NULL> + 30 2022-06-02 00:03:01.000 info 5 root <NULL> 8 [1m 0[0m [1m 0[0m [1m 0[0m [1m 0[0m ? I< Jun01 0:00 <NULL> <NULL> [mm_percpu_wq] [mm_percpu_wq] <NULL> <NULL> [1m[7m 60000[0m 0 <NULL> <NULL> <NULL> <NULL> +[1m 30[0m[1m [0m[1m2022-06-02 00:03:01.000[0m[1m [0m[1minfo [0m[1m [0m[1m 6[0m[1m [0m[1mroot[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 9[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m 0[0m[1m [0m[1m? [0m[1m [0m[1mS [0m[1m [0m[1mJun01 [0m[1m [0m[1m0:00 [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[ksoftirqd/0] [0m[1m [0m[1m[ksoftirqd/0] [0m[1m [0m[1m<[0m[1mNULL[0m[1m> [0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 60000[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m> [0m diff --git a/test/expected/test_sql_search_table.sh_ef9373a76853f345d06234f6e0fe11b5d40da27b.out b/test/expected/test_sql_search_table.sh_ef9373a76853f345d06234f6e0fe11b5d40da27b.out index 767d785..263723f 100644 --- a/test/expected/test_sql_search_table.sh_ef9373a76853f345d06234f6e0fe11b5d40da27b.out +++ b/test/expected/test_sql_search_table.sh_ef9373a76853f345d06234f6e0fe11b5d40da27b.out @@ -1,6 +1,6 @@ -[1m[4mlog_line [0m[1m[4mlog_part [0m[1m[4m log_time [0m[1m[4m[7mlog_idle_msecs [0m[1m[4mlog_level [0m[1m[4mlog_mark [0m[1m[4mlog_comment [0m[1m[4mlog_tags [0m[1m[4mlog_filters [0m[1m[4m comp [0m[1m[4m opid [0m[1m[4m tid [0m[1m[4m user [0m[1m[4m item [0m[1m[4mprc [0m[1m[4mreason [0m[1m[4m req [0m[1m[4m sid [0m[1m[4m src [0m[1m[4m sub [0m[1m[4mvpxa_update [0m[1m[4m line [0m[1m[4m file [0m[1m[4mmatch_index [0m[1m[4m lro_id [0m[1m[4m entity [0m[1m[4m operation [0m[1m[4m SessionId [0m[1m[4m SessionSubId [0m[1m[4m log_body [0m -[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2022-06-02 11:58:12.193[0m[1m [0m[1m 0[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m7e1280cf [0m[1m [0m[1m45715[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1mvpxd[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1mOriginator@6876[0m[1m [0m[1mvpxLro[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1mlro-846063[0m[1m [0m[1mSessionManager [0m[1m [0m[1mvim.SessionManager.sessionIsActive [0m[1m [0m[1m528e6e0c-246d-58b5-3234-278c6e0c5d0d[0m[1m [0m[1m52c289ac-2563-48d5-8a8e-f178da022c0d[0m[1m [0m[1m[VpxLRO] -- BEGIN lro-846063 -- SessionManager -- vim.Sessio⋯8b5-3234-278c6e0c5d0d(52c289ac-2563-48d5-8a8e-f178da022c0d) [0m -[7m 2[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 11:58:12.376[0m[7m [0m[7m 182[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7me3979f6 [0m[7m [0m[7m45709[0m[7m [0m[7m<NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7mvpxd[0m[7m [0m[7m<NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7mOriginator@6876[0m[7m [0m[7mvpxLro[0m[7m [0m[7m <NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7m 0[0m[7m [0m[7mlro-846064[0m[7m [0m[7mSessionManager [0m[7m [0m[7mvim.SessionManager.sessionIsActive [0m[7m [0m[7m52626140-422b-6287-b4e4-344192c6a01d[0m[7m [0m[7m523e0a4b-6e83-6bcd-9342-22502dd89866[0m[7m [0m[7m[VpxLRO] -- BEGIN lro-846[0m064 -- SessionManager -- vim.Sessio⋯287-b4e4-344192c6a01d(523e0a4b-6e83-6bcd-9342-22502dd89866) -[1m[7m 4[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m2022-06-02 11:58:12.623[0m[1m[7m [0m[1m[7m 246[0m[1m[7m [0m[1m[7minfo [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7ml3wrhr4o-cbf-h5:70001034-60[0m[1m[7m [0m[1m[7m47524[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7mvpxd[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7mOriginator@6876[0m[1m[7m [0m[1m[7mvpxLro[0m[1m[7m [0m[1m[7m <NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7m<NULL>[0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7mlro-846066[0m[1m[7m [0m[1m[7mChangeLogCollector[0m[1m[7m [0m[1m[7mvim.cdc.ChangeLogCollector.waitForChanges[0m[1m[7m [0m[1m[7m526861fc-0c28-1930-ae5e-d8c2772bf8c2[0m[1m[7m [0m[1m[7m52a7a308-9646-c054-f1e7-16131c1a7db6[0m[1m[7m [0m[1m[7m[VpxLRO] -- BEGIN lro-846066 -- ChangeLogCollector -- vim.c⋯1930-ae5e-d8c2772bf8c2(52a7a308-9646-c054-f1e7-16131c1a7db6) [0m -[7m 6[0m[7m [0m[7m <NULL>[0m[7m [0m[7m2022-06-02 11:58:12.736[0m[7m [0m[7m 113[0m[7m [0m[7minfo [0m[7m [0m[7m 0[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m <NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7m499b440 [0m[7m [0m[7m48432[0m[7m [0m[7m<NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7mvpxd[0m[7m [0m[7m<NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7mOriginator@6876[0m[7m [0m[7mvpxLro[0m[7m [0m[7m <NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7m<NULL>[0m[7m [0m[7m 0[0m[7m [0m[7mlro-846067[0m[7m [0mSessionManager vim.SessionManager.sessionIsActive 521fe9f6-d061-11a2-ac86-badb3c071373 524cba9b-2cc4-9b70-32e4-421452a404d7 [VpxLRO] -- BEGIN lro-846067 -- SessionManager -- vim.Sessio⋯1a2-ac86-badb3c071373(524cba9b-2cc4-9b70-32e4-421452a404d7) -[1m[7m 8[0m[1m[7m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m2022-06-02 11:58:12.740[0m[1m [0m[1m 4[0m[1m [0m[1minfo [0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m55a419df [0m[1m [0m[1m48035[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1mvpxd[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1mOriginator@6876[0m[1m [0m[1mvpxLro[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1mlro-846068[0m[1m [0m[1mSessionManager [0m[1m [0m[1mvim.SessionManager.sessionIsActive [0m[1m [0m[1m52585600-b0bc-76b1-c4d5-4d7708671c5e[0m[1m [0m[1m523b68ba-e312-9909-a3ca-39cc86aaf206[0m[1m [0m[1m[VpxLRO] -- BEGIN lro-846068 -- SessionManager -- vim.Sessio⋯6b1-c4d5-4d7708671c5e(523b68ba-e312-9909-a3ca-39cc86aaf206) [0m +[1m[4mlog_line[0m[1m[4m [0m[1m[4m log_time [0m[1m[4m [0m[1m[4mlog_level[0m[1m[4m [0m[1m[4m comp [0m[1m[4m [0m[1m[4m opid [0m[1m[4m [0m[1m[4m tid [0m[1m[4m [0m[1m[4m user [0m[1m[4m [0m[1m[4m file [0m[1m[4m [0m[1m[4m item [0m[1m[4m [0m[1m[4m line [0m[1m[4m [0m[1m[4mprc [0m[1m[4m [0m[1m[4mreason[0m[1m[4m [0m[1m[4m req [0m[1m[4m [0m[1m[4m sid [0m[1m[4m [0m[1m[4m src [0m[1m[4m [0m[1m[4m sub [0m[1m[4m [0m[1m[4mvpxa_update[0m[1m[4m [0m[1m[4mmatch_index[0m[1m[4m [0m[1m[4m lro_id [0m[1m[4m [0m[1m[4m entity [0m[1m[4m [0m[1m[4m operation [0m[1m[4m [0m[1m[4m SessionId [0m[1m[4m [0m[1m[4m SessionSubId [0m[1m[4m [0m[1m[4mlog_part[0m[1m[4m [0m[1m[4m[7mlog_idle_msecs[0m[1m[4m [0m[1m[4mlog_mark[0m[1m[4m [0m[1m[4mlog_comment[0m[1m[4m [0m[1m[4mlog_tags[0m[1m[4m [0m[1m[4mlog_annotations[0m[1m[4m [0m[1m[4mlog_filters[0m[1m[4m [0m[1m[4m log_body [0m[1m[4m [0m + 0 2022-06-02 11:58:12.193 info <NULL> 7e1280cf 45715 <NULL> <NULL> <NULL> <NULL> vpxd <NULL> <NULL> <NULL> Originator@6876 vpxLro <NULL> 0 lro-846063 SessionManager vim.SessionManager.sessionIsActive 528e6e0c-246d-58b5-3234-278c6e0c5d0d 52c289ac-2563-48d5-8a8e-f178da022c0d <NULL> [1m 0[0m 0 <NULL> <NULL> <NULL> <NULL> [VpxLRO] -- BEGIN lro-846063 -- SessionManager -- vim.Sessio⋯8b5-3234-278c6e0c5d0d(52c289ac-2563-48d5-8a8e-f178da022c0d) + 2 2022-06-02 11:58:12.376 info <NULL> e3979f6 45709 <NULL> <NULL> <NULL> <NULL> vpxd <NULL> <NULL> <NULL> Originator@6876 vpxLro <NULL> 0 lro-846064 SessionManager vim.SessionManager.sessionIsActive 52626140-422b-6287-b4e4-344192c6a01d 523e0a4b-6e83-6bcd-9342-22502dd89866 <NULL> [1m[7m [0m[1m 182[0m 0 <NULL> <NULL> <NULL> <NULL> [VpxLRO] -- BEGIN lro-846064 -- SessionManager -- vim.Sessio⋯287-b4e4-344192c6a01d(523e0a4b-6e83-6bcd-9342-22502dd89866) +[1m 4[0m[1m [0m[1m2022-06-02 11:58:12.623[0m[1m [0m[1minfo [0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1ml3wrhr4o-cbf-h5:70001034-60[0m[1m [0m[1m47524[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1mvpxd[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1mOriginator@6876[0m[1m [0m[1mvpxLro[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1mlro-846066[0m[1m [0m[1mChangeLogCollector[0m[1m [0m[1mvim.cdc.ChangeLogCollector.waitForChanges[0m[1m [0m[1m526861fc-0c28-1930-ae5e-d8c2772bf8c2[0m[1m [0m[1m52a7a308-9646-c054-f1e7-16131c1a7db6[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m 246[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[VpxLRO] -- BEGIN lro-846066 -- ChangeLogCollector -- vim.c⋯1930-ae5e-d8c2772bf8c2(52a7a308-9646-c054-f1e7-16131c1a7db6) [0m +[1m 6[0m[1m [0m[1m2022-06-02 11:58:12.736[0m[1m [0m[1minfo [0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m499b440 [0m[1m [0m[1m48432[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1mvpxd[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1m<[0m[1mNULL[0m[1m>[0m[1m [0m[1mOriginator@6876[0m[1m [0m[1mvpxLro[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m 0[0m[1m [0m[1mlro-846067[0m[1m [0m[1mSessionManager [0m[1m [0m[1mvim.SessionManager.sessionIsActive [0m[1m [0m[1m521fe9f6-d061-11a2-ac86-badb3c071373[0m[1m [0m[1m524cba9b-2cc4-9b70-32e4-421452a404d7[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[7m [0m[1m 113[0m[1m [0m[1m 0[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m <[0m[1mNULL[0m[1m>[0m[1m [0m[1m[VpxLRO] -- BEGIN lro-846067 -- SessionManager -- vim.Sessio⋯1a2-ac86-badb3c071373(524cba9b-2cc4-9b70-32e4-421452a404d7) [0m + 8 2022-06-02 11:58:12.740 info <NULL> 55a419df 48035 <NULL> <NULL> <NULL> <NULL> vpxd <NULL> <NULL> <NULL> Originator@6876 vpxLro <NULL> 0 lro-846068 SessionManager vim.SessionManager.sessionIsActive 52585600-b0bc-76b1-c4d5-4d7708671c5e 523b68ba-e312-9909-a3ca-39cc86aaf206 <NULL> [1m[7m [0m[1m 4[0m 0 <NULL> <NULL> <NULL> <NULL> [VpxLRO] -- BEGIN lro-846068 -- SessionManager -- vim.Sessio⋯6b1-c4d5-4d7708671c5e(523b68ba-e312-9909-a3ca-39cc86aaf206) diff --git a/test/expected/test_sql_str_func.sh_00363f89638cb968584afc1ca0a4f52b2cf7a2ae.err b/test/expected/test_sql_str_func.sh_00363f89638cb968584afc1ca0a4f52b2cf7a2ae.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_00363f89638cb968584afc1ca0a4f52b2cf7a2ae.err diff --git a/test/expected/test_sql_str_func.sh_00363f89638cb968584afc1ca0a4f52b2cf7a2ae.out b/test/expected/test_sql_str_func.sh_00363f89638cb968584afc1ca0a4f52b2cf7a2ae.out new file mode 100644 index 0000000..2bc4087 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_00363f89638cb968584afc1ca0a4f52b2cf7a2ae.out @@ -0,0 +1,2 @@ +Row 0: + Column parse_url('https://example.com/sea%26rch?flag&flag2&=def&flag3=abc+def#frag1%20space'): {"scheme":"https","username":null,"password":null,"host":"example.com","port":null,"path":"/sea&rch","query":"flag&flag2&=def&flag3=abc+def","parameters":{"flag":null,"flag2":null,"":"def","flag3":"abc def"},"fragment":"frag1 space"} diff --git a/test/expected/test_sql_str_func.sh_0947bfe7ec626eaa0409a45b10fcbb634fb12eb7.out b/test/expected/test_sql_str_func.sh_0947bfe7ec626eaa0409a45b10fcbb634fb12eb7.out index e144653..49ed7e2 100644 --- a/test/expected/test_sql_str_func.sh_0947bfe7ec626eaa0409a45b10fcbb634fb12eb7.out +++ b/test/expected/test_sql_str_func.sh_0947bfe7ec626eaa0409a45b10fcbb634fb12eb7.out @@ -1,2 +1,2 @@ Row 0: - Column parse_url('https://example.com/'): {"scheme":"https","user":null,"password":null,"host":"example.com","port":null,"path":"/","query":null,"parameters":null,"fragment":null} + Column parse_url('https://example.com/'): {"scheme":"https","username":null,"password":null,"host":"example.com","port":null,"path":"/","query":null,"parameters":null,"fragment":null} diff --git a/test/expected/test_sql_str_func.sh_0db1c1b406ba6ef2dadcbe90a3fdbe794a664eb5.err b/test/expected/test_sql_str_func.sh_0db1c1b406ba6ef2dadcbe90a3fdbe794a664eb5.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_0db1c1b406ba6ef2dadcbe90a3fdbe794a664eb5.err diff --git a/test/expected/test_sql_str_func.sh_0db1c1b406ba6ef2dadcbe90a3fdbe794a664eb5.out b/test/expected/test_sql_str_func.sh_0db1c1b406ba6ef2dadcbe90a3fdbe794a664eb5.out new file mode 100644 index 0000000..bda6691 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_0db1c1b406ba6ef2dadcbe90a3fdbe794a664eb5.out @@ -0,0 +1,2 @@ +[1m[4mhumanize_id('foo')[0m[1m[4m [0m[1m[4mhumanize_id('bar')[0m[1m[4m [0m +foo bar diff --git a/test/expected/test_sql_str_func.sh_11d458fdadd00df1239a0eeaac049abb49ed212d.out b/test/expected/test_sql_str_func.sh_11d458fdadd00df1239a0eeaac049abb49ed212d.out index eea58f2..7d625dd 100644 --- a/test/expected/test_sql_str_func.sh_11d458fdadd00df1239a0eeaac049abb49ed212d.out +++ b/test/expected/test_sql_str_func.sh_11d458fdadd00df1239a0eeaac049abb49ed212d.out @@ -1,198 +1,198 @@ -anonymize(bro_id_resp_h) +[1m[4manonymize(bro_id_resp_h)[0m[1m[4m [0m 10.0.0.1 10.0.0.2 +[1m10.0.0.2[0m[1m [0m +[1m10.0.0.2[0m[1m [0m 10.0.0.2 10.0.0.2 -10.0.0.2 -10.0.0.2 -10.0.0.2 -10.0.0.3 +[1m10.0.0.2[0m[1m [0m +[1m10.0.0.3[0m[1m [0m 10.0.0.4 10.0.0.1 -10.0.0.4 -10.0.0.4 +[1m10.0.0.4[0m[1m [0m +[1m10.0.0.4[0m[1m [0m 10.0.0.5 10.0.0.4 -10.0.0.4 -10.0.0.1 +[1m10.0.0.4[0m[1m [0m +[1m10.0.0.1[0m[1m [0m 10.0.0.6 10.0.0.4 -10.0.0.7 -10.0.0.8 -10.0.0.8 +[1m10.0.0.7[0m[1m [0m +[1m10.0.0.8[0m[1m [0m 10.0.0.8 10.0.0.8 +[1m10.0.0.8[0m[1m [0m +[1m10.0.0.8[0m[1m [0m 10.0.0.8 10.0.0.8 -10.0.0.8 -10.0.0.8 -10.0.0.9 +[1m10.0.0.8[0m[1m [0m +[1m10.0.0.9[0m[1m [0m 10.0.0.10 10.0.0.5 +[1m10.0.0.11[0m[1m [0m +[1m10.0.0.11[0m[1m [0m 10.0.0.11 10.0.0.11 -10.0.0.11 -10.0.0.11 -10.0.0.11 -10.0.0.11 +[1m10.0.0.11[0m[1m [0m +[1m10.0.0.11[0m[1m [0m 10.0.0.5 10.0.0.11 +[1m10.0.0.11[0m[1m [0m +[1m10.0.0.11[0m[1m [0m 10.0.0.11 10.0.0.11 +[1m10.0.0.11[0m[1m [0m +[1m10.0.0.11[0m[1m [0m 10.0.0.11 10.0.0.11 -10.0.0.11 -10.0.0.11 -10.0.0.11 -10.0.0.11 -10.0.0.11 -10.0.0.5 +[1m10.0.0.11[0m[1m [0m +[1m10.0.0.5[0m[1m [0m 10.0.0.10 10.0.0.6 -10.0.0.12 -10.0.0.1 +[1m10.0.0.12[0m[1m [0m +[1m10.0.0.1[0m[1m [0m 10.0.0.1 10.0.0.6 -10.0.0.11 -10.0.0.11 +[1m10.0.0.11[0m[1m [0m +[1m10.0.0.11[0m[1m [0m 10.0.0.13 10.0.0.6 -10.0.0.11 -10.0.0.11 +[1m10.0.0.11[0m[1m [0m +[1m10.0.0.11[0m[1m [0m 10.0.0.11 10.0.0.13 +[1m10.0.0.6[0m[1m [0m +[1m10.0.0.6[0m[1m [0m 10.0.0.6 10.0.0.6 +[1m10.0.0.6[0m[1m [0m +[1m10.0.0.6[0m[1m [0m 10.0.0.6 10.0.0.6 -10.0.0.6 -10.0.0.6 -10.0.0.6 -10.0.0.6 -10.0.0.14 -10.0.0.6 +[1m10.0.0.14[0m[1m [0m +[1m10.0.0.6[0m[1m [0m 10.0.0.14 10.0.0.15 -10.0.0.16 -10.0.0.6 +[1m10.0.0.16[0m[1m [0m +[1m10.0.0.6[0m[1m [0m 10.0.0.16 10.0.0.17 -10.0.0.5 -10.0.0.1 +[1m10.0.0.5[0m[1m [0m +[1m10.0.0.1[0m[1m [0m 10.0.0.17 10.0.0.15 -10.0.0.17 -10.0.0.18 +[1m10.0.0.17[0m[1m [0m +[1m10.0.0.18[0m[1m [0m 10.0.0.18 10.0.0.10 -10.0.0.5 -10.0.0.11 -10.0.0.11 -10.0.0.11 -10.0.0.11 -10.0.0.11 +[1m10.0.0.5[0m[1m [0m +[1m10.0.0.11[0m[1m [0m 10.0.0.11 10.0.0.11 +[1m10.0.0.11[0m[1m [0m +[1m10.0.0.11[0m[1m [0m 10.0.0.11 10.0.0.11 +[1m10.0.0.11[0m[1m [0m +[1m10.0.0.11[0m[1m [0m 10.0.0.18 10.0.0.11 -10.0.0.11 -10.0.0.11 +[1m10.0.0.11[0m[1m [0m +[1m10.0.0.11[0m[1m [0m 10.0.0.18 10.0.0.18 +[1m10.0.0.18[0m[1m [0m +[1m10.0.0.19[0m[1m [0m 10.0.0.18 10.0.0.19 -10.0.0.18 -10.0.0.19 -10.0.0.19 -10.0.0.19 -10.0.0.19 -10.0.0.19 +[1m10.0.0.19[0m[1m [0m +[1m10.0.0.19[0m[1m [0m 10.0.0.19 10.0.0.19 +[1m10.0.0.19[0m[1m [0m +[1m10.0.0.19[0m[1m [0m 10.0.0.19 10.0.0.20 -10.0.0.20 -10.0.0.21 +[1m10.0.0.20[0m[1m [0m +[1m10.0.0.21[0m[1m [0m 10.0.0.18 10.0.0.18 -10.0.0.22 -10.0.0.6 -10.0.0.5 -10.0.0.5 +[1m10.0.0.22[0m[1m [0m +[1m10.0.0.6[0m[1m [0m 10.0.0.5 10.0.0.5 +[1m10.0.0.5[0m[1m [0m +[1m10.0.0.5[0m[1m [0m 10.0.0.6 10.0.0.23 -10.0.0.24 -10.0.0.23 -10.0.0.23 -10.0.0.23 -10.0.0.23 -10.0.0.23 -10.0.0.23 -10.0.0.23 +[1m10.0.0.24[0m[1m [0m +[1m10.0.0.23[0m[1m [0m 10.0.0.23 10.0.0.23 +[1m10.0.0.23[0m[1m [0m +[1m10.0.0.23[0m[1m [0m 10.0.0.23 10.0.0.23 +[1m10.0.0.23[0m[1m [0m +[1m10.0.0.23[0m[1m [0m 10.0.0.23 10.0.0.23 +[1m10.0.0.23[0m[1m [0m +[1m10.0.0.23[0m[1m [0m 10.0.0.23 10.0.0.24 -10.0.0.24 -10.0.0.24 +[1m10.0.0.24[0m[1m [0m +[1m10.0.0.24[0m[1m [0m 10.0.0.24 10.0.0.25 -10.0.0.26 -10.0.0.27 -10.0.0.23 +[1m10.0.0.26[0m[1m [0m +[1m10.0.0.27[0m[1m [0m 10.0.0.23 10.0.0.23 -10.0.0.25 +[1m10.0.0.23[0m[1m [0m +[1m10.0.0.25[0m[1m [0m 10.0.0.26 10.0.0.24 -10.0.0.24 -10.0.0.27 +[1m10.0.0.24[0m[1m [0m +[1m10.0.0.27[0m[1m [0m 10.0.0.23 10.0.0.25 -10.0.0.26 -10.0.0.24 +[1m10.0.0.26[0m[1m [0m +[1m10.0.0.24[0m[1m [0m 10.0.0.24 10.0.0.27 -10.0.0.25 -10.0.0.26 +[1m10.0.0.25[0m[1m [0m +[1m10.0.0.26[0m[1m [0m 10.0.0.24 10.0.0.24 -10.0.0.27 -10.0.0.28 +[1m10.0.0.27[0m[1m [0m +[1m10.0.0.28[0m[1m [0m 10.0.0.23 10.0.0.25 -10.0.0.24 -10.0.0.24 +[1m10.0.0.24[0m[1m [0m +[1m10.0.0.24[0m[1m [0m 10.0.0.27 10.0.0.26 -10.0.0.23 -10.0.0.25 +[1m10.0.0.23[0m[1m [0m +[1m10.0.0.25[0m[1m [0m 10.0.0.26 10.0.0.24 -10.0.0.24 -10.0.0.27 -10.0.0.23 -10.0.0.23 -10.0.0.23 +[1m10.0.0.24[0m[1m [0m +[1m10.0.0.27[0m[1m [0m 10.0.0.23 10.0.0.23 +[1m10.0.0.23[0m[1m [0m +[1m10.0.0.23[0m[1m [0m 10.0.0.23 10.0.0.23 +[1m10.0.0.23[0m[1m [0m +[1m10.0.0.23[0m[1m [0m 10.0.0.23 10.0.0.23 -10.0.0.23 -10.0.0.27 -10.0.0.23 +[1m10.0.0.27[0m[1m [0m +[1m10.0.0.23[0m[1m [0m 10.0.0.25 10.0.0.24 -10.0.0.24 -10.0.0.27 +[1m10.0.0.24[0m[1m [0m +[1m10.0.0.27[0m[1m [0m 10.0.0.26 diff --git a/test/expected/test_sql_str_func.sh_1a1e07b6f72bce5402037761fa8afd66c05b4c34.err b/test/expected/test_sql_str_func.sh_1a1e07b6f72bce5402037761fa8afd66c05b4c34.err new file mode 100644 index 0000000..618c731 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_1a1e07b6f72bce5402037761fa8afd66c05b4c34.err @@ -0,0 +1 @@ +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"unexpected JSON value","attrs":[]},"reason":{"str":"","attrs":[]},"snippets":[{"source":"arg","line":1,"content":{"str":"123","attrs":[{"start":0,"end":-1,"type":"role","value":42}]}}],"notes":[],"help":{"str":"Available Properties\n scheme \n username \n password \n host \n port \n path \n query \n parameters/ \n fragment","attrs":[{"start":0,"end":20,"type":"role","value":64},{"start":23,"end":29,"type":"role","value":49},{"start":33,"end":41,"type":"role","value":49},{"start":45,"end":53,"type":"role","value":49},{"start":57,"end":61,"type":"role","value":49},{"start":65,"end":69,"type":"role","value":49},{"start":73,"end":77,"type":"role","value":49},{"start":81,"end":86,"type":"role","value":49},{"start":90,"end":100,"type":"role","value":49},{"start":100,"end":101,"type":"role","value":49},{"start":105,"end":113,"type":"role","value":49}]}} diff --git a/test/expected/test_sql_str_func.sh_1a1e07b6f72bce5402037761fa8afd66c05b4c34.out b/test/expected/test_sql_str_func.sh_1a1e07b6f72bce5402037761fa8afd66c05b4c34.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_1a1e07b6f72bce5402037761fa8afd66c05b4c34.out diff --git a/test/expected/test_sql_str_func.sh_3855d2cc0ab29171cae8e722f130adec25eae36e.err b/test/expected/test_sql_str_func.sh_3855d2cc0ab29171cae8e722f130adec25eae36e.err deleted file mode 100644 index e3d40ab..0000000 --- a/test/expected/test_sql_str_func.sh_3855d2cc0ab29171cae8e722f130adec25eae36e.err +++ /dev/null @@ -1 +0,0 @@ -error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"invalid URL: “https://bad@[fe::”","attrs":[]},"reason":{"str":"Port number was not a decimal number between 0 and 65535","attrs":[]},"snippets":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_str_func.sh_51766b600fd158a9e0677f6b0fa31b83537b2e5b.out b/test/expected/test_sql_str_func.sh_51766b600fd158a9e0677f6b0fa31b83537b2e5b.out index 061b9ed..5576c1f 100644 --- a/test/expected/test_sql_str_func.sh_51766b600fd158a9e0677f6b0fa31b83537b2e5b.out +++ b/test/expected/test_sql_str_func.sh_51766b600fd158a9e0677f6b0fa31b83537b2e5b.out @@ -1,2 +1,2 @@ Row 0: - Column parse_url('https://example.com/search?flag&flag2&=def'): {"scheme":"https","user":null,"password":null,"host":"example.com","port":null,"path":"/search","query":"flag&flag2&=def","parameters":{"flag":null,"flag2":null,"":"def"},"fragment":null} + Column parse_url('https://example.com/search?flag&flag2&=def'): {"scheme":"https","username":null,"password":null,"host":"example.com","port":null,"path":"/search","query":"flag&flag2&=def","parameters":{"flag":null,"flag2":null,"":"def"},"fragment":null} diff --git a/test/expected/test_sql_str_func.sh_57fc889eefb98571ecf3892ad670646613bf13a3.err b/test/expected/test_sql_str_func.sh_57fc889eefb98571ecf3892ad670646613bf13a3.err new file mode 100644 index 0000000..306ed4b --- /dev/null +++ b/test/expected/test_sql_str_func.sh_57fc889eefb98571ecf3892ad670646613bf13a3.err @@ -0,0 +1 @@ +error: sqlite3_exec failed -- lnav-error:{"level":"warning","message":{"str":"unexpected value for property “/unknown”","attrs":[{"start":33,"end":41,"type":"role","value":49}]},"reason":{"str":"","attrs":[]},"snippets":[{"source":"arg","line":1,"content":{"str":"{\"unknown\":\"abc\"}","attrs":[{"start":0,"end":-1,"type":"role","value":42}]}}],"notes":[],"help":{"str":"Available Properties\n scheme \n username \n password \n host \n port \n path \n query \n parameters/ \n fragment","attrs":[{"start":0,"end":20,"type":"role","value":64},{"start":23,"end":29,"type":"role","value":49},{"start":33,"end":41,"type":"role","value":49},{"start":45,"end":53,"type":"role","value":49},{"start":57,"end":61,"type":"role","value":49},{"start":65,"end":69,"type":"role","value":49},{"start":73,"end":77,"type":"role","value":49},{"start":81,"end":86,"type":"role","value":49},{"start":90,"end":100,"type":"role","value":49},{"start":100,"end":101,"type":"role","value":49},{"start":105,"end":113,"type":"role","value":49}]}} diff --git a/test/expected/test_sql_str_func.sh_57fc889eefb98571ecf3892ad670646613bf13a3.out b/test/expected/test_sql_str_func.sh_57fc889eefb98571ecf3892ad670646613bf13a3.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_57fc889eefb98571ecf3892ad670646613bf13a3.out diff --git a/test/expected/test_sql_str_func.sh_68860c50e91cd6c1f2004ee0414a6e930ed42c87.err b/test/expected/test_sql_str_func.sh_68860c50e91cd6c1f2004ee0414a6e930ed42c87.err new file mode 100644 index 0000000..66d898c --- /dev/null +++ b/test/expected/test_sql_str_func.sh_68860c50e91cd6c1f2004ee0414a6e930ed42c87.err @@ -0,0 +1 @@ +error: sqlite3_exec failed -- lnav-error:{"level":"warning","message":{"str":"unexpected value for property “/#”","attrs":[{"start":33,"end":35,"type":"role","value":49}]},"reason":{"str":"","attrs":[]},"snippets":[{"source":"arg","line":1,"content":{"str":"[1, 2, 3]","attrs":[{"start":0,"end":-1,"type":"role","value":42}]}}],"notes":[],"help":{"str":"Available Properties\n scheme \n username \n password \n host \n port \n path \n query \n parameters/ \n fragment","attrs":[{"start":0,"end":20,"type":"role","value":64},{"start":23,"end":29,"type":"role","value":49},{"start":33,"end":41,"type":"role","value":49},{"start":45,"end":53,"type":"role","value":49},{"start":57,"end":61,"type":"role","value":49},{"start":65,"end":69,"type":"role","value":49},{"start":73,"end":77,"type":"role","value":49},{"start":81,"end":86,"type":"role","value":49},{"start":90,"end":100,"type":"role","value":49},{"start":100,"end":101,"type":"role","value":49},{"start":105,"end":113,"type":"role","value":49}]}} diff --git a/test/expected/test_sql_str_func.sh_68860c50e91cd6c1f2004ee0414a6e930ed42c87.out b/test/expected/test_sql_str_func.sh_68860c50e91cd6c1f2004ee0414a6e930ed42c87.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_68860c50e91cd6c1f2004ee0414a6e930ed42c87.out diff --git a/test/expected/test_sql_str_func.sh_6ac7ab1f90c064944ff66bef5974f050c8227d4b.err b/test/expected/test_sql_str_func.sh_6ac7ab1f90c064944ff66bef5974f050c8227d4b.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_6ac7ab1f90c064944ff66bef5974f050c8227d4b.err diff --git a/test/expected/test_sql_str_func.sh_6ac7ab1f90c064944ff66bef5974f050c8227d4b.out b/test/expected/test_sql_str_func.sh_6ac7ab1f90c064944ff66bef5974f050c8227d4b.out new file mode 100644 index 0000000..a873544 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_6ac7ab1f90c064944ff66bef5974f050c8227d4b.out @@ -0,0 +1,2 @@ +Row 0: + Column encode('hi' || char(10), 'hex'): 68690a diff --git a/test/expected/test_sql_str_func.sh_6ff984d8ed3e5099376d19f0dd20d5fd1ed42494.out b/test/expected/test_sql_str_func.sh_6ff984d8ed3e5099376d19f0dd20d5fd1ed42494.out index d1dcc93..0a56fcc 100644 --- a/test/expected/test_sql_str_func.sh_6ff984d8ed3e5099376d19f0dd20d5fd1ed42494.out +++ b/test/expected/test_sql_str_func.sh_6ff984d8ed3e5099376d19f0dd20d5fd1ed42494.out @@ -1,2 +1,2 @@ Row 0: - Column parse_url('https://example.com/sea%26rch?flag&flag2&=def#frag1%20space'): {"scheme":"https","user":null,"password":null,"host":"example.com","port":null,"path":"/sea&rch","query":"flag&flag2&=def","parameters":{"flag":null,"flag2":null,"":"def"},"fragment":"frag1 space"} + Column parse_url('https://example.com/sea%26rch?flag&flag2&=def#frag1%20space'): {"scheme":"https","username":null,"password":null,"host":"example.com","port":null,"path":"/sea&rch","query":"flag&flag2&=def","parameters":{"flag":null,"flag2":null,"":"def"},"fragment":"frag1 space"} diff --git a/test/expected/test_sql_str_func.sh_805ca5e97fbf1ed56f2e920befd963255ba190b6.out b/test/expected/test_sql_str_func.sh_805ca5e97fbf1ed56f2e920befd963255ba190b6.out index 84c7397..01169ce 100644 --- a/test/expected/test_sql_str_func.sh_805ca5e97fbf1ed56f2e920befd963255ba190b6.out +++ b/test/expected/test_sql_str_func.sh_805ca5e97fbf1ed56f2e920befd963255ba190b6.out @@ -1,2 +1,2 @@ Row 0: - Column parse_url('https://example.com/search?flag&flag2'): {"scheme":"https","user":null,"password":null,"host":"example.com","port":null,"path":"/search","query":"flag&flag2","parameters":{"flag":null,"flag2":null},"fragment":null} + Column parse_url('https://example.com/search?flag&flag2'): {"scheme":"https","username":null,"password":null,"host":"example.com","port":null,"path":"/search","query":"flag&flag2","parameters":{"flag":null,"flag2":null},"fragment":null} diff --git a/test/expected/test_sql_str_func.sh_80c1fb9affbfac609ebf1cc5556aafb1ecd223c1.err b/test/expected/test_sql_str_func.sh_80c1fb9affbfac609ebf1cc5556aafb1ecd223c1.err index a92048a..29338d9 100644 --- a/test/expected/test_sql_str_func.sh_80c1fb9affbfac609ebf1cc5556aafb1ecd223c1.err +++ b/test/expected/test_sql_str_func.sh_80c1fb9affbfac609ebf1cc5556aafb1ecd223c1.err @@ -1 +1 @@ -error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to regexp_match(re, str) failed","attrs":[{"start":8,"end":20,"type":"role","value":47},{"start":21,"end":23,"type":"role","value":46},{"start":25,"end":28,"type":"role","value":46},{"start":8,"end":29,"type":"role","value":60}]},"reason":{"str":"regular expression does not have any captures","attrs":[]},"snippets":[],"help":{"str":"","attrs":[]}} +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to regexp_match(re, str) failed","attrs":[{"start":8,"end":20,"type":"role","value":49},{"start":21,"end":23,"type":"role","value":48},{"start":25,"end":28,"type":"role","value":48},{"start":8,"end":29,"type":"role","value":65}]},"reason":{"str":"regular expression does not have any captures","attrs":[]},"snippets":[],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_str_func.sh_949ffd5b2ef9fbcbe17f2e61ef7750f7038f6fd6.out b/test/expected/test_sql_str_func.sh_949ffd5b2ef9fbcbe17f2e61ef7750f7038f6fd6.out index f93d348..90daa31 100644 --- a/test/expected/test_sql_str_func.sh_949ffd5b2ef9fbcbe17f2e61ef7750f7038f6fd6.out +++ b/test/expected/test_sql_str_func.sh_949ffd5b2ef9fbcbe17f2e61ef7750f7038f6fd6.out @@ -1,2 +1,2 @@ -regexp_match('^(\w+)=([^;]+);', 'abc=def;ghi=jkl;') +[1m[4mregexp_match('^(\w+)=([^;]+);', 'abc=def;ghi=jkl;')[0m[1m[4m [0m {"col_0":"abc","col_1":"def"} diff --git a/test/expected/test_sql_str_func.sh_a515ba81cc3655c602da28cd0fa1a186d5e9a6e1.err b/test/expected/test_sql_str_func.sh_a515ba81cc3655c602da28cd0fa1a186d5e9a6e1.err index 475a9b2..7435892 100644 --- a/test/expected/test_sql_str_func.sh_a515ba81cc3655c602da28cd0fa1a186d5e9a6e1.err +++ b/test/expected/test_sql_str_func.sh_a515ba81cc3655c602da28cd0fa1a186d5e9a6e1.err @@ -1 +1 @@ -error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"invalid URL: “https://example.com:100000”","attrs":[]},"reason":{"str":"Port number was not a decimal number between 0 and 65535","attrs":[]},"snippets":[],"help":{"str":"","attrs":[]}} +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"invalid URL: https://example.com:100000","attrs":[{"start":13,"end":39,"type":"role","value":56}]},"reason":{"str":"Port number was not a decimal number between 0 and 65535","attrs":[]},"snippets":[],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_str_func.sh_b088735cf46f23ca3d5fb3da41f07a6a3b1cba35.out b/test/expected/test_sql_str_func.sh_b088735cf46f23ca3d5fb3da41f07a6a3b1cba35.out index e93f55d..7b9ef25 100644 --- a/test/expected/test_sql_str_func.sh_b088735cf46f23ca3d5fb3da41f07a6a3b1cba35.out +++ b/test/expected/test_sql_str_func.sh_b088735cf46f23ca3d5fb3da41f07a6a3b1cba35.out @@ -1,2 +1,2 @@ Row 0: - Column parse_url('https://example.com'): {"scheme":"https","user":null,"password":null,"host":"example.com","port":null,"path":"/","query":null,"parameters":null,"fragment":null} + Column parse_url('https://example.com'): {"scheme":"https","username":null,"password":null,"host":"example.com","port":null,"path":"/","query":null,"parameters":null,"fragment":null} diff --git a/test/expected/test_sql_str_func.sh_b8ebe81c4881f704624a65ec91be0868c310f6ed.err b/test/expected/test_sql_str_func.sh_b8ebe81c4881f704624a65ec91be0868c310f6ed.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_b8ebe81c4881f704624a65ec91be0868c310f6ed.err diff --git a/test/expected/test_sql_str_func.sh_b8ebe81c4881f704624a65ec91be0868c310f6ed.out b/test/expected/test_sql_str_func.sh_b8ebe81c4881f704624a65ec91be0868c310f6ed.out new file mode 100644 index 0000000..18df174 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_b8ebe81c4881f704624a65ec91be0868c310f6ed.out @@ -0,0 +1,2 @@ +Row 0: + Column unparse_url(NULL): (null) diff --git a/test/expected/test_sql_str_func.sh_bac7f6531a2adf70cd1871fb13eab26dff133b7c.out b/test/expected/test_sql_str_func.sh_bac7f6531a2adf70cd1871fb13eab26dff133b7c.out index daf8e0a..ee5f9c7 100644 --- a/test/expected/test_sql_str_func.sh_bac7f6531a2adf70cd1871fb13eab26dff133b7c.out +++ b/test/expected/test_sql_str_func.sh_bac7f6531a2adf70cd1871fb13eab26dff133b7c.out @@ -1,2 +1,2 @@ Row 0: - Column parse_url('https://example.com/search?flag'): {"scheme":"https","user":null,"password":null,"host":"example.com","port":null,"path":"/search","query":"flag","parameters":{"flag":null},"fragment":null} + Column parse_url('https://example.com/search?flag'): {"scheme":"https","username":null,"password":null,"host":"example.com","port":null,"path":"/search","query":"flag","parameters":{"flag":null},"fragment":null} diff --git a/test/expected/test_sql_str_func.sh_cdc7b869132c33cae3c2565806c2396e1b4d6253.err b/test/expected/test_sql_str_func.sh_cdc7b869132c33cae3c2565806c2396e1b4d6253.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_str_func.sh_cdc7b869132c33cae3c2565806c2396e1b4d6253.err diff --git a/test/expected/test_sql_str_func.sh_cdc7b869132c33cae3c2565806c2396e1b4d6253.out b/test/expected/test_sql_str_func.sh_cdc7b869132c33cae3c2565806c2396e1b4d6253.out new file mode 100644 index 0000000..269441a --- /dev/null +++ b/test/expected/test_sql_str_func.sh_cdc7b869132c33cae3c2565806c2396e1b4d6253.out @@ -0,0 +1,2 @@ +Row 0: + Column unparse_url('{}'): (null) diff --git a/test/expected/test_sql_str_func.sh_d4bc869850f5b7e53353fc2506fea0c8e96f29c5.err b/test/expected/test_sql_str_func.sh_d4bc869850f5b7e53353fc2506fea0c8e96f29c5.err index f4c8399..c9bad60 100644 --- a/test/expected/test_sql_str_func.sh_d4bc869850f5b7e53353fc2506fea0c8e96f29c5.err +++ b/test/expected/test_sql_str_func.sh_d4bc869850f5b7e53353fc2506fea0c8e96f29c5.err @@ -1 +1 @@ -error: sqlite3_exec failed -- Invalid regular expression: missing closing parenthesis +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"“(” is not a valid regular expression","attrs":[]},"reason":{"str":"missing closing parenthesis","attrs":[]},"snippets":[{"source":"pattern","line":0,"content":{"str":"(\n ^ missing closing parenthesis","attrs":[{"start":0,"end":1,"type":"role","value":3},{"start":0,"end":1,"type":"style","value":2359296},{"start":0,"end":1,"type":"role","value":5},{"start":3,"end":5,"type":"role","value":5},{"start":5,"end":32,"type":"role","value":5},{"start":0,"end":-1,"type":"role","value":42}]}}],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_str_func.sh_d54a759f5683a22ad289129b2096b80652b1cc0c.out b/test/expected/test_sql_str_func.sh_d54a759f5683a22ad289129b2096b80652b1cc0c.out index 659abf7..0f59225 100644 --- a/test/expected/test_sql_str_func.sh_d54a759f5683a22ad289129b2096b80652b1cc0c.out +++ b/test/expected/test_sql_str_func.sh_d54a759f5683a22ad289129b2096b80652b1cc0c.out @@ -5,16 +5,11 @@ "col_0": [ "VpxLRO" ], - "col_1": "--", - "col_2": "BEGIN", - "col_3": "lro-846063", - "col_4": "--", - "col_5": "SessionManager", - "col_6": "--", - "col_7": "vim.SessionManager.sessionIsActive", - "col_8": "--", - "col_9": "528e6e0c-246d-58b5-3234-278c6e0c5d0d", - "col_10": [ + "BEGIN": "lro-846063", + "col_1": "SessionManager", + "col_2": "vim.SessionManager.sessionIsActive", + "col_3": "528e6e0c-246d-58b5-3234-278c6e0c5d0d", + "col_4": [ "52c289ac-2563-48d5-8a8e-f178da022c0d" ] } @@ -25,22 +20,22 @@ "col_0": [ "VpxLRO" ], - "col_1": "--", - "col_2": "FINISH", - "col_3": "lro-846063" + "FINISH": "lro-846063" } }, { "log_body": "Exception was thrown when call vsan-performance-manager for cluster [vim.ClusterComputeResource:domain-c109,Cluster-52] perf metrics: N3Vim5Fault8NotFound9ExceptionE(Fault cause: vim.fault.NotFound\n--> )", "extract(log_body)": { - "Exception was thrown when call vsan-performance-manager for cluster [vim.ClusterComputeResource:domain-c109,Cluster-52] perf metrics": { - "N3Vim5Fault8NotFound9ExceptionE": [ - "Fault cause", - "vim.fault.NotFound", - "\n", - "--", - ">" - ] + "call": "vsan-performance-manager", + "cluster": { + "vim.ClusterComputeResource": "domain-c109", + "col_0": "Cluster-52" + }, + "col_0": "perf", + "metrics": "", + "N3Vim5Fault8NotFound9ExceptionE": { + "Fault cause": "vim.fault.NotFound", + "col_0": ">" } } } diff --git a/test/expected/test_sql_time_func.sh_42f0fc1a154b0d79b4f6e846f283426be498040f.err b/test/expected/test_sql_time_func.sh_42f0fc1a154b0d79b4f6e846f283426be498040f.err index 537f7c4..90c4d88 100644 --- a/test/expected/test_sql_time_func.sh_42f0fc1a154b0d79b4f6e846f283426be498040f.err +++ b/test/expected/test_sql_time_func.sh_42f0fc1a154b0d79b4f6e846f283426be498040f.err @@ -1 +1 @@ -error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to timeslice(time, slice) failed","attrs":[{"start":8,"end":17,"type":"role","value":47},{"start":18,"end":22,"type":"role","value":46},{"start":24,"end":29,"type":"role","value":46},{"start":8,"end":30,"type":"role","value":60}]},"reason":{"str":"unable to parse time slice value: blah -- Unrecognized input","attrs":[]},"snippets":[],"help":{"str":"","attrs":[]}} +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to timeslice(time, slice) failed","attrs":[{"start":8,"end":17,"type":"role","value":49},{"start":18,"end":22,"type":"role","value":48},{"start":24,"end":29,"type":"role","value":48},{"start":8,"end":30,"type":"role","value":65}]},"reason":{"str":"unable to parse time slice value: blah -- Unrecognized input","attrs":[]},"snippets":[],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_time_func.sh_4364c7f5354fe108874dd22571115e012303e001.err b/test/expected/test_sql_time_func.sh_4364c7f5354fe108874dd22571115e012303e001.err new file mode 100644 index 0000000..9d7688e --- /dev/null +++ b/test/expected/test_sql_time_func.sh_4364c7f5354fe108874dd22571115e012303e001.err @@ -0,0 +1,4 @@ +✘ error: call to timezone(tz, ts) failed + reason: bad-zone not found in timezone database + --> command-option:1 + | ;SELECT timezone('bad-zone', '2022-03-02T10:20:30.400-0700') diff --git a/test/expected/test_sql_time_func.sh_4364c7f5354fe108874dd22571115e012303e001.out b/test/expected/test_sql_time_func.sh_4364c7f5354fe108874dd22571115e012303e001.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_4364c7f5354fe108874dd22571115e012303e001.out diff --git a/test/expected/test_sql_time_func.sh_63f22db8689c238d51c9b9efe9837147ea5318e6.err b/test/expected/test_sql_time_func.sh_63f22db8689c238d51c9b9efe9837147ea5318e6.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_63f22db8689c238d51c9b9efe9837147ea5318e6.err diff --git a/test/expected/test_sql_time_func.sh_63f22db8689c238d51c9b9efe9837147ea5318e6.out b/test/expected/test_sql_time_func.sh_63f22db8689c238d51c9b9efe9837147ea5318e6.out new file mode 100644 index 0000000..16f0f98 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_63f22db8689c238d51c9b9efe9837147ea5318e6.out @@ -0,0 +1,2 @@ +Row 0: + Column timezone('America/Los_Angeles', '2022-04-02T10:20:30.400-0700'): 2022-04-02T10:20:30.400000-0700 diff --git a/test/expected/test_sql_time_func.sh_6fd8504e94688c4e7915f3a9eb5b030713141d03.out b/test/expected/test_sql_time_func.sh_6fd8504e94688c4e7915f3a9eb5b030713141d03.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_6fd8504e94688c4e7915f3a9eb5b030713141d03.out diff --git a/test/expected/test_sql_time_func.sh_72862ec9c8f261a8507d237eb673c7ddfaafd898.err b/test/expected/test_sql_time_func.sh_72862ec9c8f261a8507d237eb673c7ddfaafd898.err index 4180cf6..33e46bd 100644 --- a/test/expected/test_sql_time_func.sh_72862ec9c8f261a8507d237eb673c7ddfaafd898.err +++ b/test/expected/test_sql_time_func.sh_72862ec9c8f261a8507d237eb673c7ddfaafd898.err @@ -1 +1 @@ -error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to timeslice(time, slice) failed","attrs":[{"start":8,"end":17,"type":"role","value":47},{"start":18,"end":22,"type":"role","value":46},{"start":24,"end":29,"type":"role","value":46},{"start":8,"end":30,"type":"role","value":60}]},"reason":{"str":"no time slice value given","attrs":[]},"snippets":[],"help":{"str":"","attrs":[]}} +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"call to timeslice(time, slice) failed","attrs":[{"start":8,"end":17,"type":"role","value":49},{"start":18,"end":22,"type":"role","value":48},{"start":24,"end":29,"type":"role","value":48},{"start":8,"end":30,"type":"role","value":65}]},"reason":{"str":"no time slice value given","attrs":[]},"snippets":[],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_time_func.sh_7ae9dbbb69dbc50ee6a34afc03d2579f09363068.err b/test/expected/test_sql_time_func.sh_7ae9dbbb69dbc50ee6a34afc03d2579f09363068.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_7ae9dbbb69dbc50ee6a34afc03d2579f09363068.err diff --git a/test/expected/test_sql_time_func.sh_7ae9dbbb69dbc50ee6a34afc03d2579f09363068.out b/test/expected/test_sql_time_func.sh_7ae9dbbb69dbc50ee6a34afc03d2579f09363068.out new file mode 100644 index 0000000..6401b23 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_7ae9dbbb69dbc50ee6a34afc03d2579f09363068.out @@ -0,0 +1,2 @@ +Row 0: + Column timezone('UTC', '2022-03-02T10:20:30.400-0700'): 2022-03-02T17:20:30.400000+0000 diff --git a/test/expected/test_sql_time_func.sh_b3c00f049fdeb551a9165c281630e36359832d1f.err b/test/expected/test_sql_time_func.sh_b3c00f049fdeb551a9165c281630e36359832d1f.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_b3c00f049fdeb551a9165c281630e36359832d1f.err diff --git a/test/expected/test_sql_time_func.sh_b3c00f049fdeb551a9165c281630e36359832d1f.out b/test/expected/test_sql_time_func.sh_b3c00f049fdeb551a9165c281630e36359832d1f.out new file mode 100644 index 0000000..e02d1de --- /dev/null +++ b/test/expected/test_sql_time_func.sh_b3c00f049fdeb551a9165c281630e36359832d1f.out @@ -0,0 +1,2 @@ +Row 0: + Column timezone('America/New_York', '2022-03-02T10:20:30.400-0700'): 2022-03-02T12:20:30.400000-0500 diff --git a/test/expected/test_sql_time_func.sh_c1d7dc8a4bd3b8cb86a2f893f58a56f0f6ea1bc3.err b/test/expected/test_sql_time_func.sh_c1d7dc8a4bd3b8cb86a2f893f58a56f0f6ea1bc3.err new file mode 100644 index 0000000..ad8b26b --- /dev/null +++ b/test/expected/test_sql_time_func.sh_c1d7dc8a4bd3b8cb86a2f893f58a56f0f6ea1bc3.err @@ -0,0 +1,8 @@ +✘ error: invalid timestamp: 2022-03-02T10:20:30.400bad + reason: the leading part of the timestamp was matched, however, the trailing text “bad” was not + --> command-option:1 + | ;SELECT timezone('UTC', '2022-03-02T10:20:30.400bad') + = note: input matched time format “%Y-%m-%dT%H:%M:%S” + = note: 2022-03-02T10:20:30.400bad + ^-^ unrecognized input + = help: fix the timestamp or remove the trailing text diff --git a/test/expected/test_sql_time_func.sh_c1d7dc8a4bd3b8cb86a2f893f58a56f0f6ea1bc3.out b/test/expected/test_sql_time_func.sh_c1d7dc8a4bd3b8cb86a2f893f58a56f0f6ea1bc3.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_c1d7dc8a4bd3b8cb86a2f893f58a56f0f6ea1bc3.out diff --git a/test/expected/test_sql_time_func.sh_c5a5fc2edb54d10f1475afa7fed0b62bc05e1dc6.err b/test/expected/test_sql_time_func.sh_c5a5fc2edb54d10f1475afa7fed0b62bc05e1dc6.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_c5a5fc2edb54d10f1475afa7fed0b62bc05e1dc6.err diff --git a/test/expected/test_sql_time_func.sh_c5a5fc2edb54d10f1475afa7fed0b62bc05e1dc6.out b/test/expected/test_sql_time_func.sh_c5a5fc2edb54d10f1475afa7fed0b62bc05e1dc6.out new file mode 100644 index 0000000..689ba47 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_c5a5fc2edb54d10f1475afa7fed0b62bc05e1dc6.out @@ -0,0 +1,2 @@ +Row 0: + Column timezone('America/Los_Angeles', '2022-03-02T10:20:30.400-0700'): 2022-03-02T09:20:30.400000-0800 diff --git a/test/expected/test_sql_time_func.sh_c7fc60392a2e52b163da1e1dde6978c16f415a9e.err b/test/expected/test_sql_time_func.sh_c7fc60392a2e52b163da1e1dde6978c16f415a9e.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_time_func.sh_c7fc60392a2e52b163da1e1dde6978c16f415a9e.err diff --git a/test/expected/test_sql_time_func.sh_c7fc60392a2e52b163da1e1dde6978c16f415a9e.out b/test/expected/test_sql_time_func.sh_c7fc60392a2e52b163da1e1dde6978c16f415a9e.out new file mode 100644 index 0000000..07dccfa --- /dev/null +++ b/test/expected/test_sql_time_func.sh_c7fc60392a2e52b163da1e1dde6978c16f415a9e.out @@ -0,0 +1,2 @@ +Row 0: + Column timezone('America/Los_Angeles', '2022-03-02T10:00'): 2022-03-02T02:00:00.000000-0800 diff --git a/test/expected/test_sql_views_vtab.sh_32acc1a8bb5028636fdbf08f077f9a835ab51bec.out b/test/expected/test_sql_views_vtab.sh_32acc1a8bb5028636fdbf08f077f9a835ab51bec.out index 710f668..2b6d1d2 100644 --- a/test/expected/test_sql_views_vtab.sh_32acc1a8bb5028636fdbf08f077f9a835ab51bec.out +++ b/test/expected/test_sql_views_vtab.sh_32acc1a8bb5028636fdbf08f077f9a835ab51bec.out @@ -11,9 +11,8 @@ Run [37m[40m ./autogen.sh [0m if compiling from a cloned repository. [1mSee Also[0m -[4mAngle-grinder[1][0m is a tool to slice and dice log files on the +]8;;https://github.com/rcoh/angle-grinder\[4mAngle-grinder[0m]8;;\[4m[1][0m is a tool to slice and dice log files on the command-line. If you're familiar with the SumoLogic query language, you might find this tool more comfortable to work with. ▌[1] - https://github.com/rcoh/angle-grinder - diff --git a/test/expected/test_sql_views_vtab.sh_4363d60040424a573ed79ee4260a32e3cd72f62c.err b/test/expected/test_sql_views_vtab.sh_4363d60040424a573ed79ee4260a32e3cd72f62c.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_views_vtab.sh_4363d60040424a573ed79ee4260a32e3cd72f62c.err diff --git a/test/expected/test_sql_views_vtab.sh_4363d60040424a573ed79ee4260a32e3cd72f62c.out b/test/expected/test_sql_views_vtab.sh_4363d60040424a573ed79ee4260a32e3cd72f62c.out new file mode 100644 index 0000000..a4f45bc --- /dev/null +++ b/test/expected/test_sql_views_vtab.sh_4363d60040424a573ed79ee4260a32e3cd72f62c.out @@ -0,0 +1,46 @@ +2023-03-24T14:26:16.243Z renovate[7] INFO Dependency extraction complete + Received Time: [1m2023-03-24T14:26:16.243[0m — [1min the future[0m Format: [1m%Y-%m-%dT%H:%M:%S.%L%z[0m + Known message fields for table [1mbunyan_log[0m: + | [1m[32m◆[0m 📊 name = renovate + | [32m◇[0m 📊 hostname = renovate-gitlab-67c4bcb5-9ggbv + | [1m[32m◆[0m 📊 pid = 7 + | [32m◇[0m 📊 level = 30 + | [32m◇[0m 📊 v = 0 + JSON fields: + [1mjget[0m(log_raw_text, [35m'/baseBranch'[0m) = [1mmain[0m + [1mjget[0m(log_raw_text, [35m'/logContext'[0m) = [1mqjifsaDDI[0m + [1mjget[0m(log_raw_text, [35m'/repository'[0m) = [1mwebgui/custom-icons-transformer[0m + [1mjget[0m(log_raw_text, [35m'/stats'[0m) = [1m{"managers":{"gitlabci":{"fileCount":1,"depCount":1},"gitlabci-include":{"fileCount":1,"depCount":1},"npm":{"fileCount":1,"depCount":15}},"total":{"fileCount":3,"depCount":17}}[0m + No discovered message fields + logContext: qjifsaDDI + repository: webgui/custom-icons-transformer + baseBranch: main + stats: {"managers":{"gitlabci":{"fileCount":1,"depCount":1},"gitlabci-include":{"fileCount":1,"depCount":1},"npm":{"fileCount":1,"depCount":15}},"total":{"fileCount":3,"depCount":17}} +2023-03-24T14:26:16.390Z renovate[7] DEBUG Dependency node has unsupported/unversioned value lts-bullseye-slim (versioning=docker) + logContext: qjifsaDDI + repository: webgui/custom-icons-transformer +2023-03-24T14:26:17.493Z renovate[7] DEBUG Release 2.8.7 is pending status checks + logContext: qjifsaDDI + repository: webgui/custom-icons-transformer + depName: prettier + check: stabilityDays +2023-03-24T14:26:17.897Z renovate[7] DEBUG Release 4.4.1 is pending status checks + logContext: qjifsaDDI + repository: webgui/custom-icons-transformer + depName: rimraf + check: stabilityDays +2023-03-24T14:26:17.897Z renovate[7] DEBUG All releases are pending - using latest + logContext: qjifsaDDI + repository: webgui/custom-icons-transformer + depName: rimraf + bucket: non-major +2023-03-24T14:26:18.330Z renovate[7] DEBUG Release 2.10.0 is pending status checks + logContext: qjifsaDDI + repository: webgui/custom-icons-transformer + depName: prettier-plugin-svelte + check: stabilityDays +2023-03-24T14:26:18.331Z renovate[7] DEBUG All releases are pending - using latest + logContext: qjifsaDDI + repository: webgui/custom-icons-transformer + depName: prettier-plugin-svelte + bucket: non-major diff --git a/test/expected/test_sql_views_vtab.sh_45dbef06572b43cb997682436e753a13e003f792.err b/test/expected/test_sql_views_vtab.sh_45dbef06572b43cb997682436e753a13e003f792.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_views_vtab.sh_45dbef06572b43cb997682436e753a13e003f792.err diff --git a/test/expected/test_sql_views_vtab.sh_45dbef06572b43cb997682436e753a13e003f792.out b/test/expected/test_sql_views_vtab.sh_45dbef06572b43cb997682436e753a13e003f792.out new file mode 100644 index 0000000..74dfce6 --- /dev/null +++ b/test/expected/test_sql_views_vtab.sh_45dbef06572b43cb997682436e753a13e003f792.out @@ -0,0 +1,47 @@ +[2020-12-10 06:56:41,092] DEBUG [connect.client:69] Full request text: + Received Time: [1m2020-12-10T06:56:41.092[0m — [1min the future[0m Format: [1m%Y-%m-%d %H:%M:%S,%L[0m + Pattern: /xml_msg_log/regex/std = [1m[36m^[0m\[[1m[32m([0m[1m[32m?[0m[1m[36m<[0mtimestamp>[1m\d[0m[1m[32m{[0m4[1m[32m}[0m-[1m\d[0m[1m[32m{[0m2[1m[32m}[0m-[1m\d[0m[1m[32m{[0m2[1m[32m}[0m [1m\d[0m[1m[32m{[0m2[1m[32m}[0m:[1m\d[0m[1m[32m{[0m2[1m[32m}[0m:[1m\d[0m[1m[32m{[0m2[1m[32m}[0m,[1m\d[0m[1m[32m{[0m3[1m[32m}[0m[1m[32m)[0m\][1m\s[0m[1m[36m+[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mlevel>[1m\w[0m[1m[36m+[0m[1m[32m)[0m[1m\s[0m[1m[36m+[0m\[[1m[32m([0m[1m[32m?[0m[1m[36m<[0mmodule>[1m[32m[[0m[1m[36m^[0m:[1m[32m][0m[1m[36m*[0m[1m[32m)[0m:[1m[32m([0m[1m[32m?[0m[1m[36m<[0mline>[1m\d[0m[1m[36m+[0m[1m[32m)[0m\][1m\s[0m[1m[36m*[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mbody>[1m[32m[[0m[1m[36m^[0m\n[1m[32m][0m[1m[36m*[0m[1m[32m)[0m\n[1m[36m?[0m[1m[32m([0m[1m[32m?[0m[1m[36m<[0mmsg_data>[1m[36m.[0m[1m[36m*[0m[1m[32m)[0m + Known message fields for table [1mxml_msg_log[0m: + | [1m[32m◆[0m 📊 module = connect.client + | [1m[32m◆[0m 📊 line = 69 + | [1m[32m◆[0m msg_data = <?xml version='1.0' encoding='iso-8859-2'?>␊<a-request>␊ <head>␊ x␊ </head>␊ <source>␊ x␊ </source>␊ <request id="1">␊ <name>␊ x␊ </name>␊ </request>␊</a-request>␊ + XML fields: + [1mxpath[0m([35m'/a-request/head/text()'[0m, xml_msg_log.msg_data) = [1mx[0m + [1mxpath[0m([35m'/a-request/request/@id'[0m, xml_msg_log.msg_data) = [1m1[0m + [1mxpath[0m([35m'/a-request/request/name/text()'[0m, xml_msg_log.msg_data) = [1mx[0m + [1mxpath[0m([35m'/a-request/source/text()'[0m, xml_msg_log.msg_data) = [1mx[0m + No discovered message fields + └ #xml-req +<?xml version='1.0' encoding='iso-8859-2'?> +<a-request> + <head> + x + </head> + <source> + x + </source> + <request id="1"> + <name> + x + </name> + </request> +</a-request> + +[2020-12-10 06:56:41,099] DEBUG [m:85] Full reply text: +<?xml version='1.0' encoding='iso-8859-2'?> +<a-reply> + <head> + x + </head> + <reply id="2"> + <status> + <result>OK</result> + </status> + <name> + x + </name> + </reply> + <technical-track> + x + </technical-track> +</a-reply> diff --git a/test/expected/test_sql_views_vtab.sh_485a6ac7c69bd4b5d34d3399a9c17f6a2dc89ad3.out b/test/expected/test_sql_views_vtab.sh_485a6ac7c69bd4b5d34d3399a9c17f6a2dc89ad3.out index bfe5f1e..2ada698 100644 --- a/test/expected/test_sql_views_vtab.sh_485a6ac7c69bd4b5d34d3399a9c17f6a2dc89ad3.out +++ b/test/expected/test_sql_views_vtab.sh_485a6ac7c69bd4b5d34d3399a9c17f6a2dc89ad3.out @@ -1 +1 @@ -[33m2014-10-08 16:56:38,344:[0m[7m[33mWARN[0m[33m:foo bar baz[0m +[33m2014-10-08 16:56:38,344[0m[33m:[0m[7m[33mWARN[0m[33m:foo bar baz[0m diff --git a/test/expected/test_sql_views_vtab.sh_62d15cb9d5a9259f198aa01ca8ed200d6da38d68.out b/test/expected/test_sql_views_vtab.sh_62d15cb9d5a9259f198aa01ca8ed200d6da38d68.out index 48f52f3..a988f1b 100644 --- a/test/expected/test_sql_views_vtab.sh_62d15cb9d5a9259f198aa01ca8ed200d6da38d68.out +++ b/test/expected/test_sql_views_vtab.sh_62d15cb9d5a9259f198aa01ca8ed200d6da38d68.out @@ -1,3 +1,3 @@ -[1m[4mview_name [0m[1m[4m[7mfilter_id [0m[1m[4m[7menabled [0m[1m[4mtype [0m[1m[4mlanguage [0m[1m[4mpattern [0m -[1m[7ml[0m[1m[7mo[0m[1mg [0m[1m [0m[1m 1[0m[1m [0m[1m 1[0m[1m [0m[1min [0m[1m [0m[1mregex [0m[1m [0m[1mvmk [0m -[7mlog [0m[7m [0m[7m 2[0m[7m [0m[7m [0m[7m [0m 1 in regex vmk1 +[1m[4mview_name[0m[1m[4m [0m[1m[4mfilter_id[0m[1m[4m [0m[1m[4menabled[0m[1m[4m [0m[1m[4mtype[0m[1m[4m [0m[1m[4mlanguage[0m[1m[4m [0m[1m[4mpattern[0m[1m[4m [0m +log 1 1 in regex vmk +log 2 1 in regex vmk1 diff --git a/test/expected/test_sql_views_vtab.sh_6ffd89498b9a7758ded6717148fc2ce77a12621b.out b/test/expected/test_sql_views_vtab.sh_6ffd89498b9a7758ded6717148fc2ce77a12621b.out index 1ad5fbf..ac0d98c 100644 --- a/test/expected/test_sql_views_vtab.sh_6ffd89498b9a7758ded6717148fc2ce77a12621b.out +++ b/test/expected/test_sql_views_vtab.sh_6ffd89498b9a7758ded6717148fc2ce77a12621b.out @@ -1,2 +1,2 @@ -[1m[4msearch [0m +[1m[4msearch[0m[1m[4m [0m warn diff --git a/test/expected/test_sql_views_vtab.sh_81dc3eb51ec4dc3066a2365524001242c423a9cf.out b/test/expected/test_sql_views_vtab.sh_81dc3eb51ec4dc3066a2365524001242c423a9cf.out index c99c751..25e5645 100644 --- a/test/expected/test_sql_views_vtab.sh_81dc3eb51ec4dc3066a2365524001242c423a9cf.out +++ b/test/expected/test_sql_views_vtab.sh_81dc3eb51ec4dc3066a2365524001242c423a9cf.out @@ -1,2 +1,2 @@ -[1m[4mview_name [0m[1m[4m[7mfilter_id [0m[1m[4m[7menabled [0m[1m[4mtype [0m[1m[4mlanguage [0m[1m[4mpattern [0m -[1m[7mlog [0m[1m[7m [0m[1m[7m 0[0m[1m[7m [0m[1m[7m 1[0m[1m[7m [0m[1m[7mout [0m[1m[7m [0m[1m[7msql [0m[1m[7m [0m[1m[7m1 [0m[1m [0m +[1m[4mview_name[0m[1m[4m [0m[1m[4mfilter_id[0m[1m[4m [0m[1m[4menabled[0m[1m[4m [0m[1m[4mtype[0m[1m[4m [0m[1m[4mlanguage[0m[1m[4m [0m[1m[4mpattern[0m[1m[4m [0m +log 0 1 out sql 1 diff --git a/test/expected/test_sql_views_vtab.sh_a2c0f0e51b3f85ea2a05ecdcacaad962b4fe5d4f.out b/test/expected/test_sql_views_vtab.sh_a2c0f0e51b3f85ea2a05ecdcacaad962b4fe5d4f.out index 38afb7c..4041522 100644 --- a/test/expected/test_sql_views_vtab.sh_a2c0f0e51b3f85ea2a05ecdcacaad962b4fe5d4f.out +++ b/test/expected/test_sql_views_vtab.sh_a2c0f0e51b3f85ea2a05ecdcacaad962b4fe5d4f.out @@ -1,2 +1,2 @@ -[1m[4mview_name [0m[1m[4m[7mfilter_id [0m[1m[4m[7menabled [0m[1m[4mtype [0m[1m[4mlanguage [0m[1m[4mpattern [0m -[1m[7ml[0m[1m[7mo[0m[1mg [0m[1m [0m[1m 1[0m[1m [0m[1m 1[0m[1m [0m[1min [0m[1m [0m[1mregex [0m[1m [0m[1mvmk [0m +[1m[4mview_name[0m[1m[4m [0m[1m[4mfilter_id[0m[1m[4m [0m[1m[4menabled[0m[1m[4m [0m[1m[4mtype[0m[1m[4m [0m[1m[4mlanguage[0m[1m[4m [0m[1m[4mpattern[0m[1m[4m [0m +log 1 1 in regex vmk diff --git a/test/expected/test_sql_views_vtab.sh_a7a7fd577f710aa8b0ad5a94fdfb35daea75e06c.err b/test/expected/test_sql_views_vtab.sh_a7a7fd577f710aa8b0ad5a94fdfb35daea75e06c.err new file mode 100644 index 0000000..44ba5c2 --- /dev/null +++ b/test/expected/test_sql_views_vtab.sh_a7a7fd577f710aa8b0ad5a94fdfb35daea75e06c.err @@ -0,0 +1,4 @@ +[1m[31m✘ error[0m: Invalid “[1mtop_meta.file[0m” value + [1m[31mreason[0m: Unknown text file: [1mbad[0m +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m;[0m[1m[36m[40mUPDATE[0m[37m[40m [0m[37m[40mlnav_views[0m[37m[40m [0m[1m[36m[40mSET[0m[37m[40m [0m[37m[40mtop_meta[0m[37m[40m [0m[1m[37m[40m=[0m[37m[40m [0m[1m[37m[40mjson_object[0m[37m[40m([0m[35m[40m'file'[0m[37m[40m, [0m[35m[40m'bad'[0m[37m[40m) [0m[1m[36m[40mWHERE[0m[37m[40m [0m[37m[40mname[0m[37m[40m [0m[1m[37m[40m=[0m[37m[40m [0m[35m[40m'text'[0m diff --git a/test/expected/test_sql_views_vtab.sh_a7a7fd577f710aa8b0ad5a94fdfb35daea75e06c.out b/test/expected/test_sql_views_vtab.sh_a7a7fd577f710aa8b0ad5a94fdfb35daea75e06c.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_views_vtab.sh_a7a7fd577f710aa8b0ad5a94fdfb35daea75e06c.out diff --git a/test/expected/test_sql_views_vtab.sh_c851bdf3ba2f56fac5a216457b2d11a109e77f03.err b/test/expected/test_sql_views_vtab.sh_c851bdf3ba2f56fac5a216457b2d11a109e77f03.err index 4276af6..d4eb104 100644 --- a/test/expected/test_sql_views_vtab.sh_c851bdf3ba2f56fac5a216457b2d11a109e77f03.err +++ b/test/expected/test_sql_views_vtab.sh_c851bdf3ba2f56fac5a216457b2d11a109e77f03.err @@ -1,4 +1,4 @@ -[1m[31m✘ error[0m: SQL statement failed - [1m[31mreason[0m: Invalid time: bad-time +[1m[31m✘ error[0m: Invalid “[1mtop_time[0m” value + [1m[31mreason[0m: Unrecognized time value: [35mbad-time[0m [36m --> [0m[1mcommand-option[0m:1 [36m | [0m[37m[40m;[0m[1m[36m[40mUPDATE[0m[37m[40m [0m[37m[40mlnav_views[0m[37m[40m [0m[1m[36m[40mSET[0m[37m[40m [0m[37m[40mtop_time[0m[37m[40m [0m[1m[37m[40m=[0m[37m[40m [0m[35m[40m'bad-time'[0m[37m[40m [0m[1m[36m[40mWHERE[0m[37m[40m [0m[37m[40mname[0m[37m[40m [0m[1m[37m[40m=[0m[37m[40m [0m[35m[40m'log'[0m diff --git a/test/expected/test_sql_views_vtab.sh_d99d884ba6668b66e3ca9ea4ed2d0e236497c35d.out b/test/expected/test_sql_views_vtab.sh_d99d884ba6668b66e3ca9ea4ed2d0e236497c35d.out index bc35132..1dda4bf 100644 --- a/test/expected/test_sql_views_vtab.sh_d99d884ba6668b66e3ca9ea4ed2d0e236497c35d.out +++ b/test/expected/test_sql_views_vtab.sh_d99d884ba6668b66e3ca9ea4ed2d0e236497c35d.out @@ -1 +1 @@ -[33m2014-10-08 16:56:38,344:[0m[33mWARN[0m[33m:foo bar baz[0m +[33m2014-10-08 16:56:38,344[0m[33m:WARN[0m[33m:foo bar baz[0m diff --git a/test/expected/test_sql_xml_func.sh_81ad7678f080870956db37174bcf1054586cfbad.err b/test/expected/test_sql_xml_func.sh_81ad7678f080870956db37174bcf1054586cfbad.err new file mode 100644 index 0000000..3c5a94b --- /dev/null +++ b/test/expected/test_sql_xml_func.sh_81ad7678f080870956db37174bcf1054586cfbad.err @@ -0,0 +1,11 @@ +[1m[31m✘ error[0m: Invalid XML document + [1m[31mreason[0m: Error parsing element attribute +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[1m[37m[40mxpath[0m[37m[40m([0m[35m[40m'/catalog'[0m[37m[40m, ([0m[1m[36m[40mSELECT[0m[37m[40m [0m[37m[40mcontent[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[37m[40mlnav_file[0m[37m[40m [0m[1m[36m[40mLIMIT[0m[37m[40m [0m[1m[37m[40m1[0m[37m[40m))[0m +[36m --> [0m[1mxmldoc[0m:35 +[36m | [0m[37m[40m </description> [0m +[36m | [0m[37m[40m </book> [0m +[36m | [0m[37m[40m <book id=" bk104"> [0m +[36m | [0m[37m[40m [0m[36m[40m^ [0m[1m[31m[40mError parsing element attribute[0m +[36m | [0m[37m[40m <author>Corets, Eva</author> [0m +[36m | [0m[37m[40m <title>Oberon's Legacy</title> [0m diff --git a/test/expected/test_sql_xml_func.sh_81ad7678f080870956db37174bcf1054586cfbad.out b/test/expected/test_sql_xml_func.sh_81ad7678f080870956db37174bcf1054586cfbad.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_xml_func.sh_81ad7678f080870956db37174bcf1054586cfbad.out diff --git a/test/expected/test_sql_xml_func.sh_b036c73528a446cba46625767517cdac868aba72.err b/test/expected/test_sql_xml_func.sh_b036c73528a446cba46625767517cdac868aba72.err index 6ac0f80..319fc61 100644 --- a/test/expected/test_sql_xml_func.sh_b036c73528a446cba46625767517cdac868aba72.err +++ b/test/expected/test_sql_xml_func.sh_b036c73528a446cba46625767517cdac868aba72.err @@ -1 +1 @@ -error: sqlite3_exec failed -- Invalid XPATH expression at offset 5: Unrecognized node test +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"Invalid XPath expression","attrs":[]},"reason":{"str":"Unrecognized node test","attrs":[]},"snippets":[{"source":"xpath","line":1,"content":{"str":"/abc[\n ^ Unrecognized node test","attrs":[{"start":0,"end":5,"type":"role","value":42},{"start":11,"end":13,"type":"role","value":79},{"start":13,"end":35,"type":"role","value":5},{"start":6,"end":35,"type":"role","value":42},{"start":35,"end":35,"type":"role","value":42}]}}],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_xml_func.sh_bcbd691bb24c4f7bcb9fe0e035b290815f1c8874.err b/test/expected/test_sql_xml_func.sh_bcbd691bb24c4f7bcb9fe0e035b290815f1c8874.err new file mode 100644 index 0000000..d1ff56a --- /dev/null +++ b/test/expected/test_sql_xml_func.sh_bcbd691bb24c4f7bcb9fe0e035b290815f1c8874.err @@ -0,0 +1,7 @@ +[1m[31m✘ error[0m: Invalid XPath expression + [1m[31mreason[0m: Expected ']' to match an opening '[' +[36m --> [0m[1mcommand-option[0m:1 +[36m | [0m[37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40m*[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[1m[37m[40mxpath[0m[37m[40m([0m[35m[40m'/cat[alog'[0m[37m[40m, ([0m[1m[36m[40mSELECT[0m[37m[40m [0m[37m[40mcontent[0m[37m[40m [0m[1m[36m[40mFROM[0m[37m[40m [0m[37m[40mlnav_file[0m[37m[40m [0m[1m[36m[40mLIMIT[0m[37m[40m [0m[1m[37m[40m1[0m[37m[40m))[0m +[36m --> [0m[1mxpath[0m:1 +[36m | [0m[37m[40m/cat[alog [0m +[36m | [0m[37m[40m [0m[36m[40m^ [0m[1m[31m[40mExpected ']' to match an opening '['[0m diff --git a/test/expected/test_sql_xml_func.sh_bcbd691bb24c4f7bcb9fe0e035b290815f1c8874.out b/test/expected/test_sql_xml_func.sh_bcbd691bb24c4f7bcb9fe0e035b290815f1c8874.out new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_sql_xml_func.sh_bcbd691bb24c4f7bcb9fe0e035b290815f1c8874.out diff --git a/test/expected/test_sql_xml_func.sh_fefeb387ae14d4171225ea06cbbff3ec43990cf0.err b/test/expected/test_sql_xml_func.sh_fefeb387ae14d4171225ea06cbbff3ec43990cf0.err index a97d7cd..f495a72 100644 --- a/test/expected/test_sql_xml_func.sh_fefeb387ae14d4171225ea06cbbff3ec43990cf0.err +++ b/test/expected/test_sql_xml_func.sh_fefeb387ae14d4171225ea06cbbff3ec43990cf0.err @@ -1 +1 @@ -error: sqlite3_exec failed -- Invalid XML document at offset 3: Error parsing start element tag +error: sqlite3_exec failed -- lnav-error:{"level":"error","message":{"str":"Invalid XML document","attrs":[]},"reason":{"str":"Error parsing start element tag","attrs":[]},"snippets":[{"source":"xmldoc","line":1,"content":{"str":"<abc\n ^ Error parsing start element tag","attrs":[{"start":0,"end":4,"type":"role","value":42},{"start":8,"end":10,"type":"role","value":79},{"start":10,"end":41,"type":"role","value":5},{"start":5,"end":41,"type":"role","value":42},{"start":41,"end":41,"type":"role","value":42}]}}],"notes":[],"help":{"str":"","attrs":[]}} diff --git a/test/expected/test_sql_yaml_func.sh_41c6abde708a69e74f5b7fde865d88fa75f91e0a.err b/test/expected/test_sql_yaml_func.sh_41c6abde708a69e74f5b7fde865d88fa75f91e0a.err deleted file mode 100644 index b7f3a79..0000000 --- a/test/expected/test_sql_yaml_func.sh_41c6abde708a69e74f5b7fde865d88fa75f91e0a.err +++ /dev/null @@ -1,4 +0,0 @@ -[1m[31m✘ error[0m: failed to parse YAML content - [1m[31mreason[0m: closing ] not found -[36m --> [0m[1mcommand-option[0m:1 -[36m | [0m[37m[40m;[0m[1m[36m[40mSELECT[0m[37m[40m [0m[1m[37m[40myaml_to_json[0m[37m[40m([0m[35m[40m'[abc'[0m[37m[40m) [0m diff --git a/test/expected/test_text_file.sh_02a0514e0e384e5511ae202ea519552ba04030ed.err b/test/expected/test_text_file.sh_02a0514e0e384e5511ae202ea519552ba04030ed.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_02a0514e0e384e5511ae202ea519552ba04030ed.err diff --git a/test/expected/test_text_file.sh_02a0514e0e384e5511ae202ea519552ba04030ed.out b/test/expected/test_text_file.sh_02a0514e0e384e5511ae202ea519552ba04030ed.out new file mode 100644 index 0000000..d244d10 --- /dev/null +++ b/test/expected/test_text_file.sh_02a0514e0e384e5511ae202ea519552ba04030ed.out @@ -0,0 +1,3 @@ +Hello, [30m[47mWorld![0m! +Goodbye, [37m[40mWorld![0m! +That is not⌫⌫⌫all diff --git a/test/expected/test_text_file.sh_0bba304f34ae07c4fa9e91e0b42f5fe98654a6a8.err b/test/expected/test_text_file.sh_0bba304f34ae07c4fa9e91e0b42f5fe98654a6a8.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_0bba304f34ae07c4fa9e91e0b42f5fe98654a6a8.err diff --git a/test/expected/test_text_file.sh_0bba304f34ae07c4fa9e91e0b42f5fe98654a6a8.out b/test/expected/test_text_file.sh_0bba304f34ae07c4fa9e91e0b42f5fe98654a6a8.out new file mode 100644 index 0000000..0c3f7da --- /dev/null +++ b/test/expected/test_text_file.sh_0bba304f34ae07c4fa9e91e0b42f5fe98654a6a8.out @@ -0,0 +1,26 @@ +[32m#! /bin/sh[0m + + +[1m[36mif[0m [1m[36mtest[0m x[35m"${AUTORECONF}"[0m = x[35m""[0m; [1m[36mthen[0m + autoreconf -V 1>/dev/null 2>/dev/null + [1m[36mif[0m [1m[36mtest[0m $? -eq 0; [1m[36mthen[0m + [4mAUTORECONF[0m=autoreconf + [1m[36mfi[0m +[1m[36mfi[0m + +[1m[36mif[0m [1m[36mtest[0m x[35m"${AUTORECONF}"[0m != x[35m""[0m; [1m[36mthen[0m + ${[4mAUTORECONF[0m} -vfi -I m4 +[1m[36melse[0m + [4mAUTOCONF[0m=${AUTOCONF:-autoconf} + [4mAUTOMAKE[0m=${AUTOMAKE:-automake} + [4mAUTOHEADER[0m=${AUTOHEADER:-autoheader} + [4mACLOCAL[0m=${ACLOCAL:-aclocal} + + ${[4mAUTOCONF[0m} --version + ${[4mAUTOMAKE[0m} --version + + ${[4mACLOCAL[0m} -I m4 -I . + ${[4mAUTOHEADER[0m} -I . + ${[4mAUTOMAKE[0m} --add-missing --copy --force-missing --foreign + ${[4mAUTOCONF[0m} +[1m[36mfi[0m diff --git a/test/expected/test_text_file.sh_11fd274911e45a743b4de616888a64183d07cb76.err b/test/expected/test_text_file.sh_11fd274911e45a743b4de616888a64183d07cb76.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_11fd274911e45a743b4de616888a64183d07cb76.err diff --git a/test/expected/test_text_file.sh_11fd274911e45a743b4de616888a64183d07cb76.out b/test/expected/test_text_file.sh_11fd274911e45a743b4de616888a64183d07cb76.out new file mode 100644 index 0000000..4ef8aa7 --- /dev/null +++ b/test/expected/test_text_file.sh_11fd274911e45a743b4de616888a64183d07cb76.out @@ -0,0 +1,2 @@ +[1m[4mcontent[0m[1m[4m [0m + abc diff --git a/test/expected/test_text_file.sh_143a40164c93c7ec44a66e7940b92b128a421147.err b/test/expected/test_text_file.sh_143a40164c93c7ec44a66e7940b92b128a421147.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_143a40164c93c7ec44a66e7940b92b128a421147.err diff --git a/test/expected/test_text_file.sh_143a40164c93c7ec44a66e7940b92b128a421147.out b/test/expected/test_text_file.sh_143a40164c93c7ec44a66e7940b92b128a421147.out new file mode 100644 index 0000000..84ebd40 --- /dev/null +++ b/test/expected/test_text_file.sh_143a40164c93c7ec44a66e7940b92b128a421147.out @@ -0,0 +1,5 @@ + [35m"title"[0m: [35m"Midnight Rain"[0m, + [35m"description"[0m: [35m"A former architect battles corporate zombies, an evil sorceress, and her own childhood to become queen of the world."[0m + } + ] +} diff --git a/test/expected/test_text_file.sh_1ce4056d72b871f8bb844c86aade2a9b1da58030.err b/test/expected/test_text_file.sh_1ce4056d72b871f8bb844c86aade2a9b1da58030.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_1ce4056d72b871f8bb844c86aade2a9b1da58030.err diff --git a/test/expected/test_text_file.sh_1ce4056d72b871f8bb844c86aade2a9b1da58030.out b/test/expected/test_text_file.sh_1ce4056d72b871f8bb844c86aade2a9b1da58030.out new file mode 100644 index 0000000..b100f4c --- /dev/null +++ b/test/expected/test_text_file.sh_1ce4056d72b871f8bb844c86aade2a9b1da58030.out @@ -0,0 +1,49 @@ +[ + { + "top_meta": { + "file": "stdin", + "anchor": "#/test~1Makefile.am/distclean-local:", + "breadcrumbs": [ + { + "display_value": "stdin", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "stdin" + } + ] + }, + { + "display_value": "test/Makefile.am", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "test/Makefile.am" + }, + { + "display_value": "test/expected/expected.am" + }, + { + "display_value": "test/expected/test_sessions.sh_8732dad5481be991ca7f291d9c5451c7b016cea7.out" + }, + { + "display_value": "test/expected/test_sessions.sh_e39648f425c3f291c9d1c0d14595a019abd0cb48.out" + }, + { + "display_value": "test/test_sessions.sh" + } + ] + }, + { + "display_value": "distclean-local:", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "distclean-local:" + } + ] + } + ] + } + } +] diff --git a/test/expected/test_text_file.sh_25cef06efcbe106c2e1cc4a166b673e7b244c6d7.err b/test/expected/test_text_file.sh_25cef06efcbe106c2e1cc4a166b673e7b244c6d7.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_25cef06efcbe106c2e1cc4a166b673e7b244c6d7.err diff --git a/test/expected/test_text_file.sh_25cef06efcbe106c2e1cc4a166b673e7b244c6d7.out b/test/expected/test_text_file.sh_25cef06efcbe106c2e1cc4a166b673e7b244c6d7.out new file mode 100644 index 0000000..80a24fb --- /dev/null +++ b/test/expected/test_text_file.sh_25cef06efcbe106c2e1cc4a166b673e7b244c6d7.out @@ -0,0 +1,25 @@ +[ + { + "top_meta": { + "file": "stdin", + "breadcrumbs": [ + { + "display_value": "stdin", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "stdin" + } + ] + }, + { + "display_value": "2013-06-06T12:13:20.123", + "search_placeholder": "", + "possibilities": [ + + ] + } + ] + } + } +] diff --git a/test/expected/test_text_file.sh_265a8a5825e6c7dbc85cbe496dab6be7a349f3db.err b/test/expected/test_text_file.sh_265a8a5825e6c7dbc85cbe496dab6be7a349f3db.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_265a8a5825e6c7dbc85cbe496dab6be7a349f3db.err diff --git a/test/expected/test_text_file.sh_265a8a5825e6c7dbc85cbe496dab6be7a349f3db.out b/test/expected/test_text_file.sh_265a8a5825e6c7dbc85cbe496dab6be7a349f3db.out new file mode 100644 index 0000000..a330ad5 --- /dev/null +++ b/test/expected/test_text_file.sh_265a8a5825e6c7dbc85cbe496dab6be7a349f3db.out @@ -0,0 +1 @@ +2013-06-06T12:13:20.123 Hello, World! diff --git a/test/expected/test_text_file.sh_2e69c22dcfa37b5c3e8490a6026eacb7ca953998.err b/test/expected/test_text_file.sh_2e69c22dcfa37b5c3e8490a6026eacb7ca953998.err deleted file mode 100644 index 08a372f..0000000 --- a/test/expected/test_text_file.sh_2e69c22dcfa37b5c3e8490a6026eacb7ca953998.err +++ /dev/null @@ -1,2 +0,0 @@ -[1m[31m✘ error[0m: unable to open file: [1mnon-existent:[0m - [1m[31mreason[0m: failed to ssh to host: ssh: Could not resolve hostname non-existent: nodename nor servname provided, or not known diff --git a/test/expected/test_text_file.sh_4226123565a53b4e3f80e602c1f294721e8e07bf.err b/test/expected/test_text_file.sh_4226123565a53b4e3f80e602c1f294721e8e07bf.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_4226123565a53b4e3f80e602c1f294721e8e07bf.err diff --git a/test/expected/test_text_file.sh_4226123565a53b4e3f80e602c1f294721e8e07bf.out b/test/expected/test_text_file.sh_4226123565a53b4e3f80e602c1f294721e8e07bf.out new file mode 100644 index 0000000..063e8c8 --- /dev/null +++ b/test/expected/test_text_file.sh_4226123565a53b4e3f80e602c1f294721e8e07bf.out @@ -0,0 +1,9 @@ +[32m# Test file for syntax-highlighting[0m + +[1m[36mdef[0m hello(abc): + [35m"""[0m +[35m This is a multi-line string[0m + +[35m [0m[35m@param[0m[35m abc: blah blah[0m +[35m """[0m + [1m[36mreturn[0m abc + 1 diff --git a/test/expected/test_text_file.sh_4dd174410d702a7b4be794fb6fa2c8889bd768d6.err b/test/expected/test_text_file.sh_4dd174410d702a7b4be794fb6fa2c8889bd768d6.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_4dd174410d702a7b4be794fb6fa2c8889bd768d6.err diff --git a/test/expected/test_text_file.sh_4dd174410d702a7b4be794fb6fa2c8889bd768d6.out b/test/expected/test_text_file.sh_4dd174410d702a7b4be794fb6fa2c8889bd768d6.out new file mode 100644 index 0000000..e6de131 --- /dev/null +++ b/test/expected/test_text_file.sh_4dd174410d702a7b4be794fb6fa2c8889bd768d6.out @@ -0,0 +1,6 @@ + [35m"author"[0m: [35m"Ralls, Kim"[0m, + [35m"title"[0m: [35m"Midnight Rain"[0m, + [35m"description"[0m: [35m"A former architect battles corporate zombies, an evil sorceress, and her own childhood to become queen of the world."[0m + } + ] +} diff --git a/test/expected/test_text_file.sh_596b120fbea638472a27964444e262b4572afacc.err b/test/expected/test_text_file.sh_596b120fbea638472a27964444e262b4572afacc.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_596b120fbea638472a27964444e262b4572afacc.err diff --git a/test/expected/test_text_file.sh_596b120fbea638472a27964444e262b4572afacc.out b/test/expected/test_text_file.sh_596b120fbea638472a27964444e262b4572afacc.out new file mode 100644 index 0000000..84ebd40 --- /dev/null +++ b/test/expected/test_text_file.sh_596b120fbea638472a27964444e262b4572afacc.out @@ -0,0 +1,5 @@ + [35m"title"[0m: [35m"Midnight Rain"[0m, + [35m"description"[0m: [35m"A former architect battles corporate zombies, an evil sorceress, and her own childhood to become queen of the world."[0m + } + ] +} diff --git a/test/expected/test_text_file.sh_5b51b55dff7332c5bee2c9b797c401c5614d574a.out b/test/expected/test_text_file.sh_5b51b55dff7332c5bee2c9b797c401c5614d574a.out index a39be1e..1f28ffd 100644 --- a/test/expected/test_text_file.sh_5b51b55dff7332c5bee2c9b797c401c5614d574a.out +++ b/test/expected/test_text_file.sh_5b51b55dff7332c5bee2c9b797c401c5614d574a.out @@ -1,4 +1,4 @@ -[4mBuild[1][0m[4m[2][0m [4mDocs[3][0m[4m[4][0m [4mCoverage Status[5][0m[4m[6][0m [4mlnav[7][0m[4m[8][0m +]8;;https://github.com/tstack/lnav/actions?query=workflow%3Aci-build\[4m🖼 Build[1][0m]8;;\[4m[2][0m ]8;;https://docs.lnav.org\[4m🖼 Docs[3][0m]8;;\[4m[4][0m ]8;;https://coveralls.io/github/tstack/lnav?branch=master\[4m🖼 Coverage Status[5][0m]8;;\[4m[6][0m ]8;;https://snapcraft.io/lnav\[4m🖼 lnav[7][0m]8;;\[4m[8][0m ▌[1] - https://github.com/tstack/lnav/workflows/ci-build/badge.svg ▌[2] - https://github.com/tstack/lnav/actions?query=workflow%3Aci-build @@ -9,61 +9,122 @@ ▌[7] - https://snapcraft.io/lnav/badge.svg ▌[8] - https://snapcraft.io/lnav -[4m<img[0m -[4msrc="https://assets-global.website-files.com/6257adef93867e50d84d30e2/62594fddd654fc29fcc07359_cb48d2a8d4991281d7a6a95d2f58195e.svg"[0m -[4mheight="20"/>[1][0m +]8;;https://discord.gg/erBPnKwz7R\[4m🖼 [0m]8;;\]8;;https://discord.gg/erBPnKwz7R\[4mDiscord Logo[0m]8;;\]8;;https://discord.gg/erBPnKwz7R\[4m[1][0m]8;;\[4m[2][0m - ▌[1] - https://discord.gg/erBPnKwz7R + ▌[1] - https://assets-global.website-files.com/6257adef93867e50d84d30e2/62594fddd654fc29fcc07359_cb48d2a8d4991281d7a6a95d2f58195e.svg + ▌[2] - https://discord.gg/erBPnKwz7R -[4mThis is the source repository for [0m[1m[4mlnav[0m[4m, visit [0m[4mhttps://lnav.org[1][0m[4m for[0m +[4mThis is the source repository for [0m[1m[4mlnav[0m[4m, visit [0m]8;;https://lnav.org\[4mhttps://lnav.org[0m]8;;\[4m[1][0m[4m for[0m [4ma high level overview.[0m ▌[1] - https://lnav.org [1m[35mLNAV – The Logfile Navigator[0m -The Log File Navigator, [1mlnav[0m for short, is an advanced log file viewer -for the small-scale. It is a terminal application that can understand -your log files and make it easy for you to find problems with little -to no setup. +The Logfile Navigator is a log file viewer for the terminal. Given a +set of files/directories, [1mlnav[0m will: + + [33m•[0m decompress as needed; + [33m•[0m detect their format; + [33m•[0m merge the files together by time into a single view; + [33m•[0m tail the files, follow renames, find new files in + directories; + [33m•[0m build an index of errors and warnings; + [33m•[0m ]8;;https://docs.lnav.org/en/latest/formats.html#json-lines\[4mpretty-print JSON-lines[0m]8;;\[4m[1][0m. + + ▌[1] - https://docs.lnav.org/en/latest/formats.html#json-lines + +Then, in the [1mlnav[0m TUI, you can: + + [33m•[0m jump quickly to the previous/next error (]8;;https://docs.lnav.org/en/latest/hotkeys.html#spatial-navigation\[4mpress [0m]8;;\]8;;https://docs.lnav.org/en/latest/hotkeys.html#spatial-navigation\[4m[37m[40m e [0m]8;;\]8;;https://docs.lnav.org/en/latest/hotkeys.html#spatial-navigation\[4m/[0m]8;;\]8;;https://docs.lnav.org/en/latest/hotkeys.html#spatial-navigation\[4m[37m[40m E [0m]8;;\[4m[1][0m); + [33m•[0m search using regular expressions (]8;;https://docs.lnav.org/en/latest/hotkeys.html#spatial-navigation\[4mpress [0m]8;;\]8;;https://docs.lnav.org/en/latest/hotkeys.html#spatial-navigation\[4m[37m[40m / [0m]8;;\[4m[2][0m); + [33m•[0m highlight text with a regular expression (]8;;https://docs.lnav.org/en/latest/commands.html#highlight-pattern\[4m[37m[40m :highlight [0m]8;;\[4m[3][0m + command); + [33m•[0m filter messages using ]8;;https://docs.lnav.org/en/latest/usage.html#regular-expression-match\[4mregular expressions[0m]8;;\[4m[4][0m or ]8;;https://docs.lnav.org/en/latest/usage.html#sqlite-expression\[4mSQLite[0m]8;;\ + ]8;;https://docs.lnav.org/en/latest/usage.html#sqlite-expression\[4mexpressions[0m]8;;\[4m[5][0m; + [33m•[0m pretty-print structured text (]8;;https://docs.lnav.org/en/latest/ui.html#pretty\[4mpress [0m]8;;\]8;;https://docs.lnav.org/en/latest/ui.html#pretty\[4m[37m[40m P [0m]8;;\[4m[6][0m); + [33m•[0m view a histogram of messages over time (]8;;https://docs.lnav.org/en/latest/ui.html#hist\[4mpress [0m]8;;\]8;;https://docs.lnav.org/en/latest/ui.html#hist\[4m[37m[40m i [0m]8;;\[4m[7][0m); + [33m•[0m query messages using SQLite (]8;;https://docs.lnav.org/en/latest/sqlext.html\[4mpress [0m]8;;\]8;;https://docs.lnav.org/en/latest/sqlext.html\[4m[37m[40m ; [0m]8;;\[4m[8][0m) + + ▌[1] - https://docs.lnav.org/en/latest/hotkeys.html#spatial-navigation + ▌[2] - https://docs.lnav.org/en/latest/hotkeys.html#spatial-navigation + ▌[3] - https://docs.lnav.org/en/latest/commands.html#highlight-pattern + ▌[4] - https://docs.lnav.org/en/latest/usage.html#regular-expression-match + ▌[5] - https://docs.lnav.org/en/latest/usage.html#sqlite-expression + ▌[6] - https://docs.lnav.org/en/latest/ui.html#pretty + ▌[7] - https://docs.lnav.org/en/latest/ui.html#hist + ▌[8] - https://docs.lnav.org/en/latest/sqlext.html [1mScreenshot[0m -The following screenshot shows a syslog file. Log lines are displayed -with highlights. Errors are red and warnings are yellow. +The following screenshot shows a mix of syslog and web access log +files. Failed requests are shown in red. Identifiers, like IP +address and PIDs are semantically highlighted. -[4mScreenshot[1][0m[4m[2][0m +]8;;docs/assets/images/lnav-front-page.png\[4m🖼 Screenshot[1][0m]8;;\[4m[2][0m - ▌[1] - file://{top_srcdir}/docs/assets/images/lnav-syslog-thumb.png - ▌[2] - file://{top_srcdir}/docs/assets/images/lnav-syslog.png + ▌[1] - file://{top_srcdir}/docs/assets/images/lnav-front-page.png + ▌[2] - file://{top_srcdir}/docs/assets/images/lnav-front-page.png -[1mFeatures[0m +[1mWhy not [0m[1mjust[0m[1m use [0m[1m[37m[40m tail [0m[1m/[0m[1m[37m[40m grep [0m[1m/[0m[1m[37m[40m less [0m[1m?[0m - [33m•[0m Log messages from different files are collated together - into a single view - [33m•[0m Automatic detection of log format - [33m•[0m Automatic decompression of GZip and BZip2 files - [33m•[0m Filter log messages based on regular expressions - [33m•[0m Use SQL to analyze your logs - [33m•[0m And more... +The standard Unix utilities are great for processing raw text lines, +however, they do not understand log messages. Tail can watch multiple +files at a time, but it won't display messages in order by time and +you can't scroll backwards. Grep will only find matching lines, but +won't return a full multi-line log message. Less can only display a +single file at a time. Also, none of these basic tools handle +compressed files. + +[1mTry online before installing[0m + +You can SSH into a demo node to play with lnav before installing. + +The [35m"playground"[0m account starts lnav with a couple of log files as an +example: + +]8;;ssh://playground@demo.lnav.org\[4m[37m[40m $ ssh playground@demo.lnav.org [0m]8;;\[4m[1][0m + + ▌[1] - ssh://playground@demo.lnav.org + +The [35m"tutorial 1"[0m account is an interactive tutorial that can teach you +the basics of operation: + +]8;;ssh://tutorial1@demo.lnav.org\[4m[37m[40m $ ssh tutorial1@demo.lnav.org [0m]8;;\[4m[1][0m + + ▌[1] - ssh://tutorial1@demo.lnav.org [1mInstallation[0m -[4mDownload a statically-linked binary for Linux/MacOS from the release[0m -[4mpage[1][0m +]8;;https://github.com/tstack/lnav/releases/latest#release-artifacts\[4mDownload a statically-linked binary for Linux/MacOS from the release[0m]8;;\ +]8;;https://github.com/tstack/lnav/releases/latest#release-artifacts\[4mpage[0m]8;;\[4m[1][0m ▌[1] - https://github.com/tstack/lnav/releases/latest#release-artifacts +[4mBrew on MacOS[0m + + ▌[33m[40m$ [0m[37m[40mbrew install lnav [0m + [1mUsage[0m -The only file installed is the executable, [37m[40m lnav [0m. You can execute it -with no arguments to view the default set of files: +Simply point [1mlnav[0m at the files or directories you want to monitor, it +will figure out the rest: - ▌[37m[40m$ lnav [0m + ▌[33m[40m$ [0m[37m[40mlnav /path/to/file1 /path/to/dir ... [0m -You can view all the syslog messages by running: +The [1mlnav[0m TUI will pop up right away and begin indexing the files. +Progress is displayed in the [35m"Files"[0m panel at the bottom. Once the +indexing has finished, the LOG view will display the log messages that +were recognized[^1]. You can then use the usual hotkeys to move around +the view (arrow keys or [37m[40m j [0m/[37m[40m k [0m/[37m[40m h [0m/[37m[40m l [0m to move down/up/left/right). - ▌[37m[40m$ lnav /var/log/messages* [0m +See the ]8;;https://docs.lnav.org/en/latest/usage.html\[4mUsage section[0m]8;;\[4m[1][0m of the online documentation for more +information. + + ▌[1] - https://docs.lnav.org/en/latest/usage.html + +[^1]: Files that do not contain log messages can be seen in the TEXT +view (reachable by pressing [37m[40m t [0m). [4mUsage with [0m[4m[37m[40m systemd-journald [0m @@ -82,8 +143,9 @@ output format to include the year, otherwise [37m[40m lnav [0m gets confused: ▌[37m[40m$ journalctl -o short-iso | lnav [0m -It is also possible to use [37m[40m journalctl [0m's json output format and [37m[40m lnav[0m -will make use of additional fields such as PRIORITY and _SYSTEMD_UNIT: +It is also possible to use [37m[40m journalctl [0m's json output format and +[37m[40m lnav [0mwill make use of additional fields such as PRIORITY and +_SYSTEMD_UNIT: ▌[37m[40m$ journalctl -o json | lnav [0m @@ -100,8 +162,8 @@ the ones actually recognized by [37m[40m lnav [0m for increased efficiency: ▌[37m[40m$ journalctl -o json --output-fields=MESSAGE,PRIORITY,_PID,SYSLOG_IDENTIFIER,_SYSTEMD_UNIT | lnav [0m If your system has been running for a long time, for increased -efficiency you may want to limit the number of log lines fed into [37m[40m lnav[0m -, e.g. via [37m[40m journalctl [0m's [37m[40m -n [0m or [37m[40m --since=... [0m options. +efficiency you may want to limit the number of log lines fed into +[37m[40m lnav [0m, e.g. via [37m[40m journalctl [0m's [37m[40m -n [0m or [37m[40m --since=... [0m options. In case of a persistent journal, you may want to limit the number of log lines fed into [37m[40m lnav [0m via [37m[40m journalctl [0m's [37m[40m -b [0m option. @@ -111,9 +173,9 @@ log lines fed into [37m[40m lnav [0m via [37m[40m journalctl [0m's [37m[ Please file issues on this repository or use the discussions section. The following alternatives are also available: - [33m•[0m [4msupport@lnav.org[1][0m - [33m•[0m [4mDiscord[2][0m - [33m•[0m [4mGoogle Groups[3][0m + [33m•[0m ]8;;mailto:support@lnav.org\[4msupport@lnav.org[0m]8;;\[4m[1][0m + [33m•[0m ]8;;https://discord.gg/erBPnKwz7R\[4mDiscord[0m]8;;\[4m[2][0m + [33m•[0m ]8;;https://groups.google.com/g/lnav\[4mGoogle Groups[0m]8;;\[4m[3][0m ▌[1] - mailto:support@lnav.org ▌[2] - https://discord.gg/erBPnKwz7R @@ -121,9 +183,9 @@ The following alternatives are also available: [1mLinks[0m - [33m•[0m [4mMain Site[1][0m - [33m•[0m [1m[4mDocumentation[0m[4m[2][0m on Read the Docs - [33m•[0m [4mInternal Architecture[3][0m + [33m•[0m ]8;;https://lnav.org\[4mMain Site[0m]8;;\[4m[1][0m + [33m•[0m ]8;;https://docs.lnav.org\[1m[4mDocumentation[0m]8;;\[4m[2][0m on Read the Docs + [33m•[0m ]8;;ARCHITECTURE.md\[4mInternal Architecture[0m]8;;\[4m[3][0m ▌[1] - https://lnav.org ▌[2] - https://docs.lnav.org @@ -131,7 +193,7 @@ The following alternatives are also available: [1mContributing[0m - [33m•[0m [4mBecome a Sponsor on GitHub[1][0m + [33m•[0m ]8;;https://github.com/sponsors/tstack\[4mBecome a Sponsor on GitHub[0m]8;;\[4m[1][0m ▌[1] - https://github.com/sponsors/tstack @@ -144,18 +206,20 @@ The following software packages are required to build lnav: [33m•[0m gcc/clang - A C++14-compatible compiler. [33m•[0m libpcre2 - The Perl Compatible Regular Expression v2 (PCRE2) library. - [33m•[0m sqlite - The SQLite database engine. Version 3.9.0 - or higher is required. + [33m•[0m sqlite - The SQLite database engine. Version + 3.9.0 or higher is required. [33m•[0m ncurses - The ncurses text UI library. [33m•[0m readline - The readline line editing library. [33m•[0m zlib - The zlib compression library. [33m•[0m bz2 - The bzip2 compression library. [33m•[0m libcurl - The cURL library for downloading files from URLs. Version 7.23.0 or higher is required. - [33m•[0m libarchive - The libarchive library for opening archive - files, like zip/tgz. + [33m•[0m libarchive - The libarchive library for opening + archive files, like zip/tgz. [33m•[0m wireshark - The [35m'tshark'[0m program is used to interpret pcap files. + [33m•[0m cargo/rust - The Rust language is used to build the + PRQL compiler. [4mBuild[0m @@ -170,9 +234,8 @@ Run [37m[40m ./autogen.sh [0m if compiling from a cloned repository. [1mSee Also[0m -[4mAngle-grinder[1][0m is a tool to slice and dice log files on the +]8;;https://github.com/rcoh/angle-grinder\[4mAngle-grinder[0m]8;;\[4m[1][0m is a tool to slice and dice log files on the command-line. If you're familiar with the SumoLogic query language, you might find this tool more comfortable to work with. ▌[1] - https://github.com/rcoh/angle-grinder - diff --git a/test/expected/test_text_file.sh_5e9320f18d066e6fc930dbbffc357af64312bd4b.err b/test/expected/test_text_file.sh_5e9320f18d066e6fc930dbbffc357af64312bd4b.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_5e9320f18d066e6fc930dbbffc357af64312bd4b.err diff --git a/test/expected/test_text_file.sh_5e9320f18d066e6fc930dbbffc357af64312bd4b.out b/test/expected/test_text_file.sh_5e9320f18d066e6fc930dbbffc357af64312bd4b.out new file mode 100644 index 0000000..1a4081b --- /dev/null +++ b/test/expected/test_text_file.sh_5e9320f18d066e6fc930dbbffc357af64312bd4b.out @@ -0,0 +1,42 @@ +[ + { + "top_meta": { + "file": "ECHO(1)", + "breadcrumbs": [ + { + "display_value": "ECHO(1)", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "ECHO(1)" + } + ] + }, + { + "display_value": "⋯", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "DESCRIPTION" + }, + { + "display_value": "EXIT STATUS" + }, + { + "display_value": "NAME" + }, + { + "display_value": "SEE ALSO" + }, + { + "display_value": "STANDARDS" + }, + { + "display_value": "SYNOPSIS" + } + ] + } + ] + } + } +] diff --git a/test/expected/test_text_file.sh_6a24078983cf1b7a80b6fb65d5186cd125498136.out b/test/expected/test_text_file.sh_6a24078983cf1b7a80b6fb65d5186cd125498136.out index accb1c3..3fe2949 100644 --- a/test/expected/test_text_file.sh_6a24078983cf1b7a80b6fb65d5186cd125498136.out +++ b/test/expected/test_text_file.sh_6a24078983cf1b7a80b6fb65d5186cd125498136.out @@ -1,40 +1,73 @@ [1mScreenshot[0m -The following screenshot shows a syslog file. Log lines are displayed -with highlights. Errors are red and warnings are yellow. +The following screenshot shows a mix of syslog and web access log +files. Failed requests are shown in red. Identifiers, like IP +address and PIDs are semantically highlighted. -[4mScreenshot[1][0m[4m[2][0m +]8;;docs/assets/images/lnav-front-page.png\[4m🖼 Screenshot[1][0m]8;;\[4m[2][0m - ▌[1] - file://{top_srcdir}/docs/assets/images/lnav-syslog-thumb.png - ▌[2] - file://{top_srcdir}/docs/assets/images/lnav-syslog.png + ▌[1] - file://{top_srcdir}/docs/assets/images/lnav-front-page.png + ▌[2] - file://{top_srcdir}/docs/assets/images/lnav-front-page.png -[1mFeatures[0m +[1mWhy not [0m[1mjust[0m[1m use [0m[1m[37m[40m tail [0m[1m/[0m[1m[37m[40m grep [0m[1m/[0m[1m[37m[40m less [0m[1m?[0m - [33m•[0m Log messages from different files are collated together - into a single view - [33m•[0m Automatic detection of log format - [33m•[0m Automatic decompression of GZip and BZip2 files - [33m•[0m Filter log messages based on regular expressions - [33m•[0m Use SQL to analyze your logs - [33m•[0m And more... +The standard Unix utilities are great for processing raw text lines, +however, they do not understand log messages. Tail can watch multiple +files at a time, but it won't display messages in order by time and +you can't scroll backwards. Grep will only find matching lines, but +won't return a full multi-line log message. Less can only display a +single file at a time. Also, none of these basic tools handle +compressed files. + +[1mTry online before installing[0m + +You can SSH into a demo node to play with lnav before installing. + +The [35m"playground"[0m account starts lnav with a couple of log files as an +example: + +]8;;ssh://playground@demo.lnav.org\[4m[37m[40m $ ssh playground@demo.lnav.org [0m]8;;\[4m[1][0m + + ▌[1] - ssh://playground@demo.lnav.org + +The [35m"tutorial 1"[0m account is an interactive tutorial that can teach you +the basics of operation: + +]8;;ssh://tutorial1@demo.lnav.org\[4m[37m[40m $ ssh tutorial1@demo.lnav.org [0m]8;;\[4m[1][0m + + ▌[1] - ssh://tutorial1@demo.lnav.org [1mInstallation[0m -[4mDownload a statically-linked binary for Linux/MacOS from the release[0m -[4mpage[1][0m +]8;;https://github.com/tstack/lnav/releases/latest#release-artifacts\[4mDownload a statically-linked binary for Linux/MacOS from the release[0m]8;;\ +]8;;https://github.com/tstack/lnav/releases/latest#release-artifacts\[4mpage[0m]8;;\[4m[1][0m ▌[1] - https://github.com/tstack/lnav/releases/latest#release-artifacts +[4mBrew on MacOS[0m + + ▌[33m[40m$ [0m[37m[40mbrew install lnav [0m + [1mUsage[0m -The only file installed is the executable, [37m[40m lnav [0m. You can execute it -with no arguments to view the default set of files: +Simply point [1mlnav[0m at the files or directories you want to monitor, it +will figure out the rest: - ▌[37m[40m$ lnav [0m + ▌[33m[40m$ [0m[37m[40mlnav /path/to/file1 /path/to/dir ... [0m -You can view all the syslog messages by running: +The [1mlnav[0m TUI will pop up right away and begin indexing the files. +Progress is displayed in the [35m"Files"[0m panel at the bottom. Once the +indexing has finished, the LOG view will display the log messages that +were recognized[^1]. You can then use the usual hotkeys to move around +the view (arrow keys or [37m[40m j [0m/[37m[40m k [0m/[37m[40m h [0m/[37m[40m l [0m to move down/up/left/right). - ▌[37m[40m$ lnav /var/log/messages* [0m +See the ]8;;https://docs.lnav.org/en/latest/usage.html\[4mUsage section[0m]8;;\[4m[1][0m of the online documentation for more +information. + + ▌[1] - https://docs.lnav.org/en/latest/usage.html + +[^1]: Files that do not contain log messages can be seen in the TEXT +view (reachable by pressing [37m[40m t [0m). [4mUsage with [0m[4m[37m[40m systemd-journald [0m @@ -53,8 +86,9 @@ output format to include the year, otherwise [37m[40m lnav [0m gets confused: ▌[37m[40m$ journalctl -o short-iso | lnav [0m -It is also possible to use [37m[40m journalctl [0m's json output format and [37m[40m lnav[0m -will make use of additional fields such as PRIORITY and _SYSTEMD_UNIT: +It is also possible to use [37m[40m journalctl [0m's json output format and +[37m[40m lnav [0mwill make use of additional fields such as PRIORITY and +_SYSTEMD_UNIT: ▌[37m[40m$ journalctl -o json | lnav [0m @@ -71,8 +105,8 @@ the ones actually recognized by [37m[40m lnav [0m for increased efficiency: ▌[37m[40m$ journalctl -o json --output-fields=MESSAGE,PRIORITY,_PID,SYSLOG_IDENTIFIER,_SYSTEMD_UNIT | lnav [0m If your system has been running for a long time, for increased -efficiency you may want to limit the number of log lines fed into [37m[40m lnav[0m -, e.g. via [37m[40m journalctl [0m's [37m[40m -n [0m or [37m[40m --since=... [0m options. +efficiency you may want to limit the number of log lines fed into +[37m[40m lnav [0m, e.g. via [37m[40m journalctl [0m's [37m[40m -n [0m or [37m[40m --since=... [0m options. In case of a persistent journal, you may want to limit the number of log lines fed into [37m[40m lnav [0m via [37m[40m journalctl [0m's [37m[40m -b [0m option. @@ -82,9 +116,9 @@ log lines fed into [37m[40m lnav [0m via [37m[40m journalctl [0m's [37m[ Please file issues on this repository or use the discussions section. The following alternatives are also available: - [33m•[0m [4msupport@lnav.org[1][0m - [33m•[0m [4mDiscord[2][0m - [33m•[0m [4mGoogle Groups[3][0m + [33m•[0m ]8;;mailto:support@lnav.org\[4msupport@lnav.org[0m]8;;\[4m[1][0m + [33m•[0m ]8;;https://discord.gg/erBPnKwz7R\[4mDiscord[0m]8;;\[4m[2][0m + [33m•[0m ]8;;https://groups.google.com/g/lnav\[4mGoogle Groups[0m]8;;\[4m[3][0m ▌[1] - mailto:support@lnav.org ▌[2] - https://discord.gg/erBPnKwz7R @@ -92,9 +126,9 @@ The following alternatives are also available: [1mLinks[0m - [33m•[0m [4mMain Site[1][0m - [33m•[0m [1m[4mDocumentation[0m[4m[2][0m on Read the Docs - [33m•[0m [4mInternal Architecture[3][0m + [33m•[0m ]8;;https://lnav.org\[4mMain Site[0m]8;;\[4m[1][0m + [33m•[0m ]8;;https://docs.lnav.org\[1m[4mDocumentation[0m]8;;\[4m[2][0m on Read the Docs + [33m•[0m ]8;;ARCHITECTURE.md\[4mInternal Architecture[0m]8;;\[4m[3][0m ▌[1] - https://lnav.org ▌[2] - https://docs.lnav.org @@ -102,7 +136,7 @@ The following alternatives are also available: [1mContributing[0m - [33m•[0m [4mBecome a Sponsor on GitHub[1][0m + [33m•[0m ]8;;https://github.com/sponsors/tstack\[4mBecome a Sponsor on GitHub[0m]8;;\[4m[1][0m ▌[1] - https://github.com/sponsors/tstack @@ -115,18 +149,20 @@ The following software packages are required to build lnav: [33m•[0m gcc/clang - A C++14-compatible compiler. [33m•[0m libpcre2 - The Perl Compatible Regular Expression v2 (PCRE2) library. - [33m•[0m sqlite - The SQLite database engine. Version 3.9.0 - or higher is required. + [33m•[0m sqlite - The SQLite database engine. Version + 3.9.0 or higher is required. [33m•[0m ncurses - The ncurses text UI library. [33m•[0m readline - The readline line editing library. [33m•[0m zlib - The zlib compression library. [33m•[0m bz2 - The bzip2 compression library. [33m•[0m libcurl - The cURL library for downloading files from URLs. Version 7.23.0 or higher is required. - [33m•[0m libarchive - The libarchive library for opening archive - files, like zip/tgz. + [33m•[0m libarchive - The libarchive library for opening + archive files, like zip/tgz. [33m•[0m wireshark - The [35m'tshark'[0m program is used to interpret pcap files. + [33m•[0m cargo/rust - The Rust language is used to build the + PRQL compiler. [4mBuild[0m @@ -141,9 +177,8 @@ Run [37m[40m ./autogen.sh [0m if compiling from a cloned repository. [1mSee Also[0m -[4mAngle-grinder[1][0m is a tool to slice and dice log files on the +]8;;https://github.com/rcoh/angle-grinder\[4mAngle-grinder[0m]8;;\[4m[1][0m is a tool to slice and dice log files on the command-line. If you're familiar with the SumoLogic query language, you might find this tool more comfortable to work with. ▌[1] - https://github.com/rcoh/angle-grinder - diff --git a/test/expected/test_text_file.sh_73f69c883f60761bff9f8874f61d21a189e92912.err b/test/expected/test_text_file.sh_73f69c883f60761bff9f8874f61d21a189e92912.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_73f69c883f60761bff9f8874f61d21a189e92912.err diff --git a/test/expected/test_text_file.sh_73f69c883f60761bff9f8874f61d21a189e92912.out b/test/expected/test_text_file.sh_73f69c883f60761bff9f8874f61d21a189e92912.out new file mode 100644 index 0000000..b3ee8cf --- /dev/null +++ b/test/expected/test_text_file.sh_73f69c883f60761bff9f8874f61d21a189e92912.out @@ -0,0 +1,43 @@ +[ + { + "top_meta": { + "file": "ECHO(1)", + "anchor": "#description", + "breadcrumbs": [ + { + "display_value": "ECHO(1)", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "ECHO(1)" + } + ] + }, + { + "display_value": "DESCRIPTION", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "DESCRIPTION" + }, + { + "display_value": "EXIT STATUS" + }, + { + "display_value": "NAME" + }, + { + "display_value": "SEE ALSO" + }, + { + "display_value": "STANDARDS" + }, + { + "display_value": "SYNOPSIS" + } + ] + } + ] + } + } +] diff --git a/test/expected/test_text_file.sh_786c7262f977201af36b0e69ba1a2aba130bbb06.err b/test/expected/test_text_file.sh_786c7262f977201af36b0e69ba1a2aba130bbb06.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_786c7262f977201af36b0e69ba1a2aba130bbb06.err diff --git a/test/expected/test_text_file.sh_786c7262f977201af36b0e69ba1a2aba130bbb06.out b/test/expected/test_text_file.sh_786c7262f977201af36b0e69ba1a2aba130bbb06.out new file mode 100644 index 0000000..efb5ebd --- /dev/null +++ b/test/expected/test_text_file.sh_786c7262f977201af36b0e69ba1a2aba130bbb06.out @@ -0,0 +1,4 @@ +Duis aute irure dolor in reprehenderit in voluptate velit +esse cillum dolore eu fugiat nulla pariatur. Excepteur +sint occaecat cupidatat non proident, sunt in culpa qui +officia deserunt mollit anim id est laborum. diff --git a/test/expected/test_text_file.sh_78f252288519c8f767bb2759ea32959dab2ebc46.err b/test/expected/test_text_file.sh_78f252288519c8f767bb2759ea32959dab2ebc46.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_78f252288519c8f767bb2759ea32959dab2ebc46.err diff --git a/test/expected/test_text_file.sh_78f252288519c8f767bb2759ea32959dab2ebc46.out b/test/expected/test_text_file.sh_78f252288519c8f767bb2759ea32959dab2ebc46.out new file mode 100644 index 0000000..97ad4bc --- /dev/null +++ b/test/expected/test_text_file.sh_78f252288519c8f767bb2759ea32959dab2ebc46.out @@ -0,0 +1,98 @@ +[ + { + "top_meta": { + "file": "{test_dir}/formats/jsontest/format.json", + "anchor": "#/test_log/line-format/4/overflow", + "breadcrumbs": [ + { + "display_value": "format.json", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "format.json" + } + ] + }, + { + "display_value": "test_log", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "$schema" + }, + { + "display_value": "test_log" + } + ] + }, + { + "display_value": "line-format", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "body-field" + }, + { + "display_value": "description" + }, + { + "display_value": "file-pattern" + }, + { + "display_value": "json" + }, + { + "display_value": "level-field" + }, + { + "display_value": "line-format" + }, + { + "display_value": "timestamp-field" + }, + { + "display_value": "title" + }, + { + "display_value": "value" + } + ] + }, + { + "display_value": "[4]", + "search_placeholder": "(Enter a number from 0 to 6)", + "possibilities": [ + + ] + }, + { + "display_value": "overflow", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "default-value" + }, + { + "display_value": "field" + }, + { + "display_value": "max-width" + }, + { + "display_value": "min-width" + }, + { + "display_value": "overflow" + }, + { + "display_value": "prefix" + }, + { + "display_value": "suffix" + } + ] + } + ] + } + } +] diff --git a/test/expected/test_text_file.sh_7b00f32a3fff7fc2d78a87045ae842e58be88480.out b/test/expected/test_text_file.sh_7b00f32a3fff7fc2d78a87045ae842e58be88480.out index 4855b3d..c9d7942 100644 --- a/test/expected/test_text_file.sh_7b00f32a3fff7fc2d78a87045ae842e58be88480.out +++ b/test/expected/test_text_file.sh_7b00f32a3fff7fc2d78a87045ae842e58be88480.out @@ -5,6 +5,6 @@ [32m * [0mFEATURES: network-sandbox preserve-libs sandbox test userpriv usersandbox [32m*[0m Checking whether python3_11 is suitable ... [32m*[0m >=dev-lang/python-3.11.1-r1:3.11 ... - [1m[34m[ [0m[1m[32mok[0m[1m[34m ][0m + [1m[34m[ [0m[1m[32mok[0m[1m[34m ][0m [32m*[0m Using python3.11 to build (via PYTHON_COMPAT iteration) >>> Unpacking source... diff --git a/test/expected/test_text_file.sh_801414c6bb6d3f9225973eafa3c6dfa49cd2081d.out b/test/expected/test_text_file.sh_801414c6bb6d3f9225973eafa3c6dfa49cd2081d.out deleted file mode 100644 index a7ed740..0000000 --- a/test/expected/test_text_file.sh_801414c6bb6d3f9225973eafa3c6dfa49cd2081d.out +++ /dev/null @@ -1,111 +0,0 @@ -/** - * Copyright (c) [1m2018[0m, Timothy Stack - * - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright notice, [1m[36mthis[0m - * list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright notice, - * [1m[36mthis[0m list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * * Neither the name of Timothy Stack nor the names of its contributors - * may be used to endorse or promote products derived from [1m[36mthis[0m software - * without specific prior written permission. - * - * [1mTHIS[0m [1mSOFTWARE[0m [1mIS[0m [1mPROVIDED[0m [1mBY[0m [1mTHE[0m [1mREGENTS[0m [1mAND[0m [1mCONTRIBUTORS[0m [35m''[0m[1mAS[0m [1mIS[0m'' [1mAND[0m [1mANY[0m - * [1mEXPRESS[0m [1mOR[0m [1mIMPLIED[0m [1mWARRANTIES[0m, [1mINCLUDING[0m, [1mBUT[0m [1mNOT[0m [1mLIMITED[0m [1mTO[0m, [1mTHE[0m [1mIMPLIED[0m - * [1mWARRANTIES[0m [1mOF[0m [1mMERCHANTABILITY[0m [1mAND[0m [1mFITNESS[0m [1mFOR[0m A [1mPARTICULAR[0m [1mPURPOSE[0m [1mARE[0m - * [1mDISCLAIMED[0m. [1mIN[0m [1mNO[0m [1mEVENT[0m [1mSHALL[0m [1mTHE[0m [1mREGENTS[0m [1mOR[0m [1mCONTRIBUTORS[0m [1mBE[0m [1mLIABLE[0m [1mFOR[0m [1mANY[0m - * [1mDIRECT[0m, [1mINDIRECT[0m, [1mINCIDENTAL[0m, [1mSPECIAL[0m, [1mEXEMPLARY[0m, [1mOR[0m [1mCONSEQUENTIAL[0m [1mDAMAGES[0m - * ([1mINCLUDING[0m, [1mBUT[0m [1mNOT[0m [1mLIMITED[0m [1mTO[0m, [1mPROCUREMENT[0m [1mOF[0m [1mSUBSTITUTE[0m [1mGOODS[0m [1mOR[0m [1mSERVICES[0m; - * [1mLOSS[0m [1mOF[0m [1mUSE[0m, [1mDATA[0m, [1mOR[0m [1mPROFITS[0m; [1mOR[0m [1mBUSINESS[0m [1mINTERRUPTION[0m) [1mHOWEVER[0m [1mCAUSED[0m [1mAND[0m - * [1mON[0m [1mANY[0m [1mTHEORY[0m [1mOF[0m [1mLIABILITY[0m, [1mWHETHER[0m [1mIN[0m [1mCONTRACT[0m, [1mSTRICT[0m [1mLIABILITY[0m, [1mOR[0m [1mTORT[0m - * ([1mINCLUDING[0m [1mNEGLIGENCE[0m [1mOR[0m [1mOTHERWISE[0m) [1mARISING[0m [1mIN[0m [1mANY[0m [1mWAY[0m [1mOUT[0m [1mOF[0m [1mTHE[0m [1mUSE[0m [1mOF[0m [1mTHIS[0m - * [1mSOFTWARE[0m, [1mEVEN[0m [1mIF[0m [1mADVISED[0m [1mOF[0m [1mTHE[0m [1mPOSSIBILITY[0m [1mOF[0m [1mSUCH[0m [1mDAMAGE[0m. - */ - -[32m#include [0m[32m"log_level.hh"[0m - -[32m#include <[0m[32mctype.h[0m[32m>[0m - -[32m#include [0m[32m"config.h"[0m - -[1m[36mconst[0m [1m[36mchar[0m* level_names[[1mLEVEL__MAX[0m + [1m1[0m] = { - [35m"unknown"[0m, - [35m"trace"[0m, - [35m"debug5"[0m, - [35m"debug4"[0m, - [35m"debug3"[0m, - [35m"debug2"[0m, - [35m"debug"[0m, - [35m"info"[0m, - [35m"stats"[0m, - [35m"notice"[0m, - [35m"warning"[0m, - [35m"error"[0m, - [35m"critical"[0m, - [35m"fatal"[0m, - [35m"invalid"[0m, - - nullptr, -}; - -log_level_t -abbrev2level([1m[36mconst[0m [1m[36mchar[0m* levelstr, ssize_t len) -{ - [1m[36mif[0m ([4mlen[0m == [1m0[0m || levelstr[[1m0[0m] == [35m'\[0m[1m[35m0[0m[35m'[0m) { - [1m[36mreturn[0m [1mLEVEL_UNKNOWN[0m; - } - - [1m[36mswitch[0m (toupper(levelstr[[1m0[0m])) { - [1m[36mcase[0m [35m'T'[0m: - [1m[36mreturn[0m [1mLEVEL_TRACE[0m; - [1m[36mcase[0m [35m'D'[0m: - [1m[36mcase[0m [35m'V'[0m: - [1m[36mif[0m (len > [1m1[0m) { - [1m[36mswitch[0m (levelstr[len - [1m1[0m]) { - [1m[36mcase[0m [35m'[0m[1m[35m2[0m[35m'[0m: - [1m[36mreturn[0m [1mLEVEL_DEBUG2[0m; - [1m[36mcase[0m [35m'[0m[1m[35m3[0m[35m'[0m: - [1m[36mreturn[0m [1mLEVEL_DEBUG3[0m; - [1m[36mcase[0m [35m'[0m[1m[35m4[0m[35m'[0m: - [1m[36mreturn[0m [1mLEVEL_DEBUG4[0m; - [1m[36mcase[0m [35m'[0m[1m[35m5[0m[35m'[0m: - [1m[36mreturn[0m [1mLEVEL_DEBUG5[0m; - } - } - [1m[36mreturn[0m [1mLEVEL_DEBUG[0m; - [1m[36mcase[0m [35m'I'[0m: - [1m[36mif[0m ([4mlen[0m == [1m7[0m && toupper(levelstr[[1m1[0m]) == [35m'N'[0m - && toupper(levelstr[[1m2[0m]) == [35m'V'[0m && toupper(levelstr[[1m3[0m]) == [35m'A'[0m - && toupper(levelstr[[1m4[0m]) == [35m'L'[0m && toupper(levelstr[[1m5[0m]) == [35m'I'[0m - && toupper(levelstr[[1m6[0m]) == [35m'D'[0m) - { - [1m[36mreturn[0m [1mLEVEL_INVALID[0m; - } - [1m[36mreturn[0m [1mLEVEL_INFO[0m; - [1m[36mcase[0m [35m'S'[0m: - [1m[36mreturn[0m [1mLEVEL_STATS[0m; - [1m[36mcase[0m [35m'N'[0m: - [1m[36mreturn[0m [1mLEVEL_NOTICE[0m; - [1m[36mcase[0m [35m'W'[0m: - [1m[36mreturn[0m [1mLEVEL_WARNING[0m; - [1m[36mcase[0m [35m'E'[0m: - [1m[36mreturn[0m [1mLEVEL_ERROR[0m; - [1m[36mcase[0m [35m'C'[0m: - [1m[36mreturn[0m [1mLEVEL_CRITICAL[0m; - [1m[36mcase[0m [35m'F'[0m: - [1m[36mreturn[0m [1mLEVEL_FATAL[0m; - [1m[36mdefault[0m: - [1m[36mreturn[0m [1mLEVEL_UNKNOWN[0m; - } -} - -[1m[36mint[0m -levelcmp([1m[36mconst[0m [1m[36mchar[0m* l1, ssize_t l1_len, [1m[36mconst[0m [1m[36mchar[0m* l2, ssize_t l2_len) -{ - [1m[36mreturn[0m abbrev2level(l1, l1_len) - abbrev2level(l2, l2_len); -} diff --git a/test/expected/test_text_file.sh_87943c6be50d701a03e901f16493314c839af1ab.out b/test/expected/test_text_file.sh_87943c6be50d701a03e901f16493314c839af1ab.out index ae06214..5ab78b4 100644 --- a/test/expected/test_text_file.sh_87943c6be50d701a03e901f16493314c839af1ab.out +++ b/test/expected/test_text_file.sh_87943c6be50d701a03e901f16493314c839af1ab.out @@ -1,31 +1,31 @@ -/** - * Copyright (c) [1m2018[0m, Timothy Stack - * - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * * Redistributions of source code must retain the above copyright notice, [1m[36mthis[0m - * list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright notice, - * [1m[36mthis[0m list of conditions and the following disclaimer in the documentation - * and/or other materials provided with the distribution. - * * Neither the name of Timothy Stack nor the names of its contributors - * may be used to endorse or promote products derived from [1m[36mthis[0m software - * without specific prior written permission. - * - * [1mTHIS[0m [1mSOFTWARE[0m [1mIS[0m [1mPROVIDED[0m [1mBY[0m [1mTHE[0m [1mREGENTS[0m [1mAND[0m [1mCONTRIBUTORS[0m [35m''[0m[1mAS[0m [1mIS[0m'' [1mAND[0m [1mANY[0m - * [1mEXPRESS[0m [1mOR[0m [1mIMPLIED[0m [1mWARRANTIES[0m, [1mINCLUDING[0m, [1mBUT[0m [1mNOT[0m [1mLIMITED[0m [1mTO[0m, [1mTHE[0m [1mIMPLIED[0m - * [1mWARRANTIES[0m [1mOF[0m [1mMERCHANTABILITY[0m [1mAND[0m [1mFITNESS[0m [1mFOR[0m A [1mPARTICULAR[0m [1mPURPOSE[0m [1mARE[0m - * [1mDISCLAIMED[0m. [1mIN[0m [1mNO[0m [1mEVENT[0m [1mSHALL[0m [1mTHE[0m [1mREGENTS[0m [1mOR[0m [1mCONTRIBUTORS[0m [1mBE[0m [1mLIABLE[0m [1mFOR[0m [1mANY[0m - * [1mDIRECT[0m, [1mINDIRECT[0m, [1mINCIDENTAL[0m, [1mSPECIAL[0m, [1mEXEMPLARY[0m, [1mOR[0m [1mCONSEQUENTIAL[0m [1mDAMAGES[0m - * ([1mINCLUDING[0m, [1mBUT[0m [1mNOT[0m [1mLIMITED[0m [1mTO[0m, [1mPROCUREMENT[0m [1mOF[0m [1mSUBSTITUTE[0m [1mGOODS[0m [1mOR[0m [1mSERVICES[0m; - * [1mLOSS[0m [1mOF[0m [1mUSE[0m, [1mDATA[0m, [1mOR[0m [1mPROFITS[0m; [1mOR[0m [1mBUSINESS[0m [1mINTERRUPTION[0m) [1mHOWEVER[0m [1mCAUSED[0m [1mAND[0m - * [1mON[0m [1mANY[0m [1mTHEORY[0m [1mOF[0m [1mLIABILITY[0m, [1mWHETHER[0m [1mIN[0m [1mCONTRACT[0m, [1mSTRICT[0m [1mLIABILITY[0m, [1mOR[0m [1mTORT[0m - * ([1mINCLUDING[0m [1mNEGLIGENCE[0m [1mOR[0m [1mOTHERWISE[0m) [1mARISING[0m [1mIN[0m [1mANY[0m [1mWAY[0m [1mOUT[0m [1mOF[0m [1mTHE[0m [1mUSE[0m [1mOF[0m [1mTHIS[0m - * [1mSOFTWARE[0m, [1mEVEN[0m [1mIF[0m [1mADVISED[0m [1mOF[0m [1mTHE[0m [1mPOSSIBILITY[0m [1mOF[0m [1mSUCH[0m [1mDAMAGE[0m. - */ +[32m/**[0m +[32m * Copyright (c) 2018, Timothy Stack[0m +[32m *[0m +[32m * All rights reserved.[0m +[32m *[0m +[32m * Redistribution and use in source and binary forms, with or without[0m +[32m * modification, are permitted provided that the following conditions are met:[0m +[32m *[0m +[32m * * Redistributions of source code must retain the above copyright notice, this[0m +[32m * list of conditions and the following disclaimer.[0m +[32m * * Redistributions in binary form must reproduce the above copyright notice,[0m +[32m * this list of conditions and the following disclaimer in the documentation[0m +[32m * and/or other materials provided with the distribution.[0m +[32m * * Neither the name of Timothy Stack nor the names of its contributors[0m +[32m * may be used to endorse or promote products derived from this software[0m +[32m * without specific prior written permission.[0m +[32m *[0m +[32m * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ''AS IS'' AND ANY[0m +[32m * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED[0m +[32m * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE[0m +[32m * DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY[0m +[32m * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES[0m +[32m * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;[0m +[32m * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND[0m +[32m * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT[0m +[32m * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS[0m +[32m * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.[0m +[32m */[0m [1m[36m#include[0m [35m"log_level.hh"[0m diff --git a/test/expected/test_text_file.sh_8a4954af3e536b3789b1fd5b33519e9d444cc933.err b/test/expected/test_text_file.sh_8a4954af3e536b3789b1fd5b33519e9d444cc933.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_8a4954af3e536b3789b1fd5b33519e9d444cc933.err diff --git a/test/expected/test_text_file.sh_8a4954af3e536b3789b1fd5b33519e9d444cc933.out b/test/expected/test_text_file.sh_8a4954af3e536b3789b1fd5b33519e9d444cc933.out new file mode 100644 index 0000000..e6de131 --- /dev/null +++ b/test/expected/test_text_file.sh_8a4954af3e536b3789b1fd5b33519e9d444cc933.out @@ -0,0 +1,6 @@ + [35m"author"[0m: [35m"Ralls, Kim"[0m, + [35m"title"[0m: [35m"Midnight Rain"[0m, + [35m"description"[0m: [35m"A former architect battles corporate zombies, an evil sorceress, and her own childhood to become queen of the world."[0m + } + ] +} diff --git a/test/expected/test_text_file.sh_8b2cd055e6a1db2ed9b2af2a917f8556395fa653.out b/test/expected/test_text_file.sh_8b2cd055e6a1db2ed9b2af2a917f8556395fa653.out index c8719bb..0290454 100644 --- a/test/expected/test_text_file.sh_8b2cd055e6a1db2ed9b2af2a917f8556395fa653.out +++ b/test/expected/test_text_file.sh_8b2cd055e6a1db2ed9b2af2a917f8556395fa653.out @@ -1,2 +1,2 @@ -[1m[4m filepath [0m[1m[4m descriptor [0m[1m[4m mimetype [0m[1m[4m content [0m -[1m{test_dir}/textfile_0.md[0m[1m [0m[1mnet.daringfireball.markdown.frontmatter[0m[1m [0m[1mapplication/json[0m[1m [0m[1m{␊ "comment": "This is JSON front-matter"␊} [0m +[1m[4m filepath [0m[1m[4m [0m[1m[4m descriptor [0m[1m[4m [0m[1m[4m mimetype [0m[1m[4m [0m[1m[4m content [0m[1m[4m [0m +{test_dir}/textfile_0.md net.daringfireball.markdown.frontmatter application/json {␊ "comment": "This is JSON front-matter"␊} diff --git a/test/expected/test_text_file.sh_a87c18c643994c3dbbbbb619a06a601d3668ea71.err b/test/expected/test_text_file.sh_a87c18c643994c3dbbbbb619a06a601d3668ea71.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_a87c18c643994c3dbbbbb619a06a601d3668ea71.err diff --git a/test/expected/test_text_file.sh_a87c18c643994c3dbbbbb619a06a601d3668ea71.out b/test/expected/test_text_file.sh_a87c18c643994c3dbbbbb619a06a601d3668ea71.out new file mode 100644 index 0000000..8fd43aa --- /dev/null +++ b/test/expected/test_text_file.sh_a87c18c643994c3dbbbbb619a06a601d3668ea71.out @@ -0,0 +1,2 @@ +time for a reset ⎋ckapow +ding dong! 🔔 diff --git a/test/expected/test_text_file.sh_ac486314c4e02e480d829ea2f077b86c49fedcec.out b/test/expected/test_text_file.sh_ac486314c4e02e480d829ea2f077b86c49fedcec.out index 5a1b89a..243bfc7 100644 --- a/test/expected/test_text_file.sh_ac486314c4e02e480d829ea2f077b86c49fedcec.out +++ b/test/expected/test_text_file.sh_ac486314c4e02e480d829ea2f077b86c49fedcec.out @@ -1,4 +1,4 @@ +command-line. If you're familiar with the SumoLogic query language, you might find this tool more comfortable to work with. ▌[1] - https://github.com/rcoh/angle-grinder - diff --git a/test/expected/test_text_file.sh_c21295f131c221861568bda5014b76ef99bdd11f.out b/test/expected/test_text_file.sh_c21295f131c221861568bda5014b76ef99bdd11f.out deleted file mode 100644 index 59a0aa9..0000000 --- a/test/expected/test_text_file.sh_c21295f131c221861568bda5014b76ef99bdd11f.out +++ /dev/null @@ -1,159 +0,0 @@ -Build[1][2] Docs[3][4] Coverage Status[5][6] lnav[7][8] - - ▌[1] - https://github.com/tstack/lnav/workflows/ci-build/badge.svg - ▌[2] - https://github.com/tstack/lnav/actions?[4mquery[0m=workflow%3Aci-build - ▌[3] - https://readthedocs.org/projects/lnav/badge/?[4mversion[0m=latest&[4mstyle[0m=plastic - ▌[4] - https://docs.lnav.org - ▌[5] - https://coveralls.io/repos/github/tstack/lnav/badge.svg?[4mbranch[0m=master - ▌[6] - https://coveralls.io/github/tstack/lnav?[4mbranch[0m=master - ▌[7] - https://snapcraft.io//lnav/badge.svg - ▌[8] - https://snapcraft.io/lnav - -This is the source repository for [1mlnav[0m, visit https://lnav.org[1] for -a high level overview. - - ▌[1] - https://lnav.org - -[1m[35mLNAV – The Logfile Navigator[0m - -The Log File Navigator, [1mlnav[0m for short, is an advanced log file viewer -for the small-scale. It is a terminal application that can understand -your log files and make it easy for you to find problems with little -to no setup. - -[1mScreenshot[0m - -The following screenshot shows a syslog file. Log lines are displayed -with highlights. Errors are red and warnings are yellow. - -Screenshot[1][2] - - ▌[1] - file://{top_srcdir}/docs/assets/images/lnav-syslog-thumb.png - ▌[2] - file://{top_srcdir}/docs/assets/images/lnav-syslog.png - -[1mFeatures[0m - - [33m•[0m Log messages from different files are collated together - into a single view - [33m•[0m Automatic detection of log format - [33m•[0m Automatic decompression of GZip and BZip2 files - [33m•[0m Filter log messages based on regular expressions - [33m•[0m Use SQL to analyze your logs - [33m•[0m And more... - -[1mInstallation[0m - -Download a statically-linked binary for Linux/MacOS from the release -page[1] - - ▌[1] - https://github.com/tstack/lnav/releases/latest#release-artifacts - -[1mUsage[0m - -The only file installed is the executable, [37m[40m lnav [0m. You can execute it -with no arguments to view the default set of files: - - ▌[37m[40m$ lnav [0m - -You can view all the syslog messages by running: - - ▌[37m[40m$ lnav /var/log/messages* [0m - -[4mUsage with [0m[4m[37m[40m systemd-journald [0m - -On systems running [37m[40m systemd-journald [0m, you can use [37m[40m lnav [0m as the -pager: - - ▌[37m[40m$ journalctl | lnav [0m - -or in follow mode: - - ▌[37m[40m$ journalctl -f | lnav [0m - -Since [37m[40m journalctl [0m's default output format omits the year, if you are -viewing logs which span multiple years you will need to change the -output format to include the year, otherwise [37m[40m lnav [0m gets confused: - - ▌[37m[40m$ journalctl -o short-iso | lnav [0m - -It is also possible to use [37m[40m journalctl [0m's json output format and [37m[40m lnav[0m -will make use of additional fields such as PRIORITY and _SYSTEMD_UNIT: - - ▌[37m[40m$ journalctl -o json | lnav [0m - -In case some MESSAGE fields contain special characters such as ANSI -color codes which are considered as unprintable by journalctl, -specifying [37m[40m journalctl [0m's [37m[40m -a [0m option might be preferable in order to -output those messages still in a non binary representation: - - ▌[37m[40m$ journalctl -a -o json | lnav [0m - -If using systemd v236 or newer, the output fields can be limited to -the ones actually recognized by [37m[40m lnav [0m for increased efficiency: - - ▌[37m[40m$ journalctl -o json [0m[4m[37m[40m--output-fields[0m[37m[40m=MESSAGE,PRIORITY,_PID,SYSLOG_IDENTIFIER,_SYSTEMD_UNIT | lnav [0m - -If your system has been running for a long time, for increased -efficiency you may want to limit the number of log lines fed into [37m[40m lnav[0m -, e.g. via [37m[40m journalctl [0m's [37m[40m -n [0m or [37m[40m [0m[4m[37m[40m--since[0m[37m[40m=... [0m options. - -In case of a persistent journal, you may want to limit the number of -log lines fed into [37m[40m lnav [0m via [37m[40m journalctl [0m's [37m[40m -b [0m option. - -[1mLinks[0m - - [33m•[0m Main Site[1] - [33m•[0m [1mDocumentation[0m[2] on Read the Docs - [33m•[0m Internal Architecture[3] - - ▌[1] - https://lnav.org - ▌[2] - https://docs.lnav.org - ▌[3] - file://{top_srcdir}/ARCHITECTURE.md - -[1mContributing[0m - - [33m•[0m Become a Sponsor on GitHub[1] - - ▌[1] - https://github.com/sponsors/tstack - -[4mBuilding From Source[0m - -[4mPrerequisites[0m - -The following software packages are required to build lnav: - - [33m•[0m gcc/clang - A C++14-compatible compiler. - [33m•[0m libpcre - The Perl Compatible Regular Expression - (PCRE) library. - [33m•[0m sqlite - The SQLite database engine. Version 3.9.0 - or higher is required. - [33m•[0m ncurses - The ncurses text UI library. - [33m•[0m readline - The readline line editing library. - [33m•[0m zlib - The zlib compression library. - [33m•[0m bz2 - The bzip2 compression library. - [33m•[0m libcurl - The cURL library for downloading files - from URLs. Version 7.23.0 or higher is required. - [33m•[0m libarchive - The libarchive library for opening archive - files, like zip/tgz. - [33m•[0m wireshark - The [35m'tshark'[0m program is used to interpret - pcap files. - -[4mBuild[0m - -Lnav follows the usual GNU style for configuring and installing -software: - -Run [37m[40m ./autogen.sh [0m if compiling from a cloned repository. - - ▌[37m[40m$ ./configure [0m - ▌[37m[40m$ make [0m - ▌[37m[40m$ sudo make install [0m - -[1mSee Also[0m - -Angle-grinder[1] is a tool to slice and dice log files on the -command-line. If you're familiar with the SumoLogic query language, -you might find this tool more comfortable to work with. - - ▌[1] - https://github.com/rcoh/angle-grinder - diff --git a/test/expected/test_text_file.sh_c2a346ca1da2da4346f1d310212e166767993ce9.out b/test/expected/test_text_file.sh_c2a346ca1da2da4346f1d310212e166767993ce9.out index 1efd1ba..48d7862 100644 --- a/test/expected/test_text_file.sh_c2a346ca1da2da4346f1d310212e166767993ce9.out +++ b/test/expected/test_text_file.sh_c2a346ca1da2da4346f1d310212e166767993ce9.out @@ -2,7 +2,7 @@ { "top_meta": { "file": "{top_srcdir}/README.md", - "anchor": "#support", + "anchor": "#usage", "breadcrumbs": [ { "display_value": "README.md", @@ -23,16 +23,13 @@ ] }, { - "display_value": "Support", + "display_value": "Usage", "search_placeholder": "", "possibilities": [ { "display_value": "Contributing" }, { - "display_value": "Features" - }, - { "display_value": "Installation" }, { @@ -48,7 +45,22 @@ "display_value": "Support" }, { + "display_value": "Try online before installing" + }, + { "display_value": "Usage" + }, + { + "display_value": "Why not just use tail / grep / less ?" + } + ] + }, + { + "display_value": "⋯", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "Usage with systemd-journald " } ] } diff --git a/test/expected/test_text_file.sh_d59b67113864ef5e77267d7fd8ad4072f5aef0fc.err b/test/expected/test_text_file.sh_d59b67113864ef5e77267d7fd8ad4072f5aef0fc.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_d59b67113864ef5e77267d7fd8ad4072f5aef0fc.err diff --git a/test/expected/test_text_file.sh_d59b67113864ef5e77267d7fd8ad4072f5aef0fc.out b/test/expected/test_text_file.sh_d59b67113864ef5e77267d7fd8ad4072f5aef0fc.out new file mode 100644 index 0000000..30b1d02 --- /dev/null +++ b/test/expected/test_text_file.sh_d59b67113864ef5e77267d7fd8ad4072f5aef0fc.out @@ -0,0 +1,51 @@ + +[1mTest[0m + + [33m•[0m One + [33m•[0m Two + [33m•[0m Three + +🖼 ]8;;file://{top_srcdir}/docs/lnav-tui.png\lnav-tui.png]8;;\[1] + +🖼 ]8;;file://{top_srcdir}/docs/lnav-architecture.png\The internal architecture of lnav]8;;\[2] + + ▌[1] - file://{top_srcdir}/docs/lnav-tui.png + ▌[2] - file://{top_srcdir}/docs/lnav-architecture.png + +[1m[31mBold red[0m + +[4m[44mUnderline[0m + + Hello, + World! + + +Goodbye, [36m▌[0mWorld[32m╏[0m! + + ▌[37m[40mfoo bar bar [0m + ▌[37m[40mbaz "xyz" [0m + + ▌[32m[40m/* [0m + ▌[32m[40m * This program prints "Hello, World!" [0m + ▌[32m[40m */ [0m + ▌[37m[40m [0m + ▌[1m[36m[40m#include[0m[37m[40m <stdio[0m[37m[40m.[0m[37m[40mh> [0m + ▌[37m[40m [0m + ▌[1m[36m[40mint[0m[37m[40m [0m[37m[40mmain[0m[37m[40m() { [0m + ▌[37m[40m [0m[37m[40mprintf[0m[37m[40m([0m[35m[40m"Hello, World!\n"[0m[37m[40m); [0m + ▌[37m[40m} [0m + + ▌[1m[36m[40mdef[0m[37m[40m [0m[37m[40mhw[0m[37m[40m(name): [0m + ▌[37m[40m [0m[35m[40m"""[0m[37m[40m [0m + ▌[35m[40m This function prints "Hello, <name>!" [0m + ▌[35m[40m """ [0m + ▌[37m[40m [0m + ▌[37m[40m [0m[37m[40mprint[0m[37m[40m(f[0m[35m[40m"Hello, {name}!"[0m[37m[40m)[0m[32m[40m # test comment[0m[37m[40m [0m + + ▌[37m[40m<?xml [0m[4m[37m[40mversion[0m[37m[40m=[0m[35m[40m"1.0"[0m[37m[40m [0m[4m[37m[40mencoding[0m[37m[40m=[0m[35m[40m"utf-8"[0m[37m[40m ?> [0m + ▌[37m[40m<books> [0m + ▌[37m[40m [0m[32m[40m<!-- Line comment -->[0m[37m[40m [0m + ▌[37m[40m <book [0m[4m[37m[40mid[0m[37m[40m=[0m[35m[40m"100"[0m[37m[40m> [0m + ▌[37m[40m <author>Finnegan</author> [0m + ▌[37m[40m </book> [0m + ▌[37m[40m</books> [0m diff --git a/test/expected/test_text_file.sh_e088ea61a5382458cc48a2607e2639e52b0be1da.out b/test/expected/test_text_file.sh_e088ea61a5382458cc48a2607e2639e52b0be1da.out index accb1c3..3fe2949 100644 --- a/test/expected/test_text_file.sh_e088ea61a5382458cc48a2607e2639e52b0be1da.out +++ b/test/expected/test_text_file.sh_e088ea61a5382458cc48a2607e2639e52b0be1da.out @@ -1,40 +1,73 @@ [1mScreenshot[0m -The following screenshot shows a syslog file. Log lines are displayed -with highlights. Errors are red and warnings are yellow. +The following screenshot shows a mix of syslog and web access log +files. Failed requests are shown in red. Identifiers, like IP +address and PIDs are semantically highlighted. -[4mScreenshot[1][0m[4m[2][0m +]8;;docs/assets/images/lnav-front-page.png\[4m🖼 Screenshot[1][0m]8;;\[4m[2][0m - ▌[1] - file://{top_srcdir}/docs/assets/images/lnav-syslog-thumb.png - ▌[2] - file://{top_srcdir}/docs/assets/images/lnav-syslog.png + ▌[1] - file://{top_srcdir}/docs/assets/images/lnav-front-page.png + ▌[2] - file://{top_srcdir}/docs/assets/images/lnav-front-page.png -[1mFeatures[0m +[1mWhy not [0m[1mjust[0m[1m use [0m[1m[37m[40m tail [0m[1m/[0m[1m[37m[40m grep [0m[1m/[0m[1m[37m[40m less [0m[1m?[0m - [33m•[0m Log messages from different files are collated together - into a single view - [33m•[0m Automatic detection of log format - [33m•[0m Automatic decompression of GZip and BZip2 files - [33m•[0m Filter log messages based on regular expressions - [33m•[0m Use SQL to analyze your logs - [33m•[0m And more... +The standard Unix utilities are great for processing raw text lines, +however, they do not understand log messages. Tail can watch multiple +files at a time, but it won't display messages in order by time and +you can't scroll backwards. Grep will only find matching lines, but +won't return a full multi-line log message. Less can only display a +single file at a time. Also, none of these basic tools handle +compressed files. + +[1mTry online before installing[0m + +You can SSH into a demo node to play with lnav before installing. + +The [35m"playground"[0m account starts lnav with a couple of log files as an +example: + +]8;;ssh://playground@demo.lnav.org\[4m[37m[40m $ ssh playground@demo.lnav.org [0m]8;;\[4m[1][0m + + ▌[1] - ssh://playground@demo.lnav.org + +The [35m"tutorial 1"[0m account is an interactive tutorial that can teach you +the basics of operation: + +]8;;ssh://tutorial1@demo.lnav.org\[4m[37m[40m $ ssh tutorial1@demo.lnav.org [0m]8;;\[4m[1][0m + + ▌[1] - ssh://tutorial1@demo.lnav.org [1mInstallation[0m -[4mDownload a statically-linked binary for Linux/MacOS from the release[0m -[4mpage[1][0m +]8;;https://github.com/tstack/lnav/releases/latest#release-artifacts\[4mDownload a statically-linked binary for Linux/MacOS from the release[0m]8;;\ +]8;;https://github.com/tstack/lnav/releases/latest#release-artifacts\[4mpage[0m]8;;\[4m[1][0m ▌[1] - https://github.com/tstack/lnav/releases/latest#release-artifacts +[4mBrew on MacOS[0m + + ▌[33m[40m$ [0m[37m[40mbrew install lnav [0m + [1mUsage[0m -The only file installed is the executable, [37m[40m lnav [0m. You can execute it -with no arguments to view the default set of files: +Simply point [1mlnav[0m at the files or directories you want to monitor, it +will figure out the rest: - ▌[37m[40m$ lnav [0m + ▌[33m[40m$ [0m[37m[40mlnav /path/to/file1 /path/to/dir ... [0m -You can view all the syslog messages by running: +The [1mlnav[0m TUI will pop up right away and begin indexing the files. +Progress is displayed in the [35m"Files"[0m panel at the bottom. Once the +indexing has finished, the LOG view will display the log messages that +were recognized[^1]. You can then use the usual hotkeys to move around +the view (arrow keys or [37m[40m j [0m/[37m[40m k [0m/[37m[40m h [0m/[37m[40m l [0m to move down/up/left/right). - ▌[37m[40m$ lnav /var/log/messages* [0m +See the ]8;;https://docs.lnav.org/en/latest/usage.html\[4mUsage section[0m]8;;\[4m[1][0m of the online documentation for more +information. + + ▌[1] - https://docs.lnav.org/en/latest/usage.html + +[^1]: Files that do not contain log messages can be seen in the TEXT +view (reachable by pressing [37m[40m t [0m). [4mUsage with [0m[4m[37m[40m systemd-journald [0m @@ -53,8 +86,9 @@ output format to include the year, otherwise [37m[40m lnav [0m gets confused: ▌[37m[40m$ journalctl -o short-iso | lnav [0m -It is also possible to use [37m[40m journalctl [0m's json output format and [37m[40m lnav[0m -will make use of additional fields such as PRIORITY and _SYSTEMD_UNIT: +It is also possible to use [37m[40m journalctl [0m's json output format and +[37m[40m lnav [0mwill make use of additional fields such as PRIORITY and +_SYSTEMD_UNIT: ▌[37m[40m$ journalctl -o json | lnav [0m @@ -71,8 +105,8 @@ the ones actually recognized by [37m[40m lnav [0m for increased efficiency: ▌[37m[40m$ journalctl -o json --output-fields=MESSAGE,PRIORITY,_PID,SYSLOG_IDENTIFIER,_SYSTEMD_UNIT | lnav [0m If your system has been running for a long time, for increased -efficiency you may want to limit the number of log lines fed into [37m[40m lnav[0m -, e.g. via [37m[40m journalctl [0m's [37m[40m -n [0m or [37m[40m --since=... [0m options. +efficiency you may want to limit the number of log lines fed into +[37m[40m lnav [0m, e.g. via [37m[40m journalctl [0m's [37m[40m -n [0m or [37m[40m --since=... [0m options. In case of a persistent journal, you may want to limit the number of log lines fed into [37m[40m lnav [0m via [37m[40m journalctl [0m's [37m[40m -b [0m option. @@ -82,9 +116,9 @@ log lines fed into [37m[40m lnav [0m via [37m[40m journalctl [0m's [37m[ Please file issues on this repository or use the discussions section. The following alternatives are also available: - [33m•[0m [4msupport@lnav.org[1][0m - [33m•[0m [4mDiscord[2][0m - [33m•[0m [4mGoogle Groups[3][0m + [33m•[0m ]8;;mailto:support@lnav.org\[4msupport@lnav.org[0m]8;;\[4m[1][0m + [33m•[0m ]8;;https://discord.gg/erBPnKwz7R\[4mDiscord[0m]8;;\[4m[2][0m + [33m•[0m ]8;;https://groups.google.com/g/lnav\[4mGoogle Groups[0m]8;;\[4m[3][0m ▌[1] - mailto:support@lnav.org ▌[2] - https://discord.gg/erBPnKwz7R @@ -92,9 +126,9 @@ The following alternatives are also available: [1mLinks[0m - [33m•[0m [4mMain Site[1][0m - [33m•[0m [1m[4mDocumentation[0m[4m[2][0m on Read the Docs - [33m•[0m [4mInternal Architecture[3][0m + [33m•[0m ]8;;https://lnav.org\[4mMain Site[0m]8;;\[4m[1][0m + [33m•[0m ]8;;https://docs.lnav.org\[1m[4mDocumentation[0m]8;;\[4m[2][0m on Read the Docs + [33m•[0m ]8;;ARCHITECTURE.md\[4mInternal Architecture[0m]8;;\[4m[3][0m ▌[1] - https://lnav.org ▌[2] - https://docs.lnav.org @@ -102,7 +136,7 @@ The following alternatives are also available: [1mContributing[0m - [33m•[0m [4mBecome a Sponsor on GitHub[1][0m + [33m•[0m ]8;;https://github.com/sponsors/tstack\[4mBecome a Sponsor on GitHub[0m]8;;\[4m[1][0m ▌[1] - https://github.com/sponsors/tstack @@ -115,18 +149,20 @@ The following software packages are required to build lnav: [33m•[0m gcc/clang - A C++14-compatible compiler. [33m•[0m libpcre2 - The Perl Compatible Regular Expression v2 (PCRE2) library. - [33m•[0m sqlite - The SQLite database engine. Version 3.9.0 - or higher is required. + [33m•[0m sqlite - The SQLite database engine. Version + 3.9.0 or higher is required. [33m•[0m ncurses - The ncurses text UI library. [33m•[0m readline - The readline line editing library. [33m•[0m zlib - The zlib compression library. [33m•[0m bz2 - The bzip2 compression library. [33m•[0m libcurl - The cURL library for downloading files from URLs. Version 7.23.0 or higher is required. - [33m•[0m libarchive - The libarchive library for opening archive - files, like zip/tgz. + [33m•[0m libarchive - The libarchive library for opening + archive files, like zip/tgz. [33m•[0m wireshark - The [35m'tshark'[0m program is used to interpret pcap files. + [33m•[0m cargo/rust - The Rust language is used to build the + PRQL compiler. [4mBuild[0m @@ -141,9 +177,8 @@ Run [37m[40m ./autogen.sh [0m if compiling from a cloned repository. [1mSee Also[0m -[4mAngle-grinder[1][0m is a tool to slice and dice log files on the +]8;;https://github.com/rcoh/angle-grinder\[4mAngle-grinder[0m]8;;\[4m[1][0m is a tool to slice and dice log files on the command-line. If you're familiar with the SumoLogic query language, you might find this tool more comfortable to work with. ▌[1] - https://github.com/rcoh/angle-grinder - diff --git a/test/expected/test_text_file.sh_e556fa91b91579df20d38540a5db9cedbaf68a62.err b/test/expected/test_text_file.sh_e556fa91b91579df20d38540a5db9cedbaf68a62.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_e556fa91b91579df20d38540a5db9cedbaf68a62.err diff --git a/test/expected/test_text_file.sh_e556fa91b91579df20d38540a5db9cedbaf68a62.out b/test/expected/test_text_file.sh_e556fa91b91579df20d38540a5db9cedbaf68a62.out new file mode 100644 index 0000000..7d9e4f4 --- /dev/null +++ b/test/expected/test_text_file.sh_e556fa91b91579df20d38540a5db9cedbaf68a62.out @@ -0,0 +1,40 @@ +[ + { + "top_meta": { + "file": "stdin", + "anchor": "#-owner-", + "breadcrumbs": [ + { + "display_value": "stdin", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "stdin" + } + ] + }, + { + "display_value": "[owner]", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "[database]" + }, + { + "display_value": "[owner]" + }, + { + "display_value": "[servers.alpha]" + }, + { + "display_value": "[servers.beta]" + }, + { + "display_value": "[servers]" + } + ] + } + ] + } + } +] diff --git a/test/expected/test_text_file.sh_f586ef080a86dfe1f981b345bcf8d7a279b2b247.err b/test/expected/test_text_file.sh_f586ef080a86dfe1f981b345bcf8d7a279b2b247.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_f586ef080a86dfe1f981b345bcf8d7a279b2b247.err diff --git a/test/expected/test_text_file.sh_f586ef080a86dfe1f981b345bcf8d7a279b2b247.out b/test/expected/test_text_file.sh_f586ef080a86dfe1f981b345bcf8d7a279b2b247.out new file mode 100644 index 0000000..75a01e5 --- /dev/null +++ b/test/expected/test_text_file.sh_f586ef080a86dfe1f981b345bcf8d7a279b2b247.out @@ -0,0 +1,38 @@ +ECHO(1) General Commands Manual ECHO(1) + +[1mNAME[0m + [1mecho[0m – write arguments to the standard output + +[1mSYNOPSIS[0m + [1mecho[0m [[1m-n[0m] [[4mstring[0m [4m...[0m] + +[1mDESCRIPTION[0m + The [1mecho[0m utility writes any specified operands, separated by single blank + (‘ ’) characters and followed by a newline (‘\n’) character, to the + standard output. + + The following option is available: + + [1m-n[0m Do not print the trailing newline character. This may also be + achieved by appending ‘\c’ to the end of the string, as is done by + iBCS2 compatible systems. Note that this option as well as the + effect of ‘\c’ are implementation-defined in IEEE Std 1003.1-2001 + (“POSIX.1”) as amended by Cor. 1-2002. Applications aiming for + maximum portability are strongly encouraged to use printf(1) to + suppress the newline character. + + Some shells may provide a builtin [1mecho[0m command which is similar or + identical to this utility. Most notably, the builtin [1mecho[0m in sh(1) does + not accept the [1m-n[0m option. Consult the builtin(1) manual page. + +[1mEXIT[0m [1mSTATUS[0m + The [1mecho[0m utility exits 0 on success, and >0 if an error occurs. + +[1mSEE[0m [1mALSO[0m + builtin(1), csh(1), printf(1), sh(1) + +[1mSTANDARDS[0m + The [1mecho[0m utility conforms to IEEE Std 1003.1-2001 (“POSIX.1”) as amended + by Cor. 1-2002. + +macOS 13.5 April 12, 2003 macOS 13.5 diff --git a/test/expected/test_text_file.sh_f7522b0a99550a3ff91aae6582eb861547c535e1.err b/test/expected/test_text_file.sh_f7522b0a99550a3ff91aae6582eb861547c535e1.err new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/test/expected/test_text_file.sh_f7522b0a99550a3ff91aae6582eb861547c535e1.err diff --git a/test/expected/test_text_file.sh_f7522b0a99550a3ff91aae6582eb861547c535e1.out b/test/expected/test_text_file.sh_f7522b0a99550a3ff91aae6582eb861547c535e1.out new file mode 100644 index 0000000..de58bb7 --- /dev/null +++ b/test/expected/test_text_file.sh_f7522b0a99550a3ff91aae6582eb861547c535e1.out @@ -0,0 +1,25 @@ +[ + { + "top_meta": { + "file": "stdin", + "breadcrumbs": [ + { + "display_value": "stdin", + "search_placeholder": "", + "possibilities": [ + { + "display_value": "stdin" + } + ] + }, + { + "display_value": "2013-06-06T19:13:20.123", + "search_placeholder": "", + "possibilities": [ + + ] + } + ] + } + } +] |