Channels DVR support

Would be really nice if xteve could work out of the box with Channels DVR. Currently Channels DVR throws a tuner unavailable message when trying to tune to a xteve channel.

This is not due to xTeVe. Channels DVR does not accept xTeVe's streaming URLs. Channels DVR only accepts URLs that look exactly like those of an HD HomeRun tuner.
Plex and Emby work out of the box with the xTeVe URLs.

FYI, Channels DVR now allows you to create custom channels from streaming URLs. I setup and started using xTeve today to provide m3u/dummy xmltv data for my security camera streams. It's working fine with only one issue I can see so far, xTeve dummy names each episode by the name of the day of week and time slot, instead of a full date in the xml file it outputs. Channels DVR is pretty strict about not recording shows already recorded, so if you tried to record the same time slot on two separate WED's, only the first would record. If I could make xteve use the date instead of day of week to name episodes, it's would be a rock solid solution (well, it's pretty solid now, that ability would make it perfect). Glad I discovered xTeve, I currently wouldn't be able to record my camera streams without it, at least not without manually typing it out with daily changes. 👍


Update env var

Based on the Wordcraft docs (https://ai.google.dev/develop/sample-apps/wordcraft), this variable should be API_KEY (see step three in "Environmental Variables). User hits a console error if they do not change this.

Hi, I wasn't sure how to send this to the documentation maintainers. Submitting this as a pull request just in case anyone else gets stuck.


Seeing many blank windows being opened

It's not clear to me why Puppeteer is opening so many windows.
Also, it takes a long time before these windows browse to a URL, so all you're looking at is lots of about:blank tabs.
This is hindering debugging.

Ah I was on the wrong branch, that was why.


Enabling TLS with Let's Encrypt yields "502 Bad Gateway"

I have followed the Production Docker Deployment guide and the Configuring TLS on Mattermost Server instructions afterwards.
However, once I configure Listen Address, Connection Security, Forward port 80 to 443 and Use Let’s Encrypt and restart Mattermost (docker-compose restart), accessing the instance via HTTP/80 yields "502 Bad Gateway" and I cannot connect via HTTPS/443 either.
Should this normally work or is this a known limitation with the Docker setup?

Sorry, it looks like the port HTTPS/443 was not properly forwarded (and already used by another application).

Now I have the same issue on a cloud server (before I was using an internal VM with port forwarding from the router).
It looks like Mattermost just doesn't listen on Port 443, even though I configured it accordingly.

I wonder whether these lines really have to be uncommented, since it isn't mentioned in the Production Docker Deployment guide:
https://github.com/mattermost/mattermost-docker/blob/492ecd5ca3c761e309834ba0389dd13e7bc431d4/docker-compose.yml#L62-L64

I'm running into the same issue.
How to reproduce:

Follow the guide
sudo apt-get install git
git clone https://github.com/mattermost/mattermost-docker.git
cd mattermost-docker
docker-compose build
mkdir -pv ./volumes/app/mattermost/{data,logs,config,plugins,client-plugins}
sudo chown -R 2000:2000 ./volumes/app/mattermost/
docker-compose up -d

Create user and login to system console

Under Environment -> Web Server, make the following changes

Change listen address from 8000 to 443
Forward port 80 to 443: true
Connection Security: TLS
Use Let's Encrypt: true

Restart with docker-compose, and then when connecting I get 502 Bad Gateway.
The problem
502 Bad Gateway happens, because the nginx proxy is not aware of the SSL certificate configured inside the mattermost app container. When using the standard docker-compose.yaml, it loads the default web server. That server is just a nginx docker container, which loads one of these two configs on startup:

/etc/nginx/sites-available/mattermost
/etc/nginx/sites-available/mattermost-ssl

Looking at the web container's entrypoint, we can see that the SSL nginx config is only loaded when the certificate and private key are found in the right place:
https://github.com/mattermost/mattermost-docker/blob/1427315ef927914e0ee03fe230cc4a1b045ebdb7/web/entrypoint.sh#L7-L13
The bad gateway error is a result of changing the listen port in the web UI of the app without reconfiguring nginx, which will point to port :8000 no matter what:
https://github.com/mattermost/mattermost-docker/blob/1427315ef927914e0ee03fe230cc4a1b045ebdb7/web/entrypoint.sh#L5
Solution
Still looking into this. But I guess there are two options:

Use the mattermost web UI to configure SSL + letsencrypt, but then add APP_PORT_NUMBER to the docker-compose file under web, such that the web proxy points at port 443 instead of 8000.
Don't use the mattermost web UI to configure SSL. Instead, do it with the nginx config files and by putting the certificates in the right place, i.e.

./volumes/web/cert/cert.pem
./volumes/web/cert/key-no-password.pem

as described here: https://github.com/mattermost/mattermost-docker#install-with-ssl-certificate

I wonder whether these lines really have to be uncommented, since it isn't mentioned in the Production Docker Deployment guide:
https://github.com/mattermost/mattermost-docker/blob/492ecd5ca3c761e309834ba0389dd13e7bc431d4/docker-compose.yml#L62-L64

As far as I can tell this environment variable is not used anywhere and is probably a leftover from the past.

SSL works without issues when copying the certificate and private key to ./volumes/web/cert/

@potaito Where do the certificate and private key come from? And how can the certifcate be automatically renewed if I have to copy it manually?

@caugner I ran the letsencrypt certbot outside of docker and set it up on the host, then manually copied the certificates
cp /etc/letsencrypt/live/mysite/cert.pem ./volumes/web/cert/cert.pem
cp /etc/letsencrypt/live/mysite/privkey.pem ./volumes/web/cert/key-no-password.pem

Now I'm going to either renew the certificate automatically on the host and copy the new certificates with the cronjob, or setup another docker container that fetches and copies the letsencrypt certificate. I think the second option is the cleanest, since it allows to configure the letsencrypt task outside of mattermost (or any other app in that regard) and is therefore independent of the application.

@potaito In general, I would expect Mattermost to offer automatic renewal of LE certificates out of the box.
Specifically, I don't see how the LE certificate could be renewed without stopping Mattermost temporarily, since the ACME request would normally be passed to Mattermost, except if we stop it and allow certbot to start a webserver on the port usually used by Mattermost.

@caugner LE certbot can be run with   --webroot         Place files in a server's webroot folder for authentication which should allow to keep the mattermost application running, though I have not tried it yet.

@potaito The webroot is inside the web container, so I would doubt that certbot can easily place the files there.

@caugner Can't we mount webroot as read-only in the nginx container, and mount the same webroot as read-write in the letsencrypt container?

@potaito You're right, that should work.
But I guess we can agree that it would be better if LE worked without any workaround like this?
Maybe @ventz or @cpanato can tell if LE is supposed to work out of the box?

Did you try the first possible solution I mentioned?

Solution
Still looking into this. But I guess there are two options:
1. Use the mattermost web UI to configure SSL + letsencrypt, but then add `APP_PORT_NUMBER` to the docker-compose file under `web`, such that the web proxy points at port `443` instead of `8000`.

2. Don't use the mattermost web UI to configure SSL. Instead, do it with the nginx config files and by putting the certificates in the right place, i.e.

I'm pretty sure LE works inside mattermost as well, but the web proxy is not automatically modified (changing the port) since it lives outside the mattermost application.

hi @potaito ,
I am struggling with the second option.
after copying the cert files into the web/cert folder. I start all containers but when I try to connect, the connection times out... is there any config I need to change in docker-compose.yml file?

Hey @teodorkasap

Did you copy the key and the chain to the right place?
Did you copy the correct files?cp /etc/letsencrypt/live/<site>/fullchain.pem ./volumes/web/cert/cert.pem
cp /etc/letsencrypt/live/<site>/privkey.pem ./volumes/web/cert/key-no-password.pem

Did you use a passphrase when creating the ssl key? The configuration expects no password, else it won't work.

The way SSL works in this setup is that upon starting with docker-compose, the entrypoint checks if the certificate exists:
https://github.com/mattermost/mattermost-docker/blob/7fd2eb47a91a975a855270c0ace8efadb7cea0fc/web/entrypoint.sh#L7-L12
If the files /cert/cert.pem and /cert/key-no-password.pem exist, the ssl config for NGINX is automatically loaded. Your terminal should print somehwere

"found certificate and key, linking ssl config"

it this step was succesful, or

"linking plain config"

if the plain configuration without SSL is loaded for nginx.

Thank you for the speedy response.
I've copied files to the right folder. However I don't see either output in
the terminal when I do
docker-compose up - d
Without certificate files in the mentioned folder therefore without
encryption it works fine though I don't see the line printed in terminal as
you mentioned.
On Fri, Apr 17, 2020, 18:10 alessandro<EMAIL_ADDRESS>wrote:

Hey @teodorkasap https://github.com/teodorkasap

Did you copy the key and the chain to the right place?
Did you copy the correct files?

cp /etc/letsencrypt/live//fullchain.pem ./volumes/web/cert/cert.pem
cp /etc/letsencrypt/live//privkey.pem ./volumes/web/cert/key-no-password.pem

Did you use a passphrase when creating the ssl key? The
configuration expects no password, else it won't work.

The way SSL works in this setup is that upon starting with docker-compose,
the entrypoint checks if the certificate exists:
https://github.com/mattermost/mattermost-docker/blob/7fd2eb47a91a975a855270c0ace8efadb7cea0fc/web/entrypoint.sh#L7-L12
If the files /cert/cert.pem and /cert/key-no-password.pem exist, the ssl
config for NGINX is automatically loaded. Your terminal should print
somehwere
"found certificate and key, linking ssl config"
it this step was succesful, or
"linking plain config"
if the plain configuration without SSL is loaded for nginx.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/mattermost/mattermost-docker/issues/450#issuecomment-615299352,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB4XXBOMBYNLRRCMGZVNRGTRNBWPRANCNFSM4KX5J6HQ
.

I've followed these steps exactly
https://forum.mattermost.org/t/mattermost-recipe-using-lets-encrypt-for-tls-certificates-with-mattermost-docker/7596

Thank you for the speedy response. I've copied files to the right folder. However I don't see either output in the terminal when I do docker-compose up - d Without certificate files in the mentioned folder therefore without encryption it works fine though I don't see the line printed in terminal as you mentioned.
…
On Fri, Apr 17, 2020, 18:10 alessandro @.***> wrote: Hey @teodorkasap https://github.com/teodorkasap 1. Did you copy the key and the chain to the right place? 2. Did you copy the correct files? cp /etc/letsencrypt/live//fullchain.pem ./volumes/web/cert/cert.pem cp /etc/letsencrypt/live//privkey.pem ./volumes/web/cert/key-no-password.pem 3. Did you use a passphrase when creating the ssl key? The configuration expects no password, else it won't work. The way SSL works in this setup is that upon starting with docker-compose, the entrypoint checks if the certificate exists: https://github.com/mattermost/mattermost-docker/blob/7fd2eb47a91a975a855270c0ace8efadb7cea0fc/web/entrypoint.sh#L7-L12 If the files /cert/cert.pem and /cert/key-no-password.pem exist, the ssl config for NGINX is automatically loaded. Your terminal should print somehwere "found certificate and key, linking ssl config" it this step was succesful, or "linking plain config" if the plain configuration without SSL is loaded for nginx. — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#450 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB4XXBOMBYNLRRCMGZVNRGTRNBWPRANCNFSM4KX5J6HQ .

Use docker compose up without the -d --detach option.  You can shut it down with CTRL+c later.

Or just type: docker compose logs -f

I am a noob when it comes to docker as you can tell :) Anyway ...
I have done as you said. The output is below
according to these. actually web container can see the certificates and do what is necessary. I can see the requests, my phone app (android 9, oneplus 3003) is making. However I can neither connect through this app nor from desktop browser...
Starting mattermost-docker_app_1 ... done
Starting mattermost-docker_db_1  ... done
Starting mattermost-docker_web_1 ... done
Attaching to mattermost-docker_db_1, mattermost-docker_web_1, mattermost-docker_app_1
app_1  | Using existing config file /mattermost/config/config.json
app_1  | Using existing database connection
db_1   | AWS_ACCESS_KEY_ID is required for Wal-E but not set. Skipping Wal-E setup.
db_1   | AWS_SECRET_ACCESS_KEY is required for Wal-E but not set. Skipping Wal-E setup.
db_1   | WALE_S3_PREFIX is required for Wal-E but not set. Skipping Wal-E setup.
db_1   | AWS_REGION is required for Wal-E but not set. Skipping Wal-E setup.
db_1   |
db_1   | PostgreSQL Database directory appears to contain a database; Skipping initialization
db_1   |
db_1   | LOG:  database system was interrupted; last known up at 2020-04-19 10:16:07 UTC
web_1  | found certificate and key, linking ssl config
db_1   | LOG:  database system was not properly shut down; automatic recovery in progress
db_1   | LOG:  redo starts at 0/1D55040
db_1   | LOG:  record with zero length at 0/1D58A58
db_1   | LOG:  redo done at 0/1D57468
db_1   | LOG:  last completed transaction was at log time 2020-04-19 10:16:11.87017+00
db_1   | LOG:  MultiXact member wraparound protections are now enabled
db_1   | LOG:  database system is ready to accept connections
db_1   | LOG:  autovacuum launcher started
app_1  | Starting mattermost
db_1   | ERROR:  relation "idx_teams_description" does not exist
db_1   | STATEMENT:  SELECT $1::regclass
db_1   | ERROR:  duplicate key value violates unique constraint "users_username_key"
db_1   | DETAIL:  Key (username)=(surveybot) already exists.
db_1   | STATEMENT:  insert into "users" ("id","createat","updateat","deleteat","username","password","authdata","authservice","email","emailverified","nickname","firstname","lastname","position","roles","allowmarketing","props","notifyprops","lastpasswordupdate","lastpictureupdate","failedattempts","locale","timezone","mfaactive","mfasecret") values ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$20,$21,$22,$23,$24,$25);
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:19:58 +0300] "GET /api/v4/system/ping?time=1587291597550 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:19:59 +0300] "GET / HTTP/1.1" 301 162 "-" "curl/7.66.0" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:19:59 +0300] "POST /api/v4/channels/members/me/view HTTP/1.1" 301 162 "-" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A3003 Build/PKQ1.181203.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.162 Mobile Safari/537.36" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:01 +0300] "GET /api/v4/system/ping?time=1587291597550 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:10 +0300] "GET /api/v4/system/ping?time=1587291609089 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:13 +0300] "GET /api/v4/system/ping?time=1587291609089 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:21 +0300] "GET /api/v4/system/ping?time=1587291620415 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:24 +0300] "GET /api/v4/system/ping?time=1587291620415 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:30 +0300] "GET / HTTP/1.1" 301 162 "-" "curl/7.66.0" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:32 +0300] "GET /api/v4/system/ping?time=1587291631681 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:35 +0300] "GET /api/v4/system/ping?time=1587291631681 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:44 +0300] "GET /api/v4/system/ping?time=1587291642963 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:46 +0300] "POST /api/v4/users/logout HTTP/1.1" 301 162 "-" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A3003 Build/PKQ1.181203.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.162 Mobile Safari/537.36" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:47 +0300] "GET /api/v4/system/ping?time=1587291642963 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:51 +0300] "POST /api/v4/users/logout HTTP/1.1" 301 162 "-" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A3003 Build/PKQ1.181203.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.162 Mobile Safari/537.36" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:20:58 +0300] "GET /api/v4/system/ping?time=1587291657288 HTTP/1.1" 301 162 "-" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A3003 Build/PKQ1.181203.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.162 Mobile Safari/537.36" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:21:01 +0300] "GET / HTTP/1.1" 301 162 "-" "curl/7.66.0" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:21:03 +0300] "GET /api/v4/system/ping?time=1587291657288 HTTP/1.1" 301 162 "-" "Mozilla/5.0 (Linux; Android 9; ONEPLUS A3003 Build/PKQ1.181203.001; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/80.0.3987.162 Mobile Safari/537.36" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:21:06 +0300] "GET /api/v4/system/ping?time=1587291665346 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:21:09 +0300] "GET /api/v4/system/ping?time=1587291665346 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:21:17 +0300] "GET /api/v4/system/ping?time=1587291676531 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:21:20 +0300] "GET /api/v4/system/ping?time=1587291676531 HTTP/1.1" 301 162 "-" "okhttp/3.13.1" "-"
web_1  | <IP_ADDRESS> - - [19/Apr/2020:13:21:31 +0300] "GET / HTTP/1.1" 301 162 "-" "curl/7.66.0" "-"

guys I am very embarrased. our admin forgot to enable the 443 port this was the reason it did not work. Sorry I wasted your time. Thank you all for your time.

@teodorkasap no worries :smile:


Brand colour tweaks

I've aligned the tints/shades with the brand guidelines. There are some minor visual differences that we'll discuss internally.

Notable changes (all screenshots from new):

better?

hover state unintentionally broken before

worse? this was a purple/teal blend which makes some sense as it's displayed alongside the gradient
we'd need to just have this as a special case somehow on neither colour scale

I think the search highlighting is now too dark:


Level 200 - CloudFront with WAF Protection issues

Lab Link: https://wellarchitectedlabs.com/Security/200_CloudFront_with_WAF_Protection/Lab_Guide.html#1-launch-instance
1. Steps 5.2 thru 5.7 are missing images
2. In Step 5.7, provided user data script is missing new line characters that should seperate commands the
Screenshots:

Thank you @DanielTatarkin was markdown formatting error.


Add json_object_update_new, json_object_update_existing_new and json_object_update_missing_new

Fixes #281

Coverage remained the same at 95.334% when pulling 8682f2aab3891a53c30c5b47490a2814cb41f340 on AllenX2018:fix-issue281 into c436bec6821dd6181a2ff9f5f7e32cc37005e10d on akheron:master.

I edited the PR title and first comment so that

the referenced issue is automatically closed when this PR is merged
looking at merged PRs makes it easier to update the CHANGELOG by looking at the PR titles


Jaidenspad

Jaiden's Hackpad
This is a hackpad featuring 3 rotary encoders, 12 keys, and 2 OLED screens. The design itself is inspired in part by Dieter Rams' "Prototype for a TV set" (1974).
The firmware allows for pretty easy customiztion, featuring a "switching" feature, allowing a user to switch between different keyboard layouts/settings.
The hardest challenge was fitting everything into the 100mmx100mm space. Originally, I had planned to use a few more switches, but I couldn't fit it into the space I had. Additionally, the CAD required me to think carefully about how I would assemble the piece easily.
A video of the assembly is located in the CAD folder, entitled, "assembly_video_example.mp4". Additionally, a render can also be found in the CAD folder, entitled "screenshot".
Bill of Materials

1x Seeed Studio XIAO RP2040
15x Through-hole 1N4148 Diodes
3x 10k Through-hole Resistors
12x Cherry MX Switches
12x Keycaps (I don't know much about keycaps... the standard ones?)
3x EC11 Encoders
1x PCF8574A
2x SSD1306 0.91 inch OLED 4 pin (128x32) boards (hopefully with a place to solder a jumper to change the I2C address on the back)
2x Header female 4x1 pitch 2.54mm

Additionally,

1x M3 Screw (preferably a 15mm long screw)
White filament (if possible!) for the case pieces.

Visuals

Screenshot (not rendered) of the hackpad.
https://github.com/user-attachments/assets/7227c056-be2e-4909-8a3b-4b23017a4416
Assembly video of the hackpad! (little scuffed haha, the switches will need to be inserted into the top part of the case before soldered). The hackpad will also use some glue, explaining the lack thereof screws.
slack: Jaiden G

CRAZYYYYYYYYYYYYYYYYYYYYYY cool stuff!!! Get your hackpad here: https://forms.hackclub.com/hackpad


Codename Jump .AB doesn't have UnityFS header

the asset was from SEA CBT
https://drive.google.com/file/d/1bLfAUttjIuSGo29gM_QcC1lk2KnS8cwP/view?usp=sharing

it seems that in CBT they changed encryption so i hope you could do something about it

Greetings,
It is possible to dump the key from global-metadata.dat and replace it with the existing one to support that version.


RealSense fails to launch sometimes

RealSense sometimes fails to launch with following messages. It can be solved by restarting people docker repeatedly.
people_1        | [ WARN] [1615171556.444876947]: Hardware Notification:Depth stream start failure,1.61517e+12,Error,Hardware Error
people_1        |  08/03 11:45:56,698 WARNING [140009374414592] (messenger-libusb.cpp:42) control_transfer returned error, index: 768, error: No data available, number: 61
people_1        | [ WARN] [1615171557.445230250]: Hardware Notification:IR stream start failure,1.61517e+12,Error,Hardware Error
people_1        | [ WARN] [1615171558.445528332]: Hardware Notification:USB REC overflow,1.61517e+12,Error,Hardware Error
people_1        |  08/03 11:45:58,961 ERROR [140008885569280] (uvc-streamer.cpp:106) uvc streamer watchdog triggered on endpoint: 130
people_1        | [ WARN] [1615171559.445798236]: Hardware Notification:USB CAM overflow,1.61517e+12,Error,Hardware Error
people_1        | [ WARN] [1615171561.446199086]: Hardware Notification:IR stream start failure,1.61517e+12,Error,Hardware Error
people_1        |  08/03 11:46:01,750 WARNING [140009374414592] (messenger-libusb.cpp:42) control_transfer returned error, index: 768, error: No data available, number: 61

I think this is caused by the update of linux kernel used by people docker, and need to update RealSense ROS from 2.2.21 to 2.2.22.

This issue is solved by https://github.com/CMU-cabot/cabot/pull/8


TextOutput ignores the --verbose and --quiet command-line flags

The TextOutput class takes two arguments named verbose and quiet that both default to false:
https://github.com/scalastyle/scalastyle/blob/master/src/main/scala/org/scalastyle/Output.scala#L68
However, the only use of TextOutput does not supply these arguments:
https://github.com/scalastyle/scalastyle/blob/bb276857d5841aa863f66e0aca817fef83fecedd/src/main/scala/org/scalastyle/Main.scala#L112
... so they always default to false, even if the user supplies --verbose or --quiet on the command line.
I can submit a pull request to fix this if that is okay with you.

A corollary of this issue is that the --verbose flag is actually completely ignored by scalastyle

A PR would be great.


Give more priority to d-none

Similar to #29880...
We use d-none to control visibility of the element by adding/removing this class programmatically. However, it does not work if the element is at the same time using e.g. d-flex.
A simple solution to this use-case would be to give d-none more priority by putting it at the end of the display utilities. What do you think about that?

I'm ok with that, feel free to open a PR.


Enhancement Proposal: Keyboard shortcut helpers for cross-platform portability

Enhancement Proposal
tl;dr of problem
GUI keyboard shortcuts risk breaking when projects are moved between platforms:

There are cross-platform conventions for the letters of common keyboard shortcuts (A for select all, C for copy, V for paste, etc).
Mac prefers the Cmd modifier key while everything else prefers Ctrl

Here's an example from #931:
# Doesn't work on Mac since it uses MOD_CMD
if symbol == pyglet.window.key.A and modifiers & pyglet.window.key.MOD_CTRL:
    self._caret.select_all()

Addressing this seems to be in-scope for pyglet since it's an input abstraction rather than a game framework feature.
Potential Approaches

Add platform-dependent MOD_PLATFORM_* imports to the pyglet.key module
Add abstractions to the pyglet.input module
Extend KeyStateHandler

For #931, we may already have relevant helpers in the form of key.MOTION_*, key.UNDO, and other helpers. I'll investigate this further in a bit.

Nvm, this is already covered by MOD_ACCEL.


Reverse script of process_sql.py

Dear Tao Yu,
Thanks for your data!
Well, since you provide the script to process the sql query string into a formatted json object, I wonder if you also have a standardized script to reverse that process?
That is, given a parsed sql json file like follows, do you have the script to convert it back into a sql query string "SELECT avg(LifeExpectancy) FROM country WHERE Name NOT IN (SELECT T1.Name FROM country AS T1 JOIN countrylanguage AS T2 ON T1.Code  =  T2.CountryCode WHERE T2.Language  =  \"English\" AND T2.IsOfficial  =  \"T\")"?
"sql": {             "except": null,             "from": {                 "conds": [],                 "table_units": [                     ...             },             "groupBy": [],             "having": [],             "intersect": null,             "limit": null,             "orderBy": [],             "select": [                 ...             ],          ...     }
Or, do you also have a evaluation script that compare two sqls based on their parsed json files?
Thanks in advance.
Best Regards,
Yi Zhao

@zhaoyizhaoyi have you ended up implementing the reverse script by any chance?

@Meidan No, I haven't. Actually, I am expecting such a script from the authors of Spider as the official standard.

We don't provide the reverse script.

By any chance, has the requested script been developed by anyone?

@Meidan No, I haven't. Actually, I am expecting such a script from the authors of Spider as the official standard.

Has the script been implemented by any chance?


MERFISH data

Hi, thank you for developing such an interesting tool. As I understood this method is made for Visium-like data where the transcripts measured per spot. But is it possible to use this tool for MERFISH date analysis? Where one measure genes not spots, which mean there is no 'counts' parameter in the final .csv result table.
''The file of detected RNAs should follow the following format in a tab-delimited file:
geneID  row  column  counts''
Thank you in advance!

Hi, SCS can work with MERFISH data. For the RNA count input file, you can fill in the count column with 1's. However, the FISH-based data is usually very high resolution, we suggest you reduce the resolution by gridding the spatial data. Then treat each grid as a spot and aggregate RNAs detected in the grid into the spot. For example, you can divide each coordinate value by a factor and then round it to an integer. We show examples of applying SCS to FISH-based data in the supplementary file of our paper.


normalize is no longer part of BS

normalize is no longer part of BS

Well since 3.0 is still active ... forget this.

Support for v3 has mostly ceased (see : https://github.com/twbs/bootstrap/issues/20631)
So IMO you should open your PR


Sveltekit update

Updating sveltekit plugin
Updates:
. The output folder for serving (.sveltekit) generated at the root of the project folder is no longer but instead in the dist folder.
. The tsconfig generated by sveltekit now extends the tsconfig.base (only on build, needs adjust for serving)

I'll close this. The nature of how sveltekit works changed again and now we need to change the build process to vite 3


Fatal error Step 3 - example 1dpx.pdb

I report this issue in the step3.py
WARNING: Delphi failed at focusing depth 1 of NTR01A0001_001, retry
FATAL: too many failed delphi runs (10), quitting...
Fatal error reported by conf_energies(), QUIT.
11:17:05: Thread 0: finishing
11:17:09: Main: join thread 0
11:17:09: Main: Done

This is usually caused by delphi error. To test it, run
delphi
Check if delphi program can run.


python310Packages.pkginfo2: init at 30.0.0

Description of changes
Query metadatdata from sdists, bdists or installed packages"
https://github.com/nexB/pkginfo2

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 172534 run on x86_64-linux 1

2 packages built:

python310Packages.pkginfo2
python39Packages.pkginfo2


python310Packages.lightwave2: 0.8.16 -> 0.8.17

Description of changes
Update to latest upstream release 0.8.17

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 200653 run on x86_64-linux 1

2 packages built:

python310Packages.lightwave2
python39Packages.lightwave2


new Solution does not build when creating from visual studio template

Describe the bug
Try to build a new sln created from template get a build error in the domain and shared projects about sytlecop.json could not be found
To Reproduce
Steps to reproduce the behavior:
create a new sln from the visual studio  FullStackHero WebAPI Boilerplate
Expected behavior
sln should build

does it work from CLI?

I see this issue with Visual Studio only. The normal CLI way works.
https://fullstackhero.net/dotnet-webapi-boilerplate/general/getting-started/#creating-your-first-solution
Please refer to the above guide and use the first option.
I will try to fix the issue created when VS creates the solution.
Thanks for pointing it out.

@dsoltesz I see that when VS creates the solution, there are 2 .sln files.

In the root folder -> this doesn't work.
Inside the project folder -> this one works.

Can you please test this and let me know?

Got it. While creating a new solution, just make sure to place both the solution and projects in the same folder. I am attaching screenshots below. This should do the trick. I was able to build the project. The only minor thing I noticed is , the folder structure is lost in Visual Studio. But that's something very minor.

Do let me know if it works for you now.

That does work though we probably don't want to force people to have to click that option


Base Controller plugins parsing refactored

This will fix #70

Coverage increased (+1.19%) to 77.04% when pulling 92ff44eee45cd0091716b565843a66e4c93f59dc on fix/plugins-parsing into 2b919f94b4cf5e9c7767578c2490c8bc8171d45b on master.

Coverage increased (+1.19%) to 77.04% when pulling 92ff44eee45cd0091716b565843a66e4c93f59dc on fix/plugins-parsing into 2b919f94b4cf5e9c7767578c2490c8bc8171d45b on master.

Note to myself: I took the wrong approach. I should bring back the parsing of parameters as it used to be before, and instead override the POST and PUT method only in the plugins controller. This also means reverting back the validations of schemas, but still making parse_params a static method in base_controller.lua.

Coverage increased (+1.17%) to 77.02% when pulling 45359bfe0c49313c750da495aedbe7fde812d3a0 on fix/plugins-parsing into 2b919f94b4cf5e9c7767578c2490c8bc8171d45b on master.

Coverage increased (+0.87%) to 76.73% when pulling c2efe358be951a874f43cbf278b3f6ec82ea9a4e on fix/plugins-parsing into 2b919f94b4cf5e9c7767578c2490c8bc8171d45b on master.


Add thread pool executor to aggregation

plus logging updates

I know you're responding to an incident and having to roll fast on this stuff (:heart:), but when you get a chance, do you mind filling in the description more for the thinking behind "Add thread pool executor to aggregation", the problem and what this solves? This'll be big for me understanding it to review as well as understanding how it may affect how we do things in Enterprise (esp since we run lock aggregate runs - or will once I get that bit load tested more :D).

@bnferguson it might be more of an intermediate emergency solution, i guess
longterm i think it would be good to remove the loop that checks for aggregatable log ids, and instead trigger/schedule aggregation when we receive the final log part. that would make the whole thing more scalable (as far as i understand we can still only run a single aggregation process at the moment).

@svenfuchs That makes sense! Mostly trying to understand how this works and how it may affect Enterprise installs if things go a little weird.
I really like your plan for the future, totally agree that it'd make things a lot more scalable. Also remove the need for locking in HA setups. 💃

@meatballhat @svenfuchs - With this merged and things going event based, is https://github.com/travis-ci/travis-logs/pull/70 even needed anymore for future Enterprise releases branched off of master?


.csproj names with space can throw an error when attemping to run tests

The used GdUnit extension version:

v2.2.5
The used Visual Studio Code version:

1.70.0
The used Godot version:

v3.5.stable.mono.official [991bb6ac7]
OS including version:

Windows 10
Describe the bug

The test runner will fail when given a .csproj whose name contains spaces and the following error is thrown:
[EXCEPTION]: Command failed: dotnet build c:\src\my-project\My Project.csproj -verbosity:m
I'm guessing that this could potentially be fixed by including quotes around the path (projectFile) when issuing the build command here in src/testRunner.ts:
e.g.
const fullCommand = `dotnet build "${projectFile}" -verbosity:m`; //
Steps to Reproduce

Create a new project within Godot Mono
Use a name with a space (ex. My Project)
Open the project in vscode and attempt to run test ing GdUnit Test Explorer

Thanks for reporting this issue
Yes this should be easy fixed by uning quotes.


Add Counts object

Summary
This commit adds a new class qiskit.result.Counts which is a dict
subclass for dealing with count results from experiment. It takes in a
counts dictionary with hexadecimal string keys and it's data is a binary
string, like the output of get_counts(). The idea is that this class
contains extra attributes about the execution and helper methods for
interacting with counts results. It can be used as a direct replacement
anywhere a counts dictionary was used previously. It is also now the
return type for qiskit.quantum_info.QuantumState.sample_counts().
This commit is part of the v2 providers interface work and will be a key
part of the new providers interface. This class is split out as a
seperate commit/PR from #4485.
Details and comments

Oh, oops I wrote tests but forgot to add it to the commit. Fixed in: https://github.com/Qiskit/qiskit-terra/pull/4501/commits/f433cbd8ea25d95bbac6670061e8791a2d7b027f

As for the printing it will work exactly the same as the dict does from Result.get_counts() (assuming you pass in the classical register and memory slots as kwargs). There's no need to add a __str__ or __repr__ since this class is essentially just a dict that does the post-processing up front at object init and has a few extra helpers.

Accidentally submitted before writing my main comment in the review. My main issue with this is if we are adding a class abstract why are we forcing ourselves to use the hex-string format when initializing. Regardless of what internal representation this class uses to store counts I think it should be able to be initialized from hex string counts, binary string counts, or integer key counts, and also apply conversion to any of these formats from whatever format it was initialized (you have one method for this for converting to int keys).

Another issue is that the counts from QuantumState aren't always bitstrings. They can be any dit string because they allow arbitrary dimension qudit subsystems. For example:
state = qi.Statevector([1, 1, 1, 1, 1, 1, 1, 1, 1], dims=[3,3]) / 3
state.sample_counts(1000)

will return {'00': 121, '01': 109, '02': 114, '10': 113, '11': 106, '12': 114, '20': 117, '21': 104, '22': 102}

Accidentally submitted before writing my main comment in the review. My main issue with this is if we are adding a class abstract why are we forcing ourselves to use the hex-string format when initializing. Regardless of what internal representation this class uses to store counts I think it should be able to be initialized from hex string counts, binary string counts, or integer key counts, and also apply conversion to any of these formats from whatever format it was initialized (you have one method for this for converting to int keys).

This is a fair point I was thinking about doing this, but kept it simple. I'll work on adding the arbitrary conversions between the 3 forms. The default data format will still have to be the bitstrings for backwards compat with v2

Another issue is that the counts from QuantumState aren't always bitstrings. They can be any dit string because they allow arbitrary dimension qudit subsystems. For example:
state = qi.Statevector([1, 1, 1, 1, 1, 1, 1, 1, 1], dims=[3,3]) / 3
state.sample_counts(1000)

will return {'00': 121, '01': 109, '02': 114, '10': 113, '11': 106, '12': 114, '20': 117, '21': 104, '22': 102}

I actually think this will work as is today. Right now it calls result.postprocess.format_counts on the input which will only do anything if the string starts with 0x or creg_sizes and/or memory_slots  are set. The helper methods will fail because Counts.hex_raw keys will be qudit strings instead of hex strings, but the Counts object will work fine as the dict is being used today. That being said I'll try to handle this in the next revision too.

I actually like the metadata. Much easier to access than from the Results. Also nice since direct access to the results is something we are moving away from.


Cannot access the swagger-ui visual interface

I have a basic configuration in my Spring boot initializer:
@SpringBootApplication(exclude = ErrorMvcAutoConfiguration.class)
@EnableSwagger2
public abstract class ServiceInitializer {
............................................................................
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build()
.apiInfo(apiInfo());
}
And when I try to access the docu I get the json from here
http://localhost:8080/service-webapp/v2/api-docs
I see I got theses 2 endpoints mapped
Mapped "{[/v2/api-docs] ...  Mapped "{[/swagger-resources]}"
But there is no swagger-ui.html mapped anywhere ?
All i get is the json in text format. I want to get the good looking ui interface
but not sure what I'm doing wrong.
Is it because of my older dependencies ?
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger-ui</artifactId>
        <version>2.0.1</version>
    </dependency>

    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger2</artifactId>
        <version>2.0.1</version>
    </dependency>

I cannot use newer ones because of conflicting dependencies with spring boot.
Thanks.

Thats because you have @SpringBootApplication(exclude = ErrorMvcAutoConfiguration.class) you have to register the mvc resource handlers for swagger ui manually.

Also anything before 2.2 is a fairly buggy codebase and is not going to be compliant with the swagger spec completely (we released before swagger team released their library)

Any resources available on adding the mvc handlers manually for swagger ? I'm new to this stuff...

The springfox-demo project has examples


Update raylib_api.* by CI

Ensure raylib_api.* is always updated.
parser/output/raylib_api.* may be outdated and generating bindings from them will result in an error.
For example, raylib_api.* in tag 5.0 remains unupdated.
The purpose of this PR is to prevent such things.

@seiren-games Really nice addition! Thank you very much!


optimise server calls

First we need to decorate service calls with FunctionUtilities.time(label, () -> fn())


Flask-FeatureFlags abandoned - PEP 541 transfer

Per #1506 and PEP 541, I'd like to ask you to transfer the ownership of https://pypi.org/project/Flask-FeatureFlags/ to me (user name georgelundgds).
No pull requests have landed on the original source at https://github.com/trustrachel/Flask-FeatureFlags since 2015, and multiple attempts to contact the author have failed. The address listed on pypi is not currently accepting emails.
We need to update this (tiny) library for compatibility with Flask 1.0.
Please advise on the necessary steps. For data protection reasons I'll provide any evidence needed via a non-public channel.
Thanks
George

+1

Hello @galund, I've sent an email to @trustrachel regarding your request but, as you mention, it is no longer accepting incoming emails. Hopefully we can hear back through this issue and clarify the position about this package.
In the meantime, and according to the project transferral rules in PEP 541, could you provide a currently maintained fork of the project?

Hi, I'm afraid because the project was abandoned and we had no response, we stopped using this library, and so no longer maintain a fork. The fork we had is archived at https://github.com/alphagov/Flask-FeatureFlags/

Thanks for letting us know, and sorry for the delay in responding to this issue.


Scalar should use Git's background maintenance (drop Scalar.Service from Windows)

With background maintenance incorporated into Git, we should be able to drop the Service projects from Scalar entirely now.
I attempted this briefly in #472, but there are some subtleties regarding the installation process that I didn't have time to focus on.
Here is a rough outline of the work involved:

[x] Bring in the commits from  git-for-windows/git#2974 into microsoft/git (similar to microsoft/git#304)
[x] Update ConfigStep to run git maintenance start on all platforms.
[ ] Delete service code from Windows platform.
[ ] Ensure that the post-install steps run the config step on every registered repo.

Depending on how quickly I get the C port done, this might soon actually be quite pressing: how would we upgrade users transparently? Upon installation of the contrib/scalar-based Git, run an "upgrade" verb (to be implemented)? But that would potentially run into trouble when users might want to downgrade to .NET-based Scalar e.g. because they have to work around a bug in the new Scalar...

We are intending to use the git upgrade-microsoft-git functionality (which is not yet renamed from git upgrade-git-for-windows).
I don't think we should worry about users wanting to downgrade to the .NET version, because we won't ship it until we are comfortable with it. We will transition users to it slowly.
If a user does need to change versions, then the only way to do so will be to manually uninstall one version and then manually install the other as downloaded from the GitHub releases page.

Closing this because the Scalar CLI in microsoft/git does this.


Wrong "getting started" link during first launch

What steps will reproduce the problem?

Install the app (version 5.4.1).
Start it. First launch window should appear.
Click on "getting started" link.

What is the expected behavior? What do you get instead?
Page with 404 error.
The link points to https://bionus.github.io/imgbrd-grabber//wiki/GettingStarted instead of https://github.com/Bionus/imgbrd-grabber/wiki/GettingStarted
How often does this problem occur?
Every time when displaying first launch windows
What version of the program are you using? On what operating system?
5.4.1
Windows 10
Please provide any additional information below

Indeed, after I created the website, seems like the link is off.
I'll update that in next version, thanks! :+1:
It's unfortunate the new users of the past month couldn't access this page given how useful it can be.


Monitor Cadastral points man_made=survey_point was moved

These points should almost never move without a very good source tag like "survey"
They are critical and accidental moves are a problem. Easy to revert though as the are usually just simple points.
Use case: Newbie mapping well survey Island, during Hurricane Irma. See photo of points that would be very damaging if moved by new mappers helping during a hurricane or other major event.

@bgirardot can you please stick to the issue ticket template. It helps us a lot ✌

I'll look again, but where to leave a feature request is not clear in the osmcha website. It links here.
Also the template references a non existent directory the doc/ directory, it is not in this repo. I lost confidence in it then :) Or I am just not understanding something. that is usually the case.

Ok, I followed the template which was bug report focused, i hope it helps. sorry for ignoring the template the first time, just did not seem to appy to me, but i saw other issues that looked like feature requests.
resubmitted as issue #202


Allow to not snap to current child

Could you add an option to disable snapping to the current child?
The way we were using it this directive is with a big element that contained everything. The fact that we only have one child makes this directive go to the start everytime we scroll.

Hi @santialbo
Like a snap-disabled attribute that disable snap functionality for all children?

Yes, I don't mind and long as I'm able to disable the feature (which I think it's cool, it's just that it doen't work on my case).
Thanks a lot for the good work and for open sourcing it :)

@santialbo
You are welcome, I have published 1.4.1 which introduces the snap-disabled attribute.


CONTRIBUTING.md should be improved to direct users to the repo for the vast majority of formula-related issues they'd be filing

Provide a detailed description of the proposed feature
CONTRIBUTING.md currently has:
Open an issue on the formula's repository or on Homebrew/brew if it's not a formula-specific issue.
It should be more helpful in directing users to https://github.com/Homebrew/homebrew-core/issues for the case of formula-specific issues related to the homebrew/core tap, which I'd venture to say would cover the vast majority of issues in that case.
What is the motivation for the feature?
Saving users the trouble in trying to figure out where to report relevant issues.
How will the feature be relevant to at least 90% of Homebrew users?
I'd venture that 90% of Homebrew users who come up against issues don't even consider reporting them, but for those that do, this would be relevant.
See, eg, https://github.com/Homebrew/discussions/discussions/757
What alternatives to the feature have been considered?
This isn't really a feature so much as an improvement.  The alternative is to not improve the document.  That seems clearly less desirable to me, but perhaps I'm missing something.

Can you open a PR with the changes you'd like to see?

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs.


twine upload triggers SSL: SSLV3_ALERT_BAD_RECORD_MAC error and fails

Describe the bug
When I tried to release a new version by
python -m twine upload dist/* --repository <my-package>

I encountered the following SSL error:
Retrying (Retry(total=9, connect=5, read=None, redirect=None, status=None)) after connection broken by 'SSLError(1, '[SSL: SSLV3_ALERT_BAD_RECORD_MAC] ssl/tls alert bad record mac (_ssl.c:2578)')': /legacy/

And the upload finally failed.
Expected behavior

To Reproduce

My Platform

I tried on both macOS and Ubuntu Linux
Python 3.9
OpenSSL 3.3.1
Additional context

It seems the issue was at the server side. I can now upload without issues.

https://github.com/orgs/community/discussions/126737

https://github.com/orgs/community/discussions/126737


Any plans to integrate this into HomeAssistant Core?

Hey @fuatakgun,
thanks a lot for your hard work on this.
Are there any plans to apply this Home Assistant Integration into Home Assistant Core to list as an official integration?
If yes, do you know what is missing or where support is needed?

hey, thanks for good wishes, regarding to integration as official integration, I have some doubts like;

having an custom integration gives an opportunity to release any bug fixes independent of release calendar. Moreover, if it is merged into core, it is still up to codeowners to fix the issues, it will not be taken care of by everyone :)
integration is still in early stage, there are some small issues here and there.
i am not able to find out the real benefit of doing so. I see that everyone is somehow aware of HACS and using it.

I would like to know more about your thoughts.

I would like to see it merge at some point - I think it would get much larger exposure.  I do think a bit more work is needed first though.

@fuatakgun That makes totally sense.
I was searching in the Home Assistant Developer docs for exactly these kinds of constraints, but I was not able to find them. Do you have a source for me on this?
One opposite is to keep up with new releases and API changes.

As a note on this,  this integration is now a native repo for HACS so this should make it a bit easier for others to add this.   Also have moved to Black styling and releases which works us closer to home assistant standards.

We had started working on this.
It is taking time, but hopefully we will see this as part of core, some day :-)


Change httpPost to httpGet

If it's related to the failure of functional tests, should we understand what changes make it failed recently but succeed before? Rather than suppress it?

Deployed to dev,
E2E tests pass
Gallery functional tests pass
manual test the endpoint involved changes


Cannot re authenticate after update to latest 2.2.0

I updated from 2.1.5. to 2.2.0. After restart, I get this message:
[7/24/2024, 7:13:38 PM] [homebridge-alexa-smarthome] Alexa-Remote: Error from retrieving cookies
[7/24/2024, 7:13:38 PM] [homebridge-alexa-smarthome] Failed to initialize connection to Alexa. - Proxy Server could not be initialized. Check Logs.
[7/24/2024, 7:13:38 PM] [homebridge-alexa-smarthome] Alexa-Remote: Authentication check Error, try re-init
[7/24/2024, 7:13:38 PM] [homebridge-alexa-smarthome] Alexa-Remote: No cookie given, generate one
[7/24/2024, 7:13:38 PM] [homebridge-alexa-smarthome] Alexa-Remote: Error from retrieving cookies
[7/24/2024, 7:13:38 PM] [homebridge-alexa-smarthome] Alexa-Remote: Authentication check Error and renew unsuccessful. STOP
[7/24/2024, 7:13:38 PM] [homebridge-alexa-smarthome] After initialization - HttpError(Error getting smart home devices. Reason: Cookie invalid, Renew unsuccessful)
I activated debug logging but do not get a clearer message. I tried to reauthenticate according to initial description but I do not get any URL in the log and the one from doc is generic I guess. did not work anyway.
So no luck for now, thanks for your help

I started from scratch, deleted plug-in and config but still could not authenticate. I then changed the port to something else in the range and could get to the Amazon login. Got an error from Amazon instead of the OTP request. Retried and it worked finally, so I'm back in business but the road has been a bit bumpy.


#169: Reduce confusion with improved wording

Warning sounded like an error/issue but is not necessarily one

Hello @m1rm, we appreciate your willingness to contribute to this project.
This warning, originally put in place due to issues with clients having to initialise the store manually, is no longer relevant. These issues were prevalent in the early days, but our new API has largely eliminated the prospect of the store not initializing. have removed the warning via this pull request: https://github.com/mermaid-js/zenuml-core/pull/194.


Update Minio chart to latest version and fix GCS gateway

What this PR does / why we need it: Update Minio version to latest release and fix an issue with Minio GCS gateway deployment using Helm chart
Which issue this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged): fixes #
Special notes for your reviewer:

/ok-to-test

/lgtm

/approve

/approve


Ensure we can get a DPath when left hand side of dotted name node is a call node

Recent changes in IsValidDottedNameNode causes some calls (i.e. LookUp(CDS1, Name = LookUp(CDS, Name = Text).Value)) to fail when the AsyncDelegation and ImpureDelegation features are on because it fails when calling CharacterUtils.MakeSafeForFormatString (DelegationValidationStrategy.cs:213) due to the columnPath being null because TryConvertNodeToDPath just returns the root DPath when left node is a call node.

✅ No public API change.

✅ No public API change.

✅ No public API change.


Issue 1046: Use the Spring Boot Actuator logger management instead of our own solution

Pull Request Description
This pull request closes #1046
Acceptance Test

[ ] Building the code with mvn clean install -Dintegration.tests still works.
[ ] Running mvn spring-boot:run in the strongbox-web-core still starts up the application correctly.
[ ] Building the code and running the strongbox-distribution from a zip or tar.gz still works.
[ ] The tests in the strongbox-web-integration-tests still run properly.

Questions

Does this pull request break backward compatibility?

[ ] Yes
[X] No

Does this pull request require other pull requests to be merged first?

[ ] Yes, please see #...
[X] No

Does this require an update of the documentation?

[X] Yes, please see strongbox/strongbox-docs#{PR_NUMBER}
[ ] No

@steve-todorov I've added LogFileStreamWebEndpointAutoConfigurationTest and I'm working on LogFileStreamWebEndpointTest

Tests added @steve-todorov :)

Rebased onto master

It seems this branch needs to be rebased, due to merge conflicts.

@carlspring w y break the build?! I'll rebase... thanks for letting me know! :D

@fuss86 @steve-todorov issue description says that we should droplogback-configuration-rest  within this task. is it relevant requirement? if so then seems logback-configuration-rest still there.

We are now relaying on spring boot for managing the loggers so I don't think we need logback-configuration-rest anymore, right @fuss86?
// cc @carlspring

@fuss86 @steve-todorov issue description says that we should droplogback-configuration-rest dependency within this task. is it relevant requirement? if so then seems logback-configuration-rest still there.

👍 dropped

@steve-todorov Jenkins looks happy :)

Great work @fuss86 ! I'll do some final touches to the UI and probably merge this tomorrow if @sbespalov doesn't have any more comments. :)
We need to do 2 follow-up tasks:

Move the "browse" service into the BaseController and improve the implementation
Update the necessary dependency so that spring-ldap-core-2.3.2.RELEASE is bumped to 2.3.3 and remove the ldap part in the application-test.yaml :)


Fix bug in controller vsphere template generator

Description of changes
Avoid overwriting ssh keys for CP and etcd machines since the vsphere template builder is already capable of doing it and runs more robust logic. This was causing new machine rollouts when the specified ssh key had a comment due a difference in kubeadm control plane, etcdadm cluster and vsphere machine templates. The CLI strips them out before creating the vsphere capi objects because it uses the template builder logic.
This was causing some e2e tests to fail due to cluster instability: the controller kept rolling out new machines so the cluster didn't become ready fast enough and the delete operation timed out waiting for it.
Testing
Unit tests and manual e2e tests
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/approve


DMP-3312: Add audio, use checksum to detect incoming duplicates

DMP-3312
Introduce a checksum validation to determine if the incoming "add audio" binary data is unique or a duplicate of previously uploaded data.
Ticket mentions checking the performance impact of the checksum computation.
Comparison has been performed locally by attempting to add a duplicate using the master code vs the dmp-3312-duplicate-audio-checksum code on a development macbook with a 336MB audio file, which is near the max allowable size limit.
master: Request duration (average s): 2.8
dmp-3312-duplicate-audio-checksum: Request duration (average s): 1.7
Impact under these conditions is approx 1 second.
Does this PR introduce a breaking change? (check one with "x")
[ ] Yes
[X] No

Non essential but I did wonder if would be worth introducing a utility to generate randomised bytes of varying sizes for test purposes, rather than checking in the specific media files.

Good idea, I'll look into that here.


feat(playground): visualize symbol

Current dependencies on/for this PR:

main

PR #1886   👈

This stack of pull requests is managed by Graphite.


Read large STL file with over 1000000 triangle

I am trying to read STL file which contains over 1000000 triangles, and the run-time error "Triangle count exceeds the maximum allowable value." occurred. I found this is thrown through the line 218
https://github.com/Innoptech/OpenSTL/blob/fb0cfce0db8d7b3a29eb366a63620989849cbae2/modules/core/include/openstl/core/stl.h#L218
Why the limitation is set to 1000000? Moreover, how can I deal with the large STL files which contain over 1000000 triangles?

Thank you for your feedback! The limit on the number of triangles was indeed added to mitigate the risk of buffer overflow attacks. However, I understand that it may restrict the library’s functionality in cases requiring large STL files.
To address this, I’m considering adding a configuration option in a future update that would allow users to deactivate this safety feature, such as 'openstl.activateOverflowSafety=false'. This would provide flexibility for users who need to bypass the restriction when necessary.

Feature is merged! Simply add openstl.set_activate_overflow_safety(False) after importing openstl to deactivate the buffer overflow safety.
Btw to accelerate triangles transformation, I recommend using a GPU accelerated library like pytorch.  pytorch.Tensor(triangles).to('cuda').


Color fix for windows

On Windows, the colored output of flakehell is not displayed properly. To solve this, colorama.init() must be called.

You mean, all termcolor usage should be replaced with colorama? That would require refactoring a couple of things. Why would that be better then just this small addition?

Every dependency matters for a library. Ok, let me take care of it.

oh, great, thanks!


nixos/systemd-boot: conform backend to rfc 125

Description of changes
This converts the systemd-boot backend to use the bootspec to conform to RCF 125.
The bootloader backends will avoid reading data from the other files and directories when possible, preferring the information in the bootspec.

The only functional difference with before, is that the describe_generation functional as been removed and replaced by the label item of the bootspec, this will induce a change of format of the entries, but should contain the same information as before.

Things done

Built on platform(s)

[x] x86_64-linux
[x] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

@ofborg test systemd-boot


Italic is highlighted

Hi, the text that is supposed to be in italic is actually highlighted and not in italic. How can I change that?
It happens only in tmux.
Here's what I used to set up Tokyo Night:
    " Tokyonight theme     set background=dark                                                                                let g:tokyonight_style = "night"                                                                                let g:tokyonight_italic_functions = 1                                                                                let g:tokyonight_sidebars = [ "qf", "vista_kind", "terminal" ]                                                                                " Change the "hint" color to the "orange" color, and make the "error" color bright red    let g:tokyonight_colors = {                                                                                \ 'hint': 'orange',                                                                                \ 'error': '#ff0000'                                                                                \ }                                                                                syntax on                                                                                colorscheme tokyonight

SOLUTION: Put this into your tmux conf
set -g default-terminal "tmux-256color"


Docker cluster template

What this PR does / why we need it:
Creating separate cluster templates in the release artifacts - one for docker based byohosts and the other for vm based byohosts
Test release on my forked repo - https://github.com/anusha94/cluster-api-provider-bringyourownhost/releases/tag/v0.0.2
Compared with the artifacts of current release - no diffs
Fixes #277

Could kustomize help avoid doing everything in sed?

This did cross my mind. But looks like kustomize edit can do only so many things
$ kustomize edit --help
Edits a kustomization file

Usage:
  kustomize edit [command]

Available Commands:
  add                       Adds an item to the kustomization file.
  alpha-list-builtin-plugin [Alpha] List the builtin plugins
  fix                       Fix the missing fields in kustomization file
  remove                    Removes items from the kustomization file.
  set                       Sets the value of different fields in kustomization file.

remove is to remove items from kustomization file and not from the files referenced there.
Even if we consider setting fields to empty instead of removing them, kustomize edit set is limited to a few fields.
$ kustomize edit set --help
Sets the value of different fields in kustomization file.

Usage:
  kustomize edit set [command]

Available Commands:
  annotation  Sets one or more commonAnnotations in kustomization.yaml
  image       Sets images and their new names, new tags or digests in the kustomization file
  label       Sets one or more commonLabels in kustomization.yaml
  nameprefix  Sets the value of the namePrefix field in the kustomization file.
  namespace   Sets the value of the namespace field in the kustomization file
  namesuffix  Sets the value of the nameSuffix field in the kustomization file.
  replicas    Sets replicas count for resources in the kustomization file

But I do hear you. Doing so many sed & perl commands on a release artifact may not always be reliable. How about we maintain 2 sets of cluster templates in the repo itself?
The current one is for docker here. We can have another folder containing vm related templates. Only downside being if there's any change in the API or defaults, we need to update in 2 places. Hoping these won't be as frequent, this could be a good trade-off I guess.
Thoughts? @jamiemonserrate @dharmjit

Hoping these won't be as frequent, this could be a good trade-off I guess

Having explicit templates for VM/docker would be easier to understand the generation of different flavors of cluster-template release artifacts. I agree it will add some more maintenance but should be okay I guess.

Agree with where this thread is heading.
I can see that the AWS provider is doing something similar - that is, they have a kustomize_sources folder, just like we are planning to have.
So that reassures me that we are heading in the right direction 😄


whether dynamic translation is possible

Hello.If I have been translated from SIMPLIFIED to TRADITIONAL, then my new input content will not be traditional. Is there any way to solve this problem?

Perhaps calling HTMLConvertHandler.convert(); again may work


Add Example/API for Real Time Collaboration

Even though collaborative document editing is listed as a possibility with the editor (because of it's OT changes nature), there don't seem to be any examples/tutorials/api docs that describe how to do it. I would expect the DocumentChange class to be serializable (e.g. have toJSON and fromJSON methods) so that changes can be transmitted over the wire and instantiated in another users editor. Those methods would also help with DocumentChange persistence in any db type (RDBMS or Document).

We will do some work on this in the coming months. It's all prepared for it, but still we need to write the server side pieces and put together some demo setup.

There is an example now with beta4. This has been the first iteration, which will be continued in beta 5.


python3Packages.roundrobin: init at 0.0.4

Description of changes

This PR adds a new Python package, roundrobin. This package is useful because it is used by the popular Python load testing tool locust (which I would also like to add to nixpkgs in the future). Thanks!
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[x] x86_64-darwin
[ ] aarch64-darwin

[x] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.11 Release Notes (or backporting 22.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

There is a test file in the repo. Could you check if the tests could be executed?

@fabaff the tests do seem to get executed when i build it locally (see excerpt from my stdout below). if you think it would be preferable to add a custom checkPhase, though, i'd be happy to do that. i saw in some documentation that that may be best practices for python packages anyways.
➜  nix-build -A 'python39Packages.roundrobin' .                                                                                ~/git/github.com/wesnel/nixpkgs
this derivation will be built:
  /nix/store/cycdlr6xywygxfhpi8vbbh8fzw86g6g2-python3.9-roundrobin-0.0.2.drv
building '/nix/store/cycdlr6xywygxfhpi8vbbh8fzw86g6g2-python3.9-roundrobin-0.0.2.drv'...
Sourcing python-remove-tests-dir-hook
Sourcing python-catch-conflicts-hook.sh
...
pythonImportsCheckPhase
Executing pythonImportsCheckPhase
setuptoolsCheckPhase
Executing setuptoolsCheckPhase
running test
WARNING: Testing via this command is deprecated and will be removed in a future version. Users looking for a generic test entry point independent of test runner are encouraged to use tox.
running egg_info
writing roundrobin.egg-info/PKG-INFO
writing dependency_links to roundrobin.egg-info/dependency_links.txt
writing top-level names to roundrobin.egg-info/top_level.txt
reading manifest file 'roundrobin.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: manifest_maker: MANIFEST.in, line 1: unknown action 'LICENSE'

adding license file 'LICENSE'
writing manifest file 'roundrobin.egg-info/SOURCES.txt'
running build_ext
test_basic (test.WeightCase) ... ok
test_smooth (test.WeightCase) ... ok
test_weighted (test.WeightCase) ... ok
test_weighted_not_smooth (test.WeightCase) ... ok

----------------------------------------------------------------------
Ran 4 tests in 0.001s

OK
Finished executing setuptoolsCheckPhase
/nix/store/g9hh5vqbwb584b0kxxrb1kx9zvisj278-python3.9-roundrobin-0.0.2

thanks @jonringer for inquiring about release tags in linnik/roundrobin#3. now that those have been added, i've updated this pull request to use the 0.0.4 tag.

Upstream project no longer actively maintained.


JSP used as a welcome page treated as static resource

Describe the bug
If browser points to / instead of to the jsp directly, the JSP is downloaded by the browser as a plain text file instead of rendering it as HTML.
To reproduce, create a simple WAR that contains index.jsp and add it to the welcome list in web.xml:
<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

When loaded using the context root (e.g. http://localhost:8080/), the contents of the JSP file will be displayed. If loaded by the full path (e.g. http://localhost:8080/index.jsp), the HTML generated by the JSP fill be displayed as expected.

It appears this fix has broken the com/sun/ts/tests/servlet/spec/welcomefiles/URLClient.java#partialfound2 Servlet TCK test

@OndroMih Can you have a look?

How can I run the test locally?

See https://github.com/piranhacloud/piranha/blob/current/CONTRIBUTING.md#run-the-external-tests-including-tcks, pass -Dsuspend if you want it to wait so you can attach a debugger

Thanks. I've fixed the test and didn't break any new test ;-) I had to refactor the code a bit so that it makes some more sense what it does. Now, the logic is simply:
For each welcome file in web.xml:

if it's JSP and it's a static resource (the JSP file exists) -> return the JSP servlet
if it's JSP but the JSP file doesn't exist -> ignore the entry
if it's a static resource (not a JSP) -> return default servlet
if it's something else (not a static resource, not a JSP) and a servlet exists for the URL -> return mapped servlet
otherwise return null


Auto follower functionality

This PR fixes #6

There are few tasks left to implement in this function

[ ] Check cases of no friends, no followers
[ ] Check flags like user.following and user.follow_request_sent to check status of whether follow was successful
[ ] Check cases where follow requires approval
[ ] Check efficient ways to handle all errors that can occur during follow post call
[ ] Twitter has "400 per user; 1000 per app" limitation per user. Need to review response message in this case

@kousiksatish Thanks for the PR. I'll review the code soon.


keyboard input not working

I am running the examples and noticed that keyboard input doesn't work.
Moving the mouse to rotate the view and using the right mouse button to zoom in and out is working.
The graphics themselves display and appear to be running fine.
The system is Linux Debian stretch/sid with kernel 4.6.2 on an AMD FX 8350 and an Nvidia GTX 960.
Xfce 4.12.13, Xorg 1.18.3, libxcp 1.11.1, libXau 1.0.8, libXdmcp 1.1.2, libvulkan <IP_ADDRESS>, libassimp 3.2
Also, thank you for giving us these examples.

That's true. Right now Keys used by the examples themselves don't work on Linux. I just haven't had the time to add key mappings for Linux yet, but will do so soon.


Fix the url markup in changelog

It was using markdown link format. Changed it to restructured text.

There's a broken link in the docs, but it gets fixed in #103
/home/runner/work/gidgethub/gidgethub/docs/actions.rst.rst:27:broken link:
https://help.github.com/en/actions/reference/development-tools-for-github-actions
#logging-commands (Anchor 'logging-commands' not found)


Tracking Issue: Cask Tap Migration

Checklist:

[x] Add migration code. (https://github.com/Homebrew/brew/pull/4174)
[x] Move taps from caskroom to Homebrew.
[x] Activate migration code. (https://github.com/Homebrew/brew/pull/4195)
[x] Update URLs and paths pointing to old locations.
[x] Update tap_migration.json in homebrew/core. (https://github.com/Homebrew/homebrew-core/pull/28277)
[x] Remove unneeded caskroom references. (https://github.com/Homebrew/brew/pull/4210)

Nice work @reitermarkus! 👏


Update calendar_event.dart

Fixes: https://github.com/builttoroam/device_calendar/issues/268
Changes:

Resolved recurrence end not setting properly

Manually merged in PR https://github.com/builttoroam/device_calendar/pull/297


Unchecked Loop Invariant

The following does not fail for reasons unknown:
public function first_index_of<T>(T[] items, T item, int start) -> (int|null index)
// Starting point cannot be negative
requires start >= 0
// If null returned, no element in items matches item
ensures index is null ==> all { i in start .. |items| | items[i] != item }:
    //
    int i = start
    //
    while i < |items|
    // i is positive
    where i >= 0
    // No element seen so far matches item
    where all { j in start .. i | items[j] != item }:
        //
        if items[i] == item:
            return i
        i = i + 1
    //
    return null

The expected error is:
tests/invalid/Ensures_Invalid_4.whiley:15: loop invariant may not be restored
    where all { j in start .. i | items[j] != item }:
          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

(The issue is that we have i >= 0 rather than i >= start)

The issue is that this should actually verify fine.    It doesn't matter that we have i >= 0 since the invariant is restored regardless.
@utting Do you agree?

Yes.
It seems that the i>=0 invariant is only needed for the definedness condition of items[i] in the inner loop.
So I agree it's fine.

Sweet!


Replace sass dependency by sassc

https://github.com/sass/ruby-sass
Ruby Sass is Deprecated!
Ruby Sass is in a sunset period where only critical bugs and CSS compatibility
issues will be fixed. It will be completely unmaintained as of 26 March 2019.
See the Sass website for details, and consider switching to the sassc
gem
Related
https://github.com/rails/rails/issues/32896

I forked and made a sassc version here: https://github.com/bemky/sassc-media_query_combiner


Choosing fastfield encoders

Strategy to find the best encoder
When serializing a fast field, there are in principle multiple possible encoders to choose from. It's important to find the best one in a cpu and memory efficient manner.  See tradeoffs for the meaning of "best".
Size Estimations
One way to do this is to request estimations from all codecs. Common statistics could be calculated upfront and passed to the estimators. These statistics could include min, max, median, average etc.
The estimation would depend on the codec, some estimate based on a chunk of data, every nth element sampling or just the statistics. The estimator would return the estimated compression ratio.
Reality Check
Ideally there would be a reality check to potentially try out a different encoder when merging. This should be done when a certain threshold is reached between actual size and the estimation of the next best encoder. The result would need to be stored, e.g. the result of the experiment, a codec force option or by allow/blocklisting codecs.
Trade-offs
Codecs can come with a tradeoff, where you trade compression ratio for performance, which codec is best depends on the use case. The user should be able to express their tradeoff desire for performance/size/auto or similar. This could disable/enable codecs for consideration. Options to enforce a codec would also be interesting for tests and for applying domain knowledge about data.
Size is easy since we can estimate or calculate the actual size. Performance is harder and would require a static list of that information. Ideally in the form of 1x speed baseline, 2,5x etc., to weight it in a formula against compression. 1% better compression for 3x performance impact may not be desirable.
enum CodecPreference{
    // Tantivy knows best
    Auto,
    // Use fastest codec from codec list
    FastestOf(Codec1VeryNice, Codec2AlsoVeryGood),
    // Use codec with best compression from codec list
    SmallestOf(CodecVerySuperStrongCompressor, Codec2AlsoVeryGood),
    // Choose codec with best compression
    Size,
    // Choose fastest codec
    Performance,
}

With https://github.com/tantivy-search/tantivy/pull/1072 every codec returns an compression estimation.
Reality Check and setting options for trade-offs are still to do


Bug: middleware not excluding static path

I have a auth middleware and I want to exclude static routes defined by static file config and they are not excluded
auth_mw = DefineMiddleware(JWTAuthenticationMiddleware, exclude=["health", "docs"])

app = Starlite(route_handlers=[health_check, InterestsController],
               static_files_config=[
                   StaticFilesConfig(directories=["docs"], path="/docs", name="docs")
               ],
               logging_config=log_config,
               middleware=[auth_mw])

How do I exclude static files from middleware ?

can you try:
auth_mw = DefineMiddleware(JWTAuthenticationMiddleware, exclude=["health", "docs.*"])

app = Starlite(route_handlers=[health_check, InterestsController],
     static_files_config=[
         StaticFilesConfig(directories=["docs"], path="/docs", name="docs")
     ],
     logging_config=log_config,
     middleware=[auth_mw])

the value is a regex.

unfortunately that didn;t work
auth_mw = DefineMiddleware(JWTAuthenticationMiddleware, exclude=["health", "docs.*"])

app = Starlite(route_handlers=[health_check, InterestsController],
               static_files_config=[
                   StaticFilesConfig(directories=["docs"], path="/docs", name="docs")
               ],
               logging_config=log_config,
               middleware=[auth_mw])

if __name__ == "__main__":
    # port = environ.get("CDSW_READONLY_PORT")
    port = 8000
    uvicorn.run("main:app", host="<IP_ADDRESS>", port=port, log_level="debug", reload=True)

I still 401 ..

unfortunately that didn;t work
auth_mw = DefineMiddleware(JWTAuthenticationMiddleware, exclude=["health", "docs.*"])

app = Starlite(route_handlers=[health_check, InterestsController],
               static_files_config=[
                   StaticFilesConfig(directories=["docs"], path="/docs", name="docs")
               ],
               logging_config=log_config,
               middleware=[auth_mw])

if __name__ == "__main__":
    # port = environ.get("CDSW_READONLY_PORT")
    port = 8000
    uvicorn.run("main:app", host="<IP_ADDRESS>", port=port, log_level="debug", reload=True)

I still 401 ..

Ok, I'll look into it

Hi @ravi-b-m - i can't reproduce this. Please see the following draft PR which shows this is working correctly: https://github.com/starlite-api/starlite/pull/1155
What version of Starlite are you using? can you make sure to be running the latest and try again? i would need a reproduction from you to be able to tackle this further.

I am running starlite-1.51.0 .. still does not work for me.. I will try to create a test app and share -- Thank you for looking into this

Hi @ravi-b-m - an MVCE will be necessary to progress this bug report. If you are looking for a good starting point for that, check out https://github.com/starlite-api/starlite-hello-world.

Ok, closing this for now. @ravi-b-m - if you are able to create a reproduction, feel free to reopen.


job errors not being displayed

When an error while preprocessing or processing data and an error occurs the actual error message gets lost and only: AttributeError: 'AsyncResult' object has no attribute 'pyout' is shown.

Taking a look right now

the problem is in the server. The ipython version has been updated to 3.1.0 which is currently not supported. we need to downgrade Ipython until we fix the code base to work with Ipython 3.1.0

That's correct and is working again after: pip install ipython[all]==2.4.1.


⚠ Mobitopup has degraded performance

In 9487182, Mobitopup (https://napcard.voz.tech) experienced degraded performance:

HTTP code: 200
Response time: 7622 ms

Resolved: Mobitopup performance has improved in 20ac7c5.


Suggestions :D

It would be cool to have copies of both jps.h & minihttp.h (as single-header lib) in this repo as well :D
Looking forward to your next, upcoming libs :D

Hmm but both have the "problem" that they depend so much on STL. If i'm going to redo JPS then only shipping with its own (hash)map impl. minihttp uses std::string, std::map and whatnot (because i was lazy) and is generally awful, so unless that gets its rewrite (unlikely for now) i'd rather have it stay in its own repo.
Thanks for the heads up btw!

Well, you can use still std interface even if the implementation is way different
A couple of lines could just open that posibility
// .h
#ifndef JPS_USE_CUSTOM_NAMESPACE
#define JPS_USE_CUSTOM_NAMESPACE std
#endif

namespace jps = JPS_USE_CUSTOM_NAMESPACE;

// .cpp
// then.. just jps::string, jps::map<int,int> etc :D

#endif

Isn't that C++11? I plan to stick to C++03 because oldskool reasons.
But re: JPS, I've started refactoring the thing to work without STL and much nicer memory handling.
It's quite interesting how one's way of thinking changes once you actually think about the problem instead of just slapping things into some STL container and moving on...
Not quite there yet but maybe next week, whenever I have spare time and brain (which is, these days, apparently almost mutually exclusive D:).
The new one will go into this repo; the old one will stay in the old repo.

Namespace aliasing is old C++ afaik (see: https://en.cppreference.com/w/cpp/language/namespace_alias)
But then, a code refactor would be better for sure. I was just thinking about a cheap workaround :D
Cool to know JPS is going to be refreshed :D

Oopsie. Now this was a nice round of optimization. All on a Core i7, for reference.
(v1 = old version of JPS.h, v2 = jps.hh, this repo)
Started with MSVC 2008, 32bit exe:
v1: 32+ seconds for the testsuite
v2 (some days ago, new data structures): ~25s
Changed compiler to MSVC 2015
Same code v2, 32bit exe: ~16s (... huh?!...)
v2 from today, no floats, some cleanups, 64bit exe: 14.2s
in comparison, v1, 64bit exe: 39s!
So that's a speed increase of ~2.7x.
(And I'd thought the old version was already fast... lol)
There are 1-2 more optimizations I want to try, curious what that'll do.
So thanks for the poke to refactor this code. Totally worth it.
If you have any use-case story by chance then please let me know. Or close issue when there is nothing else.
(Won't touch minihttp anytime soon but I have an idea about B-splines...)


feat(test): add tests for CircleDigest

Add tests for <CircleDigest.Plain>, <CircleDigest.Mini>, <CircleDigest.Rich>, <CircleDigest.Title>, and <CircleDigest.UserProfile>;
Fix unused button of <CircleDigest.UserProfile>;

merged into https://github.com/thematters/matters-web/pull/3948


Thread Border Router with NRC/RCP sample and nrf52840dk not starting

I am trying to build and run a complete Thread Border Router using the OpenThread Co-Processor Networking Sample for the nrf52840dk_nrf52840 in the latest master branch.
The sample documentation refers to the official OpenThread docu to set-up and build the border router. As far as I know, while there is a Zephyr Project repository for the OpenThread module itself, there is no Zephyr Project mirror (or submodule) for the  OpenThread Border Router repo.
I have built the sample for nrf52840dk_nrf52840 with both co-processor alternatives (NCP and RCP) and both interfaces (UART and USB), using the different overlays and tried all of the possibilities together with the OTBR built from the latest openthread/ot-br-posix master and run it in a Raspberry Pi 3B, but I get all sort of errors that prevent the otbr-agent from being properly started (like "RCP is missing required capabilities: CSMA-backoff" or Spinel version errors).
Am I doing something wrong? Is there a plan to fork the ot-br-posix repository in order to freeze the required status and related dependencies so that we can easily build a working complete border router together with the Zephyr Co-Processor Networking Sample? Which is the current workaround to make it work?

The 802154 radio driver for nRF was recently updated, and unfortunately, its open-source variant was trimmed of the CSMA-CA capability (that's the reason you see the warnings). What's even worse, the RCP support was merged after the radio driver was updated, so we don't have a single commit on master where we have both RCP support and the "old" radio driver...
A fully-featured radio driver is available in nRF Connect SDK (https://github.com/nrfconnect/sdk-nrf/), but we don't have the commit adding RCP in there yet. It should be available in a few weeks though.
If you're comfortable with git, as a workaround you could use a Zephyr commit dated before 35ec164e364f639b81e8accd79d0caba6b624f73 and cherry-pick the commit adding RCP support manually (638b5f389fe8cfe0967a075dcfee43c0a38a4eb2). I've succesfully run the RCP before the driver update several times.
FYI @hubertmis @MarekPorwisz

Is there a plan to fork the ot-br-posix repository

There are no such plans, at least not from our (Nordic) side.

That means the official Zephyr repo (zephyrproject-rtos/zephyr) will no longer work as RCP with the nrf52840, since the CSMA-CA capability is mandatory for that, right? I think that should be documented then.
What about NCP? This should still work, but I think it is being slowly left behind, as RCP is normally the preferred mode by OpenThread devs for the future.

There are no such plans, at least not from our (Nordic) side.

What about Zephyr Project side? If we want to have a working OpenThread Border Router I think this would be the safest, since redirecting to the official documentation and an external repository for such a key feature will mean that it will be very often broken, as it is the case now.

That means the official Zephyr repo (zephyrproject-rtos/zephyr) will no longer work as RCP with the nrf52840, since the CSMA-CA capability is mandatory for that, right? I think that should be documented then.

That's unfortunate but yes, you're correct. The CSMA feature is now distributed as a closed part of the radio driver and cannot be a part of the Zephyr project. I agree about the doc, I need to update it (I wasn't even aware CSMA-CA capability is critical for RCP operation until this issue was reported).

What about NCP? This should still work, but I think it is being slowly left behind, as RCP is normally the preferred mode by the OpenThread devs for the future.

The NCP still works (since it can use CSMA-CA implemented in the OT MAC layer.

If we want to have a working OpenThread Border Router I think forking the ot-br-posix would be the safest way, since redirecting to the official OpenThread documentation and an external repository (using a particular version of OT as submodule, potentially much different from the Zephyr Project OT mirror) for such a key feature means that it will be very often broken.

To be honest, personally, I'd rather avoid that. OTBR is a separate project, not related to Zephyr in any way. I don't see a reason for Zephyr to maintain a fork of yet another repository. It should be easier to update the OT version supported in Zephyr if any incompatibility shows up rather than maintain another repo fork.

To be honest, personally, I'd rather avoid that. OTBR is a separate project, not related to Zephyr in any way. I don't see a reason for Zephyr to maintain a fork of yet another repository. It should be easier to update the OT version supported in Zephyr if any incompatibility shows up rather than maintain another repo fork.

Maybe it can at least be documented with which commit or version of OTBR the Co-Processor Networking Samples of Zephyr are known to be working, otherwise they are of little use.

@ADEscobar I did some more investigation and realized that it's possible to enable CSMA backoff at software level in OpenThreads MAC, so it's possible to run RCP even w/o hardware support for this feature.
I've posted a PR which enables it (https://github.com/zephyrproject-rtos/zephyr/pull/30556) and tested that RCP built for nrf52840dk_nrf52840  works correctly with the docker image from https://openthread.io/guides/border-router/docker?hl=en#pull_the_image_from_docker_hub

@rlubos thanks for your support with this issue. I just tested your branch, building the RCP for the nrf52840dk_nrf52840 board and with the usb overlay, but it did not work together with the border router, either as docker image or native installed in the rpi3. How did you test it?

I've tested with official docker image (https://openthread.io/guides/border-router/docker?hl=en) and UART transport.
I think that the issue with USB might be related to the reset that is triggered on the RCP when BR starts, and the fact that the USB device re-enumerates then. I'm observing this on my side. Upstream NCP sample implements something called "pseudo reset" to prevent disconnect of the USB device:
https://github.com/openthread/openthread/blob/master/examples/apps/ncp/main.c#L89
We don't have such a mechanism in Zephyr.

Indeed, the way we are using RCP is via UART which does not enumerate. We've had the same problems with USB.
@rlubos would it make sense to mimic the pseudo reset in Zephyr as well?

@markus-becker-tridonic-com I think it could make sense, I'm not sure though how difficult would that be in Zephyr nor have it on my roadmap right now. Contributions are welcome of course though.

Pseudo reset is a risky functionality. The host expects the co-processor to reset itself, but co-processor actually does not reset itself, but resets selected modules (Which? Why only those? Is module reset enough to claim it's in initial state?).
I would like to propose an alternative solution. Perhaps it would be better to make host resilient to co-processor re-enumeration after it requests co-processor to reset. Would it be possible?

@markus-becker-tridonic-com Actually, after talking with Nordic's Thread team I learned that one of the engineers is investigating the possibility to add OT "pseudo reset" to Zephyr.
@hubertmis It's hard to disagree that this "pseudo reset" is more of a workarund, it would be better to address it directly in the OTBR implementation. But the question of whether it is possible should rather be asked on a different forum, i. e. the OTBR community, all in all, this solution was proposed by one of the core OT developers at that time, I don't remember though what was the reason to implement it that way instead of fixing it on the BR side.

Thanks, I'll raise the concern in OT. I'll post my finding here when I know more

@hubertmis that sounds even better. looking forward to your report.

I've added option to properly handle the USB connection after resetting RCP/NCP device for OpenThread and wpantund. More about this functionality here: https://github.com/zephyrproject-rtos/zephyr/commit/4500862af13f4340a08c00e5cb078be2d5c6f39d and here: https://github.com/nrfconnect/sdk-nrf/pull/4121

I've added option to properly handle the USB connection after resetting RCP/NCP device for OpenThread and wpantund. More about this functionality here: 4500862 and here: nrfconnect/sdk-nrf#4121

Hi @lmaciejonczyk : I am working on zephyr latest which includes the commit https://github.com/zephyrproject-rtos/zephyr/commit/4500862af13f4340a08c00e5cb078be2d5c6f39d but still the issue doesn't seem to work. More details about the issue that i am facing is here:
https://lists.zephyrproject.org/g/users/topic/issue_flashing_and_running/83894298?p=,,,20,0,0,0::recentpostdate%2Fsticky,,,20,2,0,83894298

Use symlink to the device, i.e. :
instead of: sudo ./build/posix/src/posix/ot-daemon -v 'spinel+hdlc+uart:///dev/ttyACM1?uart-baudrate=115200'
run sth like: sudo ./build/posix/src/posix/ot-daemon -v 'spinel+hdlc+uart:///dev/serial/by-id/usb-Nordic_Semiconductor_ASA_Thread_Co-Processor_07AA4C22D2E2C88D-if00?uart-baudrate=115200' .
Use the proper symlink of your device from /dev/serial/by-id/ when it appears after the device is enumerated in host OS.
Don't forget to build OpenThread ot-daemon with an extra option: -DOT_SPINEL_RESET_CONNECTION=ON to support properly handling the USB connection after the device is hard reset.


Fix error in deploy with multiple resource groups

Fixes #689
Background
As part of Terraform refactor, we had switched the display logic to directly use ARM: resourceManager.FindResourceGroupForEnvironment. This misses out on the override abilities that the user can provide through AZURE_RESOURCE_GROUP or specifying a resourceGroup in azure.yaml that helps in resolving multiple resource group cases (which azd doesn't currently fully support).
Changes

Refactor resource group resolution logic to a central place as project.GetResourceGroup. projectConfig.ResourceGroupName now always refers to the design-time YAML key defined, project.ResourceGroupName refers to the runtime resolved resource group name.
Move display output of created resources from deploy to provision. The logic being in deploy has always been weird as most code deployments don't actually touch the Azure Resources directly.

Manually tested changes to work.

Azure Dev CLI Install Instructions
Install scripts
MacOS/Linux

May elevate using sudo on some platforms and configurations

bash:
curl -fsSL https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761/uninstall-azd.sh | bash;
curl -fsSL https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761/install-azd.sh | bash -s -- --base-url https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761 --version '' --verbose

pwsh:
Invoke-RestMethod 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761/uninstall-azd.ps1' -OutFile uninstall-azd.ps1; ./uninstall-azd.ps1
Invoke-RestMethod 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761/install-azd.ps1' -OutFile install-azd.ps1; ./install-azd.ps1 -BaseUrl 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761' -Version '' -Verbose

Windows
powershell -c "Set-ExecutionPolicy Bypass Process; irm 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761/uninstall-azd.ps1' > uninstall-azd.ps1; ./uninstall-azd.ps1;"
powershell -c "Set-ExecutionPolicy Bypass Process; irm 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761/install-azd.ps1' > install-azd.ps1; ./install-azd.ps1 -BaseUrl 'https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761' -Version '' -Verbose;"

Standalone Binary

Linux - https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761/azd-linux-amd64.tar.gz
MacOS - https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761/azd-darwin-amd64.zip
Windows - https://azuresdkreleasepreview.blob.core.windows.net/azd/standalone/pr/761/azd-windows-amd64.zip

Container
docker run -it azdevcliextacr.azurecr.io/azure-dev:pr-761


Improve tests logger and added task for package creation/update

Closed for https://github.com/Akaryatrh/svgAssets/pull/15