Forwardauth middleware not working with tls passthrough

Do you want to request a feature or report a bug?
Bug
What did you do?
Overview
When forwardauth is set along with tls passthrough, the forwardauth middleware is ignored and I am forwarded straight through to the website without the auth being triggered in the middle.
Use-case - whoami is working (whoami is http on the backend)
I'm using authelia. With a http whoami example, it works perfectly - I can visit https://whoami.mydomain.com and I am first forwarded to https://login.mydomain.com where I have to authenticate, before being forwarded on to the whoami container.
Note that whoami has a letsencrypt certificate for https://whoami.mydomain.com, but does not require TLS on the backend because it's just running on port 80, http, which is why no tls passthrough is needed.
Use-case - kibana is not working (kibana is https on the backend)
I set up https://kibana.mydomain.com. Without a middleware, visiting this url forwards me to the kibana login as expected and it works.
However, when using the authentication middleware, I get a "bad certificate error" on the backend, and this is likely because tls passthrough needs to be enabled and I can't load Kibana.
When I enable tls passthrough on the tcp router for kibana, authelia is skipped entirely and I am forwarded straight to https://kibana.mydomain.com which loads correctly, without the authenticate middleware being executed!
What did you expect to see?
I expected to see https://login.mydomain.com.
What did you see instead?
I saw https://kibana.mydomain.com, without any authentication being required as expected from the middleware. TLS passthrough is interfering with the middleware.
Output of traefik version:
traefik:v2.2

What is your environment & configuration (arguments, toml, provider, platform, ...)?

MacOS
Docker swarm - one node has traefik and authelia, the other has kibana

Note: the traefik, authelia and whoami configurations work perfectly together. The issue is with kibana which I have placed at the end.
traefik docker-compose
traefik:
        image: traefik:v2.2
        hostname: traefik
        environment:
            - DO_AUTH_TOKEN=ABC
        command:
            # Docker configuration
            - --providers.docker.swarmMode=true
            - --providers.docker.exposedByDefault=false
            - --providers.docker.network=network
            - --providers.docker.endpoint=tcp://socket-proxy:2375
            - --providers.docker.watch=true

            # Entrypoints
            - --entrypoints.http.address=:80
            - --entrypoints.https.address=:443

            # Letsencrypt setup
            - --certificatesresolvers.letsencrypt.acme.caServer=${LETSENCRYPT_ACME_ENDPOINT}
            - --certificatesresolvers.letsencrypt.acme.email=${LETSENCRYPT_EMAIL}
            - --certificatesresolvers.letsencrypt.acme.storage=${TRAEFIK_HOST_VOLUME_CERTS}/acme.json
            - --certificatesresolvers.letsencrypt.acme.dnsChallenge.delayBeforeCheck=15
            - --certificatesresolvers.letsencrypt.acme.dnsChallenge=true
            - --certificatesResolvers.letsencrypt.acme.dnsChallenge.provider=digitalocean
            - --certificatesResolvers.letsencrypt.acme.dnsChallenge.resolvers=<IP_ADDRESS>:53,<IP_ADDRESS>:53
        ports:
            - 80:80
            - 443:443
        networks:
            - network
            - socket-proxy
        volumes:
            - /volumes/traefik/certs/:/volumes/traefik/certs/
        deploy:
            placement:
                constraints:
                    - node.hostname==${TRAEFIK_DIGITALOCEAN_NAME}
            labels:
                # General configuration - needs to be here for the http-catchall router to fire
                - traefik.enable=true
                - traefik.http.services.traefik.loadbalancer.server.port=80

                # Middlewares
                - traefik.http.routers.http-catchall.rule=hostregexp(`{host:.+}`)
                - traefik.http.routers.http-catchall.entrypoints=http
                - traefik.http.routers.http-catchall.middlewares=https-redirect,hsts-header
                - traefik.http.middlewares.https-redirect.redirectscheme.scheme=https
                - traefik.http.middlewares.https-redirect.redirectscheme.permanent=true
                - traefik.http.middlewares.hsts-header.headers.sslredirect=true

                 # Global wildcard certificates
                - traefik.http.routers.wildcard-certs.tls.certresolver=letsencrypt
                - traefik.http.routers.wildcard-certs.entrypoints=http
                - traefik.http.routers.wildcard-certs.tls.domains[0].main=${DOMAIN}
                - traefik.http.routers.wildcard-certs.tls.domains[0].sans=*.${DOMAIN}

authelia docker-compose
authelia:
        image: authelia/authelia
        hostname: traefik
        environment:
            - TZ=Europe/Madrid
        ports:
            - 9091:9091
        volumes:
            - /volumes/authelia:/etc/authelia/
        networks:
            - network
        deploy:
            labels:
                # General configuration
                - traefik.enable=true
                - traefik.http.services.authelia.loadbalancer.server.port=9091
                - traefik.http.routers.authelia.rule=Host(`login.${DOMAIN}`)

                # Https
                - traefik.http.routers.authelia.entrypoints=https
                - traefik.http.routers.authelia.tls=true
                - traefik.http.routers.authelia.tls.certresolver=letsencrypt

                # Middleware
                - traefik.http.middlewares.authelia.forwardauth.address=http://authelia:9091/api/verify?rd=https://login.${DOMAIN}/
                - traefik.http.middlewares.authelia.forwardauth.trustForwardHeader=true
                - 'traefik.http.middlewares.authelia.forwardauth.authResponseHeaders=Remote-User, Remote-Groups'

whoami docker-compose (works perfectly)
whoami:
        image: "containous/whoami"
        hostname: traefik
        networks:
            - network
        deploy:
            labels:
                # General configuration
                - traefik.enable=true
                - traefik.http.services.whoami.loadbalancer.server.port=80

                # Https
                - traefik.http.routers.whoami.rule=Host(`whoami.${DOMAIN}`)
                - traefik.http.routers.whoami.entrypoints=https
                - traefik.http.routers.whoami.tls=true
                - traefik.http.routers.whoami.tls.certresolver=letsencrypt
                - traefik.http.routers.whoami.middlewares=authelia@docker

kibana docker-compose
kibana:
        image: docker.elastic.co/kibana/kibana:7.6.0
        hostname: ${KIBANA_DIGITALOCEAN_NAME}
        environment:
            # General configuration
            - SERVER_NAME=kibana.${DOMAIN}
            - ELASTICSEARCH_HOSTS=https://elasticsearch:9200
            - ELASTICSEARCH_USERNAME=elastic
            - ELASTICSEARCH_PASSWORD=${ELASTICSEARCH_PASSWORD}
            - XPACK_MONITORING_UI_CONTAINER_ELASTICSEARCH_ENABLED=true

            # Https in the browser - use wildcard letsencrypt certs
            - SERVER_SSL_ENABLED=true
            - SERVER_SSL_CERTIFICATE=/usr/share/kibana/config/certs/cert.pem
            - SERVER_SSL_KEY=/usr/share/kibana/config/certs/key.pem

            # Https from elasticsearch certutil - use selfsigned certs
            - ELASTICSEARCH_SSL_CERTIFICATE=/usr/share/kibana/config/certs/selfsignedcert.pem
            - ELASTICSEARCH_SSL_KEY=/usr/share/kibana/config/certs/selfsignedkey.pem
            - ELASTICSEARCH_SSL_CERTIFICATEAUTHORITIES=/usr/share/kibana/config/certs/selfsignedca.pem
        ports:
            - 5601:5601
        volumes:
            - "/certs:/usr/share/kibana/config/certs"
        networks:
            - network
        deploy:
            labels:
                # General configuration
                - traefik.enable=true
                - traefik.http.services.kibana.loadbalancer.server.port=5601
                - traefik.http.services.kibana.loadbalancer.server.scheme=https
                - traefik.http.routers.kibana.rule=Host(`kibana.${DOMAIN}`)

                # Passthrough TLS requires a tcp service / router
                - traefik.tcp.routers.kibana.rule=HostSNI(`kibana.${DOMAIN}`)
                - traefik.tcp.services.kibana.loadbalancer.server.port=5601
                - traefik.tcp.routers.kibana.tls.passthrough=true

                # Https
                - traefik.http.routers.kibana.entrypoints=https
                - traefik.http.routers.kibana.tls=true
                - traefik.http.routers.kibana.tls.certresolver=letsencrypt
                - traefik.http.routers.kibana.middlewares=authelia@docker

Important:
If I remove the three lines directly below #Passthrough TLS requires a tcp service/router, the following happens:

Logs show what I have displayed below. Note tls: unknown certificate is expected because I'm using letsencrypt's staging environment.
I am redirected to https://login.mydomain.com
Kibana shows Internal server error and in the kibana logs (note bad certificate):

kibana logs:
{"type":"error","@timestamp":"2020-04-18T23:07:27Z","tags":["connection","client","error"],"pid":6,"level":"error","error":{"message":"140035565897600:error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate:../deps/openssl/openssl/ssl/record/rec_layer_s3.c:1544:SSL alert number 42\n","name":"Error","stack":"Error:<PHONE_NUMBER>97600:error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate:../deps/openssl/openssl/ssl/record/rec_layer_s3.c:1544:SSL alert number 42\n"},"message":"140035565897600:error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate:../deps/openssl/openssl/ssl/record/rec_layer_s3.c:1544:SSL alert number 42\n"}

traefik logs:
time="2020-04-18T23:03:00Z" level=debug msg="http: TLS handshake error from <IP_ADDRESS>:50209: remote error: tls: unknown certificate"
time="2020-04-18T23:03:01Z" level=debug msg="Remote error http://authelia:9091/api/verify?rd=https://login.xpacto.com/. StatusCode: 302" middlewareType=ForwardedAuthType middlewareName=authelia@docker
time="2020-04-18T23:03:05Z" level=debug msg="http: TLS handshake error from <IP_ADDRESS>:50224: remote error: tls: unknown certificate"
time="2020-04-18T23:04:21Z" level=debug msg="vulcand/oxy/roundrobin/rr: begin ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"rd=https%3A%2F%2Fkibana.xpacto.com%2F\",\"Fragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9\"],\"Accept-Encoding\":[\"gzip, deflate, br\"],\"Accept-Language\":[\"en-GB,en-US;q=0.9,en;q=0.8\"],\"Cache-Control\":[\"max-age=0\"],\"Dnt\":[\"1\"],\"Sec-Fetch-Dest\":[\"document\"],\"Sec-Fetch-Mode\":[\"navigate\"],\"Sec-Fetch-Site\":[\"none\"],\"Sec-Fetch-User\":[\"?1\"],\"Upgrade-Insecure-Requests\":[\"1\"],\"User-Agent\":[\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36\"],\"X-Forwarded-Host\":[\"login.xpacto.com\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"traefik\"],\"X-Real-Ip\":[\"<IP_ADDRESS>\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"login.xpacto.com\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"<IP_ADDRESS>:50420\",\"RequestURI\":\"/?rd=https%3A%2F%2Fkibana.xpacto.com%2F\",\"TLS\":null}"
time="2020-04-18T23:04:21Z" level=debug msg="vulcand/oxy/roundrobin/rr: Forwarding this request to URL" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"rd=https%3A%2F%2Fkibana.xpacto.com%2F\",\"Fragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9\"],\"Accept-Encoding\":[\"gzip, deflate, br\"],\"Accept-Language\":[\"en-GB,en-US;q=0.9,en;q=0.8\"],\"Cache-Control\":[\"max-age=0\"],\"Dnt\":[\"1\"],\"Sec-Fetch-Dest\":[\"document\"],\"Sec-Fetch-Mode\":[\"navigate\"],\"Sec-Fetch-Site\":[\"none\"],\"Sec-Fetch-User\":[\"?1\"],\"Upgrade-Insecure-Requests\":[\"1\"],\"User-Agent\":[\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36\"],\"X-Forwarded-Host\":[\"login.xpacto.com\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"traefik\"],\"X-Real-Ip\":[\"<IP_ADDRESS>\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"login.xpacto.com\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"<IP_ADDRESS>:50420\",\"RequestURI\":\"/?rd=https%3A%2F%2Fkibana.xpacto.com%2F\",\"TLS\":null}" ForwardURL="http://<IP_ADDRESS>:9091"
time="2020-04-18T23:04:21Z" level=debug msg="vulcand/oxy/roundrobin/rr: completed ServeHttp on request" Request="{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"rd=https%3A%2F%2Fkibana.xpacto.com%2F\",\"Fragment\":\"\"},\"Proto\":\"HTTP/2.0\",\"ProtoMajor\":2,\"ProtoMinor\":0,\"Header\":{\"Accept\":[\"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9\"],\"Accept-Encoding\":[\"gzip, deflate, br\"],\"Accept-Language\":[\"en-GB,en-US;q=0.9,en;q=0.8\"],\"Cache-Control\":[\"max-age=0\"],\"Dnt\":[\"1\"],\"Sec-Fetch-Dest\":[\"document\"],\"Sec-Fetch-Mode\":[\"navigate\"],\"Sec-Fetch-Site\":[\"none\"],\"Sec-Fetch-User\":[\"?1\"],\"Upgrade-Insecure-Requests\":[\"1\"],\"User-Agent\":[\"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36\"],\"X-Forwarded-Host\":[\"login.xpacto.com\"],\"X-Forwarded-Port\":[\"443\"],\"X-Forwarded-Proto\":[\"https\"],\"X-Forwarded-Server\":[\"traefik\"],\"X-Real-Ip\":[\"<IP_ADDRESS>\"]},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"login.xpacto.com\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"<IP_ADDRESS>:50420\",\"RequestURI\":\"/?rd=https%3A%2F%2Fkibana.xpacto.com%2F\",\"TLS\":null}"

With the three lines directly below #Passthrough TLS requires a tcp service/router uncommented, the following happens:
time="2020-04-18T23:13:49Z" level=debug msg="Handling connection from <IP_ADDRESS>:51833"

It goes right through to kibana.

Is this perhaps simply because tcp middlewares need to be supported?
I'm linking #6684 just in-case this is the reason. If it's true, am I right in thinking that, as of right now middlewares only work with port 80 and 443 (http / https)?...
Were it to be implemented, would I simply need to add:
    - traefik.tcp.routers.kibana.middlewares=authelia@docker

or would I also need to remove the http one? This is of course assuming that this is the only thing missing to make this work with tls passthrough.
Is there any way I can support to have this implemented? I'm happy put in the work to do all the docs for it at the very least...

Update. I did some research. Here's what I found.

Kibana Certs
TLS Passthrough
serversTransport.rootCAs
result

letsencrypt
enabled
none
no auth, directly goes to kibana

letsencrypt
enabled
letsencrypt CAs
no auth, directly goes to kibana

letsencrypt
disabled
none
kibana logs:   :sslv3 alert bad certificate ... :SSL alert number 42  traefik logs:  500 Internal Server Error' caused by: x509: cannot validate certificate for <IP_ADDRESS> because it doesn't contain any IP SANs

letsencrypt
disabled
letsencrypt CAs
same as with previous (none), sslv3 error in kibana and x509 error in traefik

self-signed
disabled
none
kibana logs:  kibana: SSLv2 bad certificate  traefik logs:  '500 Internal Server Error' caused by: x509: certificate is valid for <IP_ADDRESS>, not <IP_ADDRESS>

self-signed
disabled
self-signed
same as with previous (none), sslv2 error in kibana and x509 error in traefik

self-signed
enabled
none
no auth, directly goes to kibana

self-signed
enabled
self-signed
no auth, directly goes to kibana

Observations:

Enabling insecureSkipVerify and passthrough enabled works fine, but I don't want to have to enable it.
I found this post from 2019 where someone had a similar issue.
I took at look at the code in addserver, and it looks like it's only using IP, not hostname, which is the reason for the error with the combination: self-signed, disabled, [none|self-signed]. I can't / shouldn't use IPs because docker will assign different IPs in a swarm, and docker swarm does not yet have static ipv4 address setting capabilities.
Apparently this traefik issue, #3906, provided TLS passthrough with TCP to fix the X509 issue, which looks right because these only appear when TLS passthrough is disabled.
But when I enable TLS passthrough, I go straight through to the service.

I hope that's enough information to help. From that above, to me, it really does look like a bug. Let me know if there's anything I'm missing.

duplicate of #6684

I solved this, but I don't know if this is a duplicate of #6684.
First I had to disable passthrough. The only config I have in kibana labels is now:
- traefik.enable=true
- traefik.http.services.kibana.loadbalancer.server.port=5601
- traefik.http.services.kibana.loadbalancer.server.scheme=https

I then had to use file configuration for kibana and the authelia middleware because only the file configuration allows to use  an address, as mentioned in one of the linked posts previously.
http:
  middlewares:
    authelia:
      forwardAuth:
        address: http://authelia:9091/api/verify?rd=https://login.mydomain.com/
        trustForwardHeaders: true
        authResponseHeaders:
          - Remote-User
          - Remote-Groups
  services:
    kibana:
      loadBalancer:
        servers:
          - url: "https://kibana:5601"  <------ This is what I had to do here
  routers:
    kibana:
      middlewares: [authelia]
      rule: "Host(`kibana.mydomain.com`)"
      entryPoints: [https]
      service: kibana
      tls:
        certResolver: letsencrypt

Finally, as Kibana uses a self-signed cert in this test, I had to pass the self-signed cert in the traefik config (and of course use this file config):
- --providers.file.filename=/volumes/traefik/certs/config.yml
- --serverstransport.rootcas=/volumes/traefik/certs/selfsignedca.pem

@ldez I think this isn't a duplicate of the one we marked it as, as I haven't even used TLS passthrough. Is servers.url the only thing I was missing or have I unwittingly done something else?


Obsoleted IRazorEngineBuilder APIs

#2082

Marked IRazorEngineBuilder and related APIs as [Obsolete].
Updated all the tests to not use the obsoleted APIs.
Found a bug (#2267) in Preallocated tag helper optimization in the process
Included the fix for the above bug

@NTaylorMullen @rynowak

🆙 📅


snapshot-controller: error while generating certificate with cert manager

When using the webhook's certManagerIssuerRef configuration, the following error occurs while generating the certificate:
Name:         snapshot-validation-webhook
Namespace:    snapshot-controller
Labels:       app.kubernetes.io/instance=snapshot-controller
              app.kubernetes.io/managed-by=Helm
              app.kubernetes.io/name=snapshot-validation-webhook
              app.kubernetes.io/version=v6.3.3
              helm.sh/chart=snapshot-controller-2.0.4
Annotations:  meta.helm.sh/release-name: snapshot-controller
              meta.helm.sh/release-namespace: snapshot-controller
API Version:  cert-manager.io/v1
Kind:         Certificate
Metadata:
  Creation Timestamp:  2024-01-08T16:35:43Z
  Generation:          1
  Resource Version:    2103731
  UID:                 953009bf-dad7-47ae-aac0-678ab7191808
Spec:
  Dns Names:
    snapshot-validation-webhook.snapshot-controller.svc
  Issuer Ref:
    Kind:  ClusterIssuer
    Name:  cloudflare
  Private Key:
    Rotation Policy:  Always
  Secret Name:        snapshot-validation-webhook-tls
Status:
  Conditions:
    Last Transition Time:    2024-01-08T16:35:43Z
    Message:                 Issuing certificate as Secret does not exist
    Observed Generation:     1
    Reason:                  DoesNotExist
    Status:                  False
    Type:                    Ready
    Last Transition Time:    2024-01-08T16:35:44Z
    Message:                 The certificate request has failed to complete and will be retried: Failed to wait for order resource "snapshot-validation-webhook-1-112280392" to become ready: order is in "errored" state: Failed to create Order: 400 urn:ietf:params:acme:error:rejectedIdentifier: Error creating new order :: Cannot issue for "snapshot-validation-webhook.snapshot-controller.svc": Domain name does not end with a valid public suffix (TLD)
    Observed Generation:     1
    Reason:                  Failed
    Status:                  False
    Type:                    Issuing
  Failed Issuance Attempts:  1
  Last Failure Time:         2024-01-08T16:35:44Z
Events:
  Type     Reason     Age   From                                       Message
  ----     ------     ----  ----                                       -------
  Normal   Issuing    35s   cert-manager-certificates-trigger          Issuing certificate as Secret does not exist
  Normal   Generated  35s   cert-manager-certificates-key-manager      Stored new private key in temporary Secret resource "snapshot-validation-webhook-m87kf"
  Normal   Requested  35s   cert-manager-certificates-request-manager  Created new CertificateRequest resource "snapshot-validation-webhook-1"
  Warning  Failed     34s   cert-manager-certificates-issuing          The certificate request has failed to complete and will be retried: Failed to wait for order resource "snapshot-validation-webhook-1-112280392" to become ready: order is in "errored" state: Failed to create Order: 400 urn:ietf:params:acme:error:rejectedIdentifier: Error creating new order :: Cannot issue for "snapshot-validation-webhook.snapshot-controller.svc": Domain name does not end with a valid public suffix (TLD)

It looks like Cert Manager is unhappy with the svc suffix ... I can't see how this has worked previously.

It looks like Cert Manager is unhappy with the svc suffix ... I can't see how this has worked previously.

More specifically, it is unhappy because it was asked to create a "public" certificate using ACME, but we try to create the certificate internally, without a valid top-level domain.
But we don't need a public certificate at all. We only need a certificate to validate the internal service names (hence the .svc suffix). Usually, users create some kind of internal issuer, usually using the SelfSigned or CA type and use that to provision these internal certificates.
I don't really see the reason one would want a public certificate for this internal component. If the snapshot-controller was reachable from outside the cluster, something has already gone very wrong.

@WanzenBug, I appreciate you providing some more info on this. Admittedly, this would be very useful info to include in the portion of the readme that pertains to using cert-manager. Right now, this is all that is there:
A [cert-manager.io](https://cert-manager.io/) issuer able to create a certificate for the webhook service.

To use this method, create an override file like:

webhook:
  tls:
    certManagerIssuerRef:
      name: internal-issuer
      kind: ClusterIssuer

To apply the override, use --values <override-file>.

For sure. Patches welcome :smiley:


Short cut sleeping when result is available

Significantly speed up Emacs testing.

Looks fine to me, based on my limited elisp knowledge

Hmm, it fails... I'll debug this.


fix(interactive): Support Multiple Matches in IR Core

What do these changes do?

As titled, support Multiple Matches in IR Core

From now, the logical plan will contain contain a dummy RootScan after initialization by default. This dummy RootScan may be later used to support multiple scan.
When a plan of a pattern matching is append to a node, if the plan is naive plan, it will directly append to the assigned node. Otherwise, it the plan is extend plan, then it must have its own scan operator, so it have to be append to the dummy RootScan
When a sink operator is append to the logical plan, it suggests that the logical plan building is finished. Therefore, it will call clean_redundant_nodes method to clean useless nodes. There are two kinds of reduandant nodes: Scan node with no child and dummy RootScan with zero or only single child.

Related issue number

Fixes #3052 #3062

Codecov Report

Merging #3134 (89e0f3f) into main (02dd978) will decrease coverage by 0.05%.
Report is 40 commits behind head on main.
The diff coverage is n/a.

Additional details and impacted files

@@            Coverage Diff             @@
##             main    #3134      +/-   ##
==========================================
- Coverage   42.67%   42.63%   -0.05%
==========================================
  Files         100      100
  Lines       10713    10817     +104
==========================================
+ Hits         4572     4612      +40
- Misses       6141     6205      +64

see 8 files with indirect coverage changes

Continue to review full report in Codecov by Sentry.

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


Replace keywords across multiple runs

I have two PPTs (File1.pptx and File2.pptx) in which I have the below 2 lines. I already posted this problem here. Since, there is no response, I thought of checking here
XX NOV 2021, Time: xx:xx – xx:xx hrs (90mins)
FY21/22 / FY22/23

I wish to replace like below
a) NOV 2021 as NOV 2022.
b) FY21/22 / FY22/23 as FY21/22 or FY22/23.
But the problem is my replacement works in File1.pptx but it doesn't work in File2.pptx.
When I printed the run text, I was able to see that they are represented differently in two slides.
def replace_text(replacements:dict,shapes:list):
    for shape in shapes:
        for match, replacement in replacements.items():
            if shape.has_text_frame:
                if (shape.text.find(match)) != -1:
                    text_frame = shape.text_frame
                    for paragraph in text_frame.paragraphs:
                        for run in paragraph.runs:
                            cur_text = run.text
                            print(cur_text)
                            print("---")
                            new_text = cur_text.replace(str(match), str(replacement))
                            run.text = new_text

In File1.pptx, the cur_text looks like below (for 1st keyword). So, my replace works (as it contains the keyword that I am looking for)

The same issue happens for 2nd keyword as well which is FY21/22 / FY22/23.
But there is no bold or any format applied to my lines in File1.pptx amd File2.pptx. So, not sure why does it have multiple runs.
Why is the same line (identical to human eyes) is being returned differently by run.text? What is the right level to look for text?
How can we combine the previous N runs to the current runs and do the replacement. where N can range from 1 to 3.
This issue happens for only 10% of the search terms (and not for all of my search terms) but scary to live with this issue because if the % increases, we may have to do a lot of manual work. How do we avoid this and code correctly?
How do we get/extract/find/identify the word that we are looking for across multiple runs (when they are indeed present) like CTRL+F and replace it with desired keyword?
Basically, I wish to know how do I make my code work like CTRL+H (Find and replace) that can take anyword and replace it with our keyword
Any help please? I am open to paid support to solve this issue as well

The answer to this question is - hopefully - my repository at https://github.com/fschaeck/python-pptx-text-replacer
The way Powerpoint distributes Text across runs in a paragraph is nearly random and can impossibly be anticipated.
The script in my repository takes care of changing text across runs without effecting the character formats at all. And if it doesn’t for anybody, please open an issue there!


Add a quick setup animated gif

I use the most stupid and fast feature, I don't know if that is ok.

a better look is here: https://github.com/juliomatcom/exprexo/blob/master/README.md


Added support to make the VisualEffect changeable

To enable Mantis to fit into different types of iOS apps the developer should be able to change also the appearance of the cropper. The visual style is currently fixed and does not fit in any type of app.
Without too much effort this small addon introduce the CropVisualEffectType which also can be .none to make the cropper more minimalistic in style.
What I did:

added cropVisualEffectType as new Config attribute
added CropVisualEffectType
added two examples into the Mantis example app.

👍 Keep up the good work on the ✂cropper.
👉 Example of CropVisualEffectType .blurDark
Blurred Dark is the default style type.

👉 Example of CropVisualEffectType .none

Thanks for the PR.
I tested the new effects and found

The blurLight makes the rotation board harder to see. (as shown in the picture below)
No blur effect does not make a big difference.

So I think it may not be a good idea to add CropVisualEffectType to Mantis for now.

You are right the readability on .blurLight is bad.
For my personal use is .none the best solution. I added the other types to provide a more flexible solution.
What about a more simple solution by a way the developer can just turn the blur effect off. 🤗 I would provide a pull request.

If .none is the best solution for you, you can just remove .blurLight effect and update the example. Maybe we can more better blur effects in the future.

@codebeauty When using .none VisualEffect, the image shows outside of the crop area after rotating.

The normal one should be like this.

Sorry, I've overlooked that behavior. Fixed in the latest commit. 🤞

Looks good. Thanks for the PR.


Old acknowledgments missing

I have noticed some acknowledgements that were in an older version of the book are not in the current version of the book. Presumably they were lost when the acknowledgements list was automated in https://github.com/plfa/plfa.github.io/commit/f0fed89bcb2e464c6739da6c2b28a13c10d1cfcc#diff-e1a867674ed7d1f8142aa6a28f024465
The people I notice were in the old list but not the current list are:

Vikraman Choudhury
Ben Darwin
koo5
Anish Tondwalkar

I wonder why these contributors were listed under the "pull request" section, without ostensibly having made a pull request... I'll have to investigate.

Out of curiosity, how did you notice this?

I wonder why these contributors were listed under the "pull request" section, without ostensibly having made a pull request... I'll have to investigate.

I don't know about the others, but I got on that list by suggesting a fix in an issue that Phil then applied manually. (I'm in the automated list because of a seperate pull request)

Out of curiosity, how did you notice this?

Vikraman Choudhury's name stood out to me when I read the book a year or so ago (probably because it was first in the list). I noticed it was absent from the current version.


解决邮件发送报错问题,和标题邮件标题乱码问题.

由于config文件里头获取的参数type都是unicode,传入底层的getaddrinfo函数后会报错 getaddrinfo() argument 2 must be integer or string. 所以这里给port做个int转换.
邮件标题是中文的, 需要做一次编码, 避免邮件标题乱码.

Pull Request Test Coverage Report for Build 427

1 of 3 (33.33%) changed or added relevant lines in 1 file are covered.
14 unchanged lines in 7 files lost coverage.
Overall coverage increased (+0.02%) to 41.641%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

cobra/send_mail.py
1
3
33.33%

Files with Coverage Reduction
New Missed Lines
%

cobra/send_mail.py
1
19.23%

cobra/log.py
2
44.93%

cobra/init.py
2
29.11%

cobra/cve.py
2
81.5%

cobra/export.py
2
60.0%

cobra/pickup.py
2
33.06%

cobra/utils.py
3
35.77%

Totals

Change from base Build 426:
0.02%

Covered Lines:
1609

Relevant Lines:
3864

💛  - Coveralls


Goodbye TextBox

In this PR we are removing the TextBox class, which was used before both for saving data and for drawing UI elements.

We are using instead TimerInfo instead for saving the data (before a member of TextBox)

We are drawing the text directly (in TimerTrack::DrawTimesliceText method)

We are getting pos and size directly instead on saving them into a TextBox.

We are additionally replacing pointers by const references when we are assuming than the pointer shouldn't be null.
Following: http://b/193781152, which is the first step in the process of splitting data with UI elements.

Test: Start/Stop a capture, see if everything makes sense. Load a capture. Same time-performance in a 20sec capture. Using less memory consuption.

Thanks a lot for tracking all the std::string::c_str calls.

Only Nits, so LGTM!
Have you checked the performance? Any changes? Did it get faster? 😅

I make some experiments with a capture.
After the changes, TimeGraph::Draw takes 12.790ms in average. Before was 13.6ms, and sometimes there was more difference. I'm not sure how to measure it consistently, I hope that this means good news.

Only Nits, so LGTM!
Have you checked the performance? Any changes? Did it get faster? 😅

Just checked more consistently and it seems to be that TimeGraph::UpdatePrimitives was 13% faster in a zooming-out capture (+-1%), but I tested it with introspection in 2 small captures.


chore: remove workarounds previously implemented

Description
This pull request changes the following:

Removes the workaround previously added for exposing the environment variables to the systemd daemon in the ubi8-init-java17 container image.

Related Issues

Needs #229
Closes #243
Closes #244

:tada: This PR is included in version 0.5.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


[docs] Add TS Demos for component/toggle-button

[x] I have followed (at least) the PR section of the contributing guide.

For #14897
Contains TS Demos for
Components

StandaloneToggleButton
ToggleButtons
ToggleButtonSizes

Tests Passed
yarn docs:typescript:check and yarn docs:typescript:formatted

You don't have to post a screenshot proofing tests pass. CI takes care of this

Oh. Okay. Didn't know about this. Thanks :)


Issue #128: allow using Tools.hx shortcuts pattern

#128 issues #128: allow using haxe module file with multiple typedefs to helpers inside (you need to rebuild file-index to use it from std or external libraries after update)
Release notes updated.
Unit-tests added.

So basically it is a way to group classes together to use with using keyword?

Yes, take a look at 'haxe.macro.Tools' for example


Support for openSUSE Leap 42.2 docker images

This PR adds opensuse distro support for Ceph jewel version.
I could not follow the available instructions for testing the images, so I tested most daemons manually.
Also, where can I see travis build reports of the PRs?
Thanks,
Signed-off-by: Ricardo Dias<EMAIL_ADDRESS>

Pushed new changes addressing @ddiss comments

Otherwise I think this patchset looks fine.

Pushed a new change to address @ddiss last comment.
Thanks @ddiss for your review.

jenkins test this please

@leseb if there is work that needs to be done in the testing infrastructure to successfully test this PR, I can gladly help with that.

jenkins test this please

@rjfd I think the issue is in our CI currently. @andrewschoen what is this docker-fixes branch that we are trying to checkout? The branch doesn't exist hence the failure.

jenkins test this please

jenkins test ceph_ansible2.1-jewel-centos7_cluster

@leseb it was the branch of ceph-ansible that allowed for custom registry usage, which has since been merged to master and stable-2.1 of ceph-ansible. A rebase should fix it up the problem, but it seems that's already been done. :)


[Snyk] Upgrade @hashgraph/hedera-local from 2.10.0 to 2.11.0

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

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

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

Codecov Report
Patch and project coverage have no change.

Comparison is base (cb2a5d0) 78.26% compared to head (939d2c1) 78.26%.

:exclamation: Current head 939d2c1 differs from pull request most recent head 987a97b. Consider uploading reports for the commit 987a97b to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1583   +/-   ##
=======================================
  Coverage   78.26%   78.26%
=======================================
  Files          32       32
  Lines        2627     2627
  Branches      545      545
=======================================
  Hits         2056     2056
  Misses        405      405
  Partials      166      166

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


AddOcelot support custom MvcCoreBuilder / AddOcelot支持自定义MvcCoreBuilder

Background
The default AddOcelot method adds .AddNewtonsoftJson(), which was necessary when Microsoft did not launch the System.Text.Json library, but now it affects normal use, so this PR is mainly to solve the problem problem.

默认的AddOcelot方法内部添加了.AddNewtonsoftJson()，在微软没有推出System.Text.Json库的时候是有必要的，但是现在反而影响了正常使用，所以本PR主要是解决该问题。

Fixes / New Feature
Added the following methods in Ocelot.DependencyInjection.ServiceCollectionExtensions

在Ocelot.DependencyInjection.ServiceCollectionExtensions添加了以下方法

AddOcelotWithCustomMvcCoreBuilder(this IServiceCollection services, Func<IMvcCoreBuilder, Assembly, IMvcCoreBuilder> customMvcCoreBuilder)
AddOcelotWithCustomMvcCoreBuilder(this IServiceCollection services, IConfiguration configuration, Func<IMvcCoreBuilder, Assembly, IMvcCoreBuilder> customMvcCoreBuilder)

Proposed Changes

Support custom MvcCoreBuilder to adapt to more changes in the future, this change is mainly to support System.Text.Json

支持自定义MvcCoreBuilder，以适应未来更多的变化，本次更改主要是为了支持System.Text.Json

Hi @guoyongchang !
Could you resolve merge conflicts please?
After that CI-CD pipelines will be triggered.

Hi @guoyongchang !
Could you resolve merge conflicts please? After that CI-CD pipelines will be triggered.

Conflict resolved.

Now I see that at least your changes don't break current features.
But we have 2 parents in commit Merge branch 'develop' into develop.
I'm not a fan of merge commits with two parents after conflicts resolution, because they make non-linear history in base branch.
You need to put your commits on the top commit in base:develop!
Could I ask you to re-create PR please? Unfortunately your develop is broken. Your forked develop branch must be the same as develop branch in source repo!

Just backup these 2 files please with new changes.
Remove current fork, and make new fork to be sure you have the same history as in source repo having all commits up to date
Don't apply changes in develop, just keep it updated via pull operation always, just for future usage
Create new feature branch from develop one, for example, feat/XXX
Apply new changes from files backup.
Create new PR
Do not forget to link both PRs (old and new ones) for tracking purposes

As soon as you've created new PR, this PR will be closed as duplicate.
Finally,
Could you scan current open issues plz?
And what issue is this PR related to? Number?

#1515


Fix ssl certificate verification error issue#369

Add a minor improvement for nicely erroring out when VM is not found

@ldfsilva Thanks for the fix!


Viewer should be able to let user view files without an extension (such as "mimetypes" in an .ODT file)

would be great if a context menu item offered an option like "Open in Notepad". (VS Code already allows user to view a particular file though "Reveal in File Explorer".)

@AlfredHellstern , currently it opens a mimetype file in a VS Code tab and displays the contents. Why would we want to open it in a different text editor?

Don't remember exactly the context, but didn't mean to open in Notepad. Was probably asking for a context menu item in Windows File Explorer under Open With. Which is there now after installing the Viewer (Open With > Visual Studio Code) for a docx file, and indirectly for a "mimetype" file (where a popup gives choices, one of which is Visual Studio Code.


Fix outdated programmatic API example in README.md

The previous example stopped working since version 1.1.0.
This commit updates the example to work for versions 1.1.x.

Thank you!


DOC : add AJD to documentation

Codecov Report

Merging #434 (6852f33) into main (1bf5195) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #434   +/-   ##
=======================================
  Coverage   53.36%   53.36%
=======================================
  Files          44       44
  Lines        2732     2732
  Branches      522      522
=======================================
  Hits         1458     1458
  Misses       1163     1163
  Partials      111      111


feat(opus): update to Opus 1.3

Adds support for ambisonics and fixes a few other issues.
https://opus-codec.org/release/stable/2018/10/18/libopus-1_3.html
https://people.xiph.org/~jm/opus/opus-1.3/

Thanks!


Adds _lineHeight = NAN; to RCTTextAttributes

Motivation
On iOS, when the parent Text contains the lineHeight style prop, and the children are also Text components they don't inherit the lineHeight prop.
Test Plan
This is for iOS only.
Create a react-native project with React Native 0.54.0 or 0.54.1 and change the app to:
import React, { Component } from 'react';
import { StyleSheet, Text, View } from 'react-native';

type Props = {};
export default class App extends Component<Props> {
  render() {
    return (
      <View style={styles.container}>
        <Text style={{ fontWeight: 'bold', lineHeight: 40 }}>
          <Text style={{ color: 'orange' }}>I am bold and orange, </Text>
          <Text style={{ color: 'red' }}>I am bold and red, </Text>
          <Text style={{ color: 'blue' }}>I am bold and blue, </Text>
          <Text style={{ color: 'purple' }}>I am bold and purple, </Text>
          <Text style={{ color: 'yellow' }}>I am bold and yellow, </Text>
          <Text style={{ color: 'pink' }}>I am bold and pink</Text>
        </Text>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    backgroundColor: 'black',
    flex: 1,
    justifyContent: 'center',
    padding: 50,
  },
});

It displays:

But should look like:

Related PRs
New <Text> iOS https://github.com/facebook/react-native/commit/2716f53
Release Notes

[IOS] [MINOR] [Text] - Inherit lineheight

@aparedes ❤


java.lang.NoClassDefFoundError: Failed resolution of: Lcom/google/android/gms/common/api/Api$zzf

Installed the plugin following with README, met this error when trying to run Android app
here is 'cordova plugin list'
branch-cordova-sdk 4.0.0 "branch-cordova-sdk"
cc.fovea.cordova.purchase 6.0.0 "Purchase"
com.hutchind.cordova.plugins.streamingmedia 0.1.4 "StreamingMedia"
com.omarben.inappreview 0.0.5 "inappreview"
cordova-android-play-services-gradle-release 4.0.0 "cordova-android-play-services-gradle-release"
cordova-android-support-gradle-release 3.0.1 "cordova-android-support-gradle-release"
cordova-plugin-add-swift-support 2.0.2 "AddSwiftSupport"
cordova-plugin-androidx 1.0.2 "cordova-plugin-androidx"
cordova-plugin-androidx-adapter 1.1.0 "cordova-plugin-androidx-adapter"
cordova-plugin-apprate 1.2 "AppRate"
cordova-plugin-console 1.0.4 "Console"
cordova-plugin-customurlscheme 4.2.0 "Custom URL scheme"
cordova-plugin-device 1.1.3 "Device"
cordova-plugin-device-motion 1.2.2 "Device Motion"
cordova-plugin-dialogs 1.3.0 "Notification"
cordova-plugin-facebook4 2.2.0 "Facebook Connect"
cordova-plugin-file 4.3.2 "File"
cordova-plugin-firebasex 7.0.1 "Google Firebase Plugin"
cordova-plugin-globalization 1.0.4 "Globalization"
cordova-plugin-google-analytics 1.6.0 "Google Universal Analytics Plugin"
cordova-plugin-image-picker 1.1.1 "ImagePicker"
cordova-plugin-inappbrowser 1.5.0 "InAppBrowser"
cordova-plugin-ios-disableshaketoedit 1.0.0 "iOS Disable Shake to Edit"
cordova-plugin-screen-orientation 1.4.2 "Screen Orientation"
cordova-plugin-shake 0.5.4 "Shake Gesture Detection"
cordova-plugin-splashscreen 5.0.2 "Splashscreen"
cordova-plugin-vibration 2.1.2 "Vibration"
cordova-plugin-whitelist 1.3.0 "Whitelist"
cordova-plugin-x-socialsharing 5.1.6 "SocialSharing"
es6-promise-plugin 3.0.2 "Promise"
ionic-plugin-keyboard 2.2.1 "Keyboard"
nl.kingsquare.cordova.background-audio 1.0.1 "background-audio"
urbanairship-cordova 7.0.1 "Urban Airship
Can you help? Being struggled with this problem for days.

This looks to me to be caused by conflicting library versions - likely since you have a lot of plugins in your project. You can confirm this by looking at the resulting platforms/android/app/build.gradle and look for conflicting versions in the dependencies section.
This plugin allows you to specify Android component versions via plugin variables at plugin install time in order to allow you to align with other plugins.
You can confirm this plugin works fine in isolation by building and running the example project.
Closing as this issue is not directly caused by this plugin but is the result of conflicts with other plugins which must be resolved by the plugin user.


comment update

Coverage decreased (-0.1%) to 50.904% when pulling 9b1b5219ab5b8c8bca70b9ade4b7295e9a358dff on lcestou:patch-15 into 1a140d21e2b9403b54ed0d793608c817f9f6c15d on TimothyLuke:master.


AVAssetGenetraor returns nil image

Sometimes I encounter an error creating a gif from a video I saved. The error has no specific scenario that I can replicate. I have traced it to find the problem is in this block of code:
[https://github.com/matthewpalmer/Regift/blob/master/Regift/Regift.swift#L299]
Error text:
An error occurred: Optional(Error Domain=AVFoundationErrorDomain Code=-11832 "Cannot Open" UserInfo={NSUnderlyingError=0x174440030 {Error Domain=NSOSStatusErrorDomain Code=-12431 "(null)"}, NSLocalizedFailureReason=This media cannot be used., NSLocalizedDescription=Cannot Open}), image is nil
The AVAssetgenerator seems to return nil images sometimes. Anyone has an idea why this happens? I am using swift 3.
Thanks in advance!

Any fix on this issue?

found the solution here #39

found the solution here #39


Add CODA-LM eval coda

What type of PR is this?

Uncomment only one  /kind <> line, hit enter to put that in a new line, and remove leading whitespaces from that line:
/kind bug
/kind task
/kind feature

What does this PR do / why do we need it:
Add CODA-LM code
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewers:

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


Does not like Unicode

When a system tag has unicode characters, it breaks the tag.

Feature requests:
Ability to toggle system tag on/off.
Ability to edit tag display names
Ability to edit member display names
Ability to edit member color
Ability to toggle member color
PAPI integration (so can use the names with another chat handling plugin like townychat)
(Was/might still try to add these myself, but figured I'd mention them here anyways c:)

This is no longer an issue in the most recent release, forgot to close this issue


Switch pause and resume to "Context Module Function"

Rather than expose the helpers in the store, we can simply export it from the store.
Would this be better? Would this help the bundle size?

It will help bundle size, but I have decided to keep it as is because the pause() and resume() methods improve DX greatly.


Implement script_fields

Would it be possible to implement script_fields? If so, where would they best be implemented?
Script fields
I'm looking to mix something like this in mostly all my queries:
curl -XGET 'http://<IP_ADDRESS>:9200/geonames/_search?pretty=1'  -d '
{
   "script_fields" : {
      "distance" : {
         "params" : {
            "lat" : 2.27,
            "lon" : 50.3
         },
         "script" : "doc[location].distanceInKm(lat,lon)"
      }
   }
}
'

# [Thu Feb 16 11:20:29 2012] Response:
# {
#    "hits" : {
#       "hits" : [
#          {
#             "_score" : 1,
#             "fields" : {
#                "distance" :<PHONE_NUMBER>63887
#             },
#             "_index" : "geonames_1318324623",
#             "_id" : "6436641_en",
#             "_type" : "place"
#          },

Yeah, I guess it's on the same level as the field method, https://github.com/karmi/tire/blob/master/lib/tire/search.rb#L75-78


ec.rebuild -force command won't work after changing volume to EC

Hi,
After trying to change volume from replicated to EC via " ec.encode" command I tried "ec.rebuild -force" to find and rebuild missing EC shards among volume servers but each time I commit this command it would have the same result and will not fix EC volumes!
 There are no EC volumes that needs to fix.

It runs fine. There are no EC volumes that needs to fix.

It runs fine. There are no EC volumes that needs to fix.

So what is this list?, Why every times I get new list?

It runs fine. There are no EC volumes that needs to fix.

So what is this list?, Why every times I get new list?


[modify] include option for GitHub workflow

Coverage remained the same at 84.737% when pulling 09e9b53a4de2f2712eaf779587b95b0b2bc6661c on pr-github-workflow into 499336d9611356306a79ef7694ff321f6a8e97fb on master.


google+ api compatibility

hi. the library is wonderful. i was wondering how i could use google auth api along with this library. how to store values ? wether inside the default tables or outside. the main problem i guess is that google api doesnt return a password. i wish there were methods implemented to handle the case and register google users in such a way that the info can be utilised.

thx for your kind response and sorry for misspelling. yes you are completely right. so far i've managed to trigger google sign in ,fetch google user-info,check if user's email exist in db, in any case create login session, if the user email is new, then i generate a random password, make a new user record using $auth->register($email_from_google, $random_password, null). i mail the password to the user and let the user know he/she can also login using this credentials as alternative. after that i add additional google user-info by updating the user row in db. so now the user is part our users table but with more info. i guess the only problem is that the user is recognized by unique email while google recommends differentiating users by unique google id because it might happen that they change their email address.

Thanks, that makes sense.
Could you perhaps associate Google accounts and your internal accounts by storing the mappings between your user IDs and Google’s IDs (or ID Tokens) in a separate custom table?

havn't tried but it may be a good idea. thx for mentioning


#15 realign CAN frame data bytes in correct order

Or does the chip do things here that have to be compensated for in the library?

That was my thought but actually I think it is unnecessary, it was just to make sure that data bytes are places correctly in the Transmit message object when we pass a vector of bytes to be transmitted. But I got confused because to write the header to the trasmit message object I need to reverse the endianness because the bitfield structs are msb, unlike the data buffers we transmit. So we can disregard this PR


[BUG]: freisa-sprinkler has risk of interference with a USB cable plugged into the MiniPupper 2

Description of the bug
I 3D-printed the STL of the freisa-sprinkler available under https://github.com/B-AROL-O/FREISA/tree/main/freisa-sprinkler/STL and mounted them on a pre-production MiniPupper 2 which I borrowed from @OrsoEric.
Trying to connect the OAK-D-Lite to the main MiniPupper 2 PCB using a USB 3.1 cable fitted with a 90-deg USB-A connector, I realised that there is very little space available between the servo when attached to Body_Back to fit this thicker connector. Please refer to the following photo:

A straight USB connector like this one can fit, though:

Steps To Reproduce

Attach the freisa-sprinkler assembly to the MiniPupper 2
Try plugging a USB cable on the USB-A connector on the MiniPupper 2 PCB

Additional Information
No response

@Muwattalli as discussed on 2024-02-25 would you be able to modify the 3D model of freisa-sprinkler and provide and updated Body_back_supporti.STL where the servo is positioned about 3mm lower?

The part has been 3D-printed and looks OK:

Now it is time to remove the supports and add the threaded inserts and bearings, then replace the original part on my FREISA doggo


Cannot have more than one contract OFFERED

Reported by: Daniel Prates Forum post
"As soon as I unlock several flights via the 'inspection' contract, I kinda expect all of them (the ones I unlocked anyway) to be available all the time - so if I feel like a long flight, or a short one, they are all there to pick."

Moved Inspections back to parent level group so it wouldn't have to compete for spots with other TKA missions. now 22 flights will be available in order from start.

Completed with Version 1.1.5


SNOW-1668981: Update is wrong when source is anti-join

Please answer these questions before submitting your issue. Thanks!

What version of Python are you using?
Python 3.11.6 (tags/v3.11.6:8b6ee5b, Oct 2 2023, 14:57:12) [MSC v.1935 64 bit (AMD64)]

What operating system and processor architecture are you using?
Windows-10-10.0.22631-SP0

What are the component versions in the environment (pip freeze)?
pandas==2.2.2
snowflake-snowpark-python==1.22.1

What did you do?

from snowflake.snowpark import Session
from snowflake.snowpark.functions import lit

mock_session = Session.builder.config("local_testing", True).create()
test_data = mock_session.create_dataframe(pd.DataFrame({"a": [1, 2]}))

df1 = mock_session.create_dataframe(pd.DataFrame({"A": [0, 1], "B": ['a', 'b']}))
df2 = mock_session.create_dataframe(pd.DataFrame({"A": [0, 1], "B": ['a', 'c']}))

anti = df1.join(df2, on=["A", "B"], how="anti")
anti.show()  # Has only 1 row

# This update should only update 1 row in df1
result = df1.update(
    assignments={"B": lit("f")},
    condition=(df1["A"] == anti["A"]) & (df1["B"] == anti["B"]),
    source=anti,
)

print(result)  # UpdateResult(rows_updated=2, multi_joined_rows_updated=0)
mock_session.table(df1.table_name).show()  # Two rows are updated

What did you expect to see?
The updated table should have only 1 updated row. Instead, both rows are updated.

I have investigated this issue and it appears to also occur outside of local testing mode. Before fixing this for local testing we will also need to fix query generation for live mode.

Is this something that will be picked up for next release? My production processes depend on a query like this

hi @tvdboom, this is an issue in our join alias mapping, and the root cause is that df1["A] and anti["A"] they mistakenly point to the same column alias in the update call.
a quick workaround for this kind of join issue is call cache_result on anti to reset the internal alias mapping:
...
anti = df1.join(df2, on=["A", "B"], how="anti")
anti = anti.cache_result()  # this will reset the alias map
...

completely solving the ambiguous alias mapping issue might take some time, I will dive deeper into that part

I understand. Thanks for the tip

@sfc-gh-aling Could you give me a headsup when this has been solved? thanks

hi @tvdboom , I'm actively working on it, trying to find out the optimal solution for this problem. thanks for your patience in advance!


Associate with "connection" fromeditor

While working in the editor I often want a script to "associate" with a different "connection".   That is, I have some common sql that I want to run against dev and prod and test (etc).  Right now doing this requires finding the script in DBeavers project view.   It would be a very great convenience if it be done from the editor view a drop down or menu item.

You already can do this. Connection-selector combo is on the main toolbar. Also you can synchronize editor connection with current selection in database navigator (sync action is on the same main toolbar).

I figured out how to turn on the synchronizing between the project view and the current editor.   Thank you.

I never saw the connection selector because I have my Eclipse toolbar visibility set to "hidden" (vertical space is at a premium here).   Using Eclipse perspectives, I should be able to have my cake and eat it too (no toolbar in my java perspective, visible toolbar in the DBeaver perspective), but no go: Eclipse has only a single toolbar visibility setting for all perspectives.   I guess I'll assign a shortcut to toggle the toolbar visibility.   That should get me what I want, more or less.    Since I have reasonable workarounds, feel free to close this -- sorry to take up your time.


Name clash with free

$ cat Free.fst Free.fsti
module Free

let free (x:bool) = not x

let test (x:bool) = free x

module Free
val test : bool -> bool

$ cat Free.c
/*
  This file was generated by KaRaMeL <https://github.com/FStarLang/karamel>
  KaRaMeL invocation: /home/nswamy/everest/karamel/krml prims.krml FStar_Pervasives_Native.krml FStar_Pervasives.krml Free.krml
  F* version: 46cbaf03
  KaRaMeL version: 70084646
 */

#include "Free.h"

static bool free(bool x)
{
  return !x;
}

bool Free_test(bool x)
{
  return free(x);
}

produces
✘ [CC,./Free.c] (use -verbose to see the output)
./Free.c:12:13: error: conflicting types for ‘free’
   12 | static bool free(bool x)
      |             ^~~~
In file included from /home/nswamy/everest/karamel/include/krml/internal/target.h:7,
                 from /home/nswamy/everest/karamel/include/krmllib.h:19,
                 from ./Free.h:11,
                 from ./Free.c:8:
/usr/include/stdlib.h:565:13: note: previous declaration of ‘free’ was here
  565 | extern void free (void *__ptr) __THROW;
      |             ^~~~
cc1: error: unrecognized command line option ‘-Wno-unknown-warning-option’ [-Werror]
cc1: all warnings being treated as errors

Warning 3: run_or_warn: the following command failed:
gcc-9 -I /home/nswamy/everest/karamel/krmllib/dist/minimal -I /home/nswamy/everest/karamel/krmllib -I /home/nswamy/everest/karamel/include -I . -Wall -Werror -Wno-unused-variable -Wno-unknown-warning-option -Wno-unused-but-set-variable -Wno-unused-function -g -fwrapv -D_BSD_SOURCE -D_DEFAULT_SOURCE -Wno-parentheses -std=c11 -c ./Free.c -o ./Free.o
Warning 3 is fatal, exiting.
make: *** [Makefile:7: all] Error 255

cc @tahina-pro @arvinda

copy-pasting what I wrote on Teams: there's not much I can do since there's potentially an unbounded amount of external definitions in system headers, whatever is defined in headers you pass to -add-include, etc.
note that you would have the same problem if you defined free in your own C file without prefixing it suitably (and note that C compilers don't give you a warning saying "your free function collides with a name from the standard library")
krml has a mechanism for dealing with these name collisions, which is to prefix everything; if you use -no-prefix, there you must handle name collisions yourself
the one thing I can do is add a note to the -no-prefix option saying that you might run into this problem if you elect to use -no-prefix

I didn't use -no-prefix in this case. Is it on by default or something?

From what I understood, krml strips such prefixes from static functions (here, free does not appear in the interface of module Free)

Ugh! I thought you had used no-prefix but I was wrong about that. Sorry.
Tahina: you are correct, this is the prefix that gets kicked from static functions for readability. This was a big readability improvement for HACL* and a long-standing request from many of our downstream consumers. This is also in line with standard C practices: no need to prefix a static inline function which does not generate an external symbol.
I'm not sure what can be done in a principled way... I see two not-so-great fixes:

make this behavior optional (at the expense of verbosity)
try to add a list of "common" names and avoid colliding with them, although it'll always be brittle because I can't maintain an up-to-date list of what's exported by system headers... it's also tricky because some of the libc functions are treated as compiler builtins and I think I've seen some C compiler allow shadowing something like "sin" or "cos" (or maybe something else).

The other fix is of course to do nothing, although that's a sub-par user experience.

I would be happy if there was a way to make this behavior optional.

Another option might be to support a "--with-prefix=(val)" option.


Add "profiles" to the application.yaml for different environments (like prod, test, etc).

So you can add "profiles" to the application.yaml for different environments (like prod, test, etc). Is there any value in having something like that for the core repo?
Originally posted by @aklish in https://github.com/yahoo/navi/diffs

This isn't really needed in framework, but would be good for the yavin-app repo: https://github.com/yavin-dev/app/issues/37


Add song queuing

Feature moved from the 1.3 release to the 1.4 release.
Before starting work, figure out how to best update the API to allow for a queuing system that makes sense within the context of the current API. We want it to be backwards compatible but to be fluid and easy to use.

Song queuing has been relegated to a low-priority enhancement in light of all the issues recently discovered. This is best saved for a future release.


ORC-1270: Move opencsv dependency to the tools module

What changes were proposed in this pull request?
This PR aims to move the opencsv dependency to the tools module.
Why are the changes needed?
opencsv is used only by the tools module.
How was this patch tested?
Pass the CIs.

cc: @dongjoon-hyun


instantiating  breaks the app on ios

hello, when i instantiate a  component, the screen turns black and immediately the system quits the app, only on ios i have this issue
this where i render the  component:
  <View style={{position: "relative"}}>           <CachedImage  style={{width: "100%", height: "100%" , position: "absolute", }}         source={{uri: this.props.image.uri}}/>         <View style={[{opacity, transfrom: [{translateX: "-50%"}, {translateY: "-50%"}] }, styles.loadingIndicator]}>           <Spinner type="Circle" size={38} color = "#FBC62C" />           </View>           <Video                source={{ uri: this.state.uri }}             style={{ width: 200, height: 100 }}             rate={this.state.rate}             paused={ this.state.paused}              volume={this.state.volume}             muted={this.state.muted}               ignoreSilentSwitch={this.state.ignoreSilentSwitch}             resizeMode="cover"             onLoad={this.onLoad}             onBuffer={this.onBuffer}             onProgress={this.onProgress}             onEnd={() => null}             repeat={true}           />         </View>         </TouchableWithoutFeedback>

What is the value of state.uri on the inital render? Make sure it's not undefined. Would need to see some more logs to debug this.

indeed, i was using a method to cached the url by using the convertProxyToUrl it was not working on ios, hence breaking the app


API event source 'Headers' should be 'headers'

Headers' in API event source should be 'headers'.
Fixes #64.

Can you sync the base branch and merge?


face-remapping-alist is buffer-local

face-remapping-alist automatically becomes buffer-local when set so it isn't set globally and magit faces aren't removed.

Hm, it doesn't have property of becoming buffer-local by default. So it must be a separate package that does it.

ok, it's set by polymode.


Participate in GSoC 2022

LeetHub is an interesting project. Recently, someone opened an issue for HackerRank support(#206 ). We should explore the possibility of participating in this year's GSoC(timeline). What do you think @QasimWani , should we get a conversation going?

Sure, that sounds like a cool opportunity. I'm not familiar with GSoC. Does LeetHub become a mentor for GSoC?

LeetHub will become an Organization. Then, the Owner of this repo will have to appoint some Mentors who will be like the guides for participants. This is a very structured process. I'll research on the steps and comment here. You may also do the same.

@QasimWani any updates on this from your end? Applications close 21 Feb https://developers.google.com/open-source/gsoc/timeline


Not compatible with conan 2.x

Describe the bug
The recent conan 2.0.0 tool is not compatible with Basilisk.  While a fix is worked out, we need to update the conan package requirement to be 1.56 or less.
To reproduce
Cannot configure BSK with conan 2.x installed.
Expected behavior
Running python conanfile.py should not be running without errors.

For total newbies to this (like me) it would be great if this line (venv) $ pip3 install wheel conan in documentation could be changed to (venv) $ pip3 install wheel conan==1.59

The latest develop has already updated conanfile.py to warn the user if they are using a version of conan that is less than 1.40.1 or larger than 1.59.0.  See lines 68-74.  That should provide the required feedback. 🤞🏻

I did not get that feedback when using conan 2.x. Instead, I got this error message:
File "/home/patrick/basilisk/conanfile.py", line 15, in <module>
from conans import ConanFile, CMake, tools
ImportError: cannot import name 'ConanFile' from 'conans'
(/home/patrick/basilisk/.venv/lib/python3.10/site-packages/conans/__init__.py)

Ah, I see what you mean.  The conan imports are failing before we check for the version number.  I have fixed this now on a branch with other small fixes.  Branch is still working on some other small fixes.


Add NO_GUI_DEV_MODE, for running the controller without a GUI.

Commits in this PR

Add NO_GUI_DEV_MODE, for running the controller without a GUI.
Super hacky, I apologize.

PR chain

#205 Clarify comment on sensor scaling factor.
#211 Make VentMode_PRESSURE_CONTROL work.
#212 Fix pressure sensors pinout.
#216 Explicitly set the output limits in our blower PID.
#217 Control the solenoid from the Blower FSM.
👉 #218 Add NO_GUI_DEV_MODE, for running the controller without a GUI. 👈 YOU ARE HERE
#219 Tune PID.

Thank you for the reviews, Eugene.  Gonna push this stack.


feat(icons): added border-radius icon

What is the purpose of this pull request?

[X] New Icon
[ ] Bug fix
[ ] New Feature
[ ] Documentation update
[ ] Other:

Description
Adds a border-radius icon.
Icon use case
This adds a visual representation for border-radius.
Could be useful in a design application to represent corners.
Could also be used as a visual guide for different button properties, e.g; a square or rounded one might use this to indicate what's changing.
Icon Design Checklist
Concept

[X] I have provided valid use cases for each icon.
[X] I have not added any a brand or logo icon.
[X] I have not used any hate symbols.
[X] I have not included any religious or political imagery.

Author, credits & license

[ ] The icons are solely my own creation.
[ ] The icons were originally created in # by @
[X] I've based them on the following Lucide icons: box-select and maximize with some subtle tweaks to better suit this icon.
[ ] I've based them on the following design:

Naming

[x] I've read and followed the naming conventions
[x] I've named icons by what they are rather than their use case: Alternative name consider was corner-radius, which arguably is a better suit for it's name. But I think if someone were looking for this icon, their search would be border-radius.
[x] I've provided meta JSON files in icons/[iconName].json.

Design

[X] I've read and followed the icon design guidelines
[X] I've made sure that the icons look sharp on low DPI displays.
[X] I've made sure that the icons look consistent with the icon set in size, optical volume and density.
[X] I've made sure that the icons are visually centered.
[X] I've correctly optimized all icons to three points of precision.

Before Submitting

[X] I've read the Contribution Guidelines.
[X] I've checked if there was an existing PR that solves the same issue.

What about using box-select as a base?
Open lucide studio

What about using box-select as a base?
Open lucide studio

I did experiment with a similar design, however, I thought the rounded corners surrounding it (top-left, bottom-left, bottom-right) be a little confusing. Does it imply a different radius for just the 1 corner.

A slight variation that combines the two:
Open lucide studio

Another option might be to base it on spline:
Open lucide studio

Another option might be to base it on spline:
Open lucide studio

That doesn't look like a corner to me.

Maybe even better?
Open lucide studio


.gitignore + make in-tree builds work

This somewhat reduces noise for in-tree builds, too, in case any contributor wants to or accidentally does that.

I was trying to test the .gitignore for in-tree builds and realized the in-tree build actually doesn't work on mac/linux because of a filename conflict. Pushed a fix.
However this actually causes existing partial builds to break if you don't remove build/examples/glTFViewer first (because the new output file is build/examples/glTFViewer/glTFViewer). What's your preference on allowing in-tree builds? I could just omit that change.

np, can you mark as approved?


Issue with signals not overlaping each other

I trained and tested contrast-phys model with UBFC dataset. Before and after butterworth filter, the signals are not overlaping when plotting on top of each other. Do you have any idea, why this is happening? One signal is ahead of the other.

Hi, this is normal due to unsupervised training. Please check issue #7.

Thanks a lot!


Fix vec3.polarProject

Hello,
I think vec3.polarProject was wrong. I will take the simplest example to convince you.
Let's say we have a movable object with speed = 100, angleGround = 0 degrees (facing east) and angleAir = 0 degrees (facing the horizon, parallel to the ground).
vec3.polarProject(100, 0°, 0°) should return (100, 0, 0).
Previous implementation would return (0, 0, 100).

@RoOoBerT Clean your fork. I will not accept PRs with all your old commits.
Also, 0° air points up, therefore you move 100 units z component and the result is (0,0,100).
Why do you think 0° is flat?


Fix Remaining Contrast Issues for Dark Theme

Overview
In the latest Rocket Validator report, there are only a handful of color contrast issues remaining for the dark theme UI. This pr should fix those!
For the light theme, the only color contrast issue occurs on a page we do not have control over and does not contain critical content so I think it is worth removing that page from the report altogether: https://beta.elixirschool.com/cdn-cgi/l/email-protection .
Once this is merged, we should run one more report @jaimeiniesta and then 🤞🏼 finally be able to close #109 !
Screenshots
Previously the table header color was black

Previously the description text was light gray

Previously the input text color was very light (you will have to enter text into the input to reproduce this issue)

Yay! We're almost there. Heroku deploy hooks only let us define a single hook and that's already in use for the light theme reports, so let me know when this is merged and I'll run the dark mode report.

@kinson I'll be out for some hours now, but you can run the report in your account anyway...

@kinson I'll be out for some hours now, but you can run the report in your account anyway...

If you have a second to review and approve the pr I will merge it and run the report on my account 😁

Sure! It looks great to me!
Nice idea to add screenshots - could you add some screenshots of the before look? Maybe we can keep them as a reference for the blog post, I don't know...

Sure! It looks great to me!
Nice idea to add screenshots - could you add some screenshots of the before look? Maybe we can keep them as a reference for the blog post, I don't know...

I just added before screenshots to the pull request description, good call!

Good job @kinson ! I just run the dark mode report and all the contrast issues are gone!

I've muted contrast issues on the CloudFlare email protection page, so there are no more contrast issues on our side.
Also, set the dark mode report to run only once per week, the main report for light mode is still running daily.


Underwater effect appears as a bar at top of screen

Describe the bug
Depending on camera orientation and settings, the underwater effect can appear as a bar at top of the viewport.
Screenshots / video

Main scene. Camera settings untouched
Versions
Crest 4.3
To Reproduce
Open the main scene. Descend to height where underwater effect is active. And look up.
It is dependent on the viewport height. Decreasing the FoV on the camera makes the issue appear sooner (closer to the horizon). Decrease it to something like 10 and it will be hard to miss.
Platform

Editor
Mac
Windows

Additional context
It is caused by the Horizon Safety Margin Multiplier. Setting it to zero is a workaround.

This will be fixed in 4.5

4.5 is released which solves this issue.


GH-35411: [MATLAB] Create a templated C++ Proxy Class for Numeric Arrays

Rationale for this change
This pull request is a followup to #34563. To facilitate the implementation of future array types, we would like to first create a C++ template class for numeric arrays. We also want to start adding basic tests for the array functionality in the MATLAB interface.
What changes are included in this PR?

Added a C++ template Class called NumericArray templated on CType.
Re-implemented the Float64Array C++ proxy class in terms of the new template class, i.e. NumericArray<double>.
Added a method called double() on the MATLAB Float64Array class to convert the arrow.[Type]Array to a MATLAB double array.
Added basic tests for round-tripping float64 arrays.
Created a base C++ proxy Array class that all proxy array classes will inherit from.
Renamed Print() to ToString() and made it return a string instead of printing to the screen.

Are these changes tested?
Yes, we added automated test cases to the test class tFloat64Array.m. In addition, we manually qualified these changes on macOS.
Are there any user-facing changes?
Yes, the Print() method is no longer public and there is now a method called double() on arrow.array.Float64Array.
Included below is a simple example of using the double() method:
>> arrowArray = arrow.array.Float64Array([1, 2, 3])

arrowArray =

[
  1,
  2,
  3
]

>> matlabArray = double(arrowArray)

matlabArray =

     1
     2
     3

>> class(arrowArray)

ans =

    'arrow.array.Float64Array'

>> class(matlabArray)

ans =

    'double'

Future Directions

Support the rest of the numeric types.
Add an abstract MATLAB base class called arrow.array.Array.
Continue building out the methods (e.g. length())
Support null values (validity bitmap).
Handle converting non-ascii characters from UTF-8 to UTF-16.
Handle errors in the C++ layer.

Closes: #35411

Thanks for the feedback @kou! Let us know if you have any other comments.


composite rules

Hi
I am trying to implement composite rule...so heres the use case...i have main condition which checks device type and after it checks device types depending on the return value of one of the methods there are different types of actions to be implemented..could you please provide help on how to implement..
attaching files for review.
thank you in advance
composite rule.zip

i have main condition which checks device type and after it checks device types depending on the return value of one of the methods there are different types of actions to be implemented

You need multiple rules for your use case. An example can be found here: https://stackoverflow.com/a/58029884/5019386


How to add multiple citations for multiple software projects in a single repo?

This was brought up here: https://github.com/IfcOpenShell/IfcOpenShell/issues/3095
IfcOpenShell is a monorepo which hosts multiple software in the same repository. How would you have multiple citations for each of the software?
Would you include one cff in the project root for the project umbrella as a whole, and then other cffs in subdirectories for individual software within it? Or is there another technique?

A further idea:  you could create one CFF for each sub-project and list them all in the references section of the main CFF which is filled with generic information on the project.  This would offer further possibilities for integration with publications, like the paper @aothms mentioned in the original issue, to be configured as preferred-citation of the respective CFF.


Add IPM support for stm32mp157

Add mailbox management based on the IPCC Peripheral present in the stm32MP1 SoC.
Related PR: https://github.com/zephyrproject-rtos/hal_stm32/pull/1

Approved, but DNM until hal_stm32 is merged and PR updated with matching SHA1

@Mani-Sadhasivam , can you review again?

west.yml updated with  SHA1 dependency for hal_stm32  module.

@galak,  @nashif. Please could you review and merge if is ok for you?
Thanks in advance

LGTM upon light inspection, merging as STM32 maintainer @erwango has approved it and mentions is required for further progress


graphic causes tooltip not to display properly

Version
5.3.2
Link to Minimal Reproduction
No response
Steps to Reproduce

option = {
  legend: {
    data: ['Altitude (km) vs Temperature (°C)']
  },
  tooltip: {
    trigger: "axis",
    z: 1000,
    axisPointer: {
      type: "cross",
      animation: false,
      label: {
        backgroundColor: "#ff0000",
      },
    },
  },
  grid: {
    left: '3%',
    right: '4%',
    bottom: '3%',
    containLabel: true
  },
  xAxis: {
    type: 'value',
    axisLabel: {
      formatter: '{value} °C'
    }
  },
  yAxis: {
    type: 'category',
    axisLine: { onZero: false },
    axisLabel: {
      formatter: '{value} km'
    },
    boundaryGap: true,
    data: ['0', '10', '20', '30', '40', '50', '60', '70', '80']
  },
  graphic: [
    {
      type: 'text',
      left: 'center',
      top: 'center',
      z: -1,
      style: {
        fill: 'rgba(0,0,0,0.08)',
        text: 'AI·Deem',
        font: 'bold 100px sans-serif'
      }
    }
  ],
  series: [
    {
      name: '高度(km)与气温(°C)变化关系',
      type: 'line',
      smooth: true,
      data: [15, -50, -56.5, -46.5, -22.1, -2.5, -27.7, -55.7, -76.5]
    }
  ]
};

Current Behavior
When the mouse passes the watermark, the tooltip isn't displayed.
Expected Behavior
Tooltip should be displayed when the mouse passes over the watermark.
Environment
- OS:macOS Monterey
- Browser:Chrome
-<EMAIL_ADDRESS>
Any additional comments?
No response

就是这两个位置： 一个显示tooltip ，一个位置不显示

Duplicate with #10967

😋🍑
On Sun, May 8, 2022, 8:16 PM echarts-bot[bot] @.***>
wrote:

Closed #16987 https://github.com/apache/echarts/issues/16987.
—
Reply to this email directly, view it on GitHub
https://github.com/apache/echarts/issues/16987#event-6569554130, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AQXZROJ3KMNLWMOBFEAZCYDVJBYQTANCNFSM5VHJ6T3Q
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Faqs update

Implemented FAQ Management: Developed a route for adding FAQs to the database.

Fetching FAQs from Database: Created an API endpoint to retrieve FAQs from the database.

Integration into Dashboard: Enhanced the user interface by integrating the FAQ section into the dashboard.

you can add your faqs data through the above add route.

Good work.

Thankyou


Added Tetrel Security to the list of approved Security Review Providers

After a unanimous vote by the TAC Tetrel Security was approved to be a Security Review Provider.

Approved...merged...


WS dropping connection after a certain amount of time

Hello,
I registred a websocket connection through node red to the WS API.
Unfortunately i realized that after a certain amount of time without a message the connection drops. I couldn‘t figure out if it comes from the WS or NodeRed.
So do you know if a handshake or a keepalive is necessary after an amount of time?
regards

Hello @Stefacir
seems similar to my issue

Hello @Stefacir
seems similar to my issue

Hello @hansfriedrich
Thanks for the hint. It may be the same problem.
I have as well approximately the same rssi.
I will as well check the logs if there is a crash from time to time but as far as i can see in a quick overwiev they seem stable.
So i assume it drops connection due to another reason.
Will come back when i have more infos.

actutally it's not a crash - it's the lost wifi-connection which also tears down the ws-connection. I "solved" it with my plugin by pinging every hour and reconnecting in case of error.

We have now the version 5.1.17 ready. In this version the handling of many parallel connections is improved. This could eventually solve the issue. To force the update, you have to contact me on customercare Center  @woodworm.

actutally it's not a crash - it's the lost wifi-connection which also tears down the ws-connection. I "solved" it with my plugin by pinging every hour and reconnecting in case of error.

You are right - sorry!
Figured out that the last „reboot“ was a AT-Timeout.
Maybe it doesn‘t help that my HA instance is calling evry minute the REST API for the status of the loads…
As i‘m using nodered i need to adjust the plugin to reconnect as your plugin does
@woodworm will contact you for the software, thanks.

You are right - sorry! Figured out that the last „reboot“ was a AT-Timeout. Maybe it doesn‘t help that my HA instance is calling evry minute the REST API for the status of the loads…
when you follow the issue, you see I also thought it's crashing. Thanks @woodworm to bring some light in this.


Newbie question for using Uber button with Swift

Hello.
Newbie question here.
I'm new to iOS dev. and I'm working on an app that will use Uber button.
My thought is to do the following.
There is a Club and i know the latitude and longitude of the club.
And also i know the users location.
First of all, what is the example of just opening the user's uber app and if he doesnt have it to open the Apple Store to download it? I dont want to "Login" within my app etc. Just to open your app with the user's Location and the Club's Location.
Secondly, what is callback://your_callback_uri ??? Where am i suppose to find it? My app doesn't use any website. I just got the bundle identifier. Any help of clearing this up? Because i've downloaded your example with swift but in info.plist file you have not entered any data.
Thanks a lot for your time!

Hi @kwstasna, you can use the Ride Request Button with the Deeplink behaviour to accomplish this.
let button = RideRequestButton()
let pickupLocation = // Your user's location
let dropoffLocation = // Club's location
let rideParams = RideParametersBuilder().setPickupLocation(pickupLocation).setDropoffLocation(dropoffLocation).build()
button.rideParameters = rideParams
button.requestBehavior = DeeplinkRequestingBehavior()

Check out the documents to see how to add uber as a URL scheme, and for examples of this.
For your second question, you have to populate the callback URI in the Info.plist with that registered to your client ID on the Uber Developers dashboard. This can be a custom URL scheme you may have for your app, for example: sampleApp://callback. If you're not doing SSO, you don't need to worry about implementing anything for this, just as long as the URL in your Info.plist matches that registered for your client ID.

@faarwa Thanks a lot for your info. Meanwhile I managed to check out the example app and figured out about Deep Linking. Everything works good.  :dancer:


error: no matching function for call to ‘libmolgrid::CallbackIndexTyper::CallbackIndexTyper   AND   error: no matching function for call to ‘libmolgrid::CallbackVectorTyper::CallbackVectorTyper

Issue summary
/gnina/build/libmolgrid-prefix/src/libmolgrid-build/python/bindings.cpp:207:60: error: no matching function for call to ‘libmolgrid::CallbackIndexTyper::CallbackIndexTyper(PythonCallbackIndexTyper::PythonCallbackIndexTyper(boost::python::api::object, unsigned int, boost::python::list)::<lambda(OpenBabel::OBAtom*)>, unsigned int&, std::vector<std::__cxx11::basic_string >)’
207 |     }, ntypes, list_to_vecstd::string(names)), callback(c) {
/gnina/build/libmolgrid-prefix/src/libmolgrid-build/python/bindings.cpp:240:64: error: no matching function for call to ‘libmolgrid::CallbackVectorTyper::CallbackVectorTyper(PythonCallbackVectorTyper::PythonCallbackVectorTyper(boost::python::api::object, unsigned int, boost::python::list)::<lambda(OpenBabel::OBAtom*, std::vector&)>, unsigned int&, std::vector<std::__cxx11::basic_string >)’
240 |           ntypes, list_to_vecstd::string(lnames)), callback(c) {
Steps to reproduce
The error occurs during installation. After executing the "make" command.
Your system configuration
Operating system: Ubuntu 22
Compiler: g++ 11.4
CUDA version (if applicable): 12.2
CUDNN version (if applicable):  nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Thu_Nov_18_09:45:30_PST_2021
Cuda compilation tools, release 11.5, V11.5.119
Build cuda_11.5.r11.5/compiler.30672275_0
Python version: 3.10.12

There's no issue building gnina in a clean Ubuntu 22.04 docker container:
https://github.com/gnina/gnina/blob/master/docker/ubuntu-22.04/Dockerfile
My guess is you have multiple versions of OpenBabel installed and the libraries being linked don't match the header files included during compilation.

Understood, thank you!


added event page link

#170
Proposed Changes
Adde link to the event page
Types of changes made

[x] Fixed Bug
[x] Added new Features
[x] Edited Documentations
[ ] Enhanced the working of code
[ ] Additional Changes
Mention any Additional Change here

Additional Info
Provide additional information(if any) you want to convey.
Viability of Code
Describe the tests that you ran to verify the changes made. Mention the tests for easy reproducibility.

Test 1
Test 2

Mention(if any) specific Test Configurations used:

Filmware version:
Hardware:
Toolchain:
SDK:

Screenshots or GIFs (if any)
Attach screenshots of the changes made for easy reference.

Original
Updated

Attach_Original_Screenshot
Attach_Updated_Screenshot

Checklist:

[ ] My code follows the Mentioned Guidelines for the project
[x] I have self-reviewed the changes made
[ ] I have made the changes easy to understand by adding comments
[ ] My changes does not generate new warnings/errors
[ ] I have attached relevant screenshots to display the changes made
[ ] I have made the required changes to the documentations

@kumarmanish03 please update navbar links to the event page in project.html and team.html also.

@tejma17 Done


Update images to reflect latest release of the ELK stack, version 7.8.0

Problem description
Per project owner's request, opening this issue to have images updated to the latest release of the ELK stack, 7.8.0.
Extra information
https://hub.docker.com/_/elasticsearch?tab=tags
https://hub.docker.com/_/kibana?tab=tags
https://hub.docker.com/_/logstash?tab=tags

@blorincz1 good idea. I'll bump the version and verify that all our tests are still passing. Have you tried on your side already?

I haven't had a chance to yet, sorry.

@blorincz1 7.8.0 is now the default version in this repo. Happy to hear about any feedback.


Fix absolute pin bug

Some moves are not allowed (but they should be) due current absolute pin algorithm.

Finished.


chore: rename vector to array

Pull Request Test Coverage Report for Build 1920
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 88.637%

Totals

Change from base Build 1919:
0.0%

Covered Lines:
3128

Relevant Lines:
3529

💛  - Coveralls

Pull Request Test Coverage Report for Build 1921
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 88.637%

Totals

Change from base Build 1919:
0.0%

Covered Lines:
3128

Relevant Lines:
3529

💛  - Coveralls


ec2.RouteTable throws "instance_id" deprecated warning when not specified

What happened?
Running the code below, throws this warning:
warning: instance_id is deprecated: Use network_interface_id instead
However no instance_id is passed as an input.
It seems like some default value is being set in the API and thus triggering the warning about the deprecated instance_id property.
import pulumi
from pulumi_aws import ec2
name = "mydeployment"
vpc_name = name+'-vpc'
vpc = ec2.Vpc(vpc_name,
    cidr_block='<IP_ADDRESS>/16',
    instance_tenancy='default',
    enable_dns_hostnames=True,
    enable_dns_support=True,
    tags={
        'Name': vpc_name
    })

igw_name = name+'-igw'
igw = ec2.InternetGateway(igw_name,
    vpc_id=vpc.id,
    tags={
        'Name': igw_name
    })

rt_name = name+'-rt'
route_table = ec2.RouteTable(rt_name,
    vpc_id=vpc.id,
    routes=[ec2.RouteTableRouteArgs(
        cidr_block='<IP_ADDRESS>/0',
        gateway_id=igw.id,
    )],
    tags={
        'Name': rt_name
    })

Expected Behavior
No warning should be given.
Steps to reproduce

pulumi new aws-python
Copy the code given above into the __main__.py
Run pulumi preview or pulumi up
See warning about instance_id even though no instance_id is specified.

Output of pulumi about
CLI
Version      3.74.0
Go Version   go1.20.5
Go Compiler  gc
Plugins
NAME    VERSION
aws     5.42.0
python  unknown
Host
OS       darwin
Version  13.4.1
Arch     x86_64
Found no resources associated with dev
Found no pending operations associated with dev
Backend
Name           pulumi.com
Dependencies:
NAME        VERSION
pip         23.1.2
pulumi-aws  5.42.0
setuptools  68.0.0
wheel       0.40.0
Additional context
No response
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Note, this issue does not appear to exist with the typescript version of the provider.

Thanks for reporting this, @MitchellGerdisch. It seems that the deprecation is due to an upstream change that was released in the new major version. Therefore, the upcoming release of pulumi-aws 6.0 should remove this warning.


Where's the documentMiddleware functionality?

According to graphql-middleware's README there should be a documentMiddleware option in GraphQLServer, but there isn't, and the aforementioned functionality to add document-level middleware has been removed from the graphql-middleware package, under the justification that it would be moved to graphql-yoga
What happened, @maticzav?

Hey @arianon, documentMiddleware is not yet available in Yoga. We've decided to remove documentMiddleware functionality from graphql-middleware because it didn't allow us to control query execution itself, but rather only as an insufficient workaround. We'll be implementing it in Yoga in the following weeks, so stay put! 🙂

link : https://github.com/prismagraphql/graphql-middleware/issues/10

@maticzav ping


Doesn't trigger on Opera when installed through compatibility layer - possible fixes?

I have recently switched to Opera after being faithful to Chrome ever since first release, and only thing I truly miss on Opera, is this extension. Opera outperformed Chrome in everything, at least in my case.
There is Chrome extensions compatibility layer add-on for Opera, which allow installation of Chrome extensions on Opera, as name suggests. However although JSON Viewer installs just fine on Opera, and options page works perfectly, it doesn't trigger on JSON pages.
Please note that this is only a question, not request, I don't demand you guys to import it to Opera. You've done fantastic work already.

Nice, I can take a look at opera's extension API. If it's similar we can make it work.

I would like to help, but I'm back-end developer and front-end is not strong side of mine, especially not the extensions design.
I will look and see if I can do anything, though.

UPDATE: I just noticed that suddenly, it works. I'm not sure if it's an update on your side, or maybe compatibility layer plug-in update, but it works wonderfully, all of sudden.

🎉


not able to install Reliquary of Myth - Artifact Overhaul

file hash check fails everytime it checks the hash for Reliquary of Myth

try again

iv tried about 12 times since last night. nd same error.

yeah I just did something, so try again

still an error, nd i noticed when it brings me to the page to download it doesn't highlight the download for that mod, which i though was odd.

looks like nexus is having issues with those files at the moment you'll have to wait

alright, at first i was thinking cuz it was v3.9.1


fix worker metrics

Proposed changes
plus.worker.conn.idle, plus.worker.conn.active and plus.worker.http.request.current are avgs but were being treated like sums when converting to simpleMetrics  in nginx_plus.go
Removed calculation of stats - prevStats from conn.idle, conn.active and http.request.current
Added note about Agent showing up as a connection in plus.worker.conn.idle or plus.worker.conn.active
Checklist
Before creating a PR, run through this checklist and mark each as complete.

[ ] I have read the CONTRIBUTING document
[ ] I have run make install-tools and have attached any dependency changes to this pull request
[ ] If applicable, I have added tests that prove my fix is effective or that my feature works
[ ] If applicable, I have checked that any relevant tests pass after adding my changes
[ ] If applicable, I have updated any relevant documentation (README.md)
[ ] If applicable, I have tested my cross-platform changes on Ubuntu 22, Redhat 8, SUSE 15 and FreeBSD 13

Codecov Report
All modified lines are covered by tests :white_check_mark:

Comparison is base (b3699dc) 66.26% compared to head (13deb7f) 66.23%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #499      +/-   ##
==========================================
- Coverage   66.26%   66.23%   -0.03%
==========================================
  Files         118      118
  Lines       13457    13454       -3
==========================================
- Hits         8917     8911       -6
- Misses       3945     3948       +3
  Partials      595      595

Files
Coverage Δ

...nx/agent/v2/src/core/metrics/sources/nginx_plus.go
70.46% <ø> (-0.12%)
:arrow_down:

... and 1 file with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Specialize Enumerable#max and Enumerable#min for Range #4560

This patch prevents a hang for pathalogical (large) Ranges when
computing max and min.
Range inherits its implementation of max and min from Enumerable.
Enumerable implements max and min by calling each. For Range objects,
this is unnecessary since we know the max and the min by the end and
begin attributes.
It is also very slow. This code hangs unnecessarily:
(0..2**32).max
# ... hang
(0..2**32).min
# ... hang

This patch overrides max and min after including enumerable to yield
based on the begin and end methods.
Upstream PR is mruby/mruby#4560.

Added some fixes to skip some known bad specs:

Thread and Mutex block forever because they are single threaded.
Module's access modifier story is sad which means we cannot load the fixtures.

Ruby spec now can run to completion for core!
$ RUST_BACKTRACE=1 cargo run --bin spec-runner ./**/*.rb
...
Passed 5412, skipped 998, not implemented 201, failed 8629 specs.

Filed upstream issue for Float#round spec slowness
https://github.com/mruby/mruby/issues/4566


Add morphToMany to reorderTable method

As PHPStan says, I don't think this is correct? MorphToMany extends BelongsToMany, so the check is obsolete?
Please give a clearer indication as to what this does and we can reopen.


Inventor EVA ION PRO WI-FI Dehumidifier Not Recognised

This form is for reporting bugs.  If you have encountered a bug, you should
generally have some log messages or device diagnostics to show something is
going wrong.  If your problem is more of a question or a request for help,
then Discussions is
probably a more suitable venue.
Describe the bug
Inventor EVA ION PRO WI-FI Dehumidifier Not Recognised despite device being supported.
Device is identified as feit_dimmer
*To Reproduce
Device never gets detected correctly.
Expected behavior
Should be idenfied as Inventor EVA ION PRO WI-FI Dehumidifier
Additional context
Add any other context about the problem here.
If the bug involves a device, then please include device diagnostics from
Settings / Devices & Services / Tuya Local (your device) / "1 device"
Please check if there are messages from Tuya Local in the Home
Device matches feit_dimmer with quality of 30%. DPS: {"updated_at":<PHONE_NUMBER>.774442, "1": true, "2": 65, "4": "low", "5": "manual", "6": 59, "7": 18, "10": false, "19": 0, "101": false, "103": false}
If applicable, add screenshots to help explain your problem.

Redownloaded the latest release. Still being detected as a feit_dimmer.
Device matches feit_dimmer with quality of 30%. DPS: {"updated_at":<PHONE_NUMBER>.1895847, "1": true, "2": 45, "4": "high", "5": "manual", "6": 64, "7": 17, "10": true, "19": 4, "101": true, "103": false}
Happy to provide more diagnostics if needed.

The fix for this is not released

Ok. Sorry didn't understand the release / testing process.
Replaced the yaml. file with the new one from the repo, and bingo works as expected.
Many Thanks.