Reduce number of filesystem queries

Is your feature request related to a problem? Please describe.
In the current implementation of the extension, there are too many queries to the remote filesystem to check for things like - islink, isdir or isfile(ref). These requests add up and significantly slow down the interactions with the UI.

Here are logs from the FTP Server
[D 2022-06-30 07:30:54] <IP_ADDRESS>:43252-[anonymous] <- MLSD /
[D 2022-06-30 07:30:54] <IP_ADDRESS>:43252-[anonymous] -> 125 Data connection already open. Transfer starting.
[D 2022-06-30 07:30:54] [debug] starting transfer using send() (<DTPHandler(id=139947920473776, addr='<IP_ADDRESS>:43252', user='anonymous')>)
[D 2022-06-30 07:30:54] [debug] call: close() (<DTPHandler(id=139947920473776, addr='<IP_ADDRESS>:43252', user='anonymous')>)
[D 2022-06-30 07:30:54] <IP_ADDRESS>:43252-[anonymous] -> 226 Transfer complete.
[D 2022-06-30 07:30:54] <IP_ADDRESS>:43252-[anonymous] <- MLST /boot
[D 2022-06-30 07:30:54] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:55] <IP_ADDRESS>:43252-[anonymous] <- MLST /boot
[D 2022-06-30 07:30:55] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:55] <IP_ADDRESS>:43252-[anonymous] <- MLST /boot
[D 2022-06-30 07:30:55] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:55] <IP_ADDRESS>:43252-[anonymous] <- MLST /boot
[D 2022-06-30 07:30:55] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:55] <IP_ADDRESS>:43252-[anonymous] <- MLST /boot
[D 2022-06-30 07:30:55] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:56] <IP_ADDRESS>:43252-[anonymous] <- MLST /boot
[D 2022-06-30 07:30:56] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:56] <IP_ADDRESS>:43252-[anonymous] <- MLST /boot
[D 2022-06-30 07:30:56] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:56] <IP_ADDRESS>:43252-[anonymous] <- MLST /dev
[D 2022-06-30 07:30:56] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:56] <IP_ADDRESS>:43252-[anonymous] <- MLST /dev
[D 2022-06-30 07:30:56] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:56] <IP_ADDRESS>:43252-[anonymous] <- MLST /dev
[D 2022-06-30 07:30:56] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:57] <IP_ADDRESS>:43252-[anonymous] <- MLST /dev
[D 2022-06-30 07:30:57] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:57] <IP_ADDRESS>:43252-[anonymous] <- MLST /dev
[D 2022-06-30 07:30:57] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:57] <IP_ADDRESS>:43252-[anonymous] <- MLST /dev
[D 2022-06-30 07:30:57] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:57] <IP_ADDRESS>:43252-[anonymous] <- MLST /dev
[D 2022-06-30 07:30:57] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:57] <IP_ADDRESS>:43252-[anonymous] <- MLST /proc
[D 2022-06-30 07:30:57] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:58] <IP_ADDRESS>:43252-[anonymous] <- MLST /proc
[D 2022-06-30 07:30:58] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:58] <IP_ADDRESS>:43252-[anonymous] <- MLST /proc
[D 2022-06-30 07:30:58] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:58] <IP_ADDRESS>:43252-[anonymous] <- MLST /proc
[D 2022-06-30 07:30:58] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:58] <IP_ADDRESS>:43252-[anonymous] <- MLST /proc
[D 2022-06-30 07:30:58] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:58] <IP_ADDRESS>:43252-[anonymous] <- MLST /proc
[D 2022-06-30 07:30:58] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:59] <IP_ADDRESS>:43252-[anonymous] <- MLST /proc
[D 2022-06-30 07:30:59] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:59] <IP_ADDRESS>:43252-[anonymous] <- MLST /run
[D 2022-06-30 07:30:59] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:59] <IP_ADDRESS>:43252-[anonymous] <- MLST /run
[D 2022-06-30 07:30:59] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:30:59] <IP_ADDRESS>:43252-[anonymous] <- MLST /run
[D 2022-06-30 07:30:59] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:00] <IP_ADDRESS>:43252-[anonymous] <- MLST /run
[D 2022-06-30 07:31:00] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:00] <IP_ADDRESS>:43252-[anonymous] <- MLST /run
[D 2022-06-30 07:31:00] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:00] <IP_ADDRESS>:43252-[anonymous] <- MLST /run
[D 2022-06-30 07:31:00] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:00] <IP_ADDRESS>:43252-[anonymous] <- MLST /run
[D 2022-06-30 07:31:00] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:00] <IP_ADDRESS>:43252-[anonymous] <- MLST /sys
[D 2022-06-30 07:31:00] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:01] <IP_ADDRESS>:43252-[anonymous] <- MLST /sys
[D 2022-06-30 07:31:01] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:01] <IP_ADDRESS>:43252-[anonymous] <- MLST /sys
[D 2022-06-30 07:31:01] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:01] <IP_ADDRESS>:43252-[anonymous] <- MLST /sys
[D 2022-06-30 07:31:01] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:01] <IP_ADDRESS>:43252-[anonymous] <- MLST /sys
[D 2022-06-30 07:31:01] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:01] <IP_ADDRESS>:43252-[anonymous] <- MLST /sys
[D 2022-06-30 07:31:01] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:02] <IP_ADDRESS>:43252-[anonymous] <- MLST /sys
[D 2022-06-30 07:31:02] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:02] <IP_ADDRESS>:43252-[anonymous] <- MLST /etc
[D 2022-06-30 07:31:02] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:02] <IP_ADDRESS>:43252-[anonymous] <- MLST /etc
[D 2022-06-30 07:31:02] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:02] <IP_ADDRESS>:43252-[anonymous] <- MLST /etc
[D 2022-06-30 07:31:02] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:03] <IP_ADDRESS>:43252-[anonymous] <- MLST /etc
[D 2022-06-30 07:31:03] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:03] <IP_ADDRESS>:43252-[anonymous] <- MLST /etc
[D 2022-06-30 07:31:03] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:03] <IP_ADDRESS>:43252-[anonymous] <- MLST /etc
[D 2022-06-30 07:31:03] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:03] <IP_ADDRESS>:43252-[anonymous] <- MLST /etc
[D 2022-06-30 07:31:03] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:03] <IP_ADDRESS>:43252-[anonymous] <- MLST /root
[D 2022-06-30 07:31:03] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:04] <IP_ADDRESS>:43252-[anonymous] <- MLST /root
[D 2022-06-30 07:31:04] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:04] <IP_ADDRESS>:43252-[anonymous] <- MLST /root
[D 2022-06-30 07:31:04] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:04] <IP_ADDRESS>:43252-[anonymous] <- MLST /root
[D 2022-06-30 07:31:04] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:04] <IP_ADDRESS>:43252-[anonymous] <- MLST /root
[D 2022-06-30 07:31:04] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:04] <IP_ADDRESS>:43252-[anonymous] <- MLST /root
[D 2022-06-30 07:31:04] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:05] <IP_ADDRESS>:43252-[anonymous] <- MLST /root
[D 2022-06-30 07:31:05] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:05] <IP_ADDRESS>:43252-[anonymous] <- MLST /var
[D 2022-06-30 07:31:05] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:05] <IP_ADDRESS>:43252-[anonymous] <- MLST /var
[D 2022-06-30 07:31:05] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:05] <IP_ADDRESS>:43252-[anonymous] <- MLST /var
[D 2022-06-30 07:31:05] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:06] <IP_ADDRESS>:43252-[anonymous] <- MLST /var
[D 2022-06-30 07:31:06] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:06] <IP_ADDRESS>:43252-[anonymous] <- MLST /var
[D 2022-06-30 07:31:06] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:06] <IP_ADDRESS>:43252-[anonymous] <- MLST /var
[D 2022-06-30 07:31:06] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:06] <IP_ADDRESS>:43252-[anonymous] <- MLST /var
[D 2022-06-30 07:31:06] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:06] <IP_ADDRESS>:43252-[anonymous] <- MLST /tmp
[D 2022-06-30 07:31:06] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:07] <IP_ADDRESS>:43252-[anonymous] <- MLST /tmp
[D 2022-06-30 07:31:07] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:07] <IP_ADDRESS>:43252-[anonymous] <- MLST /tmp
[D 2022-06-30 07:31:07] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:07] <IP_ADDRESS>:43252-[anonymous] <- MLST /tmp
[D 2022-06-30 07:31:07] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:07] <IP_ADDRESS>:43252-[anonymous] <- MLST /tmp
[D 2022-06-30 07:31:07] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:07] <IP_ADDRESS>:43252-[anonymous] <- MLST /tmp
[D 2022-06-30 07:31:07] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:08] <IP_ADDRESS>:43252-[anonymous] <- MLST /tmp
[D 2022-06-30 07:31:08] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:08] <IP_ADDRESS>:43252-[anonymous] <- MLST /usr
[D 2022-06-30 07:31:08] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:08] <IP_ADDRESS>:43252-[anonymous] <- MLST /usr
[D 2022-06-30 07:31:08] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:08] <IP_ADDRESS>:43252-[anonymous] <- MLST /usr
[D 2022-06-30 07:31:08] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:09] <IP_ADDRESS>:43252-[anonymous] <- MLST /usr
[D 2022-06-30 07:31:09] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:09] <IP_ADDRESS>:43252-[anonymous] <- MLST /usr
[D 2022-06-30 07:31:09] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:09] <IP_ADDRESS>:43252-[anonymous] <- MLST /usr
[D 2022-06-30 07:31:09] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:09] <IP_ADDRESS>:43252-[anonymous] <- MLST /usr
[D 2022-06-30 07:31:09] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:09] <IP_ADDRESS>:43252-[anonymous] <- MLST /bin
[D 2022-06-30 07:31:09] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:10] <IP_ADDRESS>:43252-[anonymous] <- MLST /bin
[D 2022-06-30 07:31:10] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:10] <IP_ADDRESS>:43252-[anonymous] <- MLST /bin
[D 2022-06-30 07:31:10] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:10] <IP_ADDRESS>:43252-[anonymous] <- MLST /bin
[D 2022-06-30 07:31:10] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:10] <IP_ADDRESS>:43252-[anonymous] <- MLST /bin
[D 2022-06-30 07:31:10] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:10] <IP_ADDRESS>:43252-[anonymous] <- MLST /bin
[D 2022-06-30 07:31:10] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:11] <IP_ADDRESS>:43252-[anonymous] <- MLST /bin
[D 2022-06-30 07:31:11] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:11] <IP_ADDRESS>:43252-[anonymous] <- MLST /sbin
[D 2022-06-30 07:31:11] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:11] <IP_ADDRESS>:43252-[anonymous] <- MLST /sbin
[D 2022-06-30 07:31:11] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:11] <IP_ADDRESS>:43252-[anonymous] <- MLST /sbin
[D 2022-06-30 07:31:11] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:11] <IP_ADDRESS>:43252-[anonymous] <- MLST /sbin
[D 2022-06-30 07:31:11] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:12] <IP_ADDRESS>:43252-[anonymous] <- MLST /sbin
[D 2022-06-30 07:31:12] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:12] <IP_ADDRESS>:43252-[anonymous] <- MLST /sbin
[D 2022-06-30 07:31:12] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:12] <IP_ADDRESS>:43252-[anonymous] <- MLST /sbin
[D 2022-06-30 07:31:12] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:12] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib
[D 2022-06-30 07:31:12] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:13] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib
[D 2022-06-30 07:31:13] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:13] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib
[D 2022-06-30 07:31:13] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:13] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib
[D 2022-06-30 07:31:13] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:13] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib
[D 2022-06-30 07:31:13] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:13] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib
[D 2022-06-30 07:31:13] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:14] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib
[D 2022-06-30 07:31:14] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:14] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib64
[D 2022-06-30 07:31:14] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:14] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib64
[D 2022-06-30 07:31:14] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:14] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib64
[D 2022-06-30 07:31:14] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:14] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib64
[D 2022-06-30 07:31:14] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:15] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib64
[D 2022-06-30 07:31:15] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:15] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib64
[D 2022-06-30 07:31:15] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:15] <IP_ADDRESS>:43252-[anonymous] <- MLST /lib64
[D 2022-06-30 07:31:15] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:15] <IP_ADDRESS>:43252-[anonymous] <- MLST /home
[D 2022-06-30 07:31:15] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:16] <IP_ADDRESS>:43252-[anonymous] <- MLST /home
[D 2022-06-30 07:31:16] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:16] <IP_ADDRESS>:43252-[anonymous] <- MLST /home
[D 2022-06-30 07:31:16] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:16] <IP_ADDRESS>:43252-[anonymous] <- MLST /home
[D 2022-06-30 07:31:16] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:16] <IP_ADDRESS>:43252-[anonymous] <- MLST /home
[D 2022-06-30 07:31:16] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:16] <IP_ADDRESS>:43252-[anonymous] <- MLST /home
[D 2022-06-30 07:31:16] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:17] <IP_ADDRESS>:43252-[anonymous] <- MLST /home
[D 2022-06-30 07:31:17] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:17] <IP_ADDRESS>:43252-[anonymous] <- MLST /media
[D 2022-06-30 07:31:17] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:17] <IP_ADDRESS>:43252-[anonymous] <- MLST /media
[D 2022-06-30 07:31:17] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:17] <IP_ADDRESS>:43252-[anonymous] <- MLST /media
[D 2022-06-30 07:31:17] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:17] <IP_ADDRESS>:43252-[anonymous] <- MLST /media
[D 2022-06-30 07:31:17] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:18] <IP_ADDRESS>:43252-[anonymous] <- MLST /media
[D 2022-06-30 07:31:18] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:18] <IP_ADDRESS>:43252-[anonymous] <- MLST /media
[D 2022-06-30 07:31:18] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:18] <IP_ADDRESS>:43252-[anonymous] <- MLST /media
[D 2022-06-30 07:31:18] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:18] <IP_ADDRESS>:43252-[anonymous] <- MLST /mnt
[D 2022-06-30 07:31:18] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:19] <IP_ADDRESS>:43252-[anonymous] <- MLST /mnt
[D 2022-06-30 07:31:19] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:19] <IP_ADDRESS>:43252-[anonymous] <- MLST /mnt
[D 2022-06-30 07:31:19] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:19] <IP_ADDRESS>:43252-[anonymous] <- MLST /mnt
[D 2022-06-30 07:31:19] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:19] <IP_ADDRESS>:43252-[anonymous] <- MLST /mnt
[D 2022-06-30 07:31:19] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:19] <IP_ADDRESS>:43252-[anonymous] <- MLST /mnt
[D 2022-06-30 07:31:19] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:20] <IP_ADDRESS>:43252-[anonymous] <- MLST /mnt
[D 2022-06-30 07:31:20] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:20] <IP_ADDRESS>:43252-[anonymous] <- MLST /opt
[D 2022-06-30 07:31:20] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:20] <IP_ADDRESS>:43252-[anonymous] <- MLST /opt
[D 2022-06-30 07:31:20] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:20] <IP_ADDRESS>:43252-[anonymous] <- MLST /opt
[D 2022-06-30 07:31:20] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:20] <IP_ADDRESS>:43252-[anonymous] <- MLST /opt
[D 2022-06-30 07:31:20] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:21] <IP_ADDRESS>:43252-[anonymous] <- MLST /opt
[D 2022-06-30 07:31:21] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:21] <IP_ADDRESS>:43252-[anonymous] <- MLST /opt
[D 2022-06-30 07:31:21] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:21] <IP_ADDRESS>:43252-[anonymous] <- MLST /opt
[D 2022-06-30 07:31:21] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:21] <IP_ADDRESS>:43252-[anonymous] <- MLST /srv
[D 2022-06-30 07:31:21] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:22] <IP_ADDRESS>:43252-[anonymous] <- MLST /srv
[D 2022-06-30 07:31:22] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:22] <IP_ADDRESS>:43252-[anonymous] <- MLST /srv
[D 2022-06-30 07:31:22] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:22] <IP_ADDRESS>:43252-[anonymous] <- MLST /srv
[D 2022-06-30 07:31:22] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:22] <IP_ADDRESS>:43252-[anonymous] <- MLST /srv
[D 2022-06-30 07:31:22] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:22] <IP_ADDRESS>:43252-[anonymous] <- MLST /srv
[D 2022-06-30 07:31:22] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:23] <IP_ADDRESS>:43252-[anonymous] <- MLST /srv
[D 2022-06-30 07:31:23] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:23] <IP_ADDRESS>:43252-[anonymous] <- MLST /swap
[D 2022-06-30 07:31:23] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:23] <IP_ADDRESS>:43252-[anonymous] <- MLST /swap
[D 2022-06-30 07:31:23] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:23] <IP_ADDRESS>:43252-[anonymous] <- MLST /swap
[D 2022-06-30 07:31:23] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:23] <IP_ADDRESS>:43252-[anonymous] <- MLST /swap
[D 2022-06-30 07:31:23] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:24] <IP_ADDRESS>:43252-[anonymous] <- MLST /swap
[D 2022-06-30 07:31:24] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:24] <IP_ADDRESS>:43252-[anonymous] <- MLST /swap
[D 2022-06-30 07:31:24] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:24] <IP_ADDRESS>:43252-[anonymous] <- MLST /swap
[D 2022-06-30 07:31:24] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:24] <IP_ADDRESS>:43252-[anonymous] <- MLST /fs
[D 2022-06-30 07:31:24] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:24] <IP_ADDRESS>:43252-[anonymous] <- MLST /fs
[D 2022-06-30 07:31:24] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:25] <IP_ADDRESS>:43252-[anonymous] <- MLST /fs
[D 2022-06-30 07:31:25] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:25] <IP_ADDRESS>:43252-[anonymous] <- MLST /fs
[D 2022-06-30 07:31:25] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:25] <IP_ADDRESS>:43252-[anonymous] <- MLST /fs
[D 2022-06-30 07:31:25] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:25] <IP_ADDRESS>:43252-[anonymous] <- MLST /fs
[D 2022-06-30 07:31:25] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:26] <IP_ADDRESS>:43252-[anonymous] <- MLST /fs
[D 2022-06-30 07:31:26] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:26] <IP_ADDRESS>:43252-[anonymous] <- MLST /.autorelabel
[D 2022-06-30 07:31:26] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:26] <IP_ADDRESS>:43252-[anonymous] <- MLST /.autorelabel
[D 2022-06-30 07:31:26] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:26] <IP_ADDRESS>:43252-[anonymous] <- MLST /.autorelabel
[D 2022-06-30 07:31:26] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:26] <IP_ADDRESS>:43252-[anonymous] <- MLST /.autorelabel
[D 2022-06-30 07:31:26] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:27] <IP_ADDRESS>:43252-[anonymous] <- MLST /.autorelabel
[D 2022-06-30 07:31:27] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:27] <IP_ADDRESS>:43252-[anonymous] <- MLST /.readahead
[D 2022-06-30 07:31:27] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:27] <IP_ADDRESS>:43252-[anonymous] <- MLST /.readahead
[D 2022-06-30 07:31:27] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:27] <IP_ADDRESS>:43252-[anonymous] <- MLST /.readahead
[D 2022-06-30 07:31:27] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:27] <IP_ADDRESS>:43252-[anonymous] <- MLST /.readahead
[D 2022-06-30 07:31:27] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:28] <IP_ADDRESS>:43252-[anonymous] <- MLST /.readahead
[D 2022-06-30 07:31:28] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:28] <IP_ADDRESS>:43252-[anonymous] <- MLST /rickshaw
[D 2022-06-30 07:31:28] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:28] <IP_ADDRESS>:43252-[anonymous] <- MLST /rickshaw
[D 2022-06-30 07:31:28] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:28] <IP_ADDRESS>:43252-[anonymous] <- MLST /rickshaw
[D 2022-06-30 07:31:28] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:29] <IP_ADDRESS>:43252-[anonymous] <- MLST /rickshaw
[D 2022-06-30 07:31:29] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:29] <IP_ADDRESS>:43252-[anonymous] <- MLST /rickshaw
[D 2022-06-30 07:31:29] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:29] <IP_ADDRESS>:43252-[anonymous] <- MLST /rickshaw
[D 2022-06-30 07:31:29] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:29] <IP_ADDRESS>:43252-[anonymous] <- MLST /rickshaw
[D 2022-06-30 07:31:29] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:29] <IP_ADDRESS>:43252-[anonymous] <- MLST /nix
[D 2022-06-30 07:31:29] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:30] <IP_ADDRESS>:43252-[anonymous] <- MLST /nix
[D 2022-06-30 07:31:30] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:30] <IP_ADDRESS>:43252-[anonymous] <- MLST /nix
[D 2022-06-30 07:31:30] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:30] <IP_ADDRESS>:43252-[anonymous] <- MLST /nix
[D 2022-06-30 07:31:30] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:30] <IP_ADDRESS>:43252-[anonymous] <- MLST /nix
[D 2022-06-30 07:31:30] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:30] <IP_ADDRESS>:43252-[anonymous] <- MLST /nix
[D 2022-06-30 07:31:30] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:31] <IP_ADDRESS>:43252-[anonymous] <- MLST /nix
[D 2022-06-30 07:31:31] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:31] <IP_ADDRESS>:43252-[anonymous] <- MLST /gpfs
[D 2022-06-30 07:31:31] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:31] <IP_ADDRESS>:43252-[anonymous] <- MLST /gpfs
[D 2022-06-30 07:31:31] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:31] <IP_ADDRESS>:43252-[anonymous] <- MLST /gpfs
[D 2022-06-30 07:31:31] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:32] <IP_ADDRESS>:43252-[anonymous] <- MLST /gpfs
[D 2022-06-30 07:31:32] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:32] <IP_ADDRESS>:43252-[anonymous] <- MLST /gpfs
[D 2022-06-30 07:31:32] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:32] <IP_ADDRESS>:43252-[anonymous] <- MLST /gpfs
[D 2022-06-30 07:31:32] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:32] <IP_ADDRESS>:43252-[anonymous] <- MLST /gpfs
[D 2022-06-30 07:31:32] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:32] <IP_ADDRESS>:43252-[anonymous] <- MLST /local
[D 2022-06-30 07:31:32] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:33] <IP_ADDRESS>:43252-[anonymous] <- MLST /local
[D 2022-06-30 07:31:33] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:33] <IP_ADDRESS>:43252-[anonymous] <- MLST /local
[D 2022-06-30 07:31:33] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:33] <IP_ADDRESS>:43252-[anonymous] <- MLST /local
[D 2022-06-30 07:31:33] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:33] <IP_ADDRESS>:43252-[anonymous] <- MLST /local
[D 2022-06-30 07:31:33] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:33] <IP_ADDRESS>:43252-[anonymous] <- MLST /local
[D 2022-06-30 07:31:33] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:34] <IP_ADDRESS>:43252-[anonymous] <- MLST /local
[D 2022-06-30 07:31:34] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:34] <IP_ADDRESS>:43252-[anonymous] <- MLST /fuse
[D 2022-06-30 07:31:34] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:34] <IP_ADDRESS>:43252-[anonymous] <- MLST /fuse
[D 2022-06-30 07:31:34] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:34] <IP_ADDRESS>:43252-[anonymous] <- MLST /fuse
[D 2022-06-30 07:31:34] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:34] <IP_ADDRESS>:43252-[anonymous] <- MLST /fuse
[D 2022-06-30 07:31:34] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:35] <IP_ADDRESS>:43252-[anonymous] <- MLST /fuse
[D 2022-06-30 07:31:35] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:35] <IP_ADDRESS>:43252-[anonymous] <- MLST /fuse
[D 2022-06-30 07:31:35] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:35] <IP_ADDRESS>:43252-[anonymous] <- MLST /fuse
[D 2022-06-30 07:31:35] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:35] <IP_ADDRESS>:43252-[anonymous] <- MLST /data
[D 2022-06-30 07:31:35] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:36] <IP_ADDRESS>:43252-[anonymous] <- MLST /data
[D 2022-06-30 07:31:36] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:36] <IP_ADDRESS>:43252-[anonymous] <- MLST /data
[D 2022-06-30 07:31:36] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:36] <IP_ADDRESS>:43252-[anonymous] <- MLST /data
[D 2022-06-30 07:31:36] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:36] <IP_ADDRESS>:43252-[anonymous] <- MLST /data
[D 2022-06-30 07:31:36] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:36] <IP_ADDRESS>:43252-[anonymous] <- MLST /data
[D 2022-06-30 07:31:36] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:37] <IP_ADDRESS>:43252-[anonymous] <- MLST /data
[D 2022-06-30 07:31:37] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:37] <IP_ADDRESS>:43252-[anonymous] <- MLST /.local
[D 2022-06-30 07:31:37] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:37] <IP_ADDRESS>:43252-[anonymous] <- MLST /.local
[D 2022-06-30 07:31:37] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:37] <IP_ADDRESS>:43252-[anonymous] <- MLST /.local
[D 2022-06-30 07:31:37] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:37] <IP_ADDRESS>:43252-[anonymous] <- MLST /.local
[D 2022-06-30 07:31:37] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:38] <IP_ADDRESS>:43252-[anonymous] <- MLST /.local
[D 2022-06-30 07:31:38] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:38] <IP_ADDRESS>:43252-[anonymous] <- MLST /.local
[D 2022-06-30 07:31:38] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:38] <IP_ADDRESS>:43252-[anonymous] <- MLST /.local
[D 2022-06-30 07:31:38] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:38] <IP_ADDRESS>:43252-[anonymous] <- MLST /prod
[D 2022-06-30 07:31:38] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:39] <IP_ADDRESS>:43252-[anonymous] <- MLST /prod
[D 2022-06-30 07:31:39] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:39] <IP_ADDRESS>:43252-[anonymous] <- MLST /prod
[D 2022-06-30 07:31:39] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:39] <IP_ADDRESS>:43252-[anonymous] <- MLST /prod
[D 2022-06-30 07:31:39] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:39] <IP_ADDRESS>:43252-[anonymous] <- MLST /prod
[D 2022-06-30 07:31:39] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:39] <IP_ADDRESS>:43252-[anonymous] <- MLST /prod
[D 2022-06-30 07:31:39] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:40] <IP_ADDRESS>:43252-[anonymous] <- MLST /prod
[D 2022-06-30 07:31:40] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:40] <IP_ADDRESS>:43252-[anonymous] <- MLST /proj
[D 2022-06-30 07:31:40] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:40] <IP_ADDRESS>:43252-[anonymous] <- MLST /proj
[D 2022-06-30 07:31:40] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:40] <IP_ADDRESS>:43252-[anonymous] <- MLST /proj
[D 2022-06-30 07:31:40] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:40] <IP_ADDRESS>:43252-[anonymous] <- MLST /proj
[D 2022-06-30 07:31:40] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:41] <IP_ADDRESS>:43252-[anonymous] <- MLST /proj
[D 2022-06-30 07:31:41] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:41] <IP_ADDRESS>:43252-[anonymous] <- MLST /proj
[D 2022-06-30 07:31:41] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:41] <IP_ADDRESS>:43252-[anonymous] <- MLST /proj
[D 2022-06-30 07:31:41] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:41] <IP_ADDRESS>:43252-[anonymous] <- MLST /u
[D 2022-06-30 07:31:41] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:42] <IP_ADDRESS>:43252-[anonymous] <- MLST /u
[D 2022-06-30 07:31:42] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:42] <IP_ADDRESS>:43252-[anonymous] <- MLST /u
[D 2022-06-30 07:31:42] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:42] <IP_ADDRESS>:43252-[anonymous] <- MLST /u
[D 2022-06-30 07:31:42] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:42] <IP_ADDRESS>:43252-[anonymous] <- MLST /u
[D 2022-06-30 07:31:42] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:42] <IP_ADDRESS>:43252-[anonymous] <- MLST /u
[D 2022-06-30 07:31:42] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:43] <IP_ADDRESS>:43252-[anonymous] <- MLST /u
[D 2022-06-30 07:31:43] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:43] <IP_ADDRESS>:43252-[anonymous] <- MLST /codemill
[D 2022-06-30 07:31:43] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:43] <IP_ADDRESS>:43252-[anonymous] <- MLST /codemill
[D 2022-06-30 07:31:43] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:43] <IP_ADDRESS>:43252-[anonymous] <- MLST /codemill
[D 2022-06-30 07:31:43] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:43] <IP_ADDRESS>:43252-[anonymous] <- MLST /codemill
[D 2022-06-30 07:31:43] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:44] <IP_ADDRESS>:43252-[anonymous] <- MLST /codemill
[D 2022-06-30 07:31:44] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:44] <IP_ADDRESS>:43252-[anonymous] <- MLST /codemill
[D 2022-06-30 07:31:44] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:44] <IP_ADDRESS>:43252-[anonymous] <- MLST /codemill
[D 2022-06-30 07:31:44] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:44] <IP_ADDRESS>:43252-[anonymous] <- MLST /build
[D 2022-06-30 07:31:44] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:44] <IP_ADDRESS>:43252-[anonymous] <- MLST /build
[D 2022-06-30 07:31:44] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:45] <IP_ADDRESS>:43252-[anonymous] <- MLST /build
[D 2022-06-30 07:31:45] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:45] <IP_ADDRESS>:43252-[anonymous] <- MLST /build
[D 2022-06-30 07:31:45] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:45] <IP_ADDRESS>:43252-[anonymous] <- MLST /build
[D 2022-06-30 07:31:45] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:45] <IP_ADDRESS>:43252-[anonymous] <- MLST /build
[D 2022-06-30 07:31:45] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:46] <IP_ADDRESS>:43252-[anonymous] <- MLST /build
[D 2022-06-30 07:31:46] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:46] <IP_ADDRESS>:43252-[anonymous] <- MLST /desco
[D 2022-06-30 07:31:46] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:46] <IP_ADDRESS>:43252-[anonymous] <- MLST /desco
[D 2022-06-30 07:31:46] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:46] <IP_ADDRESS>:43252-[anonymous] <- MLST /desco
[D 2022-06-30 07:31:46] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:46] <IP_ADDRESS>:43252-[anonymous] <- MLST /desco
[D 2022-06-30 07:31:46] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:47] <IP_ADDRESS>:43252-[anonymous] <- MLST /desco
[D 2022-06-30 07:31:47] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:47] <IP_ADDRESS>:43252-[anonymous] <- MLST /desco
[D 2022-06-30 07:31:47] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:47] <IP_ADDRESS>:43252-[anonymous] <- MLST /desco
[D 2022-06-30 07:31:47] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:47] <IP_ADDRESS>:43252-[anonymous] <- MLST /arcesium
[D 2022-06-30 07:31:47] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:47] <IP_ADDRESS>:43252-[anonymous] <- MLST /arcesium
[D 2022-06-30 07:31:47] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:48] <IP_ADDRESS>:43252-[anonymous] <- MLST /arcesium
[D 2022-06-30 07:31:48] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:48] <IP_ADDRESS>:43252-[anonymous] <- MLST /arcesium
[D 2022-06-30 07:31:48] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:48] <IP_ADDRESS>:43252-[anonymous] <- MLST /arcesium
[D 2022-06-30 07:31:48] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:48] <IP_ADDRESS>:43252-[anonymous] <- MLST /arcesium
[D 2022-06-30 07:31:48] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:49] <IP_ADDRESS>:43252-[anonymous] <- MLST /arcesium
[D 2022-06-30 07:31:49] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:49] <IP_ADDRESS>:43252-[anonymous] <- MLST /attic
[D 2022-06-30 07:31:49] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:49] <IP_ADDRESS>:43252-[anonymous] <- MLST /attic
[D 2022-06-30 07:31:49] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:49] <IP_ADDRESS>:43252-[anonymous] <- MLST /attic
[D 2022-06-30 07:31:49] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:49] <IP_ADDRESS>:43252-[anonymous] <- MLST /attic
[D 2022-06-30 07:31:49] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:50] <IP_ADDRESS>:43252-[anonymous] <- MLST /attic
[D 2022-06-30 07:31:50] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:50] <IP_ADDRESS>:43252-[anonymous] <- MLST /attic
[D 2022-06-30 07:31:50] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:50] <IP_ADDRESS>:43252-[anonymous] <- MLST /attic
[D 2022-06-30 07:31:50] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:50] <IP_ADDRESS>:43252-[anonymous] <- MLST /nas
[D 2022-06-30 07:31:50] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:50] <IP_ADDRESS>:43252-[anonymous] <- MLST /nas
[D 2022-06-30 07:31:50] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:51] <IP_ADDRESS>:43252-[anonymous] <- MLST /nas
[D 2022-06-30 07:31:51] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:51] <IP_ADDRESS>:43252-[anonymous] <- MLST /nas
[D 2022-06-30 07:31:51] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:51] <IP_ADDRESS>:43252-[anonymous] <- MLST /nas
[D 2022-06-30 07:31:51] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:51] <IP_ADDRESS>:43252-[anonymous] <- MLST /nas
[D 2022-06-30 07:31:51] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:52] <IP_ADDRESS>:43252-[anonymous] <- MLST /nas
[D 2022-06-30 07:31:52] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:52] <IP_ADDRESS>:43252-[anonymous] <- MLST /src
[D 2022-06-30 07:31:52] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:52] <IP_ADDRESS>:43252-[anonymous] <- MLST /src
[D 2022-06-30 07:31:52] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:52] <IP_ADDRESS>:43252-[anonymous] <- MLST /src
[D 2022-06-30 07:31:52] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:52] <IP_ADDRESS>:43252-[anonymous] <- MLST /src
[D 2022-06-30 07:31:52] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:53] <IP_ADDRESS>:43252-[anonymous] <- MLST /src
[D 2022-06-30 07:31:53] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:53] <IP_ADDRESS>:43252-[anonymous] <- MLST /src
[D 2022-06-30 07:31:53] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:53] <IP_ADDRESS>:43252-[anonymous] <- MLST /src
[D 2022-06-30 07:31:53] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:53] <IP_ADDRESS>:43252-[anonymous] <- MLST /vfs
[D 2022-06-30 07:31:53] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:53] <IP_ADDRESS>:43252-[anonymous] <- MLST /vfs
[D 2022-06-30 07:31:53] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:54] <IP_ADDRESS>:43252-[anonymous] <- MLST /vfs
[D 2022-06-30 07:31:54] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:54] <IP_ADDRESS>:43252-[anonymous] <- MLST /vfs
[D 2022-06-30 07:31:54] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:54] <IP_ADDRESS>:43252-[anonymous] <- MLST /vfs
[D 2022-06-30 07:31:54] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:54] <IP_ADDRESS>:43252-[anonymous] <- MLST /vfs
[D 2022-06-30 07:31:54] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:55] <IP_ADDRESS>:43252-[anonymous] <- MLST /vfs
[D 2022-06-30 07:31:55] <IP_ADDRESS>:43252-[anonymous] -> 250 End MLST.
[D 2022-06-30 07:31:55] <IP_ADDRESS>:43252-[anonymous] <- TYPE A
[D 2022-06-30 07:31:55] <IP_ADDRESS>:43252-[anonymous] -> 200 Type set to: ASCII.
[D 2022-06-30 07:31:55] <IP_ADDRESS>:43252-[anonymous] <- PASV
[D 2022-06-30 07:31:55] <IP_ADDRESS>:43252-[anonymous] -> 227 Entering passive mode (10,219,31,159,170,77).

As can be seen in the logs, it takes 1 min for the FTP server to respond with all the information and while this happens, all other requests are blocked while the jupyter server queries the FTP server -

Describe the solution you'd like
I would like if something can be done to have fewer queries with the file system or if there is some other recommendation about using this extension.
Describe alternatives you've considered
I've tried the ssh protocol as well and it has the same problem.

This can probably be done by switching to use .scandir instead of .listdir. The returned info object should have all the needed meta information.


Add Oracle Cloud to Infrastructure

cloud.oracle.com provides Elastic Compute, Bare Metal Compute for Cloud infrastructure provisioning, as well Container orchestration.

Oracle is now included under Infrastructure in v0.9.3


Install fails on "invalid" install_requires definition

Between 11.1.4 and 11.1.5 pip installs for pipenv stopped working in my centos 7 containers
# python --version
Python 2.7.5

# pip --version
pip 8.1.2 from /usr/lib/python2.7/site-packages (python 2.7)

# pip install pipenv==11.1.5
Collecting pipenv==11.1.5
  Downloading pipenv-11.1.5.tar.gz (4.1MB)
    100% |################################| 4.1MB 393kB/s
    Complete output from command python setup.py egg_info:
    error in pipenv setup command: 'install_requires' must be a string or list of strings containing valid project/version requirement specifiers

Version 11.1.4 installs successfully.
Repro:
$ docker run -ti --rm centos:7 bash
# yum -y install epel-release
# yum -y install python2-pip
# pip install pipenv==11.1.5

this was fixed in 11.1.6 and 11.1.7

Same repro as above, but with 11.1.7 still shows the same error.
[root@1377f11036a8 /]# pip install pipenv==11.1.7
Collecting pipenv==11.1.7
  Downloading pipenv-11.1.7.tar.gz (4.1MB)
    100% |################################| 4.1MB 364kB/s
    Complete output from command python setup.py egg_info:
    error in pipenv setup command: 'install_requires' must be a string or list of strings containing valid project/version requirement specifiers

    ----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-rB6lrh/pipenv/
You are using pip version 8.1.2, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

try upgrading your setuptools

you should absolutely upgrade your pip!

"You are using pip version 8.1.2, however version 9.0.1 is available."

Just using the default installed on the os.
Yes, pip install --upgrade setuptools does fix this. Merely upgrading pip, however, does not.

thanks for the report! we'll keep out eyes peeled for this, and see if there's anything we can do about it

curious, what version of setuptools did you have installed?

[root@63fac294a6d6 /]# pip install --upgrade setuptools
Collecting setuptools
  Downloading setuptools-38.5.2-py2.py3-none-any.whl (490kB)
    100% |################################| 491kB 2.6MB/s
Installing collected packages: setuptools
  Found existing installation: setuptools 0.9.8
    Uninstalling setuptools-0.9.8:
      Successfully uninstalled setuptools-0.9.8
Successfully installed setuptools-38.5.2

I mean, that's what comes with Centos 7 -- the docker command in the repro steps is pulling the official centos7 image.
This bug will, at least, serve as way for others to say, "Oh, I see, let me upgrade that thing" :)
I don't know enough pythonese to know if this is surmountable to be that far backwards compat, but if it is you'll save others from hitting this too.

I'll have to do some research to say what's causing this for certian. I suspect it's our use of environment markers.

Closing, as this is in our awareness now, and we know the fix.


ModuleNotFoundError: No module named 'fcdd'

Hi, How to solve this problem please?
Traceback (most recent call last):
File "runners/run_mvtec.py", line 1, in
from fcdd.runners.bases import ClassesRunner
ModuleNotFoundError: No module named 'fcdd'

Hey. Did you install FCDD properly (see here), and if you used a virtual environment, did you activate it before executing the scripts?

Hey, the image of the model input is RGB or BGR. I am not clear it, thanks.

Hey. It's RGB since we use Pillow to load and process the images. However, some functionalities for displaying and storing images like the heatmaps use OpenCV instead, for which the images are temporarily transformed into BGR. You will see that in the code.

Hey. It's RGB since we use Pillow to load and process the images. However, some functionalities for displaying and storing images like the heatmaps use OpenCV instead, for which the images are temporarily transformed into BGR. You will see that in the code.

Thank you for your  reply, I understand this problem. Now , I meet a new problem,  If I want to get  anomaly socre of the picture, I need to choose  ||A(X)||_1 or  ascore.reshape(ascore.size(0),-1).mean(1).  The |||A(X)|_1 means pixiels anomaly score, the other is mean value of  ||A(X)||_1.  So , What is the difference between them？

The pixel-wise score is actually just A(X). If you got confused by this line, note that it computes the mean over the channels and since there is just one channel, it essentially does nothing. The sample-wise anomaly score is the mean over the spatial dimensions (height and width), so just one scalar per sample that determines how overall anomalous the sample is. This is what you use for detection.


PR: Programmatic addition of new layouts and layouts config update

Description of Changes

[ ] Wrote at least one-line docstrings (for any new functions)
[ ] Added unit test(s) covering the changes (if testable)

[ ] Included a screenshot or animation (if affecting the UI, see Licecap)

Define how other plugins can declare custom layouts and add them into the layouts available
TODO

[x] Change the handling of the config to support custom programmatic layouts, custom layouts snapshots (custom layouts through hexstate) order and activation
[x] Toggle next/previous layout
[x] Dialog actions to update config (move, delete, activate, etc)
[x] Provide a way for plugins to declare the custom layout classes (could be a constant like LAYOUTS which is a list of custom layouts classes to be added)
[x] Tests, code style issues

Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct: dalthviz

Hello @dalthviz! Thanks for opening this PR. We checked the lines you've touched for PEP 8 issues, and found:

In the file spyder/plugins/layout/container.py:

Line 210:13: E306 expected 1 blank line before a nested definition, found 0

In the file spyder/plugins/layout/plugin.py:

Line 27:80: E501 line too long (80 > 79 characters)
Line 316:80: E501 line too long (82 > 79 characters)
Line 317:80: E501 line too long (82 > 79 characters)
Line 320:80: E501 line too long (81 > 79 characters)
Line 341:19: E225 missing whitespace around operator

A preview:

Hi @dalthviz, one thing I forgot to mention is that, given that your PR added new things to the API, we need to change its version.
For that, please bump this number
https://github.com/spyder-ide/spyder/blob/b84f2221b253567dfc1f011dee0eda89ae3c36d6/spyder/api/_version.py#L9
to (0, 2, 0).


Suggestion: Add "old-style" C++ for comparison

It would be cool to contrast the nice, modern examples with old, no-longer-a-good-way-to do it, other examples.

+1.
I can also see the value in some "this is a security vulnerability" examples.

My personal opinion is that the sample description should point out any improvements this modern style has over earlier attempts. I'd want to avoid showing bad examples at all (in case there is any confusion).

My initial reaction would be the same, why show  'bad' way of doing things?
Well, an obvious reason is to show what not to do.
Perhaps it needs to be managed in a different way though, some sort of "Samples of Modernising Old C++". There are some who have old code bases, but could work on upgrading, so I am sure they would appreciate seeing not just that the code is bad, as I am sure they know that, but how to update it.
I would definitely not muddy this collection with examples of old style C++. There are a lot of things that are done bad, even though earlier versions of C++ provided the tools for not doing such shameful things.

My rationale comes from the rocks I hit while learning C/C++. It's an old language. Really old. Most resources for it are equally old, and it's hard to have updated ones, with modern features and what not.
You have a collection of samples of C++ that are modern, and if they are modern it's because there obviously were at some point, old, and worse ways to do it. The great thing about having this contrast with old examples would be a more descriptive way to explain why the modern examples are modern. It would show what are the advantages of taking that route, and why we no longer do it the old way.
It would become a wonderful resource to update people from the old ages to updated tactics. Maybe add a toggle button that shows a side by side of good and bad, but the bad stays hidden by default. That way it wouldn't be confusing, since people would only see bad code if they clicked the button that says "Show Bad Code" or something.


Xteve mapping not working with 2 playlists for local stations in different cities

Describe the bug
xteve will not show local networks from multiple cities in the mapping interface when running locast2dvr. this is not a locast2dvr issue as I can directly import both M3Us into Jellyfin and see the local network are there and working fine.  Xteve 'sees' the channels and on the FILTER interface they appear, but they do not appear when mapping.
Server (please complete the following information):
Ubuntu 20
64bit
2.1.2 Build: 0121
To Reproduce
Steps to reproduce the behavior:
add M3U with Los Angeles local networks (ABC, CBS, etc)
add M3U with New York local networks (ABC, CBS, etc)
go to FILTER to make sure you're filtered to use the networks
go to MAPPING
either LA or NY stations will appear but not both
Expected behavior
Should be able to see BOTH sets of local networks.
Screenshots
2 playlists for local channels with 100% availability

Filtering for New York and Los Angeles NETWORK groups, you can see that Xteve sees networks for both cities

Mapping interface shows ONLY the Los Angeles stations

When you try to filter for New York stations, nothing appears:

When ONLY the New York stations are loaded in:

The New York networks show up just fine:

Additional context
Tried with LA and Chicago as well, whatever playlist is added 2nd, the networks for that playlist will not be available in mapping. As a side note, the NON NETWORK channels for the 2nd city are available.  Is there a naming conflict (CBS NY and CBS LA just show up as CBS in Xteve and therefore Xteve only shows the first one it sees?)

As the author of locast2dvr I'm interested in this issue. If I can do anything to help, let me know. I've been exploring some remapping schemes with another user, but I'm not sure if remapping channels in locast2dvr is the way to go.

I see duplicate channel names, if the source M3U does not have unique IDs for the streams, the channel name is used for identification at the Mapping menu. Then no duplicate channel names may exist.

@eqpaisley how do you run locast2dvr? Are you using the multiplex (-m) option? Have you tried remap (-r)?

@wouterdebie  I'm using zipcode overrides in my config "11215, 91605"

Looks like adding the multiplex and remap flags to locast2dvr allowed xteve to see that CBS LA and CBS NY were not the same channel.  Issue is solved. Not sure if there's anything xteve can do to differentiate in the future.


RTX 3070,3080,3090 cuda compile problem

Can anybody please suggest how to make bitcrack perform best wih cuda 11.1 please?

#207 change with 11.1.  But, with recent NVIDIA drivers is not working. So.. I guess no BitCrack with nVIDIA 3xxx. Try it...

Would love to hear what kind of speed you got with 3080 :)

the speed is 1bk/s with clbitcrack but cubitcrak not working.....

the speed is 1bk/s with clbitcrack but cubitcrak not working.....

Thats on Windows or Linux ?
If on Linux define not-working . Cant compile it ?
From what i hear 2080TI maybe can get easy 800-850mil/s on short address list (less than 50k addresses) .


[GOBBLIN-1393] Set offset lag to 0 for topics with no previous watermark

Dear Gobblin maintainers,
Please accept this PR. I understand that it will not be reviewed until I have checked off all the steps below!
JIRA

[ ] My PR addresses the following Gobblin JIRA issues and references them in the PR title. For example, "[GOBBLIN-1393] My Gobblin PR"

https://issues.apache.org/jira/browse/GOBBLIN-1393

Description

[ ] Here are some details about my PR, including screenshots (if applicable):
Set offset lag to 0 for topics with no previous watermark. This will help reduce # of containers created when large new topics are onboarded

Tests

[ ] My PR adds the following unit tests OR does not need testing for this extremely good reason:

Commits

[ ] My commits all reference JIRA issues in their subject lines, and I have squashed multiple commits if they address the same issue. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Codecov Report

Merging #3232 (67d8928) into master (f3f8a36) will decrease coverage by 3.52%.
The diff coverage is 100.00%.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update f3f8a36...67d8928. Read the comment docs.


Update AsyncAPI component to 1.0.0-x releases

Hey, I just made a Pull Request!
We are using asyncapi/asyncapi-react in Backstage to display AsyncAPI definitions. This package is still <1.0.0 and got a new version on the road to 1.0.0. This version is a complete rewrite, if we want to update to the newer version, we have to make sure that it still works as before.
Light Theme:

Dark Theme:

:heavy_check_mark: Checklist

[x] A changeset describing the change and affected packages. (more info)
[ ] Added or updated documentation
[ ] Tests for new functionality and regression tests for bug fixes
[x] Screenshots attached (for UI changes)
[x] All your commits have a Signed-off-by line in the message. (more info)

After some more investigation and testing we noticed a problem with how we integrate the @asyncapi/react-component/styles/default.css. Right now the component specific style is globally available but it should be scoped to the context of the component. For semantic CSS classes this might not be a problem but in our case it affects the button focus of the whole application and other components might be affected as well.
/* snippet from @asyncapi/react-component/styles/default.css */

button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}

We had different approaches how to handle this obstacle and would like to collect your feedback before continuing our thought and decision process:

Try to merge this PR in the asyncapi-react repo, which introduces prefixes for css classes. --> This might take a while + it was automatically marked as stale because it has not had recent activity

Create a global solution to scope imported CSS to the component context.
We noticed that there are already multiple CSS imports in other plugins which are loaded globally.
Example: (plugins/graphiql/src/components/GraphiQLPage/GraphiQLPage.tsx --> import 'graphiql/graphiql.css';)

Configure css-loader to support CSS Modules / CSSStyleSheet and integrate external stylesheets into makeStyles()

Right now our favourite option would be 1. but for the long term we should think about a global solution to avoid such conflicting styles in general.
You might have already thought about this problem? We would be happy to hear about other possible solutions 🙂 @freben

Related? https://github.com/backstage/backstage/issues/8228

We just noticed that the current AsyncAPI version throws some ResizeObserver loop limit exceeded if the container width is smaller than 1280px.
That error can be ignored safely - but it is still not nice as e.g. Cypress will fail. We opened an issue (see https://github.com/asyncapi/asyncapi-react/issues/498) and will try to support to get it solved.
Will keep you updated. 👋

FYI fixed in the 1.0.0-next.26 version :)


Thumbnail popup in vertical mode

In vertical mode the thumbnail popup is covering other buttons. Since it is shown instantly it prevents from clicking on a desired app when the app button is under the pop-up.
It would be good to have some timeout, e.g. 1/3 of second, before the pop-up like the standard OS taskbar behaviour.
Also in vertical mode the thumbnail should be positioned on the right/left of the app button, not under/above. This can be done by dynamically changing the "Placement" property of the ThumbnailPopup.

Hello Zhivko,
I didn't think about the popup placement in this case, as I don't "really" use the vertical mode. So it's a good catch, thanks. The fix should be simple and quick
It's also a good proposal with the delayed display of thumbnail. I have some idea how to do it, will give it a try and let's see.
I think i can patch it over the weekend

Both updates seems to be working, I'll use it for some time to test it and if there will be no hiccups, I'll relase the patch at the end of week

Released in Version 1.3.1
cc @Capital-Z

Both work fine for me now. Thank you


fix build

fixed spec tests

Thanks!  I merged in a modified version of your diff (without .project file and new lock file).


Move namespace creation to kustomization file in deployment examples

@wazsone Seems like done. Thanks! Now our examples are looking a bit simpler.
/cc @edwarnicke


Show progress indicator(s) when searching large hash space

Under the RainbowTables.ipynb heading "Searching for hashed keys," there's not indication that work is being done.
Possible output could look like:

What is definitely needed is timing information. We're trying to suggest that searching a pre-computed table is faster, but we need the numbers to back that up.


Serialize from hash

Suppose I have:
class Foo
  include Surrealist
  json_schema do
    { foo: String }
  end
end

I can't serialize passing a hash (because the gem expect methods):
Foo.new({ foo: "bar" }).surrealize # crash!

Do you plan add support for hash? I've created the thin wrapper below and it works:
class HashBased
  include Surrealist

  attr_reader :hash

  def initialize(hash = {})
    @hash = hash.deep_symbolize_keys
  end

  def method_missing(method_name, *args)
    if hash.key?(method_name)
      hash[method_name]
    else
      super
    end
  end

  def respond_to_missing?(method_name, _include_private = false)
    hash.key?(method_name)
  end
end

class Foo < HashBased
  json_schema do
    # same as before
  end
end

Foo.new({ foo: "bar" }).surrealize # now it works!

With a simple piece of code like that we can open a bunch of new possibilities.

@glaucocustodio, thank you, I guess that's a good feature to have, I would be glad accepting a PR. The only thing to keep in mind is that we don't want to pollute the Surrealist::Builder class, as it's already quite complex. I suggest having a separate class, a HashBuilder for example, which accepts only hashes and validates them directly, not based on method_missing. There will also be a different (and easier) way to validate hash schema, something like
hash.keys.length == schema.keys.length
hash.keys.map(&:to_sym).sort == schema.keys.sort

And we will also need tests covering different cases, apparently.

Using my wrapper for hash, I just needed to change the check_for_ar method like below to support hash validation:
def check_for_ar(schema, instance, key, value)
  if ar_collection?(instance, key)
    construct_collection(schema, instance, key, value)
  else
    ins = if instance.respond_to?(key)
        instance.send(key)
      elsif instance.is_a?(Hash)
        instance[key]
      else
        instance
      end
    call(value, ins)
  end
end

You see, I don't think that 4 if statements in one method is a good thing at all. And the semantics are broken here - why would we check for active record if we are just serializing a hash

You are right, this code is not very good. I need to take some time to create the HashBuilder.

Closing this due to #106


Update metadata and content for effective-feature-isolation-on-tfvc article

Refresh of the metadata, content, and images.
Updated references to ALM Rangers to ALM | DevOps Rangers.

@wpschaub Thank you, I am merging this now.
Vendors - if there are any conflicts when this is merged back to the private repo, please take the changes from this PR vs what is in the private repo. Thank you!


fix(spacing): decrease some paddings on mobile

A fix to make the chain and contract variables display full width on mobile (to match the read and write components that precede it).
Additionally, small padding improvements for mobile to better use limited screen real estate.

I think that was mostly fixed here: https://github.com/scaffold-eth/se-2/commit/185c33469115ecbd8d97b5c8c5c04d9160c1a439
Also check (general PR comments) https://github.com/scaffold-eth/se-2/pull/170#issuecomment-1434477027
Thanks!!


Help menu goes to https://electronjs.org/ not this site

The Help > Learn More menu item should go to this site, not https://electronjs.org/

Hi @hlascelles , thank you for reporting the bug.


Design proposal for the recording and presentation of deployment usage stats

Related to #2528

Grafonnet which allows to create dashboards with code:
https://grafana.github.io/grafonnet-lib/
I never used it but I do know that maintaining the large json objects that are the dashboards is a pain.

On the Elasticsearch side are you suggesting something like this ? I'm not sure if we need the ILM bit though...
Seems doable and probably easier than having influxDB, but it would require some work

Without ILM and even most of the things that are in the page you linked as we would not use Kibana either.
The difference with the views is that we would index the events and not the resources.
We could use the rollover api to write to a new index when the current one reaches a certain size but it is something we could skip too: https://www.elastic.co/guide/en/elasticsearch/reference/master/indices-rollover-index.html
In which way, do you think it would require more work than InfluxDB ?
The idea would be:

to rewrite/complete ProjectCounts and StorageStatistics so as not to compute the stats but to push relevant information for each event to ES
and to write aggregation queries to get the stats we need.

I agree the in memory caches implementation (ProjectsCounts and StoragesStatistics) computed using fs2 streams can be replaced with ES and at the same time we can draw stats from it.
If we store some of the basic information for each event (instant, project, deprecation status, event type, resource @type)
we could answer the following questions:

number of active projects
project creation
project deprecation status
project deletion (I'm not sure what's the expectation of this...since If we delete the index and rerun the process, the numbers here will be different)
resource count per project
file count per project
total file size per project

However we would still not be able to answer the following question:

file size distribution per project (this is the size of the distribution field). In order to achieve that we would have to do a bit of graph traversals / expanded Json-LD cursor navigation)

There are few disadvantages though:

Having to do an aggregate query to get the ProjectCounts and StoragesStatistics can be much more expensive / complex than a query to a cache. I'm not sure though what exact latency we would be expecting.

For the project deletion and file size distribution, the question remains the same no matter if it is ES/InfluxDB but yeah these ones are the toughest ones.
For the latency, there will not be complex aggregations (nothing nested for example) and we can ask for only the one we are interested. And if we hit only one shard and expect ES cache to do its job, it should remain low.

On the Delta side, the implementation could look like this:
sealed trait Action {
    case object Create
    case object Update
    case object Deprecate
    case object Tagged
    case object Deleted
  }

  final case class EventMetric(instant: Instant,
                               subject: Subject,
                               action: Action,
                               project: ProjectRef,
                               organization: Label,
                               id: Iri,
                               types: Set[Iri],
                               additionalFields: JsonObject) extends Metric

Where additionalFields would allow to hold specific to a type of resource like the size of a file or the size of a distribution.
A new method in EventExchange would allow to get the metric for an event:
def toMetric(event: Event): UIO[Option[EventMetric]]

The UIO is here at least for files for which we need to fetch the file to get the storage id as it is not present for every kind of event.
A stream would run on the project events, get the metric from the event and push to a single index that would store the metrics.
This index would be then queried to provide project and storage statistics for Delta and for the dashboards.
I tested on my laptop with around 10M events for ~9000 projects, the dashboards were quite reactive (around 2s for the most expensive one which was the sum of file size per project)
On the dashboard side:
It is much easier to create dashboards with with the UI in Kibana (autocompletion for the field values helps a lot) than with
Grafana (with or without grafonnet).
With grafonnet, it was even more difficult to get to a result so I think we can forget it to bad.
It is not ideal to have giant unreadable json blobs in git but it is even less ideal to create a dashboard in a week by somebody that know the jsonnet language when with Kibana, you can do it in half a day (or a day for someone that does not know Kibana)
Grafana:
Pros:

Same UI for prometheus/elasticsearch data
More options for customizing look and feel with conditional formatting, changing the background, ...
Allow to import/export dashboards
Allow forms to reduce the dashboard stats (for a project for example)
Ability in Grafana 8.x to use library (=reusable) panels (not in the one currently deployed in prod)
Possibility to tags dashboards and panels to find them again

Cons:

Need to know the lucene query syntax
No auto-completion
When you fail in your query, feedback is poor so it can be hard to solve your error

Kibana:
Pros:

Auto-completion is present almost everywhere so it helps a lot to build the dashboards
Ability to use lucene query syntax / query dsl / kibana query language
Feedback on errors is better
A lot easier to get a grip on (everybody should be able to contribute quite easily)
Allow to import/export dashboards
Ability to use library (=reusable) panels
Can be used to create dashboards on views indices too (to get stats and/or debug)
Editor with auto-completion to create queries and history of the last queries (nice to debug the content of a index)

Cons:

Not as many options to customize the look and feel of the dashboards
Another app to deploy
Only for ES stuff

To have an idea of how grafana looks, look at the instance in production
For kibana (the data I generated is too uniform to have interesting charts but it gives an idea) :

A demo screenshot of a dataset included with Kibana:

Action shouldn't be exposed like that, since every plugin can potentially have any "actions". Files, for example have events to do with attributes, which has nothing to do with create/update/...

Powering ProjectsCounts with this would mean that we will have remove the ProjectsCounts index of that project when issuing a delete of the project.
I just point it out here as something to take into account.

Another thing to be considered:
For ProjectStatistics we usually assumed that the projectsStatistics (retrieved from ProjectsCounts) were ahead of the actual view stream counts (specially for compositeviews). That might not be the case anymore.

This assumption was kind of difficult to make anyway no ?
The streams are independent and don't work on the same events, everything is eventually consistent, ...

Well, the assumption was that reading one stream and just adding counts to it would be faster than reading another stream + do json-ld conversions + index things into es.
It was not strictly guaranteed that one would finish before the other but in practice it does.

I agree with you on this point.
But streams are mostly idling and who wins also depends on when each stream made its last poll


Analyse and aggregate API data

[x] ~Check if empty arrays are being classified as a count in the tallies~ #3997 New metadata analysis
[x] ~Take a look at https://github.com/wellcometrust/platform/issues/3288~ How many works of each work type have a production date, place, etc.?
[ ] ...

Is this ticket still needed @jamesgorrie @Heesoomoon ?

I was going to keep it open for other requests, but better to close and new ones opened when needed.


Sample points uniformly at random from the road network

Problem
In urban computing/computational social science, a lot of statistical inference problem asks for uniformly random samples from the road network.
For example, to estimate the number of utility poles or vehicles, researchers need to first get n point from the road network, evaluate them either manually or algorithmically, and then infer the total numbers by multiplying the length of the road network proportionally.
Noticing this is not equivalent to spatially uniformly random samples (which completely ignore the road network) or equal length segmenting (which does not guarantee the favorable statistical property).
It would cost the user who needs this feature a significant amount of time to implement the sampling logic:

Unroll the network into LineStrings
Ensure the projection of the LineStrings and calculate the length l_i
Calculate the sum of the lengths L
Draw 1-D uniformly random sample on [0, L)
Pick up the corresponding LineString
Calculate the point coordinates based on the distance from one end of the LineString

Describe the solution you'd like to propose
I am suggesting to introduce a module of osmnx.random, which for now include a sampling function:
osmnx.random.sample_point(G, size=None, replace=True, weights=None)

, which returns a list of shapely Points. Here weights stands for the edge attributes user could use sampling weights.
Alternatively, we could return a geopandas DataFrame including all sampled points.
Let me know how this sounds.
I am happy to give it a stab as this is part of my research anyway. Thank you so much!

This sounds like a generally useful feature but I'm not totally sure of its fit and function. A couple questions:

Is OSMnx the right location for this function? As it sounds more like a generic network-constrained spatial sampling problem, it may fit better elsewhere (though I'm not sure where... maybe shapely, pysal, etc). In particular, it's easy to dump an OSMnx graph to LineStrings for this kind of work. I'm not sure this is the right home for it.
What is the sampling frame? All edges? Every edge has its own LineString geometry.
I don't totally understand the bridge between steps four and five... but this partly goes back to the previous question. Perhaps some sample code would help to elucidate the proposed steps?

This sounds like a generally useful feature but I'm not totally sure of its fit and function. A couple questions:

Is OSMnx the right location for this function? As it sounds more like a generic network-constrained spatial sampling problem, it may fit better elsewhere (though I'm not sure where... maybe shapely, pysal, etc). In particular, it's easy to dump an OSMnx graph to LineStrings for this kind of work. I'm not sure this is the right home for it.
What is the sampling frame? All edges? Every edge has its own LineString geometry.
I don't totally understand the bridge between steps four and five... but this partly goes back to the previous question. Perhaps some sample code would help to elucidate the proposed steps?

Thanks for your reply. Here is my response for 1&2:

I have been thinking of other packages such as shapely/network/pysal but it seems they are not dealing with this road network data structure (multigraph with edges associated with a LineString geometry). It is totally possible to dump the edges and do the work manually outside osmnx (that's what I am currently doing now). I agree it is not directly related to OSM but could be a nice util function that is easy to get wrong (in the sense of corrupting the uniformly at random statistical property)
2&3. We try to come up with the sampling frame that each point on the road network is of equal probability being sampled (regardless of the density). So we first sample one LineString from all with a probability proportional to its length and then sample a random point on the LineString. Here is an example of the implementation:

def sample_points(edges, n=100):
    m = len(edges)
    lengths = edges['length'].tolist()
    total_length = edges.sum()['length']
    lengths_normalized = [l/total_length for l in lengths]

    indices = np.random.choice(range(m),
                     size=n,
                     p=lengths_normalized)
    points = []
    for index in indices:
        line = gdf.iloc[index]['geometry']
        offset = np.random.rand() * line.length
        point = line.interpolate(offset)
        points.append(point)

    return MultiPoint(points)

Thanks for your reply. Here is my response for 1&2:

I have been thinking of other packages such as shapely/network/pysal but it seems they are not dealing with this road network data structure (multigraph with edges associated with a LineString geometry). It is totally possible to dump the edges and do the work manually outside osmnx (that's what I am currently doing now). I agree it is not directly related to OSM but could be a nice util function that is easy to get wrong (in the sense of corrupting the uniformly at random statistical property)
2&3. We try to come up with the sampling frame that each point on the road network is of equal probability being sampled (regardless of the density). So we first sample one LineString from all with a probability proportional to its length and then sample a random point on the LineString. Here is an example of the implementation:

def sample_points(edges, n=100):
    m = len(edges)
    lengths = edges['length'].tolist()
    total_length = edges.sum()['length']
    lengths_normalized = [l/total_length for l in lengths]

    indices = np.random.choice(range(m),
                     size=n,
                     p=lengths_normalized)
    points = []
    for index in indices:
        line = gdf.iloc[index]['geometry']
        offset = np.random.rand() * line.length
        point = line.interpolate(offset)
        points.append(point)

    return MultiPoint(points)

I believe your function could be streamlined and vectorized:
import numpy as np
import osmnx as ox

def sample_points(edges, n=100):
    p = edges['length'] / edges['length'].sum()
    idx = np.random.choice(edges.index, size=n, p=p)
    lines = edges.loc[idx, 'geometry']
    return lines.interpolate(lines.length * np.random.rand())

# test the sampler
G = ox.graph_from_place('Piedmont, CA, USA', network_type='drive')
points = sample_points(ox.graph_to_gdfs(ox.project_graph(G), nodes=False))

Something like this may be a useful addition to the utils_graph module.

I believe your function could be streamlined and vectorized:
import numpy as np
import osmnx as ox

def sample_points(edges, n=100):
    p = edges['length'] / edges['length'].sum()
    idx = np.random.choice(edges.index, size=n, p=p)
    lines = edges.loc[idx, 'geometry']
    return lines.interpolate(lines.length * np.random.rand())

# test the sampler
G = ox.graph_from_place('Piedmont, CA, USA', network_type='drive')
points = sample_points(ox.graph_to_gdfs(ox.project_graph(G), nodes=False))

Something like this may be a useful addition to the utils_graph module.

Here's a potentially better version, that takes a graph as the argument (keeping it more consistent with how the rest of the API works):
import numpy as np
import osmnx as ox

def sample_points(G, n):
    gdf_edges = ox.graph_to_gdfs(G, nodes=False)[['geometry', 'length']]
    weights = gdf_edges['length'] / gdf_edges['length'].sum()
    idx = np.random.choice(gdf_edges.index, size=n, p=weights)
    lines = gdf_edges.loc[idx, 'geometry']
    return lines.interpolate(lines.length * np.random.rand())

# test the sampler (use a projected graph for most accurate results)
G = ox.project_graph(ox.graph_from_place('Piedmont, CA, USA', network_type='drive'))
points = sample_points(G, 100000)

Here's a potentially better version, that takes a graph as the argument (keeping it more consistent with how the rest of the API works):
import numpy as np
import osmnx as ox

def sample_points(G, n):
    gdf_edges = ox.graph_to_gdfs(G, nodes=False)[['geometry', 'length']]
    weights = gdf_edges['length'] / gdf_edges['length'].sum()
    idx = np.random.choice(gdf_edges.index, size=n, p=weights)
    lines = gdf_edges.loc[idx, 'geometry']
    return lines.interpolate(lines.length * np.random.rand())

# test the sampler (use a projected graph for most accurate results)
G = ox.project_graph(ox.graph_from_place('Piedmont, CA, USA', network_type='drive'))
points = sample_points(G, 100000)

@haossr did the code snippet I provided above work for your use case? Would you like to contribute it as a PR?

@haossr did the code snippet I provided above work for your use case? Would you like to contribute it as a PR?

@haossr did the code snippet I provided above work for your use case? Would you like to contribute it as a PR?

That looks awesome! Thanks for vectorized it -- I can flesh out the details for a PR. : )

@haossr did the code snippet I provided above work for your use case? Would you like to contribute it as a PR?

That looks awesome! Thanks for vectorized it -- I can flesh out the details for a PR. : )

@carlhiggs @shiqin-liu this graph-constrained random spatial sampling may be of particular interest to you.

@haossr let me know if you'd like to contribute this as a PR. I'm planning to wrap up feature dev for v1.1 in the coming weeks before moving to testing in advance of release.

I've added this feature in #687.

Sorry for not being able to work on it -- thanks for including this feature!

@SujitPattanayak please reread the contributing guidelines regarding the appropriate use of this issue tracker and where to ask how-to usage questions instead.


adding Frank as review & approver

and Lin as reviewer.  Frank is #1 contributor to Istio repo, he is well deserved to be on both :)
NONE

/lgtm


Organize single pagination implementation for all endpoints on Postgres and Oracle

Implement single class for pagination following BC Gov data standards and guides, mostly changing names and removing all duplication/different names.

Hi Matthews, this task is not a high priority item, and has been pushed back into the backlog at the direction of the PO


[Snyk] Upgrade vfile-reporter from 7.0.4 to 7.0.5

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade vfile-reporter from 7.0.4 to 7.0.5.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 1 version ahead of your current version.
The recommended version was released 21 days ago, on 2023-02-04.

Release notes

Package name: vfile-reporter

7.0.5 - 2023-02-04Misc

06ce625 07992e1 Add improved docs
446e58b Refactor code-style
6bbf985 Update tsconfig.json

Full Changelog: 7.0.4...7.0.5

7.0.4 - 2022-03-25
fc0232f Remove use of node:platform in browsers
cdec694 Add improved docs

Full Changelog: 7.0.3...7.0.4

    from vfile-reporter GitHub release notes

Commit messages

Package name: vfile-reporter

36b9828 7.0.5
06ce625 Add improved docs
3ed70ba Add tests for exposed identifiers
922b40a Use Node test runner
446e58b Refactor code-style
6bbf985 Update `tsconfig.json`
bf01ee3 Update Actions
cf69df7 Remove dev-dependency
6e359a4 Update dev-dependencies
07992e1 Add some small improvements to docs
e835acf Update dev-dependencies

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Superseded by #57


Implement dispatch to adapters during request path for check kind templates

Bulk of the wiring is done in PR https://github.com/istio/mixer/pull/938. We now need to resolve the config and dispatch to executors which is tracked in issue : https://github.com/istio/mixer/issues/1003


Review "GPU Support" Documentation

I don't think the GPU Support Section of our top level README is up to date.

[ ] Verify all of the min macOS version listed there are accurate.

[ ] Verify that "discrete GPU only" information is still accurate.

[ ] List info for One Shot Object Detector.

[ ] List info for Sound Classifier.

[ ] List info for Drawing Classier.

[ ] List info for Style Transfer.

[ ] Clarify that we only ever use one GPU.

With turicreate 6.1 in Ubuntu with a GPU, I have to run this command after booting my pc:
export TF_FORCE_GPU_ALLOW_GROWTH=true
Otherwise I get a memory crash as soon as I start training. It seems to be common problem people hit with tensorflow. When using tensorflow directly there is a way set this in the configuration but I could not see how to that via turicreate. More here: https://stackoverflow.com/questions/43843208/is-it-possible-to-make-allow-growth-true-set-by-default-in-tensorflow
I don't know if this is helpful to anyone, but I spent a long time resolving this.


Runtime error when compiling with libc++

When compiling libc++ with --stdlib=libc++ and clang it results in the following crash report.
Are you planing to support this?

I'll need a debug stacktrace. https://wiki.hyprland.org/Crashes-and-Bugs/#obtaining-a-debug-stacktrace

launch hyprland with gdb then and follow the same instructions for a backtrace when it crashes

I had this exact crash but only with Aquamarine 0.4.2 built with clang/LLVM 19.1.2, but not any prior version. Recompiling AQ without LTO fixed it for me.


Create your own currency video doesn't work on Safari

Possible reason that when I updated the video I forgot to change the video type from webm to mp4.

@manangouhari I think it would be working now, can you confirm?


Some small improvements

Set executable permission
Set Python interpreter to version 3
Default INI search path: script directory instead of current working dir

@seedmaharaj You can buy Virustotal Enterprise account access and get a Private API key that allows more requests per minute

Tanks For your Valuable Reply
How can i use multi-treading....? for the faster scan
On Sat, Mar 30, 2019 at 2:35 PM Florian Roth<EMAIL_ADDRESS>wrote:

@seedmaharaj https://github.com/seedmaharaj You can buy Virustotal
Enterprise account access and get a Private API key that allows more
requests per minute
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Neo23x0/munin/pull/11#issuecomment-478223328, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AYZalp7XwTILvdrCHFA0y8G8kZTVnQo2ks5vbyjZgaJpZM4cRDMd
.

I'd expect that Virustotal detects the exploitation of their free API service by checking for multiple API keys sending permanent requests from a single IP.

@Neo23x0 Does munin support the VT premium API rates? I tried lowering the wait_time to 0.02 (api at 3000 requests/minute) but it seems to top out at about 1-2 seconds/request, interspersed with VT_reCAPTCHA issue alerts. Not sure if I'm doing something wrong or the program isn't supposed to support this


How to train or predict on rectangle image input?

Most of the images in my dataset are rectangle, with width to height ratio of 16:9. In which way should I modify the function of 'transform_targets_for_output' or other, if training and predicting on rectangle images is desired? Thanks.

If you are only doing inference you can simply use this https://www.tensorflow.org/versions/r2.0/api_docs/python/tf/image/resize_with_pad
But for training you also need to resize and pad the bounding box accordingly which is non-trivial.
This is a example on how this might be done https://nbviewer.jupyter.org/github/aleju/imgaug-doc/blob/master/notebooks/B02 - Augment Bounding Boxes.ipynb

Wouldn't resizing or padding images, say 1920×1080 pixels(16:9), to 416×416(or 608×608), introduces loss or distortion of features? Is it possible that some modification could be made to the function of 'transform_targets_for_output' , so that input size of (544, 960, 3) can be accepted?

I had to make a small adjustment to get rectangular input working, see issue #105

Im gonna use https://github.com/zzh8829/yolov3-tf2/issues/105 to track feature related to custom image resolution


Package request: DevToys

A Swiss Army knife for developers.

Metadata

homepage URL: https://devtoys.app/
source URL: https://github.com/DevToys-app/DevToys
license: mit
platforms: unix, linux, darwin

Add a :+1: reaction to issues you find important.

I'm looking forward to this one as well. I got this to build with the pkg dotnet-sdk_8 installed and by adjusting the shell scripts path for bash... so it shouldn't be too hard to package. If I weren't an ignorant on how to do it, it would be done already.
Thanks in advance to anyone who helps


⚖ Register Validator: B-Harvest

Network Choice
nemeton-1
Who are you?
B-Harvest participated in cosmos gaia-500x in 2018, and has maintained a stable network for 5 years in more than 20 networks so far. In addition to the validator business, we have made many technical contributions to the entire blockchain ecosystem. Specially, we contributed to Tendermint Core by adding new features and improving performance.
We had developed GDEX and Emeris and contributed to security auditing and bug finding of core functional codes on other chains such as Kava and Terra. Furthermore, we have a large ecosystem community in South Korea, and we have led the community through various opinions in the global DeFi group and actively participated in governance.
gentx
{"body":{"messages":[{"@type":"/cosmos.staking.v1beta1.MsgCreateValidator","description":{"moniker":"B-Harvest","identity":"8957C5091FBF4192","website":"https://bharvest.io","security_contact":"contact@bharvest.io","details":"Provides secure validation services for dPoS networks"},"commission":{"rate":"0.050000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"min_self_delegation":"1","delegator_address":"okp41t7d0s0t046w2ttjktp7m7d3kkjgzwu3mw3ky8u","validator_address":"okp4valoper1t7d0s0t046w2ttjktp7m7d3kkjgzwu3mmkxdea","pubkey":{"@type":"/cosmos.crypto.ed25519.PubKey","key":"XCBtl9SxjXu6OqgB7qcdzdIfm7a2vqq6YZ67r6kvK/M="},"value":{"denom":"uknow","amount":"10000000000"}}],"memo":"bc648d1d8aef7f622d38f47ab8a0ecaee9791c46@<IP_ADDRESS>:26656","timeout_height":"0","extension_options":[],"non_critical_extension_options":[]},"auth_info":{"signer_infos":[{"public_key":{"@type":"/cosmos.crypto.secp256k1.PubKey","key":"AkHF1Zx0HEf520LAWhxKrxLnLHG+VgEgzomKE+bGWMor"},"mode_info":{"single":{"mode":"SIGN_MODE_DIRECT"}},"sequence":"0"}],"fee":{"amount":[],"gas_limit":"200000","payer":"","granter":""},"tip":null},"signatures":["G4QY9EuqEkYq/UZA0uLJTCrkheZYOWM7zc9KpuvpRHN3m4dwmz3SyO6gjtp2/7aVRA5WxKghXNJxQBc+a+6KcA=="]}

😉 Here is the corresponding PR: https://github.com/okp4/networks/pull/396


Set a daily cron job in Travis

This can be done in https://travis-ci.org/laumann/compiletest-rs/settings. Set it to "Runs daily" and "Always run". This will catch when the crate is broken by nightly changes.

Done.


Bumped ws to 0.7.1

@mafintosh @maxogden I would release this as 1.4.0 if you have no issue with it. All tests are green.
Fixes #64.

:+1: Released in 1.4.0


Doing a hot restart while the debugger has paused on exception hangs if before runApp

Steps to Reproduce

flutter create hello_world
add throws('hello'); to main before runApp(MyApp());
in VSCode

hit 'Start Debugging'
under BREAKPOINTS select "All Exceptions"

When debugger pauses on the Exception, hit Hot Restart
Dialog shows "Syncing files to device..."  with progress indicator but Hot Restart never happens

https://gist.github.com/nickmeinhold/fe577c51a4c52a5cc8e8d97ba642fcf1
[✓] Flutter (Channel stable, v1.7.8+hotfix.4, on Mac OS X 10.14.6 18G95, locale en-AU)
[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
[✓] Xcode - develop for iOS and macOS (Xcode 10.3)
[✓] iOS tools - develop for iOS devices
[✓] Android Studio (version 3.5)
[✓] VS Code (version 1.38.0)
[✓] Connected device (1 available)

cc @DanTup

I can repro this. I suspect something in the Hot Restart code might not work correctly if runApp was never called, though I'm not familiar with exactly how it works (I suspect others here will though).

Thanks Dan!  I'm seeing in my larger projects that if an object that was created in main and passed into runApp and then later throws while the app is running, I see the same behaviour.  It happens every time in my projects but I couldn't repro in a clean project unfortunately.  I'm hoping it's the same problem as what happens here.

Thanks @DanTup for suggesting updating Dart-Code to 3.5.0 Alpha 3.  I tried but unfortunately still seeing the same problem.
There was a difference but the result seems to be the same.  The difference was that hitting Hot Restart with the updated Dart-Code made the red debug pop-up and the contents of the Call Stack section disappear, but otherwise everything is the same and the restart never occurs.
Dart-Code 3.4.1, after breaking on exception then hitting Hot Restart

Dart-Code 3.5.0 Alpha 3, after breaking on exception then hitting Hot Restart

@nickmeinhold thanks for testing - re-reading your issue, I think @escamoteur's issue was slightly different (caused by the VS Code debugger being in a bad state - which I think this fixes). With yours, it does seem like the hot restart is failing to complete.
I had a quick look at this again, and I think I have a better idea of what's happening... The restart code is causing main to be run again, which is throwing an exception. This breaks the debugger (again), but this time the call stack does not include the correct location, so it doesn't appear to break back on the right code (you can see it shows "Paused on Exception" in the call stack pane in your screenshot, because it's paused on the exception again, as part of the restart). Here's what the call stack looked like for me:

The restart never completes because it's paused on that exception. In my testing, if I removed the code that threw the exception (since it'll forever get stuck breaking on that exception if you don't fix it) and then clicked Resume (I had to click it twice, because the exception seemed to be thrown multiple times - maybe similar to https://github.com/dart-lang/sdk/issues/37645) then the app seemed to load correctly.
Does this happen for you?

Yes!  I see the same behaviour when I perform the actions you describe (including having to hit Resume twice).
This also matches what I have been seeing in my larger projects - I have found that if I hit Resume until the debugger stops breaking, then hit Hot Restart, the Hot Restart works.
I will try again to repro the behaviour that I see in my larger projects by starting with a clean project.  The behaviour I am referring to is when an object is created in main, before runApp, and passed in to runApp and only throws later while the app is running.

I will try again to repro the behaviour that I see in my larger projects by starting with a clean project. The behaviour I am referring to is when an object is created in main, before runApp, and passed in to runApp and only throws later while the app is running.

To close the 2 year old loop :-) my memory is that I was not able to reproduce the behaviour with a clean project.


Add more links to the README

Description
Add more links to related projects / parsers
Pull request type

[x] Documentation content changes

Do you introduce a breaking change?

[x] No

Checklist

[x] I understand and agree that the changes in this PR will be licensed under the BSD 2-Clause License
[x] I have followed the guidelines for contributing
[x] The proposed change fits to the content of the code of conduct
[x] I have added or updated tests and documentation, and the test suite passes (run npm test locally)

Thanks for the review.


Adjust userProfileSuccess template

Add min-height of 60vh, allowing for screen size to help fill the availavle space.
Update/remove btn classing and handle click here button style to match other link styles.
Fix spelling of modiying => modifying.

Without a redirect

With auto redirection

 On profile update, redirect to homepage if no redirect URL is present


additional package managers for goreleaser

Package managers referred to by their goreleaser labels:

winget
Started, working out issues
chocolateys
Started, similar issues as winget related to using 'archives' in goreleaser to zip packages. Investigating
aurs (arch user repository)
probably an easy lift, investigating
snapcrafts
snaps are distro agnostic packages
nfpms
package distribution for debian, fedora, alpine, and arch linux

#63

opening new issues


"IPC error: Operation not permitted (os error 1)"

(affects: #13)
Problem
After starting the parity-duo with npm run parity 7545 8545, the two parity processes get killed within a few seconds.
The parity/chains/*/error.log contain the error message:
IPC error: Operation not permitted (os error 1)
Environment
It happens in both:

Win10, native cli
Win10, bash (ubuntu)

Workaround
within parity/boot.js, locate:
//add this to disable ipc, if you get "IPC error: Operation not permitted (os error 1)"
args.push('--no-ipc')

const parity = spawn('parity', args, { stdio: 'pipe', cwd: PATH });

closing, remark added in source with
https://github.com/GridPlus/cryptobridge-contracts/blob/99a400a6768a1ebe558d214e312fde33e48273a8/parity/boot.js#L116-L117


Metric group category translation is not working

Metric display names should be translated in ClassTable.  It's not happening.
translation:extract extracts display names to extraTerms.json
extraTerms are pushed to POEditor for translation, and then pulled back into the language translations files.
the original English extraTerms get injected at load time into the TranslatorAsync.
projectClient.getMetricGroup() accepts a t parameter and performs translation on all display names.
But the translation doesn't seem to be occurring.
Tried

Clearing all browser cache/storage

Note to try displaying a translated extraTerm outside of ClassTable, the simplest possible example and see if it works.  Does translation of the planning area name from basic.json work?


[SMALLFIX] Add javadoc for HadoopClientTestUtils and DFSIOIntegrationTest

Add javadoc for HadoopClientTestUtils and DFSIOIntegrationTest

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/13160/
Test PASSed.

+1 LGTM. thanks for the improvement!


Can't start any games

I tried to create a game and then "start" it.  However, my password is not accepted.  If I try to join the game without "starting" it I just get a completely blank page.

To start the game you must give the administrator password, not the game password.

I just made every username ever "tom" and every password "tom".  Still didn't work.

Ah, I see. A game can only be started with at least 3 players.