Gateway status shows connecting even though the tunnels are up

In some of the CI failures, it was seen that e2e jobs related to [redundancy] were failing.
One common thing in the [redundancy] tests is that we check the gateway connected status which was reporting "connecting" instead of "connected"
2020-09-29T09:55:04.3807598Z [redundancy] Gateway fail-over tests
2020-09-29T09:55:04.3808366Z /go/src/github.com/submariner-io/submariner/test/e2e/redundancy/gateway_failover.go:17
2020-09-29T09:55:04.3808935Z   when any gateway node is configured
2020-09-29T09:55:04.3810029Z   /go/src/github.com/submariner-io/submariner/test/e2e/redundancy/gateway_failover.go:23
2020-09-29T09:55:04.3819400Z     should be reported to the Gateway API [It]
2020-09-29T09:55:04.3820616Z     /go/src/github.com/submariner-io/submariner/test/e2e/redundancy/gateway_failover.go:24
2020-09-29T09:55:04.3821064Z
2020-09-29T09:55:04.3822011Z     Failed to await Gateway on "cluster2-worker" with status active and connections UP. Gateway "cluster2-worker" exist but connection to cluster "cluster3" is not up yet
2020-09-29T09:55:04.3822907Z     Unexpected error:
2020-09-29T09:55:04.3823292Z         <*errors.errorString | 0xc0002da3b0>: {
2020-09-29T09:55:04.3823697Z             s: "timed out waiting for the condition",
2020-09-29T09:55:04.3823981Z         }
2020-09-29T09:55:04.3824259Z         timed out waiting for the condition
2020-09-29T09:55:04.3824725Z     occurred

However, when we look at the Submariner-Engine logs in cluster2, it shows that cluster3 was connected during the entire test-run and there was no disruption in the tunnel status.
2020-09-29T10:04:00.6893749Z [cluster2] I0929 09:55:11.147316       1 cableengine.go:101] Installing Endpoint cable "submariner-cable-cluster3-172-17-0-11"
2020-09-29T10:04:00.6895504Z [cluster2] I0929 09:55:11.147326       1 libreswan.go:166] Active connections: [submariner-cable-cluster1-172-17-0-4 submariner-cable-cluster3-172-17-0-11]
2020-09-29T10:04:00.6897754Z [cluster2] I0929 09:55:11.147333       1 cableengine.go:115] Cable "submariner-cable-cluster3-172-17-0-11" is already installed - not installing again

Looks like there is some bug in the code that updates the Gateway Status object.
Note: Although the failure is seen with Libreswan job, it might be applicable even for Strongswan driver.

JFYI, @manosnoam you might be hitting this scenario too in your setup.

https://github.com/submariner-io/submariner/pull/838/checks?check_run_id=1181338953

Engine logs before and after the test run.
Backend:"libreswan", BackendConfig:map[string]string(nil)}}
2020-09-29T10:04:00.6728900Z [cluster2] I0929 09:54:11.146912       1 cableengine.go:101] Installing Endpoint cable "submariner-cable-cluster3-172-17-0-11"
2020-09-29T10:04:00.6730866Z [cluster2] I0929 09:54:11.146917       1 libreswan.go:166] Active connections: [submariner-cable-cluster1-172-17-0-4 submariner-cable-cluster3-172-17-0-11]
2020-09-29T10:04:00.6732775Z [cluster2] I0929 09:54:11.146923       1 cableengine.go:115] Cable "submariner-cable-cluster3-172-17-0-11" is already installed - not installing again
2020-09-29T10:04:00.6734455Z [cluster2] I0929 09:54:11.146927       1 tunnel.go:108] Tunnel controller successfully installed Endpoint cable submariner-cable-cluster3-172-17-0-11 in the engine
2020-09-29T10:04:00.6741386Z [cluster2] I0929 09:54:11.148785       1 datastoresyncer.go:287] Processing local submariner Endpoint object: &v1.Endpoint{TypeMeta:v1.TypeMeta{Kind:"", APIVersion:""}, ObjectMeta:v1.ObjectMeta{Name:"cluster2-submariner-cable-cluster2-172-17-0-5", GenerateName:"", Namespace:"submariner-operator", SelfLink:"/apis/submariner.io/v1/namespaces/submariner-operator/endpoints/cluster2-submariner-cable-cluster2-172-17-0-5", UID:"f512e538-711e-44df-9a41-53c2f025734a", ResourceVersion:"1704", Generation:1, CreationTimestamp:v1.Time{Time:time.Time{wall:0x0, ext:63736969812, loc:(*time.Location)(0x2157fa0)}}, DeletionTimestamp:(*v1.Time)(nil), DeletionGracePeriodSeconds:(*int64)(nil), Labels:map[string]string(nil), Annotations:map[string]string(nil), OwnerReferences:[]v1.OwnerReference(nil), Finalizers:[]string(nil), ClusterName:"", ManagedFields:[]v1.ManagedFieldsEntry(nil)}, Spec:v1.EndpointSpec{ClusterID:"cluster2", CableName:"submariner-cable-cluster2-172-17-0-5", Hostname:"cluster2-worker", Subnets:[]string{"<IP_ADDRESS>/16", "<IP_ADDRESS>/16"}, PrivateIP:"<IP_ADDRESS>", PublicIP:"", NATEnabled:false, Backend:"libreswan", BackendConfig:map[string]string(nil)}}
2020-09-29T10:04:00.6748525Z [cluster2] I0929 09:54:11.148827       1 kubernetes.go:370] In SetEndpoint: &types.SubmarinerEndpoint{Spec:v1.EndpointSpec{ClusterID:"cluster2", CableName:"submariner-cable-cluster2-172-17-0-5", Hostname:"cluster2-worker", Subnets:[]string{"<IP_ADDRESS>/16", "<IP_ADDRESS>/16"}, PrivateIP:"<IP_ADDRESS>", PublicIP:"", NATEnabled:false, Backend:"libreswan", BackendConfig:map[string]string(nil)}}
2020-09-29T10:04:00.6751370Z [cluster2] I0929 09:54:11.150560       1 kubernetes.go:398] Endpoint "cluster2-submariner-cable-cluster2-172-17-0-5" matched what we received from datastore - not updating
2020-09-29T10:04:00.6753144Z [cluster2] I0929 09:54:11.152444       1 datastoresyncer.go:271] The updated submariner Endpoint "cluster1" is not for this cluster - skipping updating the datastore
2020-09-29T10:04:00.6754635Z [cluster2] I0929 09:54:11.153638       1 datastoresyncer.go:271] The updated submariner Endpoint "cluster3" is not for this cluster - skipping updating the datastore
2020-09-29T10:04:00.6756625Z [cluster2] I0929 09:54:12.182768       1 kubernetes.go:264] UpdateFunc in WatchEndpoints called
2020-09-29T10:04:00.6757351Z [cluster2] I0929 09:54:12.182798       1 kubernetes.go:264] UpdateFunc in WatchEndpoints called
2020-09-29T10:04:00.6760109Z [cluster2] I0929 09:54:12.182806       1 datastoresyncer.go:387] In reconcileEndpointCRD: &types.SubmarinerEndpoint{Spec:v1.EndpointSpec{ClusterID:"cluster1", CableName:"submariner-cable-cluster1-172-17-0-4", Hostname:"cluster1-worker", Subnets:[]string{"<IP_ADDRESS>/16", "<IP_ADDRESS>/16"}, PrivateIP:"<IP_ADDRESS>", PublicIP:"", NATEnabled:false, Backend:"libreswan", BackendConfig:map[string]string(nil)}}
2020-09-29T10:04:00.6763065Z [cluster2] I0929 09:54:12.184732       1 datastoresyncer.go:435] Endpoint "cluster1-submariner-cable-cluster1-172-17-0-4" matched what we received from datastore - not updating
2020-09-29T10:04:00.6764309Z [cluster2] I0929 09:54:12.184764       1 kubernetes.go:264] UpdateFunc in WatchEndpoints called
2020-09-29T10:04:00.6766025Z [submariner]$ [cluster2] kubectl get pods --selector=app=submariner-routeagent -n submariner-operator -o jsonpath={.items[*].metadata.name}
2020-09-29T10:04:00.6767550Z [submariner]$ [cluster2] kubectl get pods --selector=app=submariner-routeagent -n submariner-operator -o jsonpath={.items[*].metadata.name}
2020-09-29T10:04:00.6769745Z [submariner]$ [cluster2] command kubectl --context=cluster2 get pods --selector=app=submariner-routeagent -n submariner-operator -o jsonpath={.items[*].metadata.name}
2020-09-29T10:04:00.6771518Z [submariner]$ [cluster2] kubectl --context=cluster2 get pods --selector=app=submariner-routeagent -n submariner-operator -o jsonpath={.items[*].metadata.name}
2020-09-29T10:04:00.6807605Z [cluster2] I0929 09:54:12.184769       1 datastoresyncer.go:387] In reconcileEndpointCRD: &types.SubmarinerEndpoint{Spec:v1.EndpointSpec{ClusterID:"cluster3", CableName:"submariner-cable-cluster3-172-17-0-11", Hostname:"cluster3-worker", Subnets:[]string{"<IP_ADDRESS>/16", "<IP_ADDRESS>/16"}, PrivateIP:"<IP_ADDRESS>", PublicIP:"", NATEnabled:false, Backend:"libreswan", BackendConfig:map[string]string(nil)}}
2020-09-29T10:04:00.6809548Z [cluster2] I0929 09:54:12.185914       1 kubernetes.go:180] UpdateFunc in WatchClusters called
2020-09-29T10:04:00.6810923Z [cluster2] I0929 09:54:12.185958       1 datastoresyncer.go:312] In reconcileClusterCRD: &types.SubmarinerCluster{ID:"cluster3", Spec:v1.ClusterSpec{ClusterID:"cluster3", ColorCodes:[]string{"blue"}, ServiceCIDR:[]string{"<IP_ADDRESS>/16"}, ClusterCIDR:[]string{"<IP_ADDRESS>/16"}, GlobalCIDR:[]string{}}}
2020-09-29T10:04:00.6813543Z [cluster2] I0929 09:54:12.186459       1 datastoresyncer.go:435] Endpoint "cluster3-submariner-cable-cluster3-172-17-0-11" matched what we received from datastore - not updating
2020-09-29T10:04:00.6815104Z [cluster2] I0929 09:54:12.187713       1 datastoresyncer.go:360] Cluster "cluster3" matched what we received from datastore - not updating
2020-09-29T10:04:00.6816209Z [cluster2] I0929 09:54:12.187735       1 kubernetes.go:180] UpdateFunc in WatchClusters called
2020-09-29T10:04:00.6816886Z [cluster2] I0929 09:54:12.187742       1 kubernetes.go:180] UpdateFunc in WatchClusters called
2020-09-29T10:04:00.6818289Z [cluster2] I0929 09:54:12.187746       1 datastoresyncer.go:312] In reconcileClusterCRD: &types.SubmarinerCluster{ID:"cluster1", Spec:v1.ClusterSpec{ClusterID:"cluster1", ColorCodes:[]string{"blue"}, ServiceCIDR:[]string{"<IP_ADDRESS>/16"}, ClusterCIDR:[]string{"<IP_ADDRESS>/16"}, GlobalCIDR:[]string{}}}
2020-09-29T10:04:00.6820269Z [cluster2] I0929 09:54:12.189304       1 datastoresyncer.go:360] Cluster "cluster1" matched what we received from datastore - not updating
2020-09-29T10:04:00.6821072Z [cluster2] I0929 09:54:42.182896       1 kubernetes.go:264] UpdateFunc in WatchEndpoints called
2020-09-29T10:04:00.6821756Z [cluster2] I0929 09:54:42.182923       1 kubernetes.go:264] UpdateFunc in WatchEndpoints called
2020-09-29T10:04:00.6824188Z [cluster2] I0929 09:54:42.182929       1 datastoresyncer.go:387] In reconcileEndpointCRD: &types.SubmarinerEndpoint{Spec:v1.EndpointSpec{ClusterID:"cluster1", CableName:"submariner-cable-cluster1-172-17-0-4", Hostname:"cluster1-worker", Subnets:[]string{"<IP_ADDRESS>/16", "<IP_ADDRESS>/16"}, PrivateIP:"<IP_ADDRESS>", PublicIP:"", NATEnabled:false, Backend:"libreswan", BackendConfig:map[string]string(nil)}}
2020-09-29T10:04:00.6826808Z [cluster2] I0929 09:54:42.185212       1 datastoresyncer.go:435] Endpoint "cluster1-submariner-cable-cluster1-172-17-0-4" matched what we received from datastore - not updating
2020-09-29T10:04:00.6828009Z [cluster2] I0929 09:54:42.185241       1 kubernetes.go:264] UpdateFunc in WatchEndpoints called
2020-09-29T10:04:00.6830473Z [cluster2] I0929 09:54:42.185246       1 datastoresyncer.go:387] In reconcileEndpointCRD: &types.SubmarinerEndpoint{Spec:v1.EndpointSpec{ClusterID:"cluster3", CableName:"submariner-cable-cluster3-172-17-0-11", Hostname:"cluster3-worker", Subnets:[]string{"<IP_ADDRESS>/16", "<IP_ADDRESS>/16"}, PrivateIP:"<IP_ADDRESS>", PublicIP:"", NATEnabled:false, Backend:"libreswan", BackendConfig:map[string]string(nil)}}
2020-09-29T10:04:00.6832665Z [cluster2] I0929 09:54:42.186059       1 kubernetes.go:180] UpdateFunc in WatchClusters called
2020-09-29T10:04:00.6833313Z [cluster2] I0929 09:54:42.186076       1 kubernetes.go:180] UpdateFunc in WatchClusters called
2020-09-29T10:04:00.6834731Z [cluster2] I0929 09:54:42.186083       1 datastoresyncer.go:312] In reconcileClusterCRD: &types.SubmarinerCluster{ID:"cluster1", Spec:v1.ClusterSpec{ClusterID:"cluster1", ColorCodes:[]string{"blue"}, ServiceCIDR:[]string{"<IP_ADDRESS>/16"}, ClusterCIDR:[]string{"<IP_ADDRESS>/16"}, GlobalCIDR:[]string{}}}
2020-09-29T10:04:00.6836940Z [cluster2] I0929 09:54:42.187152       1 datastoresyncer.go:435] Endpoint "cluster3-submariner-cable-cluster3-172-17-0-11" matched what we received from datastore - not updating
2020-09-29T10:04:00.6838493Z [cluster2] I0929 09:54:42.187870       1 datastoresyncer.go:360] Cluster "cluster1" matched what we received from datastore - not updating
2020-09-29T10:04:00.6839259Z [cluster2] I0929 09:54:42.187886       1 kubernetes.go:180] UpdateFunc in WatchClusters called
2020-09-29T10:04:00.6840728Z [cluster2] I0929 09:54:42.187890       1 datastoresyncer.go:312] In reconcileClusterCRD: &types.SubmarinerCluster{ID:"cluster3", Spec:v1.ClusterSpec{ClusterID:"cluster3", ColorCodes:[]string{"blue"}, ServiceCIDR:[]string{"<IP_ADDRESS>/16"}, ClusterCIDR:[]string{"<IP_ADDRESS>/16"}, GlobalCIDR:[]string{}}}
2020-09-29T10:04:00.6842660Z [cluster2] I0929 09:54:42.189338       1 datastoresyncer.go:360] Cluster "cluster3" matched what we received from datastore - not updating
2020-09-29T10:04:00.6843960Z [cluster2] I0929 09:55:11.134779       1 kubernetes.go:317] In SetCluster: &types.SubmarinerCluster{ID:"cluster2", Spec:v1.ClusterSpec{ClusterID:"cluster2", ColorCodes:[]string{"blue"}, ServiceCIDR:[]string{"<IP_ADDRESS>/16"}, ClusterCIDR:[]string{"<IP_ADDRESS>/16"}, GlobalCIDR:[]string{}}}
2020-09-29T10:04:00.6849001Z [cluster2] I0929 09:55:11.137137       1 kubernetes.go:345] Cluster "cluster2" matched what we received from datastore - not updating
2020-09-29T10:04:00.6855557Z [cluster2] I0929 09:55:11.147047       1 tunnel.go:95] Tunnel controller processing added or updated submariner Endpoint object: &v1.Endpoint{TypeMeta:v1.TypeMeta{Kind:"", APIVersion:""}, ObjectMeta:v1.ObjectMeta{Name:"cluster2-submariner-cable-cluster2-172-17-0-5", GenerateName:"", Namespace:"submariner-operator", SelfLink:"/apis/submariner.io/v1/namespaces/submariner-operator/endpoints/cluster2-submariner-cable-cluster2-172-17-0-5", UID:"f512e538-711e-44df-9a41-53c2f025734a", ResourceVersion:"1704", Generation:1, CreationTimestamp:v1.Time{Time:time.Time{wall:0x0, ext:63736969812, loc:(*time.Location)(0x2157fa0)}}, DeletionTimestamp:(*v1.Time)(nil), DeletionGracePeriodSeconds:(*int64)(nil), Labels:map[string]string(nil), Annotations:map[string]string(nil), OwnerReferences:[]v1.OwnerReference(nil), Finalizers:[]string(nil), ClusterName:"", ManagedFields:[]v1.ManagedFieldsEntry(nil)}, Spec:v1.EndpointSpec{ClusterID:"cluster2", CableName:"submariner-cable-cluster2-172-17-0-5", Hostname:"cluster2-worker", Subnets:[]string{"<IP_ADDRESS>/16", "<IP_ADDRESS>/16"}, PrivateIP:"<IP_ADDRESS>", PublicIP:"", NATEnabled:false, Backend:"libreswan", BackendConfig:map[string]string(nil)}}
2020-09-29T10:04:00.6860415Z [cluster2] I0929 09:55:11.147205       1 cableengine.go:92] Not installing cable for local cluster
2020-09-29T10:04:00.6861702Z [cluster2] I0929 09:55:11.147213       1 tunnel.go:108] Tunnel controller successfully installed Endpoint cable submariner-cable-cluster2-172-17-0-5 in the engine
2020-09-29T10:04:00.6868843Z [cluster2] I0929 09:55:11.147219       1 tunnel.go:95] Tunnel controller processing added or updated submariner Endpoint object: &v1.Endpoint{TypeMeta:v1.TypeMeta{Kind:"", APIVersion:""}, ObjectMeta:v1.ObjectMeta{Name:"cluster1-submariner-cable-cluster1-172-17-0-4", GenerateName:"", Namespace:"submariner-operator", SelfLink:"/apis/submariner.io/v1/namespaces/submariner-operator/endpoints/cluster1-submariner-cable-cluster1-172-17-0-4", UID:"968dc3e0-ddb2-4ebb-a561-a9fc3fd10d1d", ResourceVersion:"1706", Generation:1, CreationTimestamp:v1.Time{Time:time.Time{wall:0x0, ext:63736969812, loc:(*time.Location)(0x2157fa0)}}, DeletionTimestamp:(*v1.Time)(nil), DeletionGracePeriodSeconds:(*int64)(nil), Labels:map[string]string(nil), Annotations:map[string]string(nil), OwnerReferences:[]v1.OwnerReference(nil), Finalizers:[]string(nil), ClusterName:"", ManagedFields:[]v1.ManagedFieldsEntry(nil)}, Spec:v1.EndpointSpec{ClusterID:"cluster1", CableName:"submariner-cable-cluster1-172-17-0-4", Hostname:"cluster1-worker", Subnets:[]string{"<IP_ADDRESS>/16", "<IP_ADDRESS>/16"}, PrivateIP:"<IP_ADDRESS>", PublicIP:"", NATEnabled:false, Backend:"libreswan", BackendConfig:map[string]string(nil)}}
2020-09-29T10:04:00.6874954Z [cluster2] I0929 09:55:11.147256       1 cableengine.go:101] Installing Endpoint cable "submariner-cable-cluster1-172-17-0-4"
2020-09-29T10:04:00.6876684Z [cluster2] I0929 09:55:11.147264       1 libreswan.go:166] Active connections: [submariner-cable-cluster1-172-17-0-4 submariner-cable-cluster3-172-17-0-11]
2020-09-29T10:04:00.6878451Z [cluster2] I0929 09:55:11.147270       1 cableengine.go:115] Cable "submariner-cable-cluster1-172-17-0-4" is already installed - not installing again

To update the Gateway Status, refreshConnectionStatus in libreswan.go is called which executes /usr/libexec/ipsec/whack/--trafficstatus and parses the output line by line:
for scanner.Scan() {
 	line := scanner.Text()
 	// Line format: 006 #3: "submariner-cable-cluster3-172-17-0-8-0-0", type=ESP, add_time=1590508783, inBytes=0, outBytes=0, id='<IP_ADDRESS>'
 	components := strings.Split(line, "\"")
 	if len(components) == 3 {
 		activeConnections.Add(components[1])
 	}
 }

The it iterates the current endpoint connections to update the status based on whether or not all the subnet connections are reported by whack as active:
    ```

for j := range i.connections {
allConnected := true
remoteSubnets := extractSubnets(i.connections[j].Endpoint)
for lsi := range localSubnets {
for rsi := range remoteSubnets {
connectionName := fmt.Sprintf("%s-%d-%d", i.connections[j].Endpoint.CableName, lsi, rsi)
if !activeConnections.Contains(connectionName) {
allConnected = false
}
}
}
	if allConnected {
		i.connections[j].Status = subv1.Connected
	} else {
		// Pluto should be connecting for us
		i.connections[j].Status = subv1.Connecting
	}
}

So possibilities for it reporting the `Connecting` status:

- `whack` didn't report any or some subnet connections
- an output line from `whack` did not conform to the expected format and thus was dropped
- a connection name reported by `whack` did not match the expected name

We'll need debug output in `refreshConnectionStatus` to investigate further. I'll push a PR.

BTW - this is not related to redundancy as the tests never get to the point of initiating failover. This issue is only seen during the redundancy tests b/c they're the only ones that query the Gateway status.

We'll need debug output in refreshConnectionStatus to investigate further. I'll push a PR.

Thanks for pushing the PR @tpantelis. Let's hope its reproduced in CI and we get some pointers.
From the logs, we can see that all [datapath] tests were successful (so tunnels are proper). Only the tests where the Gateway connection is verified were reported as failed.

I was able to reproduce this issue locally in my KIND setup and noticed the following log message in cable driver.
I1006 16:03:08.823968       1 libreswan.go:145] Connection "submariner-cable-cluster1-172-17-0-5-0-1" not found in active connections obtained from whack: [submariner-cable-cluster1-172-17-0-5-0-2 submariner-cable-cluster1-172-17-0-5-1-2 submariner-cable-cluster1-172-17-0-5-2-0 submariner-cable-cluster1-172-17-0-5-2-1 submariner-cable-cluster3-172-17-0-7-1-0 submariner-cable-cluster3-172-17-0-7-1-2 submariner-cable-cluster1-172-17-0-5-0-0 submariner-cable-cluster1-172-17-0-5-2-2 submariner-cable-cluster3-172-17-0-7-0-2 submariner-cable-cluster3-172-17-0-7-1-1 submariner-cable-cluster1-172-17-0-5-1-1 submariner-cable-cluster3-172-17-0-7-0-0 submariner-cable-cluster3-172-17-0-7-2-0 submariner-cable-cluster1-172-17-0-5-1-0 submariner-cable-cluster3-172-17-0-7-0-1 submariner-cable-cluster3-172-17-0-7-2-1 submariner-cable-cluster3-172-17-0-7-2-2]
As you can see, we establish multiple connections to a remote cluster and one of the connections (i.e., submariner-cable-cluster1-172-17-0-5-0-1) was not in the active IPsec SA list obtained from whack.
When we look at the output of "whack --status", we can see the following
000 Total IPsec connections: loaded 18, active 17
000 State Information: DDoS cookies not required, Accepting new IKE connections
000 IKE SAs: total(2), half-open(0), open(0), authenticated(2), anonymous(0)
000 IPsec SAs: total(18), authenticated(18), anonymous(0)
One of the connections (i.e., submariner-cable-cluster1-172-17-0-5-0-1) is loaded but not active yet.
The status for this connection entry is as follows
000 "submariner-cable-cluster1-172-17-0-5-0-1": <IP_ADDRESS>/32===<IP_ADDRESS>[+S?C]...<IP_ADDRESS>[+S?C]===<IP_ADDRESS>/16; **prospective erouted**; eroute owner: #0
000 "submariner-cable-cluster1-172-17-0-5-0-1":     oriented; my_ip=unset; their_ip=unset; my_updown=ipsec _updown;
000 "submariner-cable-cluster1-172-17-0-5-0-1":   xauth us:none, xauth them:none,  my_username=[any]; their_username=[any]
000 "submariner-cable-cluster1-172-17-0-5-0-1":   our auth:secret, their auth:secret
000 "submariner-cable-cluster1-172-17-0-5-0-1":   modecfg info: us:none, them:none, modecfg policy:push, dns:unset, domains:unset, banner:unset, cat:unset;
000 "submariner-cable-cluster1-172-17-0-5-0-1":   policy_label:unset;
000 "submariner-cable-cluster1-172-17-0-5-0-1":   ike_life: 3600s; ipsec_life: 28800s; replay_window: 32; rekey_margin: 540s; rekey_fuzz: 100%; keyingtries: 0;
000 "submariner-cable-cluster1-172-17-0-5-0-1":   retransmit-interval: 500ms; retransmit-timeout: 60s;
000 "submariner-cable-cluster1-172-17-0-5-0-1":   initial-contact:no; cisco-unity:no; fake-strongswan:no; send-vendorid:no; send-no-esp-tfc:no;
000 "submariner-cable-cluster1-172-17-0-5-0-1":   policy: PSK+ENCRYPT+TUNNEL+UP+IKEV2_ALLOW;
000 "submariner-cable-cluster1-172-17-0-5-0-1":   v2-auth-hash-policy: none;
000 "submariner-cable-cluster1-172-17-0-5-0-1":   conn_prio: 32,16; interface: eth0; metric: 0; mtu: unset; sa_prio:auto; sa_tfc:none;
000 "submariner-cable-cluster1-172-17-0-5-0-1":   nflog-group: unset; mark: unset; vti-iface:unset; vti-routing:no; vti-shared:no; nic-offload:auto;
000 "submariner-cable-cluster1-172-17-0-5-0-1":   our idtype: ID_IPV4_ADDR; our id=<IP_ADDRESS>; their idtype: ID_IPV4_ADDR; their id=<IP_ADDRESS>
000 "submariner-cable-cluster1-172-17-0-5-0-1":   dpd: action:disabled; delay:0; timeout:0; nat-t: encaps:no; nat_keepalive:yes; ikev1_natt:both
000 "submariner-cable-cluster1-172-17-0-5-0-1":   newest ISAKMP SA: #0; newest IPsec SA: #0;

As you can see, its marked as "prospective erouted", which according to the following thread, implies that as soon as some traffic passes through the connection it will become enrouted.
So based on this, the following PR is pushed which instead of checking for all the connections, will just if one of the connection is present in the Active IPsec SAs and will mark the connection to the remote cluster as "connected"

@sridhargaddam is this Issue still relevant or reproducible?

@sridhargaddam is this Issue still relevant or reproducible?

@nyechiel After modifying the check in the cable-driver, I've not come across any datapath failure where tunnels were marked as connected but datapath failed. So we can close it.


overflow_integer using too many bits

This example using overflow_integer<T, native_overflow_tag> should be equivalent to this example which avoids using overflow_integer altogether. But the former fails to compile because a 64-digit integer is requested.

Updated examples:

failing
passing


Bump version to Quill 1.0?

Quill 1.0.0-beta.1 has been released and it contains many bug fixes. There are some breaking changes listed here: http://beta.quilljs.com/guides/upgrading-to-1-0/. Are there plans for a version bump soon?

I'm working on a pull request here: https://github.com/wifast/react-quill

I have already upgraded the Quill to 1.0.0-beta.2 in my pull request here:
https://github.com/zenoamaro/react-quill/pull/98

Hello Nazanin, I checked out your pull request and although it is working, it doesn't allow font family and font size customization like the previous version from what I can see. I also submitted a pull request here: https://github.com/zenoamaro/react-quill/pull/99, but I am still working out some bugs. However, it is for the most part complete, and you can check out the demo here: http://wifast.github.io/react-quill/

Hi Clement,
I do not see the clode blocks implemented in your demo.
So since we have a wrapper around Quill itself we can change the font
family and size customization to stat the same. But is that a requirement?
Either we can have another commit to make it work with previous font size
if it is.
On Thursday, May 26, 2016, Clement Hoang<EMAIL_ADDRESS>wrote:

Hello Nazanin, I checked out your pull request and although it is working,
it doesn't allow font family and font size customization like the previous
version from what I can see. I also submitted a pull request here: #99
https://github.com/zenoamaro/react-quill/pull/99, but I am still
working out some bugs. However, it is for the most part complete, and you
can check out the demo here: http://wifast.github.io/react-quill/
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/zenoamaro/react-quill/issues/93#issuecomment-222035448,
or mute the thread
https://github.com/notifications/unsubscribe/AGFV2CMfIR71beo9kpjoHC8F8i_XXH_yks5qFkKWgaJpZM4Icg5d
.

--
Best Regards,

Are you guys having slack channel for communication on this repo?

I see you upgraded to beta.3. I think we can merge my pull request first. Which will upgrade to beta.2 and support code blocks and then you merge yours on top of mine which will support your customizable fonts and also upgrade it to beta.3 beside my code block support. That would resolve all

Hi Nazanin, I'm not aware of any slack channel for communication at this point in time. In terms of whether it is required or not, I am simply following the behavior this project previously had. We should see if @zenoamaro has any input on this, and where he wants the direction of react-quill to go.

Sure, I also can put up another PR after you have merged your pull request only for code blocks if you are willing to merge your upgrade.

I'm looking forward to this! I really need this version of Quill.

Updates?

@MasahiroMorita @thomas-jeepe There is a working version I wrote located here: https://github.com/zenoamaro/react-quill/pull/99. However, it doesn't expose the API for settings custom formats yet.

Alright, thanks for the response

https://github.com/alexkrolick/react-quill
Added support for using modules to configure toolbar, formats, keyboard, etc.
@clemmy @MasahiroMorita @thomas-jeepe

Thanks to the great work of @clemmy and @alexkrolick, ReactQuill is now updated to Quill 1.0.
Closing this in favor of #113.


bugfixModify the method used to obtain the txnId

Proposed changes
Use MetaIdGenerator instead of the TransactionIdGenerator. Because the TransactionIdGenerator will record OP_SAVE_TRANSACTION_ID data in the editlog, when restoring the data, it will restore the data to CloudGlobalTransactionMgr, but CloudGlobalTransactionMgr is not supported in Cloud mode.

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall

run buildall

run p0

run buildall


Provide a public API for plugin authors in order to add deprecation warnings to builds

One of the great features of Build Scans is the ability of seeing deprecation warnings for my build.  Unfortunately, there isn't a public API to contribute to these warnings.
Historically, we relied on BuildOperationProgressEventEmitter which is very internal and already changing in future versions of the tool per https://github.com/gradle/gradle/commit/36157128988a0b980a729be074c63bcece0da1a2#diff-3e4a4167ab308c5595d823159fa43c783a9759a5bb09dc98b7038e87e6da391a
Another option is to use DeprecationLogger but it has very specific Gradle level DSL and also it has evolved over time and it is difficult for backwards compatibility when trying to build plugins
Expected Behavior
Ideally as plugin author I should be able to add a deprecation warning with similar context:

summary
removalDetails
advice
documentationUrl

In addition, shipping these deprecations to build scans would be a great to have in order to surface these to users
Current Behavior
As plugin author I have to rely on internal APIs, not ideal as the tool evolves and keeping backwards compatibility is challenging

Duplicate #15021


Feature request: submit url

In addition to uploading files, for certain assignments I'd love if students can enter a url to a webpage/file.
Ideally, markus would do fancy things like validate that the inputted string is a proper url and maybe even allow me to restrict which domains are acceptable.

Right now, students can definitely upload a text file that contains a URL. Graders can then visit the url when marking the assignment.
The fancy url checking and domain restrictions could be implemented as well in the future as well.


Updated Bazel Rust rules version

As of https://github.com/bazelbuild/rules_rust/commit/1fe23158e5316c17b2ee2a252ee7165c5d83cc93 the Bazel rust rules have been renamed from io_bazel_rules_rust to rules_rust. This PR updates the name here.

@dtolnay Hey, I'm not sure what the PR process is but I'd greatly appreciate it if you could take a look at this when you get a moment 🙏 😅

@dtolnay Hey, I'm not sure what the PR process is but I'd greatly appreciate it if you could take a look at this when you get a moment 🙏 😅


Stop logging speculative failures. Only log on genuine failures.

Adds an array to speculative info calls to collect the errors so that we only log when there are two.
Also just always tries both options, because extra rules probably just cause more bugs.

Travis!! Yarn!!


Error while passing composite primary key

I am trying to deploy a Cassandra source connector with the following properties:
{
"name": "test-source-connector",
"config": {
"connector.class": "com.datamountaineer.streamreactor.connect.cassandra.source.CassandraSourceConnector",
"connect.cassandra.key.space": "testdb",
"connect.cassandra.contact.points": "xxx.xx.xx",
"tasks.max": "5",
"connect.cassandra.port": "9042",
"connect.cassandra.kcql": "INSERT INTO test-topic SELECT * FROM test-table PK date,last_updated INCREMENTALMODE=TIMESTAMP",
"name": "test-source-connector",
"connect.cassandra.password": "cassandra",
"connect.cassandra.import.poll.interval": "5000",
"connect.cassandra.username": "cassandra"
}
}
I am getting the following error when I do so,
[2017-11-16 11:33:31,818] ERROR Task test-source-connector-0 threw an uncaught and unrecoverable exception (org.apache.kafka.connect.runtime.WorkerTask)
com.datastax.driver.core.exceptions.CodecNotFoundException: Codec not found for requested operation: [varchar <-> java.util.Date]
at com.datastax.driver.core.CodecRegistry.notFound(CodecRegistry.java:679)
at com.datastax.driver.core.CodecRegistry.createCodec(CodecRegistry.java:540)
at com.datastax.driver.core.CodecRegistry.findCodec(CodecRegistry.java:520)
at com.datastax.driver.core.CodecRegistry.codecFor(CodecRegistry.java:470)
at com.datastax.driver.core.AbstractGettableByIndexData.codecFor(AbstractGettableByIndexData.java:77)
at com.datastax.driver.core.BoundStatement.bind(BoundStatement.java:196)
at com.datastax.driver.core.DefaultPreparedStatement.bind(DefaultPreparedStatement.java:126)
at com.datamountaineer.streamreactor.connect.cassandra.source.CassandraTableReader.bindAndFireTimebasedQuery(CassandraTableReader.scala:149)
at com.datamountaineer.streamreactor.connect.cassandra.source.CassandraTableReader.query(CassandraTableReader.scala:128)
at com.datamountaineer.streamreactor.connect.cassandra.source.CassandraTableReader.read(CassandraTableReader.scala:108)
at com.datamountaineer.streamreactor.connect.cassandra.source.CassandraSourceTask.process(CassandraSourceTask.scala:131)
at com.datamountaineer.streamreactor.connect.cassandra.source.CassandraSourceTask$$anonfun$poll$2.apply(CassandraSourceTask.scala:108)
at com.datamountaineer.streamreactor.connect.cassandra.source.CassandraSourceTask$$anonfun$poll$2.apply(CassandraSourceTask.scala:108)
at scala.collection.generic.GenericTraversableTemplate$$anonfun$flatten$1.apply(GenericTraversableTemplate.scala:172)
at scala.collection.generic.GenericTraversableTemplate$$anonfun$flatten$1.apply(GenericTraversableTemplate.scala:171)
at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:48)
at scala.collection.generic.GenericTraversableTemplate$class.flatten(GenericTraversableTemplate.scala:171)
at scala.collection.AbstractTraversable.flatten(Traversable.scala:104)
at com.datamountaineer.streamreactor.connect.cassandra.source.CassandraSourceTask.poll(CassandraSourceTask.scala:108)
at org.apache.kafka.connect.runtime.WorkerSourceTask.execute(WorkerSourceTask.java:162)
at org.apache.kafka.connect.runtime.WorkerTask.doRun(WorkerTask.java:139)
at org.apache.kafka.connect.runtime.WorkerTask.run(WorkerTask.java:182)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)

@himani1 What is the schema of your table in Cassandra?

The CassandraSource only expects one column as the PK from which it will manage the time ranges that it will query Cassandra for data.
So the following:
INSERT INTO test-topic SELECT * FROM test-table PK date,last_updated INCREMENTALMODE=TIMESTAMP",
should probably be more like:
INSERT INTO test-topic SELECT * FROM test-table PK last_updated INCREMENTALMODE=TIMESTAMP",
assuming last_updated is the column representing when the rest of the data changed

Thanks so much andrew and Codesmell.
Question 1:
Table's schema above has PRIMARY KEY (date,last_updated)  where date is date and last_updated is timestamp. This is done to avoid full table scans hoping to generate some thing like
SELECT * FROM test-table WHERE date = '2017-11-16' and  last_updated > ? AND last_updated <= ? ALLOW FILTERING
is this possible to generate with kcql ?
Question 2:  If above is not possible.
Lets say we design  table as  PRIMARY KEY ( colA, colB) and if we say
"connect.cassandra.kcql": "INSERT INTO test-topic SELECT * FROM test-table PK last_updated INCREMENTALMODE=TIMESTAMP",  it works with ALLOW_FILTERING. However, we suspect this fails when the size of table is large.
In this case, what is the best way to pull data incremental ?

@ramindukuri

Question 1: is this possible to generate with kcql ?
No

Question 2: what is the best way to pull data incremental ?
You are correct that under large sets of data there can be issues.
Issue #278 has addressed much of this by allowing users to configure the size of the time slice and thus control the amount of data that is retrieved at any point in time.


Favicon

@Subrat-Code-94 closing this due to PR #35 . In general it's best to use the notation Fix #30 in the PR so when the PR is merge the issue is closed automatically


Nicer ui

Will close #17, will close #12

Text inside the card needs to be wrapped.

Additionally, the title should be wrapped when it's long instead of being truncated. Making the card title bold (see #25) should help separate it from the card body even when it spans across multiple lines.

Text inside the card needs to be wrapped.

Fixed in commit 8024463c6513ef25f9bada96e5bb0320e095b1df

Explicit linebreaks are not honored:
idea ideaseed ideaseed notsure -iT"Add another alias for --tag: Shorthand '-:'" "The idea is that, currently, the only sane ways to add tags/labels are `-tlabel1` or `-llabel2`.
  This looks a bit ugly to me, I'd prefer using a non-alphanumeric character, much more rarely-seen in label names, so that reading command history is nicer. Hence, any easily-typable character will do.
  I have several candidates, with a preference for \":\", which would look like `ideaseed my-repo -iT'My title' 'my idea' -:label1 -:label2`:

  - :
  - ! (though it might cause problems with certain shells)
  - /
  - + (not easily typable, at least on french AZERTY keyboards)
  - . (a bit weird?) `ideaseed -iT'My title' 'my idea' -.label1`
  - # (would be nice (it is widely used for indicating categories/tags) but unfortunately it means a comment in most shells, so no good)
  - @ (same as with '+')
  - = (like '.', although it looks a bit better: `ideaseed -iT'My title' 'my idea' -=label1 -=label2`)
  "

Outputs

Explicit linebreaks are not honored:

Fixed in commit eb772251e580dbbbf782b41552a43df8616031cf:


Improve enum + @map

See https://github.com/prisma/prisma/issues/11127#issuecomment-1011475040

👋 we're cleaning up our backlog of issues and are closing everything older than two years. If you still feel that this issue is relevant, please feel free to re-open and our team will take a look. Thank you!


IOS - Shows thin strip at the bottom of the screen instead of entire keyboard

I managed to add the library to IOS without problems but when running it, I get the collapsed keyboard as per screenshot.  That itself is not a problem, the real problem is that the collapsed keyboard is missing the "arrow" button on the right that allows you to tap on it to hide the collapsed keyboard entirely or to long-tap on it to expand it to full keyboard.

I dont have problem with this collapsed keyboard but it normally comes with the down pointing arrow button on the right which allows me to expand it or hide it entirely.  But using this effect removes that

This is pretty much same issue you get by using custom renderers to hide keyboard like so:
    public class SoftkeyboardDisabledEntryRenderer : EntryRenderer
    {
        protected override void OnElementChanged(ElementChangedEventArgs<Entry> e)
        {
            base.OnElementChanged(e);

            // Disabling the keyboard
            this.Control.InputView = new UIView();
        }
    }

Does this happen in a real device or emulator?

Does this happen in a real device or emulator?

Real iPad Air 2 device


Enable --no-private-ipv4 by default for live chains

The --no-private-ipv4 option is now enabled by default for "live" chains such as Westend, Rococo, Kusama, and Polkadot.
Consequently, I've added a new --allow-private-ipv4 option, which forces the opposite.
Concretely speaking, this means that nodes will no longer connect to any IP address that is considered as private (such as <IP_ADDRESS>).

bot merge


Geo Query Example Help

All,
I'm trying to use rethinkdb-elixir to implement the geo locations examples found in the docs http://www.rethinkdb.com/docs/geo-support/python/.  It's been awhile since I've played with Elixir and this driver, so I'm a little rusty on how to get things done.   I've tried several iterations, but this is the latest version of the RQL query that I'm trying to perform:
def get_neighboring_locations do

    # Origional Query
    # var point = r.point(-122.422876,37.777128);
    # r.db('geo_test').table('geo').getNearest(point, {index: 'location', maxDist: 500, unit: 'mi'})

    point = reql_geo_point(-122.422876,37.777128)

    q = table("geo")
       |> get_nearest(point, index: 'location', max_dist: 500, unit: 'mi')
       |> Elxrdb.Connection.run

    results = inspect(q.data)
    IO.puts "#{results}"
end

Thanks!
--Nick

It looks right. What error are you seeing?

Hi Peter,
I'm getting the following compilation error:

== Compilation error on file lib/geotst.ex ==
** (CompileError) lib/geotst.ex:44: undefined function reql_geo_point/2
(stdlib) lists.erl:1338: :lists.foreach/2
(stdlib) erl_eval.erl:670: :erl_eval.do_apply/6

Here are my system stats:

$iex
Erlang/OTP 19 [erts-8.0.2] [source-9503fff] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false]
Interactive Elixir (1.3.2) - press Ctrl+C to exit (type h() ENTER for help)

Thanks!
--Nick

Well.... undefined function reql_geo_point/2
that's the problem. that's a type spec, not a function. It's defined here: https://hexdocs.pm/rethinkdb/RethinkDB.Query.html#t:reql_geo_point/0
just use a tuple. point = {-122.422876,37.777128}

Peter,
I replaced the point with a tuple, and I'm compiling just fine now!  I'm  unfortunately getting another error:

iex(3)> Geotst.get_neighboring_locations
%{"b" => ["unit"], "r" => ["Second element in a Term is neither arguments nor optional arguments."], "t" => 17}
:ok

--Nick

Alright. that's a bug. I'll take a look when I get a chance.

Hi Peter,
I know you've been working hard on this driver, and have been busy with other obligations.  I created a small bounty on this bug so that you can get a  cup of coffee, or whatever it is that you like when you have a chance to fix it.  Here is a link to the bounty:

Thanks!
--Nick

What a kind gesture! I'm a little ashamed to say it completely got my attention.
This is the corrected query:
table("geo") |> get_nearest(point({-122.422876,37.777128}), index: "location", max_dist: 500, unit: "mi")

In case you missed it:
iex(19)> Poison.encode!("location")
"\"location\""
iex(20)> Poison.encode!('location')
"[108,111,99,97,116,105,111,110]"

This is a really rough one. I don't know the right way to deal with this. This isn't the first time someone has gotten burned by it and it won't be the last.

@Linicks unlike javascript, quotes and single quotes means different things in Elixir. Double quotes means string (which is what you want here) and single quote means a character list.

Hey All,
The query is working for me now.  Many thanks!!
--Nick

Are we ok closing this issue?

Hi Peter,
My query is working just fine now, so we should probably get this one off the books.  I appreciate the help from you and sikanhe.  Don't forget to claim your bounty :)
--Nick


added kerchunk as backend documentation

[x] Closes https://github.com/fsspec/kerchunk/issues/461
[ ] Tests added
[ ] User visible changes (including notable bug fixes) are documented in whats-new.rst

Added documentation for kerchunk as a backend engine to the documentation, a combined.json for viewing kerchunk generated dataset. I've also added the references in xarray-data repo in here

@martindurant I've made the updates.

@dcherian Could you please review this PR?

@TomNicholas My latest commit is failing in the CI pipeline. Can you please help me out here?

most of these are failing on main, as well. So not on you, and I'll try to get main back to a working state as soon as possible.


Multiple crashes after updating to Forge 32.0.66

Multiple crashes appear using the crafting table after i updated to Forge 32.0.66
https://pastebin.com/xxtzDsfm

Can confirm, Noticed same issue w/ plain install w/ just forge 32.0.66 and CraftingTweaks_1.16.1-12.0.3.
Can replicate by placing crafting table and hitting any of the buttons.


GToolkit crash on startup - glutin loads an unrelated libGLE.dll from PATH

Scenario: Downloaded release, GToolkit.exe crashes on startup.
While debugging it, I noticed that there were unrelated library loads:
C:\Program Files\SciTools\bin\pc-win64\libEGL.dll
C:\Program Files\SciTools\bin\pc-win64\libGLESv2.dll
The flow which causes this load is:
glutin_create_headless_context (libGlutin) -> build_headless (glutin_sys) -> new_headless -> EGL lazy static -> LoadLibrary
In new_headless, if no windowed sharing was specified, it tries to load libEGL.dll from the load path, which in my case was in PATH from another program (SciTools Understand for reading code), so it used it instead of the windows-based solution which is typically used in Pharo - and it led to a crash later on.
From new_headless:
match (gl_attr.sharing, &*EGL) {
  (None, Some(_)) => // Use EGL
  ...
}

The fallback flow of new_headless is the following:
let wb = WindowBuilder::new()
    .with_visible(false)
    .with_inner_size(size);
Self::new_windowed(wb, &el, pf_reqs, gl_attr).map(|(win, context)| {
    match context {
        Context::Egl(context) => Context::HiddenWindowEgl(win, context),
        Context::Wgl(context) => Context::HiddenWindowWgl(win, context),
        _ => unreachable!(),
    }
})

So a solution to avoid the use of EGL is to use build_windowed -> new_windowed instead of build_headless in libGlutin with with_visible(false) - and this would avoid the usage of libEGL.
In the meantime, removing SciTools Understand from PATH is a workaround for the issue.

Note this is the implementation of new_headless on windows - which has the fallback.
Unix seems to have a more native impl for headless windows - so depends how much of a difference it makes, one could either always use an invisible window in libGlutin or just do it for Windows.

This should have probably been opened in feenk's libGlutin - should I move it?

No. Please keep it here.

I opened an issue in glutin itself https://github.com/rust-windowing/glutin/issues/1292
thank you for debugging this! it is very helpful 👍

Verified that using the fixed glutin version (https://github.com/syrel/glutin/pull/1) in libGlutin indeed solves the startup issue.

Great to hear!

Would you be able to try again? We have changed quite a bit of things in the meantime.

@NightRa: This issue is likely addressed now. Please let us know if you still encounter problems with starting GT.


AutoFrame feature for software

This app is really cool. It's got 100% of the functionality I need on Linux to replicate Zoom's BG subtraction on Mac/Win.
Now, I want a feature where the face mask is used to crop the output image from ReplaceBackgroundApp.get_output_image() and then rescale that to the output image size.
So the face would be "tracked" regardless of where it goes in the frame ala AutoFrame from Nvidia (https://youtu.be/GRFjfGH87Dk?t=55)
Assign this to me

Hi @benbatya thank you for your suggestion.
This seems to have an interesting feature to have.
For now I would suggest for a feature like this to live outside this repository.
I would like to keep this project relatively light to encourage others to include it, if they only want to use the bodypix model.
I had started layered-vision, which has a broader scope. So perhaps that could be a good home?
I should also mention virtual_webcam_background (GPL licensed), which is a project I used, before trying out my own implementation. It doesn't currently use tf-bodypix, but there is an issue #47 for that.
What do you think about starting with a separate script (gist?) to experiment with your suggested feature and then we could see how to best integrate it? I guess it might also need a bit of #50 (although just looking for the face should be easier)

Hi @de-code sure, here's a gist. I hope that the patch format works.
https://gist.github.com/benbatya/59e717c50a22e1e8278918d04bb06cd6
Yeah, I'll check out layered-vision vs virtual_webcam_background.
I am curious if you started layered-vision because of issues with VWB or more to scratch a coding itch.
I'm happy to implement the feature in either project, it's a fairly simple additional filter...

After looking at layered-vision, it's a good framework. I'll implement the filter there.
Tracking issue is https://github.com/de-code/layered-vision/issues/56

I am curious if you started layered-vision because of issues with VWB or more to scratch a coding itch.

Yes, it was a combination of things probably. In part I wanted to try a quite different architecture. I thought a kind of graph like architecture may allow for more optimisation later on (e.g. only calculate layers or parts needed).


spell

Coverage remained the same at 85.743% when pulling 6b150b2c4d61610ff82d0a5fa52253fb5da65911 on nayangupta824:patch-2 into 7b759271568399fe02b5e47301d89c0cade534e1 on image-js:master.

thanks!


Remove CFT docs

This reverts commit fc9d39b5a2b8e2a4f9c5ccd01cccf3b37042ed7f.

Merged build finished. Test FAILed.

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

jenkins, test this please

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/7160/
Test PASSed.

alluxio-bot, merge this please


 Perhaps you can correct the word brousers to browsers, too?

@astridx that was because they will be fixed by #2

Thanks!


Custom MongoDB JsonFormatter to write timestamp

Create MongoDBJsonFormatter to save DateTime and DateTimeOffset as MongoDB Date objects.
Default JsonFormatter writes DateTime and DateTimeOffset field as string with round trip date/time pattern to MongoDB, which contains the local time zone component if field's object kind is local. String search on these field, with different timezones, will not return the correct values.

Looks great! @Jaben @chandmk any thoughts? LGTM, but I don't know much about MongoDB :-)

I am wondering what would happen to the existing log data?
Kiran
On Fri, Mar 6, 2015 at 11:45 PM, Nicholas Blumhardt <
<EMAIL_ADDRESS>wrote:

Looks great! @Jaben https://github.com/Jaben @chandmk
https://github.com/chandmk any thoughts? LGTM, but I don't know much
about MongoDB :-)
—
Reply to this email directly or view it on GitHub
https://github.com/serilog/serilog-sinks-mongodb/pull/1#issuecomment-77673464
.

Nothing. They will still be stored as strings.


Add 'config.enabled.browserSync' option to Webpack configuration

This adds a configuration option to disable BrowserSync (and Wepack HMR) and support a more basic "watch and manually refresh" kind of workflow.
Example
In resources/assets/config.json, add:
  "enabled": {
    "browserSync": false
  }

Run yarn start:

Update something in resources/assets/styles/main.scss:

Yes, please, yes. Let us disable browsersync and HMR, why is there no yarn watch option without this bloat?

Hey @GeorgeGedox , thanks for your interest! To be fair, I think that everyone is focused on Sage 10 now, where disabling Browsersync is as simple as commenting out 1 line in webpack.mix.js.
Who knows, maybe this patch will make it in a future maintenance release of Sage 9 :)

This has caused me many problems dealing with Sage. I hope to god this gets merged

I'd LOVE to disable Browser Sync. It drives me mad that I add/edit rules in dev tools then watch them all get blown away when the sync runs. However when implementing these changes I end up with an "Unable to Connect" error. New to Sage, any ideas?

Common this should be necessarily merged


go/mod: add the repository url to go.mod file

What is the import path of a go module.
How can i get a module from github or other website?
I don't understand. Please explain.
The wiki needs explanation

Hi,
the Go project does not use its bug tracker for general discussion or asking questions about the language. The Github bug tracker is only used for tracking bugs and proposals going through the Proposal Process.
Please see the Questions wiki page; it has a list of good places for asking questions. Thanks!
Closing here, since this is not a bug.

@nocord no : ) but the post I see above is a pre-written reply we use to redirect people to places where they can ask questions.


Fix setting ACL if they had been set before

This PR fixes ACL setting - if there was an entry that has to be update then resource must not be created but updated. Result before fix:
`Error: LDIF content:
dn: olcDatabase={1}monitor,cn=config
add: olcAccess
olcAccess: {0}to *
by dn.exact=gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth manage
by * break
Error message: Execution of '/usr/bin/ldapmodify -Y EXTERNAL -H ldapi:/// -f /tmp/openldap_access20180907-14186-1lgqm23' returned 20: SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
ldap_modify: Type or value exists (20)
additional info: modify/add: olcAccess: value #0 already exists`

Any chance of this going in? It would be useful for me as well.


Can't prevent error 500 using Route::resource or Route::apiResource

Laravel Version: 9.35.1
PHP Version: 8.1.4
Database Driver & Version: pgsql 13

Description:
I came across the problem started while testing a route generated using Route::apiResource, and noticed that when any string is sent as a parameter, an error 500 occurs due to Laravel performing a database query.
When an integer is set as the parameter, it finds the model by its id and binds it properly:

On the other hand, it throws a status of 500 when the parameter is a string:

The route is defined as follow:
<?php

use Illuminate\Support\Facades\Route;

// /api/...

Route::apiResource('client', 'ClientController');

Some solutions I thought of:

Catch the exception and ignore it. However, this solution prevents other database exceptions from being logged that have not yet been identified in the system.
Apply a regex to the parameter and laravel just ignores the route and displays a 404. However, it is not possible to apply a regex to a resource or an apiResource. *

Without the regex rule, the server receiving a string when it expects to receive an integer in the parameter returns an error 500, which should not happen. It should just show that the route was not found (404) or that the request is invalid (400 or 422), since its a client error, not the other way around.
*There is a way to define a pattern in a route parameter, and this pattern applies to resources as well, as explained in this thread, however, it does not scale.
Why shouldn't we let error 500 happen?
Code 500 is defined as "The server has encountered a situation it does not know how to handle.". And in this case we know exactly what the problem is and if we can ignore the request, or respond with a status of an invalid request (400-499), so if we want to keep track of all the server errors 500 to be able to fix them in the future, the system will be filled with false errors.
Steps To Reproduce:

Create a complete CRUD of one model and use resource to bind the routes.

<?php

use Illuminate\Support\Facades\Route;

// /api/...

Route::apiResource('client', 'ClientController');

Send a request with string instead of integer in the parameter
Error 500 happened 😔

I have experienced the same problem when passing the wrong parameters to the API using Postman.
It turns out that the parameter name was not the same as the intended for that route, so the request was like:
GET /api/resource/:id
I didn't find any workarounds for it not raising a status 500, so I didn't bother too much with it.

I think this is specifically a Postgres issue - I believe that MySQL will still run the SQL, find no result and 404 as expected. I define a bunch of patterns in my RouteServiceProvider in order to avoid this - but like you mention it's not great.
Route::pattern('user', '[0-9]+');

Not sure how best you could solve this. Under the hood I suspect it's using UrlRoutable on the model, so perhaps you could overwrite resolveRouteBinding on your models to cast the value to an integer first?

I think this is specifically a Postgres issue - I believe that MySQL will still run the SQL, find no result and 404 as expected. I define a bunch of patterns in my RouteServiceProvider in order to avoid this - but like you mention it's not great.
Route::pattern('user', '[0-9]+');

Not sure how best you could solve this. Under the hood I suspect it's using UrlRoutable on the model, so perhaps you could overwrite resolveRouteBinding on your models to cast the value to an integer first?

This way i think will work, but I don't think it's the cleanest way to code. I'll implement it in my project to temporarily resolve, but I believe laravel should add a validation in the resource paths would be very important.
I think the best solution to this problem is to add a where, whereNumber, whereAlpha function to the Route::resource like the normal routes (get, post, put).
In this way the router never enter in the route if the regex fail, and return 404 error.

There is no way for us to know up front that the value can't be handled by the database. You need to sanitize the parameter as @dwightwatson indicates.


[Integration Suggestion] Add Titanium processing items

Titanium is not in a lot of modpacks but some of the mods I use do have this kind of ore, like Better Diving. This is just a simple suggestion since titanium doesn't get used a lot but I feel bad when there's this single ore that doesn't have mekanism compat.

I feel bad when there's this single ore that doesn't have mekanism compat.
I feel bad too, I want to make all ores compatible if possible
Titanium integration work will begin soon
Please wait

https://github.com/gisellevonbingen/Minecraft-MoreMekanismProcessing/issues/12#issuecomment-898469728

https://github.com/gisellevonbingen/Minecraft-MoreMekanismProcessing/issues/13#issuecomment-898544607
Integration  'LibVulpes (Advanced Rocketry)' completed
Can libvulpes:orerutile blocks can processing to titanium ingots


SetTracelogCallback impossible to format text

This makes it impossible to format text passed by a TracelogCallback event.
TracelogCallback takes a LogType, String and IntPtr. This is incompatible with C#'s built-in string formatting system. This means all the data that should be formatted into a string is treated as an unsafe blob.
Currently Raylib-cs implements TextFormat as a function which takes in a string and returns the same string, perhaps this could be changed to allow passing a string and intptr in order to handle the C-style formatting required by TracelogCallback?

I am aware of the issue. Another user found a separate workaround to format the text but it was platform dependent. I have tried to fix TextFormat but I have not yet got it to work.

Custom logging has been improved in Raylib-cs 4.0.0 and uses specific native functions to handle the C-style formatting.


A few Dev bugs.

In Dev mode, ppins take about 3 minutes to actually pin. Like a long delay. Also, the statuscycle does not work. It says it does, but it doesn't...

@natethemaker

Okay, another one is {prefix}hiddenchannels. It doesn't work. Also, in the Dev version, for some reason the Repl version doesn't stay online after you close the tab...


Where is /Game/Maps/Town02 located, Windows version?

I just beginning to use the simulator, and did some work with the default Town01, my question is where is Town02 located I can't find it anywhere, I must be missing something.

So how can I run the simulator with Town02, I did this  CarlaUE4.exe /Game/Maps/Town02 but neither maps nor Game folders are in the Windows installation

It refers to the Unreal project content folder, so, it's inside the .pak file of the build version (each platform has different pak files, example: \CarlaUE4\Content\Paks\CarlaUE4-WindowsNoEditor.pak ) but if you open the editor it would be something like CARLA/Unreal/CarlaUE4/Content/Maps/Town02.umap

Ok, So is there a way form me to run the Windows build version with Town02?

Thanks a lot @juaxix , its working now. Yeah levelSetting would be great for pre-programmed sim.

Hello,@juaxix
Is there any way to add my own map into  the .pak file of the build version? so I could run carla by ./CarlaUE4.sh /Game/Maps/mymap  and could load my own map.

@JackRen88 have you solved your problem. I now create a map and then I use the "make package" to create a package, but I cannot find my map in the Maps folder.

this works for me
CarlaUE4.exe Town01  --carla-server

Hello,@juaxix
Is there any way to add my own map into the .pak file of the build version? so I could run carla by ./CarlaUE4.sh /Game/Maps/mymap  and could load my own map.

Have you found a solution?

Hello,@juaxix Is there any way to add my own map into the .pak file of the build version? so I could run carla by ./CarlaUE4.sh /Game/Maps/mymap  and could load my own map.

Any solution on this?

So I managed to do it and I hope this will help someone in the future.
RoadRunner:
Create your map and export it using Carla Filmbox, you get .xodr and .fbx files inside of a Exports folder inside of your RoadRunner project
Carla (Source build):

Take .fbx and .xodr file and place them into the Import folder
Using x64 VS 2019 cmd window while being at the root of your Carla folder, run make import ARGS="--package=exp_town"
You will get your package created inside of [Carla root]\Unreal\CarlaUE4\Content\exp_town (default is map_package)
Once that is done, you will be able to open this map inside of your Unreal Carla Editor where you can do further customization, like adding a spawn point, etc ...
Once you're done editing, using the x64 VS 2019 cmd from the root Carla folder, run make package ARGS="--packages=exp_town"
When that finishes you will get one zip file and one folder with the same names inside of [Carla root]\Build\UE4Carla
Now simply take that zip file and distribute it whereever you want and use the python config.py --map "map_name" command to change the map in your NoEditor Carla Server. What I do is since I have a VM where I keep my source built Carla I take that folder and transfer the contents of it to my binary built Carla on my local computer.

It refers to the Unreal project content folder, so, it's inside the .pak file of the build version (each platform has different pak files, example: \CarlaUE4\Content\Paks\CarlaUE4-WindowsNoEditor.pak ) but if you open the editor it would be something like CARLA/Unreal/CarlaUE4/Content/Maps/Town02.umap

hello, i'm meeting the problem that after downloading the 0.8.4 version and run sh ./CarlaUE4.sh /Game/Carla/Maps/Town01 -windowed -world-port=2000  -benchmark -fps=10 it came error that
the map specified on the commandline '/Game/Carla/Maps/Town01' couldn't be found. Would you like to load the default map instead? .
And I want to edit the .pak file but I can't open it , could u give me some suggestion how to solve it.


QuicheQuicServerCodec handler and streamHandler

What is the difference between these two handlers

The handler is for the QuicChannel itself (quic connection) while the streamHandler is for the created QuicStreamChannels (streams on top of the quic connection)


em_starterkit_em7d_v22 failing multiple tests in user mode

We recently enabled user mode by default when running tests cases on hardware that is capable of it, and I am seeing a bunch of failures on this ARC board. The following tests are either hanging or crashing with an exception:
tests/kernel/msgq/msgq_api
tests/kernel/mem_pool/sys_mem_pool
tests/kernel/queue/
tests/kernel/mem_protect/mem_protect
tests/kernel/poll
tests/kernel/semaphore/semaphore
tests/kernel/stack/stack_api

@vonhust  FYI

Possible relationship to #7776

PRs #7778 and #7923 fix most of the issues.
Remaining:

tests/kernel/mem_protect/mem_protect : alignment problem
see issue #7776; @andrewboie can you have a look and suggest how best to solve? remove the 'packed' attribute?

tests/kernel/fatal: stack protection exception triggers, but is not reported as a STACK_CHK_FAIL (similar to ARM). I didn't investigate in detail yet.

tests/kernel/profiline/profiling_api: ARC combines privileged and user stack for kernel threads, test should be updated. See issue #7858

tests/kernel/fatal: stack protection exception triggers, but is not reported as a STACK_CHK_FAIL (similar to ARM). I didn't investigate in detail yet.

Hmm. This used to work, at least for the native stack overflow protection on ARC. Do we still update those registers properly?
I remember someone also added support for guard regions for the supervisor-mode stack, in that case may need to check the faulting memory address and see if it falls within bounds if the CPU doesn't report a special error when it tries to push onto the stack and fails.

If the buffer is intended to be inacessible other than to the memory domain, we could also tag it with __kernel and it will not be in the app memory space.

most of issues left are caused by STACK_CHECKING of ARC. This is not well implemented. I am trying to provide a fix, and hope to catch up with 1.12. If not, the simplest way  is to stack check off when CONFIG_USERSPACE is on.


Feature: CoseHeader publicKey property

The only used part, CoseHeader.publicKey, has been moved to the verifier


Small fixes in sys

Alias GType defined in glib and gobject, I don't like ignore it in gobject, as it comment all *_get_type in normal mode. Seems this need be hardcoded.

And for gdk_pixbuf not sure we needed rename, it may needed apply fix_namespace in too many places (at minumum in package naming). But we can stay with this until really problem occurs.

Or we can just change crate_name to apply snake_case after lowering first 2-3 chars.

About GType: may be we just needed new status dont_declare

It seems we can ignore GType in glib-sys and either add the gobject import in other crates or always qualify it in hardcoded references. It likely doesn't belong in Fundamental.

Didn't notice that GLib actually references GType as well. So it's not that simple.

Can you do it in this PR with rebasing?

On it.

Can you add test for crate_name("GdkPixbuf")?

@homu r+

:pushpin: Commit 660f463 has been approved by gkoz

:hourglass: Testing commit 660f463 with merge 6882dfb...

Don't see bad changes in gtk generation. Compiling stops only on gdk-sys, seems this better fixed before
D:\eap\rust\0\gdk\gdk-sys\src\lib.rs:16:40: 16:45 error: unresolved import `glib_ffi::gsize`. There is no `gsize` in `glib_ffi`
D:\eap\rust\0\gdk\gdk-sys\src\lib.rs:16 pub use glib_ffi::{gboolean, gpointer, gsize, GType};

IMHO better abort Homu, and fix gsize

:sunny: Test successful - status

Seems gsize just needed include in static::only_for_glib

Was wrong, seems it currently replaced to size_t by generator.
Then no problem

I was away :) We should add the other libs to the tests.

I currently do gio

You get message about changes in https://github.com/gkoz/gir/issues/29 header?

Building every crate is wasteful, there should be a test crate that depends on the others.

So build only crates, that last in build order? At end it will be only gtk

Then we need change test.sh to 2 setting, LIBS and BUILD?

You get message about changes in #29 header?

No, missed that.


ped file cannot be created when outdir is an s3 path

Description of the bug
The ped file cannot be created when outdir is an s3 path, leading to an error.
For example, defining --outdir s3:/rarediseases-workspace/results/ with the test data gives this error:
s3:/rarediseases-workspace/results/pipeline_info/justhusky.ped (No such file or directory)

I believe it is originating from this code, although the single s3:/ is also suspicious.
// Function to generate a pedigree file
    public static File makePed(samples, outdir) {

        def case_name  = samples[0].case_id
        def outfile  = new File(outdir +"/pipeline_info/${case_name}" + '.ped')
        outfile.text = ['#family_id', 'sample_id', 'father', 'mother', 'sex', 'phenotype'].join('\t')
        def samples_list = []
        for(int i = 0; i<samples.size(); i++) {
            def sample_name =  samples[i].sample
            if (!samples_list.contains(sample_name)) {
                outfile.append('\n' + [samples[i].case_id, sample_name, samples[i].paternal, samples[i].maternal, samples[i].sex, samples[i].phenotype].join('\t'));
                samples_list.add(sample_name)
            }
        }
        return outfile
    }

Command used and terminal output
nextflow run 'https://github.com/nf-core/raredisease'
		 -name special_coulomb
		 --outdir 's3:/rarediseases-workspace/results/'
		 -r 2.0.1
		 -profile test

Relevant files
No response
System information
No response

Thank you, @evanfloden, for bringing this bug to our attention. You are correct!
We made some changes to the code last week, moving this functionality to a nextflow process rather than relying on groovy. Hopefully, this resolves the error. Please test our dev branch and inform us if the issue persists.

Closing this issue as it was fixed in the last release. Feel free to reopen if needed.


Revert "Add CameraHelper"

Reverts libgdx/libgdx#3802, see #3856

Did i merge that?
On Feb 18, 2016 7:41 PM, "Xoppa"<EMAIL_ADDRESS>wrote:

Merged #3863 https://github.com/libgdx/libgdx/pull/3863.
—
Reply to this email directly or view it on GitHub
https://github.com/libgdx/libgdx/pull/3863#event-555506123.

@badlogic
No, you didn't, See PR #3802


why can not use v2.1.0 with bower?

sanitize.css is published v2.1.0 for npm but not for bower.
Why is the version of the bower package supplied as the older version?
I wish the bower package is published as v2.1.0.

I needed to update bower.json and that has been done.

I couldn't fetch sanitize-css#2.1.1 from bower :cry:
bower sanitize-css#2.1.1    not-cached git://github.com/jonathantneal/sanitize.css.git#2.1.1
bower sanitize-css#2.1.1       resolve git://github.com/jonathantneal/sanitize.css.git#2.1.1
bower sanitize-css#*            cached git://github.com/jonathantneal/sanitize.css.git#1.1.0
bower sanitize-css#*          validate 1.1.0 against git://github.com/jonathantneal/sanitize.css.git#*
bower sanitize-css#2.1.1    not-cached git://github.com/jonathantneal/sanitize.css.git#2.1.1
bower sanitize-css#2.1.1       resolve git://github.com/jonathantneal/sanitize.css.git#2.1.1
bower sanitize-css#2.1.1  ENORESTARGET No tag found that was able to satisfy 2.1.1

Additional error details:
Available versions: 1.1.0

@libitte: Looks like you're trying to get it from @jonathantneal's fork. Give https://github.com/10up/sanitize.css a try.

Oops.
@FabianBeiner Thank you for you kindness.
I could fetch sanitize-css#2.1.0 from bower!
bower sanitize-css#2.1.0    not-cached git://github.com/10up/sanitize.css.git#2.1.0
bower sanitize-css#2.1.0       resolve git://github.com/10up/sanitize.css.git#2.1.0
bower sanitize-css#2.1.0      download https://github.com/10up/sanitize.css/archive/v2.1.0.tar.gz
bower sanitize-css#2.1.0       extract archive.tar.gz
bower sanitize-css#2.1.0      mismatch Version declared in the json (2.0.0) is different than the resolved one (2.1.0)
bower sanitize-css#2.1.0      resolved git://github.com/10up/sanitize.css.git#2.1.0
bower sanitize-css#2.1.0       install sanitize-css#2.1.0

sanitize-css#2.1.0 bower_components/sanitize-css

@jonathantneal, I still can't install this via bower.json "sanitize-css": "~2.1". It says:
bower sanitize-css#~2.1   ENORESTARGET No tag found that was able to satisfy ~2.1
Additional error details:
Available versions: 1.1.0

Also searching for "sanitize" on the bower.io website doesn't show anything.

Seems like that sanitize-css shows up on bower.io now, but it points to jonathantneal/sanitize.css which is why it can't find version 2.1.

@jonathantneal, is there anything I can do to have this fixed? Thanks!

@thasmo, I updated bower.json earlier today, tagged the v3 release, and synced up my old repo. Would you be able to see if this is now resolved?

@jonathantneal, sanitize-css points to git://github.com/jonathantneal/sanitize.css.git. Is this intended ot should it point to 10up/sanitize.css instead?

Ugh, bower was a real pain. Would you please check again? Thank you in advance. Fingers crossed.

It's not that bad. xD Yep, works now - thanks a lot! :)


address antd warning in console about menu.items component

What does this PR do and why?
Provide a description of what this PR does. Link to any relevant GitHub issues, Notion tasks or Discord discussions.
Screenshots or screen recordings
If applicable, provide screenshots or screen recordings to demonstrate the changes.
Acceptance checklist

[ ] I have evaluated the Approval Guidelines for this PR.
[ ] I have tested this PR in all supported browsers.
[ ] I have tested this PR in dark mode and light mode (if applicable).

Current dependencies on/for this PR:

main

PR #2047   👈

This comment was auto-generated by Graphite.


Update PHPUnit & drop EOL PHP versions

Making this change in a separate PR so it isn't pushed in a minor version change.

This is AWESOME man!! Phpunit now works with modern PHP!


{release} 4.0.0rc1

What type of PR is this? (check all applicable)
Release - Invoke 4.0.0-rc1
Have you discussed this change with the InvokeAI team?

[x] Yes
[ ] No, because:

Have you updated all relevant documentation?

[ ] Yes
[ ] No

Description
InvokeAI 4.0.0-rc1 Release
QA Instructions, Screenshots, Recordings
Test Installer:
InvokeAI-installer-v4.0.0.zip
Merge Plan
This PR can be merged when approved
Added/updated tests?

[ ] Yes
[ ] No : Release PR, all changes have associated testing

Expect this will fail the workflow bc the version won't match the tag exactly

should we switch to a v in front

Yes, think so

The tag_release.sh script already appends v to the version, so for this release the tag will be v4.0.0rc1.


Roll engine 1cada0a6dca6..f15cc3402938 (1 commits)

git@github.com:flutter/engine.git/compare/1cada0a6dca6...f15cc3402938
git log 1cada0a6dca6..f15cc3402938 --no-merges --oneline
2019-09-19<EMAIL_ADDRESS>Roll src/third_party/skia 18531cde2ab7..9a8b846baf43 (1 commits) (flutter/engine#12360)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-engine-flutter-autoroll
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

Trybots failed. These were the failed builds: https://cirrus-ci.com/task/5704616555053056 , https://cirrus-ci.com/task/6619410229362688 , https://cirrus-ci.com/task/6056460275941376 , https://cirrus-ci.com/task/4578716648210432 , https://cirrus-ci.com/task/5141666601631744 , https://cirrus-ci.com/task/4789822880743424

Commit queue failed; closing this roll.


Flatcar vs CoreOS versioning

Current situation
The latest stable Flatcar release still has a lower version number than the last CoreOS release had. This prevents the update engine from picking up Flatcar. Our plan was to follow https://docs.flatcar-linux.org/os/update-from-container-linux/ but hoping to avoid setting COREOS_RELEASE_VERSION (which I guess is the solution to this?) and just have the OS update as normal when the next version of Flatcar was available.
Impact
OS not updated to Flatcar.
Ideal future situation
New release of Flatcar with a higher version number than last CoreOS container Linux version.
Additional information
This is not a stopper in any way, I would mostly like to get some clarity on how the versioning is stepped and how it relates to the previous versioning scheme used by CoreOS.

Hello @tobgu,
thank you for reporting this issue. CoreOS introduced a number of changes with the final round of releases which we did not ingest (banner calling out EOL, and a change in the way major release version numbers are used). We detached Flatcar Container Linux from CoreOS upstream before that change.
New releases of Flatcar Container Linux will of course use higher release numbers, making this a transient issue. To work around this please consider re-setting the release version as described in our migration docs, like you mentioned in the issue descriotion.

Just a small addition on how the migration is supposed to be done: You should force an update after running the script. Of course you can delay the reboot but if you remove the step of triggering an update and waiting for it to happen later, and the machine accidentally reboots before the update is applied, it will not get updates after the reboot because you already overwrote the server URL but the bind mount of the key is gone. So please force an update as part of the migration script even if the Flatcar version was equal or higher than the CoreOS version.

Thanks to both of you for responding! We'll review how to do the update before proceeding.


MEnumerator.bas: generalization of access to .Enumerable - any interest?

I have to say that MEnumerator.bas is truly a thing of beauty.  Thank you for writing and releasing it!
As part of an SO answer, I adapted it slightly to use a named interface, and to support unlimited (?) item counts.  Would you have any interest in hosting that version alongside the present one?  If so, I'm happy to submit a PR of the linked code.

Thanks for the comment, and sharing your modifications. I have no problem hosting it.
It would be good to add a 64bit compatible version too, for the few users of office that like to go against industry standard. (and the layman that think 64bit is always better.)


Vercel deploy to prod (main branch)

This will deploy the latest main branch (using the built artifacts) at https://papyri.vercel.app/, to always have at least one stable deployment and also useful for comparison with branch/PR deployments.
Current deployment: https://papyri.vercel.app/

Awesome !


[BUG] nvtabular input datatypes are wrong

Describe the bug
Although some columns are float32, NVTabular defines all input datatypes as int32. This causes error when deploying to Triton Inference Server

Run criteo example inlcuding the notebook 04-Triton-Inference-with-TF

Which fields aren't supposed to be int32 and what error does it cause?

fields starting with I are numerical features and should be float32.
I got errors, when I tried using perf_analyzer with custom data. I think I am not sure, how Triton handles the normal requests, as in the notebook, when we send a float32 to an features with int32

@bschifferer is this still broken?

I think it is fixed


Podtemplatespec

Allow the user to override values in the init-container and three containers generated by cass-operator.  There are more details in the README.md.

Legit awesome @respringer


add unit tests for AuthTokenService

Coverage increased (+1.2%) to 53.717% when pulling e4f8abb1c2f5018b47d979e83e8b1c6f319366cd on highlander_unit_tests into df9638cb35a063ddf91a05dbd9afe2b2c3cf1548 on highlander.

Coverage increased (+1.2%) to 53.717% when pulling e4f8abb1c2f5018b47d979e83e8b1c6f319366cd on highlander_unit_tests into df9638cb35a063ddf91a05dbd9afe2b2c3cf1548 on highlander.

Coverage increased (+1.2%) to 53.717% when pulling e4f8abb1c2f5018b47d979e83e8b1c6f319366cd on highlander_unit_tests into df9638cb35a063ddf91a05dbd9afe2b2c3cf1548 on highlander.

Coverage increased (+2.6%) to 55.157% when pulling 593d07b5b2f2ddf85c88b537d9f28b81e3bdc393 on highlander_unit_tests into df9638cb35a063ddf91a05dbd9afe2b2c3cf1548 on highlander.

Coverage increased (+3.3%) to 55.857% when pulling 77d89cee27e5c6a70827e80d52e9f89ca7da98b1 on highlander_unit_tests into df9638cb35a063ddf91a05dbd9afe2b2c3cf1548 on highlander.

Coverage increased (+3.7%) to 56.208% when pulling 13bcb1fb92e2062c412a3728bd3b26cd0782303d on highlander_unit_tests into df9638cb35a063ddf91a05dbd9afe2b2c3cf1548 on highlander.


Can't interact with Instagram while headless.

I have a crawler that visits Instagram, however it only works when the browser is not headless. For some reason Instagram won't load their pages unless the user is attentive on the page, and running chromium in headless mode isn't providing attentiveness to the page for some reason?
I've never run into such a problem, can someone please explain to me what is likely going on? And if so how to achieve this task headlessly.
Thank you

Try to edit the user agent:
"await page.setUserAgent('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36');"

Creative but it didn't solve the issue unfortunately. What's happening is after logging in, an instagram popup appears before seeing the feed, I was able to avoid this none headlessly by grabbing the selector of the popup and then clicking "not now". However the selector while running puppeteer headlessly returns an error because it can't find the selector. Some how puppeteer is being attentive enough on the page to register the popup headlessly.

Hi @sbr2567 , were you able to resolve this issue ? I'm also facing the same issue.
in local machine(macos) when running with headless:true and headless:false both works fine, i am able to view any public post without login.
but in the Ubuntu VM 18 it shows the Login screen, is there any way to bypass ?
please help me with any help or suggestion.
Thanks

I have the same issue. For logging in I use await page.waitForSelector('input[name=username]'); to check if the input has been loaded before entering the username.
This works fine on Windows 10 and macOS (local machines) with headless true and false both. However, the same code does not work on Ubuntu 18 (AWS EC2 Instance).
It times out on the waitForSelector statement

Try to edit the user agent:
"await page.setUserAgent('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36');"

Works fine here. Thanks!

Nice @Asmhan
await page.setUserAgent('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36');

Try to edit the user agent:
"await page.setUserAgent('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36');"

I had been facing the same issue. This worked for me!!!

Try to edit the user agent:
"await page.setUserAgent('Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36');"

Thanks. Save my day.

I have a similar error when i go on the register page , change the user agent not working for me


LIFX Gen3 not recognized after firmware update

Please see https://community.home-assistant.io/t/after-lifx-bulb-firmware-update-hass-no-longer-see-this-bulb/18849/12 for lifx-cli.py output.
I have ordered a LIFX + and expect to fix this myself, but maybe you can do it even faster?
It would be good to have a fixed release on PyPI by Saturday (for the next Home Assistant version). Are you available to make that, provided I manage to fix it in time?

Hi Anders,
Looks like the new firmware changed the format of LAN message.. TThe test program
seems to find them but has problems reading the info.
I will have a look at the doc, if there is any change ... we could also ask Lifx if this was an
intended change.
Yes.. I will be available to push a new release on PyPi
Cheers,
François
On Thursday, 1 June 2017 01:50:46 +07 Anders Melchiorsen wrote:
Please see https://community.home-assistant.io/t/after-lifx-bulb-firmware-update-hass-no-longer-see-this-bulb/18849/12[1] for lifx-cli.py output.
I have ordered a LIFX + and expect to fix this myself, but maybe you can do it even faster?
It would be good to have a fixed release on PyPI by Saturday (for the next Home Assistant
version). Are you available to make that, provided I manage to fix it in time?
—You are receiving this because you are subscribed to this thread.Reply to this email
directly, view it on GitHub[2], or mute the thread[3].[4]

[1] https://community.home-assistant.io/t/after-lifx-bulb-firmware-update-hass-no-longer-see-this-bulb/18849/12
[2] https://github.com/frawau/aiolifx/issues/9
[3] https://github.com/notifications/unsubscribe-auth/
AORvqU90NyReMOGwlnm37AhgHWmtXD05ks5r_ntmgaJpZM4NsrKn
[4] https://github.com/notifications/beacon/
AORvqbut718sEG2yiBS5mUoBnrdtkq7Tks5r_ntmgaJpZM4NsrKn.gif

Hi Anders,
Me again... I was thinking... since the "legacy" version seems to work, it could be one of
the modification I made when you reported the crash over an "int".
Could someone try with 0.4.5 or 0.4.4 to see if it works? Just the test program would do.
Regards,
François
On Thursday, 1 June 2017 01:50:46 +07 Anders Melchiorsen wrote:
Please see https://community.home-assistant.io/t/after-lifx-bulb-firmware-update-hass-no-longer-see-this-bulb/18849/12[1] for lifx-cli.py output.
I have ordered a LIFX + and expect to fix this myself, but maybe you can do it even faster?
It would be good to have a fixed release on PyPI by Saturday (for the next Home Assistant
version). Are you available to make that, provided I manage to fix it in time?
—You are receiving this because you are subscribed to this thread.Reply to this email
directly, view it on GitHub[2], or mute the thread[3].[4]

[1] https://community.home-assistant.io/t/after-lifx-bulb-firmware-update-hass-no-longer-see-this-bulb/18849/12
[2] https://github.com/frawau/aiolifx/issues/9
[3] https://github.com/notifications/unsubscribe-auth/
AORvqU90NyReMOGwlnm37AhgHWmtXD05ks5r_ntmgaJpZM4NsrKn
[4] https://github.com/notifications/beacon/
AORvqbut718sEG2yiBS5mUoBnrdtkq7Tks5r_ntmgaJpZM4NsrKn.gif

This problem only showed up two days ago when LIFX updated the firmware so I assume it to be unrelated to that change.
I should get my own Gen3 bulb in less than 24 hours so I am resisting the temptation to do further debugging by e-mail :)

I'm able to control bulbs with 0.4.4, 0.4.5 and 0.4.6 with the CLI app, but their names are not being properly displayed in the cli app. Would gathering the name have anything to do with it?

Thanks for the info...
Looks like a dual problem. aiolifx cannot decode the name correctly (and the IP address
but only for display since you can control)
Also the HA module requires the name (or string version of the IP address) to work.
On Thursday, 1 June 2017 11:21:29 +07 Keaton Taylor wrote:
I'm able to control bulbs with 0.4.4, 0.4.5 and 0.4.6 with the CLI app, but their names are
not being properly displayed in the cli app. Would gathering the name have anything to
do with it?
—You are receiving this because you commented.Reply to this email directly, view it on
GitHub[1], or mute the thread[2].[3]

[1] https://github.com/frawau/aiolifx/issues/9#issuecomment-305577536
[2] https://github.com/notifications/unsubscribe-auth/
AORvqUnL_g9Zo9TCf_xxt2NsLDqjJsUOks5r_wEpgaJpZM4NsrKn
[3] https://github.com/notifications/beacon/
AORvqbzm9SVGfUZ0F7kbkk1FAy3buuU1ks5r_wEpgaJpZM4NsrKn.gif

Obviously, #10 is my fix for this issue ... I will appreciate it a lot if you can put out a new release ASAP as the next HA release is being cut right now.

Fixed and release. Thank you.

Thanks for working so fast 👍


Proposal: add setNativeProps to Group, Shape, Text

Summary
This PR adds setNativeProps methods to the <Group/>, <Shape/>, and <Text/> components provided by art to allow direct manipulation of the native component, as per https://facebook.github.io/react-native/docs/direct-manipulation.
A benefit of this change is that we can use Animated.Values to animate props like opacity without the animation calling the render method each frame (currently forceUpdate is fired to update the component, causing a rerender).
My personal motivation is to use react-native-reanimated with art, which requires this change to work, but I believe it has value more generally.
Notes/discussion points:

I've created a method to translate props to native props, and used this both in the render and setNativeProps methods for each component.  This may differ from what a user would expect, where setNativeProps suggests passing its arguments straight to the native component.  I've done this because I think most users are going to want to set props in the render method, and then directly manipulate them in a consistent manner, relying on art to translate the props to what the native component requires.  If we were to pass the arguments directly through, many of them would need to be a different format to their equivalent prop, which I think adds unnecessary complexity
for each component, setNativeProps merges existing props into the new props before translation.  The method we use does provide for only translating the props that would change as a result of the new props passed in (we pass an array of the props required to be translated), but I suspect the logic to work out what those props would be would be as expensive to compute as the 'over computing' we are undertaking by translating all props, every time.

Test Plan
I've tested (on iOS simulator, Android emulator and real iPhone 8) that:

the components render correctly, as they did before the change (no detrimental impact)
using an Animated.Value for opacity, strokeWidth, stroke, and fill will correctly animate the <Shape/> component without firing the render method

What's required for testing (prerequisites)?

I guess we should probably test on a real android device?

What are the steps to reproduce (after prerequisites)?

N/A

Compatibility

OS
Implemented

iOS
✅

Android
✅ - emulator tested only

Checklist

[X ] I have tested this on a device and a simulator (not android device)
[ N/A] I added the documentation in README.md
[N/A ] I mentioned this change in CHANGELOG.md
[X ] I updated the typed files (TS and Flow)
[N/A ] I added a sample use of the API in the example project (example/App.js)

Sorry for the delay on this one. It seems like a valid use case. I'll make sure to check it out in a day or two. Can you also include some example Animations in the example app?

All good!  Absolutely - I'll sort those out this weekend :)

@Esemesek, I've added a simple animation to the example app, animating the opacity of 3 circles (sorry for the lack of imagination on that one!), and updated the code to use the new shadow props provided in #45.

@Esemesek  - is there anything more you need me to do with this? I have a few days spare next week that I can work on it if there's anything that needs doing.

@MorganIsBatman It seems alright. I am quite hesitant because I don't want to break anything. The example looks really cool C: Will try to progress this as soon as I find more time.


Improve inlining of closure calls in Dart VM

When a local function calls another local function like in this example:
test(a, b) {
  f(x, y) => x + y;
  g(x, y) => f(x, y);
  return g(a, b);
}
the optimizing compiler should be able to inline f into g. As of now, it can't do this yet.

I think this was fixed by 79a5307d5be58037f053912c1aec2067f0eb9975

Not in this case where one closure calls another closure: Inlining g into main works. Inlining f into g into main does not. Right now, it would require doing store-to-load forwarding on the callee graph of g to eliminate the load of f from the context.

@alexmarkov


Premultiplied alpha / black halo png

Hi,
i recently tried to use bodymovin for an animation consisting of multiple images imported via psd. The exported images got all the good old premultiplied alpha issue. I tracked it down to the saveFrameToPng function. Same issue: https://forums.adobe.com/thread/1347389?start=0&tstart=0
I don't know if this is fixable.

I had read about it but didn't come up with that problem myself.
The issue with importing a render setup is that it is too invasive on the project.
I'll look further into it.
Meanwhile can't you replace the exported images with the layers exported from Photoshop?

Thank you!
Yes, replacing the images would fix this.

my solution to the 'saveFrameToPng()'  is to render the image through renderQ:
https://github.com/bigxixi/SaveFrameAsPNG-Plus
@bodymovin hope that can inspire

@bigxixi Yes, I've tried doing this before, but it involves messing with the render queue and loading an external comp to the rendering composition.
I will see if I find a better flow.

@bodymovin I add some code to replace the 'saveFrameToPng()' function in the (../jsx/utils/sourceHelper.jsx), and it works fine for me, the plugin now export pngs through renderQ and get rid of the black borders in pngs with transparency.
sourceHelper.jsx.zip
just replace the same file and try it out.
I am on macOS 10.11.6 with AE CC 2014.2
I havent test it on other machines,  I hope it could work fine on them.

@bigxixi This looks very promising!
I'll take a look at it in the weekend.
thanks!!


[Compatibility] Compatibility with ShipInventory

Is compatibility with ShipInventory possible?

@Koishukaze  Possibly, I'll look into it later if I remember.

@Koishukaze Compatibility with the ShipInventory mod has been added in the latest update SellMyScrap v1.7.0 - cef3cd5


highlight of variable is different between chrome and firefox

It's because of calcium is used for chrome left side.
So I've closed this


New version: GPSoftware.DirectoryOpus v13.6

Checklist for Pull Requests

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

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>?

[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

Hi @w3lld0ne,

This PR's version number  has 1 parameters (sets of numbers between dots - major, minor, etc), which is less than the current manifest's version 13.1, which has 2 parameters.

Does this PR's version number exactly match the version reported in the Apps & features Settings page? (Feel free to attach a screenshot.)
(Automated response - build 880)


Releases/1.3 async task tracker

It looks like Marathon 1.4 needs more time to be production ready. I prepared a PR that reflects critical changes made for 1.4 InstanceTracker and port it to 1.3 TaskTracker. With this changes threads count is more stable and keeps below 500.
Below you can see comparison between 1.3.6 before and after applying this patch (11:30 to 13:15).

Can one of the admins verify this patch?

Can one of the admins verify this patch?

ok to test

Integration tests do pass but the job fails because it tries to execute sbt scapegoat.


documentation missing

Documentation issue

miss documentation

how to uninstall a cluster?
how to add nodes to cluster?
how to remove a node from cluster?
how to upgrade a cluster?

/kind documentation

similar issue: https://github.com/kubean-io/kubean/issues/524


new line character in the cell value

New lines in the cell value is not working when you open it via excel. It said all new lines characters should be replaced with
 like this:
Thank you for your message.
 Thanks,

@jimiwhite1020
Below the line that reads
$item = str_replace(''', ''', htmlspecialchars($item, ENT_QUOTES));

add this:
$item = str_replace("\r\n", '
', $item);


Update the year in the footer

Is your feature request related to a problem? Please describe.

The year in the footer is outdated. It needs to be updated.

Describe the solution you'd like

Use a dynamic year in the footer instead of the hardcoded year
Refer to this

https://www.w3schools.com/jsref/jsref_getfullyear.asp

I would like to work on this.


[BUG - Dev2.0]

Branch or Release
Dev2.0
Game and Engine Version
Deep Rock Galactic
Describe the bug
Crash on launch while UE4SS initializes the ConsoleEnablerMod
To Reproduce
Steps to reproduce the behavior:

Launch game with ConsoleEnablerMod enabled.

Expected behavior
Initialize mod and launch.
Screenshots and UE4SS Log

Desktop (please complete the following information):
Win11
Additional context
Does not crash with ConsoleEnablerMod disabled.  Per Buckminster, does not crash with Release 2.0.
Possibly related to DRG using 3 console buttons, some of which are non-standard characters:

Appears to have been introduced in 3e7d030f167fa4a5c6611c1729b1091138e3e0dc

Introduced in f6f0e7b5d7c8802c063958a522c8416addc86ccb

I can confirm that this happens due to the non-ascii console keys that Deep Rock Galactic uses.
The problem is that Lua can't handle non-ascii strings so all strings that interact with Lua get converted to ascii but this conversion is not done in a safe way as it assumes that no strings contain any non-ascii characters.
I'm preparing a fix in the Helpers submodule for this right now to fix this.

I've submitted the fix and it can be found here: https://github.com/UE4SS-RE/Helpers/pull/1
Try it and see if it solves the problem.

Thank you.  Any idea why they were properly being replaced with ? in release configuration builds but not debug?

Thank you. Any idea why they were properly being replaced with ? in release configuration builds but not debug?

No, I'm unsure as to why it worked in release but I doubt the replacement with ? was proper.

I seem to recall release configurations using a different method in Windows DLL's and I think it depends on the version of windows, I seem to recall windows has some safety nets for Older Applications that don't support UTF8 or above, and when in Debug MS don't want you relying on these because they want you to fix your application to support Unicode.,
@MostlyBored is there any way that instead of just replacing them with ! could we replace them with a \u Unicode notation?


calories in negative

hey i am having a problem why calories are comming in negative example : -750

can you share your code?
But the problem seems out-of-date already...

Possibly related: https://github.com/StasDoskalenko/react-native-google-fit/issues/32
Related code BMR is being subtracted: https://github.com/StasDoskalenko/react-native-google-fit/blob/009ecbfb12cf59c20a9d33986551f58c1fd27c54/android/src/main/java/com/reactnative/googlefit/CalorieHistory.java#L165
Not sure what exactly the cause is, as I gave up trying to track it down.

Looks like we're gathering basal metabolic rate averaged over a week

Any way we can get the total calories, without BMR reduced from it, i.e., the total calories as showed in the Google Fit app?

@dj-8891 sure, I believe we can include some parameter there. Do you have some desirable API?

For the application I will be working on, I can work with only activity related calories as far as analytics is concerned but when it comes to displaying the details to the user, it would look good if my values match(or are close) with that shown in user's Google Fit app/account.

@dj-8891 sure, I believe we can include some parameter there. Do you have some desirable API?

I was also wondering the same, that parameter can be used to trigger if we need to call CalorieHistory - getBasalAVG() or not.

@dj-8891 if you are not extracting the basal are you getting the same value which is showing in Google fit App  in your app ?
stepMap.putDouble("calorie", dp.getValue(field).asFloat() );

@dj-8891 try passing end date as current datetime and you will get exact value as shown in the google fit app

@vineeth-accolite Stupid of me.
Thanks, this worked!!


Enhancement: add option --name to spo list retentionlabel set

Enhancement of spo list retentionlabel set:
We should add the option --name and make the option --label deprecated, to align with our naming convention.

What's the rationale behind this change?

The idea is that a retention label has a name-property, not a label-property. Renaming the option would be a breaking change, so I'd suggest adding the name option so that it is used instead of label (when specified). And deprecate the label option.

Thanks for clarifying. Let's do that.

Can I work on this one?

Sure, thank you, all yours!