Error 500 for parallel requests via traefik.

report a bug
What did you do?
We did parallel requests against a service in our swarm - with a c# application and parallel foreach - when we set the parallelism to 3 we encounter several error 500. The same script works sending the request to the service directly - via exposed port on the servers it runs on.
The URL we request is a download URL for files that are in average 2 MB big.
The service itself does not answer with an error 500 but with the file contend and the status code 200.
What did you expect to see?
The file content.
What did you see instead?
Error 500 - Internal Server Error
What version of Traefik are you using?

I already "played" with some values like the timeouts. It did not change the behaviour.
defaultEntryPoints = ["http","https"]
checkNewVersion = false
ProvidersThrottleDuration = 5
MaxIdleConnsPerHost = 400
RootCAs = [ "/usr/local/share/ca-certificates/*[munched]*.crt" ]

[traefikLog]
  filePath = "/dev/stdout"
  format   = "json"

[accessLog]
  filePath = "/dev/stdout"
  format = "json"

[entryPoints]
  [entryPoints.http]
  address = ":80"
    [entryPoints.http.redirect]
      entryPoint = "https"
  [entryPoints.https]
  address = ":443"
    [entryPoints.https.tls]
      [[entryPoints.https.tls.certificates]]
      CertFile = "/etc/ssl/*[munched]*.crt"
      KeyFile = "/etc/ssl/*[munched]*.key"

[docker]
endpoint = "unix:///var/run/docker.sock"
swarmmode = true
domain = "*[munched]*"
watch = true

[web]
address = ":8080"

[lifeCycle]
requestAcceptGraceTimeout = "60s"
graceTimeOut = "720s"

[respondingTimeouts]
readTimeout = "60s"
writeTimeout = "60s"
idleTimeout = "720s"

[forwardingTimeouts]
dialTimeout = "360s"

Our Docker swarm has 15 nodes with 3 of them are manager nodes.
Stack-File:
version: '3'
services:
  traefik:
    image: *[munched]*
    command: --configfile=/etc/traefik/traefik.toml
    networks:
     - traefik
    ports:
      - 80:80
      - 443:443
    volumes:
     - /var/run/docker.sock:/var/run/docker.sock
    deploy:
      mode: global
      update_config:
        parallelism: 1
        delay: 5s
      labels:
       - traefik.port=8080
       - traefik.docker.network=atam_ata-management
      placement:
        constraints:
         - node.role == manager
networks:
  default:
  traefik:
    external:
      name: atam_ata-management

Stack of the Service:
version: '3'
services:
  *[munched]*:
    image: *[munched]*
    networks:
     traefik:
     default:
       aliases:
        - *[munched]*
    deploy:
      labels:
        traefik.port: 8080
        traefik.backend.maxconn.amount: 200
        traefik.backend.maxconn.extractorfunc: client.ip
        traefik.docker.network: atam_ata-management
        traefik.backend.loadbalancer.swarm: "true"
        traefik.frontend.passHostHeader: "true"
      mode: replicated
      replicas: 12
      placement:
        constraints:
         - node.labels.fileserver == true
         - node.labels.os == linux
    volumes:
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
     - *[munched]*
networks:
  default:
  traefik:
    external:
      name: atam_ata-management

Docker inspect of the traefik overlay network:
[
    {
        "Name": "atam_ata-management",
        "Id": "60s7dkowl737sby957jlb1w44",
        "Created": "2018-03-16T17:40:53.928194481+01:00",
        "Scope": "swarm",
        "Driver": "overlay",
        "EnableIPv6": false,
        "IPAM": {
            "Driver": "default",
            "Options": null,
            "Config": [
                {
                    "Subnet": "<IP_ADDRESS>/24",
                    "Gateway": "<IP_ADDRESS>"
                }
            ]
        },
        "Internal": false,
        "Attachable": true,
        "Ingress": false,
        "ConfigFrom": {
            "Network": ""
        },
        "ConfigOnly": false,
        "Containers": {
            "82be609085dd3149b3b7a3831200444c55333d565d0a8cb9988b05c1b0befbd5": {
                "Name": "atam_traefik.mzjsw8wtkb0clj3txi2b0q1dw.q0n1e7zqoe3u4md4djy8x9bpy",
                "EndpointID": "198f6f2207a7d31f5ec268816a83c44df4e234e2d44eb6b449f1fec59f076ceb",
                "MacAddress": "02:42:0a:00:00:ed",
                "IPv4Address": "<IP_ADDRESS>/24",
                "IPv6Address": ""
            },
            "b1b46b795431df88d4bca805613d666bd68ee3da709a797e5e809bdc5f108ace": {
                "Name": "swarm_weave.mzjsw8wtkb0clj3txi2b0q1dw.iotwqg1jngysxz5u02ieny8am",
                "EndpointID": "a9c624767ea366d8794f569fbf8cb41743ee583c06fa42ddf8fee5deaa7c2b6b",
                "MacAddress": "02:42:0a:00:00:29",
                "IPv4Address": "<IP_ADDRESS>/24",
                "IPv6Address": ""
            },
            "fbfc766913a94078bdd3562a6268ff3ccef94798260f9e673aaeeedb8004f1d0": {
                "Name": "swarm_portainer.1.oeijbavgsrujkq8uuw2bkb7wy",
                "EndpointID": "c88c13eff2aa43a93b3789c06ea8e8009d2ff7b227e814b46304863a069a49a0",
                "MacAddress": "02:42:0a:00:00:32",
                "IPv4Address": "<IP_ADDRESS>/24",
                "IPv6Address": ""
            }
        },
        "Options": {
            "com.docker.network.driver.overlay.vxlanid_list": "4097"
        },
        "Labels": {},
        "Peers": [
            {
                "Name": "e015486d9ae5",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "8093bbbb968a",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "ff1d19a9f660",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "48206a080716",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "de463f919f9b",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "4c4a8e644aa5",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "1c3336e193cf",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "bcff64b059df",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "b11eb0d288b9",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "91d9aabbff9e",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "2bd47092ad8e",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "1d204c14ce4b",
                "IP": "<IP_ADDRESS>"
            },
            {
                "Name": "799d3a87e548",
                "IP": "<IP_ADDRESS>"
            }
        ]
    }
]

If applicable, please paste the log output in debug mode (--debug switch)
{"BackendAddr":"<IP_ADDRESS>:8080","BackendName":"*[munched]*","BackendURL":{"Scheme":"http","Opaque":"","User":null,"Host":"<IP_ADDRESS>:8080","Path":"","RawPath":"","ForceQuery":false,"RawQuery":"","Fragment":""},"ClientAddr":"<IP_ADDRESS>:58811","ClientHost":"<IP_ADDRESS>","ClientPort":"58811","ClientUsername":"-","DownstreamContentSize":21,"DownstreamStatus":500,"DownstreamStatusLine":"500 Internal Server Error","traefikDuration":65840578,"FrontendName":"*[munched]*","OriginContentSize":21,"OriginDuration":65512033,"OriginStatus":500,"OriginStatusLine":"500 Internal Server Error","Overhead":328545,"RequestAddr":"*[munched]*","RequestContentSize":0,"RequestCount":351,"RequestHost":"*[munched]*","RequestLine":"GET *[munched]* HTTP/1.1","RequestMethod":"GET","RequestPath":"/d/472CEA45EE404E22191E52FC6A620D62C06572BCB2B8B0DDEF0517EE5A87E426","RequestPort":"-","RequestProtocol":"HTTP/1.1","RetryAttempts":0,"StartLocal":"2018-03-20T10:01:29.980041729Z","StartUTC":"2018-03-20T10:01:29.980041729Z","traefiklog":"info","msg":"","time":"2018-03-20T10:01:30Z"}

{"Request":"{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"\",\"Opaque\":\"\",\"User\":null,\"Host\":\"\",\"Path\":\"/d/472CEA45EE404E22191E52FC6A620D62C06572BCB2B8B0DDEF0517EE5A87E426\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\"},\"Proto\":\"HTTP/1.1\",\"ProtoMajor\":1,\"ProtoMinor\":1,\"Header\":{},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"*[munched]*\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"<IP_ADDRESS>:58811\",\"RequestURI\":\"/d/472CEA45EE404E22191E52FC6A620D62C06572BCB2B8B0DDEF0517EE5A87E426\",\"TLS\":null}","traefiklog":"debug","msg":"vulcand/oxy/roundrobin/rr: competed ServeHttp on request","time":"2018-03-20T10:01:30Z"}

{"Request":"{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"http\",\"Opaque\":\"\",\"User\":null,\"Host\":\"<IP_ADDRESS>:8080\",\"Path\":\"\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\"},\"Proto\":\"HTTP/1.1\",\"ProtoMajor\":1,\"ProtoMinor\":1,\"Header\":{},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"*[munched]*\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"<IP_ADDRESS>:58811\",\"RequestURI\":\"/d/472CEA45EE404E22191E52FC6A620D62C06572BCB2B8B0DDEF0517EE5A87E426\",\"TLS\":null}","traefiklog":"debug","msg":"vulcand/oxy/forward/http: completed ServeHttp on request","time":"2018-03-20T10:01:30Z"}

{"Request":"{\"Method\":\"GET\",\"URL\":{\"Scheme\":\"http\",\"Opaque\":\"\",\"User\":null,\"Host\":\"<IP_ADDRESS>:8080\",\"Path\":\"\",\"RawPath\":\"\",\"ForceQuery\":false,\"RawQuery\":\"\",\"Fragment\":\"\"},\"Proto\":\"HTTP/1.1\",\"ProtoMajor\":1,\"ProtoMinor\":1,\"Header\":{},\"ContentLength\":0,\"TransferEncoding\":null,\"Host\":\"*[munched]*\",\"Form\":null,\"PostForm\":null,\"MultipartForm\":null,\"Trailer\":null,\"RemoteAddr\":\"<IP_ADDRESS>:58811\",\"RequestURI\":\"/d/472CEA45EE404E22191E52FC6A620D62C06572BCB2B8B0DDEF0517EE5A87E426\",\"TLS\":null}","traefiklog":"debug","msg":"vulcand/oxy/forward: completed ServeHttp on request","time":"2018-03-20T10:01:30Z"}

If you need more information just ask.

We also see the same problem in our environment (traefik docker image 1.5.4).
Approximately 20 out of 10.000 requests per day are affected.
The calls are randomly distributed over our different origin services (nginx, go services, java services).
It appears with different HTTP clients (e.g. Browser, iOS-App, Android-App) using HTTP/2.0 as well as HTTP/1.1.

Looks like we also experiencing the same issue.
Our setup uses Service Fabric cluster with 5 VMs.
I could consistently reproduce it with 5 parallel requests.
On server each request is handled in about 100ms and returns ~30kb of data.
We use 1.5.0, which may help you with narrowing down the cause.

I upgraded to 1.5.4, removed debug mode, set log level to errors - the problem still remain.

Hi @unglaublicherdude, thx for your interest in the  project!
I tried to reproduce, but I failed. I tried with 50 parallel request (with a go program) and I didn't see any 500 status code ( with your configuration on replica etc... and an 8MB file)
Could you provide more information about what you use to make your 5 parallel request ?

It is a Parallel.ForEach in C# using WebClient.DownloadFile for the Download.
Parallel.ForEach(hashes, new ParallelOptions { MaxDegreeOfParallelism = 5 }, hash =>
The tool behind Traefik has an endpoint like /d/{sha256}. And the 5 parallel downloads are all for different files. Maybe that is the difference between our tests? I have 5 different urls while you have requested the same url 50 times?

I tried this c# code:
using System;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using System.Net;

namespace TestNamespace
{
    class Test
    {
        static void Main() {

            String[] urls = new string[] { "file1", "file2", "file3", "file4", "file5", "file6", "file7", "file8", "file9", "file10", "file11", "file12", "file13", "file14", "file15", "file16", "file17", "file18", "file19", "file20", "file21", "file22", "file23", "file24", "file25", "file26", "file27", "file28", "file29", "file30", "file31", "file32", "file33", "file34", "file35", "file36" };

            Parallel.ForEach(urls, new ParallelOptions { MaxDegreeOfParallelism = 10 }, (url) =>
                    {
                        WebClient myWebClient = new WebClient();
                        myWebClient.DownloadFile("http://<IP_ADDRESS>/"+url,url);
                    });
        }
    }
}

I launch the stack with your configuration. I have just replace your services by a webserver that serve the file1, file2 ...
The file is still about 8MB.
Any idea to reproduce ?

I need some time till I can test on the update. At least 2 weeks. Stay tuned.

i have 500 too.
About 1/1000 of the request will be 500.

I have tested this issue with the version 1.6.2 of traefik. It seems to be gone for us now.

Hi! I'm Træfiker :robot: the bot in charge of tidying up the issues.
Thanks again for your interest in Træfik!
I'm glad to close the issue because I think that the question has been answered (Yes, I'm quite an advanced AI :smile:)
Join our Slack workspace for more community #support.


Fixes #472. Create directory only after downloading the archive

@ankan17 Thanks a lot for working on this! Looks like this is failing due to the github api limit on unauthenticated requests. Could you move the branch from your repo so that we can test without this limit? Thanks!

Moving the base branch of the PR from forked repo to master repo


Website crawl issues with status code 406

Describe the bug
We can't able to audit website using SEMRush tool in order to do that we need to whitelist below mentioned IPs.
Domain: www.reverieinc.com
Logs and dumps
User-agent: Mozilla/5.0 (compatible; SemrushBot-SA/0.97; +http://www.semrush.com/bot.html)
IP addresses: <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>

Hi @reverieinc123,
The ModSecurity is just the engine. The inspections are held by the rules that you have loaded. What you have loaded is a custom rule or some public rule set?

Actually we have used SEMRush tool to audit our website www.reverieinc.com but its shows an error called blocking SEMRush bot crawler. We have contacted the SEMRush team as they mentioned The software can block our bots from crawling a website & thus prevent users from fully benefitting from our platform's functionality.
You may contact Mod Security in order to whitelist our bot.
I would like to understand why its happening

@reverieinc123,
ModSecurity process a ruleset against a request in order to asses if a request looks like something malicious or not.  The one who classify a request as malicious is the ruleset. Somewhere in your ModSecurity configuration file you have a rule that is blocking the requests from this crowler.
Usually, when such thing happens it is the case to put the bot in some sort of allow list. Impossible to tell what to do without have the details on your ruleset. Can you provide the error message? The information on the rule set?

Dear Team,
FYI, attached log report.
Regards,
Sudhakar
On Fri, Dec 11, 2020 at 10:42 PM Felipe Zimmerle<EMAIL_ADDRESS>wrote:

@reverieinc123 https://github.com/reverieinc123,
ModSecurity process a ruleset against a request in order to asses if a
request looks like something malicious or not. The one who classify a
request as malicious is the ruleset. Somewhere in your ModSecurity
configuration file you have a rule that is blocking the requests from this
crowler.
Usually, when such thing happens it is the case to put the bot in some
sort of allow list. Impossible to tell what to do without have the details
on your ruleset. Can you provide the error message? The information on the
rule set?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/SpiderLabs/ModSecurity/issues/2475#issuecomment-743316991,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASCJ2THP4JGTZAIHW5GBWTTSUJHILANCNFSM4UVHOFFA
.

--
The information contained in this e-mail message and/or attachments are
confidential or privileged information of Reverie Language Technologies
Pvt. Ltd. Unauthorized dissemination, use, review, distribution, printing
or copying of the information contained in this e-mail message and/or
attachments to it are strictly prohibited. If you have received this
communication in error, please notify us by reply e-mail or telephone and
immediately and permanently delete the message and any attachments.
IP addresses of Semrush Bot ( Site Audit ): <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>
REQUEST:
curl -i -sS -L --proto-redir -all,http,https --max-time 5 -A 'Mozilla/5.0 (compatible; SemrushBot-SA/0.97; +http://www.semrush.com/bot.html)' http://reverieinc.com/
RESPONSE:
HTTP/1.1 406 Not Acceptable
Date: Fri, 11 Dec 2020 05:57:58 GMT
Server: Apache
Content-Length: 226
Content-Type: text/html; charset=iso-8859-1
Not Acceptable!Not Acceptable!An appropriate representation of the requested resource could not be found on this server. This error was generated by Mod_Security.

@reverieinc123 ping.

Hi Team,
Could you please help me with this issue?
When we run Site Audit on SEMRush tools this is what I'm facing.
For the same thing, i have downloaded the log and attached the same please
take a look.
[image: image.png]
Regards,
Sudhakar
On Wed, Dec 16, 2020 at 6:52 PM Felipe Zimmerle<EMAIL_ADDRESS>wrote:

@reverieinc123 https://github.com/reverieinc123 ping.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/SpiderLabs/ModSecurity/issues/2475#issuecomment-746278486,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASCJ2THOVTWGAADUVRPTLDTSVCYBRANCNFSM4UVHOFFA
.

--
The information contained in this e-mail message and/or attachments are
confidential or privileged information of Reverie Language Technologies
Pvt. Ltd. Unauthorized dissemination, use, review, distribution, printing
or copying of the information contained in this e-mail message and/or
attachments to it are strictly prohibited. If you have received this
communication in error, please notify us by reply e-mail or telephone and
immediately and permanently delete the message and any attachments.
IP addresses of Semrush Bot ( Site Audit ): <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>
REQUEST:
curl -i -sS -L --proto-redir -all,http,https --max-time 5 -A 'Mozilla/5.0 (compatible; SemrushBot-SA/0.97; +http://www.semrush.com/bot.html)' http://reverieinc.com/
RESPONSE:
HTTP/1.1 406 Not Acceptable
Date: Wed, 16 Dec 2020 13:31:34 GMT
Server: Apache
Content-Length: 226
Content-Type: text/html; charset=iso-8859-1
Not Acceptable!Not Acceptable!An appropriate representation of the requested resource could not be found on this server. This error was generated by Mod_Security.

@reverieinc123 I am afraid you have to go over the GitHub website and paste your log

IP addresses of Semrush Bot ( Site Audit ): <IP_ADDRESS>, <IP_ADDRESS>, <IP_ADDRESS>
REQUEST:
curl -i -sS -L --proto-redir -all,http,https --max-time 5 -A 'Mozilla/5.0 (compatible; SemrushBot-SA/0.97; +http://www.semrush.com/bot.html)' http://reverieinc.com/
RESPONSE:
HTTP/1.1 406 Not Acceptable
Date: Wed, 16 Dec 2020 13:31:34 GMT
Server: Apache
Content-Length: 226
Content-Type: text/html; charset=iso-8859-1
Not Acceptable!Not Acceptable!An appropriate representation of the requested resource could not be found on this server. This error was generated by Mod_Security.

Posted in the website please take a look.
Regards,
Sudhakar
On Wed, Dec 16, 2020 at 7:17 PM Felipe Zimmerle<EMAIL_ADDRESS>wrote:

@reverieinc123 https://github.com/reverieinc123 I am afraid you have to
go over the GitHub website and paste your log
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/SpiderLabs/ModSecurity/issues/2475#issuecomment-746309665,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ASCJ2TGAEBO3YK3ND6KHJK3SVC3AVANCNFSM4UVHOFFA
.

--
The information contained in this e-mail message and/or attachments are
confidential or privileged information of Reverie Language Technologies
Pvt. Ltd. Unauthorized dissemination, use, review, distribution, printing
or copying of the information contained in this e-mail message and/or
attachments to it are strictly prohibited. If you have received this
communication in error, please notify us by reply e-mail or telephone and
immediately and permanently delete the message and any attachments.

@reverieinc123  The error log is something that you can grab from your webserver log. In the logs we will have information on why such request got blocked. For instance: the rule ID and rule message.
You may want to look at your webserver  errorlog. There, you will find the logs and the rule that actually caused this request to be blocked.

I am assuming that the user have sorted out the issue.

I am assuming that the user have sorted out the issue.


Hover and click not working properly

Hi all,
first of all, I love this plugin, since it does exactly what I was looking for!
I closely followed the tutorial in this video: Custom Shaped Button UE5
Unfortunately, my button does not work as expected. When hovering nothing happens (even though the button should turn red) and only when I hold down the left mouse button and hover the actual hovering state is achieved. Consequently, this leads to not being able to trigger something upon a click event...
My Image has been set to UI, NoMipMaps and VectorDisplacementmap just as shown in the tutorial.
Do you have any idea on how to resolve this issue?

Hello, thank you for raising the issue!
In the video, we download the Sample Project first and then extract the plugin itself into our own project. Instead, could you please launch downloaded project first and see if it works well for you?
If it does, please compare the differences in how the buttons are set up.
It is my project I prepared so developers can see how I use it.

Hi,
thanks for your quick response. I had a look at your project already and tried to set my custom shaped button up the same way. Unfortunately it did not work out. Right now, on the first click hovering is activated and the second click will actually click the custom shaped button...
I think it could be related to Game and UI mode, however I am a total newbie to UE5 - so it is more of a wild guess...

@LordHeImchen, you are right, your issue definitely sounds as something related to controller modes and widget focusing.

How Unreal Engine's rectangular buttons work for you, do you experience any issues with them?
Could you please send my sample project with your changes? So I will take a look at your setup.

This doesnt work for me, it just flash on and off when i mouse hover

@JanSeliv since I couldn't figure out what went wrong I decided to restart from a blanc project. Again, I followed the instructions of the tutorial and everything worked fine. Also, after your question regarding usual buttons, I figured that suddenly these were not behaving correctly as well.
I think this one is on me, not on your plugin :)
However, many thanks for your quick replies!


workspace/tests and document/tests are not included in list of capabilities returned at initialization

SourceKit-LSP should report whether it supports test discovery.

Tracked in Apple’s issue tracker as rdar://123771703

@adam-fowler FYI I’m also renaming document/tests to textDocument/tests in https://github.com/apple/sourcekit-lsp/pull/1112. Realized that we weren’t consistent with other LSP requests here.

Cool. I've found I only needed the workspace request. It gets run after every build. Between builds I use the document symbols request to apply edits.


Fix misspelling of "likelihood"

This PR adds the missing fixes to #104984.

Reverted the changes in timerService.


Add Heroku generated app.json

)

9

Not totally sure what to do with this?  What's the purpose?

@ibuildthecloud there's no purpose i guess. Look at the commits.
It seems, he did some mistakes. I would recommend to close this.

@nick-grey If you feel this should be re-opened, let me know.


x/sys/unix: broken for freebsd/{arm,386}

Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version)?
go version go1.8.3 linux/amd64
What operating system and processor architecture are you using (go env)?
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/ncw/go"
GORACE=""
GOROOT="/opt/go/go1.8"
GOTOOLDIR="/opt/go/go1.8/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build712833005=/tmp/go-build -gno-record-gcc-switches"
CXX="g++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"

What did you do?
cd ${GOPATH}/src/golang.org/x/sys
GOOS=freebsd GOARCH=386 go install ./...

What did you expect to see?
No error
What did you see instead?
# golang.org/x/sys/unix
unix/cap_freebsd.go:18: undefined: CAP_RIGHTS_VERSION_00
unix/cap_freebsd.go:19: undefined: CAP_RIGHTS_VERSION_00
unix/cap_freebsd.go:19: const initializer CAP_RIGHTS_VERSION_00 + 2 is not a constant
unix/cap_freebsd.go:46: undefined: CapRights
unix/cap_freebsd.go:50: undefined: CapRights
unix/cap_freebsd.go:55: undefined: CapRights
unix/cap_freebsd.go:90: undefined: CapRights
unix/cap_freebsd.go:125: undefined: CapRights
unix/cap_freebsd.go:164: undefined: CapRights
unix/cap_freebsd.go:179: undefined: CapRights
unix/cap_freebsd.go:179: too many errors

I bisected the problem to this commit
https://github.com/golang/sys/commit/7a4fde3fda8ef580a89dbae8138c26041be14299
@benlaurie committed with @ianlancetaylor
According to https://go-review.googlesource.com/c/47290/ the trybots ran OK so I'm a bit puzzled about this.

the trybots ran OK so I'm a bit puzzled about this.

Breaks compilation of any go package on FBSD i386 too.

the trybots ran OK so I'm a bit puzzled about this.

I filed #21163

According to https://go-review.googlesource.com/c/47290/ the trybots ran OK so I'm a bit puzzled about this.

AFAIK we don't have a freebsd/386 trybot.

Hello. May I claim this issue?

@slon, yes, you could've sent a change (no need to ask), but the fix was simple enough that I just sent it.

I'm getting this error too @ncw, how did you solve it?

@hacdias just update - it should be fixed now. It is for me any way.

I'm getting this error on Travis though with Go 1.8.3. I'll try to figure out why.

What version of FreeBSD are those with problems running?

In my case it's cross compiling on Ubuntu Trusty on Travis CI.

I guess whatever you're using for cross-compiling is not up-to-date...

I'll check that out, thanks @benlaurie

@hacdias You need to update golang.org/x/sys so go get -u golang.org/x/sys

The build is still broken on freebsd/arm.
export GOOS=freebsd
export GOARCH=arm

go build
# golang.org/x/sys/unix
./cap_freebsd.go:18:23: undefined: CAP_RIGHTS_VERSION_00
./cap_freebsd.go:19:2: const initializer CAP_RIGHTS_VERSION_00 + 2 is not a constant
./cap_freebsd.go:19:23: undefined: CAP_RIGHTS_VERSION_00
./cap_freebsd.go:46:21: undefined: CapRights
./cap_freebsd.go:50:24: undefined: CapRights
./cap_freebsd.go:55:27: undefined: CapRights
./cap_freebsd.go:90:29: undefined: CapRights
./cap_freebsd.go:125:29: undefined: CapRights
./cap_freebsd.go:164:39: undefined: CapRights
./cap_freebsd.go:179:41: undefined: CapRights
./cap_freebsd.go:179:41: too many errors

go test -c
# golang.org/x/sys/unix
./cap_freebsd.go:18:23: undefined: CAP_RIGHTS_VERSION_00
./cap_freebsd.go:19:2: const initializer CAP_RIGHTS_VERSION_00 + 2 is not a constant
./cap_freebsd.go:19:23: undefined: CAP_RIGHTS_VERSION_00
./cap_freebsd.go:46:21: undefined: CapRights
./cap_freebsd.go:50:24: undefined: CapRights
./cap_freebsd.go:55:27: undefined: CapRights
./cap_freebsd.go:90:29: undefined: CapRights
./cap_freebsd.go:125:29: undefined: CapRights
./cap_freebsd.go:164:39: undefined: CapRights
./cap_freebsd.go:179:41: undefined: CapRights
./cap_freebsd.go:179:41: too many errors

Yeah, I get the exact same error on Travis, which always downloads the latest commit of each dependency through go get.

It's also broken on openbsd/arm6:
GOOS=openbsd GOARCH=arm GOARM=6 go build -ldflags='-s -w -X main.version=1.0.4 -X main.commit=1dcb5944c3de638dfa22f8c19728820f33118496 -X main.date=2017-07-31T09:47:18Z' -o dist/openbsd-arm-filemanager/filemanager cmd/filemanager/main.go

travis@d282747cb28c:~/gopath/src/github.com/hacdias/filemanager$ GOOS=openbsd GOARCH=arm GOARM=6 go build -ldflags='-s -w -X main.version=1.0.4 -X main.commit=1dcb5944c3de638dfa22f8c19728820f33118496 -X main.date=2017-07-31T09:47:18Z' -o dist/openbsd-arm-filemanager/filemanager cmd/filemanager/main.go
# golang.org/x/sys/unix
../../../golang.org/x/sys/unix/flock.go:16: undefined: Flock_t
../../../golang.org/x/sys/unix/sockcmsg_unix.go:37: undefined: Cmsghdr
../../../golang.org/x/sys/unix/sockcmsg_unix.go:43: undefined: Cmsghdr

No error without ldflags.

@hacdias,
That's an obviously different issue. Please file an new issue and makes this issue focus on FreeBSD stuff.

I am using goxc, to cross-compile but  getting exactly this error, tried to update go get -u golang.org/x/sys/unix but still having the issue, current go version: go version go1.8.3 darwin/amd64 just in case this is the Makefile some output:
$ make compile
/Users/nbari/projects/go/bin/goxc -os="freebsd netbsd openbsd darwin linux windows" -bc="!386"
[goxc:go-vet] 2017/08/03 13:25:33 Task go-vet succeeded
ok      github.com/ssh-vault/ssh-vault  3.109s
?       github.com/ssh-vault/ssh-vault/cmd/ssh-vault    [no test files]
[goxc:go-test] 2017/08/03 13:25:37 Task go-test succeeded
[goxc:go-install] 2017/08/03 13:25:37 Task go-install succeeded
[goxc:xc] 2017/08/03 13:25:37 Parallelizing xc for 9 platforms, using max 3 of 4 processors
# golang.org/x/sys/unix
../../../../../golang.org/x/sys/unix/cap_freebsd.go:18: undefined: CAP_RIGHTS_VERSION_00
../../../../../golang.org/x/sys/unix/cap_freebsd.go:19: undefined: CAP_RIGHTS_VERSION_00
../../../../../golang.org/x/sys/unix/cap_freebsd.go:19: const initializer CAP_RIGHTS_VERSION_00 + 2 is not a constant
../../../../../golang.org/x/sys/unix/cap_freebsd.go:46: undefined: CapRights
../../../../../golang.org/x/sys/unix/cap_freebsd.go:50: undefined: CapRights
../../../../../golang.org/x/sys/unix/cap_freebsd.go:55: undefined: CapRights
../../../../../golang.org/x/sys/unix/cap_freebsd.go:90: undefined: CapRights
../../../../../golang.org/x/sys/unix/cap_freebsd.go:125: undefined: CapRights
../../../../../golang.org/x/sys/unix/cap_freebsd.go:164: undefined: CapRights
../../../../../golang.org/x/sys/unix/cap_freebsd.go:179: undefined: CapRights
../../../../../golang.org/x/sys/unix/cap_freebsd.go:179: too many errors
[goxc:xc] 2017/08/03 13:26:10 'go' returned error: Wait error: exit status 2: # golang.org/x/sys/unix

The problem is goxc doesn't have support for current FreeBSD, it seems.

@benlaurie Hi, thanks for the hint, I just tried with this:
env GOOS=freebsd GOARCH=amd64 make

and is working.

The Capsicum types and constants in x/sys/unix were not generated for freebsd/arm or freebsd/386 in https://golang.org/cl/47290. I fixed the situation for freebsd/386 in https://golang.org/cl/51570 and will try to get a freebsd/arm system set up somewhere to generate them there as well (I didn't manage to generate them using a cross-compile setup).


bug: page footer expansion obstructs text and UI/UX buttons hidden behind it

Bug Report
Description
Bug Summary:
It appears the entire footer is expanded with the messagebox itself, hence responses being cut off in chats along with buttons hidden behind the expanded footer.
Steps to Reproduce:
2. Choose a local or external large language model in the model dropdown to begin chatting with.
3. Send enough queries to where a scrollbar is created & required for the chat itself.
4. Paste in some chunky text (enough lines) in the message box.
5. The entire footer area appears to expand with the messagebox, resulting in the text and UI/UX buttons being cut off from being displayed on the screen correctly.
Expected Behavior:

The footer should not expand in size when the messagebox expands in size.

Actual Behavior:

When displaying a message box, the text content is truncated and buttons are not made fully visible.

Environment

Open WebUI Version: v0.1.124 (latest)
Ollama: v0.1.37
Operating System: Windows 11 Pro Insider Preview (Edition) - Version: 22H2 - Installed on: February 4, 2024 - OS build: 23620.1000 - Experience: Windows Feature Experience Pack 1000.23620.1000.0
Browser: Firefox v125.0.3 (64-bit)

Reproduction Details
Confirmation:

[x] I have read and followed all the instructions provided in the README.md.
[x] I am on the latest version of both Open WebUI and Ollama.
[x] I have included the browser console logs.
[x] I have included the Docker container logs.

Logs and Screenshots

Browser Console Logs:

N/A

Docker Container Logs:

N/A

Installation Method
Docker Desktop via docker-compose.yml file for Open WebUI, Ollama is running natively on Windows with the Windows (Preview) version.
Additional Information

Attaching an image causes Llama 3's response to be pushed higher up on the screen, but no additional information is revealed.

Note
If the bug report is incomplete or does not follow the provided instructions, it may not be addressed. Please ensure that you have followed the steps outlined in the README.md and troubleshooting.md documents, and provide all necessary information for us to reproduce and address the issue. Thank you!

Closing in favour of https://github.com/open-webui/open-webui/issues/2504

I came to report the same thing.
However since there's a workaround on desktop, but no workaround on mobile for Firefox (always totally broken right now), I created a dedicated issue to CSS patch mobile here:

#2587 bug: CSS patch needed, Android Firefox totally unable to click response buttons

[!NOTE]
The patch that this #2231 was closed in favor of

#2504 ui: Scrollbar for the chat conversations goes behind the Message Box

may or may not also resolve my #2587 above, depending on how it's implemented.
So I'd recommend keeping #2587 open until we confirm that basic mobile functionality is unblocked.

✅  Totally patched 🎉


--identities parameter for 'az webapp identity assign' is not clearly documented

[Enter feedback here]
When assigning an identity, the documentation seems to be wrong regarding the --identities property.
"Space-separated identities to assign. Use '[system]' to refer to the system assigned identity. Default: '[system]'."
I interpret this as the principal id(s) (guids).
However, it expects the fully qualified resource Id.
Testing with the principalId for the user assigned managed identity
$principalId = $($principalObject).principalId  #$principalObject here is the user assigned managed identity resource
az webapp identity assign -g $resourcegroup -n $apiName --identities $principalId
az : ERROR: (LinkedInvalidPropertyId) Property id '70792f8c-c632-4cb3-9ac8-c280cabd35f1' at path '' is invalid. Expect fully qualified resource Id that start with '/subscriptions/{subscriptionId}' or '/providers/{resourceProviderNamespace}/'.

When changing to the fully qualified resource Id, it works
$principalId = $($principalObject).id      #$principalObject here is the user assigned managed identity resource
PS C:\Repos\INT.InformationServices.Products\Products\infrastructure\dev> az webapp identity assign -g $resourcegroup -n $apiName --identities $id  #$principalId
{
  "principalId": null,
  "tenantId": null,
  "type": "UserAssigned",
  "userAssignedIdentities": {
    "/subscriptions/*****/resourcegroups/*****-dev/providers/Microsoft.ManagedIdentity/userAssignedIdentities/*****v": {
      "clientId": "**************************",
      "principalId": "**************************"
    }
  }
}

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: a2bf26b4-3d91-ec60-c64d-8f910a4f0f00
Version Independent ID: 33547311-9105-6e41-e477-3681d2a87087
Content: az webapp identity
Content Source: latest/docs-ref-autogen/webapp/identity.yml
Service: app-service
Sub-service: web-apps
GitHub Login: @rloutlaw
Microsoft Alias: routlaw

route to CXP team

@mystiqu The PR for the fix has been created and it will be merged soon. Thanks again for pointing this out, I am closing the issue based on this update, please let us know if there is something else that we can help you with.


Add selector names to web pages

This code works to add selector names above the drop down menus on the output webpages.
test.py script modified to include a page with labels, and this works well. Resultant webpages have only minor differneces and these are tested with firefox and internet explorer.
Included a pylint tidyup of a few recent changes at the end.

This is part of Issue #6


Line measuring

Draw lines on the map and show how long they are. Currently only in browse page. Just as I was typing this realised this is going to be breaking for Criticals so making it a WIP whilst I make Critical Entry work with new way that Pins works

Demo at https://acteng.github.io/atip/LineMeasuring/browse.html

Resolved the UX issues of esc not used, too much precision and colour of line.
I think the clash of the tools should be part of a bigger piece of work about how we organise our UI/UX for different layers and tools on the browse page


Text error

There is a text error on the live site:
...It's highly advised that requiring the main file does generate any side affects.
Should be "does not generate any side affects"; however I'm not seeing this error inside the codebase which is curious:
https://github.com/nodejitsu/npm-package-json-pagelet/blob/0ade43255ad211643a28d1fe169c3163d5ca394b/view.html#L228

@gsklee Could be that this module wasn't updated with a re-deploy.


fix: all links to the documentation

Thank you for the PR!
But I think the problem is in /apache/avro > doc/. Those should be aliases and both links should work.

Ah ok, thanks!


Vim :profile command was not covered by tests

Vim :profile command was not covered by tests according to coveralls. See:
https://coveralls.io/builds/9672985/source?filename=src%2Fex_cmds2.c#L1527
This pull requests adds test.
I does not test the ":profdel" command as I did not understand well what it does.

I'm not sure why Appveyor failed in this tests (timeout) so I disable tests in Windows.
I don't have a Windows box to see what's wrong on Windows.


Table region props not working as expected

Current Behavior
When passing additional classes to the Table component, the result is not what I am expecting. This could be a lack of understanding of the documentation on my part but here is an example of the issue.
Code:

Result:
.bg-surface-800\/60 {
    background-color: rgb(var(--color-surface-800) / 0.6);
}

When changing the above style in the inspector from .bg-surface-800\/60 to .dark .table, I get the expected result.
Steps To Reproduce
No response
Anything else?
No response

I don't quite see what you're trying to do or expecting, to be honest. Can you start 2 steps further back, what are you trying to achieve?
What's the expected result?

@Sarenor thank you for responding. I'll be honest, I am very new to frontend development so my apologies for the poor communication. What I am trying to do is add a transparent background to the table body. I can change the table body to a solid color without issue but using the opacity modifier does not work.
Default table:

Change background to secondary color:

Both the above examples work without issue.
The issue starts when I try to pass a transparent background such as regionBody="bg-surface-800/60". The class is added but the results are the same a the default. This appears to happen because .table and .dark background colors are showing through. Below is my desired result but I am not sure how to accomplish this.

Is there are way to pass a transparent background to the table body? Thank you again for the assistance.

@samuel-odinware so a couple things here, first it's sometimes helpful to see where the prop is being applied to understand how the class is affecting things. So here's where the regionBody prop is applied, it's using the tbody element:
https://github.com/skeletonlabs/skeleton/blob/dev/src/lib/components/Table/Table.svelte#L77
If we take a look in the Table stylesheet we can see no style is applied for the tbody element specifically, just the children within it:
https://github.com/skeletonlabs/skeleton/blob/dev/src/lib/styles/elements/tables.css#L56
So the background for the table is actually coming from .table which is applied to the table element:
https://github.com/skeletonlabs/skeleton/blob/dev/src/lib/styles/elements/tables.css#L11
So you might try overwriting the .table background and see if that provides the desired result.
Additionally, unless you ping your app to be light mode only, we typically recommend stying both the base (light mode) and dark mode modifiers when it comes to backgrounds, like:
regionBody="bg-surface-100/60 dark:bg-surface-800/60"

Otherwise it might appear as though your styles are not working for dark mode, given we use a token that modifies both in .table.
Hope this helps.

Thank you very much for the information and the awesome toolkit. Keep up the great work.

Just wanted to leave an update. Base on the previous information, I was able to use the element prop to override the background color. Great stuff, thanks again!


chore(apps/whale-api): rename whale to whale-api

What this PR does / why we need it:
Rename apps/whale to apps/whale-api as it allows us to

follow jellyfish/apps standard
avoid ghcr name conflict with existing whale package published via whale gh repo

Part of #977

Always a random test failure 🤔


Clean up CONTRIBUTING.md - link missing for generating the Continuous Integration

Hi folks,
While going over the CONTRIBUTING.md, I noticed below 2 things under the Submitting a Pull Request section:

Launch all tests
./mvnw clean verify
Generate a new JHipster project, and ensure that all tests pass
./mvnw clean verify
Test that the new project runs correctly:
./mvnw spring-boot:run
You can generate our Continuous Integration (with GitHub Actions and Azure Pipelines) by following this

There is a step with link reference to generate the Continuous Integration as seen above. Is this step required ? If yes, can the steps be added for it, as the current link is broken? If no, can this be removed from the document to avoid confusion?

Can the duplicate step to run test Generate a new JHipster project, and ensure that all tests pass ./mvnw clean verify be removed as well?

I checked other JHipster repos and found that the point 1 is happening in other repos as well. Just wanted to check if I'm missing any context :)
Happy to raise a PR on this, if this can be picked up! Thanks.

My fault :-)
It was a bad copy/paste from generator-jhipster and it needs to be clean

No worries, it happens :)
So shall I remove both the steps mentioned in the issue?

The part about CI should be updated
In fact, you could use: ./test-ci/generate.sh fullapp for example to reproduce the build
To have the list of possible app, you need to check inside generate.sh
So 2 solutions:

we could simply remove the part about talking about GitHub Actions/Azure
or update this part, and describe the generate.sh

What do you prefer ?

So only this part should change:

You can generate our Continuous Integration (with GitHub Actions and Azure Pipelines) by following this

I think updating the link and describing generate.sh will be more helpful. I also see there is an existing section in Contributing.md  that mentions what you said.
I'll link it to this section and add more details on generate.sh.

Hi folks, I've added more details to the existing Running integration tests locally section in the CONTRIBUTING.md.
Please review and let me know if more details needs to be added :)


Update jsoniter-scala-core, ... to 2.23.4

About this PR
📦 Updates

com.github.plokhotnyuk.jsoniter-scala:jsoniter-scala-core
com.github.plokhotnyuk.jsoniter-scala:jsoniter-scala-macros

from 2.21.4 to 2.23.4
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.github.plokhotnyuk.jsoniter-scala" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.github.plokhotnyuk.jsoniter-scala" }
}]

labels: library-update, early-semver-minor, semver-spec-minor, version-scheme:early-semver, commit-count:1

Superseded by #429.


fix: select error

Fixes #410
In https://github.com/nvim-treesitter/nvim-treesitter/pull/4300, we deprecated the is_in_node_range() function in favour of the upstream neovim's implementation. However, it seems like the current nightly's implementation has been changed again, and it doesn't seem to accept table type as a node.
I don't know how to convert a table representation to TSNode. If you have a better idea of how to convert them, let me know. In the meantime, we can just use the original implementation to fix the bug.

https://github.com/neovim/neovim/pull/22582 fixes the issue #410. However, since I found that vim.treesitter.node_contains in Neovim 0.8 can still cause issues, so I'll merge this PR for now. We can replace the functions once the 0.9 stable is out.


perf: Constructors/destructors in .cpp files and constructors use initializer lists

ClickUp Tasks: https://app.clickup.com/t/865bph4e4 and https://app.clickup.com/t/865bph4g0
I've touched several files, so the leads of the 2nd assignment should look at their scripts to make sure that I didn't destroy anything (I've checked and everything compiles and works well, but I could have missed anything)

Task linked: CU-865bph4e4 All constructors use initializer lists

Task linked: CU-865bph4g0 Constructors and destructors in source (.cpp) files

Task linked: CU-865bq6dm9 Move Lights structs outside of Scene

And another sidenote: while reviewing your request I noticed the destructors in some Components are not virtual/overriden. Since this is not an issue with your branch but rather technical debt that was in develop, I've created the ticket #865brqufy to fix it there and wherever else it may happen.

Amazing job Mark!! Thank you for your effort. As a sidenote, did you removed all the = default for any particular reason? Afaik, it's equivalent to just giving the constructor/destructor an empty body, so in terms of results it should be the exact same.

It is, but as one of the ClickUp tasks was to have the constructors/destructors in the .cpp files I decided that, in order to be consistent with the rest of the project, delete those = default and create its respective constructor/destructor in the .cpp file, so now all of them are in the same place.

I see your point! It also has the added benefit of making it easier to add logic to those methods if it's ever needed, since you already set up the code blocks. Thank you for your answer!

I think, before merging, this publication should be taken into account: https://isocpp.org/blog/2023/02/stdinitializer-list-in-cpp-caveats-and-improvements-bartomiej-filipek
std::initializer_lists are not optimal in every option.

std::initalizer_list is not what it is being used here, but instead initializer lists in the constructors check this. It is not the same ;)

@MacXxs @AuxPort66 @Dedado3000 if you could take a look at this please. You don't have to check every file, just the ones that belonged to your group during the 2nd assignment, to make sure everything is right.

Everything seems ok, it's only a refactor of the code so i see no changes in functionality (at least for everything regarding to my group). I can't test it right now 'cause i'm at work but if it compiles for you and you've test it i give my OK. If not, i can test it tonight and accept the pull request then, if everything works.

Thanks Miki, everything works correctly so no need to check it if you can't, it is just to have an extra pair of eyes to check the scripts.

I was about to ask her to have a look, but I suppose we could do that. After all, there's not really any changes to the logic. Let me skim through it again just in case and I'll merge it. Thank you again for your work and sorry for all the merges you've had to do :P


As an admin, I want an easy way to give project team members archive management and content editing permissions so that I don’t have to keep track of all the individual required permissions.

I see this isn't ready for testing yet, but as we think through it Meredith and I were thinking how this functionality would be a good place for us to directly rebuild the new collections we want to editorially make. As discussed, Meredith wants to refine new categories for the "collections" and that will take us going through the material and assigning them. We usually do this offline via CSV, but does it make sense to do this directly into the system so that you won't need to batch upload the new collections tags to each volume? Works might have many collections tags (i.e. "Brogan" and "Typographically Unique" and "Grammar"). Let me know what is best, we can always do this via CSV and then add.

@meagan1019 my plan was for collections to be edited through the admin site.

This seems to work well from testing #2!


URL not accepted

Describe the bug
Source ID was not accepted (http://<IP_ADDRESS>/gobmx/salud/datos_abiertos/datos_abiertos_covid19.zip)
To Reproduce
Steps to reproduce the behavior:
Copy link: http://<IP_ADDRESS>/gobmx/salud/datos_abiertos/datos_abiertos_covid19.zip into source URL file
Expected behavior
accepted URL

Environment (please complete the following information):
Google Chrome is up to date
Version 83.0.4103.116 (Official Build) (64-bit)

Duplicate of #446


Syncing latest changes from master for rook

PR containing the latest commits from master branch

There is a new CI fix in master that we should pick up at the same time. Closing this with the intention to get a new re-sync of the branch.


fix: throw descriptive error for object destructuring

:pencil: Description
Object destructuring is not natively supported by @babel/types so it won't be supported for custom command parameters at this time. This PR adds a descriptive error in this case.
:link: Related Issues
#26

:tada: This PR is included in version 1.1.4 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


import <AppsFlyerLib/AppsFlyerTracker.h> error.

Hi. Thank you for your work.
I manually linked as RN documents say (I failed to install with cocoapods which install React 0.11 etc)
It's fine with one error. I added header search path, and edited as follows.
#import <AppsFlyerLib/AppsFlyerTracker.h> // Error #import "AppsFlyerTracker.h" // It's ok.
Is 'import "filename"' the right way?

Agree. We will release fix shortly with following:

In the latest release (5.4.0), I started getting a similar error in the SEGAppsFlyerIntegration file. Maybe you have ideas how to avoid this?

same issue with SDK 5.4 here.
Fine with SDK 5.3 , just needed to add this :
#import <AppsFlyerLib/AppsFlyerTracker.h>
instead of this
#import <AppsFlyerTracker/AppsFlyerTracker.h>


Add enum class to migration enum accepted values

When we want to add an enum column ,and have a corresponding enum to that column, it is very annoying to write all enum case's values one by one or with other tricks. with this new feature it is very easy and fast to do we just give enum class we have and then it adds the cases.
instead of
            $table->enum('test_column', [TestEnum::TEST1->value, TestEnum::TEST2->value, TestEnum::TEST3->value]);
we now have
            $table->enum('test_column', new \Illuminate\Database\Schema\Enum(TestEnum::class));

Would it rather be helpful if the method accepted an array of enums and then transforms those to either values or keys? Or just the enum class name? This Enum class is just extra code to write for users and makes things unreadable in my opinion.

What if in future you will decide to deprecate and delete enum? Then old migration will become invalid

Would it rather be helpful if the method accepted an array of enums and then transforms those to either values or keys? Or just the enum class name? This Enum class is just extra code to write for users and makes things unreadable in my opinion.

Actually we have this syntax in rules and I prefer it because of type hinting and making it readable in migration file.

Yeah I agree with @antonkomarev. This change has also been rejected every time it comes up: https://github.com/laravel/framework/pull/43483.
The before example couples the migration to the enum as well. Such references shouldn't be used in migrations.

What if in future you will decide to deprecate and delete enum? Then old migration will become invalid
Yeah I agree with @antonkomarev. This change has also been rejected every time it comes up: #43483.
The before example couples the migration to the enum as well. Such references shouldn't be used in migrations.

I think this is a matter the programmer should consider it, even we use first syntax
$table->enum('test_column', [TestEnum::TEST1->value, TestEnum::TEST2->value, TestEnum::TEST3->value]);
after deleting the enum it would have errors.
and coupling issue is because we are using enums in migration file and why don't we use the enums?! it is a good feature in php and most of times it represent our column accepted values It could be better to use Enums in migration files.
The programmer decides to use it or not.

Due to last pull requests I this pull request should be closed

@dennisprudlo, a migration should never run again, once it ran.
But even so: wouldn't that be solved by https://laravel.com/docs/9.x/migrations#squashing-migrations?
also, if you remove an enum and you ever should run the migrations again, it's probably on a new database, without data. You'd only be worried when you would import data from a source that hasn't removed/migrated the value in the database, as a migration removing the the enum case from the database schema would also use this tactic and would do nothing.

Migrations are about the database schema not the data that's in them. So it doesn't matter if new database is empty or not. Both databases will have a different schema and to ensure that's not happening we use migrations.
Imagine a DB1 and DB2, both are in sync. Now you add a migration adding an enum column with some enum values from php. You run this migration on DB1. After that you change one of those enum cases (different name, whatever) in your code and then run the migration on DB2. You have now two out of sync databases.
That's why we use static strings as table names and not the eloquent model name. Same thing. Changes in your application code should never affect the database schema.

Imagine a DB1 and DB2, both are in sync. Now you add a migration adding an enum column with some enum values from php. You run this migration on DB1. After that you change one of those enum cases (different name, whatever) in your code and then run the migration on DB2. You have now two out of sync databases.

wouldn't you also create a migration that accompanies the change in php?

Exactly. That's why you can always explicitly state the enum values and don't have to rely on the the php enum cases.
By the way it's still possible. No one prevents anyone from doing this: $table->enum('foo', [SomeEnum::someCase->value]);

I can also write 'Exactly'.
If I use PHP enum references, I am certain that what's in my database, matches my php enum object. adding a migration for a change may feel useless, but if you, everytime you need to change an database related enum, make sure everything before your change is dumped to a schema file, you won't have  worry about it.
I am also wondering, does Open/Closed not apply to enum cases?

As I said no one stops anyone from doing so. I'm just saying Laravel tries to decouple migrations and application logic.


Separate query string handling functions

Currently in Traffic Portal (and Ops), we have one dropdown to control query string handling. This dropdown controls the way query strings are handled both with the cache key and with parent selection. This behavior should be separated into two distinct functions: one that controls the way that the query string is handled with parent selection and another that relates to cache key. This would allow for independent configuration, but also more robust cache key configurations via delivery service profiles or raw remap text. Currently, a cache key configuration is placed on the remap line when the value is set to > 0, and consequently, any additional cache key configuration through the aforementioned mechanisms may have no effect due to the ordering dependencies within ATS.

This appears to be a duplicate of a JIRA issue that @mtorluemke created in 2016 which was copied here into GitHub as #960.

Ha! Mark knew 3 years ago what we now really need today. Which issue do you want to keep, @elsloo?


test: debug el10 aarch64 tests_basic failures

Can you elaborate which failures you've seen?  @edsantiago discovered some kernel bug that causes issues in logging. Maybe it's the same bug?

problem seems to have been a flake - closing


default to AllUsers scope installation in Windows

Install PowerShell modules in ProgramFiles so the module will be available to all users, instead of just the user that ran the action.
Fixes #16

https://github.com/potatoqualitee/actionstest/runs/5462545133?check_suite_focus=true
Here are the paths for each runner
macoS
/Users/runner/.local/share/powershell/Modules:/usr/local/share/powershell/Modules:/usr/local/microsoft/powershell/7/Modules

Whatcha think about  /usr/local/share/powershell/Modules
That also aligns with a path within my macmini's pwsh path.
Linux
/home/runner/.local/share/powershell/Modules:/usr/local/share/powershell/Modules:/opt/microsoft/powershell/7/Modules

And here? /usr/local/share/powershell/Modules
That path also exists on my rando Ubuntu install.
Windows
C:\Users\runneradmin\Documents\PowerShell\Modules;C:\Program Files\PowerShell\Modules;c:\program files\powershell\7\Modules;C:\\Modules\azurerm_2.1.0;C:\\Modules\azure_2.1.0;C:\Users\packer\Documents\WindowsPowerShell\Modules;C:\Program Files\WindowsPowerShell\Modules;C:\Windows\system32\WindowsPowerShell\v1.0\Modules;C:\Program Files\Microsoft SQL Server\130\Tools\PowerShell\Modules\

Your current proposal for Windows is 💯

Strange, my tests aren't working. Going to merge, test and publish, thank you so much @lowlydba !


Image shortcode parser

Affected Version
4.1.1
Description
According to https://docs.silverstripe.org/en/4/developer_guides/extending/shortcodes/

Shortcodes are automatically parsed on any database field which is declared as HTMLValue or DBHTMLText, when rendered into a template.

However, declaring a field via DBHTMLText::class instead of the previous HTMLText does not trigger shortcode parsing as suggested in the documentation.
Steps to Reproduce
private static $db = [         'Content1' => 'HTMLText',         'Content2' => DBHTMLText::class,     ];
Image shortcodes in Content2 will render as unparsed [img] instead of the actual  html

OK - I think the problem is that when we use Injector to create our field objects creating a HTMLText object uses the definition in the yml here:
https://github.com/silverstripe/silverstripe-framework/blob/4.1.1/_config/model.yml#L27-L30
This enables the shortcode parsing. However, because shortcode parsing is not enabled by default on the class, using HTMLText::class (which is shorthand for the FQCN) it will load that object with injector but it's not been told to enable the process shortcode value...
There are two options I see:

DataObject enables shortcode parsing if type === HTMLText::class (yuck)
We update our Injector config for HTMLText::class so that it turns on shortcode parsing. This has a side effect that any HTMLText object created through injector will have the shortcode parsing enabled, which may or may not be a good thing. At this point, I might suggest that HTMLText just has it enabled on a class level instead.

@tractorcow I've been thinking about this; shouldn't HTMLText do shortcode parsing by default and HTMLFragment doesn't? What's the intended distinction between the two?

I am experiencing the same issue with v4.2.1. Shortcode aren't being processed (images, links, custom shortcodes, etc...)


ERROR:rasa_core.processor:coercing to Unicode: need string or buffer, type found

Rasa Core version: 0.10.4
Python version: 2.7.15rc1
Operating system (windows, osx, ...): Ubuntu
Issue: While I am running "online_training.py" that time it shows error like this in my custom action code.
Error like:
ERROR:rasa_core.processor:Encountered an exception while running action 'action_findrestaurants'. Bot will continue, but the actions events are lost. Make sure to fix the exception in your custom code.
ERROR:rasa_core.processor:coercing to Unicode: need string or buffer, type found
my costum action is Like:
class ActionFindRestaurants(Action):
def name(self):
return 'action_findrestaurants'
def run(self, dispatcher, tracker, domain):
dispatcher.utter_message("looking for restaurants...")
	location=str('xyz')
	couisine=str('xyz')

	# GOT ERROR IN THIS "HOW TO CONVERT UNICODE TO STRING?"
	dispatcher.utter_message("type of location is:" + type(location))
	dispatcher.utter_message("type of couisine is:" + type(couisine))

	price=tracker.get_slot("price")

	# we got full list here from another python file
	matches = []
        matches =search2.find_restaurant()
	dispatcher.utter_message("size of matches is:" + str(len(matches)))
	dispatcher.utter_message("type of matches is:" + type(matches))
	oneelement=matches[i]
	dispatcher.utter_message("type of matches element is:" + type(oneelement))

	# finding location and couisine index in matches
	il = [i for i, x in enumerate(matches) if x is location]
	ic = [i for i, x in enumerate(matches) if x is couisine]

	dispatcher.utter_message("length of il list is:" + str(len(il)))
	dispatcher.utter_message("length of ic list is:" + str(len(ic)))

	fl = []
	values = []

	for index in range(len(il)):
		x=il[index]
		value=x+1
		if (matches[value] is 'xyz'):
 			fl.append(il[index])

	dispatcher.utter_message("length of fl list is:" + str(len(fl)))

	for index in range(len(fl)):
		x=fl[index]
		fr=x-1
		to=x+3
		for i in range(fr,to):
			values.append(matches[i])

	dispatcher.utter_message("length of values list is:" + str(len(values)))

	i=4

length=len(matches)
dispatcher.utter_message("list's lenght is:" + str(length))
	lengthofvalues = len(values)
	finalvalues=[]
	if (lengthofvalues != 0) :
		finalvalues.append(matches[0])
		while (i < lengthofvalues):
			finalvalues.append(matches[i])
			i +=4

	else :
		finalvalues=[]
		dispatcher.utter_message("Sorry not found any restaurant,Please try some good parameter")
		dispatcher.utter_message("length of finalvalues list is:" + str(len(finalvalues)))

dispatcher.utter_message("inside else")
	description = ", ".join([c for c in finalvalues])
        dispatcher.utter_message("{}".format(description))

restaurants = restaurant_api.search(tracker.get_slot("cuisine"))
    	return [SlotSet("matches", values)]

->how to convert "Unicode type to String"?

Thanks.

@gausie will get back to you about this issue soon.


mat-datepicker: valueChange fires without blur event with updateOn: 'blur' set

Reproduction
Use StackBlitz to reproduce your issue: https://stackblitz.com/edit/angular-6qr4ut?file=angular.json
Steps to reproduce:

Type a valid date in the box starting with '0' (zero)
Wihtout blur start to delete char by char from the end
Delete the all chars until the last one (zero char from step 1)

Expected Behavior
Nothing should happen, since the focus still in the box
Actual Behavior
valueChanges event is fired. The changes will be pushed into an array and displayed in the page
Environment

Angular: 9
CDK/Material: 9
Browser(s): Chrome (but should work in others)
Operating System (e.g. Windows, macOS, Ubuntu): windows
Ivy disabled
IMPORTANT you have to use MatMomentDateModule

Confirmed that the date input appears to be emitting superfluous events here any time the input contains just 0

fix(material/datepicker) : value change without blur when the date starts with 0
As we see the behaviour of date picker it never adds any 0's at the start of a month or day which are single digits. May be we put the validations for the input field so that it acts as same and dosent allow the user to add zeroes at the start???
thoughts:  @lautarobock @jelbourn @sandikbarr
Fixes angular#19613

@sahilmore-git But that will be a workaround. I think this behavior is a bug, those events never should be triggered

Yes I totally agree with you @lautarobock  but I just found out that even if we add a character like 'a' or 'b' any character in an empty input field the event gets triggered even if it's still in focus. That's a new issue I guess. :(

Hi, is anyone working on this issue? I can try to fix it if you don't mind.

Same goes for updateOn: 'submit'

Is there anyone working on this one ? I can try to fix it.

Hey @jelbourn this bug is not happening anymore, i believe this issue need be closed. Btw @lautarobock if still happening with you pipe(distinctUntilChanged()) should be help you

@viniciusschuelter thanks, will close; anyone tracking this issue feel free to reopen with a reproduction if it's still occurring in the latest version


Using custom HtmlEncoder in unit tests - part 2

Issue - #2085
First part - #2417
@dougbu @Eilon

:shipit: but make sure the CI is green first

:shipit: from me too. I actually like this a lot now. It's so much easier to tell what's going on in the test.


Conditional Guard Description

Description
Custom description option (:desc) on only_if/not_if guards for better identification in output
log "hello" do
  not_if(:desc => 'randomly skip') { rand < 0.5 }
end

Issues Resolved
https://github.com/chef/chef/issues/6322
Check List

[x] New functionality includes tests
[x] All tests pass
[x] RELEASE_NOTES.md, has been updated if required (not required for bugfixes, required for API changes)
[x] All commits have been signed-off for the Developer Certificate of Origin. See https://github.com/chef/chef/blob/master/CONTRIBUTING.md#developer-certification-of-origin-dco

Something this big I would want to see go through the RFC process. Personally I think this is overkill, code this complex can use shell_out manually to do the same thing.

@coderanger Thanks for the feedback.  I'm not sure I understand the shell_out reference, though.  Would you be able to shoe me how it could be used to replace the example at the top?

@jgorak You can do something like this:
log "hello" do
  not_if do
    (rand < 0.5).tap do |val|
      Chef::Log.info("a thing!") unless val
    end
end

And similarly in the case of shell_out(...).error? as the condition for a command string.

@coderanger I see.  Thought I was missing some trick that might make it cleaner.  That works, though in my opinion it's not as simple/clean as it could potentially be.
Thanks again

@jgorak I agree it's not as nice, but this is clearly not something that has a huge need or others would have wanted it by now so for a minor hit to complexity of the recipe code, we can avoid adding the complexity to Chef core. The main case I would imagine is identifying between multiple guard clauses on a single resource, which is itself something we caution against as it leads to code that is very difficult to read.

closing due to inactivity


Migration to pyproject.toml

The time has come. There is a deprecation warning on dependencies install of any package that depends on pyinsales.
  DEPRECATION: pyinsales is being installed using the legacy 'setup.py install' method, because it does not have a 'pyproject.toml' and the 'wheel' package is not installed. pip 23.1 will enforce this behaviour change. A possible replacement is to enable the '--use-pep517' option. Discussion can be found at https://github.com/pypa/pip/issues/8559
  Running setup.py install for pyinsales ... done

New way of publishing to pypi:
pip install -e .[release]
flit publish

But do not publish, please, because I want to add GH action.

@nkrkv review, please

approved these changes [17 hours ago]

@nkrkv merge plz, because i can't


Routing problems

Hello
I have some problem using the path argument for includes.
I have a routing setup like:
omniboard_routing = [
    include(frontend_routing, path=r"^/frontend"),
    include(backend_routing, path=r"^/backend"),
]

And the routing for each include looks like this:
frontend_routing = [
    route("websocket.connect", board.connect),
    route("websocket.receive", board.message),
    route("websocket.disconnect", board.disconnect),
]

backend_routing = [
    route("websocket.connect", consumer.connect),
    route("websocket.receive", consumer.message),
]

Open to websocket connection works as expected, but no messages arrives from the server.
In the worker log i see this message.

ERROR - worker - Could not find match for message on websocket.receive! Check your routing.

If i rearrange the routing like this:
omniboard_routing = [
    include(frontend_routing, path=r"/frontend"),
    include(backend_routing, path=r"/backend"),
]

only the /backend part works and the server sends back messages.
Is this a bug?
With the runserver both entries working as expected.

Hm, I tried to reproduce this and couldn't. Could you tell me what versions of channels, daphne, asgiref, asgi_redis (if installed) and Django you're using, along with your CHANNEL_LAYERS setting?

Installed versions are:
daphne==0.12.1
channels==0.14.0
asgiref==0.13.0
asgi-redis==0.12.0
Settings are:
    CHANNEL_LAYERS = {
        "default": {
            "BACKEND": "asgi_redis.RedisChannelLayer",
            "ROUTING": "project.routing.base.project_routing",
        },
    }

Could you give me the project_routing as well, since this is a routing issue? Or at least, some minimal version of it that helps reproduce the issue?
As for your second problem, I suspect it may be that the worker process is freezing up/erroring at some point, which is why further requests get ignored. Is it possible there's error logs from the worker you're not seeing?

I have figured it out.
The nginx configuration pipes all the request for web-sockets to the path /websocket/ and i didn't used this path in the include tag for the routing. =S
Thanks for the help.


remove fast gates interface, replace with specific functions for Fast…

I would like to completely remove FastPauliRotations, but it is quite a convenient type to dispatch to.
The only reason the circuit conversion function is still a thing is for the numerical certificate (or, going forward, path sampling strategies in general), where there is no notion of applytoall!(), and conversion at every stage would be slow.
What do you think?

Removing the unnecessarily general fastgates.jl is a great start, but it still seems a big shame to have a bespoke type (FastPauliRotation), as you lament. I think it might cause a little less confusion if at least FastPauliRotation was a subtype of PauliRotation which merely defines the additional PauliStringType field. That way, functions (which could include user-defined functions) which must process a PauliRotation instance do not need to know anything about FastPauliRotation, and users will be less astonished when not receiving a PauliRotation instance from the API.
Also, the fieldname term is less clear than e.g. generator. I suspect it has been chosen for symmetry with the other Pauli types, but keep in mind not all symmetries improve clarity. We must create abstractions, not illusions ;) It's your call on whether you think term makes the commutator code/algebra clearer 🙏

looks groovy to me! 🎉


Fix Coding of DCPBlockLength in Suboption Stop

Table 73 of the Protocol-Standard defines the BlockLength to be 0x2.

Thank you very much!


Can't read interface collections, e.g. IList, ICollection

I have a model with an interface collection property, ICollection, and seem to be able to store my models OK (at least, I don't get any errors, and the file size looks about right).
But when I try to read any of these models back from the LiteDB collection, the collection property contains no elements. Note that it works OK if I use a concrete type, like List.

Hi @cocowalla, I was looking how mongodb resolve this problem: basicly is using concrete classes when deserialize. I will try do the same.

I tried something this afternoon about this.
How I see it, is that you need to store the original type of the array in a BsonArray and save it in the database, so that when you load it back it creates the type stored.
I couldn't manage to do it, but it looks like going this way would probably solve https://github.com/mbdavid/LiteDB/issues/30 also


Crash on Launch

Crashes when i launch game. Seems to only happen when I am missing hwlya. maybe add a check if the mod is not on? or simply make it a required dependency
https://pastebin.com/kVuBmhBq

Fixed in 1.0.4


Temporarily remove test filtering

@bot-gradle test and merge

Your PR is queued. See the queue page for details.

OK, I've already triggered a build for you.


Show publish result in the package client handler after clicking publish

I really need this feature

Add reaction to the issue


Lines in Between Quads on the Mesh

Thin lines or tearing is appearing between the textures on the quads. Caused by floating point rounding with the UV and vertices. Possible fix is to extrude all the textures by 1 pixel.

Fixed by subtracting the uv by a half pixel error around all edges


Switch dependency order for ConditionallyAssignable and ConditionallySelectable generics

Right now, we have impl<T> ConditionallySelectable for T where T: Copy + ConditionallyAssignable, but instead we should have a generic implementation of impl<T> ConditionallyAssignable for T where T: Copy + ConditionallySelectable.

This is fixed by #12. Thanks @saleemrashid!


Add CPP to build with latest GHC (9.10)

As of GHC 9.10, sortOn for nonempty lists is part of base.

Since the change in question was to the base library and not the compiler itself, can you use #if MIN_VERSION_base(4,20,0) instead?

Thanks! Released as https://hackage.haskell.org/package/extra-1.7.15


PubSub Realtime Trigger doesn't work

Expected Behavior
Using the example, it should receive messages from the web console:
id: realtime-pubsub
namespace: company.team

tasks:
  - id: log
    type: io.kestra.plugin.core.log.Log
    message: "Received: {{ trigger.data }}"

triggers:
  - id: trigger
    type: io.kestra.plugin.gcp.pubsub.RealtimeTrigger
    projectId: snappy-nomad-422714-t8
    topic: test-topic
    subscription: test-subscription
    serviceAccount: "{{ secret('GOOGLE_SA') }}"

also this example doesn't work (same but Service Account is pasted in - fill in the ...):
**```yaml
id: realtime-pubsub
namespace: company.team

tasks:
  - id: log
    type: io.kestra.plugin.core.log.Log
    message: "Received: {{ trigger.data }}"

triggers:
  - id: trigger
    type: io.kestra.plugin.gcp.pubsub.RealtimeTrigger
    projectId: snappy-nomad-422714-t8
    topic: test-topic
    subscription: test-subscription
    serviceAccount: |
      {
        "type": "service_account",
        "project_id": "...",
        "private_key_id": "...",
        "private_key": "...",
        "client_email": "...",
        "client_id": "...",
        "auth_uri": "https://accounts.google.com/o/oauth2/auth",
        "token_uri": "https://oauth2.googleapis.com/token",
        "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
        "client_x509_cert_url": "...",
        "universe_domain": "googleapis.com"
      }

Actual Behaviour
When the service account is provided as a secret (which works for other GCP tasks), I get this error before trying to send any messages to the topic:
kestra-1    | 2024-07-05 11:32:31,295 WARN  Gax-1574     flow.realtime-pubsub.trigger [namespace: company.team] [flow: realtime-pubsub] [trigger: trigger] [date: 2024-07-05T11:31:28.041Z] Worker Evaluate Failed with error 'Last unit does not have enough valid bits'
kestra-1    | java.lang.IllegalArgumentException: Last unit does not have enough valid bits
kestra-1    |   at java.base/java.util.Base64$Decoder.decode0(Unknown Source)
kestra-1    |   at java.base/java.util.Base64$Decoder.decode(Unknown Source)
kestra-1    |   at io.kestra.plugin.gcp.pubsub.model.Message.of(Message.java:75)
kestra-1    |   at io.kestra.plugin.gcp.pubsub.RealtimeTrigger.lambda$publisher$1(RealtimeTrigger.java:150)
kestra-1    |   at com.google.cloud.pubsub.v1.MessageDispatcher$3.run(MessageDispatcher.java:514)
kestra-1    |   at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
kestra-1    |   at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
kestra-1    |   at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
kestra-1    |   at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
kestra-1    |   at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
kestra-1    |   at java.base/java.lang.Thread.run(Unknown Source)

as well as
kestra-1    | 2024-07-05 11:33:08,244 WARN  Gax-1584     flow.realtime-pubsub.trigger [namespace: company.team] [flow: realtime-pubsub] [trigger: trigger] [date: 2024-07-05T11:32:32.246Z] Worker Evaluate Failed with error 'Illegal base64 character 20'
kestra-1    | java.lang.IllegalArgumentException: Illegal base64 character 20
kestra-1    |   at java.base/java.util.Base64$Decoder.decode0(Unknown Source)
kestra-1    |   at java.base/java.util.Base64$Decoder.decode(Unknown Source)
kestra-1    |   at io.kestra.plugin.gcp.pubsub.model.Message.of(Message.java:75)
kestra-1    |   at io.kestra.plugin.gcp.pubsub.RealtimeTrigger.lambda$publisher$1(RealtimeTrigger.java:150)
kestra-1    |   at com.google.cloud.pubsub.v1.MessageDispatcher$3.run(MessageDispatcher.java:514)
kestra-1    |   at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
kestra-1    |   at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
kestra-1    |   at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source)
kestra-1    |   at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
kestra-1    |   at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
kestra-1    |   at java.base/java.lang.Thread.run(Unknown Source)

If I paste the service account in manually, I get a different error:
kestra-1    | 2024-07-05 12:13:48,092 ERROR WorkerThread flow.realtime-pubsub.trigger com.google.common.io.BaseEncoding$DecodingException: Invalid input length 1625
kestra-1    | java.lang.IllegalArgumentException: com.google.common.io.BaseEncoding$DecodingException: Invalid input length 1625
kestra-1    |   at com.google.common.io.BaseEncoding.decode(BaseEncoding.java:219)
kestra-1    |   at com.google.api.client.util.Base64.decodeBase64(Base64.java:106)
kestra-1    |   at com.google.api.client.util.PemReader.readNextSection(PemReader.java:99)
kestra-1    |   at com.google.api.client.util.PemReader.readFirstSectionAndClose(PemReader.java:128)
kestra-1    |   at com.google.auth.oauth2.OAuth2Utils.privateKeyFromPkcs8(OAuth2Utils.java:239)
kestra-1    |   at com.google.auth.oauth2.ServiceAccountCredentials.fromPkcs8(ServiceAccountCredentials.java:436)
kestra-1    |   at com.google.auth.oauth2.ServiceAccountCredentials.fromJson(ServiceAccountCredentials.java:199)
kestra-1    |   at com.google.auth.oauth2.GoogleCredentials.fromStream(GoogleCredentials.java:200)
kestra-1    |   at com.google.auth.oauth2.ServiceAccountCredentials.fromStream(ServiceAccountCredentials.java:469)
kestra-1    |   at com.google.auth.oauth2.ServiceAccountCredentials.fromStream(ServiceAccountCredentials.java:452)
kestra-1    |   at io.kestra.plugin.gcp.CredentialService.credentials(CredentialService.java:26)
kestra-1    |   at io.kestra.plugin.gcp.AbstractTask.credentials(AbstractTask.java:28)
kestra-1    |   at io.kestra.plugin.gcp.pubsub.AbstractPubSub.createSubscription(AbstractPubSub.java:49)
kestra-1    |   at io.kestra.plugin.gcp.pubsub.Consume.createSubscription(Consume.java:35)
kestra-1    |   at io.kestra.plugin.gcp.pubsub.RealtimeTrigger.publisher(RealtimeTrigger.java:142)
kestra-1    |   at io.kestra.plugin.gcp.pubsub.RealtimeTrigger.evaluate(RealtimeTrigger.java:137)
kestra-1    |   at io.kestra.core.runners.WorkerTriggerRealtimeThread.doRun(WorkerTriggerRealtimeThread.java:31)
kestra-1    |   at io.kestra.core.runners.AbstractWorkerThread.run(AbstractWorkerThread.java:56)
kestra-1    | Caused by: com.google.common.io.BaseEncoding$DecodingException: Invalid input length 1625
kestra-1    |   at com.google.common.io.BaseEncoding$Base64Encoding.decodeTo(BaseEncoding.java:1030)
kestra-1    |   at com.google.common.io.BaseEncoding.decodeChecked(BaseEncoding.java:234)
kestra-1    |   at com.google.common.io.BaseEncoding.decode(BaseEncoding.java:217)
kestra-1    |   ... 17 common frames omitted

All these errors happen while the trigger is enabled.
Side note, we need more documentation on how to setup and test this plugin.
Steps To Reproduce
No response
Environment Information

Kestra Version: 0.17.8
Plugin version:
Operating System (OS / Docker / Kubernetes):
Java Version (If not docker):

Example flow
No response

I made a small improvement to the trigger, it may had a race before.
Also, I use this command to create a message:
gcloud pubsub topics publish test-topic --message="SGVsbG8gV29ybGQ="

And I tested it, it works like a charm.
Can you retest and give feedback?

I was successfully able to get it working with the service account as a secret as well as hard coded into the flow. Thanks!
Service Account as a secret:

A few tests
Service Account hard coded:

Resolved by https://github.com/kestra-io/kestra/commit/bf32d6f6e738f47142158774a36075d52550033f


⚠ Bofrost.be has degraded performance

In d6ac506, Bofrost.be (https://www.bofrost.be) experienced degraded performance:

HTTP code: 200
Response time: 1117 ms

Resolved: Bofrost.be performance has improved in 0a1c617 after 6 minutes.


Maint/opt logging

Pull Request Test Coverage Report for Build 758

10 of 11 (90.91%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-0.02%) to 94.054%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

hyperparameter_hunter/optimization/backends/skopt/engine.py
6
7
85.71%

Totals

Change from base Build 756:
-0.02%

Covered Lines:
4666

Relevant Lines:
4961

💛  - Coveralls


ENYO-1285: Marquee Text is ellipsis but does not roll when content

Issue:
The node.scrollWidth will return the correct value when the text inside the div is more wider than the div visible area. Else the node.scrollWidth will return the div size itself. In this case both the node.scrollWidth and node.getBoundingClientRect().width will be the same and the resultant marquee distance will be 0 so the marquee won't work.
But the text-overflow: ellipsis is applied to the node starting from the div width and inside text content width is same. Which causes the issue.
Fix:
Remove the text-overflow : ellipsis from the node if the node.scrollWidth and node.getBoundingClientRect().width are same.

Closing out. Per Anish: already another PR created for the same issue


Add Debian packaging policy and sample package documents.

Added a Debian Policy document to outline the procedure to get packages accepted into the official Debian repositories. I have included links to reference docs for further information.
Included in the PR are sample build instructions for a ubuntu/focal deb package for initial testing. The test results have been reported in SR-15515.
While testing I created several packages to test the alternate installation locations as discussed in previous PR's opt and libexec.
It appears that like fedora, debian does not allow installation in the opt directory.
Installation into the libexec also caused many warnings.

cc: @tomerd for additional review

Installation into the libexec also caused many warnings.

What kind of warnings are we seeing here?

opt gives the following error for every file found in opt
E: swiftlang: dir-or-file-in-opt opt/bin/
N:
N:    Debian packages should not install into /opt, because it is reserved for
N:    add-on software.
N:
N:    Refer to Filesystem Hierarchy Standard (/opt : Add-on application
N:    software packages) for details.
N:
N:    Severity: error
N:
N:    Check: files/hierarchy-standard

libexec gives the following warning  for every file found in libexec
W: swiftlang: file-in-unusual-dir libexec/swift/bin/clang
N:
N:    This file or symbolic link is in a directory where files are not
N:    normally installed by Debian packages.
N:
N:    Severity: warning
N:
N:    Check: files/hierarchy-standard

@drexin pointed out we might be able to use /usr/lib instead of /usr/libexec on Debian. @futurejones thoughts?
https://lists.debian.org/debian-devel/2005/05/msg00401.html

@shahmishal, I was looking at the same thing. /usr/lib is used by a large number of existing installations in Debian and Ubuntu.
The official Debian usage of the /usr/lib directory does allow for more complex programs with subdirectories.
https://manpages.debian.org/bullseye/manpages/hier.7.en.html
Where as the usage /usr/libexec is more restricted.
I will build some new packages using /usr/lib and run some tests.

@futurejones Did /usr/lib option work?

@shahmishal
Yes /usr/lib seems to be a viable option. I have been doing a heap of testing and so far there have been no errors or warnings about using usr/lib.
I was looking at the symlinks needed for swift, swiftc in /usr/bin
ln -fs %{_libexecdir}/swift/bin/swift %{buildroot}%{_bindir}/swift
ln -fs %{_libexecdir}/swift/bin/swiftc %{buildroot}%{_bindir}/swiftc

Currently they are being linked to swift and swiftc but these are already symlinks to swift-frontend.
Should we be linking directly to swift-frontend?

Should we be linking directly to swift-frontend?

I dont think so, do you see any benefits on linking directly?

I don't know of any benefit, I was just wondering as to the reasoning of creating symlinks to symlinks.

@futurejones This is ready to be merged once we update the doc to contain the info about using /usr/lib and which binaries will be symlink.

@shahmishal  @tomerd @jblache
https://github.com/apple/swift-installer-scripts/pull/90 indicates that you are no longer taking items discussed and approved in this PR with any importance. Also it is very clear that the whole Debian packaging system is no longer being discussed openly in the community and is being handled in house and only by paid apple employees.
It appears that community input is no longer wanted or needed.
I am closing this PR as it is not relevant anymore.

@futurejones sorry to hear that the work on #90 had left this impression, it was not the intention and my guess is that what we have here is a communication breakdown of some sorts
the work on #90 started since this PR has no progress for many months and there was a strong desire to make progress on debian packaging. very much like this PR, #90 is a proposal - a PR that is open for community review, feedback and discussion. this project welcomes the involvement of everyone that cares to contribute to the effort including Apple employees and community members


Emit fieldsCreated stat in shard measurement

Required for all non-trivial PRs

[x] Rebased/mergable
[ ] Tests pass
[x] CHANGELOG.md updated

Fixes #7299.
I think this was missing @jsternberg. What do you think?

Retargeting to 1.0 branch.


cocomac: Watch sheikspells.co.za

cocomac requests the watch of the watch_keyword sheikspells\.co\.za. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

sheikspells\.co\.za has been seen in 0 true positives, 0 false positives, and 0 NAAs.

Very sorry, it has one TP. I'll try to be better about giving feedback first

Approved by Ollie in Charcoal HQ


Lab4 Implement numeronyms and tests

Fixes #437
Review of colleague's PR #410
Changes proposed in this PR:
- numeronyms

Good work! You might want to consider: 1. adding testing for special characters, which take more than 1 byte of space, this could be important 2. combining your two functions numeronyms and numeronym into one, but I suppose this doesn't matter too much.


NIFI-2157: Add GenerateTableFetch processor

Refactored common code out of QueryDatabaseTable into an Abstract base class, which involved some refactor of QueryDatabaseTable as well as the added GenerateTableFetch processor.
This includes the addition of the DatabaseAdapter interface and its implementations, going forward this is to isolate database-specific code behind an interface for use by database-related processors.

@mattyb149, just finished doing a simple verification of functionality using MySQL. I set up a flow to grab from randomapi.com changed one of the fields to an incrementing number and inserted it using PutSQL. I then observed GenerateTableFetch create SELECT statements for over those events which I then passed to ExecuteSQL.
Once the comments above are addressed it looks good to me.

+1
Went through code and any comments were addressed. ran a contrib check build and verified against a MySQL DB. Thanks @mattyb149, I will merge it in.

The description of partition size here, and indeed the name seems a little unclear. Wouldn't partitionCount make more sense, since that is what it actually represents? As stands, it is not the size, or the number of rows, it is the devisor in the function that gives us rough number of rows.


add req resp test

Description

start a srver for test and new a conn to test server
test req and resp

tnx @Chyroc


Traffic Agent: Listen on a single port set by env or default to 9900

Description

Listen on a single port rather than two
Make that port 9900 by default, so it doesn't stomp on the application running in the same container
Make that port configurable
Accept either cleartext or TLS, not both

Related Issues
Fixes datawire/apro#1239
Testing
Manual testing with and without TLS
Tasks That Must Be Done

[x] Did you update CHANGELOG.md?
[x] Did you update documentation?

Docs LGTM


Let rkt api service provide a way to filter pods on cgroup path?

Ref https://github.com/google/cadvisor/pull/1154
As cadvisor watches the cgroup to know what containers are created. We probably need a way to match the cgroup path to the rkt pod. i.e. it should be able to answer the question that "What rkt pod's cgroup is foo/bar?"
IMO, a proper way would be let the rkt api service to answer the quesion.
Then for the implementation, should we craft the cgroup path in a pod manifest's annotation? Or let rkt api-service to search the /proc/PID/cgroup for the answer?
cc @alban @sjpotter @jonboulle
also cc @vishn @timstclair for the cadvisor team

Or let rkt api-service to search the /proc/PID/cgroup for the answer?

Yes, the API service could do that.
It could be a new field in "message Pod":
message Pod {
        string id = 1;
        sint32 pid = 2;
...
        string cgroupPath = 8;

The API service should just be careful not to give a cgroupPath if the pod state is for example "exited", in case the pid are recycled by the kernel.


Adding favicon to the website

Hey @akshitagupta15june I would like to  add favicon to the website please assign this issue to me

ok


[BUG] 854x534 resolution for the rgb camera for Oak-D Pro OV9782

Describe the bug
I keep getting a 854x534 resolution for the rgb camera when running any of the launch files.
egonzalez@c1:~/Desktop//dai_ws$ ros2 launch depthai_ros_driver rgbd_pcl.launch.py
[INFO] [launch]: All log files can be found below /home/egonzalez/.ros/log/2023-10-05-13-35-08-564200-c17573-28097
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [component_container-1]: process started with pid [28112]
[component_container-1] [INFO] [1696530909.076166978] [oak_container]: Load Library: /opt/ros/humble/lib/librobot_state_publisher_node.so
[component_container-1] [INFO] [1696530909.083813656] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<robot_state_publisher::RobotStatePublisher>
[component_container-1] [INFO] [1696530909.083884840] [oak_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<robot_state_publisher::RobotStatePublisher>
[component_container-1] [INFO] [1696530909.093979444] [oak_state_publisher]: got segment oak
[component_container-1] [INFO] [1696530909.094009062] [oak_state_publisher]: got segment oak-d-base-frame
[component_container-1] [INFO] [1696530909.094016578] [oak_state_publisher]: got segment oak_imu_frame
[component_container-1] [INFO] [1696530909.094021975] [oak_state_publisher]: got segment oak_left_camera_frame
[component_container-1] [INFO] [1696530909.094027598] [oak_state_publisher]: got segment oak_left_camera_optical_frame
[component_container-1] [INFO] [1696530909.094032847] [oak_state_publisher]: got segment oak_model_origin
[component_container-1] [INFO] [1696530909.094037960] [oak_state_publisher]: got segment oak_rgb_camera_frame
[component_container-1] [INFO] [1696530909.094043282] [oak_state_publisher]: got segment oak_rgb_camera_optical_frame
[component_container-1] [INFO] [1696530909.094048348] [oak_state_publisher]: got segment oak_right_camera_frame
[component_container-1] [INFO] [1696530909.094053332] [oak_state_publisher]: got segment oak_right_camera_optical_frame
[component_container-1] [INFO] [1696530909.095611368] [oak_container]: Load Library: /home/egonzalez/Desktop/Repos/amr-perception/dai_ws/install/depthai_ros_driver/lib/libdepthai_ros_driver.so
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/oak_state_publisher' in container 'oak_container'
[component_container-1] [INFO] [1696530909.148612049] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depthai_ros_driver::Camera>
[component_container-1] [INFO] [1696530909.148650689] [oak_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<depthai_ros_driver::Camera>
[component_container-1] [INFO] [1696530909.154471535] [oak]: No ip/mxid specified, connecting to the next available device.
[component_container-1] [INFO] [1696530911.353125087] [oak]: Camera with MXID:<PHONE_NUMBER>55860E00 and Name: 1.6 connected!
[component_container-1] [INFO] [1696530911.353856943] [oak]: USB SPEED: SUPER
[component_container-1] [INFO] [1696530911.374970905] [oak]: Device type: OAK-D-PRO-W-97
[component_container-1] [INFO] [1696530911.377170734] [oak]: Pipeline type: RGBD
[component_container-1] [INFO] [1696530911.609956062] [oak]: Finished setting up pipeline.
[component_container-1] [INFO] [1696530911.962042269] [oak]: Camera ready!
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/oak' in container '/oak_container'
[component_container-1] [INFO] [1696530911.963082592] [oak_container]: Load Library: /opt/ros/humble/lib/libdepth_image_proc.so
[component_container-1] [INFO] [1696530911.976285891] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::ConvertMetricNode>
[component_container-1] [INFO] [1696530911.976385658] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::CropForemostNode>
[component_container-1] [INFO] [1696530911.976425013] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::DisparityNode>
[component_container-1] [INFO] [1696530911.976458558] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::PointCloudXyzNode>
[component_container-1] [INFO] [1696530911.976492618] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::PointCloudXyzRadialNode>
[component_container-1] [INFO] [1696530911.976525260] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::PointCloudXyziNode>
[component_container-1] [INFO] [1696530911.976556757] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::PointCloudXyziRadialNode>
[component_container-1] [INFO] [1696530911.976589404] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::PointCloudXyzrgbNode>
[component_container-1] [INFO] [1696530911.976624586] [oak_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<depth_image_proc::PointCloudXyzrgbNode>
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/point_cloud_xyzrgb_node' in container 'oak_container'
[component_container-1] [ERROR] [1696530912.131242593] [point_cloud_xyzrgb_node]: Depth resolution (1280x720) does not match RGB resolution (1280x720)

This is my rgbd.yaml file
/oak:
  ros__parameters:
    camera:
      i_nn_type: none
    stereo:
      i_subpixel: true
    rgb:
      i_resolution: 800p

egonzalez@c1:~/Desktop/dai_ws$ ros2 topic echo /oak/rgb/image_raw --no-arr
header:
  stamp:
    sec:<PHONE_NUMBER>
    nanosec: 132337582
  frame_id: oak_rgb_camera_optical_frame
height: 534
width: 854
encoding: bgr8
is_bigendian: 0
step: 2562
data: '<sequence type: uint8, length: 1368108>'
---

I am using Ubuntu 22.04 and ROS2 Humble.

Hi, rgb node has a paramter i_set_isp_scale which resizes the output image, this is used for better alignment of depth in cameras with different sensors. If you set it to false, proper resolution will be output. More information here

@Serafadam That seemed to work, I am getting the 1280x800 resolution, but I am still unable to align the depth resolution with the RGB resolution. Before setting i_set_isp_scale to false, I was getting the following error:
[component_container-1] [ERROR] [1696530912.131242593] [point_cloud_xyzrgb_node]: Depth resolution (1280x720) does not match RGB resolution (1280x720)
Now I am seeing This error:
[component_container-1] [ERROR] [1696603932.537263935] [point_cloud_xyzrgb_node]: Depth resolution (1920x1080) does not match RGB resolution (1920x1080)
How do I get the the RGB image to align with depth?

Hi, could you provide outputs from the image topics?

ros2 topic echo /oak/rgb/image_raw
ros2 topic echo /oak/rgb/camera_info
ros2 topic echo /oak/stereo/image_raw
ros2 topic echo /oak/stereo/camera_info