headscale up - 2 nodes registered cant ping one another

tailscale0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1280
inet <IP_ADDRESS>  netmask <IP_ADDRESS>  destination <IP_ADDRESS>
inet6 fe80::328c:a52:702d:d463  prefixlen 64  scopeid 0x20
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 500  (UNSPEC)
RX packets 0  bytes 0 (0.0 B)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 133  bytes 11020 (10.7 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
wg0: flags=209<UP,POINTOPOINT,RUNNING,NOARP>  mtu 1420
inet <IP_ADDRESS>  netmask <IP_ADDRESS>  destination <IP_ADDRESS>
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 1000  (UNSPEC)
RX packets 388355  bytes 70009852 (66.7 MiB)
RX errors 321  dropped 0  overruns 0  frame 321
TX packets 22940  bytes 2731180 (2.6 MiB)
TX errors 92  dropped 480 overruns 0  carrier 0  collisions 0
root@openwisp2:~# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
<IP_ADDRESS>         <IP_ADDRESS>  <IP_ADDRESS>         UG        0 0          0 ens192
<IP_ADDRESS>      <IP_ADDRESS>         <IP_ADDRESS>   U         0 0          0 wg0
<IP_ADDRESS>  <IP_ADDRESS>         <IP_ADDRESS> U         0 0          0 ens192
and node 2
ailscale0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST>  mtu 1280
inet <IP_ADDRESS>  netmask <IP_ADDRESS>  destination <IP_ADDRESS>
inet6 fe80::d04c:730:d336:caa7  prefixlen 64  scopeid 0x20
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  txqueuelen 500  (UNSPEC)
RX packets 0  bytes 0 (0.0 B)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 22  bytes 1828 (1.7 KiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
virbr0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet <IP_ADDRESS>  netmask <IP_ADDRESS>  broadcast <IP_ADDRESS>
ether 52:54:00:7f:be:4e  txqueuelen 1000  (Ethernet)
RX packets 1306778  bytes 201624054 (192.2 MiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 979134  bytes 459607920 (438.3 MiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
vnet0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet6 fe80::fc54:ff:fe4a:cf12  prefixlen 64  scopeid 0x20
ether fe:54:00:4a:cf:12  txqueuelen 1000  (Ethernet)
RX packets 267338  bytes 41792081 (39.8 MiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 191572  bytes 66665625 (63.5 MiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
vnet1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet6 fe80::fc54:ff:fef9:b5dd  prefixlen 64  scopeid 0x20
ether fe:54:00:f9:b5:dd  txqueuelen 1000  (Ethernet)
RX packets 9086  bytes 654414 (639.0 KiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 77397  bytes 4826090 (4.6 MiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
vnet2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet6 fe80::fc54:ff:feaa:d545  prefixlen 64  scopeid 0x20
ether fe:54:00:aa:d5:45  txqueuelen 1000  (Ethernet)
RX packets 1032049  bytes 177663162 (169.4 MiB)
RX errors 0  dropped 0  overruns 0  frame 0
TX packets 914283  bytes 400343605 (381.7 MiB)
TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
❯ sudo tailscale up -login-server http://portaladmin.optimcloud.com:8000
❯ ping <IP_ADDRESS>
PING <IP_ADDRESS> (<IP_ADDRESS>) 56(84) bytes of data.
^C
--- <IP_ADDRESS> ping statistics ---
435 packets transmitted, 0 received, 100% packet loss, time 444450ms
❯ netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
<IP_ADDRESS>         <IP_ADDRESS>    <IP_ADDRESS>         UG        0 0          0 eno1
<IP_ADDRESS>    <IP_ADDRESS>         <IP_ADDRESS>   U         0 0          0 eno1
<IP_ADDRESS>   <IP_ADDRESS>         <IP_ADDRESS>   U         0 0          0 virbr0
[GIN-debug] GET    /key                      --> github.com/juanfont/headscale.(*Headscale).KeyHandler-fm (3 handlers)
[GIN-debug] GET    /register                 --> github.com/juanfont/headscale.(*Headscale).RegisterWebAPI-fm (3 handlers)
[GIN-debug] POST   /machine/:id/map          --> github.com/juanfont/headscale.(*Headscale).PollNetMapHandler-fm (3 handlers)
[GIN-debug] POST   /machine/:id              --> github.com/juanfont/headscale.(*Headscale).RegistrationHandler-fm (3 handlers)
[GIN-debug] Listening and serving HTTP on <IP_ADDRESS>:8000
[GIN] 2021/06/17 - 03:33:41 | 200 |     111.562µs |   <IP_ADDRESS> | GET      "/key"
2021/06/17 03:33:41 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:41 | 200 |    1.345531ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:41 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:41 | 200 |    1.032246ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:42 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:42 | 200 |    1.193469ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:42 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:42 | 200 |     987.379µs |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:42 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:42 | 200 |    1.037511ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:43 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:43 | 200 |    1.031472ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:43 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:43 | 200 |    1.140751ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:44 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:44 | 200 |    2.545385ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:45 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:45 | 200 |    1.076843ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:46 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:46 | 200 |    1.148693ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:47 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:47 | 200 |     897.474µs |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:48 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:48 | 200 |    1.059621ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
[GIN] 2021/06/17 - 03:33:48 | 200 |      35.703µs |   <IP_ADDRESS> | GET      "/register?key=6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
[GIN] 2021/06/17 - 03:33:49 | 404 |       1.023µs |   <IP_ADDRESS> | GET      "/favicon.ico"
2021/06/17 03:33:49 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:49 | 200 |    1.077035ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:50 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:50 | 200 |    1.091801ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:53 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:53 | 200 |    1.084071ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:54 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:54 | 200 |    1.146019ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:33:56 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:33:56 | 200 |    1.057807ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:00 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:00 | 200 |    1.074029ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:02 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:02 | 200 |    1.059043ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:04 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:04 | 200 |    1.114051ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:07 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:07 | 200 |    1.115037ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:13 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:13 | 200 |    1.102115ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:16 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:16 | 200 |    1.159897ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:19 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:19 | 200 |    1.111871ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:26 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:26 | 200 |     1.07197ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:32 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:32 | 200 |     927.425µs |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:38 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:38 | 200 |    1.104985ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:48 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:48 | 200 |    1.077712ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:53 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:53 | 200 |    1.197335ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:34:58 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:34:58 | 200 |    1.116692ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:35:06 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:35:06 | 200 |    1.087817ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:35:18 [localhost] The node is sending us a new NodeKey, sending auth url
[GIN] 2021/06/17 - 03:35:18 | 200 |    1.001356ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:35:32 [localhost] The node is sending us a new NodeKey, but machine is registered. All clear for /map
[GIN] 2021/06/17 - 03:35:32 | 200 |    1.170567ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074"
2021/06/17 03:35:32 [localhost] ReadOnly=true   OmitPeers=false    Stream=true
2021/06/17 03:35:32 [localhost] Client is starting up. Asking for DERP map
[GIN] 2021/06/17 - 03:35:32 | 200 |    7.315647ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074/map"
2021/06/17 03:35:32 [localhost] ReadOnly=true   OmitPeers=true    Stream=false
2021/06/17 03:35:32 [localhost] Client is starting up. Asking for DERP map
[GIN] 2021/06/17 - 03:35:32 | 200 |    6.525705ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074/map"
2021/06/17 03:35:33 [localhost] ReadOnly=true   OmitPeers=false    Stream=true
2021/06/17 03:35:33 [localhost] Client is starting up. Asking for DERP map
[GIN] 2021/06/17 - 03:35:33 | 200 |    6.273575ms |   <IP_ADDRESS> | POST     "/machine/6932e2c2bd1d08ba75050f8add63d2874208263e9fc30d61c5e8161b34fd5074/map"
2021/06/17 03:35:33 [localhost] ReadOnly=false   OmitPeers=false    Stream=true
2021/06/17 03:35:33 [localhost] Client is ready to access the tailnet
2021/06/17 03:35:33 [localhost] Sending initial map
2021/06/17 03:35:33 [localhost] Notifying peers
2021/06/17 03:35:33 [localhost] Sending data (1216 bytes)
2021/06/17 03:35:33 [localhost] Sending keepalive
2021/06/17 03:35:33 [localhost] Sending data (165 bytes)
2021/06/17 03:36:33 [localhost] Sending keepalive
2021/06/17 03:36:33 [localhost] Sending data (165 bytes)
2021/06/17 03:37:33 [localhost] Sending keepalive
2021/06/17 03:37:33 [localhost] Sending data (165 bytes)
^C
root@portaladmin:~# ./headscale serve &
[1] 5437
root@portaladmin:~# [GIN-debug] [WARNING] Creating an Engine instance with the Logger and Recovery middleware already attached.
[GIN-debug] [WARNING] Running in "debug" mode. Switch to "release" mode in production.

using env:	export GIN_MODE=release
using code:	gin.SetMode(gin.ReleaseMode)

[GIN-debug] GET    /key                      --> github.com/juanfont/headscale.(*Headscale).KeyHandler-fm (3 handlers)
[GIN-debug] GET    /register                 --> github.com/juanfont/headscale.(*Headscale).RegisterWebAPI-fm (3 handlers)
[GIN-debug] POST   /machine/:id/map          --> github.com/juanfont/headscale.(*Headscale).PollNetMapHandler-fm (3 handlers)
[GIN-debug] POST   /machine/:id              --> github.com/juanfont/headscale.(*Headscale).RegistrationHandler-fm (3 handlers)
[GIN-debug] Listening and serving HTTP on <IP_ADDRESS>:8000
root@portaladmin:~# 2021/06/17 03:37:50 [localhost] ReadOnly=false   OmitPeers=false    Stream=true
2021/06/17 03:37:50 [localhost] Client is ready to access the tailnet
2021/06/17 03:37:50 [localhost] Sending initial map
2021/06/17 03:37:50 [localhost] Notifying peers
2021/06/17 03:37:50 [localhost] Sending data (1214 bytes)
2021/06/17 03:37:50 [localhost] Sending keepalive
2021/06/17 03:37:50 [localhost] Sending data (165 bytes)
2021/06/17 03:38:50 [localhost] Sending keepalive
2021/06/17 03:38:50 [localhost] Sending data (165 bytes)
2021/06/17 03:39:50 [localhost] Sending keepalive
2021/06/17 03:39:50 [localhost] Sending data (165 bytes)
2021/06/17 03:40:50 [localhost] Sending keepalive
2021/06/17 03:40:50 [localhost] Sending data (165 bytes)
2021/06/17 03:41:50 [localhost] Sending keepalive
2021/06/17 03:41:50 [localhost] Sending data (165 bytes)
[GIN] 2021/06/17 - 03:42:13 | 200 |     202.556µs |  <IP_ADDRESS> | GET      "/key"
2021/06/17 03:42:13 New Machine!
2021/06/17 03:42:13 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:13 | 200 |    3.560429ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:13 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:13 | 200 |     913.675µs |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:13 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:13 | 200 |     855.282µs |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:13 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:13 | 200 |     882.553µs |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:13 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:13 | 200 |     882.617µs |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:13 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:13 | 200 |     947.643µs |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:14 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:14 | 200 |    1.202272ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:14 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:14 | 200 |     896.731µs |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:15 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:15 | 200 |    1.252819ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:16 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:16 | 200 |    1.092878ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:16 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:16 | 200 |     1.06959ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:17 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:17 | 200 |    1.143727ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:18 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:18 | 200 |    1.088837ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:20 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:20 | 200 |     1.13734ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:22 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:22 | 200 |    1.089247ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
[GIN] 2021/06/17 - 03:42:23 | 200 |      52.923µs |   <IP_ADDRESS> | GET      "/register?key=1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:24 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:24 | 200 |    1.199791ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:27 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:27 | 200 |     1.13902ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:30 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:30 | 200 |    1.227831ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:32 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:32 | 200 |    1.142404ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
root@portaladmin:~# 2021/06/17 03:42:35 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:35 | 200 |    1.131066ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:37 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:37 | 200 |    1.048402ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:42 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:42 | 200 |    1.105127ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:48 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:48 | 200 |    1.176801ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:50 [localhost] Sending keepalive
2021/06/17 03:42:50 [localhost] Sending data (165 bytes)
2021/06/17 03:42:52 [openwisp2] Not registered and not NodeKey rotation. Sending a authurl to register
[GIN] 2021/06/17 - 03:42:52 | 200 |    1.261325ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:58 [openwisp2] Client is registered and we have the current NodeKey. All clear to /map
[GIN] 2021/06/17 - 03:42:58 | 200 |     1.13688ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f"
2021/06/17 03:42:58 [openwisp2] ReadOnly=true   OmitPeers=false    Stream=true
2021/06/17 03:42:58 [openwisp2] Client is starting up. Asking for DERP map
[GIN] 2021/06/17 - 03:42:58 | 200 |     6.32538ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f/map"
2021/06/17 03:42:58 [openwisp2] ReadOnly=true   OmitPeers=true    Stream=false
2021/06/17 03:42:58 [openwisp2] Client is starting up. Asking for DERP map
[GIN] 2021/06/17 - 03:42:58 | 200 |    5.965112ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f/map"
2021/06/17 03:42:58 [openwisp2] ReadOnly=true   OmitPeers=true    Stream=false
2021/06/17 03:42:58 [openwisp2] Client is starting up. Asking for DERP map
[GIN] 2021/06/17 - 03:42:58 | 200 |    6.551025ms |  <IP_ADDRESS> | POST     "/machine/1c190a58787774c68ae8734fb2ee90503f2aef40307eba9aa70406c5b14e586f/map"
2021/06/17 03:42:58 [openwisp2] ReadOnly=false   OmitPeers=false    Stream=true
2021/06/17 03:42:58 [openwisp2] Client is ready to access the tailnet
2021/06/17 03:42:58 [openwisp2] Sending initial map
2021/06/17 03:42:58 [openwisp2] Notifying peers
2021/06/17 03:42:58 [openwisp2] Notifying peer localhost (<IP_ADDRESS>/32)
2021/06/17 03:42:58 [openwisp2] Sending data (1527 bytes)
2021/06/17 03:42:58 [localhost] Received a request for update
2021/06/17 03:42:58 [openwisp2] Sending keepalive
2021/06/17 03:42:58 [openwisp2] Sending data (165 bytes)
2021/06/17 03:43:50 [localhost] Sending keepalive
2021/06/17 03:43:50 [localhost] Sending data (165 bytes)
2021/06/17 03:43:58 [openwisp2] Sending keepalive
2021/06/17 03:43:58 [openwisp2] Sending data (165 bytes)
2021/06/17 03:44:50 [localhost] Sending keepalive
2021/06/17 03:44:50 [localhost] Sending data (165 bytes)
2021/06/17 03:44:58 [openwisp2] Sending keepalive
2021/06/17 03:44:58 [openwisp2] Sending data (165 bytes)
2021/06/17 03:45:50 [localhost] Sending keepalive
2021/06/17 03:45:50 [localhost] Sending data (165 bytes)
2021/06/17 03:45:58 [openwisp2] Sending keepalive
2021/06/17 03:45:58 [openwisp2] Sending data (165 bytes)
2021/06/17 03:46:50 [localhost] Sending keepalive
2021/06/17 03:46:50 [localhost] Sending data (165 bytes)
2021/06/17 03:46:58 [openwisp2] Sending keepalive

Hi @outbackdingo,
Did you have those nodes (openwisp2, localhost) connected to Tailscale.com server before? If so, could you please reboot them?

nope never on tailscale and just rebooted both anyway, same results

ok deleted the two nodes cleared /var/lib/tailscale and tried again, its working now

Thanks for the heads up!
I will update the documentation accordingly :)


[JetChat] An error occurred during build

An exception occurred applying plugin request [id: 'com.android.application']

Failed to apply plugin 'com.android.internal.application'.
java.util.concurrent.ExecutionException: java.lang.NoSuchMethodException: java.lang.invoke.MethodHandles.privateLookupIn(java.lang.Class, java.lang.invoke.MethodHandles$Lookup)

I had the same problem then I read the readme :D
It says to use the latest canary build of Android Studio

@supermar1010 even using most recent canary (4.2 beta 6), and using com.android.tools.build:gradle:7.0.0-alpha10 i received this error:

This version of the Android Support plugin for IntelliJ IDEA (or Android Studio) cannot open this project, please retry with version 4.3 or newer.

i needed to use com.android.tools.build:gradle:4.2.0-beta06 to build JetChat

try to replace your project jdk1.8 to jdk11

try to replace your project jdk1.8 to jdk11
Yes, this is the correct answer!

try to replace your project jdk1.8 to jdk11

nothing for help


Tables indexes not updating when versions are declared in reverse order

Hello, first of all I wanted to say thank you for dexie.js which is a very useful and practical tool !
I'm using dexie.js 2.0.4 in my app, and for performance reasons I want to update the indexes of one of my tables.
If I run the following code :
const db: dexie = new dexie('mydb');
db.version(1).stores({
  friends: '++id,name,age',
  pets: '++id,name,kind',
});

The table is created with the right indexes, and the version is 10.
Now if I run the following code and refresh my browser :
const db: dexie = new dexie('mydb');
db.version(2).stores({
  friends: '++id,name,city',
  pets: '++id,name,kind',
});
db.version(1).stores({
  friends: '++id,name,age',
  pets: '++id,name,kind',
});

The version updates to 20, however the index of friends have not been updated and are still name and age.
If I go back to version 10, and then run the following code :
const db: dexie = new dexie('mydb');
db.version(1).stores({
  friends: '++id,name,age',
  pets: '++id,name,kind',
});
db.version(2).stores({
  friends: '++id,name,city',
  pets: '++id,name,kind',
});

The indexes are correctly updated as well as the version number.

I think this is a duplicate of #919. It has been solved in 3.x.

Thanks for your reply. This indeed looks like a duplicate of #919. I'll wait for the release of 3.x, in the meantime I can declare the versions in ascending order to update my indexes.


How can you add multiple blocks to the same project?

How can you add multiple blocks to the same project?

Hey Alexlytle, have a look at this example:
https://github.com/ahmadawais/create-guten-block/tree/master/examples/03-multi-block


Secret token from configuration.js fails

I am trying to use a secret token in configuration.js, like this:
token: 'secret'

but it fails. However, if I add the word secret into the Settings screen then it works fine. I am not sure what I am doing wrong. I have tried both secret and $secret$ both unsucessfully.
I have added an alert(currentToken); at js/services/rpc/rpc.js:90 and it displays the correct secret value.
It starts working as soon as I type the word secret into the Enter the secret token (optional) box, even before I press the save button, but it doesn't work when relying on the value in configuration.js.
I can't see what I am doing wrong; perhaps I have hit a bug?
(I have latest checkout a4b1e954)

When you start aria2c, are you using the same secret in the --rpc-secret switch?

do NOT put your token in configuration.js, the file can be accesed by anyone by tipyng the url in the browser, this is extremely unsafe.

same as #347 just clear the cookies.


Use sia.js 0.1.4 with detached option

This should have been a part of #162 but it was merged right after https://github.com/NebulousLabs/Nodejs-Sia/pull/14 was.

I'm just going to merge this immediately...


suggest path mappings

I have path mappings for the following aliases setup.
"path-autocomplete.pathMappings": {
	"/": ...
	"/resources": ...
},

Is there anyway to be suggested "/resources" when I type "/"?  This would be in addition to the contents of the "/" folder.  I would prefer to have the mappings have a higher precedence for suggestion.

try:
"path-autocomplete.pathMappings": {
        "/": "/"
},

please reopen if you still encounter issues


Decouple faker from mocking

Decouple @sanity-typed/faker from @sanity-typed/mocker. The faker library's internals would be:
import { sanityConfigToMocker } from "@sanity-typed/mocker";

const sanityConfigToFaker = (config) => sanityConfigToMocker(config, {
  mocker: (seed) => {
    const faker = new Faker({ locale: [en, base] });
    faker.seed(seed);
    return faker;
  },
  types: {
    string: (faker) => faker.lorem.sentence(),
    text: (faker) => faker.lorem.paragraphs({ min: 1, max: 5 }),
    // ... all types
  },
  paths: {
    "product.productName": (faker) => faker.commerce.productName(),
    // ... any overrides
  },
});

Something like that. Those types and paths would be overridable and would eliminate customFaker, which would be nice. This would let us use things like falso instead of faker, but also a way to mix and match them into one mocker. The mocker could return a { faker, falso, randexp } mix, so someone can do different things for different types/paths.
We could also have all mocking functions return a promise, so async datasources are possible. For example, for things like images and files.

Yeah, I think the API is:
import { sanityConfigToMockers } from "@sanity-typed/mocker";

const sanityMockers = sanityConfigToMockers(config, {
  mocker: (seed) => SomeType,
  types: {
    string: (someType: SomeType) => string,
    text: (someType: SomeType) => string,
    // ... all types
  },
  paths: {
    "product.productName": (someType:SomeType) => string,
    "valid.path.according.to.the.config": (someType:SomeType) => CorrectType,
    // ... any overrides
  },
});

The export from @sanity-typed/faker would correspond to a the second param from sanityConfigToMockers, with SomeType being { faker: Faker }. Maybe you'd give it Faker's args like you do now so mocker: (seed) => { faker: Faker } works as it does now. Then overrides would just happen via types and paths, which wouldn't be faker or falso or whatever specific. The reason for SomeType being { faker: Faker } rather than Faker is so that, if we wanted to compose multiple mocking libraries together, as long as mocker: () => { faker: Faker; other: Other } works just fine, they'd all "just work".
This would get rid of the need for customMock or customFaker. It all gets consolidated into types and paths. It's unfortunate it wouldn't be with the configs themselves, but passing types between the mocker and the configs would be chaos, and everything ends up a little cleaner here. If we still wanted to colocate the mocking overrides with the configs, those config files can still export functions not used in sanity studio, but are imported with the mockers, in an effort to keep it all together.


ak.concatenate(..., axis=0) should not touch any data

We can (and technically do) implement this as a growth in the number of partitions.

@agoose77 @douglasdavis I just wanted to ask if this idea is still alive and its current status. I’m just thinking about something in my code.

This is and I'm working on it!
It looks like we need a new function, enforce_form to do this.

Jim and I spoke about this, and settled on the initial implementation having the following semantics:

ak.concatenate(..., axis=0) for some sequence of arrays with identical forms should just build a logical union (dak.Array)
ak.concatenate(..., axis=0) for some sequence of arrays with different forms should use ak.enforce_type. At the end of the day, this will really only penalise the case where all partitions have one of two forms, neither of which is canonical.

@douglasdavis I started playing around with this, and realised I was missing a point RE optimisation.
Do you think it's feasible to optimise ak.concatenate(..., axis=0) such that we don't actually concatenate at worker time unless all of the collection partitions are required? e.g., could we optimise
dak.concatenate((x, y)).z[0]

to only compute x.z[0]?

Without testing it out, I think this would automatically optimize based on
upstream dask’s task culling (that is, we shouldn’t have to do anything).
the zero getitem call will trigger dask awkward to make a layer that only
needs the first partition, and Dask should do the rest. dask.visualize(…,
optimize_graph=True) should be able to prove it!
On Thu, Nov 16, 2023 at 17:51 Angus Hollands @.***>
wrote:

@douglasdavis https://github.com/douglasdavis I started playing around
with this, and realised I was missing a point RE optimisation.
Do you think it's feasible to optimise ak.concatenate(..., axis=0) such
that we don't actually concatenate at worker time unless all of the
collection partitions are required? e.g., could we optimise
dak.concatenate((x, y)).z[0]
to only compute x.z[0]?
—
Reply to this email directly, view it on GitHub
https://github.com/dask-contrib/dask-awkward/issues/305#issuecomment-1815510294,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAYNYKUUKDDBLASKKC7BIODYE2RHBAVCNFSM6AAAAAAZ27W7R6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMJVGUYTAMRZGQ
.
You are receiving this because you were mentioned.Message ID:
@.***>


Updated README to match implementation of solicit::http::Header

Thanks for your contribution! Do you mind tweaking this a bit, so that the appropriate accessor method is used for both the name and value?

Cool stuff. Thanks!


Running a editorscript with code selected performs an unintentional cut of the code

Godot version
3.4.2 stable
System information
Windows 10
Issue description
When writing gdscript in the code editor, if you have text selected then run the code using the hot key (cntl-shift-x), instead of just running the code, it also performs the cut operation (i.e. ctrl-x)
Steps to reproduce
Create a node on any project and add the following script to it
tool
extends EditorScript
func _run() -> void:
	print("A")
	print("B")

Highlight the "print("B")" line.
Hit ctrl-shift-x
You will see "A" printed, but the line with "B" will be removed from your script.
Minimal reproduction project
No response

This seems to be fixed in 4.0 alpha 1 (windows 10)

See https://github.com/godotengine/godot/issues/52861


Using threads to reduce the number of posts

I had an idea that we could publish one post (e.g. Tips for today), with individual tips being unlisted (now with the better name Quiet Public¹).
[1] https://docs.joinmastodon.org/user/posting/#privacy

But unfortunately, I was wrong, as they would be visible from the point of the followers anyway (factually it would only increase the number). Moreover, the problem that the tips wouldn’t be public would have to be solved, thus limiting the possibility for new people to discover the bot.


Allow dev to apply pivot data on attaching a team.

I was unable to come up with a way to unit test this change because I am unsure how to test the withPivot method with Mockery (also not sure if there were any database migrations happening, or if Mockery just simulates a database).
I could also apply the same change to the attachTeams method, but that would require everyone else change the format of the array they send to that method - which seems a bit rude.

Hey, why have you closed the PR?

No activity for 14 days, I did not think you wanted to merge. I was going to maintain my own fork. I can recreate if you would like.

Yeah, please recreate it.
I was busy refactoring all tests, as they now hit a real database instead of everything being mocked.

Something like this should work for the test:
public function testCanSetPivotDataOnAttachTeamMethod()
{
    \Schema::table(config( 'teamwork.team_user_table' ), function ($table) {
        $table->boolean('pivot_set')->default(false);
    });

    $team = TeamworkTeam::create(['name' => 'Test-Team']);
    $pivotData = ['pivot_set' => true];

    $this->user->attachTeam($team, $pivotData);

    $this->seeInDatabase(config('teamwork.team_user_table'), [
        'user_id' => $this->user->getKey(),
        'team_id' => $team->getKey(),
        'pivot_set' => true
    ]);
}

Ok, reopened as #37. Sorry about prematurely closing, but at least I could add the test you provided. :)


Glith in prerequisite.py

prerequisite.py fails on the xc case.
python prerequisite.py $HOME/local xc
Installation prefix: /users/bonfap/local
Traceback (most recent call last):
  File "prerequisite.py", line 140, in <module>
    main()
  File "prerequisite.py", line 137, in main
    configure_package(pkg, prefix)
  File "prerequisite.py", line 76, in configure_package
    tf = tarfile.open("./libs/" + local_file_name)
  File "/usr/lib64/python2.7/tarfile.py", line 1680, in open
    raise ReadError("file could not be opened successfully")
tarfile.ReadError: file could not be opened successfully

Renaming libxc-4.2.3.tar.gz to xc-4.2.3.tar.gz solves the problem.

I can't reproduce the error. On my mac I have:
CC=gcc-mp-7 CXX=gcc-mp-7 FC=gfortran-mp-7 FCCPP=cpp-mp-7 python prerequisite.py $HOME/local xc
Installation prefix: /Users/antonk/local
Downloading http://www.tddft.org/programs/octopus/down.php?file=libxc/4.2.3/libxc-4.2.3.tar.gz
checking for a BSD-compatible install... /opt/local/bin/ginstall -c

and the library is downloaded correctly. On the other hand
The requested URL /programs/octopus/download/libxc/4.2.3/xc-4.2.3.tar.gz was not found on this server.

Ah! I know, the ./libs directory was not created
mkdir libs
python prerequisite.py $HOME/local xc

will work

Yes, sorry, works for me too. Wild guess, it must have been a strange manifestation of my home directory getting close to the quota.

Good!


Remove 'unranked' teams concept

Describe the feature you'd like
Teams that are not available for judging should not be penalised
Pre-existing Issue or Justification
No response
Additional context
No response

The new system discussed which allows teams to mark themselves as not available and skips including them in the ranking 'batch' covers this.

That's not entirely true - there is implementation we need to strip out relating to the 'judging' model keeping track of 'Unranked' teams (teams that were skipped)


honor metadata.language when exporting a ipynb file

When exporting an ipynb file, the process employs:
"metadata": {
  "vscode": {
    "languageId": "sql"
  }
}

instead of following the nbformat v4 standard:
"metadata": {
  "language": "sql"
}

It seems that although this extension can identify both formats, it only exports metadata specific to VSCode. I'm not sure if this is done on purpose.

@huang47 Please can you share the link to the nbformat v4 standard that requires the langauge to be directly under language.
We are following the standard, and given the fact that language isn't part of the standard, we're sticking it undre the vscode namespace which is the right thing to do,
This ensures it doesnt' conflict with others if they were to use language, which isn't part of the standard.

For now I'm closing this isssue, however if you can provide the details requested above I'm happy to reopen this issue, or feel free to createa new issue with the above information.


fix(perf): only compute snappoints when step is provided

This keeps the snapping but does not generate the snap points if no value is provided. We can do that because rheostat snaps the point to the rounded value by default (if snap=true). Until rheostat provides a lazy way to fix the snappoints, there will be a risk of having an "out of memory" error because the range of values can be too big. There is an open issue opened for adding this new API: airbnb/rheostat#14 but it's uncertain if someone will work on it.
Fix #2662

Impressive debugging @bobylito you nailed it 💯

Anyway, according to travis you still need to update the snapshots

done

A good workaround for now, but I wonder if an option would be to implement airbnb/rheostat#14 🤔

Yes. That could be the end game. Let's move forward with this one. I dismiss your review @Haroenv ;)


the disabed dont work

why does the disabled dont work？
  <vue-multi-select v-model="test.defaultValues" search history-button :options="options" :filters="filters" :btn-label="btnLabel" :select-options="data" :disabled="true"></vue-multi-select>

my demo

In your exemple, you are using 3.12.1. Disabled have been released in 3.14.1
If you don't want to use bundler, you can't use 4.0.0 atm, I will realease a WC build this we. You can use 3.16.0, but there is a breacking change with btnLabel, a function is needed instead of a string.
https://codepen.io/IneoO/pen/MdzQep


Support lowering reshape from linalg to SPIR-V

I think this can be addressed by the enhancing the fusion on Linalg ops.

Mahesh, I remembered that you're working on it?

W already have this now.


The order of the seasons should be in reverse order [EN] Feedback for: /shows/polycasts/index.html

The order of the seasons should be in reverse order.  i.e, the most recent seasons at the top of the page.
Thoughts?

agreed - @gauntface can you please take a look.

I originally had this but it felt a bit off. Happy to change.
On 27 Mar 2015 22:03, "Pete LePage"<EMAIL_ADDRESS>wrote:

Assigned #1186 https://github.com/google/WebFundamentals/issues/1186 to
@gauntface https://github.com/gauntface.
—
Reply to this email directly or view it on GitHub
https://github.com/google/WebFundamentals/issues/1186#event-267322279.


Use classified datasets to generate graphs (Grafana?)

Hi!
I see we already can fetch and classify reimbursements using https://github.com/datasciencebr/rosie. Would that be interesting (in terms of project goals) to have such data being showed by graphs in a open, on-premise graph solution such as Grafana?
Personally I see great advantages of showing the world the following fact:
Here is the corruption level of congress people 2 years ago, and here's what it looks like now.
I'm very happy to see the project active and would love to contribute.
cc @Irio

Hi, @oswaldoferreira — as far as I could understand your suggestion I can say these goals are currently discussed as the future of Jarbas. What do you think?

Hey @cuducos, thanks for the response!
I see you guys have a way ahead discussion there, that's great!
My proposal was generating those graphs with an existing (open-source) platform without having to actually code the Frontend and sketch the whole UX for it. Basically we'd use a Python library (on Jarbas or Rosie) to speak to our Grafana server and have a monitor-like view like that:

This might be more interesting to buildup all kinds of metrics (for people that already know what Serenata is all about) than trying to please the uninformed user.

@cuducos have you thought about that?
Would be nice to have some more stats, more real-timeish numbers about the expenses.
I would love to help with that.

Does the project has a central place to generate the stats? can you please point where and how are the numbers stored?
For example, can you please show me where the reimbursements are stored?

Datasets with official data are generates with the serenata-toolbox (linked in the README.md) and stored locally in CSV format
Suspicions data is generated by Rosie (in this repo) and stored locally in CSV format
All this data is exported for search and visualization over the web in Jarbas (in this repo) and stored in PostgreSQL

@cuducos I successfully downloaded the toolbox, the datasets and took a look at some of the CSV files. I could start myself generating some graphs, but would be nice to clarify some doubts before.

Using a tool like Grafana (or similar) only makes sense if Rosie would be online and making calculations throughout the year. But I already understood that it is run in batches. Therefore the generated data also comes in batches. So if I set up some metric tool, it would be "frozen" for a few months. Am I correct?
But still, even tho a real-time tool wouldn't be needed, some semi-automated metrics could be useful, right? Automated reports with graphs about the number acquired like expenses, reimbursements, numbers generated by Rosie about the suspicious data. Those numbers and graphs could be exported to some static website with a semi-automated pipeline of deployment. What are your thoughts on that?

That's kinda easy to do, as long as I know exactly what to do and where to look and often that's the tricky part.

Using a tool like Grafana (or similar) only makes sense if Rosie would be online and making calculations throughout the year. But I already understood that it is run in batches. Therefore the generated data also comes in batches. So if I set up some metric tool, it would be "frozen" for a few months. Am I correct?

Yes. We don't have money to keep a server up do run Rosie periodically.

But still, even tho a real-time tool wouldn't be needed, some semi-automated metrics could be useful, right? Automated reports with graphs about the number acquired like expenses, reimbursements, numbers generated by Rosie about the suspicious data. Those numbers and graphs could be exported to some static website with a semi-automated pipeline of deployment. What are your thoughts on that?

I like that : ) In addition there's some points on dataviz on #282 that might be interesting ; )

Hum, I read the related issue but apparently, his work was in the wrong direction and the failure to keep the development, having the ticket closed be inactivity. Which kinda brings me to square zero.
But I have an idea, the numbers displayed on the project's homepage. Is there any document or procedure to re-generate it?

I read the related issue but apparently, his work was in the wrong direction and the failure to keep the development, having the ticket closed be inactivity.

I do think this is not the really important thing there. But from our experience, some comments on how to ponder data is what I meant ; )

the numbers displayed on the project's homepage. Is there any document or procedure to re-generate it?

They are the result of several explorations registered as Jupyter notebooks.

Adding @thiagoalmeidasa to the thread.
We were discussing on how to add stats and graphs with the least impact or adding too many new components to the current stack. Our suggestion is to use Bokeh in some stats/ in Jarbas for example.

Our suggestion is to use Bokeh in some stats/ in Jarbas for example.

Will you use Bokeh to generate Django views or to generate static files? Maybe it's a good idea to create some API endpoints for the stats, and have the dataviz as a static site served directly through nginx (or even hosted somewhere else such as GitHub Pages, for example).

Yes, API endpoints are included! It's one way to pass the data to Bokeh.


update info persisting serviceaccount

this updates disable rbac enhancement, as now we persist pre-existing
pipeline serviceaccount with update or rbac disable.
ref: https://issues.redhat.com/browse/SRVKP-2256
Signed-off-by: Pradeep Kumar<EMAIL_ADDRESS>

cc: @savitaashture


Doesn't work if imported with ES6 style

My script not loaded properly if I use ES6 import style instead of CommonJS.
index.js
import { OnGameModeInit } from 'samp-node-lib';

OnGameModeInit(() => console.log('Gamemode loaded from root index.js'));

But if you do:
const { OnGameModeInit } = require('samp-node-lib');

OnGameModeInit(() => console.log('Gamemode loaded from root index.js'));

It would loaded correctly.

@rsetiawan7
this import style only works in TypeScript

@rsetiawan7 this import style only works in TypeScript

That's not true. The import syntax technically has nothing to do with TypeScript. It's an ECMAScript 2015 (ES6) language feature that was implemented by TypeScript early on, but has since become a native JavaScript feature.
Node.js started supporting the new ES6 modules behind an experimental flag back in 8.9.0, and considered the implementation stable in version 12.
At the time of creating this issue, the Node.js version used in the plugin was 10.19.1, so ES6 modules were only supported with the flag --experimental-modules back then (which I can't seem to successfully set with the plugin's configuration). It's quite possible that OP didn't know about this and maybe something there is broken, too.

If you (the OP, or someone from the future stumbling over this issue) would like to use ES6 modules here, the newer versions of the plugin support it, you just have to use the .mjs file ending for your entry file to signal Node that you intend to use ES6 modules.


[regression from 0.10] Consecutive footnote refs fail to parse correctly

Consider the following markdown:
Lorem ipsum.[^a][^b]

[^a]: Foo
[^b]: Bar

Which on GitHub, renders thus:
Lorem ipsum.^a
With pulldown-cmark v0.9.6, these were correctly parsed as two consecutive footnote references:
➜  cargo run -- --events --enable-footnotes < in.md
   Compiling pulldown-cmark v0.9.6 (/home/zoni/Workspace/pulldown-cmark)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.61s
     Running `/home/zoni/Workspace/pulldown-cmark/target/debug/pulldown-cmark --events --enable-footnotes`
0..21: Start(Paragraph)
0..12: Text(Borrowed("Lorem ipsum."))
12..16: FootnoteReference(Borrowed("a"))         // <--- footnote ref a
16..20: FootnoteReference(Borrowed("b"))         // <--- footnote ref b
0..21: End(Paragraph)
22..32: Start(FootnoteDefinition(Borrowed("a")))
28..31: Start(Paragraph)
28..31: Text(Borrowed("Foo"))
31..32: SoftBreak
28..31: End(Paragraph)
22..32: End(FootnoteDefinition(Borrowed("a")))
32..42: Start(FootnoteDefinition(Borrowed("b")))
38..42: Start(Paragraph)
38..41: Text(Borrowed("Bar"))
38..42: End(Paragraph)
32..42: End(FootnoteDefinition(Borrowed("b")))
EOF

With pulldown-cmark 0.11 (v0.11.0-44-g4e9bc2c),  this fails to resolve both footnote references correctly. Notably, it fails on both the old:
➜  cargo run -- --events --enable-old-footnotes < in.md
   Compiling pulldown-cmark v0.11.0 (/home/zoni/Workspace/pulldown-cmark/pulldown-cmark)
   Compiling pulldown-cmark-escape v0.11.0 (/home/zoni/Workspace/pulldown-cmark/pulldown-cmark-escape)
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.63s
     Running `/home/zoni/Workspace/pulldown-cmark/target/debug/pulldown-cmark --events --enable-old-footnotes`
0..21: Start(Paragraph)
0..12: Text(Borrowed("Lorem ipsum."))
12..13: Text(Borrowed("["))                    // <---- footnote ref a incorrectly parsed as text
13..15: Text(Borrowed("^a"))
15..16: Text(Borrowed("]"))
16..20: FootnoteReference(Borrowed("b"))       // <---- footnote ref b
0..21: End(Paragraph)
22..42: Start(FootnoteDefinition(Borrowed("a")))
28..42: Start(Paragraph)
28..31: Text(Borrowed("Foo"))
31..32: SoftBreak
32..36: FootnoteReference(Borrowed("b"))
36..41: Text(Borrowed(": Bar"))
28..42: End(Paragraph)
22..42: End(FootnoteDefinition)
EOF

As well as the new (GFM) footnote parser:
➜  cargo run -- --events --enable-footnotes < in.md
    Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.07s
     Running `/home/zoni/Workspace/pulldown-cmark/target/debug/pulldown-cmark --events --enable-footnotes`
0..21: Start(Paragraph)
0..12: Text(Borrowed("Lorem ipsum."))
12..13: Text(Borrowed("["))                    // <---- footnote ref a incorrectly parsed as text
13..15: Text(Borrowed("^a"))
15..16: Text(Borrowed("]"))
16..20: FootnoteReference(Borrowed("b"))
0..21: End(Paragraph)
22..32: Start(FootnoteDefinition(Borrowed("a")))
28..32: Start(Paragraph)
28..31: Text(Borrowed("Foo"))
28..32: End(Paragraph)
22..32: End(FootnoteDefinition)
32..42: Start(FootnoteDefinition(Borrowed("b")))       // <---- footnote ref b
38..42: Start(Paragraph)
38..41: Text(Borrowed("Bar"))
38..42: End(Paragraph)
32..42: End(FootnoteDefinition)
EOF

There also appears to be a difference in the footnote definition between 0.9. and 0.11 using the "old footnotes" behavior. I'd expect them to still produce the same footnote definitions, but 0.11 returns an incorrect text for footnote definition B here:
On 0.9:
32..42: Start(FootnoteDefinition(Borrowed("b")))
38..42: Start(Paragraph)
38..41: Text(Borrowed("Bar"))
38..42: End(Paragraph)
32..42: End(FootnoteDefinition(Borrowed("b")))

On 0.11:
32..36: FootnoteReference(Borrowed("b"))
36..41: Text(Borrowed(": Bar"))
28..42: End(Paragraph)
22..42: End(FootnoteDefinition)

(Note the text returns : Bar instead of `Bar).
The new footnote parser in 0.11 does return Text(Borrowed("Bar")) for footnote definition b though.

@notriddle this is probably of interest to you, having implemented https://github.com/pulldown-cmark/pulldown-cmark/pull/654 and fixed various regression findings of a similar nature.


"Unable to download updates, Ensure the software is correctly installed"

Describe the bug
As soon as I parked after a drive today I got a red alert message saying:
"Unable to download updates, Ensure the software is correctly installed"
As far as I know I'm running the latest stock OP, so not sure why this message is even coming up.
How to reproduce or log data
Drive, park.
Expected behavior
Not to display this message. Especially when there is no available update to begin with.
Device/Version information (please complete the following information):

Device: Comma Two
Dongle ID: cd21d47a9d46bdf
Route: cd21d47a9d46bdf3|2021-05-27--16-43-41--0
Timestamp: at the end after I turned off my car
Version: 0.8.4
Car make/model: 2021 Toyota Corolla Hybrid

Additional context

Describe the bug
As soon as I parked after a drive today I got a red alert message saying:
"Unable to download updates, Ensure the software is correctly installed"
As far as I know I'm running the latest stock OP, so not sure why this message is even coming up.
How to reproduce or log data
Drive, park.
Expected behavior
Not to display this message. Especially when there is no available update to begin with.
Device/Version information (please complete the following information):

Device: Comma Two
Dongle ID: cd21d47a9d46bdf
Route: cd21d47a9d46bdf3|2021-05-27--16-43-41--0
Timestamp: at the end after I turned off my car
Version: 0.8.4
Car make/model: 2021 Toyota Corolla Hybrid

Additional context

So is my Camry.  I thought it was only me.

This happened to me too, from what I saw on the Comma discord, it's a known issue that's actively being fixed.

It seems they fixed it this morning and pushed a hotfix to everyone.


Proposal: BLS serialization tests

BLS serialization tests
Background

The latest IETF BLS standard draft (04) uses ZCash's point representations as the serialization format.
We used to have an old https://github.com/ethereum/eth2.0-specs/blob/v0.9.0/specs/bls_signature.md#point-representations doc as the explainer of the Zcash docs. But it was deleted since we expected the IETF BLS standard would define it more formally.
Here is a good summary of the different cases of 3 MSBs of byte 0 in compressed format (see the "ZCash semantics" column): https://github.com/pairingwg/bls_standard/issues/16.
We currently don't have a test suite for BLS compression/decompression tests.

Proposed new test suite
The input and output of our BLS APIs are all in minimal-pubkey-size form (compressed 48-byte pubkey and 96-byte signature). So the functions to test would be:
def compress_G1(decompressed_pubkey: bytes96) -> bytes48

input:

decompressed_pubkey: bytes96

output:

compressed_pubkey: (i) bytes48 or (ii) empty for the invalid cases.

def decompress_G1(compressed_pubkey: bytes48) -> bytes96

input:

compressed_pubkey: bytes48

output:

decompressed_pubkey: (i) bytes96 (ii) empty for the invalid cases.

def compress_G2(decompressed_signature: bytes192) -> bytes96

input:

decompressed_signature: bytes192

output:

compressed_signature: (i) bytes96 (ii) empty for the invalid cases.

def decompress_G2(compressed_signature: bytes96) -> bytes192

input:

compressed_signature: bytes96

output:

decompressed_signature: (i) bytes192 (ii) empty for the invalid cases.

Discussions
1. Are the APIs available?

1.1. I naively assumed that the BLST binding does provide these APIs for all supported languages. Could the client teams help check if it's true? /cc @kirk-baird @michaelsproul @benjaminion @mratsim @nisdas and @dot-asm
1.2. Do your compression and decompression APIs include subgroup membership checking?

2. Did the fuzzing already cover the 3-MSBs edge cases of BLS tests?
/cc @zedt3ster
3. Do you think it would help to reduce the consensus error risks?
/cc @JustinDrake @CarlBeek

@hwwhww For testing compressing/decompressing of G1/G2 points, the Go API in BLST does have support for this so its not an issue on our end. Serialization test format looks good to me :+1:

1.1. I naively assumed that the BLST binding does provide these APIs for all supported languages.

The group check is an expensive operation, and it's argued that application is entitled for a choice when to perform it. Primarily because there are situations when it's possible to perform multiple checks in parallel. In other words blst deserialization/uncompression subroutines don't perform group checks, and it's application's responsibility to either make explicit in-group-check call right after deserialization, or pass perform-group-checks-as-you-go flags to higher level procedures and utilize parallelism whenever possible.
Speaking of serialization format in more general terms. As data is deserialized and converted into internal representation format, it implicitly gets modulo reduced. In other words deserialization procedure can handle non-reduced input seamlessly. But it's only natural to assume that if input is not reduced, then somebody is trying to mess with you. For this reason first thing the [blst] deserialaztion procedure does is to ensure that input is fully reduced. However, this is not actually specified, and a formal concern can be and even was raised. In other words, while we are at it, it would be only appropriate to explicitly specify that input is expected to be fully reduced and provide corresponding test vector.

1.1 The C API that we use has support for the decompression/uncompression from Zcash
1.2 We do infinity checks and subgroup checks after decompression and skip those at verification because we do a lot of verification with the same public key so no need to pay an expensive subgroup check every time.

These APIs are all available in Apache Milagro Rust and could trivially be added to milagro_bls.
With respect to the subgroup checking in lighthouse we do that for PublicKeys at serialization time and Signatures at verification time. So it may not be on by default for lighthouse but can easily be added to tests. So happy eitherway if we are to include or not include the subgroup checks.

From a fuzzing perspective, the existing BLS work (available here) included the 3 MSBs but was only aimed at the compressed version (i.e. MSB0 = 1)

Here is a case from November 2019 where there was an infinity bit set and we didn't check properly that the rest of the bits were 0: https://github.com/status-im/nimbus-eth2/issues/555
This was before we skipped the Ethereum signature for testing so it's from one of the old test vectors.

Close?
https://github.com/ethereum/bls12-381-tests includes decompression tests (cc @asanso). Compression can be done by clients via round-trip tests to confirm internal consistency.


All items are "unknown"

The only file type shown is "unknown"
I have rescanned the cache and the solution remains, I have purged the dump and rescanned and the same issue persists
Screenshot:

I have some things from chrome cache show up as png, otherwise same issue. could it be something specific to mac version of discord?

Has anyone solved this yet?

take a guess

I have faced the same issue while using the macOS version. However, it works perfectly on Windows.

I have faced the same issue while using the macOS version. However, it works perfectly on Windows.
I guess mac has somehow encrypted the cache files

seems like a very aPple thing to do, same problem

not sure how to go about fixing it, the code is an enigma to me at this point, it would greatly benefit from a total rewrite, as well as finding some documentation on how the cache files of chromium based browsers work.


Update Crossmatch with Exact (yes/no) search option

Motivation for changes:

Add functionality for non-Exact searching to crossmatch plugin instead of only exact matches

Detailed changes:

if Exact: no is specified in config then "if v2 in v1:" will be used for matching instead
if Exact: yes is specified or is not in config then the default matching is used "if v1 == v2:"

Addressed issues:

Fixes # .  (N/A)

Config usage if relevant (new plugin or updated schema):
---  Test / Example config  ---
tasks:
  hasitleaked:
    make_html:
      file: ~/thefile.html
    crossmatch:
      from:
        - csv:
            url: file:///home/flexget/ss.csv
            values:
              title: 1
              url: 2
      fields:
        - title
      action: accept
      exact: no
    rss:
      url: http://hasitleaked.com/leakedfeed/

Log and/or tests output (preferably both):
  ---  Exact not specified in config  ---
2016-09-28 15:08 VERBOSE  manager                       Creating new database /home/flexget/db-config.sqlite - DO NOT INTERUPT ...
2016-09-28 15:09 VERBOSE  details       hasitleaked     Produced 20 entries.
2016-09-28 15:09 VERBOSE  details       hasitleaked     Summary - Accepted: 0 (Rejected: 0 Undecided: 20 Failed: 0)
2016-09-28 15:09 VERBOSE  make_html     hasitleaked     Writing output html to /home/flexget/thefile.html
  ---  "Exact: yes" specified in config  ---
2016-09-28 15:09 VERBOSE  task_queue                    There are 1 tasks to execute. Shutdown will commence when they have completed.
2016-09-28 15:09 VERBOSE  details       hasitleaked     Produced 20 entries.
2016-09-28 15:09 VERBOSE  details       hasitleaked     Summary - Accepted: 0 (Rejected: 0 Undecided: 20 Failed: 0)
2016-09-28 15:09 VERBOSE  make_html     hasitleaked     Writing output html to /home/flexget/thefile.html
  ---  "Exact: no" specified in config  ---
2016-09-28 15:09 VERBOSE  task_queue                    There are 1 tasks to execute. Shutdown will commence when they have completed.
2016-09-28 15:09 VERBOSE  details       hasitleaked     Produced 20 entries.
2016-09-28 15:09 VERBOSE  task          hasitleaked     ACCEPTED: `Loscil : Monument Builders` by crossmatch plugin because intersects with Monument on field(s) title
2016-09-28 15:09 VERBOSE  details       hasitleaked     Summary - Accepted: 1 (Rejected: 0 Undecided: 19 Failed: 0)
2016-09-28 15:09 VERBOSE  make_html     hasitleaked     Writing output html to /home/flexget/thefile.html

I have updated the pull request, changed from using Fuzzy to using Exact as suggested

thanks, wanna update the wiki?


ComfyUI renamed folder "unet" into "diffusion_models"

This https://github.com/comfyanonymous/ComfyUI/commit/4f7a3cb6fbd58d7546b3c76ec1f418a2650ed709 breaks the node loading, I think the only fix needed is to rename the dict entry, but you may want to add a check for backward compatibility.
Cannot import ComfyUI\custom_nodes\ComfyUI-GGUF module for custom nodes: 'unet'

Fixed with fallback, now the .gguf files won't show up in the normal unet loader either lol.

Nice, thanks.


fixed hover effect causing unwantd movement @nirmalyax

#123 fixed the unwanted movement of other cards due to hover effect.

your welcome 👍🏻


New package: Muse.MuseHub version <IP_ADDRESS>0

Checklist for Pull Requests

[x] Have you signed the Contributor License Agreement?
[x] Is there a linked Issue?
Resolve #156111

Manifests

[x] Have you checked that there aren't other open pull requests for the same manifest update/change?
[x] This PR only modifies one (1) manifest
[x] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[x] Does your manifest conform to the 1.6 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

For moderators
This account is automated by Github Actions and the source code was created by CoolPlayLin. If you have any questions about any pull request, don't hesitate to ping Exorcism0666.

[!warning]
With the new version of Komac, numerous Pull Requests may contain bugs or unwanted elements. If such issues arise, please tag russellbanks so that these bugs can be addressed in future updates.

[!important]
Please carefully review these Pull Request before merging. If it is a Pull Request for removing incorrect content and the URLs are issue, free upon manual checking, please close this Pull Request directly. (It is best to inform Exorcism0666 of the closure.)

良い一日をお過ごしください！

Verify: This is a tray-based application.


getObjectNames() to return object id as a single string

Can I send a PR? :smile:

sure, please, go ahead
Thanks ;)
El 14 jul. 2018 23:18, Ana María Martínez Gómez<EMAIL_ADDRESS>escribió:
Can I send a PR? 😄
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.


Fix retrys for API gateway so they will work reasonably by default

This change makes API gateway work properly for me.  Without it I get timeouts.  Please see
https://github.com/boto/boto3/issues/876

Current coverage is 97.62% (diff: 100%)

Merging #1071 into develop will not change coverage

@@            develop      #1071   diff @@
==========================================
  Files            44         44
  Lines          6936       6936
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits           6771       6771
  Misses          165        165
  Partials          0          0

Powered by Codecov. Last update e079c0d...d129987

I think this may need to be something people will opt in to.  This has come up a few times, but at a rate of 2 calls per minute, this gets very close just looking like botocore has hung (or at least exhibits the same type of behavior).
I would propose we get the configurable retries support added to botocore so that people can tune these numbers as they need.


[FLINK-14490][table] Add methods for interacting with temporary objects

What is the purpose of the change
This PR adds methods for interacting with temporary objects as described in FLIP-64:
https://cwiki.apache.org/confluence/display/FLINK/FLIP-64%3A+Support+for+Temporary+Objects+in+Table+module
Verifying this change
This change added tests.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? to be done separately (see https://issues.apache.org/jira/browse/FLINK-14486)

Thanks for this important API refactoring. The code changes look mostly good but we should definitely further improve the JavaDocs to avoid any confusion for our existing and future users. We should also update the website documentation and add good release notes to JIRA when closing this issue. This change will annoy existing users. We need to communicate the reasons for these changes.

Thank you @bowenli86 @twalthr @zjuwangg for the reviews.
I did first pass over your comments. Still need to apply a few remaining comments.

Hi Dawid, I was only able to review the last five commits as I don't really know much about planner.
This PR, as well as several individual commits, is quite huge, and it makes really hard to review and follow. Would be nice to break such good amount of work down into several smaller PRs next time.
would be good to have your reviews if you have time. @KurtYoung @JingsongLi @xuefuz

I tried to address all your comments @KurtYoung @JingsongLi @bowenli86
Could you have another look?

Thanks for the reviews. Merging


cfscrape cannot solve captchas

Hello! Is there any chance that somebody can help me?
The server is a fresh instance set up specially for the test. Ubuntu 19.04 with nodejs installed.
None of the python versions(2.7, 3.7) seems to solve the issue.
Thanks for any help!
Just in case I've attached the output from terminal

Version number
Run pip show cfscrape and paste the output below:
Name: cfscrape
Version: 2.0.7
Summary: A simple Python module to bypass Cloudflare's anti-bot page. See https://github.com/Anorov/cloudflare-scrape for more information.
Home-page: https://github.com/Anorov/cloudflare-scrape
Author: Anorov
Author-email<EMAIL_ADDRESS>License: UNKNOWN
Location: /usr/local/lib/python2.7/dist-packages
Requires: requests
Required-by:
Code snippet experiencing the issue
import cfscrape
scraper = cfscrape.create_scraper()
print scraper.get("https://www.enotes.com/topics/alpha/").content
Complete exception and traceback
Traceback (most recent call last):
File "test.py", line 5, in
print (scraper.get("https://www.enotes.com/topics/alpha/").content)  # => "..."
File "/usr/local/lib/python2.7/dist-packages/requests/sessions.py", line 546, in get
return self.request('GET', url, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/cfscrape/init.py", line 124, in request
self.handle_captcha_challenge(resp, url)
File "/usr/local/lib/python2.7/dist-packages/cfscrape/init.py", line 147, in handle_captcha_challenge
raise CloudflareCaptchaError(error, response=resp)
cfscrape.CloudflareCaptchaError: Cloudflare captcha challenge presented for www.enotes.com (cfscrape cannot solve captchas)
URL of the Cloudflare-protected page
https://www.enotes.com/topics/alpha/
URL of Pastebin/Gist with HTML source of protected page
https://pastebin.com/CXKapc0B

"OpenSSL version is lower than 1.1.1."
I am also having this issue with my scraper set up in pretty much the same way:
import cfscrape

scraper = cfscrape.create_scraper()
data = scraper.get(link).content
soup = BeautifulSoup(data, 'html.parser')

etc....

Except in my error, after the message:
"Cloudflare captcha challenge presented for .... (cfscrape cannot solve captchas)."
I get the message:
"Your OpenSSL version is lower than 1.1.1. Please upgrade your OpenSSL library and recompile Python."
I don't know what this has to do with the issue, if anything. Just pointing it out.

Cloudflare finds outdated/insecure ciphers when checking your SSL/TLS connection and sends a CAPTCHA in response to it.
The message is pretty clear. There are many duplicate issues with this message of which I have responded to in more detail. There are workarounds, etc.

anything regarding the initial issue? Thanks

Sorry @bajburtskii
I'm unable to reproduce the problem, please see https://github.com/Anorov/cloudflare-scrape/issues/264 for a possible workaround.
You might also try setting only a couple of ciphers to avoid the CAPTCHA:
import cfscrape
# One TLS v1.3 cipher and one TLS v1.2 cipher
cfscrape.DEFAULT_CIPHERS = 'TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES256-SHA384'

scraper = cfscraper.create_scraper()
print(scraper.get('https://www.enotes.com/topics/alpha/').text)

Otherwise for further assistance, feel free to generate a report with this script.
This must be ran from within the cloned cloudflare-scrape repo if you haven't pip installed cfscrape
git clone https://gist.github.com/pro-src/17654ec3f949b0b17bd1a4aa1b4136b9 temp
cp temp/report-enotes.py report.py

python2 report.py
python3 report.py

Thanks for the assistance!
Reports:
python2: http://dpaste.com/25M4JBY
python3: http://dpaste.com/07XJZDY
Setting only a couple of ciphers doesnt seem to help

The difference is in the signature algorithms extensions:

Signature algorithms hash: 94a2ca79b6ef36b1d692cbbfa5641952

Signature algorithms as reported by ssllabs (Mine)
(u'SHA256/ECDSA',
 u'SHA384/ECDSA',
 u'SHA512/ECDSA',
 u'Ed25519',
 u'Ed448',
 u'Unknown (0x8)/Unknown (0x9)',
 u'Unknown (0x8)/Unknown (0xa)',
 u'Unknown (0x8)/Unknown (0xb)',
 u'RSA_PSS_SHA256',
 u'RSA_PSS_SHA384',
 u'RSA_PSS_SHA512',
 u'SHA256/RSA',
 u'SHA384/RSA',
 u'SHA512/RSA',
 u'SHA224/ECDSA',
 u'SHA224/RSA',
 u'SHA224/DSA',
 u'SHA256/DSA',
 u'SHA384/DSA',
 u'SHA512/DSA')

Signature algorithms hash: 402014b899136c3fed09cd745dc01355

Signature algorithms as reported by ssllabs (Yours)
('SHA256/ECDSA',
 'SHA384/ECDSA',
 'SHA512/ECDSA',
 'Ed25519',
 'Ed448',
 'Unknown (0x8)/Unknown (0x9)',
 'Unknown (0x8)/Unknown (0xa)',
 'Unknown (0x8)/Unknown (0xb)',
 'RSA_PSS_SHA256',
 'RSA_PSS_SHA384',
 'RSA_PSS_SHA512',
 'SHA256/RSA',
 'SHA384/RSA',
 'SHA512/RSA',
 'SHA224/ECDSA',
 'SHA1/ECDSA',
 'SHA224/RSA',
 'SHA1/RSA',
 'SHA224/DSA',
 'SHA1/DSA',
 'SHA256/DSA',
 'SHA384/DSA',
 'SHA512/DSA')

Diff:
('SHA1/ECDSA',
 'SHA1/RSA',
 'SHA1/DSA')

Unfortunately, I don't know of a way to fix this, only suggestions.
I find it odd that none of the workarounds worked... I would try using a proxy to rule out an IP problem.
Trying upgrading openssl to v1.1.1c

Hey @bajburtskii,
I hate to ask the obvious here but based on the title... Do you get a CAPTCHA when visiting the URL in your web browser? cfscrape can't solve CAPTCHA as noted in the README.
Sorry, if that seems like a dumb question but if so, we can close this issue.

@pro-src
The script is run on the server so no web browser obviously, but a simple curl requests from the server does return a captcha page. If it's what you are asking about.

Basically, I just wanted to rule out the obvious. I don't get a CAPTCHA when using the browser or curl either so let's keep this open.
it's a very valid issue, thanks for raising it.

@pro-src  I tried my script again after upgrading my OpenSSL from '1.1.1.a' to '1.1.1.c', and got the same captcha result, but after putting the 'DEFAULT_CIPHERS' line you recommended for @bajburtskii, it fixed my captcha issue
# import cfscrape

# One TLS v1.3 cipher and one TLS v1.2 cipher
cfscrape.DEFAULT_CIPHERS = 'TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES256-SHA384'

# scraper = cfscrape.create_scraper()
# print(scraper.get('https://www.enotes.com/topics/alpha/').text)

just in case: I've update openssl version to the latest 1.1.1c but it didn't help.
new report is here http://dpaste.com/3TRXAHJ

I am unable to access "https://www.desidime.com" - it says blocked by Cloudflare.
Can anyone help regarding this?

Any news? Same problem here, using the latest versions of cfscrape and OpenSSL. Still getting the same captcha error, but when the website is accessed through a web browser, there is no captcha even in anonymous mode or ToR.
`# import cfscrape
One TLS v1.3 cipher and one TLS v1.2 cipher
cfscrape.DEFAULT_CIPHERS = 'TLS_AES_256_GCM_SHA384:ECDHE-ECDSA-AES256-SHA384'
scraper = cfscrape.create_scraper()
print(scraper.get('https://www.enotes.com/topics/alpha/').text)`
Tried the same and it didn't work... any other workaround?
Thanks!

when the website is accessed through a web browser, there is no captcha even in anonymous mode or ToR.

I tried the current stable version of both firefox and google-chrome on 3 different clean IPs and got a CAPTCHA for www.enotes.com/ and ww.enotes.com/topics/alpha/ every time. (Both HTTP and HTTPS).
Maybe try clearing your browser's history bud.

If I get the site via CURL it doesn't get to the captcha page, only to the "please wait 5 seconds" page.
If I get the site via python requests module (the same with cfscrape) it goes straight to the captcha page. I've tryied setting user agents, setting some headers but still doesn't help.
I've even updated to python 3.7.3 using OpenSSL 1.1.1c without any change. (On Python 3.7.3 with OpenSSL 1.0.8 it gave me the outdated OpenSSL message, so I updated it and now the outdated message doesn't appear).
Any suggestions?


auth_on_publish() not worked

Environment
VerneMQ Version: 1.10.1
OS: Ubuntu 18

Expected behavior
it is necessary to change the name of the topic for the public and subscribe
topic -> user_id/topic
Actual behaviour
auth_on_publish hook is not worked

Details
mysql_acl is worked
in auth_commons.lua :
function auth_on_publish(pub)
local ert
log.info("auth_on_publish is worked")
ert= pub.user_id.."/"..pub.topic
return {topic = ert}
end
I met LUA only a day ago.
I can be mistaken with conversion of lines.
But in the console.log file there are no lines from  log.info("auth_on_publish is worked")
Why the function auth_on_publish(pub) does not work?

Lua script not triggered #1173
I am not attentive.
Commented out lines
validate_acls(publish_acl)
validate_acls(subscribe_acl)
auth_cache.insert(mountpoint, client_id, username, publish_acl, subscribe_acl)
in cash_insert
What is this fraught with?


Styleflow editings

Thank you so much for your work.
Could you explain the next point in more detail? Step-by-step, please.

Note, that for Styleflow editings,
one need to save the output latent codes and load them over the official StyleFlow repository:
torch.save(latents, 'latents.pt')

Hi @GewGaw74!
In the paper we present 4 editing techniques: InterFaceGAN, GANSpace, SeFa, and StyleFlow.
While I've incorporated the first 3 editing techniques into the repository, StyleFlow is currently not available as part of this repository.
In order to use the StyleFlow repository to edit your Image, you need to:

Invert the image into a latent code using e4e (in the notebook for example, the latents variable holds the inverted code.
Save the latent code (hence the line you mentioned, torch.save(..)).
Download the latents.pt file from the notebook environment.
Go to the official StyleFlow repository.
Use the official repo to edit the image based on the inferred latent code.


Bring UI for icon/flyout enhancements done in EarTrumpet

Since most of the UI is based on EarTrumpet we should backport all of their updates to UI since September 2017.
Might help with:

animation fluidity
light/dark theme support
better DPI support
tutorial window

Unfortunately I've stopped development of this app so I (most probably) won't be looking at sorting this personally. Anyone, feel free to contribute a PR/create a fork.
More info in #23


Chemistry Metal Foam + Smoke looping interaction

Description

Make a cryo beaker containing the reagents for metal foam and smoke. Additionally, you can add other stuff like uncombined clf3 to make explosions.
When you throw the cryobeaker, it releases liquid metal foam. The liquid metal foam then causes people it hits to release smoke. The smoke causes liquid metal foam, and this bounces back and forth until you run out of reagents. Although I am not 100% sure if this is how it works since it seems to often create less foam than it seems like it should.
I tested this on localhost and it seemed to work fine (powerful, about as OP as ClF3 reagent smoke, but I thought it was working as intended). However, when it hit a ton of people on the server it seemed to bug out a ton (looped waaaay too much before stopping; lagged the server for a little bit). I am not sure what happened as I have tried it with a bunch of Urist McHands in a line and I don't think I ever got this result.
Screenshots

Additional context

Got it to work on localhost and have screenshots now. This is from 1 thrown cryo and the Urists arranged how they are pictured, I am pretty sure that is the exact mix I used for this effect.


docs: Updated contributing guidelines with the squash commit best practice

What this PR does / why we need it:
This PR adds the contribution guidelines for the authors to squash their commits every time the PR is ready for the merge. This would help the contributors to keep track of Git history in cleaner way. It also reduces overhead of the reviewers to squash the commits for each PR before the merge.
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Additional information
Special notes for your reviewer

Codecov Report

Merging #521 (b385da3) into main (839ea16) will decrease coverage by 3.44%.
The diff coverage is n/a.

:exclamation: Current head b385da3 differs from pull request most recent head ee7174f. Consider uploading reports for the commit ee7174f to get more accurate results

@@            Coverage Diff             @@
##             main     #521      +/-   ##
==========================================
- Coverage   67.32%   63.88%   -3.45%
==========================================
  Files          22       25       +3
  Lines        1732     1902     +170
==========================================
+ Hits         1166     1215      +49
- Misses        494      608     +114
- Partials       72       79       +7

Impacted Files
Coverage Δ

apis/infrastructure/v1beta1/byohost_webhook.go
78.57% <0.00%> (-8.93%)
:arrow_down:

agent/main.go
13.79% <0.00%> (-1.70%)
:arrow_down:

agent/registration/csr.go
66.03% <0.00%> (ø)

agent/registration/host_registrar.go
0.00% <0.00%> (ø)

agent/authenticator/bootstrap_authenticator.go
65.38% <0.00%> (ø)


Does it supports dev-extension building?

I mean using React.js on devtools.html page

I'm not exactly sure what you meant?

I'm not exactly sure what you meant?

Developers can also extend devtools like vue-devtools by using Chrome extension API.
https://developer.chrome.com/docs/extensions/mv3/devtools/

I'm not exactly sure what you meant?

Developers can also extend devtools like vue-devtools by using Chrome extension API.
https://developer.chrome.com/docs/extensions/mv3/devtools/

Good to know!
In this case, no, but a good idea for future development!

Good to know!
In this case, no, but a good idea for future development!

If you include devtools_page in your extension manifest, the extension will show the following permissions warning on install:

Read and change all your data on all websites

I wasted quite some time trying to figure out why I was getting this warning—it's not obvious that the devtools_page thing would trigger it.
I've opened a PR suggesting we add a comment about this:
https://github.com/lxieyang/chrome-extension-boilerplate-react/pull/124


Update contributing guideline regarding branches

Versions should now include the branch name.

If OK, I'll push the same change to https://github.com/softwarevidal/jax-rs-linker.

Or maybe we could just not deploy when we are not on master ? I don't know if we will need these snapshots to be public ?

Coverage remained the same at 67.27% when pulling 5e2a6ed0b8e0f1709eb02b7813cbfe9d6c5a0359 on contributing-update into 84fad64908912ed7707799f6257f6ffd12b35363 on master.

@jcgay true that. Wonder how feasible this approach is with Travis.

it depends, do you want all branches to be built by travis ?
if not, an easy answer comes with the travis configuration not to build anything but master :
branches:
  only:
    - master

or via http://blog.travis-ci.com/2014-03-05-repository-settings/
if yes, then you can add a simple script element checking the proper variables that travis gives you,
TRAVIS_BRANCH and TRAVIS_PULL_REQUEST like that :
script: "[ ${TRAVIS_PULL_REQUEST} = 'false' ] && mvn clean deploy"

if you want I can PR that.

All branches should be built, only master should be deployed.

WONTFIX du coup