By the way, I should have been more clear, when I said I tried running it using the integration, I meant the RTSPtoWebRTC home assistant integration, which can automatically feed camera streams into go2rtc and receive the WebRTC streams back from it. The other method of using go2rtc is by using the webrtc card to selectively choose the camera streams that use it. You can additionally install the go2rtc addon if you'd like as I described above. This is the way I run it. I basically use it for my Reolink doorbell and 3 Foscam cameras. The Nest cam I run through the built-in integration. Hope this helps.

And here's the code for my doorbell webrtc card. The stream itself is defined within the go2rtc.yaml. I'm using the latest feature added to the card to support 2-way audio directly through it.
type: custom:webrtc-camera
streams:
  - url: reolink_doorbell
  - url: reolink_doorbell
    mode: webrtc
    media: video,audio,microphone
muted: true
intersection: 0.75
background: false
ui: true
poster: https://stateandfed.com/wp-content/uploads/2017/08/please-stand-by.png
style: >-
  .shortcuts {left: unset; top: 5px; right: 5px; display: flex; flex-direction:
  column; opacity: 0.8} .mode {display: none} .screenshot {display: none}
  .pictureinpicture {display: none}

And here's the code for my doorbell webrtc card. The stream itself is defined within the go2rtc.yaml. I'm using the latest feature added to the card to support 2-way audio directly through it.

Ok, now I have the exactly same setup.
A question: you mention this code:
type: custom:webrtc-camera
streams:
  - url: reolink_doorbell
  - url: reolink_doorbell

But you have only one stream added of your doorbell:
streams:
  reolink_doorbell:
    - ffmpeg:rtsp://user:password@<IP_ADDRESS>:554/h264Preview_01_sub#audio=pcm#audio=volume
    - rtsp://user:password@<IP_ADDRESS>:554/h264Preview_01_sub

So are you using only one stream?

it seems that one stream is view camera only, second stream is for two way
talk.
On Fri, 5 Jan 2024 at 08:33, NdR91 @.***> wrote:

And here's the code for my doorbell webrtc card. The stream itself is
defined within the go2rtc.yaml. I'm using the latest feature added to the
card to support 2-way audio directly through it.
Ok, now I have the exactly same setup.
A question: you mention this code:
type: custom:webrtc-camera
streams:

url: reolink_doorbell
url: reolink_doorbell

But you have only one stream added of your doorbell:
streams:
reolink_doorbell:
- @.:554/h264Preview_01_sub#audio=pcm#audio=volume @.:554/h264Preview_01_sub#audio=pcm%23audio=volume>
- @.***:554/h264Preview_01_sub
So are you using only one stream?
—
Reply to this email directly, view it on GitHub
https://github.com/AlexxIT/go2rtc/issues/331#issuecomment-1878247937,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKOYRFBOWHWCFIKF3ZW4MLDYM6UDNAVCNFSM6AAAAAAWSFVP4SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZYGI2DOOJTG4
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

it seems that one stream is view camera only, second stream is for two way talk.

Sure, but the "stream name" is only one: "reolink_doorbell"

correct but you switch between those - S0 S1 bottom left corner of the
webrtc card.
On Fri, 5 Jan 2024 at 10:50, NdR91 @.***> wrote:

it seems that one stream is view camera only, second stream is for two way
talk.
Sure, but the "stream name" is only one: "reolink_doorbell"
—
Reply to this email directly, view it on GitHub
https://github.com/AlexxIT/go2rtc/issues/331#issuecomment-1878396818,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKOYRFETKT36K5E2BUPDWV3YM7EE3AVCNFSM6AAAAAAWSFVP4SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZYGM4TMOBRHA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

Exactly what @bednim said.

Guys, thank, now I got it.
So S0 is only for video+audio, S1 would be pressed in order to use video+audio+mic?

Correct.
On Fri, 5 Jan 2024 at 11:15, NdR91 @.***> wrote:

Guys, thank, now I got it.
So S0 is only for video+audio, S1 would be pressed in order to use
video+audio+mic?
—
Reply to this email directly, view it on GitHub
https://github.com/AlexxIT/go2rtc/issues/331#issuecomment-1878431826,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AKOYRFHX5BK2SF6CTROJELDYM7HENAVCNFSM6AAAAAAWSFVP4SVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNZYGQZTCOBSGY
.
You are receiving this because you were mentioned.Message ID:
@.***>

First of all, thank's for the support @bednim and @nprez83.
Right now I'm on Chrome and the video stream is working both via local access and external url (I didn't test the 2wayaudio yet).
This is the strange thing: it's not workin from mobile both on iOS and Android.
Some suggestion?

And here's the code for my doorbell webrtc card. The stream itself is defined within the go2rtc.yaml. I'm using the latest feature added to the card to support 2-way audio directly through it.
type: custom:webrtc-camera
streams:
  - url: reolink_doorbell
  - url: reolink_doorbell
    mode: webrtc
    media: video,audio,microphone
muted: true
intersection: 0.75
background: false
ui: true
poster: https://stateandfed.com/wp-content/uploads/2017/08/please-stand-by.png
style: >-
  .shortcuts {left: unset; top: 5px; right: 5px; display: flex; flex-direction:
  column; opacity: 0.8} .mode {display: none} .screenshot {display: none}
  .pictureinpicture {display: none}

Hello nprez83,
I need help with this 2 way audio setup for Reolink POE doorbell camera

You'll have to be more specific as to what you need help with

You'll have to be more specific as to what you need help with

Hi Nprez83,
Sorry for indicating well with my issue.
Basically,I got myself a Reolink door Camera POE version and would like to integrate with the Home assistant.
My target for this integration, as follows:-

2 way audio
hopefully the live video is not lagging more than 2 sec comparison with using the actual reolink apps.

Please allow me to aligned myself to be same as page as you.
Could you advise what are the adds-on is needed:-

Frigate? I saw Frigate has a go2rtc. Am I required to install a standalone go2rtc component?

standalone go2rtc? ( which appeared on the sidebar of the HA.

Webrtc?

RTSPtoWebrtc?

####### FYI########################
My current setup,I am able to have the mic icon appeared in Frigate Lovelace card and able to toggle the mic but is not working.
#####################################

@jovanyeo my suggestion is to start from this comment by nprez
We are talking about go2rtc and webrtc card.
It's working on frigate too, but you need to manually update the go2rtc version

@jovanyeo my suggestion is to start from this comment by nprez
We are talking about go2rtc and webrtc card.
It's working on frigate too, but you need to manually update the go2rtc version

@NdR91 my frigate is not working( mic button is there and i am able to switch on/off but no audio output).. and I did manually update frigate ( go2rtc version from 1.2 to 1.5)
Could you advise what are the actual adds on is needed?
And I confused some of codes you guys are talking about: like where this code is located,need to manually created( like what we did when we installed the frigate)
So this is the reason why I ask what are the add on is needed so will be easier to understand and raise my question/issue properly.

@NdR91 and @nprez83
Is my setup correct:
////////////////////////////////////////////////////////////////////////////////////////////////////////////
go2rtc:-
streams:
reolink_doorbell:
- ffmpeg:rtsp://admin:admin@<IP_ADDRESS>:554/h264Preview_01_sub#audio=pcm#audio=volume
- rtsp://admin:admin@<IP_ADDRESS>:554/h264Preview_01_sub
ffmpeg:
bin: ffmpeg
volume: "-af "volume=20dB""
webrtc:
listen: ":39760"  # address of your local server (TCP)
candidates:
- stun:39760  # if you have dynamic public IP-address
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Webrtc: lovelace card
//////////////////////////////
type: custom:webrtc-camera
streams:

url: reolink_doorbell
url: reolink_doorbell
mode: webrtc
media: video,audio,microphone
muted: true
intersection: 0.75
background: false
ui: true
poster: https://stateandfed.com/wp-content/uploads/2017/08/please-stand-by.png
style: >-
.shortcuts {left: unset; top: 5px; right: 5px; display: flex; flex-direction:
column; opacity: 0.8} .mode {display: none} .screenshot {display: none}
.pictureinpicture {display: none}
///////////////////////////////////////////////////////////////////////

{
"producers": [
{
"type": "RTSP passive producer",
"url": "rtsp://<IP_ADDRESS>:8554/bf6df8231dd39201cf62e1e1fb9e3ebb",
"remote_addr": "<IP_ADDRESS>:45916",
"user_agent": "ffmpeg/go2rtc",
"sdp": "v=0\r\no=- 0 0 IN IP4 <IP_ADDRESS>\r\ns=Session streamed by "preview"\r\nc=IN IP4 <IP_ADDRESS>\r\nt=0 0\r\na=tool:libavformat 60.16.100\r\nm=audio 0 RTP/AVP 96\r\nb=AS:128\r\na=rtpmap:96 L16/8000/1\r\na=control:streamid=0\r\n",
"medias": [
"audio, recvonly, L16/8000"
],
"receivers": [
"96 L16/8000, bytes=17736672, senders=1"
],
"recv": 17950684
},
{
"type": "RTSP active producer",
"url": "rtsp://<IP_ADDRESS>/h264Preview_01_sub/",
"remote_addr": "<IP_ADDRESS>:554",
"user_agent": "go2rtc/1.8.5",
"sdp": "v=0\r\no=-<PHONE_NUMBER>760543 1 IN IP4 <IP_ADDRESS>\r\ns=Session streamed by "preview"\r\ni=h264Preview_01_sub\r\nt=0 0\r\na=tool:LIVE555 Streaming Media v2020.08.12\r\na=type:broadcast\r\na=control:*\r\na=range:npt=0-\r\na=x-qt-text-nam:Session streamed by "preview"\r\na=x-qt-text-inf:h264Preview_01_sub\r\nm=video 0 RTP/AVP 96\r\nc=IN IP4 <IP_ADDRESS>\r\nb=AS:8192\r\na=rtpmap:96 H264/90000\r\na=fmtp:96 packetization-mode=1;profile-level-id=640033;sprop-parameter-sets=Z2QAM6wVFKCgPZA=,aO48sA==\r\na=control:track1\r\nm=audio 0 RTP/AVP 97\r\nc=IN IP4 <IP_ADDRESS>\r\nb=AS:8192\r\na=rtpmap:97 MPEG4-GENERIC/16000\r\na=fmtp:97 streamtype=5;profile-level-id=1;mode=AAC-hbr;sizelength=13;indexlength=3;indexdeltalength=3;config=1408\r\na=control:track2\r\n",
"medias": [
"video, recvonly, H.264 High 5.1",
"audio, recvonly, MPEG4-GENERIC/16000"
],
"receivers": [
"96 H264, bytes=4625155, senders=1"
],
"recv": 4668295
}
],
"consumers": [
{
"type": "WebRTC/WebSocket async passive consumer",
"remote_addr": "udp4 srflx <IP_ADDRESS>:48431 related <IP_ADDRESS>:48431",
"user_agent": "Mozilla/5.0 (Linux; Android 13; SM-S908E Build/TP1A.220624.014; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/120.0.6099.145 Mobile Safari/537.36 Home Assistant/2023.12.4-11898 (Android 13; SM-S908E)",
"medias": [
"video, sendonly, VP8, RTX, VP9, AV1, H264, RED, ULPFEC, FLEXFEC-03",
"audio, sendonly, OPUS/48000/2, RED/48000/2, G722/8000, PCMU/8000, PCMA/8000, CN/8000, TELEPHONE-EVENT/48000, TELEPHONE-EVENT/8000, PCML"
],
"senders": [
"102 H264, bytes=1525660, receivers=1",
"8 PCMA/8000, bytes=371712, receivers=1"
],
"send": 1732240
}
]
}

Thanks @NdR91 and @nprez83.
I managed to sort out the issue..

@jovanyeo can you say how? I can't seem to find the way to solve it

@jovanyeo can you say how? I can't seem to find the way to solve it

Hello @mpeterson ,
What components has you installed to your HA.
You only need go2rtc and webrtc.
Basically go2rtc is to pull the stream( video/ audio) from camera.
And Webrtc is the user GUI to interact with the camera.
Which part do you got stuck with?

@jovanyeo thanks for the good predisposition! I just got it to work (partially), it was a networking configuration issue, the ports were not exposed correctly. Now I can do 2-way audio from the card, however the media_player doesn't work still :(

Hi @jovanyeo  !
Downgrade the doorbell firmware to this version "v<IP_ADDRESS>9_23030902".
It's work perfectly :)

Hi @jovanyeo  !
Downgrade the doorbell firmware to this version "v<IP_ADDRESS>9_23030902".
It's work perfectly :)

Hello Max,
Fyi.
v<IP_ADDRESS>3_23041302, this firmware is fine too

@jovanyeo thanks for the good predisposition! I just got it to work (partially), it was a networking configuration issue, the ports were not exposed correctly. Now I can do 2-way audio from the card, however the media_player doesn't work still :(

What is the media player for?

@jovanyeo this is my configuration in "configuration.yaml"
`media_player:

platform: webrtc
name: interphone
stream: doorbell`

My go2rtc version is 1.8.5.
My frigate docker-compose
version: "3.9" services:   frigate:     container_name: frigate     privileged: true # this may not be necessary for all setups     restart: unless-stopped     #image: ghcr.io/blakeblackshear/frigate:stable     image: ghcr.io/blakeblackshear/frigate:0.13.0-beta7     shm_size: "512mb" # update for your cameras based on calculation above     devices:       - /dev/bus/usb:/dev/bus/usb # passes the USB Coral, needs to be modified for other versions       - /dev/dri/renderD128:/dev/dri/renderD128 # for intel hwaccel, needs to be updated for your hardware       - /dev/dri/card0:/dev/dri/card0     volumes:       - /etc/localtime:/etc/localtime:ro       - /media/data/config/go2rtc:/config/go2rtc       - /media/data/config:/config       - /media/data:/media/frigate       - type: tmpfs # Optional: 1GB of memory, reduces SSD/SD Card wear         target: /tmp/cache         tmpfs:           size:<PHONE_NUMBER>     tmpfs:       - /tmp/cache,size=1G     ports:       - "1935:1935"       - "1984:1984" #expose go2rtc :)       - "5000:5000"       - "8554:8554" # RTSP feeds       - "8555:8555/tcp" # WebRTC over tcp       - "8555:8555/udp" # WebRTC over udp
You have an error when you play sound with the media_player ?

I can't see codec name in your config

Oups thx @AlexxIT !
media_player:
  - platform: webrtc
    name: interphone
    stream: doorbell
    audio: pcma

Is 2-way audio still working for people after upgrading to firmware v<IP_ADDRESS>15_2401262240? No longer working for me, would love not having to downgrade the firmware if possible. @jovanyeo

Is 2-way audio still working for people after upgrading to firmware v<IP_ADDRESS>15_2401262240? No longer working for me, would love not having to downgrade the firmware if possible. @jovanyeo

I have confirmed that the 2-way audio broke between the version v<IP_ADDRESS>3_23041302 and v<IP_ADDRESS>15_2401262240. When I reverted to v<IP_ADDRESS>3_23041302 using this firmware archive repository, I managed to get it working.

Is 2-way audio still working for people after upgrading to firmware v<IP_ADDRESS>15_2401262240? No longer working for me, would love not having to downgrade the firmware if possible. @jovanyeo

I have confirmed that the 2-way audio broke between version v<IP_ADDRESS>3_23041302 and v<IP_ADDRESS>15_2401262240. When I reverted to v<IP_ADDRESS>3_23041302 using this firmware archive repository, I managed to get it working.

Thank u!!!!

Is 2-way audio still working for people after upgrading to firmware v<IP_ADDRESS>15_2401262240? No longer working for me, would love not having to downgrade the firmware if possible. @jovanyeo

I have confirmed that the 2-way audio broke between version v<IP_ADDRESS>3_23041302 and v<IP_ADDRESS>15_2401262240. When I reverted to v<IP_ADDRESS>3_23041302 using this firmware archive repository, I managed to get it working.

Thanks. I only realized because I was trying to get 2-way audio working on a new Reolink E1 Zoom, which I figured would be the same setup as the doorbell, only to find out neither of them work 😕

Hi All, using the latest version (1.9.2) of go2rtc, I have managed to use the 2 way talk functionality in QuantumEntangledAndy/neolink with the exec in go2rtc. Instead of approx 3 seconds, my 2 way audio delay is close to the reolink app now.
Here is the script I'm using (neolink_talk.sh):
#!/usr/bin/env bash

ffmpeg -fflags nobuffer -f alaw -ar 8000 -i - -f wav - | ./neolink talk Doorbell -c config.toml --volume=1.0 -m -i "fdsrc fd=0"

go2rtc.yaml:
streams:
  doorbell_sub:
  - ffmpeg:http://doorbell_ip/flv?port=1935&app=bcs&stream=channel0_sub.bcs&user=admin&password=PASS#video=copy#audio=opus
  - exec:/config/neolink/neolink_talk.sh#backchannel=1

I'm using it now with frigate, but that involves installing gstreamer, etc into the docker container, as well as using the latest go2rtc instead of the included v1.8.4. An easier way to test is using Alex's WebRTC card/integration and setting media: video,audio,microphone.
The ffmpeg pipe into neolink is faster than using fdsrc fd=0 ! audio/x-alaw,rate=8000,channels=1 in the neolink command from my testing. I'm sure there is a gstreamer pipeline option which will make it just as fast, but I don't know what it is. Please tell me everything wrong with the command above and help make it better :)

Hi All, using the latest version (1.9.2) of go2rtc, I have managed to use the 2 way talk functionality in QuantumEntangledAndy/neolink with the exec source in go2rtc. Instead of approx 3 seconds, my 2 way audio delay is close to the reolink app now.
Here is the script I'm using (neolink_talk.sh):
#!/usr/bin/env bash

ffmpeg -fflags nobuffer -f alaw -ar 8000 -i - -f wav - | ./neolink talk Doorbell -c config.toml --volume=1.0 -m -i "fdsrc fd=0"

go2rtc.yaml:
streams:
  doorbell_sub:
  - ffmpeg:http://doorbell_ip/flv?port=1935&app=bcs&stream=channel0_sub.bcs&user=admin&password=PASS#video=copy#audio=opus
  - exec:/config/neolink/neolink_talk.sh#backchannel=1

I'm using it now with frigate, but that involves installing gstreamer, etc into the docker container, as well as using the latest go2rtc instead of the included v1.8.4. An easier way to test is using Alex's WebRTC card/integration and setting media: video,audio,microphone.
The ffmpeg pipe into neolink is faster than using fdsrc fd=0 ! audio/x-alaw,rate=8000,channels=1 in the neolink command from my testing. I'm sure there is a gstreamer pipeline option which will make it just as fast, but I don't know what it is. Please tell me everything wrong with the command above and help make it better :)

This is great news! Just so I am clear on what I need to do.... Can you give some instructions in sequence?

Install gsteamer + latest go2rtc and other requirements into frigate docker
Setup Neolink Docker? Or simply use the neolink script within frigate?
Adjust frigate go2rtc steam and use MQTT?

This is great news! Just so I am clear on what I need to do.... Can you give some instructions in sequence?

Follow the steps in the frigate documentation to use the latest go2rtc
Install QuantumEntangledAndy/neolink, inside the frigate docker container making sure to enter the container and install the dependencies.
Adjust the frigate go2rtc doorbell config to use neolink for the backchannel audio. I don't use neolink for anything else, so I'm not sure what you mean when you mention MQTT.

some further clarification on step 2. When running the gstreamer install commands in the frigate container, I get a problem with the version of libcairo2. I manually remove it and install the version that gstreamer needs, however be warned that this causes some errors and debug output in the frigate logs but doesn't seem to affect it in any noticeable way. Here are the commands I run in the frigate docker container to install neolink and the deps.
#!/usr/bin/env bash

# run this script in the frigate container

cd /config

# get the current latest go2rtc
wget https://github.com/AlexxIT/go2rtc/releases/download/v1.9.3/go2rtc_linux_amd64

mv go2rtc_linux_amd64 go2rtc

# get the "latest" neolink
wget https://github.com/QuantumEntangledAndy/neolink/releases/download/v0.6.2/neolink_linux_arm64.zip

unzip neolink_linux_arm64.zip

mv neolink_linux_arm64 neolink

# download deps
apt update
apt remove -y libcairo2
apt install -y libcairo2=1.16.0-5
apt install -y \
  libgstrtspserver-1.0-0 \
  libgstreamer1.0-0 \
  libgstreamer-plugins-bad1.0-0 \
  gstreamer1.0-x \
  gstreamer1.0-plugins-base \
  gstreamer1.0-plugins-good \
  gstreamer1.0-plugins-bad

Now create the file /config/neolink/config.toml:
bind = "<IP_ADDRESS>"

[[cameras]]
name = "Doorbell"
username = "admin"
password = "password"
address = "doorbell ip_address"

and the file /config/neolink/neolink_talk.sh
#!/usr/bin/env bash

ffmpeg -fflags nobuffer -f alaw -ar 8000 -i - -f wav - | ./neolink talk Doorbell -c config.toml --volume=1.0 -m -i "fdsrc fd=0"

Finally, edit the go2rtc streams section in your frigate config file, /config/config.yml:
streams:
  doorbell_sub:
  - ffmpeg:http://doorbell_ip/flv?port=1935&app=bcs&stream=channel0_sub.bcs&user=admin&password=PASS#video=copy#audio=opus
  - exec:/config/neolink/neolink_talk.sh#backchannel=1

I think this is detailed enough now. This isn't a frigate issue so I don't think we should discuss how to install into frigate any further.

This is great news! Just so I am clear on what I need to do.... Can you give some instructions in sequence?

Follow the steps in the frigate documentation to use the latest go2rtc
Install QuantumEntangledAndy/neolink, inside the frigate docker container making sure to enter the container and install the dependencies. I put the neolink executable and config file in the /config/neolink directory.
Add your camera config to /config/neolink/config.toml file
Create a script /config/neolink/neolink_talk.sh and paste the contents from my initial comment.
Adjust the frigate go2rtc doorbell config to use neolink_talk.sh for the backchannel audio - it's essentially identical to the go2rtc.yaml config from my initial comment, but in the frigate config.yaml.

Edit: I originally posted another comment with more detailed instructions, but I've moved it to the frigate discussions.

I am getting this error in go2rtc log
2024-06-12 20:59:52.694773170  20:59:52.694 WRN github.com/AlexxIT/go2rtc/internal/streams/producer.go:171 > error="exit status 127" url=exec:/config/neolink/doorbell.sh#backchannel=1

Did you make the script executable? chmod +x /config/neolink/neolink_talk.sh, forgot to add that!

Did you make the script executable? chmod +x /config/neolink/neolink_talk.sh, forgot to add that!

Yes I did. When I run the script directly from CLI it seems working without throwing any error

Yes I did. When I run the script directly from CLI it seems working without throwing any error.

If you do the following inside the frigate docker container to play a test MP3, does it work?
cd /config/neolink

./neolink talk Doorbell --config config.toml -m -i "souphttpsrc location=https://rhasspy.github.io/piper-samples/samples/en/en_US/lessac/high/speaker_0.mp3"

Yes I did. When I run the script directly from CLI it seems working without throwing any error.

If you do the following inside the frigate docker container to play a test MP3, does it work?
cd /config/neolink

./neolink talk Doorbell --config config.toml -m -i "souphttpsrc location=https://rhasspy.github.io/piper-samples/samples/en/en_US/lessac/high/speaker_0.mp3"

Yup that works

Only thing I can think of is to try go2rtc v1.9.2 instead of v1.9.3 as that's what I was using originally. I haven't tested too much with the latest version. Frigate version 0.13.2. Sometimes if things crash in a weird way, I need to issue a ./neolink reboot Doorbell --config config.toml and then restart frigate, but that is a rare occurrence.

How about changing neolink_talk.sh to:
#!/usr/bin/env bash
ffmpeg -i https://rhasspy.github.io/piper-samples/samples/en/en_US/lessac/high/speaker_0.mp3 -f  alaw -ar 8000 -f wav - | neolink ./neolink talk Doorbell -c config.toml --volume=1.0 -m -i "fdsrc fd=0"

and then calling it from the docker container shell, /config/neolink/neolink_talk.sh. It should play the test mp3 similar to before, but now we're just making sure the script works.
Only other thing I can think of is to try go2rtc v1.9.2 instead of v1.9.3 as that's what I was using originally. I haven't tested too much with the latest version. Frigate version 0.13.2. Sometimes if things crash in a weird way, I need to issue a ./neolink reboot Doorbell --config config.toml and then restart frigate, but when that happens, issuing a test command like above doesn't work either, it is a rare occurrence.

I am using the exact same go2rtc as well as frigate as you. Not sure why it's not working on my end. May be I will just wait for it to be integrated into go2rtc itself lol

Does anybody know if the latest firmware (v<IP_ADDRESS>15_2401262240) also breaks 2-way audio?

I have confirmed that the 2-way audio broke between version v<IP_ADDRESS>3_23041302 and v<IP_ADDRESS>15_2401262240. When I reverted to v<IP_ADDRESS>3_23041302 using this firmware archive repository, I managed to get it working.

Does anybody know if the latest firmware (v<IP_ADDRESS>15_2401262240) also breaks 2-way audio?

I have confirmed that the 2-way audio broke between version v<IP_ADDRESS>3_23041302 and v<IP_ADDRESS>15_2401262240. When I reverted to v<IP_ADDRESS>3_23041302 using this firmware archive repository, I managed to get it working.

That's what is being said in the post you quoted. Yes, my findings were the same.

I found a newer firmware version online for the Wifi reolink doorbell v<IP_ADDRESS>08_2405271823 that has support for the 2 way audio and works with the V2 chime at 900Mhz. I do notice the chime on mine is a little buggy, sometimes it needs a long press for it to work. Not sure if it's a issue with the firmware or frigate
here is a link to the file https://drive.google.com/file/d/19LxC2tIbTUEBUNiwoFtAMPsC5MbF9YF5/view?usp=drive_link

@n3xus1  Do you know if the new updated firmware helps with anything or fixes any problems??

@n3xus1 Do you know if the new updated firmware helps with anything or fixes any problems??

All I know is that it allows 2 way audio and the V2 chime to work.
I did experiment a bit with neolink, and it seemed to work but was buggy.
The RC version was very delayed and I couldn't use 2 way audio when not on local network with neolink. I may need to install libssl in my docker container.
I have not had a chance to go back and test more with neolink

I bricked and returned TWO doorbells. I tried downgrading to 2676 and 2033, both times the doorbell would no longer connect and got itself stuck constantly rebooting every 20 seconds or so. I can't think of anything I could have possibly done wrong (unless updating firmware over WiFi instead of Ethernet is what killed them?). Is it worth it to try a third time with this other firmware? Anyone have similar experiences?

@bedrockuser Please let me know how neolink works on a new doorbell! I'd greatly appreciate that, since I'm having trouble finding a good alternative to Reolink. If it works well I may get another doorbell and give it a shot.

I bricked and returned TWO doorbells. I tried downgrading to 2676 and 2033, both times the doorbell would no longer connect and got itself stuck constantly rebooting every 20 seconds or so. I can't think of anything I could have possibly done wrong (unless updating firmware over WiFi instead of Ethernet is what killed them?). Is it worth it to try a third time with this other firmware? Anyone have similar experiences?

I received two new PoE Reolink (Black and White) doorbells yesterday with latest firmware. At first they where not working. After upgrading to a newer version provided by Reolink support it started working again. Please review
Hope this helps.

I received two new PoE Reolink doorbells (Black and White) yesterday with latest firmware. At first they where not working. After upgrading to a newer version provided by Reolink support it started working again. Please review my HA Community post

If you get special firmware from reolink support please try and submit them to the https://github.com/gtalusan/reolink-fw-archive project so others can benefit from them.

I found a newer firmware version online for the Wifi reolink doorbell v<IP_ADDRESS>08_2405271823 that has support for the 2 way audio and works with the V2 chime at 900Mhz. I do notice the chime on mine is a little buggy, sometimes it needs a long press for it to work. Not sure if it's a issue with the firmware or frigate
here is a link to the file https://drive.google.com/file/d/19LxC2tIbTUEBUNiwoFtAMPsC5MbF9YF5/view?usp=drive_link

Has anyone else gotten a WiFi version of this v<IP_ADDRESS>08 firmware from Reolink support? I know I am being a stickler but I would prefer an official download link before I take my chances on buying a 3rd doorbell...

I found a newer firmware version online for the Wifi reolink doorbell v<IP_ADDRESS>08_2405271823 that has support for the 2 way audio and works with the V2 chime at 900Mhz. I do notice the chime on mine is a little buggy, sometimes it needs a long press for it to work. Not sure if it's a issue with the firmware or frigate

here is a link to the file https://drive.google.com/file/d/19LxC2tIbTUEBUNiwoFtAMPsC5MbF9YF5/view?usp=drive_link

Has anyone else gotten a WiFi version of this v<IP_ADDRESS>08 firmware from Reolink support? I know I am being a stickler but I would prefer an official download link before I take my chances on buying a 3rd doorbell...

I downloaded it from this link and it worked for me. I'm on vacation so I'm not able to send you the exact copy I used. You could try support yourself and see if you can get it or maybe there is a newer version out you could share with all of us.

I downloaded it from this link and it worked for me. I'm on vacation so I'm not able to send you the exact copy I used. You could try support yourself and see if you can get it or maybe there is a newer version out you could share with all of us.

For some reason the support person I emailed seemed unaware of the new version (or unwilling to share it) however I can confirm the firmware on the Drive link worked for me as well, I got a brand-new doorbell today and updated it. 2-way audio is working fine through go2rtc + Frigate lovelace card

I downloaded it from this link and it worked for me. I'm on vacation so I'm not able to send you the exact copy I used. You could try support yourself and see if you can get it or maybe there is a newer version out you could share with all of us.

For some reason the support person I emailed seemed unaware of the new version (or unwilling to share it) however I can confirm the firmware on the Drive link worked for me as well, I got a brand-new doorbell today and updated it. 2-way audio is working fine through go2rtc + Frigate lovelace card

What version are you running?


[runtime] move the empty Dictionary and Set singletons to rodata

Basically just a mirror of what Array does.
Resolves rdar://18220063

@swift-ci please test

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - cf6767a0225108c28c0ff194e14db892bb31e5dc
Test requested by - @Gankro

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - cf6767a0225108c28c0ff194e14db892bb31e5dc
Test requested by - @Gankro

@swift-ci please test

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - cf6767a0225108c28c0ff194e14db892bb31e5dc
Test requested by - @Gankro

@swift-ci please test

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - cf6767a0225108c28c0ff194e14db892bb31e5dc
Test requested by - @Gankro

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - cf6767a0225108c28c0ff194e14db892bb31e5dc
Test requested by - @Gankro

@swift-ci please test

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - 21405f1ac1f91fb2dbd9de19811c40ed9a3897d8
Test requested by - @Gankro

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - 21405f1ac1f91fb2dbd9de19811c40ed9a3897d8
Test requested by - @Gankro

Ah good, master is just broken. 🙃

Bruno reverted the offending commit.
@swift-ci Please test

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - 21405f1ac1f91fb2dbd9de19811c40ed9a3897d8
Test requested by - @jrose-apple

Build failed
Jenkins build - Swift Test OS X Platform
Git Commit - 21405f1ac1f91fb2dbd9de19811c40ed9a3897d8
Test requested by - @jrose-apple

@swift-ci please test

Build failed
Jenkins build - Swift Test Linux Platform
Git Commit - 21405f1ac1f91fb2dbd9de19811c40ed9a3897d8
Test requested by - @Gankro

@swift-ci please smoke test Linux Platform

The Linux Test that's failing seems to be REPL tests looking for xcrun? I sincerely hope this PR isn't causing that...


devicemanger problem

the device update should be pub-sub pattern.
Is IEntityClass , IEntityClassifierService and IEntityClassListener is  redundance,  a map between  deviceKey and entity  is perfer ?

@wenxueliu Can you elaborate please on what the problem is? I don't quite understand. Thanks!

@wenxueliu I'm going to close this issue to keep our list of active issues clean. Please re-open or discuss what you think the problem is on<EMAIL_ADDRESS>


feature/update table stories

Checklist:

[x] Documentation
[x] Tests
[x] Ready to be merged

Update stories to use Table.Row, Table.Cell and Table.CellHeader syntax

Codecov Report

Merging #330 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #330   +/-   ##
=======================================
  Coverage   99.73%   99.73%
=======================================
  Files          74       74
  Lines         378      378
  Branches       14       14
=======================================
  Hits          377      377
  Misses          1        1

Continue to review full report at Codecov.

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


BlockReward Hard fork preparation

After hardfork that will introduce BlockReward contract, there won't be any need in payout script, so this PR removes installation of cronjob for payout script.

Related to https://github.com/poanetwork/poa-devops/pull/17

Tx fee is accrued to mining keys, so we decided not to remove the payout script.


Player drops like a stone

Player drops like a stone allow some x movement maybe 0.1 to 0.25 of original movement control. So it doesnt look that artificial.

added @themangomago


Can't compile PPD per instructions in README

$  cmake --build .
Scanning dependencies of target ppds
[ 33%] Building PPDs
[ 33%] Built target ppds
Scanning dependencies of target rastertozj
[ 66%] Building C object CMakeFiles/rastertozj.dir/rastertozj.c.o
/c0de/d0ngxi/src/zj-58/rastertozj.c: In function ‘initializeSettings’:
/c0de/d0ngxi/src/zj-58/rastertozj.c:37:3: warning: ‘ppdOpenFile’ is deprecated: Use cupsCopyDestInfo and friends instead. [-Wdeprecated-declarations]
   37 |   ppd_file_t *pPpd = ppdOpenFile(getenv("PPD"));
      |   ^~~~~~~~~~
In file included from /c0de/d0ngxi/src/zj-58/rastertozj.c:4:
/usr/include/cups/ppd.h:389:20: note: declared here
  389 | extern ppd_file_t *ppdOpenFile(const char *filename) _CUPS_DEPRECATED_1_6_MSG("Use cupsCopyDestInfo and friends instead.");
      |                    ^~~~~~~~~~~
/c0de/d0ngxi/src/zj-58/rastertozj.c:41:3: warning: ‘ppdClose’ is deprecated: Use cupsCopyDestInfo and friends instead. [-Wdeprecated-declarations]
   41 |   ppdClose(pPpd);
      |   ^~~~~~~~
In file included from /c0de/d0ngxi/src/zj-58/rastertozj.c:4:
/usr/include/cups/ppd.h:364:14: note: declared here
  364 | extern void  ppdClose(ppd_file_t *ppd) _CUPS_DEPRECATED_1_6_MSG("Use cupsCopyDestInfo and friends instead.");
      |              ^~~~~~~~
[100%] Linking C executable rastertozj
[100%] Built target rastertozj

What do you mean by 'can't compile'?
Yes, there are couple of warnings. They are intended, as ppd is actually deprecated years ago, but it is still use wide-spread on tons of systems. It will be warnings so.

Our build policy is (by default) very strict, no warnings or it's not successful compile. 😉
https://github.com/apple/cups/blob/master/cups/ppd.h
have you investigated what type of effort would be required to remove the warning and perform as it suggests.  Should I investigate further - what are your thoughts on the future of this library once the required library is removed? Thanks!
(is there are fork/dev branch, plan?)

I can't do anything with deprecated warning here, since it is intended. Apple deprecated CUPS interface, and that is nothing to do with it, everybody should struggle anytime we try to use that interface now.
You may try, looking to reported -Wdeprecated-declarations - append compiler flag -Wno-deprecated-declarations, and it could work.

@elasticdotventures , perhaps you could fix it and submit a pull request?


Add configurable password validators

Based on the awesome work of #86, but instead of passing absolute path strings for validators, you just pass the functions (closer to DRF way?) and has some tests.
If this PR goes in, would close #86 and #107.

Problem seems related to #5485, will try to add a fix.

Reverted my fix for Travis, as it is covered from #123, and rebased on master.

Your changes are merged in #124. I added one test, and rebase to master.
The new version (0.4.2) will be released today.

Thanks! :rocket:


Cannot run on Windows

When trying to run on Windows, I get the following error:
'config_builder' is not recognized as an internal or external command,
operable program or batch file.

My command is flutter packages pub run build_runner build --define 'dynamic_config_generator|config_builder=variant=stable'
My pubspec has dynamic_config_generator: ^0.3.2 under dev_dependencies.

Thanks for taking a look. Let me know if you need anything from my end.

Sorry for the late reply but I wasn't able to reproduce this. Will try again on a different Windows machine.

Hey @fennelhans, are you still facing this issue?

Sadly, it's no longer @fennelhans 😓
I'll double check when I get back home.

Yes, I still see this issue

Do you lack proper access to a Windows development environment? How can I help?

@hanskokx can you please try running this  flutter packages pub run build_runner build --define """dynamic_config_generator|config_builder=variant=$debug""". You needed to escape the inverted commas on Windows.

Yeah, you're right. That does the trick. Maybe we can make a note of this in the README?

yep, I will update the README, thanks!


Revamped breadcrumbs to support schema.org markup

Support for mobile-friendly breadcrumbs in search engines.
Also fixes some issues with breadcrumbs that were present in the old code.
More info here:
https://developers.google.com/structured-data/breadcrumbs
https://schema.org/breadcrumb
https://schema.org/BreadcrumbList

@August - we usually require Pull Requests to have a JIRA ticket.  I have created the JIRA at https://dnntracker.atlassian.net/browse/DNN-7350.  Would you be able to add some more information to help our QA test this.  In the meantime I will merge this.
Thanks


Update wake-word-voice-assistant

Update to use the new micro_wake_word multiple models

Thanks, you were beaten by a few minutes =)
Duplicate of #236


go/build: Context.Import no longer returns a NoGoError with -mod=vendor

What version of Go are you using (go version)?

go version go1.20.1 darwin/amd64

Does this issue reproduce with the latest release?
Yes,
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
go version go1.20.1 darwin/amd64
dprotasowski@dprotasowsBPN7C eventing % go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/dprotasowski/Library/Caches/go-build"
GOENV="/Users/dprotasowski/Library/Application Support/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOINSECURE=""
GOMODCACHE="/Users/dprotasowski/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/dprotasowski/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/Cellar/go/1.20.1/libexec"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.20.1/libexec/pkg/tool/darwin_amd64"
GOVCS=""
GOVERSION="go1.20.1"
GCCGO="gccgo"
GOAMD64="v1"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/dprotasowski/work/eventing/go.mod"
GOWORK=""
CGO_CFLAGS="-O2 -g"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-O2 -g"
CGO_FFLAGS="-O2 -g"
CGO_LDFLAGS="-O2 -g"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/xs/xfp1z4cn643c46w69lv8bv8w0000gp/T/go-build3514065930=/tmp/go-build -gno-record-gcc-switches -fno-common"

What did you do?

Some tooling uses go/build::Context.ImportDir to collect type/package info to use to generate docs and code. https://github.com/ahmetb/gen-crd-api-reference-docs/issues/61
https://github.com/kubernetes/gengo/blob/ab3349d207d4cc9f4bc5c37ba6aa062b4b2ffacc/parser/parse.go#L157
What did you expect to see?
Tool runs
What did you see instead?
Starting with go1.20 these tools started to fail. Creating a simple repro example the error from go/build is
cannot query module due to -mod=vendor
	(Go version in go.mod is at least 1.14 and vendor directory exists.)

Repro case (go1.19):
$ git clone https://github.com/dprotaso/eventing.git
$ cd eventing
$ git checkout broken-go-build
$ go run main.go
panic: cannot query module due to -mod=vendor
	(Go version in go.mod is at least 1.14 and vendor directory exists.)

goroutine 1 [running]:
main.main()
	/Users/dprotasowski/work/eventing/main.go:13 +0xba
exit status 2

With 1.19 it panics it doesn't return any packages (which is fine because the above linked tools handle this case)
panic: no buildable Go source files in /eventing/pkg/apis

goroutine 1 [running]:
main.main()
	/eventing/main.go:13 +0xba
exit status 2

It isn't clear to me when or why this would have changed, but I think the reported Go 1.20 behavior of go/build is correct.

(*Context).Import requests package data for a package import path, not a directory.

Given the possibility of nested module paths, the lack of .go source files in a directory does not necessarily imply that the package does not exist (although that is often the case).

With -mod=vendor, we cannot load the full module graph to check whether it contains another module that provides the package. (For example, in this case the package could be provided by a module with the path knative.dev, or one with the path knative.dev/eventing/pkg.) For that matter, even if we could load the full module graph, we can't say anything definitive about an import path that it doesn't contain.

FWIW - I can add a doc.go file as a work around to fix this.

Given the possibility of nested module paths, the lack of .go source files in a directory does not necessarily imply that the package does not exist (although that is often the case).

Can you clarify this point? Are you saying that because knative.dev/eventing/pkg/apis does not contain go code there could be some nested module that declares that a module at a parent path. So the module name/path doesn't match the actual location in the repo?
ie. moduleA - go.mod declares it's package as knative.dev/eventing/pkg/apis
go.mod
pkg/apis/
- moduleA/go.mod

For example, in this case the package could be provided by a module with the path knative.dev, or one with the path knative.dev/eventing/pkg

Likewise - I don't really understand. My assumption is a go.mod file at knative.dev/eventing would take ownership of all directories under knative.dev/eventing/* unless another module specified something more specific ie. knative.dev/eventing/moduleB - is that a bad assumption?

Probably also worth calling out is that a lot of modules don't have *.go files at all the intermediate levels in a path. It was never the case beforehand.
ie.
moduleA/
- go.mod
- some/path/
   - some-file.go

ie. empirical examples
https://github.com/kubernetes/client-go/tree/master/util
https://github.com/knative/networking/tree/main/pkg/apis
Should they be adding these empty files now?

Are you saying that because knative.dev/eventing/pkg/apis does not contain go code there could be some nested module that declares that a module at a parent path.

Yes. You could have a module structured like:
-- go.mod --
module knative.dev
go 1.20
-- eventing/pkg/apis/apis.go --
package apis

Or like:
-- go.mod --
module knative.dev/eventing/pkg
go 1.20
-- apis/apis.go --
package apis

In that example wouldn't you assume knative.dev/eventing/pkg is part of the same module in both cases - hence NoGoError might be the right value to return?

Should they be adding these empty files now?

No. I think you are conflating modules and packages?
A module is “a collection of packages that are released, versioned, and distributed together.”
A package “is constructed from one or more source files….”
In this case, the module is knative.dev/eventing. It contains packages like knative.dev/eventing/pkg/apis/config and knative.dev/eventing/pkg/apis/eventing. It does not contain packages knative.dev/eventing/pkg or knative.dev/eventing/pkg/apis, because those directories within the module do not contain source files. They can't be imported by other Go packages or programs, can't be built by go build, and so on.
However, the fact that they do not exist in the current module does not imply that they don't exist in some other module.
(*go/build.Context).Import imports packages — not modules or directories.
In contrast, ImportDir does import directories, and I would expect it to return a NoGoError in this case (but I haven't tested, and of course bugs are possible).

OK that clears things up - looks like ImportDir returns NoGoError


Photos for blog posts often get cropped in strange ways when featured

The way that photos that accompany blog posts render when they show up as previews on either CC's homepage or on https://creativecommons.org/blog/ is often not ideal -- more often than not, the way they are automatically cropped cuts out heads or other critical parts of the image. Some examples attached

@kgodey
Please do you validate this issue?
If Yes, then I would like to work on this.


[Bug] Svelte 5: Optional children type error

Describe the bug
Having optional children prop in a component causes children arg within the story to have error: Type 'string' is not assignable to type 'Snippet<[]>'.
Steps to reproduce the behavior
Take the default example from next branch, and in the Button component, make children optional: children?: Snippet;
Environment
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>

Hi Tomasz!
Thanks for reporting this issue.
I've created a PR #215 with a potential fix for this case.
Could you please find a time to verify if this solves the issue in your project?

Indeed it works. Thank you!
I have some more type errors, especially when working with a bit more complex types for props. It often gives me an "Expression produces a union type that is too complex to represent". I will open separate issue(s) for that, but mentioning it here since it might be related?

Actually, while optional children work in that canary version, other props being required causes an error now.
Minimal example:
Button.stories.svelte:
<script context="module" lang="ts">
  import { defineMeta, setTemplate, type Args } from "@storybook/addon-svelte-csf";

  import Button from "./Button.svelte";

  const { Story } = defineMeta({
    component: Button,
    tags: ["autodocs"],
    args: {
      children: "Click me",
      variant: "filled",
    },
    argTypes: {
      variant: { control: "select", options: ["filled", "outlined"] },
      children: { control: "text" },
    },
  });
</script>

<script lang="ts">
  setTemplate(template);
</script>

{#snippet template({ children, ...args }: Args<typeof Story>)}
  <Button {...args}>{children}</Button>
{/snippet}

<Story name="Primary" args={{ variant: "filled" }} />

Button.svelte:
<script lang="ts">
  import type { Snippet } from "svelte";

  interface Props {
    variant: "filled" | "outlined";
    children?: Snippet;
  }

  const { variant, children }: Props = $props();
</script>

<button type="button" class={variant}>
  {@render children?.()}
</button>

Here's the error:

Also getting these errors, which seem to be caused by having a non-children Snippet prop which is optional

Error occurs here in a story file:
{#snippet template({ children, ...args }: Args<typeof Story>)}
  <Chip bind:selected {...args}>
    {children}
  </Chip>
{/snippet}

Component props:
  import { Toggle } from "bits-ui";

  interface Props extends Omit<Toggle.RootProps, "pressed" | "onPressedChange"> {
    variant?: "assist" | "filter" | "input" | "suggestion";
    selected: Toggle.RootProps["pressed"];
    onSelectedChange?: Toggle.RootProps["onPressedChange"];
    leadingIcon?: Snippet;
    trailingIcon?: Snippet;
    children: Snippet;
  }

Hey @tomasz13nocon!
Firstly, thanks a lot for checking!
You're right to be suspicious that they might be related given the circumstances.
To be honest, I am not sure. I can reproduce it in both versions (next and in the aforementioned PR).
I admit, I'm not satisfied with the current state of those type helpers Args and StoryContext - for defining a template snippet for setTemplate.
They're dependent on types defined in @storybook/svelte and @storybook/types, and obviously not doing the job correctly for now. I'll try to ask around with solutions for this case. Until then, I have to ask you to be patient with this issue. 🙏

Should be fixed in https://github.com/storybookjs/addon-svelte-csf/releases/tag/v5.0.0-next.11


Bug with the title of the musics

See:
https://i.imgur.com/cJlmQ6P.png
And this:
https://i.imgur.com/YEh6FTx.png
Do you see what I mean?
The track appear two times but it is not definitive...
The second scrobble stays wrong for some seconds...
Could you solve it, please??? =))))

The "Now playing notification" entry (with "Scrobbling now" behind it) is only sent once you have listened to a song for at least 3 seconds so that skipping through tracks does not send one for each track. This is intended behavior.


Added 'command' block for some busybox pod's scripts

Some example scripts have busybox:1.28 as their image, but no command or arg values were declared in them that will keep the container alive. Because of which if someone copies the code and try to run it, the pod it will create will complete/crash continuously creating CrashLoopBackoff state.

/retitle Added 'command' block for some busybox pod's scripts

@killshotrevival Thanks for your contribution!
It appears that this PR includes changes to files across multiple languages. However, docs follows different processes for each localization, and and we typically don't accept pull requests that impact multiple languages simultaneously. The recommended approach would be modifying only the primary website content (which means only English content) initially with this PR, and patiently waiting its approval and merge. After the merge of the English content, proceed to create separate pull request for the remaining languages. I hope this suggestion is helpful.

Hey @dipesh-rawat , thanks for your suggestions, I have updated the PR accordingly. Can you please have a look 😃

/remove-language ja
/remove-language ko
/remove-language pt
/remove-language zh

Hey @dipesh-rawat, are there any other updates required from my side, that I can help with to clear out this PR

Hey @dipesh-rawat, any updates for me regarding this PR?? 🤞🏻

This lgtm.
Thanks @killshotrevival
/lgtm

/approve


[Android] Implement embedding API: getCompositingSurfaceType()

Implement this API to get the rendering backend type of XWalkView.
BUG=XWALK-4867

@lincsoon @axinging @wuhengzhi please help to review.

@lincsoon  please help to review and merge, thanks


UI: Fixes in the Usage UI

Description
This PR addresses the following issues related to the Usage UI:

Usage metrics section is displayed with null values to users without access to the listUsageServerMetrics API (Fixes #9992);
Purge usage records action is displayed to users without access to the removeRawUsageRecords API (Fixes #9995);
Generate usage records action is displayed to users without access to the generateUsageRecords API (Fixes #9994);
Vertical scroll overflow in the usage records table (Fixes #9996);
Usage types input field is displayed to users without access to the listUsageTypes API. Since the usageid parameter of the listUsageRecords API can only be used alongside the type parameter, both form fields are now hidden when the caller does not have access to the listUsageTypes API.

Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[X] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)
[ ] build/CI
[ ] test (unit or integration test code)

Feature/Enhancement Scale or Bug Severity
Bug Severity

[ ] BLOCKER
[ ] Critical
[ ] Major
[X] Minor
[ ] Trivial

Screenshots (if appropriate):

Usage UI view when the user does not have access to the listUsageServerMetrics,  removeRawUsageRecords, generateUsageRecords and listUsageTypes APIs

How Has This Been Tested?

Verified that users without access to the listUsageServerMetrics,  removeRawUsageRecords, generateUsageRecords and listUsageTypes APIs were not able to interact with them through the UI.
Verified that the vertical overflow issue was resolved.

@blueorangutan ui

@blueorangutan ui

UI build: :heavy_check_mark:
Live QA URL: https://qa.cloudstack.cloud/simulator/pr/10000 (QA-JID-488)

Just one thing: the last heartbeat may be undefined. We could show something like "never" instead of "null" for the last heartbeat for this case.

@winterhazel, done

Just one thing: the last heartbeat may be undefined. We could show something like "never" instead of "null" for the last heartbeat for this case.

@winterhazel, done

It would also be good to change the "a few seconds ago" in this case

It would also be good to change the "a few seconds ago" in this case

Done.

UI build: :heavy_check_mark:
Live QA URL: https://qa.cloudstack.cloud/simulator/pr/10000 (QA-JID-490)

@blueorangutan ui

@bernardodemarco a Jenkins job has been kicked to build UI QA env. I'll keep you posted as I make progress.

UI build: :heavy_check_mark:
Live QA URL: https://qa.cloudstack.cloud/simulator/pr/10000 (QA-JID-491)


chore(Data/Matroid/Closure): fix typo

We add a single newline character so that a two-item list in the docstring for matroid closure appears with the items on separate lines in docgen.

bors merge


Report - area always = 96 square km

Wonderful reporting system, thank you! I noticed that on my reports and your own posted on Reddit/imgur that the {{ area }} is always 96 square km.

Yeah, I hardcoded it because of lack of time (together with city name). Nonetheless, @pdong did PR #34 that solves the issue, I'll test it and hopefully merge when I have spare time.

PR #34 was just merged to master.


Bump envoy image to 1.21 and add compatibility with 1.22

Changes

Bump envoy image to v1.21 and update kind-e2e.yaml to test against v1.21 and v.1.22.
Currently gateway API uses envoy image is 1.20, but it will be EOL soon https://github.com/envoyproxy/envoy/blob/main/RELEASES.md#major-release-schedule

/kind enhancement

Fixes #907

Release Note

Bump Envoy version to v1.21 for Kourier gateway.

/lgtm
/approve
Thank you! Could you sign in EasyCLA ?

@nak3 several upgrade tests are not passing (pls). Is this expected?

@nak3 I submitted the EasyCLA and I am waiting for IBM's corporate approver.

Thank you! Merged.
For the CI issue, yes I noticed it recently and need to be fixed.


Prometheus Agent Stops Scraping all its Targets after sometime without any error logs.

Prometheus with --enable-feature=agent Stops Scraping all its Targets after sometime and when we check in terminal logs there is no such logs related scraping stop.
Is anyone has any idea about this ???
Image : prometheus:v2.32.0
Stop Targets

cc @rfratto

Can you tell us if all your targets are affected? Is your browser and Prometheus Agent at the correct/same time?

We ran into a similar issue with Grafana Agent, where the root cause was a deadlock in the series tracker. That bug should've been fixed by the time we moved the code, but maybe I missed something. A goroutine dump would be really useful here.

Is anyone here who is using Prometheus Agent currently with the successful scraping targets ???

For reference, this was the Grafana Agent issue we fixed that seemed similar to this: grafana/agent#185. Those changes seem to have been brought over in the initial move, so either something else is wrong or moving the code re-introduced a deadlock somewhere else.

I suspect something may be wrong with stripeSeries.Set being run in parallel to stripeSeries.gc.
The equivalent Grafana Agent code doesn't try to grab both locks at once. I'm trying to think through if that would cause any problems here.

The equivalent Grafana Agent code doesn't try to grab both locks at once. I'm trying to think through if that would cause any problems here.

OK, it's definitely likely this is the problem, and I can follow how it would cause a deadlock. I'll open a PR.

I have also witnessed this behaviour although I don't have a goroutine dump.  If I see it happen again I'll try and grab one.

OK, I think we have an example of this
prom 2.32.1 build 41f1a8125e664985dd30674e5bdf6b683eff5d32
The goroutine dump is at https://gist.github.com/rhowe-trp/c84591d0d14872dfd9679c5e2f065bac

Can you confirm that this was fixed in latest prometheus release? (latest is 2.33.4 at time of writing) ?

@roidelapluie  Thank you
The latest Prometheus release( 2.33.4 a) working fine for the same.


Fixes #10: Added support for integer fields.

This also fixes number handling in general. r=? @Natim

Nice :+1: r+


Add a configuration to preserve whitespace on lines containing only whitespace

Resolve #801
I've implemented an option to preserve whitespace on lines that consist solely of whitespace.
I believe this option will be useful for many people, but I'm not sure if I've implemented it in the correct way 🤔
If the implementation direction is not correct, please feel free to let me know. Thank you 🙇

Thanks. Just two minor comments, otherwise LGTM.

I've applied all the comments you suggested. Thank you for the kind review 🙇♂

Oops, sorry. The format check failed 😓
I’ve fixed it and force-pushed.

No worries. Already re-triggered CI.

No worries. Already re-triggered CI.

Oh no, it failed on a different file this time 😨
I did the same formatting with curl -s https://raw.githubusercontent.com/swiftlang/github-workflows/refs/heads/main/.github/workflows/scripts/check-swift-format.sh | bash as in CI, is there any other way to fix this?

You should be able to just cd to the swift-format directory and then run swift format -r -i .

You should be able to just cd to the swift-format directory and then run swift format -r -i .

I'm done! Thank you!


Download data to todi in video2dataset format.

Download HowTo100M and Hd-vila datasets in video2dataset format using the scripts/methods described in https://github.com/swiss-ai/video2dataset/tree/main/swiss_ai.
This will be downloaded in this format:
 ├── 00000.tar
 |     ├── 00000.mp4
 |     ├── 00000.txt
 |     ├── 00000.json
 |     ├── 00001.mp4
 |     ├── 00001.txt
 |     ├── 00001.json
 |     └── ...
 |     ├── 10000.mp4
 |     ├── 10000.txt
 |     ├── 10000.json
 ├── 00001.tar
 |     ├── 10001.mp4
 |     ├── 10001.txt
 |     ├── 10001.json
 │     ...
 ...

Child issue of #3.

Update: we have built a Docker image for containerized runs with v2d here: https://github.com/swiss-ai/containers.
We have done small runs to test the right setting for the num_tasks and num_cpus_per_task settings and found that tasks=2 and cpus=128 is optimal (compared to more tasks and fewer cpus).
To download the data fully, we will need to follow these steps:

Allocate and enter a compute node
a. Run salloc -t240 to allocate compute, and note the jobid for that allocation.
From login node, create a container based on the Docker image we just created and run the job, e.g. for howto100m:

srun --overlap --jobid <JOBID> --environment=/store/swissai/a08/containers/v2d/v2d.toml --container-workdir=$PWD video2dataset --url_list="/store/swissai/a08/data/raw/howto100m/v2d/howto100m_v2d.csv" --config="/store/swissai/a08/kdu/video2dataset/swiss_ai/configs/download_todi.yaml" --output_folder="/store/swissai/a08/data/raw/howto100m/v2d" --input_format="csv" --output_format="webdataset" --url_col="video_link" --encode_formats="{'video': 'mp4', 'audio':'m4a'}"

Most of the code to do this is in the video2dataset repo, so progress and code will be documented in this PR https://github.com/swiss-ai/video2dataset/pull/5.


SSL and Alice Domain

Hello! I have one worker and a many alias domain.
I get a mistake if the worker is connected from another domain: sslv3 alert certificate unknown
my settings:
'ssl' => [
        'local_cert'  => 'ssl.site.ru.pem',
        'local_pk'    => 'ssl.site.ru.key',
        'verify_peer' => false,
        'verify_peer_name' => false
    ]

Is it possible to somehow disable the certificate check?

Sorry. Workerman not support multi domain.


Allow npm install -g black-screen

Why would you want to do that? :confused:

I think he's suggesting something like this: https://www.npmjs.com/package/speed-test

I don't think it's a proper distribution model. I'd rather have it installed using GitHub releases or platform package managers.

Could you think about fixing package.json file to work with npm github installer (npm install shockone/black-screen -g) ? It could be great and do not use the npm repository :)


second draft of WebLogic Images section

Round two of re-organizing the WebLogic Images documentation. Incorporated many of the suggestions from @tbarnes-us

Rosemary I approve this PR just would like you to note my comments about adding  the warning in your next PR in the  “Rebase” section of patched-images.md and in usage.md

@mriccell "note my comments about adding the warning in your next PR in the “Rebase” section of patched-images.md and in usage.md" Will do.


Made naturalComparator() a singleton and made use of it

Fixes #1227

Current coverage is 97.01% (diff: 84.61%)

Merging #1696 into master will decrease coverage by 0.03%

@@             master      #1696   diff @@
==========================================
  Files            89         89
  Lines         11277      11264    -13
  Methods           0          0
  Messages          0          0
  Branches       1888       1878    -10
==========================================
- Hits          10944      10928    -16
- Misses          193        196     +3
  Partials        140        140

Powered by Codecov. Last update e4459b1...26cb6ab

Will merge it in preparation of the upcoming bugfix release 2.0.5 (which will appear soon)


LUCENE-10558: expose stream-based Kuromoji resource constructors

Just makes some existing constructors public, and adds javadocs

I think the same change would be needed for Nori, I don't know the use-cases but for the completeness.

I would not make the IOSupplier ctors available, they are internal only (IOSupplier is a class which is marked as subject to change).
Because we have java.nio.files.Path ctors for usage as replacement for the eprecated one, we need one taking java.net.URL for resource usage.
See #868 for an implementation.

I don't think we shoudl do this, same reasons as stated on #868
These things should be loaded from jar as singletons and that's it.


fix(readme): move 'add it!' to bottom of package list

Hey @bnb!
Just noticed that the 'know of any other packages? add it!' line was in the wrong place, so I move it to the bottom of the package list.
✨ Hope this helps! ✨

Thanks @Charlotteis! Merged!


Use freeathome-api as a library

Now that we can use the freeathome-api as a library (henry-spanka/freeathome-api#8), instead of connecting to the websocket API, we can use the library directly. This makes configuration easier, as the user does not need to take care of installing and setting up the API themselves.

Done 😀🎉


fix: ensure derived ctx is passed

Description

References

Review Checklist

[ ] I have clicked on "allow edits by maintainers".
[ ] I have added documentation for new/changed functionality in this PR or in a PR to openfga.dev [Provide a link to any relevant PRs in the references section above]
[ ] The correct base branch is being used, if not main
[ ] I have added tests to validate that the change in functionality is working as expected

Codecov Report
Base: 84.82% // Head: 84.84% // Increases project coverage by +0.02% :tada:

Coverage data is based on head (7a8008d) compared to base (8a6116d).
Patch coverage: 100.00% of modified lines in pull request are covered.

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #471      +/-   ##
==========================================
+ Coverage   84.82%   84.84%   +0.02%
==========================================
  Files          81       81
  Lines       14114    14114
==========================================
+ Hits        11972    11975       +3
+ Misses       1760     1757       -3
  Partials      382      382

Impacted Files
Coverage Δ

pkg/server/commands/list_objects.go
80.36% <100.00%> (ø)

pkg/server/commands/check.go
84.43% <0.00%> (-0.52%)
:arrow_down:

cmd/run.go
46.85% <0.00%> (+0.32%)
:arrow_up:

pkg/storage/mysql/mysql.go
77.51% <0.00%> (+0.44%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


[bug] Empty node type and product after adding new device

Version
Got this bug in version in the latest stable and the current head.
Steps:~
-add a new node
-Choosing in the UI the controller option "Add node", cancel the secure option
-Including the node by pressing the including option on the node
-The node is added successful
The new node is displayed in the list but with an empty type and product. It looks like there's no refresh or something.
When I look at the log I see all the information. In the UI all the entities and config option are available in the UI. Renaming the node in the UI are not displayed in the interface.
When I restart the application of docker container the type, product and new node name  is displayed correctly.

@RualdOrdelman could you try with latest commit?

@RualdOrdelman I have changed the way UI updates on node add events, try now

@RualdOrdelman Now it is fixed with https://github.com/OpenZWave/Zwave2Mqtt/commit/1b9fd36037c263d140d6ec624302d713a6bb089c


admin - delete a keyword

Context
admins should be able to clear up the database and remove a keyword, including all instances of it currently in use
user story
DELETE /api/v1/keywords/GUID
resources
design forthcoming

needed for https://github.com/WildMeOrg/codex-frontend/issues/529

the code to do the api with keyword delete already exists, however it does not work as expected

right now, when you do DELETE /api/keywords/GUID you get an error, unless the keyword is not being used. this is due to the fact the db removal of the database (rightly) errors, since it is being referenced ("in use")
i think the solution might be to enable cascade delete on the join table which combine: Assets and Keywords, as well as the one which combine Annotation and Keywords
here is an example of the code to define a cascade delete

i think it would be best to first just create a keyword (aka "tag") on an image (Asset). then do the API to delete it. you should see the error, which would look like below. then modify the table definition to allow the delete, and you should see the error go away and the keyword allowed to be deleted.
ERROR:  update or delete on table "keyword" violates foreign key constraint "fk_annotation_keywords_keyword_guid_keyword" on table "annotation_keywords"
DETAIL:  Key (guid)=(50e98d54-76e0-48c2-8899-53946b7c5b81) is still referenced from table "annotation_keywords".


Saving is duplicating data

When saving, the series is duplicating points in the data series. This is observed with in the plot and the table. Sometimes there are higher value counts in the series catalog table, though this doesn't seem to be consistent. I have observed it with save and save as existing with both overwrite and append options. When using save as new series, a new series is created with double the points as the original series.

I have been testing this on Mac and cannot replicate it with the 1.2.4 release. I still need to test on Windows, but I am about ready to close it. So, I have not observed the case where the entire data series gets replicated. But I have encountered a case where a single point is being replicated. This is using Append Save. I can't remember if I chose new/old for points overlapping, but i suspect that there was one overlapping point. Here are the commands run:
edit_service.filter_date(datetime.datetime(2015, 5, 1, 0, 0), datetime.datetime(2000, 12, 31, 0, 0))
edit_service.delete_points()
new_qcl = series_service.get_qcl_by_id(1)
new_variable = series_service.get_variable_by_id(53)
new_method = series_service.get_method_by_id(52)
edit_service.save_appending(new_variable, new_method, new_qcl, True)
And here is the overlapping point:

Update: I am still seeing the original behavior (entire series is replicated by saving) on MySQL but not on SQLServer. That may help focus the troubleshooting @sreeder ?

@AmberSJones Thank you for this research it helped me to recreate the issue, and our case is being caused by a permissions error!! the user does not have permission to delete values! so it isn't, but the save is still happening.

Update on the single point replication. This occurs on both Windows on Mac. It occurs for Append to Existing for both Keep New and Keep Original options. It ONLY occurs for a single overlapping data point. Behavior is as expected when there are 2 or more overlapping data points.

test on save_issue branch

The overlapping single point issue is addressed. It appears that saving no longer creates duplicates on MySQL. Closing.


Reimplement snarky backend with TS bigints

This PR

reimplements the small parts of bindings.js in TS with bigints, thus giving snarky-ml a faster backend
picks a few other low-hanging perf improvements for witness generation

Results:

speeds up pure witness generation by about 5x
speeds up the Pickles part of proving due to the faster backend. Together with witness generation, we observe about 25% improvement in proving time.

closes #1063
closes #1066
bindings: https://github.com/o1-labs/o1js-bindings/pull/127
mina: https://github.com/MinaProtocol/mina/pull/13966
snarky: https://github.com/o1-labs/snarky/pull/830
Note for reviewers: 90% of the changes happen in the binding repo
Benchmark 1: Pure witness generation
./run src/examples/benchmarks/mul-witness.ts --bundle

times:

8.80s - initial
3.76s - avoid JS errors for snarky control flow
3.23s - avoid frequent recomputation of Field.{zero, one}
1.74s - swap out Rust Field backend with bigint implementation
1.50s - avoid errors altogether in snarky control flow

Improvement: 83%
Benchmark 2: Series of multi-contract interactions with proving (DEX)
./run src/examples/zkapps/dex/happy-path-with-actions.ts --bundle

Total time on main: 393 sec
Total time on this PR: 303 sec
Improvement: 23%
Time for the swap proof (main): 52 sec
Time for the swap proof (this PR): 39 sec
Improvement: 25%
Full timing output (main):
compile (token)... 34.219 sec
compile (dex token holder)... 9.219 sec
compile (dex main contract)... 14.346 sec
deploy & init token contracts... 29.876 sec
deploy dex contracts... 34.732 sec
transfer tokens to user... 33.664 sec
create user's lq token account... 15.867 sec
supply liquidity... 53.252 sec
redeem liquidity, step 1... 15.757 sec
redeem liquidity, step 2a (get back token X)... 50.273 sec
redeem liquidity, step 2b (get back token Y)... 49.889 sec
swap 10 X for Y... 51.719 sec

Happy path with actions... 392.933 sec

Full timing output (this PR):
compile (token)... 32.873 sec
compile (dex token holder)... 8.059 sec
compile (dex main contract)... 13.675 sec
deploy & init token contracts... 21.747 sec
deploy dex contracts... 25.119 sec
transfer tokens to user... 24.005 sec
create user's lq token account... 11.589 sec
supply liquidity... 41.279 sec
redeem liquidity, step 1... 11.546 sec
redeem liquidity, step 2a (get back token X)... 37.088 sec
redeem liquidity, step 2b (get back token Y)... 37.073 sec
swap 10 X for Y... 38.814 sec

Happy path with actions... 302.960 sec

Final update: After measuring the timings again on main, the proof creation time improved further.
It's now about 35% better than what is used to be. I think this is mostly because of the further improvements to snarky error handling that I added in the snarky PR after measuring this. However, also other improvements from crypto eng work in mina/develop (which we recently merged into main) could be mixed in there
Happy path with actions...
compile (token)... 28.898 sec
compile (dex token holder)... 7.049 sec
compile (dex main contract)... 12.504 sec
deploy & init token contracts... 18.444 sec
deploy dex contracts... 21.505 sec
transfer tokens to user... 20.080 sec
create user's lq token account... 9.812 sec
supply liquidity... 35.416 sec
redeem liquidity, step 1... 9.781 sec
redeem liquidity, step 2a (get back token X)... 32.392 sec
redeem liquidity, step 2b (get back token Y)... 32.395 sec
swap 10 X for Y... 33.746 sec

Happy path with actions... 262.092 sec


GitHub Raffle at DDD Perth! - Leave a comment to enter

Random Name Picker for GitHub prize draw at DDD Perth!

:pray: First, huge shout-out to @icelam for a great and simple name picker we could fork and use for the GitHub booth!
:rocket: This site is deployed to GitHub Pages using GitHub Actions. The Actions workflow pulls entrants from commenters of a GitHub Issue.
:ticket: To enter the draw, add a comment at the bottom of this issue 👇
🏆  The prize will be drawn in the afternoon. Exact time TBA!
Check out the original README

A couple of T&C's:

Entry into this raffle will NOT constitute your consent to be contacted for anything else
We will not be adding you to our marketing database (but if you want to subscribe to our newsletter, you can do so here)
The raffle prize cannot be swapped or changed,
The winner of the prize at DDD Perth MUST be present when we draw a winner, otherwise we will redraw!

Good luck!

Swag pls 😍

lgtm 👍

Hello :)

Aaaargh

Hello ❤❤❤

Swag🙏

Yo

Woo!

Hello world

Hey!

Swag please

DDD！

Hello

I want this!!

DDD Perth for win

Hello

DDDperth

Hello

I love the stickers

I love the stickers

We love the swagg

Swag pls 🙂

🚀

Hello world! 🐧

I was here

Swiggity swag

Swag please and thank you <3

Having fun at DDD!

Hello!

LGTM, no blockers

Hello 🤖

Lgtm

SWAG!!!!! DDDPERTH

Took my 5 minutes to remember my password

❤ GitHub merch

aSimpleComment

Wooohooo!!!

Swag me up please DDD Perth!

great tuffs

Random Name Picker for GitHub prize draw at DDD Perth!

🙏 First, huge shout-out to @icelam for a great and simple name picker we could fork and use for the GitHub booth!
🚀 This site is deployed to GitHub Pages using GitHub Actions. The Actions workflow pulls entrants from commenters of a GitHub Issue.
🎫 To enter the draw, add a comment at the bottom of this issue 👇
🏆 The prize will be drawn in the afternoon. Exact time TBA!
Check out the original README
A couple of T&C's:

Entry into this raffle will NOT constitute your consent to be contacted for anything else
We will not be adding you to our marketing database (but if you want to subscribe to our newsletter, you can do so here)
The raffle prize cannot be swapped or changed,
The winner of the prize at DDD Perth MUST be present when we draw a winner, otherwise we will redraw!

Good luck!

Swag!

💗 swag . Goo github

#DDDPerth Developer's love GitHub!

Let's get it👀👀

Thanks guys !!!

DDD!

GitHub 🥳

Hello from DDD Perth!

foo

Hello

What do you call a fake noodle

Hello world

Use GitKraken instead of CLI 👀

Best stickers every year!

Yay

Thanks GitHub!!! You're amazing 🤩

github for life!

GitHub be awesome!!

Hello 👋

Thanks GitHub! #DDDPerth

🙏

👋

I need more DDD

Pls and thanku 🐙

🙏

Hello world

Yes please! Love it

Great tuffs!

Lessgoo

😎

So good to be a part of today's conference. Thanks GitHub.

Thank u

Wanna win!

You guys rock!!👍🏼

Hello GitHub!

💚🚀

Heyaaaa GitHub!!!!

Awesome

:)

🤞

Please just a crumb of waterbottle

😋

Random Name Picker for GitHub prize draw at DDD Perth!

🙏 First, huge shout-out to @icelam for a great and simple name picker we could fork and use for the GitHub booth!
🚀 This site is deployed to GitHub Pages using GitHub Actions. The Actions workflow pulls entrants from commenters of a GitHub Issue.
🎫 To enter the draw, add a comment at the bottom of this issue 👇
🏆 The prize will be drawn in the afternoon. Exact time TBA!
Check out the original README
A couple of T&C's:

Entry into this raffle will NOT constitute your consent to be contacted for anything else
We will not be adding you to our marketing database (but if you want to subscribe to our newsletter, you can do so here)
The raffle prize cannot be swapped or changed,
The winner of the prize at DDD Perth MUST be present when we draw a winner, otherwise we will redraw!

Good luck!

Love the stickers 🐈⬛

CoPilot is incredibly powerful, so much so that I have considered moving my tab key to the middle of my keyboard as it is now my most used key

Hello .. 🤩

That water bottle looks cool!

Nice stand and love the stickers!

:shipit:

Go me!

Copilot Rulz

Swag plzzz ❤❤

Hello!

Hey!

Actions4Life

OctoKitty 4 life🐱🐙

Hi there

Cool swag please!

Hi

🙏

🤙

LGTM - pass the bat

github is awesome

Swag 😎

Ken thinks GitHub stickers rock !!

👍🏻👍🏻👍🏻

🚀

Ohh!

🐸

Nice

Hello world

Thank you for sponsoring the event!

All the swag pls!

Hi there!

Hello

Helo

Thanks Github for sponsoring the event. You guys are also really useful

👻

Hello

Swag please ♥

Swag 🥰🦄🌈🌈🌈

Amazing

Quacky!

Yay for GitHub

DDDaniel! Thanks for accepting my feedback on Github for students 🧑🎓

yay ddd 2023!

DDDay 2023!

Live love github

yo DDD

I am luck

DDDDDDD!

Great talks

Love your stand at #dddperth

@DDD2023 whoop

Hello from DDD Perth. I love free swag! :-)

Hello!

...

I ♥ swag!

Hello!

Love me some swag ;)

Yes please!

praise: good sticker selection at the booth

Heya!

Thank you legends!

Swagginggg

Swagalicious

Hi :)

😊

🙂

Hi Github team! Love your booth at DDD Perth 2023 ❤

Just here for the free stuff 😭😂

Awesome booth #dddperth

Bello

Hi

Hello, gimme stickers

Stickers galore

🙂

Love GitHub Actions! #dddperth

Best stickers!!!

Hi there!

GitHub is awesome! ❤ #dddperth

Lucky lucky girl

Count me in please!

🔥🔥🔥

Github

Beast

Very cool

Much excite

Space is cool

Great drink bottle

Thanks for the stickers! ❤🔥

Thanks for the stickers 😁

Hi

YOLO

Comment

Congrats to all the winners, and thanks everyone for visiting our booth.


tags from tagged rpz zones are no longer honored after upgrade from 1.19.3 to 1.20.0

Describe the bug
After upgrade from 1.19.3 to 1.20.0 tagged rpz zones are always used.
To reproduce
Steps to reproduce the behavior:

Starting unbound with unbound.conf.txt
Add the following entry to rpz.test.intern:
archive.ubuntu.com.rpz.test.intern.        300     IN      CNAME   install.intern.
Query ::1 and <IP_ADDRESS>, both return rpz modified data.

Expected behavior
dig @<IP_ADDRESS> archive.ubuntu.com +nocomment shouldn't return rpz modified data but it does.
with unbound 1.19.3:

dig @<IP_ADDRESS> archive.ubuntu.com +nocomment
; <<>> DiG 9.11.36-RedHat-9.11.36-11.el8_9.1 <<>> @<IP_ADDRESS> archive.ubuntu.com +nocomment
; (1 server found)
;; global options: +cmd
;archive.ubuntu.com.            IN      A
archive.ubuntu.com.     17      IN      A       <IP_ADDRESS>
archive.ubuntu.com.     17      IN      A       <IP_ADDRESS>
archive.ubuntu.com.     17      IN      A       <IP_ADDRESS>
archive.ubuntu.com.     17      IN      A       <IP_ADDRESS>
archive.ubuntu.com.     17      IN      A       <IP_ADDRESS>
;; Query time: 0 msec
;; SERVER: <IP_ADDRESS>#53(<IP_ADDRESS>)
;; WHEN: Thu May 30 09:56:59 CEST 2024
;; MSG SIZE  rcvd: 127

However with unbound 1.20.0 the following answer is returned:

dig @<IP_ADDRESS> archive.ubuntu.com +nocomment
; <<>> DiG 9.11.36-RedHat-9.11.36-14.el8_10 <<>> @<IP_ADDRESS> archive.ubuntu.com +nocomment
; (1 server found)
;; global options: +cmd
;archive.ubuntu.com.            IN      A
archive.ubuntu.com.     300     IN      CNAME   install.intern.
install.intern.   60      IN      A       <IP_ADDRESS>
;; Query time: 1 msec
;; SERVER: <IP_ADDRESS>#53(<IP_ADDRESS>)
;; WHEN: Thu May 30 09:59:12 CEST 2024
;; MSG SIZE  rcvd: 97

System:

Unbound version: 1.20.0
OS: Almalinux 8.10
Version 1.20.0

Configure line: --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-pythonmodule --with-pyunbound PYTHON=/usr/libexec/platform-python --with-libevent --with-pthreads --with-ssl --disable-rpath --disable-static --enable-relro-now --enable-pie --enable-subnet --enable-ipsecmod --with-conf-file=/etc/unbound/unbound.conf --with-pidfile=/var/run/unbound/unbound.pid --enable-sha2 --disable-gost --enable-ecdsa --enable-dnstap --with-rootkey-file=/var/lib/unbound/root.key
Linked libs: libevent 2.1.8-stable (it uses epoll), OpenSSL 1.1.1k  FIPS 25 Mar 2021
Linked modules: dns64 python ipsecmod subnetcache respip validator iterator
BSD licensed, see LICENSE in source package for details.
Report bugs to<EMAIL_ADDRESS>or https://github.com/NLnetLabs/unbound/issues
Additional information
The same happens if using access-control-tags.

The functionality for RPZ CNAME handling started working better in 1.20.0, and this has a bug that tags are not handled correctly. The bugfix for this issue has the tag handling fixed in the code that deals with RPZ iterator callbacks. That also fixes tag handling for other RPZ triggers and RPZ actions.

Another bug fix for cases where no tag is set and also due to the query type the respip client_info is a NULL pointer, it should be handled like no tags are matched.


HDInsight ARM SDK update - GetConfigurations extension

This changes makes it possible for users to get cluster configurations, by specifying configuration type names: core-site, yarn-site, etc.

Can one of the admins verify this patch?

Hi @nemanja88, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (nemadj). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, or work for Microsoft Open Technologies, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;


if colab fail, then ...

main.py:
line 506:  str(self.opt.save_path)
main2.py:
line 660:  str(opt.save_path)

@yuedajiong I guess it's the uploaded filename only containing numbers, please try to rename it like test.png before uploading.

@ashawkey
yes!
modify filename OR str(save_path).

N/A


Unable to resolve after name change

gradle is unable to resolve
com.github.FunkyMuse:KAHelpers:viewbinding
the others i am using coroutine, kotlinextensions, recyclerview are fine

gradle is unable to resolve
com.github.FunkyMuse:KAHelpers:viewbinding
the others i am using coroutine, kotlinextensions, recyclerview are fine

`implementation "com.github.FunkyMuse.KAHelpers:viewbinding:$utilsVersion"`

There's a typo : after FunkyMuse

:+1:


quic: configurable drain timeout

When the quiche-calculated RTT is high, the draining_timer can become very large. Make the draining timer more configurable and make sure the drain timeout is never larger than the idle timeout.

will implement in the application instead by dropping after is_draining and before is_closed


OrderBy's CanObtainFromCovariantIOrderedQueryable Test

I think this might be as simple as using System.Linq.IOrderedEnumerable<> rather than redefining it.
From here

Had to modify test to ensure use of System.Linq.Queryable


Specify RDoc link in gemspec

I noticed that the RDoc link at the Ruby Toolbox is broken. According to the author you can specify the RDoc link in the gemspec and Ruby Toolbox will pick it up.

Actually, I think the link is stated wrongly on the web interface of rubygems.org. That's where it should be fixed.

Thanks for the heads up, guys!  @colszowka - I should have read your comment before filing a support ticket on ruby-toolbox :)
This is all set on rubygems.org... just waiting for the changes to propagate.

@obrie The updates happen every 3 hours normally. I ran a manual update just to check if things work as they should, and voila :)

Sweet, thanks!


BLE - onConnection display idle image

on BLE connection, the idle animation must stop and the screen must display the static idle image
current behavior: the idle animation stops and nothing happens, so if the robot was looking to the right, it keeps looking to the right which looks strange

closed by 7f0ab378c89970d8da9fffd1fab25a654984b085


Random recipe button

Allow users to click a button that will redirect them to a random recipe. If any filters are selected, the recipe should match them.

Adding In https://github.com/RyanNoelk/OpenEats/pull/289


Do operator can perform unexpected type conversion on observable sequence

Bug report

Which library version?

6.0.1

What are the platform(s), environment(s) and related component version(s)?

Tested in both .NET Framework and .NET 8.0

What is the use case or problem?

var rx = Observable.Return("hello");
IObserver<object> subject = new Subject<object>();

rx = rx.Do(subject);

What is the expected outcome?

The result of the Do operator should not change the type of the resulting observable sequence, i.e. it should behave as a pure side-effect, such that adding or removing Do should have no effect on the type of the sequence.
Specifically in this case, Do should return IObservable<string>.

What is the actual outcome?

The output of Do is of type IObservable<object>.
Proposed signature overload
The following is provided merely as an example of a function overload which can be used to workaround the current problem, and to inspire potential future revisions of the current implementation:
static IObservable<TSource> Do<TSource, TObserver>(this IObservable<TSource> source, IObserver<TObserver> subject)
    where TSource : class, TObserver
{
    return source.Do(subject.OnNext, subject.OnError, subject.OnCompleted);
}

I think if we were to do this it would probably look more like this
public static IObservable<TSource> Do<TSource, TObserver>(
    this IObservable<TSource> source,
    IObserver<TObserver> observer)
    where TSource : class, TObserver
{
    return source.Do<TSource>(observer);
}

This also points to a simple change to your example that would mean you wouldn't have run into the problem:
var rx = Observable.Return("hello");
IObserver<object> subject = new Subject<object>();

rx = rx.Do<string>(subject);

This would also work:
var rx = Observable.Return("hello");
IObserver<string> subject = new Subject<object>();

rx = rx.Do(subject);

So I think this all shows that the following two statements are true:

a fairly simple addition to System.Reactive would make your example work
fairly simple changes to your example would make it work

Because of 2, this proposal doesn't look to me like it would enable anyone to do anything they can't already do today. So this would boil down to a question of ease of use: does this make Rx an easier library to use?
Clearly it makes it easier to use Do in this context: as Rx stands today you either need to use an explicit type argument, or you need to use the somewhat subtle technique of getting the contravariance of T in IObserver<T> to kick in earlier by changing the declared type of a variable (i.e., my "would also work" example above). Both of my suggested workarounds are the kind of code that might cause some headscratching if you come back to it a year after writing it. I think it might even be true to say that if Do is going to offer an overload that accepts an IObserver<T>, it probably should have been designed the way you're suggesting in the first place. (I've been trying to work out whether co/contravariance was available in the version of C# we had on Windows Phone when the very first public version of Rx.NET came out. It's possible that this predated C# support for variance, which would explain why it was designed this way: if contravariance is not available, you wouldn't have been able to write your example. But I've not been able to find out if that's the original reason.)
However, I'd ask you to consider this: I've come round to the position that using Do is in most cases a bad idea. Just like unsafe code in C#, it has its uses, but it's really easy to go wrong with it. As it happens I'm part way through producing a video explaining why that is, but the short version is that Do makes you operate at a much lower level of abstraction than the majority of Rx operators, and in particular it tends to require you to understand in much more detail exactly what happens when. (This has been highlighted by some recent issues reported in this repo where Do behaved exactly as designed but this produced behaviour people did not expect. That, unfortunately, is the nature of Do.)
So I'm not sure that adding features to make Do easier to use is a good idea. I think it is likely to be a net reduction in ease of use because it actively encourages people to use a feature that is harder to use than it looks. It feels similar to making it easier to open a bottle containing toxic chemicals: do we really want to make that easier?
So my current position is that an addition such as this would be sending out completely the wrong message: it would be an implicit encouragement to use an Rx feature (Do) that I think tends to increase the number of bugs in people's applications.
I would not remove Do, any more than I would argue to remove unsafe code from C#. But I consider these things to be last resorts. It would be possible to remove obstructions to use of unsafe code (e.g., currently you have to enable it in two different ways to make it work) but I would not be in favour of such a change. This proposed addition to Do is perhaps less extreme—I think it makes it just as easy to make mistakes as unsafe code does, but the consequences of the mistakes tend to be slightly less severe—but it still seems like a similar thing: we'd be making it easier to use a feature that makes your life harder.
The strongest argument in favour that I can see here is that if this overload of Do is to exist at all, it looks like it should probably have been designed in the way you propose. The current implementation might have been an oversight, or it might reflect language or runtime limitations that existed on platforms Rx supported at launch but which have long since fallen out of support. In a clean sheet design today, if we were to offer this feature at all, it would work as you propose.
The biggest downside is that we have a long-term goal of discouraging the use of Do. A possible additional downside is that adding this new overload might create overload ambiguities for some Rx users in code that compiles fine today. (I think it doesn't create that problem, but overload resolution is so complex in C# that it's quite hard to be certain.)
So, now that I've explained my reasons for reluctance, does that change your view at all? Or do you still believe we should add this despite my misgivings?

@idg10 this line blew me away rx = rx.Do<string>(subject)
It makes of course complete sense, somehow contravariance always gets me!
I agree with your reasoning, and to be honest I was also worried how someone else somewhere might be bitten by a change like this, so I am happy to close this issue, especially now we have a really simply and documented workaround.

However, I'd ask you to consider this: I've come round to the position that using Do is in most cases a bad idea. Just like unsafe code in C#, it has its uses, but it's really easy to go wrong with it.

I did get curious about your stance on the use of Do and how it should not be used. Specifically, I was curious about whether you are against the use of specifically the Do operator, or more generally against any operators which inject pure side-effects into observable sequences?
I've found the latter to be incredibly powerful for composition, as they allow enabling / disabling logging, monitoring and other side-effects in a chain without having to rewrite any code. I am with you that I very rarely use Do directly for this and rather end up designing specific operators to ensure guarantees on initialization, to control the impact of errors on the side-effects, throttling, etc, but I still find conceptually the power of "pure side-effect" operators to be tremendous.


Upgrade to plug 1.7

"Upgrade" is a strong word, but this allows folks to upgrade to Phoenix to 1.4 without overriding things.

Nope...I’m a dummy and was misreading the mix failures.


Live

Docs Build status updates of commit 2863b75:
:white_check_mark: Validation status: passed
For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Test PR


Use of notify_service requires systemd dependency version bump

#199 makes use of systemd::dropin_file notify_service parameter, however the module currently depends on camptocamp/systemd which tops out at version 3.0, however notify_service has only been implemented from puppet/systemd version 3.1. This causes the nightly versions of foreman installer to fail with the below error:
2021-09-19 20:45:26 [NOTICE] [root] Loading installer configuration. This will take some time.
2021-09-19 20:45:34 [NOTICE] [root] Running installer with log based terminal output at level NOTICE.
2021-09-19 20:45:34 [NOTICE] [root] Use -l to set the terminal output log level to ERROR, WARN, NOTICE, INFO, or DEBUG. See --full-help for definitions.
2021-09-19 20:45:54 [NOTICE] [configure] Starting system configuration.
2021-09-19 20:46:05 [ERROR ] [configure] Evaluation Error: Error while evaluating a Resource Statement, Systemd::Dropin_file[interfaces.conf]: has no parameter named 'notify_service' (file: /usr/share/foreman-installer/modules/dhcp/manifests/init.pp, line: 102) on node whitefall.jellybean.sihnon.net
2021-09-19 20:46:05 [NOTICE] [configure] System configuration has finished.

  There were errors detected during install.
  Please address the errors and re-run the installer to ensure the system is properly configured.
  Failing to do so is likely to result in broken functionality.

  The full log is at /var/log/foreman-installer/katello.log

Dropping in puppet/systemd 3.4.0 appears to work fine as a drop-in replacement:
puppet module install puppet/systemd --target-dir /usr/share/foreman-installer/modules/ --ignore-dependencies --force

This module's dependency list should be updated to at least puppet/systemd >= 3.1.0, else #199 should be reworked to only use functionality available in the older camptocamp module versions.

I would prefer to raise the minimum version version and opened https://github.com/theforeman/puppet-dhcp/pull/202 to do so. Thanks!
I'll chase other modules to see why we're stuck on the older versions as well.


Fixed twitter details button and dialog

[x] Show twitter import details button within background polling import view, in any scenario, dashboard or editor.
[x] Let user check twitter import details when a twitter import is created within editor.
[x] Fixed background polling success details styles.

Frontend tests were OK :+1: (details)


Better error handling

Currently, you throw an exception here
https://github.com/himiklab/yii2-recaptcha-widget/blob/master/src/ReCaptchaValidator2.php#L82
That's why sometimes my users see 500 error.
I guess it would be better to set isValid = false instead of Exception. It will make the user experience better.
At least, you may add an option to change this behavior like 'throwException' => false.

Agree. I have got exception 'Invalid recaptcha verify response.' on response:
Array
(
[success] =>
[error-codes] => Array
(
[0] => timeout-or-duplicate
)
)
Should be option to get validation error instead of exception.

I do follow to solve this problem:

add custom validation rule like this ['verifyCode', 'verifyRecaptcha']
add function to model
public function verifyRecaptcha($attribute, $params)
{
$v = \Yii::createObject(\himiklab\yii2\recaptcha\ReCaptchaValidator2::class);
try {
$v->validate($this->{$attribute});
} catch (\Exception $e) {
$this->addError($attribute,'Invalid captcha');
}
}


The demarcation between Reading plans is not clear.

In the Reading Plan section ,on the left, the demarcation -ie the end of a date and the beginning of a new date is not clearly visible.
Enhancement:
Adding more space after a date and in the beginning of date might help the user clearly distinguish the beginning of a plan/date

Verified that there is a clear demarcation between adjacent dates in the Reading Plan