[elasticsearch] Readiness probe is failing with 8.0.0-SNAPSHOT and default config

Chart version: 8.0.0-SNAPSHOT
Kubernetes version: all
Kubernetes provider: all
Helm Version: all
helm get release output:

Output of helm get release
NAME: helm-es-default
LAST DEPLOYED: Wed Sep 22 15:49:36 2021
NAMESPACE: default
STATUS: failed
REVISION: 1
USER-SUPPLIED VALUES:
null

COMPUTED VALUES:
antiAffinity: hard
antiAffinityTopologyKey: kubernetes.io/hostname
clusterHealthCheckParams: wait_for_status=green&timeout=1s
clusterName: elasticsearch
enableServiceLinks: true
envFrom: []
esConfig: {}
esJavaOpts: ""
esMajorVersion: ""
extraContainers: []
extraEnvs: []
extraInitContainers: []
extraVolumeMounts: []
extraVolumes: []
fsGroup: ""
fullnameOverride: ""
healthNameOverride: ""
hostAliases: []
httpPort: 9200
image: docker.elastic.co/elasticsearch/elasticsearch
imagePullPolicy: IfNotPresent
imagePullSecrets: []
imageTag: 8.0.0-SNAPSHOT
ingress:
  annotations: {}
  enabled: false
  hosts:
  - host: chart-example.local
    paths:
    - path: /
  tls: []
initResources: {}
keystore: []
labels: {}
lifecycle: {}
masterService: ""
maxUnavailable: 1
minimumMasterNodes: 2
nameOverride: ""
networkHost: <IP_ADDRESS>
networkPolicy:
  http:
    enabled: false
  transport:
    enabled: false
nodeAffinity: {}
nodeGroup: master
nodeSelector: {}
persistence:
  annotations: {}
  enabled: true
  labels:
    enabled: false
podAnnotations: {}
podManagementPolicy: Parallel
podSecurityContext:
  fsGroup: 1000
  runAsUser: 1000
podSecurityPolicy:
  create: false
  name: ""
  spec:
    fsGroup:
      rule: RunAsAny
    privileged: true
    runAsUser:
      rule: RunAsAny
    seLinux:
      rule: RunAsAny
    supplementalGroups:
      rule: RunAsAny
    volumes:
    - secret
    - configMap
    - persistentVolumeClaim
    - emptyDir
priorityClassName: ""
protocol: http
rbac:
  create: false
  serviceAccountAnnotations: {}
  serviceAccountName: ""
readinessProbe:
  failureThreshold: 3
  initialDelaySeconds: 10
  periodSeconds: 10
  successThreshold: 3
  timeoutSeconds: 5
replicas: 3
resources:
  limits:
    cpu: 1000m
    memory: 2Gi
  requests:
    cpu: 1000m
    memory: 2Gi
roles:
- master
- data
- data_content
- data_hot
- data_warm
- data_cold
- ingest
- ml
- remote_cluster_client
- transform
schedulerName: ""
secretMounts: []
securityContext:
  capabilities:
    drop:
    - ALL
  runAsNonRoot: true
  runAsUser: 1000
service:
  annotations: {}
  enabled: true
  externalTrafficPolicy: ""
  httpPortName: http
  labels: {}
  labelsHeadless: {}
  loadBalancerIP: ""
  loadBalancerSourceRanges: []
  nodePort: ""
  transportPortName: transport
  type: ClusterIP
sysctlInitContainer:
  enabled: true
sysctlVmMaxMapCount: 262144
terminationGracePeriod: 120
tests:
  enabled: true
tolerations: []
transportPort: 9300
updateStrategy: RollingUpdate
volumeClaimTemplate:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 30Gi

HOOKS:
---
# Source: elasticsearch/templates/test/test-elasticsearch-health.yaml
apiVersion: v1
kind: Pod
metadata:
  name: "helm-es-default-ncnzd-test"
  annotations:
    "helm.sh/hook": test
    "helm.sh/hook-delete-policy": hook-succeeded
spec:
  securityContext:
    fsGroup: 1000
    runAsUser: 1000
  containers:
  - name: "helm-es-default-rxlbg-test"
    image: "docker.elastic.co/elasticsearch/elasticsearch:8.0.0-SNAPSHOT"
    imagePullPolicy: "IfNotPresent"
    command:
      - "sh"
      - "-c"
      - |
        #!/usr/bin/env bash -e
        curl -XGET --fail 'elasticsearch-master:9200/_cluster/health?wait_for_status=green&timeout=1s'
  restartPolicy: Never
MANIFEST:
---
# Source: elasticsearch/templates/poddisruptionbudget.yaml
apiVersion: policy/v1beta1
kind: PodDisruptionBudget
metadata:
  name: "elasticsearch-master-pdb"
spec:
  maxUnavailable: 1
  selector:
    matchLabels:
      app: "elasticsearch-master"
---
# Source: elasticsearch/templates/service.yaml
kind: Service
apiVersion: v1
metadata:
  name: elasticsearch-master
  labels:
    heritage: "Helm"
    release: "helm-es-default"
    chart: "elasticsearch"
    app: "elasticsearch-master"
  annotations:
    {}
spec:
  type: ClusterIP
  selector:
    release: "helm-es-default"
    chart: "elasticsearch"
    app: "elasticsearch-master"
  ports:
  - name: http
    protocol: TCP
    port: 9200
  - name: transport
    protocol: TCP
    port: 9300
---
# Source: elasticsearch/templates/service.yaml
kind: Service
apiVersion: v1
metadata:
  name: elasticsearch-master-headless
  labels:
    heritage: "Helm"
    release: "helm-es-default"
    chart: "elasticsearch"
    app: "elasticsearch-master"
  annotations:
    service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
spec:
  clusterIP: None # This is needed for statefulset hostnames like elasticsearch-0 to resolve
  # Create endpoints also if the related pod isn't ready
  publishNotReadyAddresses: true
  selector:
    app: "elasticsearch-master"
  ports:
  - name: http
    port: 9200
  - name: transport
    port: 9300
---
# Source: elasticsearch/templates/statefulset.yaml
apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: elasticsearch-master
  labels:
    heritage: "Helm"
    release: "helm-es-default"
    chart: "elasticsearch"
    app: "elasticsearch-master"
  annotations:
    esMajorVersion: "8"
spec:
  serviceName: elasticsearch-master-headless
  selector:
    matchLabels:
      app: "elasticsearch-master"
  replicas: 3
  podManagementPolicy: Parallel
  updateStrategy:
    type: RollingUpdate
  volumeClaimTemplates:
  - metadata:
      name: elasticsearch-master
    spec:
      accessModes:
      - ReadWriteOnce
      resources:
        requests:
          storage: 30Gi
  template:
    metadata:
      name: "elasticsearch-master"
      labels:
        release: "helm-es-default"
        chart: "elasticsearch"
        app: "elasticsearch-master"
      annotations:

    spec:
      securityContext:
        fsGroup: 1000
        runAsUser: 1000
      affinity:
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
          - labelSelector:
              matchExpressions:
              - key: app
                operator: In
                values:
                - "elasticsearch-master"
            topologyKey: kubernetes.io/hostname
      terminationGracePeriodSeconds: 120
      volumes:
      enableServiceLinks: true
      initContainers:
      - name: configure-sysctl
        securityContext:
          runAsUser: 0
          privileged: true
        image: "docker.elastic.co/elasticsearch/elasticsearch:8.0.0-SNAPSHOT"
        imagePullPolicy: "IfNotPresent"
        command: ["sysctl", "-w", "vm.max_map_count=262144"]
        resources:
          {}

      containers:
      - name: "elasticsearch"
        securityContext:
          capabilities:
            drop:
            - ALL
          runAsNonRoot: true
          runAsUser: 1000
        image: "docker.elastic.co/elasticsearch/elasticsearch:8.0.0-SNAPSHOT"
        imagePullPolicy: "IfNotPresent"
        readinessProbe:
          exec:
            command:
              - sh
              - -c
              - |
                #!/usr/bin/env bash -e
                # If the node is starting up wait for the cluster to be ready (request params: "wait_for_status=green&timeout=1s" )
                # Once it has started only check that the node itself is responding
                START_FILE=/tmp/.es_start_file

                # Disable nss cache to avoid filling dentry cache when calling curl
                # This is required with Elasticsearch Docker using nss < 3.52
                export NSS_SDB_USE_CACHE=no

                http () {
                  local path="${1}"
                  local args="${2}"
                  set -- -XGET -s

                  if [ "$args" != "" ]; then
                    set -- "$@" $args
                  fi

                  if [ -n "${ELASTIC_USERNAME}" ] && [ -n "${ELASTIC_PASSWORD}" ]; then
                    set -- "$@" -u "${ELASTIC_USERNAME}:${ELASTIC_PASSWORD}"
                  fi

                  curl --output /dev/null -k "$@" "http://<IP_ADDRESS>:9200${path}"
                }

                if [ -f "${START_FILE}" ]; then
                  echo 'Elasticsearch is already running, lets check the node is healthy'
                  HTTP_CODE=$(http "/" "-w %{http_code}")
                  RC=$?
                  if [[ ${RC} -ne 0 ]]; then
                    echo "curl --output /dev/null -k -XGET -s -w '%{http_code}' \${BASIC_AUTH} http://<IP_ADDRESS>:9200/ failed with RC ${RC}"
                    exit ${RC}
                  fi
                  # ready if HTTP code 200, 503 is tolerable if ES version is 6.x
                  if [[ ${HTTP_CODE} == "200" ]]; then
                    exit 0
                  elif [[ ${HTTP_CODE} == "503" && "8" == "6" ]]; then
                    exit 0
                  else
                    echo "curl --output /dev/null -k -XGET -s -w '%{http_code}' \${BASIC_AUTH} http://<IP_ADDRESS>:9200/ failed with HTTP code ${HTTP_CODE}"
                    exit 1
                  fi

                else
                  echo 'Waiting for elasticsearch cluster to become ready (request params: "wait_for_status=green&timeout=1s" )'
                  if http "/_cluster/health?wait_for_status=green&timeout=1s" "--fail" ; then
                    touch ${START_FILE}
                    exit 0
                  else
                    echo 'Cluster is not yet ready (request params: "wait_for_status=green&timeout=1s" )'
                    exit 1
                  fi
                fi
          failureThreshold: 3
          initialDelaySeconds: 10
          periodSeconds: 10
          successThreshold: 3
          timeoutSeconds: 5
        ports:
        - name: http
          containerPort: 9200
        - name: transport
          containerPort: 9300
        resources:
          limits:
            cpu: 1000m
            memory: 2Gi
          requests:
            cpu: 1000m
            memory: 2Gi
        env:
          - name: node.name
            valueFrom:
              fieldRef:
                fieldPath: metadata.name
          - name: cluster.initial_master_nodes
            value: "elasticsearch-master-0,elasticsearch-master-1,elasticsearch-master-2,"
          - name: node.roles
            value: "master,data,data_content,data_hot,data_warm,data_cold,ingest,ml,remote_cluster_client,transform,"
          - name: discovery.seed_hosts
            value: "elasticsearch-master-headless"
          - name: cluster.name
            value: "elasticsearch"
          - name: network.host
            value: "<IP_ADDRESS>"
        volumeMounts:
          - name: "elasticsearch-master"
            mountPath: /usr/share/elasticsearch/data

NOTES:
1. Watch all cluster members come up.
  $ kubectl get pods --namespace=default -l app=elasticsearch-master -w2. Test cluster health using Helm test.
  $ helm --namespace=default test helm-es-default

Describe the bug:
When using 8.0.0-SNAPSHOT and default values (default elasticsearch config, security not enforced), Elasticsearch chart fails to deploy, with pods never reaching ready state due to Readiness probe failing:
$ kubectl describe pod elasticsearch-master-0
...
  Normal   Started                 23m                    kubelet                  Started container elasticsearch
  Warning  Unhealthy               4m21s (x114 over 23m)  kubelet                  Readiness probe failed: Waiting for elasticsearch cluster to become ready (request params: "wait_for_status=green&timeout=1s" )
Cluster is not yet ready (request params: "wait_for_status=green&timeout=1s" )

This seems to be related to the new behavior where Elasticsearch enables security and generates password if it's not configured. Without getting too deep into the weed, I think that's because the generated credentials are not passed to the readiness probe scripts: https://github.com/elastic/helm-charts/blob/e22fe0903686279989a4a02c56656bd7ef4b8604/elasticsearch/templates/statefulset.yaml#L229-L283
Steps to reproduce:

Try deploy Elasticsearch chart with default values from master branch

$ cd helm-charts
$ git checkout master
$ helm install es ./elasticsearch

That's all

Expected behavior: Readiness probe should success.
Provide logs and/or server output (if relevant):

Elasticsearch logs
{"@timestamp":"2021-09-22T13:51:34.244Z", "log.level": "INFO", "message":"added {{elasticsearch-master-2}{grA2us18Sfa19w_WJ1EYow}{WFDAR5wXRHa0pWecXpZfQA}{<IP_ADDRESS>}{<IP_ADDRESS>:9300}{cdhilmrstw}}, term: 1, version: 26, reason: ApplyCommitRequest{term=1, version=26, sourceNode={elasticsearch-master-1}{ZiR5zfJIQsKDVtGmUmC4pA}{0VDEJ0PNQ8mG1ErLczvJJg}{<IP_ADDRESS>}{<IP_ADDRESS>:9300}{cdhilmrstw}{ml.machine_memory=2147483648, ml.max_open_jobs=512, xpack.installed=true, ml.max_jvm_size=1073741824}}", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][clusterApplierService#updateTask][T#1]","log.logger":"org.elasticsearch.cluster.service.ClusterApplierService","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}

-----------------------------------------------------------------

Password for the elastic user is: _y_G+hZWyYds8F*TjXv8

Password for the kibana_system user is: CYkFjJ61BcUlSL3_jhMH

Please note these down as they will not be shown again.

You can use 'bin/elasticsearch-reset-elastic-password' at any time
in order to reset the password for the elastic user.

You can use 'bin/elasticsearch-reset-kibana-system-password' at any time
in order to reset the password for the kibana_system user.

-----------------------------------------------------------------

{"@timestamp":"2021-09-22T13:51:37.896Z", "log.level": "INFO", "message":"updating geoip databases", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#2]","log.logger":"org.elasticsearch.ingest.geoip.GeoIpDownloader","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:37.896Z", "log.level": "INFO", "message":"fetching geoip databases overview from [https://geoip.elastic.co/v1/database?elastic_geoip_service_tos=agree]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#2]","log.logger":"org.elasticsearch.ingest.geoip.GeoIpDownloader","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:38.034Z", "log.level": "INFO", "message":"license [e0a56fa8-a289-4ea2-8083-584fef2043bd] mode [basic] - valid", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][clusterApplierService#updateTask][T#1]","log.logger":"org.elasticsearch.license.LicenseService","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:38.035Z", "log.level": "INFO", "message":"license mode is [basic], currently licensed security realms are [reserved/reserved,file/default_file,native/default_native]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][clusterApplierService#updateTask][T#1]","log.logger":"org.elasticsearch.xpack.security.authc.Realms","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:38.899Z", "log.level": "INFO", "message":"updating geoip database [GeoLite2-ASN.mmdb]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#2]","log.logger":"org.elasticsearch.ingest.geoip.GeoIpDownloader","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:41.907Z", "log.level": "INFO", "message":"downloading geoip database [GeoLite2-ASN.mmdb] to [/tmp/elasticsearch-11663057740847801878/geoip-databases/TRJIoKSARKqhW9aHwg-1Eg/GeoLite2-ASN.mmdb.tmp.gz]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][clusterApplierService#updateTask][T#1]","log.logger":"org.elasticsearch.ingest.geoip.DatabaseRegistry","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:42.003Z", "log.level": "INFO", "message":"updated geoip database [GeoLite2-ASN.mmdb]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#2]","log.logger":"org.elasticsearch.ingest.geoip.GeoIpDownloader","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:42.023Z", "log.level": "INFO", "message":"updating geoip database [GeoLite2-City.mmdb]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#2]","log.logger":"org.elasticsearch.ingest.geoip.GeoIpDownloader","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:42.461Z", "log.level": "INFO", "message":"successfully reloaded changed geoip database file [/tmp/elasticsearch-11663057740847801878/geoip-databases/TRJIoKSARKqhW9aHwg-1Eg/GeoLite2-ASN.mmdb]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#1]","log.logger":"org.elasticsearch.ingest.geoip.DatabaseRegistry","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:46.888Z", "log.level": "INFO", "message":"downloading geoip database [GeoLite2-City.mmdb] to [/tmp/elasticsearch-11663057740847801878/geoip-databases/TRJIoKSARKqhW9aHwg-1Eg/GeoLite2-City.mmdb.tmp.gz]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][clusterApplierService#updateTask][T#1]","log.logger":"org.elasticsearch.ingest.geoip.DatabaseRegistry","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:46.910Z", "log.level": "INFO", "message":"updated geoip database [GeoLite2-City.mmdb]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#2]","log.logger":"org.elasticsearch.ingest.geoip.GeoIpDownloader","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:46.913Z", "log.level": "INFO", "message":"updating geoip database [GeoLite2-Country.mmdb]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#2]","log.logger":"org.elasticsearch.ingest.geoip.GeoIpDownloader","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:48.315Z", "log.level": "INFO", "message":"downloading geoip database [GeoLite2-Country.mmdb] to [/tmp/elasticsearch-11663057740847801878/geoip-databases/TRJIoKSARKqhW9aHwg-1Eg/GeoLite2-Country.mmdb.tmp.gz]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][clusterApplierService#updateTask][T#1]","log.logger":"org.elasticsearch.ingest.geoip.DatabaseRegistry","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:48.496Z", "log.level": "INFO", "message":"updated geoip database [GeoLite2-Country.mmdb]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#2]","log.logger":"org.elasticsearch.ingest.geoip.GeoIpDownloader","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:48.601Z", "log.level": "INFO", "message":"successfully reloaded changed geoip database file [/tmp/elasticsearch-11663057740847801878/geoip-databases/TRJIoKSARKqhW9aHwg-1Eg/GeoLite2-Country.mmdb]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#4]","log.logger":"org.elasticsearch.ingest.geoip.DatabaseRegistry","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}
{"@timestamp":"2021-09-22T13:51:49.309Z", "log.level": "INFO", "message":"successfully reloaded changed geoip database file [/tmp/elasticsearch-11663057740847801878/geoip-databases/TRJIoKSARKqhW9aHwg-1Eg/GeoLite2-City.mmdb]", "service.name":"ES_ECS","process.thread.name":"elasticsearch[elasticsearch-master-0][generic][T#1]","log.logger":"org.elasticsearch.ingest.geoip.DatabaseRegistry","event.dataset":"elasticsearch.server","elasticsearch.cluster.uuid":"Yopr_NEFQr6mBv8Da2yIOA","elasticsearch.node.id":"TRJIoKSARKqhW9aHwg-1Eg","elasticsearch.node.name":"elasticsearch-master-0","elasticsearch.cluster.name":"elasticsearch"}

Any additional context:

cc @elastic/es-delivery

Hmm, what can we do here? I suspect we should be explicit, that is, make users choose to either enable to disable security, and if they enable, provide the necessary credentials.
cc @jkakavas

Thanks for bringing this to our attention!

Hmm, what can we do here? I suspect we should be explicit, that is, make users choose to either enable to disable security, and if they enable, provide the necessary credentials.

Yes, I agree. Auto-configuration is helpful but it is not aimed to cover the use cases where there is some other form of orchestration. My helm knowledge is somewhat limited, but I think the way forward here would be to include a section like
extraEnvs:
  - name: ELASTIC_PASSWORD
    valueFrom:
      secretKeyRef:
        name: elastic-credentials
        key: password

in all of our examples ( as we do for https://github.com/elastic/helm-charts/blob/master/elasticsearch/examples/security/values.yaml ) and that will be used for the readiness probe too. Setting this would also trigger elasticsearch to not auto-generate a new password for the elastic user.

Yes, I can confirm that settings ELASTIC_USERNAME and ELASTIC_PASSWORD variables via extraEnvs values work fine and is similar to what we are already doing in the security example.
The goal of testing the default example in Jenkins, is to ensure that deploying Elasticsearch chart with the default config using helm install elasticsearch elastic/elasticsearch work without having to configure anything else. With security auto-configuration in 8.0.0-SNAPSHOT, this is not possible anymore as the credentials generated by Elasticsearch can not be passed to Helm to be reused in the readiness probe script.
If we want to make auto-configuration compatible with Elasticsearch chart, we should be able to query http://<IP_ADDRESS>:9200/_cluster/health endpoint without credentials so that readiness probe don't need to know the credentials or provide a similar endpoint to use as an unauthenticated healthcheck. Do you think this could make sense?
Otherwise, we can just consider that Elasticsearch chart shouldn't work anymore with only default config and document that security auto-configuration is not compatible with this charts and that setting ELASTIC_USERNAME and ELASTIC_PASSWORD variables via extraEnvs values is mandatory with 8.0.0.
WDYT @jkakavas?

Otherwise, we can just consider that Elasticsearch chart shouldn't work anymore with only default config and document that security auto-configuration is not compatible with this charts and that setting ELASTIC_USERNAME and ELASTIC_PASSWORD variables via extraEnvs values is mandatory with 8.0.0.

I think we should be documenting this as our preferred approach to use the helm chart. Mind, you don't need to set ELASTIC_USERNAME as we can hardcode this to be elastic and a user would only need to set ELASTIC_PASSWORD. Security auto-configuration is/can be compatible with the charts, but not with the readiness probe I guess. Still, we have the established practice for docker to be passing ELASTIC_PASSWORD env var so this might be less surprising to the folks that use the helm charts.

If we want to make auto-configuration compatible with Elasticsearch chart, we should be able to query http://<IP_ADDRESS>:9200/_cluster/health endpoint without credentials so that readiness probe don't need to know the credentials or provide a similar endpoint to use as an unauthenticated healthcheck. Do you think this could make sense?

There is no unauthenticated health check endpoint for ES. If we query the http://<IP_ADDRESS>:9200/_cluster/health, we'll just get a 401. One way around this is for the chart to enable anonymous access and define a file based role that only has access to the health check action and assign this role for the anonymous access. Then the readiness probe can succeed. The deploying part will "work" but the user would have to know to check the elasticsearch output to get their password ( I assume that there is no tty attached for elasticsearch in this use case and we're actively working on not generating credentials in that case ) or use our tooling to set/reset this to a new one.
Given the opportunity, I also want to bring https://github.com/elastic/elasticsearch/pull/77231 to your attention. In that PR, we are enabling auto-configuration of TLS so we wouldn't need the make secrets part of the security chart anymore


How can I Activate IDeviceTopology from MMDevice using NAudio?

Hi,
I'd like to use IDeviceTopology interface, but the IMMDevice is readonly, I cannot find a way to get this interfate...
Is it possible to make IMMDevice public available next version? So people can extend their usage according to different demands...
Thanks.

Sorry for the delay in responding. The best approach would be to add IDeviceTopology support directly to NAudio. I'd be happy to accept a PR.

Hi Virginie, could you solve it in any way?


javaccPlugin should compile only the javacc file in the inputDirectory

Hi
I have 3 jj files in the top directory and all are compiled by JavaCC while only the one in the input directory should be compiled
Z:\git\c\parser>c:\programfiles\gradle\bin\gradle compileJa
:compileJavacc
Java Compiler Compiler Version 6.1_2 (Parser Generator)
(type "javacc" with no arguments for help)
Reading from file Z:\git\c\parser\C.jj . . .
File "TokenMgrError.java" does not exist.  Will create one.
File "ParseException.java" does not exist.  Will create one.
File "Token.java" does not exist.  Will create one.
File "SimpleCharStream.java" does not exist.  Will create one.
Parser generated successfully.
Java Compiler Compiler Version 6.1_2 (Parser Generator)
(type "javacc" with no arguments for help)
Reading from file Z:\git\c\parser\src\main\javacc\C.jj . . .
Warning: Output directory "Z:\git\c\parser\build\generated\javacc\tmp\src\main\javacc" does not exist. Creating the directory.
File "TokenMgrError.java" does not exist.  Will create one.
File "ParseException.java" does not exist.  Will create one.
File "Token.java" does not exist.  Will create one.
File "SimpleCharStream.java" does not exist.  Will create one.
Parser generated with 0 errors and 1 warnings.
Java Compiler Compiler Version 6.1_2 (Parser Generator)
(type "javacc" with no arguments for help)
Reading from file Z:\git\c\parser\src\main\jtb\jtb.out.jj . . .
Warning: Output directory "Z:\git\c\parser\build\generated\javacc\tmp\src\main\jtb" does not exist. Creating the directory.
File "TokenMgrError.java" does not exist.  Will create one.
File "ParseException.java" does not exist.  Will create one.
File "Token.java" does not exist.  Will create one.
File "SimpleCharStream.java" does not exist.  Will create one.
Parser generated with 0 errors and 1 warnings.

BUILD SUCCESSFUL

build.gradle
Z:\git\c\parser>type build.gradle
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath group: 'ca.coglinc', name: 'javacc-gradle-plugin', version: '2.3.1'
    }
}
apply plugin: 'ca.coglinc.javacc'
compileJavacc {
    inputDirectory = projectDir
    outputDirectory = file(project.buildDir.absolutePath + '/generated/javacc')
//      arguments = [grammar_encoding: 'UTF-8', static: 'false']
}

You have set the inputDirectory to your $projectDir, which means you'll compile any javacc file that's under it! If you want to compile only what's under src/main/javacc, simply remove the inputDirectory configuration. This is the default value.

And I'm pretty sure you don't need the outputDirectory configuration either. You're basically outputting to the default location.

ok got it...thanks for your quick answer.


Stiff head

My skins head is stuck in place like if you were looking left and the eye movement is bugged cause of it.

This happens to me too, and I'm on the latest EMF and ETF version (fabric) and the head is backwards and looking to the left

So this must be some mod.  I had a similar problem with paragliders mod and the body rotation. The body would get stuck in one rotation after using the paragilder.

I remove all the mods I have (leaving only the necessaries of the resource pack) and it is like this

Is this fixed with the latest of EMF, ETF and Fresh Moves?


[v2] Class Inheritance Limitation

Consider the Following:
Animal, Cat and Dog are all Astro classes. Cat and Dog inherit from the Animal class. We have 2 animals, 2 cats and 1 dog. If the server publishes Animal.find({}, {children: true}) the client side is able to receive the 2 cats and 1 dog accessible through Cat and Dog Astro classes, however the 2 animals are never published and/or are not accessible through the Animal Astro class.
I would expect this to work regardless of children: true or children: false. This seems like a bug, could be a feature if something like abstract: true is introduced in the Animal class.
Let me know your thoughts @jagi

It actually works as you described. You probably have a bug in your code.

I forgot to use {children: true} on the client side, my bad. Perhaps this could be added to the documentation as a note.


Auth service broken

Hey!
Apparently, your auth service is not working, which means the entire demo is not working.

works fine for me...


feature(index.astro): add intersection observer to animate section navigation

:tada: This issue has been resolved in version 2.0.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Why the icons are shown as rectangle ?

Platform: macos
Atom version: 1.15.0 x64
Seti-icons version: 1.4.3
UI Theme: One Dark

Seems like a font issue. Have you tried reloading Atom or disable/enable the plugin?

I have tried but it didn't work

Please check the latest version (1.5.0) and see if that changes anything. If not, can you see if the same thing happens when you use Seti UI?


Synthesis failed for nodejs-media-translation

Hello! Autosynth couldn't regenerate nodejs-media-translation. :broken_heart:
Here's the output from running synth.py:
):
 - <builtin>
 - /home/kbuilder/.cache/synthtool/googleapis/WORKSPACE:224:1
DEBUG: Rule 'com_googleapis_gapic_generator_go' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "12bfed7873f085093cd60615bd113178ecf36396af0c2ca25e6cd4d4bebdd198"
DEBUG: Call stack for the definition of repository 'com_googleapis_gapic_generator_go' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/bazel_tools/tools/build_defs/repo/http.bzl:296:16):
 - <builtin>
 - /home/kbuilder/.cache/synthtool/googleapis/WORKSPACE:261:1
DEBUG: Rule 'gapic_generator_typescript' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "ca322b5e7b0d03b3cc44a90444e3a7f944c9ba3345f0505ee48c8e715d19dd95"
DEBUG: Call stack for the definition of repository 'gapic_generator_typescript' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/bazel_tools/tools/build_defs/repo/http.bzl:296:16):
 - <builtin>
 - /home/kbuilder/.cache/synthtool/googleapis/WORKSPACE:280:1
DEBUG: Rule 'gapic_generator_csharp' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "40ddae63d2729ef5ccbd8b60123327ea200ce9400d0629238193ff530dcaea18"
DEBUG: Call stack for the definition of repository 'gapic_generator_csharp' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/bazel_tools/tools/build_defs/repo/http.bzl:296:16):
 - <builtin>
 - /home/kbuilder/.cache/synthtool/googleapis/WORKSPACE:318:1
DEBUG: Rule 'bazel_skylib' indicated that a canonical reproducible form can be obtained by modifying arguments sha256 = "1dde365491125a3db70731e25658dfdd3bc5dbdfd11b840b3e987ecf043c7ca0"
DEBUG: Call stack for the definition of repository 'bazel_skylib' which is a http_archive (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/bazel_tools/tools/build_defs/repo/http.bzl:296:16):
 - <builtin>
 - /home/kbuilder/.cache/synthtool/googleapis/WORKSPACE:35:1
Analyzing: target //google/cloud/mediatranslation/v1beta1:mediatranslation-v1beta1-nodejs (1 packages loaded, 0 targets configured)
Analyzing: target //google/cloud/mediatranslation/v1beta1:mediatranslation-v1beta1-nodejs (1 packages loaded, 2 targets configured)
INFO: Call stack for the definition of repository 'npm' which is a yarn_install (rule definition at /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/build_bazel_rules_nodejs/internal/npm_install/npm_install.bzl:411:16):
 - <builtin>
 - /home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/build_bazel_rules_nodejs/index.bzl:87:5
 - /home/kbuilder/.cache/synthtool/googleapis/WORKSPACE:293:1
Analyzing: target //google/cloud/mediatranslation/v1beta1:mediatranslation-v1beta1-nodejs (1 packages loaded, 2 targets configured)
ERROR: An error occurred during the fetch of repository 'npm':
   yarn_install failed: yarn install v1.19.1
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
info If you think this is a bug, please open a bug report with the information provided in "/home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_typescript/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
 (error An unexpected error occurred<EMAIL_ADDRESS>Request failed \"404 Not Found\"".
Process stalled
Active handles:
  - Socket
  - Socket
  - Socket
  - TLSSocket
)
ERROR: /home/kbuilder/.cache/synthtool/googleapis/google/cloud/mediatranslation/v1beta1/BUILD.bazel:250:1: //google/cloud/mediatranslation/v1beta1:mediatranslation_nodejs_gapic depends on @gapic_generator_typescript//:protoc_plugin in repository @gapic_generator_typescript which failed to fetch. no such package '@npm//@bazel/typescript': yarn_install failed: yarn install v1.19.1
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
info If you think this is a bug, please open a bug report with the information provided in "/home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_typescript/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
 (error An unexpected error occurred<EMAIL_ADDRESS>Request failed \"404 Not Found\"".
Process stalled
Active handles:
  - Socket
  - Socket
  - Socket
  - TLSSocket
)
ERROR: Analysis of target '//google/cloud/mediatranslation/v1beta1:mediatranslation-v1beta1-nodejs' failed; build aborted: no such package '@npm//@bazel/typescript': yarn_install failed: yarn install v1.19.1
[1/5] Validating package.json...
[2/5] Resolving packages...
[3/5] Fetching packages...
info If you think this is a bug, please open a bug report with the information provided in "/home/kbuilder/.cache/bazel/_bazel_kbuilder/a732f932c2cbeb7e37e1543f189a2a73/external/gapic_generator_typescript/yarn-error.log".
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.
 (error An unexpected error occurred<EMAIL_ADDRESS>Request failed \"404 Not Found\"".
Process stalled
Active handles:
  - Socket
  - Socket
  - Socket
  - TLSSocket
)
INFO: Elapsed time: 6.186s
INFO: 0 processes.

DEBUG:synthtool:Wrote metadata to synth.metadata.
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 102, in <module>
    main()
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 829, in __call__
    return self.main(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 782, in main
    rv = self.invoke(ctx)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 1066, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/tmpfs/src/github/synthtool/env/lib/python3.6/site-packages/click/core.py", line 610, in invoke
    return callback(*args, **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/__main__.py", line 94, in main
    spec.loader.exec_module(synth_module)  # type: ignore
  File "<frozen importlib._bootstrap_external>", line 678, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/kbuilder/.cache/synthtool/nodejs-media-translation/synth.py", line 31, in <module>
    library = gapic.node_library(name, version)
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_bazel.py", line 52, in node_library
    return self._generate_code(service, version, "nodejs", **kwargs)
  File "/tmpfs/src/github/synthtool/synthtool/gcp/gapic_bazel.py", line 183, in _generate_code
    shell.run(bazel_run_args)
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 39, in run
    raise exc
  File "/tmpfs/src/github/synthtool/synthtool/shell.py", line 33, in run
    encoding="utf-8",
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 438, in run
    output=stdout, stderr=stderr)
subprocess.CalledProcessError: Command '['bazel', '--max_idle_secs=240', 'build', '//google/cloud/mediatranslation/v1beta1:mediatranslation-v1beta1-nodejs']' returned non-zero exit status 1.
2020-08-06 04:17:52,300 autosynth [ERROR] > Synthesis failed
2020-08-06 04:17:52,300 autosynth [DEBUG] > Running: git reset --hard HEAD
HEAD is now at 7ec33f4 docs: add links to the CHANGELOG from the README.md for Java and Node (#70)
2020-08-06 04:17:52,305 autosynth [DEBUG] > Running: git checkout autosynth
Switched to branch 'autosynth'
2020-08-06 04:17:52,310 autosynth [DEBUG] > Running: git clean -fdx
Removing __pycache__/
Traceback (most recent call last):
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 690, in <module>
    main()
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 539, in main
    return _inner_main(temp_dir)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 670, in _inner_main
    commit_count = synthesize_loop(x, multiple_prs, change_pusher, synthesizer)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 375, in synthesize_loop
    has_changes = toolbox.synthesize_version_in_new_branch(synthesizer, youngest)
  File "/tmpfs/src/github/synthtool/autosynth/synth.py", line 273, in synthesize_version_in_new_branch
    synthesizer.synthesize(synth_log_path, self.environ)
  File "/tmpfs/src/github/synthtool/autosynth/synthesizer.py", line 120, in synthesize
    synth_proc.check_returncode()  # Raise an exception.
  File "/home/kbuilder/.pyenv/versions/3.6.9/lib/python3.6/subprocess.py", line 389, in check_returncode
    self.stderr)
subprocess.CalledProcessError: Command '['/tmpfs/src/github/synthtool/env/bin/python3', '-m', 'synthtool', '--metadata', 'synth.metadata', 'synth.py', '--']' returned non-zero exit status 1.

Google internal developers can see the full log here.

Autosynth passed, closing! :green_heart:


We need to disable iCloud Backup

By default files saved by apps are replicated to iCloud. But replicating a replication DB (e.g. our leveldown files) to the cloud is kind of silly. iOS provides a specific API that one can call to specify that files are not to be replicated to iCloud. We have to figure out how to use it with our files.

If you can take advantage of Cordova config in this instance then add the following preference to iOS:
<preference name="BackupWebStorage" value="none" />

Also you can use /Library/Caches to store app data - that folder will not get backed up automatically to iCloud.
https://developer.apple.com/library/ios/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html


Regenerate client libraries and fix up errors

Suggest this should be reviewed commit-by-commit.

(Running builddocs.sh locally, as AppVeyor appears to be taking a long time...)


To Add. Footer with privacy, disclaimer and copyright contexts.

Hi can I work on this issue?

sure , after adding a matching footer do send me the ss


Broken link at CIP process

https://developers.cardano.org/docs/get-started/technical-concepts/#cardano-improvement-proposals-cip
Broken link
https://developers.cardano.org/docs/governance/cardano-improvement-proposals/CIP-0001
Should be replaced by this:
https://developers.cardano.org/docs/get-started/governance/cardano-improvement-proposals/CIP-0001

Issue only appears on main branch in staging it's already fixed.
https://staging-dev-portal.netlify.app/docs/get-started/technical-concepts
@fill-the-fill when we push staging to main this should be fixed, correct?

I've made a PR to fix this issue

The problem still persist in the dev staging.
https://staging-dev-portal.netlify.app/docs/get-started/governance/cardano-improvement-proposals/CIP-0001

Just noticed CIP in the title & verified that this indeed has been fixed.


Map inside UDT prevents indexing

Elasticsearch version: 6.2.3
Plugins installed: []
JVM version (java -version): openjdk version "1.8.0_181"
OS version (uname -a if on a Unix-like system): 05 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Description of the problem including expected versus actual behavior:
Map inside UDT prevents cassandra rows from being indexed. In the example below, the search returns no result. (Problem doesn't occur when the map inside the UDT is removed).
Steps to reproduce:

In cqlsh:

CREATE KEYSPACE example WITH REPLICATION = { 'class':'NetworkTopologyStrategy', 'DC1':2 };

CREATE TYPE example.vars (
  str frozen<map<text, text>>
);

CREATE TABLE example.sessions (
  id timeuuid PRIMARY KEY ,
  meta frozen<vars>
);

INSERT INTO example.sessions (id, meta)

VALUES (
    now(),
	{
		str: { 'nickname': 'someuser' }
	}
);

curl -H "Content-Type: application/json" -XPUT "http://localhost:9200/example?pretty"
curl -XPUT "http://localhost:9200/example/_mapping/sessions" -H 'content-type: application/json' -d '{ "sessions" : { "discover" : ".*" }}'
In browser, search http://localhost:9200/example/sessions/_search?&q=*:*&error_trace=true

Provide logs (if relevant):

Hi,
This is currently not supported because it would involve a dynamic mapping update of a nested object. As a workaround, use a map in a column rather than in an UDT.


Update install-app-guard.md

Updated minimum system requirements

@JohanFreelancer9 - kindly do the copy editor review for this PR. Thanks

@schmurky Please merge this PR. Thanks


Improve fidelity of multi-pointer drag gestures.

Improve fidelity of multi-pointer drag gestures.
Hi there!
My name is winctoryang and fixed the related issue below. Please have a review and have a nice one!
Thank you!
As https://github.com/flutter/flutter/issues/38926  said:
When multi pointers dragging: delta(combined) = sum of delta(n)
This is very wrong. When multiple pointers are moving in the same direction, the scrollable will be moved at double or triple the speed.
When a pointer leaves: all remaining pointers still work.
The results that I fixed (refer to iOS behavior):
When dragging:
delta(combined) = max(i of n that are positive) delta(i) - max(i of n that are negative) delta(i)
It means that, if two fingers are moving +50 and +10 respectively, it will move +50; if they're moving at +50 and -10 respectively, it will move +40.
When a pointer leaves:
all pointers stop working.
The fixed logic:
A vector stores the EventMove of every pointer, if the EventMove of all pointers reaches, flush the vector and update the scroll delta. It means that, if three fingers (p1, p2, p3) are downing and moving: p1 down, p2 down, p3 down, p1 move +10, p2 move +20, and p3 move +30,  only three EventMoves reach(p1 EventMove, p2 EventMove, p3 EventMove), the DragGesture will move +30.
Additionally, if the EventMoves of one pointer reach continually, then flush the vector directly. It means that, if three fingers are downing and moving: p1 down, p2 down, p3 down, p1 move +0, p2 move +0, and  p3 move +10, since the move deltas p1 and p2 both are 0, the EventMoves of p1 and p2 may not reach (according to the log of iOS), only the EventMove of p3 reached, the DragGesture will move +10 until the next EventMove of p3 reaches.
The approach will lost the last EventMove, for example, p1 down, p2 down, p1 move +0, p2 move+10, p1 move +0, p2 move +10,  p1 move +0, and p2 move +10, the Events: p1 EventDown, p2 EventDown, p2 EventMove, p2 EventMove, and p2 EventMove, the DragGesture will Move +10 and Move+10 finally. Actually, the EventMove of one pointer reaches many times, and the loss of the final EventMove is acceptable.
I modified the unit tests too, please have a review. Thank you!
The result videos have been attached below:
Android before fixed:
https://user-images.githubusercontent.com/35736246/175527463-52e34c37-1ffa-4b9e-97b2-2cace0b3f211.mp4
related issue:
Improve fidelity of multi-pointer drag gestures #38926
Scrolling with two fingers scrolls twice as fast #11884
Pre-launch Checklist

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I signed the CLA.
[x] I listed at least one issue that this PR fixes in the description above.
[x] I updated/added relevant documentation (doc comments with ///).
[x] I added new tests to check the change I am making, or this PR is test-exempt.
[x] All existing and new tests are passing.

If you need help, consider asking for advice on the #hackers-new channel on Discord.

For the limit of the uploaded video size, I supply other videos here.
Android after:
https://user-images.githubusercontent.com/35736246/175759445-fc5e04f0-dd4e-4b2d-ae8b-a23a522782a4.mp4

iOS before:
https://user-images.githubusercontent.com/35736246/175759775-5999900d-5eb9-4588-b55b-e5d6b73fa746.mp4

iOS after fixed:
https://user-images.githubusercontent.com/35736246/175759792-27d15069-3276-42e0-9a6a-6babbe63806b.mp4

bravo!! thank you for fixing this long standing issue

I wonder how panning is affected by this change. I'm mostly worried about the delta no longer being the change of the position, because this change wants to be compatible with both the iOS scrolling behavior and the iOS panning behavior. Maybe eventually we should have a "strategy" class, so that iOS monodrag, iOS panning, and Android dragging should have separate strategies.

I am confused about the iOS scrolling, the iOS panning, and the iOS monodrag what you mentioned, I am newer to iOS, after my investigation, it seems only the pan gesture is about scrolling in the picture below (Whether single finger or multiple).UIPanGestureRecognizer. Can you give me more explanation? Thank you for your patience!

Maybe eventually we should have a "strategy" class, so that iOS monodrag, iOS panning, and Android dragging should have separate strategies.

The logic in this fixed refers the iOS because the experience of iOS is better than Android. What I understand is you suggest different strategies (to simulate the Android and the iOS behavior) just like the over scroll physics behavior (the BouncingScrollPhysics and the ClampingScrollPhysics())?
Thank you for your review!

@moffatman

I tried it out in my app, works well 👍
FYI Pan/zoom = trackpad scrolling event. Zoom/scale is not relevant here, only pan, which could also be called scroll. When I implemented it, I summed the deltas as previous behavior, but your solution is better in my opinion.

Thank you for your FYI.

The case of using both touchscreen and trackpad is not well handled by most platforms, trying it on iOS/UIKit causes a lot of flickering and is not correct, so there isn't any break with an existing standard to change it.

So, the problem is the fixed only works well on the iOS and Android screens, but not on trackpad and touchscreen? I did not test on the trackpad, I will test it next week to improve. But I do not understand what's the problem with using a touchscreen, a lot of flickering on Andoird, iOS, or Windows surface? Can you give me some details about the devices to reproduce the problem? Thank you very much!

@xiaoyanermiemie
I think I wasn't clear. There isn't any problem with your PR when using trackpad and touchscreen at the same time. It's all good :thumbsup:. I mean that when using trackpad and touchscreen at the same time in other apps (not Flutter), it's almost never handled correctly by other systems.

@xiaoyanermiemie
I think I wasn't clear. There isn't any problem with your PR when using trackpad and touchscreen at the same time. It's all good 👍. I mean that when using trackpad and touchscreen at the same time in other apps (not Flutter), it's almost never handled correctly by other systems.

@moffatman
Thank you for your reply, however, I am confused about  in other apps (not Flutter). What I understand is that some apps use the flutter/flutter repository  but are not called the flutter app, am I right？ Could you give me some codes or repository which is flickering and not correctly handled by this PR so that I can fix this issue more efficiently? I do not know how to reproduce the problem.

@xiaoyanermiemie I mean other apps which don't use Flutter at all. When I said other platforms, I meant UIKit, SwiftUI, Windows UWP. See what it looks like using touchscreen and trackpad at the same time on the iPad settings app (noticeable jumping):
https://user-images.githubusercontent.com/789275/177086367-aa2f58d9-a061-4bb8-8ffc-3bf413309e6c.mov
I didn't see any flickering using your PR at all. There is no problem :smile:.

thank you @xiaoyanermiemie !

@moffatman
I have modified the code according to your suggestion, please have a review😄, thank you.

I don't know the specific place, but it should be documented in the code somewhere the new behavior of this class (the drag position will be the average of individual pointers)

I don't know the specific place, but it should be documented in the code somewhere the new behavior of this class (the drag position will be the average of individual pointers)

@moffatman
I have added some comments to explain the logic and some example. Please have a review, thank you😃!

I don't know the specific place, but it should be documented in the code somewhere the new behavior of this class (the drag position will be the average of individual pointers)

@moffatman
I have added some comments to explain the logic and some example. Please have a review, thank you😃!

@dkwingsmt
Please have a review too,  thank you😃!

LGTM

@moffatman
Hello, do you have time to have a review this week😳?

I'll review it today. Sorry about the delay.

Thank you!

I've asked someone who will make a second review once my change requests are resolved.

I've asked @/goderbauer who will make a second review once my change requests are resolved.

@dkwingsmt
I have resolved the change requests, please have a review and the second review, thank you!

@goderbauer The PR seems ready for a second review.

Do the native platforms maybe tell us which events belong to the same batch? I seem to remember something like this at least on Android. If we pipe that information through to the framework, could we just use that information instead of reverse engineering it from the pointer sequence? (I haven't checked if native platforms actually provide us with that information...)

I'll have to check, but we don't need it for Android, because the Android native system uses a very simple stack-like behavior. We only need the batch information for iOS.

I'll have to check, but we don't need it for Android, because the Android native system uses a very simple stack-like behavior. We only need the batch information for iOS.

@dkwingsmt @goderbauer
I know why only moved pointer dispatches on iOS but not on Android. https://github.com/flutter/engine/blob/main/shell/platform/darwin/ios/framework/Source/FlutterViewController.mm#:~:text=- (void)dispatchTouches,(UIEvent*)event {  In the dispatchTouches function, it should use the event.alltouches.

Great find! Thank you. Now it seems like the better solution is to change the engine API to deliver the batching information...

Great find! Thank you. Now it seems like the better solution is to change the engine API to deliver the batching information...

@dkwingsmt
How do I pull requests for flutter/engine? I do not see the instruction.

Great find! Thank you. Now it seems like the better solution is to change the engine API to deliver the batching information...

@dkwingsmt
Yes, the best solution is guaranteed to have a batch from the platform which as I said above event.alltouches.  But I do not know how to compile the flutter/engine, the engine instruction is too long to read. Could you modify it?
Although the 'Only some pointers move, and only the moving pointers dispatch PointerMoveEvents' situation is gone on iOS by the batch guaranteed by the platform, I think the fixed logic is still useful. Because we can not guarantee any platform will give the batch when we only move some pointers?

I'll have to check, but we don't need it for Android, because the Android native system uses a very simple stack-like behavior. We only need the batch information for iOS.

It is the same on Android. Please refer to the video I uploaded.

Do the native platforms maybe tell us which events belong to the same batch? I seem to remember something like this at least on Android. If we pipe that information through to the framework, could we just use that information instead of reverse engineering it from the pointer sequence? (I haven't checked if native platforms actually provide us with that information...)

@dkwingsmt  @goderbauer
Android and iOS both tell us. But we can not guarantee any platform do the same.
So I suggest the better solution is:

Keep the logic I fixed for flutter/flutter (this PR).
And modify the event.alltouches for flutter/engine (could you help me do that?).

I'll take a look at the engine changes in the next few days.
Eventually we'll want different behaviors for Android and iOS. But as the first step I think it's okay for you to only implement the iOS behavior and apply it to all platforms. After all it's not making anything worse.

After this PR is solved, I will try to imply Android behaviors.

It turns out that the events seem to be already sent in batches, but the batching information was removed when flushed.
There are many ways to show the batching information, but I'm proposing a simple way, which is a boolean that indicates the end of a batch. https://github.com/flutter/flutter/pull/108340
@xiaoyanermiemie Can you check if this work for you? (Feel free to just copy my changes to your PR.)

It turns out that the events seem to be already sent in batches, but the batching information was removed when flushed.
There are many ways to show the batching information, but I'm proposing a simple way, which is a boolean that indicates the end of a batch. #108340
@xiaoyanermiemie Can you check if this work for you? (Feel free to just copy my changes to your PR.)

@dkwingsmt
I copied your changes, it is very good.  Please have a review, thank you!

Fun fact: this is a somewhat known but not-often complained about issue, and up until now it's been an easy way to detect Flutter applications in the wild.  Does this PR impact them?

Fun fact: this is a somewhat known but not-often complained about issue, and up until now it's been an easy way to detect Flutter applications in the wild. We'll miss you, extra fast three finger scrolling.

Good Bye, extra fast three finger scrolling.

@xiaoyanermiemie The failing tests seem to be valid failures.
For example,
04:04 +6808 ~14 -5: /b/s/w/ir/x/w/flutter/packages/flutter/test/gestures/drag_test.dart: Two pointers down but only one moves [E]
  Expected: []
    Actual: ['drag1-update']
     Which: at location [0] is ['drag1-update'] which longer than expected

  package:test_api                                    expect
  package:flutter_test/src/widget_tester.dart 460:16  expect
  test/gestures/drag_test.dart 789:5                  main.<fn>
  test/gestures/gesture_tester.dart 31:15             testGesture.<fn>.<fn>
  package:fake_async/fake_async.dart 182:54           FakeAsync.run.<fn>.<fn>
  dart:async                                          runZoned
  package:clock/src/default.dart 52:10                withClock
  package:fake_async/fake_async.dart 182:22           FakeAsync.run.<fn>
  dart:async                                          runZoned
  package:fake_async/fake_async.dart 182:7            FakeAsync.run
  test/gestures/gesture_tester.dart 30:17             testGesture.<fn>

among others.
https://logs.chromium.org/logs/flutter/buildbucket/cr-buildbucket/8807558854634793185/+/u/run_test.dart_for_framework_tests_shard_and_subshard_libraries/test_stdout

Some concerns from @goderbauer should no longer be valid after we turn to batching information from the platform. However, the tests are still created based on individual events. In other words, all pointer events created in the tests have endOfBatch: true.
We should probably change packages\flutter_test\lib\src\test_pointer.dart and add a endOfBatch to the event simulating methods, and then change the tests accordingly.

I get it.

@dkwingsmt
I have updated the logic according to your endOfBatch, And I updated unit tests, it is more clear now! Please have a review!

@goderbauer
After the update, it would not hurt scrolling fidelity now. Please have a review. Thank you!

@dkwingsmt
I have updated the logic according to your endOfBatch, And I updated unit tests, it is more clear now! Please have a review!

Do you have time to review this week?

@dkwingsmt
Do you have time this week for a review? Thank you.

Oh I was waiting for you. Can you take a look at https://github.com/flutter/flutter/pull/106552#discussion_r935535606?

Oh I was waiting for you. Can you take a look at #106552 (comment)?

@dkwingsmt
I do not know why no notification to you. I replied to you before:
In fact, I tried this logic. But I failed because this will affect more low-level logic, for example, the accept or possible state. And the consequence of affecting more code is that there may be hidden bugs. So I think _multiPointerMoveTrackers.length == _multiPointerStartTrackers.length is a better solution than 'do not give up'. Although it is a little confused.

That's fair, thanks for explaining (and for avoiding we waiting for both each other forever.)
I think this PR is ready. @goderbauer Can you take another look?

Regarding the endOfBatch changes, I'll probably merge https://github.com/flutter/flutter/pull/108340 first after resolving the issue about resampling before merging this.

Regarding the endOfBatch changes, I'll probably merge #108340 first after resolving the issue about resampling before merging this.

That is nice!

@goderbauer
Do you have time for a review this week?

Do you have time for a review this week?

I have this in my review queue.

Actually, before reviewing this one, lets make sure that https://github.com/flutter/flutter/pull/108340 is good to go first since this change depends on that one.

(triage) @xiaoyanermiemie Same comment as on https://github.com/flutter/flutter/pull/108340: Do you still have plans for this PR in the near future?

(Triage): I am going to close this one as there hasn't been any follow-up and the discussion has largely centered around https://github.com/flutter/flutter/pull/108340


Adding user guide doc

Moving user guide from kubeflow repo for consistency

Thanks @johnugeorge for porting this over to the website repo...

/lgtm
/approve


How to pass host variables from ansible inventory into rundeck and back to ansible?

Rundeck 3.0.11 and Ansible 2.7.5 and python 2.7 on CentOS 7.6.1810 to automate tasks on network devices, like Cisco IOS switches.
In Ansible >=2.5 it appears the best method to use is "connection: network_cli" which requires setting the OS type using "ansible_network_os=ios" (for Cisco IOS).
I have that variable declared for my host in my source Ansible inventory file, but it doesn't translate through into Rundeck. Gather Facts under Node Sources doesn't work to auto-determine, since these devices are not servers.
Under a given workflow step I can feed that variable in using "Extra Ansible arguments" and passing "-e ansible_network_os=ios". And that works. But would require setting that on every job, and every job then being OS-specific.
Is there a more elegant way of doing this? I know the OS type ahead of time for everything. Being able to add this info into the source Ansible inventory file seems like the best approach, either per device or using group variables.
Thank you!

as this plugin only imports specific ansible facts that are hard coded, ansible_network_os does not get imported because it is not defined here:
https://github.com/Batix/rundeck-ansible-plugin/blob/d1233c4b301f46d3b71070fbecc43b4ac64fc642/src/main/java/com/batix/rundeck/plugins/AnsibleResourceModelSource.java#L357-L404
One would need to make the included ansible facts dynamc. However Rundeck atm can not handle nested data structures like eg.g Disks->Partitions->MetadataOfPatition . It can only handle flat key:value data. Aditionally Ive seen systems with thousands of disks. Rundecks Display of node facts also can not handle this amout of facts.
The Disk Facts are just examples to see whats the issue here. I Think Rundeck itself must allow nested values for nodes as well as a compact, searchable UI that supports thousands of facts.
Fore more Information See #4 #10 #15

See PR #279, as i think it does all you need.


Added Seed Quality Predictor

Pull Request
Title
Added Seed Quality Predictor
Description
Added Seed Quality Predictor
Related Issues
#585
Changes Made
Added Seed Quality Predictor
Checklist

[x] I have tested the changes locally
[x] Documentation has been updated (if necessary)
[x] Changes are backward-compatible

@manikumarreddyu  level2 is needed not level 3 @MastanSayyad


No data on Quicksight dashboard

Describe the bug
No data on Quicksight dashboard

[ ] Version: v1.1.0
[ ] Region: [ us-east-1]
[ ] Was the solution modified from the version published on this repository? No
[x] Were there any errors in the CloudWatch Logs?

Hi aminembarki, sorry to hear that you are facing issues with the solution. If you can click on the 2nd tab on the dashboard (Text Analysis) and confirm that you are able to see the data.
For the first tab, the data is dependent on a job called topic modeling. This job is scheduled based on the cloudformation parameters specified at the time of deployment. If you deployed with default values, it is scheduled to run every midnight GMT:+00. Depending upon when you deployed the solution, you should be able to see the data in the first tab in the next 24 hours of your deployment. Please let me know if the issue is resolved and I will be happy to help you further in this regard.
Also if you have any other feedback based on your use case, please feel free to reach out.
On a side note, in the documentation we did put out a note in this section: https://docs.aws.amazon.com/solutions/latest/discovering-hot-topics-using-machine-learning/step-2-configure-quicksight.html. But I do get the point that it is something that users will miss out. We will try and see if we can do a better job of making this more prominent/ visible.

Hi @aminembarki, please let us know if the above information helped to solve the problem. Are you are still facing the issue?

hi @knihit , @nihitkas
thank you for  your help.  i deployed again today , i'm waiting  till  midnight GMT. to see if it works

Hello @knihit,
No data, actually jobs  run at 00:00 UTC

DynamoDB & S3 are empty .

Dashboard

Athena All tables are empty .

Do i need to set twitter API  Keys somewhere ?
thank you guys for  this awesome project.

Thank you  @knihit , @nihitkas . works for me

Hi @aminembarki , thank you for the feedback. I believe you may have found it since the issue is closed. Just some notes though; the solution uses bearer token to authenticate with twitter. We did put some notes here, https://docs.aws.amazon.com/solutions/latest/discovering-hot-topics-using-machine-learning/prerequisites.html. Let us know if that information was helpful.
Any other feedback on the solution, new feature requests or contributions, please feel free to reach out.


Camera is not initializing.

Hello, my lip tracker is not being initialized by VRCFT the eye tracker shows green on SRanipal but the lip tracker remains red. What do I do?

This issues page is intended for software issues. Please troubleshoot hardware issues in the discord
Thanks! :)


[🎯 Target v2.17.1+] Filebase Integration as Custom IPFS Provider and Future-proofing IPFS Expansion (no branch exists)

Description:
This PR enhances the Guardian project by introducing the Filebase IPFS provider and establishing a testing suite for IPFS configurations. It facilitates the addition of new IPFS providers without requiring a full rebuild of the Guardian system and outlines a streamlined process for future expansions. Key updates include:

Integration of the Filebase IPFS provider, leveraging the IPFS Pinning Service API for a simplified REST API experience.
Adoption of a test-driven development approach to quickly verify IPFS configurations.
Provision of guidelines for adding and testing custom IPFS providers.

Updated Readme Snippets:
Setting up IPFS Filebase Bucket:
Configure the Filebase IPFS provider in ./configs/.env.develop.guardian.system with your generated Firebase Bucket Token for IPFS_STORAGE_API_KEY and set IPFS_PROVIDER to "filebase". For more, refer to Filebase's IPFS Pinning Service API documentation.
Implementing and Testing Custom IPFS Providers:
Our workflow is designed to easily integrate new IPFS providers. Set up your environment variables, run yarn test:ipfs in the "worker-service" directory for validation, and extend the "IpfsProvider" enum with your provider's logic. We recommend an interface-based approach for enhanced maintainability.
Notes for reviewer:
Please review the updated documentation and README for a comprehensive guide on integrating the new IPFS provider. This update primarily addresses a minor version transition from v2.17.0 to v2.17.1, particularly focusing on changes in token authentication mechanisms from v2.18.0 onwards. The code should forward-compatible up to v2.20.1+, with minor modification.
However, this PR stops short of implementing the scaling recommendations for IPFS providers. It instead proposes a framework and best practices for future integrations, with a focus on:

Transitioning to an interface-driven architecture for IPFS clients to standardize functionality and streamline the integration of new providers.
Reevaluating the incorporation of NATs Channel instances in v2.20.1, as its relevance within the IPFS client is debatable. A more modular approach, along with employing hash maps for linking IpfsProvider enums to respective interfaces, would result in a cleaner and more maintainable codebase.

As the Guardian project continues to evolve with the addition of more IPFS clients, the proposed methodology aims to offer a scalable and time-efficient integration solution.
Checklist

[x] Documented (Code comments, README, etc.)
[x] Tested (unit, integration, etc.)

Please fix conflicts and we will merge this PR

@simvalery, I want to provide some context which you might not be fully aware of, as this was discussed extensively with the broader team on Slack:
The pull request I submitted specifically targets the 2.17.0 codebase, not the recent 2.21.x series. This is the primary reason for the code conflicts you're seeing. The intention here is to create a patch update moving from 2.17.0 to 2.17.1, but this code can also be beneficial for the 2.21.+ releases, particularly for resolving issues related to IPFS.
Unfortunately, there isn’t a direct branch for 2.17.0, and since I don’t have direct push access to the Guardian repository, this approach was my only viable option. This strategy was previously discussed and agreed upon with the team, especially given the significant changes that occurred from 2.17.0 to 2.18.0. I believe this decision was made in consideration of the broader picture and the project's continuity.
Thank you for taking the time to read this and for your understanding. Looking forward to collaborating further to resolve this matter.


[F-VLM] pre-computed embeddings

Hi, thanks for the great repo @ https://github.com/google-research/google-research/tree/master/fvlm @weichengkuo
I just wanted to know how to obtain the pre-computed embeddings for a custom dataset to train F-VLM. Do I simply have to embed my dataset classes with CLIP?

Thanks for the question @luisdavid64! Yes - I'll recommend using our reproduced CLIP (see example here rather than the official CLIP for optimal performance, as there may be some minor/slight differences. The demo.py shows an example of how to compute custom text embeddings for F-VLM, which are based on this input argument. Here is where the text embedding computation starts from a list of category names. This line is where the text embeddings are fully computed. Hope these help!

Thank you for the prompt answer @weichengkuo, your answer definitely helps! I just had one last question regarding the pre-computed embeddings. Upon inspecting the resnet_50 precomputed  COCO embeddings, I notice they have a shape of (1601, 1024), which is more than the number of classes in the dataset. May I know if there is some processing done to the class labels?

No problem, yes the shape comes from adding the background and empty embeddings. Thanks!

Hi @weichengkuo , thank you for your work on FVLM! I tried computing embeddings for my custom dataset as per your suggestions, but I got this error when training the model.
I0518 16:45:43.971910<PHONE_NUMBER>56736 trainer_utils.py:622] Getting first batch.
I0518 16:45:45.016001<PHONE_NUMBER>56736 trainer_utils.py:624] Building model.
Traceback (most recent call last):
  File "/home/jupyter/fvlm/./train_and_eval.py", line 63, in <module>
    app.run(main)
  File "/opt/conda/envs/tensorflow/lib/python3.10/site-packages/absl/app.py", line 308, in run
    _run_main(main, args)
  File "/opt/conda/envs/tensorflow/lib/python3.10/site-packages/absl/app.py", line 254, in _run_main
    sys.exit(main(argv))
  File "/home/jupyter/fvlm/./train_and_eval.py", line 53, in main
    trainer_utils.train(_OUTPUT_DIR.value)
  File "/opt/conda/envs/tensorflow/lib/python3.10/site-packages/gin/config.py", line 1605, in gin_wrapper
    utils.augment_exception_message_and_reraise(e, err_str)
  File "/opt/conda/envs/tensorflow/lib/python3.10/site-packages/gin/utils.py", line 41, in augment_exception_message_and_reraise
    raise proxy.with_traceback(exception.__traceback__) from None
  File "/opt/conda/envs/tensorflow/lib/python3.10/site-packages/gin/config.py", line 1582, in gin_wrapper
    return fn(*new_args, **new_kwargs)
  File "/home/jupyter/fvlm/utils/trainer_utils.py", line 627, in train
    variables = init_model(
  File "/home/jupyter/fvlm/utils/trainer_utils.py", line 324, in init_model
    return init_fn(rng_dict)
  File "/home/jupyter/fvlm/utils/trainer_utils.py", line 321, in <lambda>
    lambda rng_key: frozen_dict.freeze(model_fn(mode=mode).init(
  File "/home/jupyter/fvlm/utils/gin_utils.py", line 167, in wrapped
    return base(*args, **mapped_kwargs)
  File "/home/jupyter/fvlm/modeling/multitask_model.py", line 111, in __call__
    task_outputs = task_head(vision_features, text_features,
  File "/home/jupyter/fvlm/modeling/task_heads.py", line 399, in __call__
    class_outputs = self.compute_region_text_similarity(
  File "/home/jupyter/fvlm/modeling/task_heads.py", line 228, in compute_region_text_similarity
    class_outputs = jnp.einsum(
  File "/opt/conda/envs/tensorflow/lib/python3.10/site-packages/jax/_src/numpy/lax_numpy.py", line 4514, in einsum
    operands, contractions = contract_path(
  File "/opt/conda/envs/tensorflow/lib/python3.10/site-packages/opt_einsum/contract.py", line 228, in contract_path
    raise ValueError("Einstein sum subscript '{}' does not contain the "
ValueError: Einstein sum subscript 'ilk' does not contain the correct number of indices for operand 1.
  In call to configurable 'train' (<function train at 0x7f67c55284c0>)

I also noticed that the shape of my embeddings is (1, 91, 1024). Could this be a cause for concern? That being said, demo.py gives the same shape too.
Could you advise me on this issue?


Update parser and builder to latest spec

use pkg: scheme as defined in https://github.com/package-url/purl-spec/pull/31

Fixes #4

@furuholm Thanks ... sorry for not seeing this earlier!
@ashcrow your review is welcomed... but this is rather simple to review


Refresh when saving file

Description
I'd like to have the preview refreshed everytime I save my file
Solution
When I save my file (CRTL+S) the preview would be refreshed
Alternatives
Currently I save then I move my mouse over the refresh button then I click it
Additional information
Maybe add this feature as an option to allow a user choice
Thanks ahead. This plugin is amazing !

Hi @BHMath ,
thanks for your your proposal. Generally I am a little bit feared of overloading shortcuts or commands since this could (and will) cause some confusion. Shortcuts should always behave like expected, especially standard ones like CTRL + S. A user should be always able to use a software in such an intuitive way that no documentation would be necessary (in theory :-) ... ).
But let me propose a potential alternative: Are you already aware of the shortcut mapper? You are able to define custom shortcuts for every command, also for refreshig the PlantUMLViewer plugin.

This way, you could define a dedicated shortcut for the diagram generation. It would be not the same shortcut like used for saving the file but it prevents confusion and is definitively a very elegant and handy solution.
BR,
Philipp

Oh right didn't thought about making my own shortcut. What I meant was more a trigger on plugin side. Like every time the file is saved (from shortcut or via File menu), the preview is refreshed.
What do you think about this ?

I already thought about a feature like "autogeneration" which allows to trigger the generation during typing. This is quite similar to your request from a implementation point of view. Unfortunately there are some non trivial things like

How to handle saving multiple times during generation
How to handle changed files
How to handle failed generation
...
to be taken care of. These details should be handled wisely since they could lead to some strange behaviours and unstable behaviour.
For now the feature is on my whish list but I have no concrete plans to implement it. But if I am going to do it, I am also going to think about some kind of "switch" where you can select between generation at typing, at saving and maybe other options. Definitively something for a later release.

Perfect ! If you like to discuss about the how, I'm yours. Good luck with the next


Add a compile time flag to support all ET's in cpu backend

The libcpu_backend.so is reduced from 48M to 22M

Ping for review :)


Added a couple of CLI args. Support for OS X.

Added baseClassName CLI argument. A project might be built by several teams, and it's easy to imagine the advantage of having a different base class name in each source file
Added strings table CLI argument. I usually work with many different strings tables (one for Errors, one for Model stuff and one for general strings)
No longer using swift extensions. This allows the use of Xcode's XLIFF export feature (fixes #11)
Compatibility with OS X (removed an unused iOS specific import)

Sorry for a long time of inactivity - my own startup got in a way fairly significantly. This is great work and definitely makes sense, all of it. Adding table name is definitely something that people would use, so I will accept this as well. The change with extension removal have been on my mind for quite some time, so great. Could you also add the note about table name option to readme?
Thank you for your hard work!


nan tests hit DCHECKs on latest node

I discovered this while running the nan test suite against Electron on our CI (we run tests with DCHECKs enabled).  Just to cover my bases I ran the same nan tests against a Debug build of node and the same DCHECKs were hit.
#
# Fatal error in ../deps/v8/src/api-inl.h, line 126
# Debug check failed: allow_empty_handle || that != nullptr.
#
#
#
#FailureMessage Object: 0x7ffeefbfc2a0not ok test/js/nannew-test.js ......................... 22/23
    Command: "/Users/sattard/projects/nodejs/node/out/Debug/node nannew-test.js"
    TAP version 13
    ok 1 ../cpp/nannew.cpp:61: New<Array>()->Length() == 0
    ok 2 ../cpp/nannew.cpp:62: New<Array>(7)->Length() == 7
    ok 3 ../cpp/nannew.cpp:63: assertType<Array>(New<Array>(7))
    ok 4 ../cpp/nannew.cpp:73: New<Boolean>(true)->Value() == true
    ok 5 ../cpp/nannew.cpp:74: New<Boolean>(false)->Value() == false
    ok 6 ../cpp/nannew.cpp:75: assertType<Boolean>( New<Boolean>(true))
    ok 7 ../cpp/nannew.cpp:77: New(true)->Value() == true
    ok 8 ../cpp/nannew.cpp:78: New(false)->Value() == false
    ok 9 ../cpp/nannew.cpp:79: assertType<Boolean>( New(true))
    ok 10 ../cpp/nannew.cpp:94: assertType<BooleanObject>( New<BooleanObject>(true))
    ok 11 ../cpp/nannew.cpp:95: New<BooleanObject>(true)->ValueOf() == true
    ok 12 ../cpp/nannew.cpp:96: New<BooleanObject>(false)->ValueOf() == false
    ok 13 ../cpp/nannew.cpp:106: assertType<Context>( New<Context>())
    ok 14 ../cpp/nannew.cpp:108: assertType<Context>( New<Context>(&extensions))
    ok 15 ../cpp/nannew.cpp:111: assertType<Context>( New<Context>(static_cast<ExtensionConfiguration *>(__null) , Local<ObjectTemplate>()))
    ok 16 ../cpp/nannew.cpp:113: assertType<Context>( New<Context>(&extensions, Local<ObjectTemplate>()))
    ok 17 ../cpp/nannew.cpp:116: assertType<Context>( New<Context>(&extensions , Local<ObjectTemplate>(), Local<Value>()))
    ok 18 ../cpp/nannew.cpp:127: assertType<Date>( New<Date>(static_cast<double>(time(__null))).ToLocalChecked())
    ok 19 ../cpp/nannew.cpp:139: New<External>(&ttt)->Value() == &ttt
    ok 20 ../cpp/nannew.cpp:140: assertType<External>(New<External>(&ttt))
    ok 21 ../cpp/nannew.cpp:149: assertType<Function>(New<Function>(testFunction))
    ok 22 ../cpp/nannew.cpp:151: assertType<Function>(New<Function>(testFunction, data))
    not ok 23 test/js/nannew-test.js
      ---
        exit:    ~
        signal:  SIGILL
        stderr:  |
          #
          # Fatal error in ../deps/v8/src/api-inl.h, line 126
          # Debug check failed: allow_empty_handle || that != nullptr.
          #
          #
          #
          #FailureMessage Object: 0x7ffeefbfc2a0
        command: "/Users/sattard/projects/nodejs/node/out/Debug/node nannew-test.js"
      ...

    1..23
    # tests 23
    # pass  22
    # fail  1

The same tests pass in Release builds (as DCHECKs are disabled) but I think some time should be spent figuring out what is going wrong here as V8 clearly isn't happy with what is happening 🤔
To reproduce with a local build of node with a directory structure of
nodejs
  / node
  / nan

# Build node + headers
cd nodejs/node
./configure --debug
make -j4
make tar-headers
tar -xzf node-v13.0.0-headers.tar.gz

cd ../nan
# Build nan test modules with right headers
npm_config_nodedir=$(pwd)/../node/node-v13.0.0 npx node-gyp rebuild --directory test
# Run nan tests with built version of node
../node/out/Debug/node node_modules/.bin/tap test/js/*-test.js

Note that although the example above uses HEAD of node (v13) I have reproed with v12 as well (which is what Electron currently ships)

Based on the progression of test cases, I would guess it is https://github.com/nodejs/nan/blob/master/test/cpp/nannew.cpp#L161 that triggers it, but I do not see why.

Might no logger be allowed to create empty handles, at least not of FunctionTemplate. Utils::OpenHandle defaults to that.


Stop supporting optional tag:yaml.org,2002:bool to ease adoption for GitHub Actions Workflow templating

What steps did you take:
Using on:  in a yaml file
What happened:
The on:  was replaced with true:
What did you expect:
As on:  is a valid field it should not have been converted to true
Anything else you would like to add:
This is very strange and impacts the ability to create templates for github actions.
Environment:

0.33.0

Hey Craig.
Yes, this is an irritating behavior from what was intended to be an optional part of the YAML 1.1 spec.
👉🏻 An immediate workaround is to make such values explicitly strings by surrounding them in quotes:
name: CI
"on":
  push:
    branches: [ develop ]
  pull_request:
    branches: [ develop ]
jobs:
  build:
    runs-on: ubuntu-latest
...

...
Now, this was corrected in the YAML 1.2 spec.
However, the current version of the Go YAML package (v2.x of that library) attempted to be compatible with both the YAML 1.1 and YAML 1.2 specs and so continues to accept these synonyms for boolean.
It's been a long-standing issue that this behavior is an annoyance (see go-yaml/yaml#214 for details).
It has been addressed in the not-yet-released version (v3.x) of the the Go YAML package. Even when this version of the package is released, it will be a breaking change for ytt and would need to be scheduled as such.

Floating this:

https://yaml.org/type/bool.html — is an optional portion of the YAML 1.1 spec (and removed in the YAML 1.2 spec)
the implementation of which in the current version of the Go YAML Package used in ytt is isolated to an initializer.[1]
as noted above, there are legit use cases for same strings (e.g. on) as strings.
I have yet to see someone seriously use these aliases.

Which gets my mind to what @m0un10 is pointing out, here: that this optional implementation portion of the YAML spec is actively aggressive for a whole class of potential users.
What's the downside of introducing a breaking change where we simply no longer support these optional boolean aliases?

[1] https://github.com/vmware-tanzu/carvel-ytt/blob/faafacea467ccd661809f763d77bfb254574f86c/pkg/yamlmeta/internal/yaml.v2/resolve.go#L40-L45

Until this is resolved in the upstream, I've at least got a workaround based off @pivotaljohn 's suggestion
git clone https://github.com/vmware-tanzu/carvel-ytt

./hack/build.sh

sorry, I accidentally closed it (so re-opened it). I was just going to leave a comment to say that commenting out line 42 and rebuilding gives me a way forward for templating github actions workflows. It would be great if this aggressive bool tag renaming got removed in a future release though!

Okay... I suspect no one is using any of the synonyms. We'll query the community.
To avoid confusion, I'm suggesting that we support none of the synonyms.
Not:

on/On/ON
off/Off/OFF
y/Y/yes/Yes/YES
n/N/no/No/NO

and only support the true/false variants:

true/True/TRUE
false/False/FALSE

This would addresses #146 (and the many (#189) many (#219) many (#275) subsequent reports of running into this issue).

Getting absolutely no pushback on this issue. And we're getting a regular report of this being an irritant.
Let's do it.

This one has yet to be prioritized and it caught another: #764 . sigh


Nuget installation failure: No versions available for package 'WalletConnect.Sign'

There are no versions available for the package 'WalletConnect.Sign'.
Writing C:\Users\example\exampleproject
info : X.509 certificate chain validation will use the default trust store selected by .NET.
info : Adding PackageReference for package 'WalletConnect.Sign' into project 'C:\Users\example\exampleproject.csproj'.
info :   GET https://api.nuget.org/v3/registration5-gz-semver2/walletconnect.sign/index.json
info :   NotFound https://api.nuget.org/v3/registration5-gz-semver2/walletconnect.sign/index.json 91ms
info :   GET https://api.nuget.org/v3/registration5-gz-semver2/walletconnect.sign/index.json
info :   NotFound https://api.nuget.org/v3/registration5-gz-semver2/walletconnect.sign/index.json 275ms
error: There are no versions available for the package 'WalletConnect.Sign'.

These packages have been pushed to nuget. Please make sure to use version 2.0.3


[WIP] Refactoring golang money

[WIP] Overall Refactor, some general changes and additions for a working distributed tracing library that are revolve around two main components. A transactor for making out bound requests and a alice style decorator for handling inbound request.
As of now the alice style decorator has three main states that are chosen through options.
(1) Starter: To be used on edge servers.  This injects a tracker and starts the spanning graph
(2) Subtracer: To be used on non edge servers.  Creates a new child span id from an extracted tracker and continues the spanning graph.
(3) Ender: To be used on servers that do not need to inject trackers into requests.
(4) Default/Off
TODO (4) A option should be created that can be used as both a Starter and a Subtracer for nodes that can be both edge and non-edge.
Changes:
spanner.go
Decoupled Spanner from HTTPTracker by injecting a SpanDecoder into a HTTPTracker using func StartHTTPTracker.   This opened the doors to unit test HTTPTracker individually.
Added method func SubTrace to Spanner interface.
Removed all spanner.go details into httpspanner.go
httpspanner.go
Many spanner components are migrated here so they can be easily differed between the spanner interface and httpspanner objects and methods.
New func StartHTTPTracker
func WriteMoneySpansHeaders writes the results of a span as a MoneySpansHeader
tracker.go
Changed:
MoneyHeader to MoneyTraceHeader = X-Money-Trace  &
MoneySpansHeader = X-Money-Span
NOTE: this is to abide by http.Set golang standards I know this may not be the same as how RDK sends X-money headers.  Please comment if change needed.
Removes pointer from HTTPTracker’s mutex.
Added error handling to tracker methods.
newHTTPTracker was created to decouple a tracker creation from a Spanner’s Start.  This opened the door to individually unit test tracker methods.
Changes func Start to func SubTrace to more closely defines what this function does.
func HTTPTracker returns a httpTracker.
Changes func Spans to func SpansList so there is no confusion whether this functions purpose is  spanmap objects or span strings.
Changs Lists to SpanLists
func Map and func SpansMaps  to make use of spanMaps.
func ExtractTracker whose purpose is to quickly extract a tracker from a request.
func InjectTracker to quickly inject a tracker into a request
Includes func InjectTracker inside func DecorateTransactor
trace.go
func Result turns a Result object into a concatenated string of a span’s fields.
Renames SubTrace to doSubTrace.
httpspanneroptions.go
A place where spanner options are defined.
func SpanForward: utilized to create child spans as well as forwarding http trackers to
transactions(functions that partake in new http requests)
func spanDecoder: starts root span.
func SubTracer: creates child spans.
func OFF: rather then having HTTPTracker’s SD  be nil
httpspanner.go
Moves all old spanner objects here but the spanner interface.
httpspannerprocesses.go
Where processes are defined for each option.  This was made to specifically manage the decorator's size as it grows.
In the future SpanDecode fields should hold structs that hold an HTTPSpannerOption and its corresponding Process.
httpspannercontainers.go
Httpspanner containers are objects that are needed to fulfill a specific httpspanner option. Currently Span Forward is the only option with a container.  It utilizes a channel that allows passing of a http tracker from a handler to the application for forwarding.
http.go
migrates simpleResponseWriter as well as header constants.
func WriteMoneySpansHeader: writes a Span’s Result to a header.
func checkHeaderForMoneyTrace: checks if a header has a MoneyHeader returns a bool.
func checkHeaderForMoneySpan: checks if a header has a MoneySpan returns a bool.
transactionoptions.go
Migrates spanfowardingoptions here.  Where future options should be placed.
Other:
More test coverage for tracker.go
Includes run_test.sh + travis update.
Documentation
To do:

[ ]  Create a spanner package

[ ]  Switch to modules (Go 1.9) for dependencies

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.2 out of 3 committers have signed the CLA.:white_check_mark: schmidtw:white_check_mark: joe94:x: Harter, Nicholas (Contractor)Harter, Nicholas (Contractor) seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


FeedAHelp: After login successful, create main dashboard responsive layouts

Requirements:

[ ] Grid layout
[ ] Make sure each component has and is separation of concern
[ ] Make sure its responsive


giffy-break as a non-iTerm fallback

I've got inspired by this module (and by Windows not being able to run it), so I created giffy-break — a reusable module that locally serves a page with random gifs as long as supplied promise is beign resolved.
I think it'd be nicer alternative to just opening gifs repeatedly in a viewer. It also a bit faster by using mp4-encoded gifs!

Could you please record a short video of how it works and send the link here, so that I can check it out in action?

Sure, I was planning to do it anyways.

@vdemedes please take a look :wink: https://www.dropbox.com/s/wtzjm9e9dzafeib/gifi-with-giffy-break.mp4?dl=0

I noticed that you support older versions of node by demand (#12). This PR will definitelty break it, so feel free to close.

Damn, I like it, I'd be happy to merge giffy in! Why can't it be compatible with older versions of Node.js?

Thanks!
I can see it may be too early for us to force everyone go latest node (I would if I were yo though).
I'll switch it to ES5 and notify you, stay tuned :wink:

Wait a minute, you depend on got@6 which doesn't support node < 4 either!
Is it a bug, or maybe everyone is just happy to use node 4?

Hooray, @vdemedes, I finally did it!

Awesome, could you please rebase to fix conflicts?

Done :ok_hand: (Not sure if done right, I'm new to rebasing)

Just tried this PR in action and I only get to see one GIF and then "Here you go", but gifi install is still going. Any clues why this is happening?

I made a module to get iTerm version so that it can fallback in Iterm < 2.9 too 😅
maybe you need this https://github.com/egoist/iterm-version

Hell yes, @egoist, thank you!

Any clues why this is happening?

Yeah, It was because I did't explicitly clear timeout after the last gif: npm process exits, but gifi lasts about 3 more seconds while timeout is still set.
Fixed and published a patch to giffy-break. Thanks for the report!

I tested it again and I'm seeing the same issue. Reinstalled fresh dependencies and no fix. Could you please confirm?

It works perfectly well for me for some reason :grimacing: Not a single lag or something.
Which is actually a bad thing, I need this reproduced.


tedge connect c8y --test returns exit code 0 when network is unreachable

Describe the bug
The tedge connect c8y --test command returns an exit code of 0 when the network interface is not reachable, despite the standard output and standard error indicating a failed connection check to Cumulocity cloud. According to the documentation, the exit code should be 1 if the connection check is unsuccessful.
To Reproduce

Ensure that the used network interface is up.
Run the command tedge connect c8y.
Bring down the network interface sudo up link set wlan down or just disconnect your network cable.
Run the command tedge connect c8y --test.
Observe the standard output and standard error.
Check the exit code by running echo $? immediately after executing the tedge connect c8y --test command.

Expected behavior
If the connection check to Cumulocity cloud fails, as indicated by the standard output and standard error messages, the exit code returned by tedge connect c8y --test should be 1, as per the documentation.
Screenshots

Environment (please complete the following information):

OS [incl. version]: Raspbian GNU/Linux 11 (bullseye)
Hardware [incl. revision]: Raspberry Pi 4 Model B Rev 1.5
System-Architecture: Linux 6.1.21-v8+ #1642 SMP PREEMPT Mon Apr  3 17:24:16 BST 2023 aarch64 GNU/Linux
thin-edge.io version: tedge 0.11.0

Additional context
This issue is critical because automation scripts that rely on the exit code to determine the connection state will be misinformed, potentially leading to undetected issues in system health.

Also reproduced with tedge version 0.12.0.

This has been fixed - but not released yet, by https://github.com/thin-edge/thin-edge.io/issues/2170.
@gligorisaev can you double check that this is indeed the case. Thanks.

That said, testing it myself I found another issue.
tedge connect test --c8y returns false positive when jwt tokens have been published since the previous connection test. The connection check is done using a persistent MQTT subcription. It must not.
=> I will push a fix for that.

QA has thoroughly checked the feature and here are the results:

[ ] Test for ticket exists in the test suite.
[x] QA has tested the feature and it meets the required specifications.

Thank you for resolving this. When are you planning to release 0.13?

0.13.0 should drop by end of next week (2023-09-22)