feat: resolve #56

#56

When I run :Hardtime report there are some error message:
Error executing Lua callback: ...al/share/nvim/lazy/hardtime.nvim/lua/hardtime/report.lua:43: field 'day' missing in date table
stack traceback:
        [C]: in function 'time'
        ...al/share/nvim/lazy/hardtime.nvim/lua/hardtime/report.lua:43: in function <...al/share/nvim/lazy/hardtime.nvim/lua/hardtime/report.lua:20>
        ...l/share/nvim/lazy/hardtime.nvim/lua/hardtime/command.lua:13: in function <...l/share/nvim/lazy/hardtime.nvim/lua/hardtime/command.lua:11>

Can you please send me your input file? I can't reporduce the issue on my input file. Thanks in advance!

Can you please send me your input file? I can't reporduce the issue on my input file. Thanks in advance!

Here you go:

[INFO  Sat 30 Dec 2023 04:46:18 PM CST] You pressed the j key too soon!
[INFO  Sat 30 Dec 2023 04:58:17 PM CST] Use t+ instead of f+h
[INFO  Sat 30 Dec 2023 05:03:56 PM CST] Use O instead of ko
[INFO  Sat 30 Dec 2023 05:17:40 PM CST] Use O instead of ko
[INFO  Sat 30 Dec 2023 06:26:23 PM CST] Use O instead of ko
[INFO  Sat 30 Dec 2023 06:26:26 PM CST] Use t- instead of f-h
[INFO  Sat 30 Dec 2023 08:09:25 PM CST] You pressed the <CR> key too soon!
[INFO  Sun 31 Dec 2023 07:30:27 PM CST] You pressed the j key too soon!
[INFO  Sun 31 Dec 2023 07:45:47 PM CST] Use cw instead of dwi
[INFO  Fri 05 Jan 2024 04:32:16 PM CST] Use t- instead of f-h
[INFO  Fri 05 Jan 2024 04:50:09 PM CST] You pressed the k key too soon!

[INFO  Fri 05 Jan 2024 05:22:31 PM CST] Use A instead of $a
[INFO  Fri 05 Jan 2024 09:24:01 PM CST] Use a instead of li
[INFO  Fri 05 Jan 2024 09:27:05 PM CST] Use T> instead of F>l
[INFO  Fri 05 Jan 2024 09:28:55 PM CST] You pressed the j key too soon!
[INFO  Fri 05 Jan 2024 09:31:09 PM CST] Use O instead of ko
[INFO  Fri 05 Jan 2024 09:32:20 PM CST] You pressed the k key too soon!
[INFO  Fri 05 Jan 2024 09:33:01 PM CST] You pressed the j key too soon!
[INFO  Fri 05 Jan 2024 09:33:50 PM CST] Use a instead of li
[INFO  Fri 05 Jan 2024 09:36:24 PM CST] Use O instead of ko
[INFO  Fri 05 Jan 2024 09:41:46 PM CST] You pressed the j key too soon!
[INFO  Fri 05 Jan 2024 09:41:53 PM CST] Use fu instead of tul
[INFO  Fri 05 Jan 2024 09:54:05 PM CST] You pressed the k key too soon!
[INFO  Fri 05 Jan 2024 09:55:23 PM CST] Use tm instead of fmh
[INFO  Fri 05 Jan 2024 09:55:55 PM CST] Use T" instead of F"l
[INFO  Fri 05 Jan 2024 10:02:09 PM CST] You pressed the k key too soon!

[INFO  Sat 06 Jan 2024 01:44:38 PM CST] The <Down> key is disabled!

[INFO  Sun 07 Jan 2024 10:10:43 AM CST] You pressed the k key too soon!
[INFO  Sun 07 Jan 2024 12:29:28 PM CST] Use a instead of li
[INFO  Sun 07 Jan 2024 12:29:52 PM CST] You pressed the j key too soon!
[INFO  Sun 07 Jan 2024 12:55:11 PM CST] Use O instead of ko
[INFO  Sun 07 Jan 2024 01:03:20 PM CST] Use O instead of ko
[INFO  Sun 07 Jan 2024 01:32:39 PM CST] Use O instead of ko
[INFO  Sun 07 Jan 2024 01:38:50 PM CST] Use t, instead of f,h
[INFO  Sun 07 Jan 2024 01:43:16 PM CST] You pressed the k key too soon!

[INFO  Mon 08 Jan 2024 09:53:29 AM CST] You pressed the k key too soon!

[INFO  Mon 08 Jan 2024 07:50:40 PM CST] Use O instead of ko
[INFO  Mon 08 Jan 2024 08:16:45 PM CST] Use ct; instead of dt;i
[INFO  Mon 08 Jan 2024 09:23:58 PM CST] You pressed the j key too soon!

[INFO  Wed 10 Jan 2024 01:33:28 PM CST] You pressed the j key too soon!

[INFO  Wed 10 Jan 2024 05:00:57 PM CST] Use tf instead of ffh
[INFO  Wed 10 Jan 2024 05:59:45 PM CST] Use ct} instead of dt}i
[INFO  Wed 10 Jan 2024 06:03:05 PM CST] You pressed the k key too soon!
[INFO  Wed 10 Jan 2024 06:44:45 PM CST] Use tt instead of fth
[INFO  Wed 10 Jan 2024 07:00:55 PM CST] Use a instead of li
[INFO  Wed 10 Jan 2024 07:10:21 PM CST] Use <CR> or + instead of j^
[INFO  Wed 10 Jan 2024 07:20:03 PM CST] Use td instead of fdh
[INFO  Wed 10 Jan 2024 07:24:58 PM CST] Use O instead of ko
[INFO  Wed 10 Jan 2024 07:45:39 PM CST] Use <CR> or + instead of j^
[INFO  Wed 10 Jan 2024 07:46:16 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 09:02:14 AM CST] Use ct" instead of dt"i
[INFO  Thu 11 Jan 2024 09:17:46 AM CST] You pressed the k key too soon!
[INFO  Thu 11 Jan 2024 09:25:10 AM CST] Use o instead of jO
[INFO  Thu 11 Jan 2024 09:33:01 AM CST] Use t} instead of f}h
[INFO  Thu 11 Jan 2024 09:42:35 AM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 09:50:21 AM CST] Use I instead of ^i
[INFO  Thu 11 Jan 2024 09:53:32 AM CST] Use t| instead of f|h
[INFO  Thu 11 Jan 2024 09:54:52 AM CST] Use o instead of jO
[INFO  Thu 11 Jan 2024 10:01:21 AM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 01:32:42 PM CST] Use f; instead of t;l
[INFO  Thu 11 Jan 2024 01:33:12 PM CST] Use o instead of jO
[INFO  Thu 11 Jan 2024 01:38:22 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 01:44:17 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 01:45:50 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 01:58:47 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 02:05:30 PM CST] Use <CR> or + instead of j^
[INFO  Thu 11 Jan 2024 02:15:55 PM CST] Use cw instead of dwi
[INFO  Thu 11 Jan 2024 02:32:00 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 02:52:04 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 03:16:42 PM CST] Use - instead of k^
[INFO  Thu 11 Jan 2024 03:22:32 PM CST] You pressed the j key too soon!
[INFO  Thu 11 Jan 2024 03:29:19 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 03:31:06 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 03:42:57 PM CST] Use o instead of jO
[INFO  Thu 11 Jan 2024 03:43:16 PM CST] Use - instead of k^
[INFO  Thu 11 Jan 2024 03:56:31 PM CST] Use o instead of jO
[INFO  Thu 11 Jan 2024 04:00:44 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 04:03:07 PM CST] Use - instead of k^
[INFO  Thu 11 Jan 2024 04:05:35 PM CST] Use A instead of $a
[INFO  Thu 11 Jan 2024 04:06:52 PM CST] Use T{ instead of F{l
[INFO  Thu 11 Jan 2024 04:06:54 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 04:37:36 PM CST] You pressed the j key too soon!
[INFO  Thu 11 Jan 2024 04:46:13 PM CST] You pressed the j key too soon!
[INFO  Thu 11 Jan 2024 05:03:24 PM CST] Use O instead of ko
[INFO  Thu 11 Jan 2024 06:58:28 PM CST] You pressed the - key too soon!
[INFO  Thu 11 Jan 2024 07:17:18 PM CST] You pressed the - key too soon!
[INFO  Thu 11 Jan 2024 07:45:03 PM CST] Use A instead of $a
[INFO  Thu 11 Jan 2024 09:06:55 PM CST] Use T- instead of F-l
[INFO  Thu 11 Jan 2024 09:06:56 PM CST] Use a instead of li
[INFO  Fri 12 Jan 2024 03:23:52 PM CST] Use O instead of ko
[INFO  Fri 12 Jan 2024 03:24:07 PM CST] Use "+y4j instead of V4j"+y
[INFO  Fri 12 Jan 2024 03:24:35 PM CST] You pressed the j key too soon!

[INFO  Thu 18 Jan 2024 08:50:37 AM CST] You pressed the j key too soon!

[INFO  Thu 18 Jan 2024 09:15:43 AM CST] You pressed the k key too soon!

[INFO  Thu 18 Jan 2024 10:00:54 AM CST] Use a instead of li
[INFO  Thu 18 Jan 2024 10:17:19 AM CST] Use O instead of ko
[INFO  Thu 18 Jan 2024 12:17:18 PM CST] Use ts instead of fsh
[INFO  Thu 18 Jan 2024 12:30:35 PM CST] The <Down> key is disabled!

[INFO  Fri 19 Jan 2024 08:05:19 PM CST] The <Down> key is disabled!

[INFO  Sun 21 Jan 2024 04:02:32 PM CST] Use O instead of ko
[INFO  Sun 21 Jan 2024 04:54:50 PM CST] Use O instead of ko
[INFO  Sun 21 Jan 2024 05:57:17 PM CST] You pressed the j key too soon!

[INFO  Tue 23 Jan 2024 12:58:26 PM CST] Use o instead of jO
[INFO  Tue 23 Jan 2024 01:02:19 PM CST] You pressed the - key too soon!

[INFO  Tue 23 Jan 2024 05:04:54 PM CST] You pressed the k key too soon!

[INFO  Wed 24 Jan 2024 10:23:13 AM CST] Use cW instead of dWi
[INFO  Wed 24 Jan 2024 10:24:44 AM CST] Use O instead of ko
[INFO  Wed 24 Jan 2024 10:33:05 AM CST] The <Down> key is disabled!
[INFO  Wed 24 Jan 2024 10:33:12 AM CST] Use ci[ instead of di[i
[INFO  Wed 24 Jan 2024 10:33:59 AM CST] You pressed the <CR> key too soon!

[INFO  Thu 25 Jan 2024 10:07:59 AM CST] Use O instead of ko
[INFO  Thu 25 Jan 2024 10:31:32 AM CST] You pressed the j key too soon!
[INFO  Thu 25 Jan 2024 10:56:12 AM CST] Use O instead of ko
[INFO  Thu 25 Jan 2024 03:31:05 PM CST] You pressed the j key too soon!
[INFO  Thu 25 Jan 2024 09:50:16 PM CST] Use O instead of ko
[INFO  Fri 26 Jan 2024 03:45:43 PM CST] Use <CR> or + instead of j^
[INFO  Fri 26 Jan 2024 05:27:12 PM CST] You pressed the k key too soon!
[INFO  Fri 26 Jan 2024 05:35:20 PM CST] Use o instead of jO
[INFO  Fri 26 Jan 2024 05:36:01 PM CST] You pressed the k key too soon!
[INFO  Fri 26 Jan 2024 05:36:01 PM CST] Use O instead of ko
[INFO  Fri 26 Jan 2024 05:36:36 PM CST] Use T. instead of F.l
[INFO  Fri 26 Jan 2024 05:36:53 PM CST] The <Left> key is disabled!
[INFO  Fri 26 Jan 2024 07:06:57 PM CST] Use O instead of ko
[INFO  Fri 26 Jan 2024 07:41:20 PM CST] Use O instead of ko
[INFO  Fri 26 Jan 2024 08:00:26 PM CST] Use O instead of ko
[INFO  Fri 26 Jan 2024 08:06:36 PM CST] Use O instead of ko
[INFO  Fri 26 Jan 2024 09:05:55 PM CST] The <Down> key is disabled!
[INFO  Fri 26 Jan 2024 09:08:42 PM CST] Use O instead of ko
[INFO  Fri 26 Jan 2024 10:01:03 PM CST] Use t} instead of f}h
[INFO  Sat 27 Jan 2024 12:45:54 AM CST] You pressed the - key too soon!
[INFO  Sat 27 Jan 2024 09:20:23 AM CST] Use o instead of jO
[INFO  Sat 27 Jan 2024 09:25:01 AM CST] You pressed the k key too soon!

[INFO  Sat 27 Jan 2024 01:56:35 PM CST] Use O instead of ko
[INFO  Sat 27 Jan 2024 02:16:13 PM CST] The <Up> key is disabled!
[INFO  Sat 27 Jan 2024 02:53:05 PM CST] Use o instead of jO
[INFO  Sat 27 Jan 2024 02:58:43 PM CST] Use O instead of ko
[INFO  Sat 27 Jan 2024 03:01:41 PM CST] Use O instead of ko
[INFO  Sat 27 Jan 2024 05:29:50 PM CST] Use O instead of ko
[INFO  Sat 27 Jan 2024 06:53:14 PM CST] You pressed the j key too soon!
[INFO  Sat 27 Jan 2024 06:53:22 PM CST] You pressed the - key too soon!
[INFO  Sat 27 Jan 2024 07:16:13 PM CST] You pressed the k key too soon!

[INFO  Sun 28 Jan 2024 02:05:41 PM CST] You pressed the <CR> key too soon!
[INFO  Sun 28 Jan 2024 02:06:50 PM CST] Use O instead of ko
[INFO  Sun 28 Jan 2024 02:12:29 PM CST] You pressed the j key too soon!

[INFO  Sun 28 Jan 2024 02:46:46 PM CST] Use O instead of ko
[INFO  Sun 28 Jan 2024 02:47:11 PM CST] Use T2 instead of F2l
[INFO  Mon 29 Jan 2024 11:25:43 AM CST] Use O instead of ko
[INFO  Mon 29 Jan 2024 11:25:52 AM CST] Use O instead of ko
[INFO  Mon 29 Jan 2024 11:29:02 AM CST] You pressed the <CR> key too soon!
[INFO  Mon 29 Jan 2024 11:46:05 AM CST] You pressed the j key too soon!
[INFO  Mon 29 Jan 2024 12:42:59 PM CST] You pressed the j key too soon!
[INFO  Mon 29 Jan 2024 03:19:00 PM CST] Use O instead of ko
[INFO  Mon 29 Jan 2024 08:00:22 PM CST] You pressed the j key too soon!
[INFO  Mon 29 Jan 2024 08:06:35 PM CST] You pressed the j key too soon!
[INFO  Mon 29 Jan 2024 08:09:12 PM CST] You pressed the k key too soon!
[INFO  Mon 29 Jan 2024 08:10:22 PM CST] You pressed the - key too soon!
[INFO  Mon 29 Jan 2024 08:27:32 PM CST] Use a instead of li
[INFO  Mon 29 Jan 2024 08:28:45 PM CST] You pressed the j key too soon!
[INFO  Mon 29 Jan 2024 08:34:57 PM CST] Use O instead of ko
[INFO  Mon 29 Jan 2024 08:35:32 PM CST] Use cw instead of dwi
[INFO  Mon 29 Jan 2024 08:52:39 PM CST] Use t} instead of f}h
[INFO  Mon 29 Jan 2024 09:02:34 PM CST] Use cw instead of dwi
[INFO  Mon 29 Jan 2024 09:12:21 PM CST] Use dat instead of vatd
[INFO  Mon 29 Jan 2024 09:17:19 PM CST] Use O instead of ko
[INFO  Tue 30 Jan 2024 10:52:18 AM CST] Use O instead of ko
[INFO  Tue 30 Jan 2024 10:54:49 AM CST] You pressed the k key too soon!
[INFO  Tue 30 Jan 2024 12:06:55 PM CST] Use th instead of fhh
[INFO  Tue 30 Jan 2024 12:08:16 PM CST] You pressed the j key too soon!
[INFO  Tue 30 Jan 2024 12:10:19 PM CST] Use O instead of ko
[INFO  Tue 30 Jan 2024 12:11:33 PM CST] You pressed the k key too soon!
[INFO  Tue 30 Jan 2024 12:17:58 PM CST] Use O instead of ko
[INFO  Tue 30 Jan 2024 01:00:41 PM CST] You pressed the k key too soon!
[INFO  Tue 30 Jan 2024 01:05:54 PM CST] The <Down> key is disabled!
[INFO  Tue 30 Jan 2024 02:28:08 PM CST] Use O instead of ko
[INFO  Tue 30 Jan 2024 02:44:59 PM CST] Use O instead of ko
[INFO  Wed 31 Jan 2024 09:26:13 AM CST] Use <CR> or + instead of j^
[INFO  Wed 31 Jan 2024 10:49:17 AM CST] You pressed the <CR> key too soon!
[INFO  Wed 31 Jan 2024 10:51:06 AM CST] You pressed the k key too soon!

[INFO  Wed 31 Jan 2024 11:04:26 AM CST] You pressed the - key too soon!
[INFO  Wed 31 Jan 2024 04:54:16 PM CST] You pressed the j key too soon!
[INFO  Wed 31 Jan 2024 04:57:06 PM CST] Use cw instead of dwi
[INFO  Wed 31 Jan 2024 05:06:48 PM CST] You pressed the k key too soon!
 Use [count]k or <C-U> to scroll up.
[INFO  Sat 03 Feb 2024 04:00:32 PM CST] You pressed the k key too soon! Use [count]k or <C-U> to scroll up.
[INFO  Sat 03 Feb 2024 04:00:54 PM CST] You pressed the j key too soon! Use [count]j or <C-D> to scroll down.
[INFO  Sat 03 Feb 2024 04:01:32 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 03 Feb 2024 04:01:36 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:01:59 PM CST] You pressed the k key too soon!
 Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:02:25 PM CST] You pressed the k key too soon!
Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:02:31 PM CST] You pressed the k key too soon!
Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:02:37 PM CST] You pressed the k key too soon!
Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:02:46 PM CST] You pressed the k key too soon!
Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:02:49 PM CST] You pressed the k key too soon!
Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:02:55 PM CST] You pressed the k key too soon!
Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:03:03 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:03:37 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:03:38 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 03 Feb 2024 04:03:40 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 03 Feb 2024 04:03:45 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 03 Feb 2024 04:03:57 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 03 Feb 2024 04:04:05 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sun 04 Feb 2024 10:40:20 AM CST] You pressed the l key too soon!
[INFO  Sun 04 Feb 2024 10:40:44 AM CST] Use a instead of li
[INFO  Sun 04 Feb 2024 10:40:57 AM CST] Use a instead of li
[INFO  Mon 05 Feb 2024 05:13:55 PM CST] Use O instead of ko
[INFO  Mon 05 Feb 2024 05:16:03 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Mon 05 Feb 2024 05:19:30 PM CST] Use O instead of ko
[INFO  Mon 05 Feb 2024 05:31:25 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Mon 05 Feb 2024 11:13:05 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Mon 05 Feb 2024 11:13:37 PM CST] Use o instead of jO
[INFO  Mon 05 Feb 2024 11:16:28 PM CST] Use O instead of ko
[INFO  Mon 05 Feb 2024 11:39:32 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Mon 05 Feb 2024 11:42:55 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Mon 05 Feb 2024 11:43:21 PM CST] You pressed the h key too soon!
[INFO  Mon 05 Feb 2024 11:43:25 PM CST] Use ct/ instead of dt/i
[INFO  Mon 05 Feb 2024 11:46:34 PM CST] Use - instead of k^
[INFO  Tue 06 Feb 2024 11:19:56 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 06 Feb 2024 11:20:34 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 06 Feb 2024 11:20:39 AM CST] You pressed the <CR> key too soon!
[INFO  Tue 06 Feb 2024 01:46:04 PM CST] Use O instead of ko
[INFO  Tue 06 Feb 2024 01:52:48 PM CST] Use t` instead of f`h
[INFO  Tue 06 Feb 2024 01:56:29 PM CST] Use O instead of ko
[INFO  Tue 06 Feb 2024 01:58:19 PM CST] Use O instead of ko
[INFO  Tue 06 Feb 2024 01:58:32 PM CST] Use O instead of ko
[INFO  Tue 06 Feb 2024 01:59:43 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 06 Feb 2024 02:01:02 PM CST] Use O instead of ko
[INFO  Tue 06 Feb 2024 02:07:48 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 06 Feb 2024 04:34:19 PM CST] Use d8j instead of V8jd
[INFO  Tue 06 Feb 2024 04:38:14 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 06 Feb 2024 04:57:15 PM CST] You pressed the <CR> key too soon!
[INFO  Tue 06 Feb 2024 04:59:00 PM CST] Use O instead of ko
[INFO  Tue 06 Feb 2024 05:02:33 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 06 Feb 2024 05:09:15 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Wed 07 Feb 2024 01:34:49 PM CST] Use O instead of ko
[INFO  Wed 07 Feb 2024 01:52:35 PM CST] Use O instead of ko
[INFO  Thu 08 Feb 2024 04:49:53 PM CST] Use a instead of li
[INFO  Thu 08 Feb 2024 04:53:34 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 08 Feb 2024 04:58:51 PM CST] Use o instead of jO
[INFO  Thu 08 Feb 2024 05:00:36 PM CST] Use o instead of jO
[INFO  Thu 08 Feb 2024 05:00:55 PM CST] Use o instead of jO
[INFO  Thu 08 Feb 2024 05:17:40 PM CST] Use O instead of ko
[INFO  Thu 08 Feb 2024 05:17:45 PM CST] Use O instead of ko
[INFO  Thu 08 Feb 2024 05:18:13 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 08 Feb 2024 05:21:33 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 08 Feb 2024 06:49:24 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 08 Feb 2024 06:51:11 PM CST] Use <CR> or + instead of j^
[INFO  Thu 08 Feb 2024 06:51:25 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 08 Feb 2024 06:52:52 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 08 Feb 2024 06:53:47 PM CST] Use <CR> or + instead of j^
[INFO  Thu 08 Feb 2024 07:03:51 PM CST] You pressed the <CR> key too soon!
[INFO  Thu 08 Feb 2024 07:03:52 PM CST] You pressed the <CR> key too soon!
[INFO  Thu 08 Feb 2024 07:13:07 PM CST] Use O instead of ko
[INFO  Thu 08 Feb 2024 07:34:00 PM CST] Use cf) instead of df)i
[INFO  Thu 08 Feb 2024 07:42:14 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 08 Feb 2024 07:48:54 PM CST] Use cw instead of dwi
[INFO  Thu 08 Feb 2024 07:49:56 PM CST] The <Left> key is disabled!
[INFO  Thu 08 Feb 2024 07:50:52 PM CST] Use cw instead of dwi
[INFO  Thu 08 Feb 2024 08:12:06 PM CST] Use O instead of ko
[INFO  Thu 08 Feb 2024 08:22:37 PM CST] Use T; instead of F;l
[INFO  Fri 09 Feb 2024 10:09:19 AM CST] Use a instead of li
[INFO  Sat 10 Feb 2024 06:51:03 PM CST] Use d14j instead of V14jd
[INFO  Tue 13 Feb 2024 10:49:28 AM CST] The <Up> key is disabled!
[INFO  Tue 13 Feb 2024 10:56:01 AM CST] Use O instead of ko
[INFO  Tue 13 Feb 2024 11:11:13 AM CST] You pressed the l key too soon!
[INFO  Tue 13 Feb 2024 11:15:39 AM CST] Use t> instead of f>h
[INFO  Tue 13 Feb 2024 11:28:27 AM CST] Use O instead of ko
[INFO  Tue 13 Feb 2024 02:09:21 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 13 Feb 2024 02:20:56 PM CST] Use t1 instead of f1h
[INFO  Tue 13 Feb 2024 02:25:22 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 13 Feb 2024 03:22:10 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 13 Feb 2024 03:40:20 PM CST] Use ct/ instead of dt/i
[INFO  Tue 13 Feb 2024 06:17:20 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 13 Feb 2024 06:18:23 PM CST] Use O instead of ko
[INFO  Tue 13 Feb 2024 08:06:56 PM CST] Use o instead of jO
[INFO  Tue 13 Feb 2024 08:09:33 PM CST] Use cf, instead of df,i
[INFO  Tue 13 Feb 2024 08:19:29 PM CST] Use A instead of $a
[INFO  Tue 13 Feb 2024 08:42:05 PM CST] Use O instead of ko
[INFO  Tue 13 Feb 2024 08:43:16 PM CST] Use O instead of ko
[INFO  Tue 13 Feb 2024 08:45:58 PM CST] Use A instead of $a
[INFO  Tue 13 Feb 2024 08:46:14 PM CST] Use cw instead of dwi
[INFO  Tue 13 Feb 2024 08:50:49 PM CST] Use ct( instead of dt(i
[INFO  Tue 13 Feb 2024 08:52:26 PM CST] Use cw instead of dwi
[INFO  Tue 13 Feb 2024 08:53:23 PM CST] Use cw instead of dwi
[INFO  Wed 14 Feb 2024 01:49:08 PM CST] The <Down> key is disabled!
 Use [count]k or CTRL-U to scroll up.
[INFO  Sat 17 Feb 2024 09:48:17 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 17 Feb 2024 10:45:19 AM CST] The <Down> key is disabled!

[INFO  Sun 18 Feb 2024 07:39:48 PM CST] Use O instead of ko
[INFO  Sun 18 Feb 2024 07:39:59 PM CST] Use O instead of ko
[INFO  Sun 18 Feb 2024 07:49:39 PM CST] Use a instead of li
[INFO  Sun 18 Feb 2024 07:53:35 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sun 18 Feb 2024 08:00:10 PM CST] Use a instead of li
[INFO  Sun 18 Feb 2024 08:07:10 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Mon 19 Feb 2024 12:14:00 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Mon 19 Feb 2024 12:18:27 PM CST] You pressed the l key too soon!

 Use [count]j or CTRL-D to scroll down.
 Use [count]k or CTRL-U to scroll up.
[INFO  Thu 22 Feb 2024 04:58:46 PM CST] Use O instead of ko
[INFO  Thu 22 Feb 2024 05:00:49 PM CST] Use O instead of ko
[INFO  Thu 22 Feb 2024 05:03:57 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 22 Feb 2024 05:06:57 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
 Use [count]j or CTRL-D to scroll down.
[INFO  Fri 23 Feb 2024 04:25:51 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Fri 23 Feb 2024 04:25:59 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.

[INFO  Sun 25 Feb 2024 04:08:17 PM CST] You pressed the <CR> key too soon!
[INFO  Sun 25 Feb 2024 04:39:56 PM CST] Use O instead of ko
[INFO  Sun 25 Feb 2024 06:11:30 PM CST] Use cfg instead of dfgi
[INFO  Sun 25 Feb 2024 06:15:23 PM CST] Use O instead of ko
[INFO  Sun 25 Feb 2024 06:16:58 PM CST] Use O instead of ko
[INFO  Sun 25 Feb 2024 06:19:27 PM CST] Use O instead of ko
[INFO  Sun 25 Feb 2024 06:23:07 PM CST] Use O instead of ko
[INFO  Sun 25 Feb 2024 06:27:36 PM CST] Use O instead of ko
[INFO  Sun 25 Feb 2024 06:35:51 PM CST] Use O instead of ko
[INFO  Sun 25 Feb 2024 06:37:35 PM CST] You pressed the - key too soon!
[INFO  Sun 25 Feb 2024 06:42:33 PM CST] Use O instead of ko
[INFO  Sun 25 Feb 2024 06:42:59 PM CST] Use o instead of jO
[INFO  Sun 25 Feb 2024 06:49:47 PM CST] Use O instead of ko
[INFO  Sun 25 Feb 2024 07:07:30 PM CST] Use ce instead of dei
[INFO  Sun 25 Feb 2024 07:13:02 PM CST] Use <CR> or + instead of j^
[INFO  Sun 25 Feb 2024 07:29:31 PM CST] You pressed the <CR> key too soon!
[INFO  Mon 26 Feb 2024 07:07:53 PM CST] You pressed the <CR> key too soon!
[INFO  Mon 26 Feb 2024 07:30:11 PM CST] Use a instead of li
[INFO  Mon 26 Feb 2024 07:31:04 PM CST] Use A instead of $a
[INFO  Mon 26 Feb 2024 07:37:11 PM CST] Use O instead of ko
[INFO  Mon 26 Feb 2024 07:49:06 PM CST] Use A instead of $a
[INFO  Tue 27 Feb 2024 04:16:40 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 27 Feb 2024 04:47:51 PM CST] Use O instead of ko
[INFO  Tue 27 Feb 2024 04:53:48 PM CST] Use o instead of jO
[INFO  Tue 27 Feb 2024 04:59:44 PM CST] You pressed the - key too soon!
[INFO  Tue 27 Feb 2024 06:19:03 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 27 Feb 2024 06:23:50 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 27 Feb 2024 06:29:56 PM CST] Use O instead of ko
[INFO  Tue 27 Feb 2024 06:32:19 PM CST] Use O instead of ko
[INFO  Tue 27 Feb 2024 06:40:23 PM CST] The <Down> key is disabled!
[INFO  Tue 27 Feb 2024 06:55:45 PM CST] You pressed the <CR> key too soon!
[INFO  Tue 27 Feb 2024 06:55:48 PM CST] You pressed the <CR> key too soon!
[INFO  Tue 27 Feb 2024 07:29:36 PM CST] The <Up> key is disabled!
[INFO  Tue 27 Feb 2024 07:29:38 PM CST] The <Down> key is disabled!
[INFO  Tue 27 Feb 2024 07:29:39 PM CST] The <Up> key is disabled!
[INFO  Tue 27 Feb 2024 07:29:40 PM CST] The <Up> key is disabled!
 Use [count]k or CTRL-U to scroll up.
 Use [count]j or CTRL-D to scroll down.
[INFO  Thu 29 Feb 2024 03:22:09 PM CST] Use O instead of ko
[INFO  Thu 29 Feb 2024 03:53:16 PM CST] Use TS instead of FSl
[INFO  Thu 29 Feb 2024 07:33:51 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 29 Feb 2024 07:33:54 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 29 Feb 2024 07:33:57 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 29 Feb 2024 07:37:36 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 29 Feb 2024 07:45:36 PM CST] Use O instead of ko
[INFO  Thu 29 Feb 2024 07:45:55 PM CST] Use O instead of ko
[INFO  Thu 29 Feb 2024 07:59:55 PM CST] You pressed the - key too soon!
[INFO  Thu 29 Feb 2024 08:35:18 PM CST] Use O instead of ko
[INFO  Thu 29 Feb 2024 08:42:10 PM CST] Use O instead of ko
[INFO  Thu 29 Feb 2024 08:57:28 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 29 Feb 2024 09:01:00 PM CST] Use a instead of li
[INFO  Thu 29 Feb 2024 09:57:19 PM CST] The <Down> key is disabled!
 Use [count]k or CTRL-U to scroll up.
 Use [count]j or CTRL-D to scroll down.
[INFO  Fri 01 Mar 2024 04:37:37 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
 Use [count]j or CTRL-D to scroll down.

[INFO  Sat 02 Mar 2024 05:08:20 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
 Use [count]k or CTRL-U to scroll up.
[INFO  Sun 03 Mar 2024 10:41:59 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sun 03 Mar 2024 10:44:07 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.

 Use [count]k or CTRL-U to scroll up.
 Use [count]j or CTRL-D to scroll down.
[INFO  Mon 04 Mar 2024 08:53:05 PM CST] Use o instead of jO
[INFO  Mon 04 Mar 2024 09:14:58 PM CST] You pressed the <CR> key too soon!
 Use [count]k or CTRL-U to scroll up.

 Use [count]j or CTRL-D to scroll down.

[INFO  Tue 05 Mar 2024 03:07:31 PM CST] You pressed the - key too soon!

[INFO  Wed 06 Mar 2024 10:30:41 AM CST] Use O instead of ko
[INFO  Wed 06 Mar 2024 10:58:43 AM CST] Use cf) instead of df)i
[INFO  Wed 06 Mar 2024 11:03:47 AM CST] The <Down> key is disabled!
[INFO  Wed 06 Mar 2024 01:04:24 PM CST] Use O instead of ko
[INFO  Wed 06 Mar 2024 01:08:49 PM CST] Use a instead of li
[INFO  Wed 06 Mar 2024 04:44:13 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
 Use [count]j or CTRL-D to scroll down.
[INFO  Thu 07 Mar 2024 02:34:39 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 07 Mar 2024 02:34:39 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
 Use [count]k or CTRL-U to scroll up.
[INFO  Tue 12 Mar 2024 07:06:16 AM CST] The <Up> key is disabled!
[INFO  Wed 13 Mar 2024 09:14:09 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Wed 13 Mar 2024 09:25:55 AM CST] Use a instead of li
[INFO  Wed 13 Mar 2024 09:28:55 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Wed 13 Mar 2024 10:48:18 AM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 10:50:31 AM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 10:50:49 AM CST] You pressed the <CR> key too soon!
[INFO  Wed 13 Mar 2024 10:50:56 AM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 10:51:16 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
 Use [count]k or CTRL-U to scroll up.
[INFO  Wed 13 Mar 2024 03:13:34 PM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 03:15:24 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Wed 13 Mar 2024 03:23:41 PM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 03:24:42 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Wed 13 Mar 2024 03:25:03 PM CST] Use cf/ instead of df/i
[INFO  Wed 13 Mar 2024 05:52:36 PM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 05:52:55 PM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 05:57:16 PM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 06:00:20 PM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 06:01:42 PM CST] Use A instead of $a
[INFO  Wed 13 Mar 2024 06:31:07 PM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 06:39:20 PM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 06:47:45 PM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 06:54:37 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Wed 13 Mar 2024 07:05:22 PM CST] Use O instead of ko
[INFO  Wed 13 Mar 2024 07:07:30 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Wed 13 Mar 2024 07:08:00 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Wed 13 Mar 2024 07:26:43 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Wed 13 Mar 2024 07:39:41 PM CST] Use o instead of jO
[INFO  Wed 13 Mar 2024 07:40:45 PM CST] Use cw instead of dwi
[INFO  Wed 13 Mar 2024 07:41:34 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Wed 13 Mar 2024 07:41:53 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Wed 13 Mar 2024 07:47:57 PM CST] Use cW instead of dWi
[INFO  Wed 13 Mar 2024 07:49:01 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 14 Mar 2024 07:20:04 AM CST] You pressed the <CR> key too soon!

[INFO  Thu 14 Mar 2024 07:19:11 PM CST] Use O instead of ko
[INFO  Thu 14 Mar 2024 07:31:29 PM CST] Use ct} instead of dt}i
[INFO  Thu 14 Mar 2024 07:35:33 PM CST] You pressed the <CR> key too soon!
[INFO  Thu 14 Mar 2024 07:42:30 PM CST] Use o instead of jO
[INFO  Thu 14 Mar 2024 07:52:22 PM CST] Use f} instead of t}l
[INFO  Thu 14 Mar 2024 08:53:21 PM CST] Use cw instead of dwi
[INFO  Thu 14 Mar 2024 09:02:22 PM CST] You pressed the - key too soon!
[INFO  Thu 14 Mar 2024 09:27:03 PM CST] You pressed the <CR> key too soon!
[INFO  Thu 14 Mar 2024 09:27:34 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 14 Mar 2024 09:27:54 PM CST] You pressed the - key too soon!
[INFO  Fri 15 Mar 2024 02:56:52 PM CST] You pressed the <CR> key too soon!
[INFO  Fri 15 Mar 2024 03:01:24 PM CST] You pressed the - key too soon!
[INFO  Fri 15 Mar 2024 03:04:57 PM CST] Use O instead of -o
[INFO  Fri 15 Mar 2024 03:15:51 PM CST] You pressed the <CR> key too soon!
[INFO  Fri 15 Mar 2024 04:01:04 PM CST] You pressed the - key too soon!
[INFO  Fri 15 Mar 2024 04:04:34 PM CST] Use O instead of ko
[INFO  Fri 15 Mar 2024 04:15:13 PM CST] Use O instead of ko
[INFO  Fri 15 Mar 2024 04:19:39 PM CST] Use t} instead of f}h
[INFO  Fri 15 Mar 2024 04:24:28 PM CST] Use F} instead of T}h
[INFO  Sat 16 Mar 2024 10:58:00 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
 Use [count]k or CTRL-U to scroll up.
[INFO  Sat 16 Mar 2024 11:33:38 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 16 Mar 2024 11:34:58 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 16 Mar 2024 12:10:15 PM CST] Use O instead of ko
[INFO  Sat 16 Mar 2024 12:10:33 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.

[INFO  Sat 16 Mar 2024 02:03:59 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 16 Mar 2024 02:17:45 PM CST] Use ct} instead of dt}i
[INFO  Sat 16 Mar 2024 02:24:21 PM CST] Use o instead of jO
[INFO  Sat 16 Mar 2024 02:24:33 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
 Use [count]k or CTRL-U to scroll up.

 Use [count]j or CTRL-D to scroll down.
 Use [count]k or CTRL-U to scroll up.
[INFO  Tue 19 Mar 2024 08:58:41 PM CST] The <Up> key is disabled!
 Use [count]j or CTRL-D to scroll down.
[INFO  Wed 20 Mar 2024 03:34:34 PM CST] You pressed the h key too soon!
[INFO  Wed 20 Mar 2024 03:44:35 PM CST] Use A instead of $a
[INFO  Wed 20 Mar 2024 08:21:00 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.

[INFO  Fri 22 Mar 2024 05:13:04 PM CST] Use O instead of ko
[INFO  Fri 22 Mar 2024 05:37:35 PM CST] Use cw instead of dwi
[INFO  Fri 22 Mar 2024 05:43:02 PM CST] Use cw instead of dwi
[INFO  Fri 22 Mar 2024 05:49:26 PM CST] Use cw instead of dwi
[INFO  Fri 22 Mar 2024 06:02:50 PM CST] You pressed the - key too soon!
[INFO  Fri 22 Mar 2024 07:20:12 PM CST] The <Down> key is disabled!

[INFO  Sat 23 Mar 2024 11:21:10 AM CST] You pressed the <CR> key too soon!
 Use [count]j or CTRL-D to scroll down.
 Use [count]j or CTRL-D to scroll down.

[INFO  Wed 27 Mar 2024 08:03:25 PM CST] You pressed the - key too soon!
[INFO  Wed 27 Mar 2024 08:05:38 PM CST] You pressed the - key too soon!
[INFO  Wed 27 Mar 2024 08:18:59 PM CST] You pressed the - key too soon!
[INFO  Wed 27 Mar 2024 08:19:09 PM CST] You pressed the - key too soon!
[INFO  Wed 27 Mar 2024 08:38:30 PM CST] You pressed the - key too soon!
[INFO  Wed 27 Mar 2024 08:40:38 PM CST] Use o instead of jO
[INFO  Wed 27 Mar 2024 08:41:42 PM CST] You pressed the - key too soon!
[INFO  Wed 27 Mar 2024 08:52:03 PM CST] You pressed the <CR> key too soon!
[INFO  Wed 27 Mar 2024 08:52:07 PM CST] You pressed the <CR> key too soon!
[INFO  Wed 27 Mar 2024 09:22:04 PM CST] You pressed the - key too soon!
[INFO  Thu 28 Mar 2024 03:09:42 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
 Use [count]j or CTRL-D to scroll down.
 Use [count]k or CTRL-U to scroll up.
[INFO  Thu 28 Mar 2024 08:49:34 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 28 Mar 2024 08:49:56 PM CST] Use o instead of jO
[INFO  Fri 29 Mar 2024 08:09:56 PM CST] Use O instead of ko
[INFO  Fri 29 Mar 2024 08:23:36 PM CST] Use O instead of ko
[INFO  Fri 29 Mar 2024 08:27:04 PM CST] Use - instead of k^
[INFO  Fri 29 Mar 2024 08:30:45 PM CST] Use O instead of ko
[INFO  Fri 29 Mar 2024 08:33:08 PM CST] You pressed the - key too soon!
[INFO  Fri 29 Mar 2024 08:33:42 PM CST] Use t/ instead of f/h
[INFO  Fri 29 Mar 2024 08:34:22 PM CST] You pressed the - key too soon!

[INFO  Sat 30 Mar 2024 12:35:28 PM CST] Use tg instead of fgh
[INFO  Sat 30 Mar 2024 12:37:47 PM CST] Use t[ instead of f[h
[INFO  Sat 30 Mar 2024 12:39:26 PM CST] Use O instead of ko
[INFO  Sat 30 Mar 2024 12:44:54 PM CST] The <Down> key is disabled!
[INFO  Sat 30 Mar 2024 12:50:41 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.

[INFO  Sat 30 Mar 2024 01:51:44 PM CST] Use a instead of li
[INFO  Sat 30 Mar 2024 02:01:12 PM CST] Use t; instead of f;h
[INFO  Sat 30 Mar 2024 02:08:41 PM CST] Use o instead of jO
[INFO  Sat 30 Mar 2024 04:19:37 PM CST] Use cW instead of dWi
[INFO  Sat 30 Mar 2024 04:53:50 PM CST] Use cf, instead of df,i
[INFO  Sat 30 Mar 2024 04:55:29 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.

 Use [count]j or CTRL-D to scroll down.
[INFO  Sat 30 Mar 2024 08:50:45 PM CST] Use t$ instead of f$h
[INFO  Sat 30 Mar 2024 10:31:00 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 30 Mar 2024 10:45:31 PM CST] You pressed the - key too soon!
[INFO  Sat 30 Mar 2024 10:55:01 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Mon 01 Apr 2024 02:16:47 PM CST] Use O instead of ko
[INFO  Mon 01 Apr 2024 02:53:29 PM CST] Use a instead of li
[INFO  Mon 01 Apr 2024 03:30:16 PM CST] Use a instead of li
[INFO  Mon 01 Apr 2024 03:30:20 PM CST] Use <CR> or + instead of j^
[INFO  Mon 01 Apr 2024 03:31:09 PM CST] Use O instead of ko
[INFO  Mon 01 Apr 2024 03:34:11 PM CST] Use - instead of k^
[INFO  Mon 01 Apr 2024 03:34:13 PM CST] Use a instead of li
[INFO  Mon 01 Apr 2024 03:47:43 PM CST] Use O instead of ko
[INFO  Mon 01 Apr 2024 03:53:18 PM CST] Use cw instead of dwi
[INFO  Mon 01 Apr 2024 04:49:15 PM CST] Use cw instead of dwi
[INFO  Mon 01 Apr 2024 04:51:58 PM CST] Use O instead of ko
[INFO  Mon 01 Apr 2024 05:03:11 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 02 Apr 2024 08:57:39 AM CST] The <Down> key is disabled!
[INFO  Tue 02 Apr 2024 09:15:33 AM CST] Use o instead of jO
[INFO  Tue 02 Apr 2024 09:17:06 AM CST] You pressed the - key too soon!
[INFO  Tue 02 Apr 2024 10:33:00 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.

[INFO  Wed 03 Apr 2024 02:32:40 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 02:53:54 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 03:04:46 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Wed 03 Apr 2024 03:08:56 PM CST] Use fu instead of tul
[INFO  Wed 03 Apr 2024 06:54:35 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 07:07:05 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 07:07:11 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 07:08:14 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 07:16:09 PM CST] Use <CR> or + instead of j^
[INFO  Wed 03 Apr 2024 07:36:04 PM CST] Use A instead of $a
[INFO  Wed 03 Apr 2024 07:39:11 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Wed 03 Apr 2024 08:09:53 PM CST] Use A instead of $a
[INFO  Wed 03 Apr 2024 08:16:46 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 08:16:47 PM CST] Use o instead of jO
[INFO  Wed 03 Apr 2024 08:23:39 PM CST] You pressed the - key too soon!
[INFO  Wed 03 Apr 2024 08:42:09 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 09:30:33 PM CST] Use o instead of jO
[INFO  Wed 03 Apr 2024 09:42:32 PM CST] Use A instead of $a
[INFO  Wed 03 Apr 2024 09:45:52 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 10:16:35 PM CST] Use ct> instead of dt>i
[INFO  Wed 03 Apr 2024 10:17:09 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Wed 03 Apr 2024 10:18:40 PM CST] Use - instead of k^
[INFO  Wed 03 Apr 2024 10:18:57 PM CST] Use o instead of jO
[INFO  Wed 03 Apr 2024 10:20:03 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 10:23:16 PM CST] Use O instead of ko
[INFO  Wed 03 Apr 2024 10:55:02 PM CST] Use cib instead of dibi
[INFO  Wed 03 Apr 2024 10:56:19 PM CST] Use t; instead of f;h
[INFO  Wed 03 Apr 2024 11:21:30 PM CST] Use a instead of li
[INFO  Thu 04 Apr 2024 12:33:34 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.

 Use [count]j or CTRL-D to scroll down.
[INFO  Thu 04 Apr 2024 11:33:43 AM CST] Use - instead of k^
[INFO  Thu 04 Apr 2024 11:38:49 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 04 Apr 2024 11:38:56 AM CST] Use o instead of jO
[INFO  Thu 04 Apr 2024 11:39:05 AM CST] Use O instead of ko
[INFO  Thu 04 Apr 2024 11:41:46 AM CST] Use t& instead of f&h
[INFO  Thu 04 Apr 2024 12:36:51 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 04 Apr 2024 12:52:16 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 04 Apr 2024 03:50:13 PM CST] Use O instead of ko
[INFO  Thu 04 Apr 2024 03:50:17 PM CST] Use O instead of ko
[INFO  Thu 04 Apr 2024 04:08:41 PM CST] Use Td instead of Fdl
[INFO  Thu 04 Apr 2024 04:13:53 PM CST] Use o instead of jO
[INFO  Thu 04 Apr 2024 04:14:07 PM CST] Use O instead of ko
[INFO  Thu 04 Apr 2024 04:19:48 PM CST] Use O instead of ko
[INFO  Thu 04 Apr 2024 08:01:59 PM CST] Use a instead of li
[INFO  Thu 04 Apr 2024 08:05:16 PM CST] Use tj instead of fjh
[INFO  Fri 05 Apr 2024 09:14:17 AM CST] Use O instead of ko
[INFO  Fri 05 Apr 2024 09:18:46 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Fri 05 Apr 2024 09:45:07 AM CST] Use a instead of li
[INFO  Fri 05 Apr 2024 09:49:25 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Fri 05 Apr 2024 09:50:52 AM CST] You pressed the l key too soon!
 Use [count]j or CTRL-D to scroll down.
 Use [count]k or CTRL-U to scroll up.
[INFO  Fri 05 Apr 2024 04:21:25 PM CST] Use O instead of ko
[INFO  Fri 05 Apr 2024 04:26:08 PM CST] Use O instead of ko
[INFO  Fri 05 Apr 2024 04:35:52 PM CST] Use O instead of ko
[INFO  Fri 05 Apr 2024 07:25:43 PM CST] Use ct" instead of dt"i
[INFO  Fri 05 Apr 2024 07:26:25 PM CST] Use cw instead of dwi
[INFO  Fri 05 Apr 2024 07:36:37 PM CST] Use ta instead of fah
[INFO  Fri 05 Apr 2024 07:38:32 PM CST] Use cf, instead of df,i
[INFO  Fri 05 Apr 2024 07:38:51 PM CST] Use O instead of ko
[INFO  Sat 06 Apr 2024 07:15:44 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.

[INFO  Sat 06 Apr 2024 08:40:44 AM CST] Use cf_ instead of df_i
[INFO  Sat 06 Apr 2024 08:41:15 AM CST] Use cf_ instead of df_i
[INFO  Sat 06 Apr 2024 08:45:25 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.

 Use [count]j or CTRL-D to scroll down.
[INFO  Sat 06 Apr 2024 09:54:31 AM CST] Use A instead of $a
[INFO  Sat 06 Apr 2024 09:58:22 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 06 Apr 2024 09:59:46 AM CST] Use a instead of li
[INFO  Sat 06 Apr 2024 01:58:19 PM CST] Use O instead of ko
[INFO  Sat 06 Apr 2024 02:08:16 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 06 Apr 2024 02:08:55 PM CST] Use O instead of ko
[INFO  Sat 06 Apr 2024 05:11:09 PM CST] The <Down> key is disabled!
[INFO  Sat 06 Apr 2024 05:11:15 PM CST] The <Down> key is disabled!
[INFO  Sat 06 Apr 2024 05:19:58 PM CST] Use ci" instead of di"i
[INFO  Sat 06 Apr 2024 05:22:20 PM CST] Use O instead of ko
[INFO  Sat 06 Apr 2024 05:27:16 PM CST] Use cf_ instead of df_i
[INFO  Sun 07 Apr 2024 10:50:10 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sun 07 Apr 2024 11:53:06 AM CST] Use O instead of ko
[INFO  Sun 07 Apr 2024 11:53:19 AM CST] Use T> instead of F>l
[INFO  Tue 09 Apr 2024 09:25:33 AM CST] You pressed the - key too soon!
[INFO  Tue 09 Apr 2024 09:28:30 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 09 Apr 2024 09:31:00 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 09 Apr 2024 09:32:56 AM CST] You pressed the <CR> key too soon!
[INFO  Tue 09 Apr 2024 09:41:01 AM CST] Use O instead of ko
[INFO  Tue 09 Apr 2024 09:44:54 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 09 Apr 2024 09:46:07 AM CST] Use O instead of ko
[INFO  Tue 09 Apr 2024 09:47:16 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 09 Apr 2024 09:54:16 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 09 Apr 2024 09:57:40 AM CST] You pressed the <CR> key too soon!
[INFO  Tue 09 Apr 2024 10:05:22 AM CST] Use f? instead of t?l
[INFO  Tue 09 Apr 2024 11:03:37 AM CST] Use O instead of ko
[INFO  Tue 09 Apr 2024 11:07:02 AM CST] You pressed the - key too soon!
[INFO  Tue 09 Apr 2024 11:21:06 AM CST] Use O instead of ko
[INFO  Tue 09 Apr 2024 03:55:28 PM CST] Use O instead of -o
[INFO  Tue 09 Apr 2024 04:00:28 PM CST] Use O instead of ko
[INFO  Tue 09 Apr 2024 04:03:29 PM CST] Use O instead of ko
[INFO  Tue 09 Apr 2024 04:06:39 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 09 Apr 2024 04:08:29 PM CST] Use tf instead of ffh
[INFO  Tue 09 Apr 2024 04:08:46 PM CST] Use - instead of k^
[INFO  Tue 09 Apr 2024 04:13:18 PM CST] Use - instead of k^
[INFO  Wed 10 Apr 2024 04:37:02 PM CST] Use dge instead of vged
[INFO  Thu 11 Apr 2024 11:13:39 AM CST] You pressed the <CR> key too soon!
[INFO  Thu 11 Apr 2024 01:22:22 PM CST] Use cf> instead of df>i
[INFO  Thu 11 Apr 2024 01:25:09 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 11 Apr 2024 07:47:09 PM CST] You pressed the <CR> key too soon!
[INFO  Thu 11 Apr 2024 07:52:16 PM CST] Use cE instead of dEi
[INFO  Thu 11 Apr 2024 07:54:32 PM CST] Use o instead of jO
[INFO  Thu 11 Apr 2024 08:01:02 PM CST] Use O instead of ko
[INFO  Thu 11 Apr 2024 08:01:54 PM CST] Use O instead of ko
[INFO  Thu 11 Apr 2024 08:07:30 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 11 Apr 2024 08:07:36 PM CST] Use yf( instead of vf(y
[INFO  Thu 11 Apr 2024 08:16:32 PM CST] Use O instead of ko
[INFO  Thu 11 Apr 2024 08:20:47 PM CST] Use t= instead of f=h
[INFO  Thu 11 Apr 2024 08:21:57 PM CST] Use A instead of $a
[INFO  Thu 11 Apr 2024 08:22:25 PM CST] Use - instead of k^
[INFO  Thu 11 Apr 2024 08:34:36 PM CST] Use O instead of ko
[INFO  Thu 11 Apr 2024 08:39:54 PM CST] Use O instead of ko
[INFO  Thu 11 Apr 2024 09:27:11 PM CST] Use o instead of jO
[INFO  Thu 11 Apr 2024 09:28:57 PM CST] Use O instead of ko
[INFO  Thu 11 Apr 2024 09:36:52 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 11 Apr 2024 09:39:38 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Thu 11 Apr 2024 09:40:30 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 11 Apr 2024 09:56:07 PM CST] Use A instead of $a
[INFO  Thu 11 Apr 2024 09:56:56 PM CST] Use A instead of $a
[INFO  Thu 11 Apr 2024 09:57:01 PM CST] Use A instead of $a
[INFO  Thu 11 Apr 2024 09:57:17 PM CST] Use A instead of $a
[INFO  Thu 11 Apr 2024 09:59:33 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Thu 11 Apr 2024 09:59:42 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 13 Apr 2024 01:05:41 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 13 Apr 2024 01:17:20 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 13 Apr 2024 01:17:22 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 13 Apr 2024 01:17:39 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 13 Apr 2024 01:18:15 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 13 Apr 2024 01:18:26 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 13 Apr 2024 01:18:30 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 13 Apr 2024 01:18:33 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 13 Apr 2024 01:19:35 AM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Sat 13 Apr 2024 01:19:40 AM CST] Use A instead of $a
[INFO  Sat 13 Apr 2024 01:20:31 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 13 Apr 2024 01:20:37 AM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Sat 13 Apr 2024 01:20:46 AM CST] Use - instead of k^
[INFO  Mon 15 Apr 2024 07:05:32 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Mon 15 Apr 2024 07:09:08 PM CST] Use O instead of ko
[INFO  Mon 15 Apr 2024 07:14:11 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Mon 15 Apr 2024 07:18:56 PM CST] Use fu instead of tul
[INFO  Mon 15 Apr 2024 07:18:57 PM CST] Use fu instead of tul
[INFO  Mon 15 Apr 2024 07:25:04 PM CST] Use O instead of ko
[INFO  Mon 15 Apr 2024 07:25:54 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Mon 15 Apr 2024 07:27:04 PM CST] Use o instead of jO
[INFO  Mon 15 Apr 2024 07:27:09 PM CST] Use O instead of ko
[INFO  Mon 15 Apr 2024 07:32:24 PM CST] Use O instead of ko
[INFO  Mon 15 Apr 2024 07:34:15 PM CST] Use O instead of ko
[INFO  Mon 15 Apr 2024 07:43:47 PM CST] Use <CR> or + instead of j^
[INFO  Mon 15 Apr 2024 07:46:20 PM CST] Use O instead of ko
[INFO  Mon 15 Apr 2024 07:47:00 PM CST] Use fu instead of tul
[INFO  Mon 15 Apr 2024 07:55:32 PM CST] You pressed the <CR> key too soon!
[INFO  Mon 15 Apr 2024 07:55:51 PM CST] Use O instead of ko
[INFO  Mon 15 Apr 2024 08:09:53 PM CST] Use fu instead of tul
[INFO  Tue 16 Apr 2024 12:47:19 PM CST] Use O instead of ko
[INFO  Tue 16 Apr 2024 12:47:42 PM CST] Use O instead of ko
[INFO  Tue 16 Apr 2024 12:48:23 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 12:48:51 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 12:50:48 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 12:50:52 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 12:51:55 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 12:52:13 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 12:54:35 PM CST] Use t$ instead of f$h
[INFO  Tue 16 Apr 2024 12:54:36 PM CST] Use a instead of li
[INFO  Tue 16 Apr 2024 12:55:44 PM CST] Use O instead of ko
[INFO  Tue 16 Apr 2024 12:56:20 PM CST] Use O instead of ko
[INFO  Tue 16 Apr 2024 01:03:18 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:03:29 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:05:03 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:05:14 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:05:30 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:05:33 PM CST] Use <CR> or + instead of j^
[INFO  Tue 16 Apr 2024 01:05:54 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 16 Apr 2024 01:30:19 PM CST] Use O instead of ko
[INFO  Tue 16 Apr 2024 01:32:31 PM CST] Use O instead of ko
[INFO  Tue 16 Apr 2024 01:33:25 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:33:27 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:34:47 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:39:24 PM CST] Use O instead of ko
[INFO  Tue 16 Apr 2024 01:41:14 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:41:42 PM CST] Use O instead of ko
[INFO  Tue 16 Apr 2024 01:43:45 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:43:46 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:43:47 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:43:48 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:44:37 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:44:39 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 01:44:40 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Tue 16 Apr 2024 01:44:44 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 02:38:42 PM CST] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
[INFO  Tue 16 Apr 2024 02:39:27 PM CST] Use a instead of li
[INFO  Tue 16 Apr 2024 02:39:43 PM CST] Use o instead of jO
[INFO  Tue 16 Apr 2024 02:43:27 PM CST] Use O instead of ko
[INFO  Tue 16 Apr 2024 04:13:11 PM CST] You pressed the <CR> key too soon!
[INFO  Tue 16 Apr 2024 04:25:25 PM CST] You pressed the <CR> key too soon!
 Use [count]j or CTRL-D to scroll down.
[INFO  Wed 17 Apr 2024 12:06:08 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Wed 17 Apr 2024 12:06:28 PM CST] The <Up> key is disabled!
[INFO  Wed 17 Apr 2024 12:06:30 PM CST] You pressed the k key too soon! Use [count]k or CTRL-U to scroll up.
[INFO  Wed 17 Apr 2024 12:06:35 PM CST] The <Down> key is disabled!
[INFO  Wed 17 Apr 2024 12:17:07 PM CST] The <Down> key is disabled!
[INFO  Wed 17 Apr 2024 12:17:27 PM CST] The <Down> key is disabled!
[INFO  Wed 17 Apr 2024 07:24:23 PM CST] Use A instead of $a
[INFO  Wed 17 Apr 2024 07:28:42 PM CST] You pressed the h key too soon!

The logging function currently uses the date format settings of the operating system when writing logs to a file.
Therfore your logs and my logs are diffrently formatted.
Windows:
[INFO  18.4.2024. 4:52:27] You pressed the j key too soon! Use [count]j or CTRL-D to scroll down.
Mac:
[INFO  Mon Jan 22 09:37:30 2024] The <Right> key is disabled!
Your log example :
[INFO  Thu 11 Jan 2024 02:52:04 PM CST] Use O instead of ko
I do not know if i have lack of knowladge on parsing dates in lua but it seems like im in need of some thrid party plugin or
adding date format so when log is written it would be easier to parse.
os.date("%d.%m.%Y %H:%M:%S"),

@The-Sirius-Black it works now. However when I open the report, only the All Time tab has records and others are all blank.

@m4xshen  I added date format  os.date("%d.%m.%Y %H:%M:%S")   to function that writes logs. That means that new logs will be written with uniformed date format so I can easly parse it. But old logs within this month will not be shown because all logs have diffrent format I've tried to explain here . They will be shown in All Time tab.

@The-Sirius-Black Yes I knew that the date format change. So I deleted all old logs and triggered new ones. However they still only display inside the All Time tab.

@m4xshen  I've done some refactoring and applied changes.


.gitattributes: Mark cmdref files as generated

This commit tells Linguist that files in Documentation/cmdref/ are generated and can therefore be hidden by default in pull requests.

Marking as ready to merge since this is only waiting on Janitor review and not covered by any tests.


Harden against unexpected country / language / locale settings - fall back to a default if needed

See #5059 for the full adventure. In short if the user's OS-level locale is set to something our version of Java (I guess? Maybe it was a particularly old Java 11 and some new language code had been issued since?) doesn't know about it can crash the loading of the entire game.
It would present something like the following:
20:53:59.666 [main] WARN o.t.e.c.f.c.LocaleConstraint - Locale en_AE should be one of [,nn,ar,bg,kea,nds,zu,am ...... ff,sd,mas,ti,kok,ewo,ms,ccp,br]
20:53:59.666 [main] ERROR o.t.g.u.r.SimpleClassFactory - Failed to instantiate class: class org.terasology.engine.config.SystemConfig java.lang.reflect.InvocationTargetException: null at ...

In this case the user was able to change their OS-level language then the game ran fine. That seems like quite a change to require for a user to load the game though. We could probably just fall back on some variant of English and optionally post a little warning in the main game UI like "Unsupported locale detected on loading, defaulting to plain English" - I think we talked about that as a possibility long ago ("queued" errors/warnings being able to show in the main menu like in an event log of sorts) although I'm not sure what came of it.

are you sure this still exists? there is nowadays
engine/src/main/java/org/terasology/engine/config/SystemConfig.java:        // Matches unusual locales on Mac OS created from the user's language and location, e.g. en_UA


Validation for nested fields returns all passed data instead of only fields in the rules

Laravel Version: 5.5.40
PHP Version: 7.1
Database Driver & Version:

Description:
Validation for nested fields returns all passed data instead of only fields in the rules.
For example:
$data = $this->validate($request, [
'nested.field1' => 'string'
]);
will also return anything that was part of "nested" input, i.e. 'nested.extra_field', 'nested.$promise', etc.
Steps To Reproduce:

This will be fixed in 5.7: #23708

awesome!


Add License File

Add MIT License File

Thanks. Do you mind filling in the <year> <copyright holders> placeholders?

HI Arruda,
done.
Thanks

I meant, to put my name instead of . I pushed the license now, thanks anyway


Include markers issue #5092

@matteius @oz123 I think this is literally what needs to happen for this, after the changes that were done a month ago. Or am I overlooking something?

@ImreC thanks for contributing again.
I would appreciate if it, if you could include a test case and the usual news fragment.

Yeah sure. Was just checking if this was literally it. Will do that later today

Yeah that seems like the logical change.  @ImreC Not sure you timeline, but I'd like to do another pipenv release due to another issue in the next week or so and would love if we could include this one as well.

Hi @matteius, this completely fell off the map on my end. I'm having a very busy couple of weeks. I will find some time on Friday to do this

@oz123 @matteius I have now implemented it as an optional flag. Do you agree with this approach? Happy to make it default if that's better

@ImreC I am thinking it should be the default behavior to include markers, but perhaps a flag like you have to exclude them (non-default) makes sense?  Especially with reports like this, having the ability to exclude markers may be relevant for some:
Also, Not sure if you saw my comment the other day I CC'd you on another issue report, the TLDR is (having trouble finding the ticket link)

I do wonder if in the code I linked to for the requirements command, if we should have the logic first add the dev dependencies so that the production dependencies can overwrite any of those? -- that seems more correct to me than allowing the dev dependencies to break the production specifiers.

I tend to agree here, the flag should actually be --exclude-markers and the default behaviour should include them.

@oz123 @matteius I flipped the markers flag. I really have been short for time the last couple of weeks. Hope this covers all.

@ImreC @matteius please also fix the merge conflict.

@oz123 I am not seeing what you mean by a potential merge conflict ... If there is not one, I am ready to merge this and will push a commit to main to fix the documentation typo.

Ay! Sorry depending on the type of merge, there will be a conflict or there won't be.


IAudioClient3::InitializeSharedAudioStream() returns AUDCLNT_E_INVALID_STREAM_FLAG if any flag other than AUDCLNT_STREAMFLAGS_EVENTCALLBACK is specified

Related: https://social.msdn.microsoft.com/Forums/en-US/windowspro-audiodevelopment/thread/55b39a3d-0f2a-4f05-ac66-5c5abf32ec64

Thank you for removing the stream flags that are incorrectly documented as being valid, even though they are, as you noticed, actually invalid for this method.
It may also be worth adding that the AUDCLNT_SESSIONFLAGS_XXX values are also valid:

AUDCLNT_SESSIONFLAGS_EXPIREWHENUNOWNED
AUDCLNT_SESSIONFLAGS_DISPLAY_HIDE
AUDCLNT_SESSIONFLAGS_DISPLAY_HIDEWHENEXPIRED

No problem.
According to my testing, AUDCLNT_STREAMOPTIONS_MATCH_FORMAT (IAudioClient2::SetClientProperties()) is the proper replacement for AUDCLNT_STREAMFLAGS_AUTOCONVERTPCM and presumably AUDCLNT_STREAMFLAGS_SRC_DEFAULT_QUALITY as well.
As a bonus, IAudioClient::IsFormatSupported() can be relied on as it takes the properties into account.


Explicitly use UTC timezone for test (#149)

This fixes test_loader.test_utcnow() which fails if the machine is not in UTC.

thanks!


No error when trying to check out PR with changes in workspace

Have changes in some file
Check out a PR
The only feedback is a notification that says "Error"

From the Git output channel:
> git rev-parse --symbolic-full-name master@{u}
> git rev-list --left-right master...refs/remotes/origin/master
> git for-each-ref --format %(refname) %(objectname) --sort -committerdate
> git remote --verbose
> git checkout -q -b rmacfarlane/quickpick --no-track 2ac2cc951b5197509c13f886d9c4db51525ceef5
error: Your local changes to the following files would be overwritten by checkout:
	folder/src/file.ts // redacted
Please commit your changes or stash them before you switch branches.
Aborting
> git config --local branch.master.github-pr-owner-number
> git config --local -l
> git status -z -u
> git symbolic-ref --short HEAD
> git rev-parse master
> git rev-parse --symbolic-full-name master@{u}
> git rev-list --left-right master...refs/remotes/origin/master
> git for-each-ref --format %(refname) %(objectname) --sort -committerdate
> git remote --verbose
> git rev-parse rmacfarlane/quickpick
fatal: ambiguous argument 'rmacfarlane/quickpick': unknown revision or path not in the working tree.
Use '--' to separate paths from revisions, like this:
'git <command> [<revision>...] -- [<file>...]'

After stashing my changes I was able to check out the PR

This seems to be Windows specific, on Mac I get do get notification about local changes being overwritten

Actually, the difference was whether or not I already had a local copy of the branch I was trying to check out. The git commands we run are different for those cases, one wasn't setting an error code


Incorrect calculateInSampleSize leads to overly degraded quality

You have an issue in calculateInSampleSize where the return results does not match the comment "largest value that keeps both height and width larger than the requested height and width".
For instance for an image of size 3000x3000, if the requested size is 2000x2000, your code returns inSampleSize = 2, leading to a 1500x1500 overly degraded image being loaded in memory and then upscaled to 2000x2000
Here follows my suggestion for correction, but feel free to adapt however you want
fun calculateInSampleSize(
    options: BitmapFactory.Options,
    reqWidth: Int,
    reqHeight: Int
): Int {
    // Raw height and width of image
    var height = options.outHeight
    var width = options.outWidth
    var sampleSize = 1

    // Calculate the largest inSampleSize value that is a power of 2 and keeps both
    // height and width larger than the requested height and width.
    while(height / 2 > reqHeight || width / 2 > reqWidth) {
        sampleSize *= 2
        height /= 2
        width /= 2
    }

    return sampleSize
}

Thank you @FlorianDenis for the feedback


CRF post processing

Hi,
First of all i want say thanks a lot for your work. Its really one of the best model for image segmentation i have faced so far. Output may be little less than few others but no comparison of speed for this model. It super fast.
I am trying to train this model on human images and waiting for he output. However curious about CRF post processing.
As while using pre-trained model output edges are not that sharp. So thinking post processing may help on that.
Can you please suggest how to do that.

I don't suggest to use CRF as the post-processing, because it often introduces many salt-pepper noises along the boundaries. If you want sharp and clear boundaries, you can try our previous BASNet (https://github.com/NathanUA/BASNet) or use the cascaded PSP (https://github.com/hkchengrex/CascadePSP) as the post-process of the U^2-Net results.

Thank u for your response and suggestion.
I will try these and share you the results.

Hi,
I just wanted to share few update.
I tried cascade psp for post processing of u2net result and results are really good but it requires GPU and also it take too much time. So here we are losing the benefit of fast processing of u2net.
I just have one thought, Is it possible to fine tune u2net pre trained model on our custom dataset.
Please suggest and thank you again for ur help

@tiwari93 please keep updated if you manage to fine-tune the model.
I've tried:

fine-tuning with the custom dataset (300 images), but the results became poor after first iterations and haven't improved
fine-tuning on the original dataset + our custom. The results still became worse

Also, I tried different configurations of layer freezing, with different parameters of Adam optimizer.
But couldn't produce good results

It might be easier to train from scratch on your dataset than fine-tuning


Error in testCellsToLinkedMultiPolygon/gridDiskResolutions?

Since the test use a 2-disks, I think that numHexes should be 19 (instead of 7), and thus countLinkedCoords would be 30.
Or am I misunderstanding something?

That... is completely correct. We were only taking the first 7 cells in the gridDisk output, which only represent the 1-disk, not the 2-disk. So the test was still working, but we weren't actually testing the full 2-disk. Thanks for the report!


Issues and possible improvements to transparency rendering

The default framebuffer WebGL uses for rendering is RGB(A)8 buffer. The values written to it are expected to be in the display color space, which typically means sRGB. As this framebuffer is created by the canvas, we have no control over it, and it is not created with sRGB (EXT_sRGB) flag. Meaning the shader writing to it needs to manually encode values from linear to sRGB space.
LDR rendering

when rendering directly to the default framebuffer, the engine correctly encodes values to sRGB space at the end of shaders. This causes alpha blending to not be correct, as the blending takes place in sRGB space, instead of correctly in linear space, with the result getting encoded to sRGB. This is how PlayCanvas currently operates if rendering directly to the default framebuffer.
proposal to support linear workflow: https://www.w3.org/Graphics/Color/Workshop/slides/Russell.pdf (it does not seem to be progressing, see https://groups.google.com/a/chromium.org/g/blink-dev/c/tA7Av4fLQFY/m/oUw_k949AAAJ).
a workaround is rendering to a created framebuffer using sRGB, which would alpha blend correctly, and blit the framebuffer to the default framebuffer at the end of the frame. This is expensive, and so not typically used.
we also implement dithered transparency. As this does not depend on alpha blending, it's not affected by blending in gamma space and works correctly. The only problem is that when enabled, this looks visually different to alpha blending, as that is incorrect.

HDR rendering

When we render in HDR mode, we use float format of the internal render target in linear space. This makes alpha blending to work in linear space, which is correct.
We have problem with transparency dithering here if tone mapping is used - it does not match the correct alpha blending. The problem is that with dithering, the discarded and visible pixels are tone mapped, but as tone-mapping is not linear, it does not match the alpha blending,  as non-blended values are tonemapped.
Transparency dithering works correctly if tone mapping is used, as long as TAA is used as well - as TAA resolves transparency by blending with history buffer, and this blending takes place before the tone mapping.

References:
https://github.com/KhronosGroup/WebGL/issues/2474
https://github.com/mrdoob/three.js/issues/23019
https://stackoverflow.com/questions/51032480/how-do-you-implement-a-gamma-correct-workflow-in-webgl2
https://groups.google.com/g/angleproject/c/5ITMg4_m8Ug
https://github.com/playcanvas/engine/issues/5287

its not necessarily srgb though right? https://ccameron-chromium.github.io/webgl-examples/p3.html. but I guess this would actually help here as we're letting the hardware do it

True, but until we implement https://github.com/playcanvas/engine/issues/5287, it's sRGB. Handling P3 is part of that issue.

Related Chromium issue I created exploring the sRGB in WebXR: https://partnerissuetracker.corp.google.com/issues/352345526?pli=1

conclusion regarding WebXR, from the issue above:
The mechanism for specifying a texture format for WebXR is the Layers API, which is not yet supported by Chrome but does have support in the Meta Quest browser. WebXR is not compatible with buffers allocated by drawingBufferStorage.

https://github.com/playcanvas/engine/pull/6838 implements support for sRGB framebuffer on WebGPU, but also support for sRGB render target on all platforms (just not the default framebuffer on WebGL), allowing linear rendering.

Update on this.

the linear blending can be used on both WebGL and WebGPU if the color buffer of a render target uses some of the sRGB formats, for example SRGBA8
sRGBA8 format can be used as a canvas framebuffer format on WebGPU as well, using displayFormat member of createGraphicsDevice options
on WebGL the support is not implemented currently and the options are more limited:

drawingBufferStorage can be used to set it, but this is only supported on Chrome 122+, other browsers do not implement it yet
Layers API can be used to set this for WebXR, but Chrome does not implement this (see more above)

relevant topic: https://www.fractolog.com/2024/07/color-space-correctness-in-alpha-blending/


What happens if verification fails? Is this an assertion?

The documentation and example seem to indirectly suggest that the build will be failed if the hash doesn’t match. But it doesn’t explicitly say that.
From just its name, I assumed that this task would have an output parameter letting you know if the file’s hash was matched. However, it looks like, to do that, I would need to call GetFileHash instead and then use a condition to compare.
Please clarify what happens when the hash doesn’t match and provide guidance for how people should conditionally check if a file matches a hash or not and run their own code in response (which sounds like this task but probably isn’t).

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: ffa6013d-443a-570a-ca70-f3cad50a3b34
Version Independent ID: d422fed1-420d-bf97-33c4-1842d5861696
Content: VerifyFileHash  Task - Visual Studio
Content Source: docs/msbuild/verifyfilehash-task.md
Product: visual-studio-windows
Technology: msbuild
GitHub Login: @Mikejo5000
Microsoft Alias: mikejo

@binki  Thank you for the feedback, assigning this to the author for review.

@rainersigwald for input on this.

The VerifyFileHash will fail if the hash does not match. That's not configurable. However, you can allow task errors using ContinueOnError="WarnAndContinue" and then check $(MSBuildLastTaskResult) to guide further decisions.
You can't completely silence a failed task; you may wish to combine WarnAndContinue with a demotion of the specific warning to a message, but that doesn't work at the moment due to a bug in MSBuild: microsoft/msbuild#4851.
As a complete example:
  <PropertyGroup>
    <!-- This doesn't work due to https://github.com/microsoft/msbuild/issues/4851 -->
    <MSBuildWarningsAsMessages>$(MSBuildWarningsAsMessages);MSB3952</MSBuildWarningsAsMessages>
  </PropertyGroup>

  <Target Name="DemoVerifyCheck">
    <VerifyFileHash File="$(MSBuildThisFileFullPath)"
                    Hash="1"
                    ContinueOnError="WarnAndContinue" />

    <PropertyGroup>
      <HashMatched>$(MSBuildLastTaskResult)</HashMatched>
    </PropertyGroup>

    <Message Condition=" '$(HashMatched)' != 'true'"
             Text="The hash didn't match" />

    <Message Condition=" '$(HashMatched)' == 'true'"
             Text="The hash did match" />
  </Target>

Hi @rainersigwald,
I have for now in my use case decided to use GetFileHash and use MSBuild conditions to branch logic based on that. Your suggestion of using ContinueOnError="WarnAndContinue" and $(MSBuildLastTaskResult) is interesting. I might have been able to write more terse code with that. But, I already wrote my two GetFileHash calls and the comparison of the resultant values.
I am verifying that file hashes match as a sort of updatedness check. If the hashes don’t match, that is a perfectly acceptable and supported condition for what I am trying to accomplish (I’d actually prefer a file comparison because that would be more correct, but it’s not security-critical, so using hashes is acceptable).
My (way too late) comment on VerifyFileHash is that its name could have been chosen to make its behavior more obvious. For example, it could have been named AssertFileHash. VerifyFileHash sounds like something that would have a boolean output parameter to me ;-).
Anyway, this is an issue filed against the documentation. May the documentation be updated to clearly show that VerifyFileHash is an assertion and will fail the build if the hash doesn’t match? And, if the ContinueOnError="WarnAndContinue" and $(MSBuildLastTaskResult) is actually a recommended usage, adding an example of that would be great too.
Thanks!


Update dash.html

Changes latest TV show title on dash to Latest Episodes to combine with changes in dash.js
Test on default, slate, cerulean and also iPhone 5s, iPad 2.

Seems good, just remember to change
https://github.com/Hellowlol/HTPC-Manager/blob/master2/interfaces/default/html/settings.html#L70


Luisgarcia3795/sc 42285/significantly improve kots release success

What type of PR is this?
type::tests
What this PR does / why we need it:
Adds testim tdk test

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


feat!: make use_sqlite = false be the default

Fix #91
This totally removes the dependencies for kkharji/sqlite.lua.
TODO

[x] Load sqlite.lua lazily even if it does Sqlite.new().
[x] Suggest to use native logic and migrate from SQLite DB.
[x] Write migration guide doc.

It looks good after my dogfooding for several weeks. Make “native mode” be the default!!


New Slack UI Changes Default Tab when Opening Application

On the old Slack UI the default view when you opened a Slack application was the Home tab. Now, without changing anything in my application, the default view is the messaging tab when you open the application. The only thing that changed was that I was migrated to the new Slack UI that I've been hearing about. Is there a way to change this? I don't want to direct users to the Messages tab every time they click on the app.

@dglindner2 Hi, Thanks so much for your question! 🙌
I would recommend going into your App Config page for the application, then going to App Home in the sidebar and making sure that the app home option is toggled on. Hopefully this should launch the App Home in favor of the messaging tab in the default view.
If this is already enabled, let me know and we can troubleshoot further!

Hey Ashley!
Sorry if I didn't provide enough information. I've had an application in Slack for the past 6 months where the majority of the features are in the home tab. However, last week my Slack was updated to the new Slack User Interface. With this change, it seems there was a change in the functionality of all Slack applications. Instead of opening to the home tab (like it has for the past 6 months), it now opens to the messages tab by default.
This must be a feature of the new Slack User Interface, but this is hurtful towards the usability of my application in Slack. I was wondering if the Dev Team at Slack has been working on a way to choose the default tab that your application opens to, so that developers can lead their users to the best place.

Hi @hello-ashleyintech ,
Were you able to find out anything about the new Slack UI changing the functionality of opening an application?
It seems like the developer should have the option to determine themselves if the user is routed to the Home tab or the Message tab upon opening the application.

Hi, @dglindner2! I will ask internally and see what I can find about those changes to the Slack UI! Thanks for bumping this up. 🙇 I'll post an update once I have one!

Hi, @dglindner2! After asking internally, it looks like this is a reported bug that was an unintended side effect of the new Slack UI. It is on the team's radar, however the timeline to resolve this issue is unknown right now due to limited bandwidth.
In the meantime, they suggested this workaround:

When a user first installs the app, you could send them a message immediately with a button to take them to the Home tab. You can set the url to deeplink to your app's Home. Here are some resources on how to achieve that.
https://api.slack.com/reference/block-kit/block-elements#button
https://api.slack.com/reference/deep-linking#open_app_home


LICENSE text

GitHub does some sort of license text matching when determining a project license.  As an example, VueJS is MIT licensed and it is displayed in the project bar:

Duktape is not currently detected as MIT by GitHub:

This is probably due to the license file containing extra text.  To get GH to recognize the project, it seems that you have to remove the header.  Following VueJS, the license header should just be
The MIT License (MIT)

Copyright (c) 2013-present, Duktape authors

Duktape uses the "Duktape license", as is in the first (technically second) line in the license file. If GitHub doesn't know how to read and/or write, it should go to school or better get some AI.

The intent is quite plainly to use the MIT license and not a variant of it. The fifth line attempts to make that clear by linking: https://github.com/svaarala/duktape/blob/master/LICENSE.txt#L5. The license file has a heading saying "Duktape license" just to make it clear this file is part of the Duktape repository/distribution (which might not be a good idea because it may confuse more than it clarifies).
I can try what happens if I remove the Duktape license heading - if that fixes the issue, it would be the easiest change because the existing text would not be affected.

I don't think you should change that. It's GH doesn't know how to parse the text of a license file, it's entirely GH's problem.


fastlane: 2.171.1 -> 2.204.2

Motivation for this change
This originally was an upgrade to 2.204.1 to workaround an App Store
Connect regression but Apple has since fixed their API. So now this is
just a "wouldn't it be nice to update this package" commit.
Original:
App Store Connect has a bug that prevents build uploads. This new
version of fastlane has a workaround.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

unstable has the most recent version


Admin API updates

See the project page for items in progress.
Affected:

Creator API
Require functional projects
Rename 'admin' to 'creator'
Unbind User from Tokens
Require verified users only
Require verified creators only
Remove account updater
Remove account concept

QA done


⚠ T:Riza Community Forum has degraded performance

In df59ddf, T:Riza Community Forum (https://community.triza.dev) experienced degraded performance:

HTTP code: 200
Response time: 3535 ms

Resolved: T:Riza Community Forum performance has improved in 93a75db.


Error when trying to use parent as the same sat you're trying to re-inscribe on.

Just playing around with the new commands in Ord.
If you designate the parent as the same sat that you're trying to reinscribe on it will send the commit and then report an error.
This the command I used: ord wallet inscribe  --fee-rate 8 --reinscribe --file  --satpoint c2706892f6124d3cdc10e3d8a6f5a6fbd122cb3449c78e404ef13b6bd6c91965:0:0 --parent 6047efc626732db53a32eafa4ee55efbff4cde060ce49f071a6167bacd252516i0
The location of the parent is the satpoint to reinscribe on.
Comes up with error:
error: Failed to send reveal transaction: JSON-RPC error: RPC error response: RpcError { code: -26, message: "bad-txns-spends-conflicting-tx, ec7984f2942bcf60b3ee2ce9a645644e393b1ef9c8b9d512d6c1a323ef9b45c6 spends conflicting transaction d7dad483085ee8c437661a3afbbf1eb1fb450f2e6fe65d884684be2719a268fc", data: None }
Commit tx d7dad483085ee8c437661a3afbbf1eb1fb450f2e6fe65d884684be2719a268fc will be recovered once mined
https://mempool.space/tx/d7dad483085ee8c437661a3afbbf1eb1fb450f2e6fe65d884684be2719a268fc
Not sure whether it should stop it before commit or whether it's possible to actually have the parent be involved in reinscriptions on that sat.
It was recovered so not a big issue, but thought I'd bring it up

Duplicate of #2564

Good issue! I'll reopen this issue since it's more specific and close the other one


Downloads and History interface?

Any plan adding tabs to left sidebar for Download Queue and Reading History like the ones in Ehviewer? https://imgur.com/a/SvDERjb It'll be very convenient.

Download Queue √


command getParameter not implemented

My code has the following call:
        cmd = SON([('getParameter', 1), ('rs_id', 1)])
        response = client["admin"].command(cmd)

which fails with mongomock with
E   NotImplementedError: command is a valid Database method but is not implemented in Mongomock yet

This blocks me from using mongomock at the moment.

Dirty fix I used to test my beanie/bunnet code:
from unittest.mock import patch
from bunnet import init_bunnet

with patch("mongomock.database.Database.command", new=lambda *args, **kwargs: {"version": "4.4.0"}):
    init_bunnet(database=self.client.db_name, document_models=[MyDocumentClass])

Dirty fix to your dirty fix for the version
bunnet = "^1.2.0"
mongomock = "^4.1.2"

        with patch("mongomock.database.Database.command", new=lambda *args, **kwargs: {"version": "4.4.0"}):
            with patch("mongomock.database.Database.list_collection_names") as list_collections:
                list_collections.return_value = ["cache_database"]
                client = mongomock.MongoClient()
                db: Database = client['cache_database']
                init_bunnet(database=db,
                            document_models=[xxx])


content-type header missing in web action headers

> curl -k -X POST https://guest.openwhisk/default/echo.json -H "Content-Type: application/json" -d '["a"]'
{
  "__ow_method": "post",
  "__ow_query": "",
  "__ow_body": "WyJhIl0=",
  "__ow_headers": {
    "accept": "*/*",
    "user-agent": "curl/7.43.0",
    "host": "controllers",
    "timeout-access": "<function1>",
    "connection": "close"
  },

After some investigation, I've determined why the content-type value is missing from the headers parameter. Problem being is that the extracted request entity does not contain a content-type value in the headers (akka-http bug?). We can add the content-type to the headers. However, if a content-type was not sent in the request, we need to determine if we want to display a type of none/none in the headers or not.
Method where headers parameter is set:
  private val requestMethodParamsAndPath = {
    extract { ctx =>
      val method = ctx.request.method
      val query = ctx.request.uri.query()
      val path = ctx.unmatchedPath.toString
      val headers = ctx.request.headers
      Context(webApiDirectives, method, headers, path, query)
    }
  }

Could do something similar to the semantics here to add the content-type:
val headers = ctx.request.headers ++ Seq(RawHeader("content-type", ctx.request.entity.contentType.toString))```

If content-type is not set the result is none/none. Should we exclude the header is such a case?
{"__ow_method":"get","__ow_headers":{"accept":"*/*","user-agent":"curl/7.54.0","host":"controllers","timeout-access":"<function1>","content-type":"none/none","connection":"close"},"__ow_path":""}

Could do something like this if we want to exclude the none/none content-type.
val headers = ctx.request.headers ++ receivedContentType(ctx.request.entity.contentType)

private def receivedContentType(contentType: ContentType) = {
    contentType match {
      case x if x == ContentType(MediaType.customBinary("none", "none", MediaType.NotCompressible)) => Seq()
      case _ => Seq(RawHeader(`Content-Type`.lowercaseName, contentType.toString))
    }
  }

From the akka-http doc:
Content-Type
The Content-Type of an HTTP message is modeled as the contentType field of the HttpEntity. The Content-Type header therefore doesn't appear in the headers sequence of a message. Also, a Content-Type header instance that is explicitly added to the headers of a request or response will not be rendered onto the wire and trigger a warning being logged instead!

http://doc.akka.io/docs/akka-http/10.0.0/java/http/http-model.html

Just been bitten by this as I'm writing an XML based API and was looking for content-type in __ow_headers so that I could interpret __ow_body correctly.


Cannot destructure property 'user'

TypeError: Cannot destructure property 'user' of '(0 , WABinary_1.jidDecode)(...)' as it is undefined.

i got this when react to message

You can install this problem with npm install @whiskeysockets/baileys@bobslavtriev/Baileys#af atau yarn add @whiskeysockets/baileys@bobslavtriev/Baileys#af
But you need to remind yourself that this version cannot display user profile photos, so if you want to use npm above, whenever you want to display a profile photo, you have to change or edit it in your node_modules folder, follow the method below:
The first step :
You go to your own bot script folder then look for the folder node_modules > @whiskeysockets > baileys > lib > Socket > chats.js
Second step:
After finding the folder above that I told you about above, then you look for a function or code in the form of "profilePictureUrl" then replace the previous code with the new code below 👇👇
const profilePictureUrl = async (jid, type = 'preview', timeoutMs) => {
var _a;
jid = (0, WABinary_1.jidNormalizedUser)(jid);
const result = await query({
tag: 'iq',
attrs: {
target: jid,
to: WABinary_1.S_WHATSAPP_NET,
type: 'get',
xmlns: 'w:profile:picture'
},
content: [
{ tag: 'picture', attrs: { type, query: 'url' } }
]
}, timeoutMs);
const child = (0, WABinary_1.getBinaryNodeChild)(result, 'picture');
return (_a = child === null || child === void 0 ? void 0 : child.attrs) === null || _a === void 0 ? void 0 : _a.url;
};

What's this? what do you want to do? we need more information like your code.
Please don't ask by just putting an error message.


batch query timeout

Hi all,
I'm trying to run a batched query with a few DELETE statements and i'm getting a timeout end using other normal queries it works fine. I'm using cqerl 0.9.0 tag and Apache Cassandra 2.2.5. Please find below the piece of code:
delete_transaction(AccountId, TransactionId) ->
  case cqerl:new_client() of
    {ok, Client} ->
      Result = cqerl:run_query(Client, #cql_query_batch{mode = logged, queries = [
        #cql_query{statement = <<"DELETE FROM transactions WHERE account_id = ? AND transaction_id = ?">>, values = [{account_id, AccountId}, {transaction_id, TransactionId}]},
        #cql_query{statement = <<"DELETE FROM tags_by_transaction WHERE transaction_id = ? ">>, values = [{transaction_id, TransactionId}]},
        #cql_query{statement = <<"DELETE FROM transactions_by_tag WHERE transaction_id = ? ">>, values = [{transaction_id, TransactionId}]},
        #cql_query{statement = <<"DELETE FROM transactions_by_external WHERE transaction_id = ? ">>, values = [{transaction_id, TransactionId}]}
      ]}),
      cqerl:close_client(Client),
      case Result of
        {ok, void} ->
          true;
        _ ->
          false
      end;
    _ ->
      system_error
  end.

Also tried with unlogged mode.
Am I doing something wrong?
Thanks in advance!

At first glance, I don't see anything obvious. Have you tried running the exact same commands using cqlsh? http://docs.datastax.com/en/cql/3.1/cql/cql_reference/batch_r.html

Some queries were wrong... i need to fix it.
What is faster, perform them separately or in batch like in example above (unlogged)?
Thanks.

Generally, don't use batches to improve performance - they're meant for maintaining consistency between tables. See http://docs.datastax.com/en/cql/3.1/cql/cql_using/useBatch.html

Oh got it. understood now. Thanks all for help. I will close the issue.


Rename the ?lang= parameter in process/next to ?language

This is to match other endpoints and make a more uniform api
Obviously while keeping backwards compatibility
Related Issue(s)

https://github.com/Altinn/app-frontend-react/issues/1774

Verification

[ ] Your code builds clean without any errors or warnings
[ ] Manual testing done (required)
[ ] Relevant automated test added (if you find this hard, leave it and we'll help out)
[ ] All tests run green

Documentation

[ ] User documentation is updated with a separate linked PR in altinn-studio-docs. (if applicable)

How should we label this so it's clearly marked in the release notes? It's not a breaking change since we support the old param, but we should notify other api consumers that are potentially using this that the param has changed from lang to language and that we are deprecating the lang param, if that is what we are doing?

How should we label this so it's clearly marked in the release notes? It's not a breaking change since we support the old param, but we should notify other api consumers that are potentially using this that the param has changed from lang to language and that we are deprecating the lang param, if that is what we are doing?

Yes, that is what I was doing. I initially thought this was only for our code, but obviously someone might have used IHttpContextFactory to get this value in one of the interface hooks. It seems far fetched, but might be possible. Maybe just search all repos to see if someone has used it?

Yes, that is what I was doing. I initially thought this was only for our code, but obviously someone might have used IHttpContextFactory to get this value in one of the interface hooks. It seems far fetched, but might be possible. Maybe just search all repos to see if someone has used it?

I did a quick search in studio through giteas explore mode for "lang" can't see any C# code that are accessing the IHttpContextFactory to extract lang any where. Another factor is the consumers of the apps api, some applications are not tied to our frontend but used directly through the API. When a ServiceOwner upgrades his application to v8 we need to tell that consumers of the API should use language instead of lang when they call process/next, if they are using it.
This will then give them a "grace"-period where both work and the can migrate their solutions using the apps API

This will then give them a "grace"-period where both work and the can migrate their solutions using the apps API

Hmm... This PR only makes both versions work for pdf language, not potential future usages like other process tasks. Do you think I should add compatibility on the controller as well? It seems kind of strange as it isn't used right now, but would be a sign for the future that clients might set lang instead of language

No didn't mean we should add it to the controller, just that we need to inform the app developers that they need to inform their api consumers about this change