HyperHdr not work after wake up

Bug report
Steps to reproduce

Install the latest version of HyperHDR on a Mac Mini M2.
Connect LEDs through a Pimoroni Plasma RP2040 via USB to the Mac.
Use the 'System screen capture' feature in HyperHDR.
Put the computer to sleep.
Wake the computer up.

What is expected?
After waking up the computer, the LEDs should continue to function without manual intervention.
What is actually happening?
After waking up the computer, the LED backlighting only turns on for a second before anything appears on the screen, and then the LEDs turn off. I have to manually turn off and turn on the 'System screen capture' button in HyperHDR to restore functionality. This issue does not occur when a static effect like 'candle' is set instead of screen capture, which works fine even after the computer wakes up.
System

Mac Mini Model: M2
macOS version: Sonoma 14.5
HyperHDR version: v<IP_ADDRESS>
Hardware configuration: Pimoroni Plasma RP2040 connected via USB

Debug log
2024-05-26T21:11:24.360Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:164) Serial port is closed: cu.usbmodem2401
2024-05-26T21:11:24.360Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:423) Refresh rate = 50.00 Hz
2024-05-26T21:11:24.360Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:373) Device is not ready to start a timer
2024-05-26T21:11:24.360Z [COMPONENTCTRL0] LED device: disabled
2024-05-26T21:11:24.360Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:433) Refresh interval updated to 20ms
2024-05-26T21:11:24.360Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 20ms (proposed: 0ms)
2024-05-26T21:11:24.360Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:297) Disable the device
2024-05-26T21:11:24.360Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:214) Saving retryTimer (interval: 0)
2024-05-27T05:24:10.909Z [HYPER_MANAGER] The system is going to wake up
2024-05-27T05:24:13.847Z [COMPONENTCTRL0] (ComponentController.cpp:73) Enabling HyperHDR instance: recovering previuosly saved component states
2024-05-27T05:24:13.847Z [SMOOTHING0] Clearing queued colors before: enabling
2024-05-27T05:24:13.847Z [SMOOTHING0] Smoothing queue is cleared
2024-05-27T05:24:13.847Z [COMPONENTCTRL0] Smoothing: enabled
2024-05-27T05:24:13.847Z [LEDDEVICE0_ADALIGHT] Ignoring user LED refresh rate. Forcing smoothing refresh rate = 50.00 Hz
2024-05-27T05:24:13.847Z [COMPONENTCTRL0] Blackborder detector: enabled
2024-05-27T05:24:13.847Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:423) Refresh rate = 50.00 Hz
2024-05-27T05:24:13.847Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:373) Device is not ready to start a timer
2024-05-27T05:24:13.847Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:433) Refresh interval updated to 20ms
2024-05-27T05:24:13.847Z [MUXER0] Register new input 'System/VIDEOGRABBER' with priority 240 as inactive
2024-05-27T05:24:13.847Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 20ms (proposed: 20ms)
2024-05-27T05:24:13.847Z [COMPONENTCTRL0] Video capture device: enabled
2024-05-27T05:24:13.847Z [MUXER0] Register new input 'System/SYSTEMGRABBER' with priority 245 as inactive
2024-05-27T05:24:13.847Z [COMPONENTCTRL0] System capture device: enabled
2024-05-27T05:24:13.847Z [MACOS AVF:AUTO] Multithreading for AVF is enabled. Available thread's count 4
2024-05-27T05:24:13.847Z [MACOS_SYSTEM:AUTO] (macOsGrabber.mm:111) init
2024-05-27T05:24:13.847Z [SMOOTHING0] Clearing queued colors before: enabling
2024-05-27T05:24:13.847Z [MACOS AVF:AUTO] (AVFGrabber.mm:409) Searching for devices...
2024-05-27T05:24:13.847Z [MACOS_SYSTEM:AUTO] Started
2024-05-27T05:24:13.847Z [SMOOTHING0] Smoothing queue is cleared
2024-05-27T05:24:13.848Z [COMPONENTCTRL0] HyperHDR: enabled
2024-05-27T05:24:13.848Z [MACOS AVF:AUTO] (AVFGrabber.mm:257) Forcing auto discovery device
2024-05-27T05:24:13.848Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:247) Enable the device
2024-05-27T05:24:13.848Z [MACOS AVF:AUTO] Could not find any capture device
2024-05-27T05:24:13.848Z [LEDDEVICE0_ADALIGHT] Opening UART: cu.usbmodem2401
2024-05-27T05:24:13.848Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:209) _serialPort.open(QIODevice::ReadWrite): cu.usbmodem2401, Baud rate [2000000]bps
2024-05-27T05:24:13.849Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:214) portName:          cu.usbmodem2401
2024-05-27T05:24:13.849Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:215) systemLocation:    /dev/cu.usbmodem2401
2024-05-27T05:24:13.849Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:216) description:       Pico
2024-05-27T05:24:13.849Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:217) manufacturer:      Raspberry Pi
2024-05-27T05:24:13.849Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:218) productIdentifier: 0xa
2024-05-27T05:24:13.849Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:219) vendorIdentifier:  0x2e8a
2024-05-27T05:24:13.849Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:220) serialNumber:      E66141040377B639
2024-05-27T05:24:13.879Z [LEDDEVICE0_ADALIGHT] Detected Rp2040 type board. HyperHDR skips the reset. State: 1, 1
2024-05-27T05:24:13.883Z [LEDDEVICE0_ADALIGHT] ESP sent: 'HyperHDR frames: 0 (FPS), receiv.: 0, good: 0, incompl.: 0, mem1'
2024-05-27T05:24:13.883Z [LEDDEVICE0_ADALIGHT] DETECTED DEVICE USING HyperSerialEsp8266/HyperSerialESP32/HyperSerialPico FIRMWARE (: 0, mem2: 448, heap: 123232  Welcome! Awa driver 9.) at 2 msec
2024-05-27T05:24:13.883Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:64) Switch on
2024-05-27T05:24:13.883Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:140) Power On
2024-05-27T05:24:13.883Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:367) Starting timer with interval = 20ms
2024-05-27T05:24:13.883Z [COMPONENTCTRL0] LED device: enabled
2024-05-27T05:24:13.884Z [SMOOTHING0] Using alternative smoothing input (0)
2024-05-27T05:24:13.884Z [EFFECTENGINE0] Run effect "Candle" on channel 0
2024-05-27T05:24:13.884Z [EFFECTENGINE0] (EffectEngine.cpp:92) Start the effect: name [Candle]
2024-05-27T05:24:13.884Z [MUXER0] Register new input 'System/EFFECT' with priority 0 as inactive
2024-05-27T05:24:13.884Z [HYPERHDR0] Boot effect: animation set to 'Candle' [started]
2024-05-27T05:24:13.884Z [EFFECT0(Candle)] Begin playing the effect with priority: 0
2024-05-27T05:24:13.884Z [MUXER0] Priority 0 is now active
2024-05-27T05:24:13.884Z [MUXER0] Set visible priority to 0
2024-05-27T05:24:13.884Z [SMOOTHING0] Clearing queued colors before: enabling. Smoothing configuration changed: restarting timer.
2024-05-27T05:24:13.884Z [SMOOTHING0] Smoothing queue is cleared
2024-05-27T05:24:13.884Z [SMOOTHING0] Selecting config (4) => type: Linear, directMode: false, pause: false, settlingTime: 500ms, interval: 50ms (20Hz), antiFlickTres: 0, antiFlickStep: 0, antiFlickTime: 0
2024-05-27T05:24:13.884Z [SMOOTHING0] Using linear smoothing input (4)
2024-05-27T05:24:13.884Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:381) Stopping refresh timer
2024-05-27T05:24:13.884Z [HYPERHDR0] New priority[0], previous [255]
2024-05-27T05:24:13.884Z [LEDDEVICE0_ADALIGHT] Ignoring user LED refresh rate. Forcing smoothing refresh rate = 20.00 Hz
2024-05-27T05:24:13.884Z [HYPERHDR0] New source available -> switch LED-Device on
2024-05-27T05:24:13.884Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:423) Refresh rate = 20.00 Hz
2024-05-27T05:24:13.884Z [SMOOTHING0] Clearing queued colors before: enabling
2024-05-27T05:24:13.885Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:367) Starting timer with interval = 50ms
2024-05-27T05:24:13.885Z [SMOOTHING0] Smoothing queue is cleared
2024-05-27T05:24:13.885Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:433) Refresh interval updated to 50ms
2024-05-27T05:24:13.885Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 50ms (proposed: 50ms)
2024-05-27T05:24:13.885Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:225) setBackLightEnabled: 0
2024-05-27T05:24:13.885Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:247) Enable the device
2024-05-27T05:24:13.885Z [SMOOTHING0] Using linear smoothing input (4)
2024-05-27T05:24:13.962Z [MUXER0] Priority 245 is now active
2024-05-27T05:24:13.986Z [SMOOTHING0] Using linear smoothing procedure (4)
2024-05-27T05:24:15.869Z [MACOS_SYSTEM:AUTO] Lost connection to the display or user didn't grant access rights
2024-05-27T05:24:15.870Z [MACOS_SYSTEM:AUTO] Stopped
2024-05-27T05:24:15.870Z [MACOS_SYSTEM:AUTO] (macOsGrabber.mm:101) Uninit grabber: Display id: 2
2024-05-27T05:24:15.915Z [EFFECT0(Candle)] The effect quits with priority: 0
2024-05-27T05:24:15.952Z [MUXER0] Removed source priority 0
2024-05-27T05:24:15.952Z [MUXER0] Set visible priority to 245
2024-05-27T05:24:15.954Z [SMOOTHING0] Clearing queued colors before: enabling. Smoothing configuration changed: restarting timer.
2024-05-27T05:24:15.954Z [SMOOTHING0] Smoothing queue is cleared
2024-05-27T05:24:15.954Z [SMOOTHING0] Selecting config (0) => type: Alternative, directMode: false, pause: false, settlingTime: 150ms, interval: 20ms (50Hz), antiFlickTres: 32, antiFlickStep: 2, antiFlickTime: 250
2024-05-27T05:24:15.955Z [SMOOTHING0] Using alternative smoothing input (0)
2024-05-27T05:24:15.956Z [HYPERHDR0] New priority[245], previous [0]
2024-05-27T05:24:15.956Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:381) Stopping refresh timer
2024-05-27T05:24:15.957Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:225) setBackLightEnabled: 1
2024-05-27T05:24:15.957Z [LEDDEVICE0_ADALIGHT] Ignoring user LED refresh rate. Forcing smoothing refresh rate = 50.00 Hz
2024-05-27T05:24:15.958Z [EFFECTENGINE0] Effect 'Candle' has finished.
2024-05-27T05:24:15.958Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:423) Refresh rate = 50.00 Hz
2024-05-27T05:24:15.958Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:367) Starting timer with interval = 20ms
2024-05-27T05:24:15.959Z [EFFECT0(Candle)] Effect named: 'Candle' is deleted
2024-05-27T05:24:15.959Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:433) Refresh interval updated to 20ms
2024-05-27T05:24:15.960Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 20ms (proposed: 20ms)
2024-05-27T05:24:16.000Z [SMOOTHING0] Using alternative smoothing procedure (0)
2024-05-27T05:24:16.446Z [MUXER0] Priority 245 is now inactive
2024-05-27T05:24:16.447Z [MUXER0] Set visible priority to 255
2024-05-27T05:24:16.447Z [HYPERHDR0] New priority[255], previous [245]
2024-05-27T05:24:16.447Z [HYPERHDR0] No source left -> switch LED-Device off
2024-05-27T05:24:16.447Z [SMOOTHING0] Clearing queued colors before: disabling
2024-05-27T05:24:16.447Z [SMOOTHING0] Smoothing queue is cleared
2024-05-27T05:24:16.447Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:297) Disable the device
2024-05-27T05:24:16.447Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:225) setBackLightEnabled: 0
2024-05-27T05:24:16.447Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:381) Stopping refresh timer
2024-05-27T05:24:16.447Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:90) Switch off
2024-05-27T05:24:16.447Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:544) Set LED strip to black/power off
2024-05-27T05:24:16.447Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:146) Flush was successful
2024-05-27T05:24:16.457Z [LEDDEVICE0_ADALIGHT] Received goodbye: 'HyperHDR frames: 0 (FPS), receiv.: 0, good: 0, incompl.: 0, mem1: 0, mem2: 448, heap: 123232
' (94)
2024-05-27T05:24:16.472Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:164) Serial port is closed: cu.usbmodem2401
2024-05-27T05:24:16.472Z [COMPONENTCTRL0] LED device: disabled
2024-05-27T05:29:47.866Z [WEBSOCKET] (WebSocketClient.cpp:39) New connection from ::1
2024-05-27T05:29:51.218Z [WEBSOCKET] (HyperAPI.cpp:957) log streaming activated for client ::1
Additional information
I have recently reinstalled macOS and have the latest version of HyperHDR. The issue persists even after the reinstallation. If anyone has encountered a similar problem or has suggestions for a solution, I would appreciate the help.

Hi
Please provide full logs from the moment when the system is going to sleep because that part is missing. We only have that part when the system is waking up.
2024-05-27T05:24:10.909Z [HYPER_MANAGER] The system is going to wake up

2024-06-01T19:18:21.621Z [CORE] TTY is not attached to the log output
2024-06-01T19:18:21.621Z [MAIN] Database path: '/Users/grzegorzjasionowski/.hyperhdr/db/hyperhdr.db', readonlyMode = disabled
2024-06-01T19:18:21.621Z [MAIN] Starting HyperHdr - <IP_ADDRESS>, (HEAD detached at v<IP_ADDRESS>) (awawa-dev-9e960c9/52f12b4-1711236142), built: Mar 23 2024:23:28:09
2024-06-01T19:18:21.621Z [MAIN] Set user data path to '/Users/grzegorzjasionowski/.hyperhdr'
2024-06-01T19:18:21.621Z [INSTANCE_CFG] Loading instance configuration
2024-06-01T19:18:21.622Z [DB] Database opened: /Users/grzegorzjasionowski/.hyperhdr/db/hyperhdr.db
2024-06-01T19:18:21.625Z [INSTANCE_CFG] Settings database initialized
2024-06-01T19:18:21.626Z [SOUND_GRABBER] Sound device is disabled
2024-06-01T19:18:21.653Z [JSONSERVER] (JsonServer.cpp:26) Created new instance
2024-06-01T19:18:21.653Z [JSONSERVER] Started on port 19444
2024-06-01T19:18:21.653Z [SSDP] (SSDPHandler.cpp:31) SSDPHandler is initialized
2024-06-01T19:18:21.653Z [MAIN] start systray
2024-06-01T19:18:21.651Z [macOS AVF:auto] (GrabberWrapper.cpp:55) Starting the grabber wrapper
2024-06-01T19:18:21.651Z [MACOS_SYSTEM:AUTO] Found display: Display id: 2
2024-06-01T19:18:21.651Z [MACOS_SYSTEM:AUTO] Restarting video grabber is now blocked due to reloading of the configuration
2024-06-01T19:18:21.651Z [MACOS_SYSTEM:AUTO] (Grabber.cpp:159) Set new width: 512, height: 512 for capture
2024-06-01T19:18:21.651Z [MACOS_SYSTEM:AUTO] (Grabber.cpp:335) setWidthHeight preparing to restarting video grabber 0
2024-06-01T19:18:21.651Z [MACOS_SYSTEM:AUTO] Delayed restart of the grabber due to change of the capturing resolution
2024-06-01T19:18:21.651Z [MACOS_SYSTEM:AUTO] Delayed restart of the grabber due to change of the framerate
2024-06-01T19:18:21.651Z [SIGNAL_OLD] (DetectionManual.cpp:84) Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000
2024-06-01T19:18:21.651Z [SIGNAL_OLD] (DetectionManual.cpp:74) Signal threshold set to: {0, 0, 0} and frames: 50
2024-06-01T19:18:21.651Z [MACOS_SYSTEM:AUTO] (Grabber.cpp:380) setDeviceVideoStandard preparing to restart video grabber. Old: '' new: 'auto'
2024-06-01T19:18:21.651Z [MACOS_SYSTEM:AUTO] Delayed restart of the grabber due to change of selected device
2024-06-01T19:18:21.651Z [HYPERHDR0] Starting the instance
2024-06-01T19:18:21.651Z [INSTANCE_CFG0] Loading instance configuration
2024-06-01T19:18:21.651Z [DB] Database opened: /Users/grzegorzjasionowski/.hyperhdr/db/hyperhdr.db
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] HyperHDR has the camera's permission
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] (AVFGrabber.mm:409) Searching for devices...
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] Restarting video grabber is now blocked due to reloading of the configuration
2024-06-01T19:18:21.652Z [macOS AVF:auto] (GrabberWrapper.cpp:488) Auto resume is: enabled
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] Cropping image: width=0 height=0; crop: left=0 right=0 top=0 bottom=0
2024-06-01T19:18:21.652Z [macOS AVF:auto] (GrabberWrapper.cpp:126) CEC keycode. Start: 0, stop: 0
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] (Grabber.cpp:273) setBrightnessContrastSaturationHue nothing changed
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] (AVFGrabber.mm:195) setHdrToneMappingMode to: Disabled
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] (Grabber.cpp:182) setFpsSoftwareDecimation to: 1
2024-06-01T19:18:21.652Z [SIGNAL_OLD] (DetectionManual.cpp:84) Signal detection area set to: 0.250000,0.250000 x 0.750000,0.750000
2024-06-01T19:18:21.652Z [SIGNAL_OLD] (DetectionManual.cpp:74) Signal threshold set to: {12, 12, 12} and frames: 200
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] Automatic signal detection is now enabled
2024-06-01T19:18:21.652Z [SIGNAL_AUTO] (DetectionAutomatic.cpp:376) Automatic signal detection -> errorTolerance: 3, modelTolerance: 90, sleepTime: 5000, wakeTime: 1000
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] (Grabber.cpp:380) setDeviceVideoStandard preparing to restart video grabber. Old: '' new: 'auto'
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] Delayed restart of the grabber due to change of selected device
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] (Grabber.cpp:200) Force encoding to: NO_CHANGE (old: NO_CHANGE)
2024-06-01T19:18:21.652Z [MACOS AVF:AUTO] setQFrameDecimation is now: disabled
2024-06-01T19:18:21.657Z [INSTANCE_CFG0] Settings database initialized
2024-06-01T19:18:21.657Z [COMPONENTCTRL0] (ComponentController.cpp:31) ComponentController is initialized. Components are ENABLED
2024-06-01T19:18:21.657Z [MUXER0] (Muxer.cpp:55) Muxer initialized
2024-06-01T19:18:21.657Z [BLACKBORDER] Set mode to: default
2024-06-01T19:18:21.657Z [COMPONENTCTRL0] Blackborder detector: enabled
2024-06-01T19:18:21.657Z [IMAGETOLED_MNG0] (ImageToLedManager.cpp:192) Set LED mapping type to advanced
2024-06-01T19:18:21.657Z [IMAGETOLED_MNG0] (ImageToLedManager.cpp:176) setSparseProcessing to 0
2024-06-01T19:18:21.657Z [IMAGETOLED_MNG0] (ImageToLedManager.cpp:103) ImageToLedManager initialized
2024-06-01T19:18:21.658Z [COLORSPACE_CALIBRATION0] classicMode: no, gammas:[1.50, 1.50, 1.50], saturation: 1.00, luminance: 1.00, backLight: [enabled, threshold: 1, colored: yes]
2024-06-01T19:18:21.658Z [LED_CALIBRATION0] (LedCalibration.cpp:101) Calibration config '0' for LED segment: [0, 111]
2024-06-01T19:18:21.658Z [HYPERHDR0] Led strip RGB order is: rgb
2024-06-01T19:18:21.658Z [SMOOTHING0] High resolution clock is steady (good)
2024-06-01T19:18:21.658Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-01T19:18:21.658Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:18:21.658Z [COMPONENTCTRL0] Smoothing: enabled
2024-06-01T19:18:21.658Z [SMOOTHING0] Creating config (0) => type: Alternative, dirMode: false, pause: false, settlingTime: 150ms, interval: 20ms (50Hz), antiFlickTres: 32, antiFlickStep: 2, antiFlickTime: 250
2024-06-01T19:18:21.658Z [SMOOTHING0] Clearing queued colors before: enabling. Smoothing configuration changed: restarting timer.
2024-06-01T19:18:21.658Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:18:21.658Z [SMOOTHING0] Selecting config (0) => type: Alternative, directMode: false, pause: false, settlingTime: 150ms, interval: 20ms (50Hz), antiFlickTres: 32, antiFlickStep: 2, antiFlickTime: 250
2024-06-01T19:18:21.658Z [SMOOTHING0] Selecting config (0) => type: Alternative, directMode: false, pause: false, settlingTime: 150ms, interval: 20ms (50Hz), antiFlickTres: 32, antiFlickStep: 2, antiFlickTime: 250
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] Start LedDevice 'adalight'.
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:337) deviceConfig: [{"awa_mode":true,"colorOrder":"rgb","currentLedCount":112,"espHandshake":true,"forceSerialDetection":false,"maxRetry":0,"output":"cu.usbmodem2401","rate":2000000,"refreshTime":20,"smoothingRefreshTime":20,"type":"adalight","white_channel_calibration":false}]
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] Ignoring user LED refresh rate. Forcing smoothing refresh rate = 50.00 Hz
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:423) Refresh rate = 50.00 Hz
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:373) Device is not ready to start a timer
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:433) Refresh interval updated to 20ms
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:50) DeviceType   : adalight
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:51) LedCount     : 112
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:52) RefreshTime  : 20
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:67) Device name   : cu.usbmodem2401
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:68) Auto selection: 0
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:69) Baud rate     : 2000000
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:70) ESP handshake : ON
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:71) Force ESP/Pico Detection : OFF
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:72) Delayed open  : 0
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:73) Retry limit   : 0
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] The refresh timer is enabled ('Refresh time' > 0) and may limit the performance of the LED driver. Ignore this error if you set it on purpose for some reason (but you almost never need it).
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (LedDeviceAdalight.cpp:79) Adalight driver with activated high speeed & data integration check AWA protocol
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (LedDeviceAdalight.cpp:89) Adalight header for 112 leds: Awa 0x00 0x6f 0x3a
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:247) Enable the device
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] Opening UART: cu.usbmodem2401
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:209) _serialPort.open(QIODevice::ReadWrite): cu.usbmodem2401, Baud rate [2000000]bps
2024-06-01T19:18:21.670Z [HYPER_MANAGER] HyperHDR instance 'First LED instance' has been started
2024-06-01T19:18:21.658Z [HYPERHDR0] The instance is running
2024-06-01T19:18:21.658Z [MUXER0] Register new input 'System/VIDEOGRABBER' with priority 240 as inactive
2024-06-01T19:18:21.658Z [COMPONENTCTRL0] Video capture device: enabled
2024-06-01T19:18:21.658Z [MUXER0] Register new input 'System/SYSTEMGRABBER' with priority 245 as inactive
2024-06-01T19:18:21.658Z [COMPONENTCTRL0] System capture device: enabled
2024-06-01T19:18:21.658Z [MACOS AVF:AUTO] Multithreading for AVF is enabled. Available thread's count 4
2024-06-01T19:18:21.658Z [MACOS AVF:AUTO] (AVFGrabber.mm:409) Searching for devices...
2024-06-01T19:18:21.658Z [MACOS AVF:AUTO] (AVFGrabber.mm:257) Forcing auto discovery device
2024-06-01T19:18:21.658Z [MACOS AVF:AUTO] Could not find any capture device
2024-06-01T19:18:21.658Z [MACOS_SYSTEM:AUTO] (macOsGrabber.mm:111) init
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:214) portName:          cu.usbmodem2401
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:215) systemLocation:    /dev/cu.usbmodem2401
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:216) description:       Pico
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:217) manufacturer:      Raspberry Pi
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:218) productIdentifier: 0xa
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:219) vendorIdentifier:  0x2e8a
2024-06-01T19:18:21.658Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:220) serialNumber:      E66141040377B639
2024-06-01T19:18:21.661Z [MACOS_SYSTEM:AUTO] (macOsGrabber.mm:130) Forcing auto discovery device
2024-06-01T19:18:21.661Z [MACOS_SYSTEM:AUTO] (macOsGrabber.mm:135) Auto discovery set to Display id: 2
2024-06-01T19:18:21.661Z [MACOS_SYSTEM:AUTO] *************************************************************************************************
2024-06-01T19:18:21.661Z [MACOS_SYSTEM:AUTO] Starting macOS grabber. Selected: 'Display id: 2' max width: 512 (512) @ 10 fps
2024-06-01T19:18:21.661Z [MACOS_SYSTEM:AUTO] *************************************************************************************************
2024-06-01T19:18:21.661Z [MACOS_SYSTEM:AUTO] Started
2024-06-01T19:18:21.671Z [WEBSERVER] Initialize Webserver
2024-06-01T19:18:21.671Z [FLATBUFSERVER] Started on port 19400
2024-06-01T19:18:21.671Z [WEBSERVER] Apply Webserver settings
2024-06-01T19:18:21.671Z [WEBSERVER] Set document root to: :/www
2024-06-01T19:18:21.671Z [WEBSERVER] Started: 'HyperHDR WebServer (HTTP)' on port: 8090
2024-06-01T19:18:21.671Z [SSDP] (SSDPHandler.cpp:93) The local address is empty
2024-06-01T19:18:21.671Z [WEBSERVER] Initialize Webserver
2024-06-01T19:18:21.671Z [WEBSERVER] Apply Webserver settings
2024-06-01T19:18:21.671Z [WEBSERVER] Set document root to: :/www
2024-06-01T19:18:21.671Z [FLATBUFSERVER] Started local domain socket server: 'hyperhdr-domain'
2024-06-01T19:18:21.671Z [WEBSERVER] No valid SSL certificate has been found (':/hyperhdrcrt.pem'). Did you install OpenSSL?
2024-06-01T19:18:21.671Z [WEBSERVER] The provided SSL key is invalid or not supported use RSA encrypt and PEM format (':/hyperhdrkey.pem')
2024-06-01T19:18:21.671Z [WEBSERVER] Started: 'HyperHDR WebServer (HTTPS)' on port: 8092
2024-06-01T19:18:21.671Z [SSDP] (SSDPHandler.cpp:42) SSDPHandler is initializing
2024-06-01T19:18:21.671Z [SSDP] (SSDPHandler.cpp:183) The local address is: <IP_ADDRESS>
2024-06-01T19:18:21.671Z [SSDP] (SSDPServer.cpp:95) Initialize the SSDP server
2024-06-01T19:18:21.671Z [WEBSERVER] (StaticFileServing.cpp:68) SSDP description is set up
2024-06-01T19:18:21.671Z [SSDP] Starting the SSDP server
2024-06-01T19:18:21.683Z [NETFORWARDER] Forwarder has changed state to disabled
2024-06-01T19:18:21.686Z [LEDDEVICE0_ADALIGHT] Detected Rp2040 type board. HyperHDR skips the reset. State: 1, 1
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] ESP sent: 'HyperHDR frames: 0 (FPS), receiv.: 0, good: 0, incompl.: 0, mem1'
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] DETECTED DEVICE USING HyperSerialEsp8266/HyperSerialESP32/HyperSerialPico FIRMWARE (: 0, mem2: 448, heap: 123232  Welcome! Awa driver 9.) at 2 msec
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:64) Switch on
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:140) Power On
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:367) Starting timer with interval = 20ms
2024-06-01T19:18:21.690Z [COMPONENTCTRL0] LED device: enabled
2024-06-01T19:18:21.690Z [SMOOTHING0] Using alternative smoothing input (0)
2024-06-01T19:18:21.690Z [EFFECTENGINE0] Run effect "Candle" on channel 0
2024-06-01T19:18:21.690Z [EFFECTENGINE0] (EffectEngine.cpp:92) Start the effect: name [Candle]
2024-06-01T19:18:21.690Z [MUXER0] Register new input 'System/EFFECT' with priority 0 as inactive
2024-06-01T19:18:21.690Z [HYPERHDR0] Boot effect: animation set to 'Candle' [started]
2024-06-01T19:18:21.690Z [EFFECT0(Candle)] Begin playing the effect with priority: 0
2024-06-01T19:18:21.690Z [MUXER0] Priority 0 is now active
2024-06-01T19:18:21.690Z [MUXER0] Set visible priority to 0
2024-06-01T19:18:21.690Z [SMOOTHING0] Clearing queued colors before: enabling. Smoothing configuration changed: restarting timer.
2024-06-01T19:18:21.690Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:18:21.690Z [SMOOTHING0] Selecting config (4) => type: Linear, directMode: false, pause: false, settlingTime: 500ms, interval: 50ms (20Hz), antiFlickTres: 0, antiFlickStep: 0, antiFlickTime: 0
2024-06-01T19:18:21.690Z [SMOOTHING0] Using linear smoothing input (4)
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:381) Stopping refresh timer
2024-06-01T19:18:21.690Z [HYPERHDR0] New priority[0], previous [255]
2024-06-01T19:18:21.690Z [HYPERHDR0] New source available -> switch LED-Device on
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] Ignoring user LED refresh rate. Forcing smoothing refresh rate = 20.00 Hz
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:423) Refresh rate = 20.00 Hz
2024-06-01T19:18:21.690Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:367) Starting timer with interval = 50ms
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:433) Refresh interval updated to 50ms
2024-06-01T19:18:21.690Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 50ms (proposed: 50ms)
2024-06-01T19:18:21.690Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:225) setBackLightEnabled: 0
2024-06-01T19:18:21.690Z [SMOOTHING0] Using linear smoothing input (4)
2024-06-01T19:18:21.690Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:247) Enable the device
2024-06-01T19:18:21.778Z [MUXER0] Priority 245 is now active
2024-06-01T19:18:21.791Z [SMOOTHING0] Using linear smoothing procedure (4)
2024-06-01T19:18:23.174Z [NET_DISCOVERY] Found Pico/RP2040 at cu.usbmodem2401:-1 (Pico)
2024-06-01T19:18:23.175Z [NET_DISCOVERY] Found Pico/RP2040 at tty.usbmodem2401:-1 (Pico)
2024-06-01T19:18:23.173Z [SERVICE_mDNS] Starting the network discovery thread
2024-06-01T19:18:23.370Z [NET_DISCOVERY] Found WLED at <IP_ADDRESS>:80 (wled-cf6ca4.local)
2024-06-01T19:18:23.692Z [EFFECT0(Candle)] The effect quits with priority: 0
2024-06-01T19:18:23.692Z [MUXER0] Removed source priority 0
2024-06-01T19:18:23.692Z [MUXER0] Set visible priority to 245
2024-06-01T19:18:23.692Z [SMOOTHING0] Clearing queued colors before: enabling. Smoothing configuration changed: restarting timer.
2024-06-01T19:18:23.692Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:18:23.692Z [SMOOTHING0] Selecting config (0) => type: Alternative, directMode: false, pause: false, settlingTime: 150ms, interval: 20ms (50Hz), antiFlickTres: 32, antiFlickStep: 2, antiFlickTime: 250
2024-06-01T19:18:23.692Z [SMOOTHING0] Using alternative smoothing input (0)
2024-06-01T19:18:23.692Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:381) Stopping refresh timer
2024-06-01T19:18:23.692Z [HYPERHDR0] New priority[245], previous [0]
2024-06-01T19:18:23.692Z [LEDDEVICE0_ADALIGHT] Ignoring user LED refresh rate. Forcing smoothing refresh rate = 50.00 Hz
2024-06-01T19:18:23.692Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:225) setBackLightEnabled: 1
2024-06-01T19:18:23.692Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:423) Refresh rate = 50.00 Hz
2024-06-01T19:18:23.692Z [EFFECTENGINE0] Effect 'Candle' has finished.
2024-06-01T19:18:23.692Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:367) Starting timer with interval = 20ms
2024-06-01T19:18:23.692Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:433) Refresh interval updated to 20ms
2024-06-01T19:18:23.692Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 20ms (proposed: 20ms)
2024-06-01T19:18:23.692Z [EFFECT0(Candle)] Effect named: 'Candle' is deleted
2024-06-01T19:18:23.733Z [SMOOTHING0] Using alternative smoothing procedure (0)
2024-06-01T19:18:23.780Z [NET_DISCOVERY] Found Hue bridge at <IP_ADDRESS>:80 (DIYHue.local)
2024-06-01T19:18:23.783Z [IMAGETOLED_MNG0] Total index number is: 37792 (memory: 37792). User sparse processing is: disabled, image size: 512 x 288, area number: 112
2024-06-01T19:18:23.783Z [IMAGETOLED_MNG0] Total index number is: 37792 (memory: 37792). User sparse processing is: disabled, image size: 512 x 288, area number: 112
2024-06-01T19:18:27.524Z [WEBSOCKET] (WebSocketClient.cpp:39) New connection from ::1
2024-06-01T19:18:30.965Z [WEBSOCKET] (HyperAPI.cpp:957) log streaming activated for client ::1
Sleep !
2024-06-01T19:19:02.443Z [HYPER_MANAGER] The system is going to sleep
2024-06-01T19:19:02.444Z [COMPONENTCTRL0] (ComponentController.cpp:47) Disabling HyperHDR instance: saving current component states first
2024-06-01T19:19:02.444Z [SMOOTHING0] Clearing queued colors before: disabling
2024-06-01T19:19:02.444Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:19:02.444Z [SMOOTHING0] Clearing queued colors before: disabling
2024-06-01T19:19:02.445Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:297) Disable the device
2024-06-01T19:19:02.446Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:381) Stopping refresh timer
2024-06-01T19:19:02.446Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:90) Switch off
2024-06-01T19:19:02.446Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:19:02.446Z [COMPONENTCTRL0] Smoothing: disabled
2024-06-01T19:19:02.446Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:544) Set LED strip to black/power off
2024-06-01T19:19:02.446Z [COMPONENTCTRL0] Blackborder detector: disabled
2024-06-01T19:19:02.446Z [MUXER0] Removed source priority 240
2024-06-01T19:19:02.447Z [COMPONENTCTRL0] Video capture device: disabled
2024-06-01T19:19:02.447Z [MUXER0] Removed source priority 245
2024-06-01T19:19:02.447Z [MUXER0] Set visible priority to 255
2024-06-01T19:19:02.447Z [HYPERHDR0] New priority[255], previous [245]
2024-06-01T19:19:02.448Z [HYPERHDR0] No source left -> switch LED-Device off
2024-06-01T19:19:02.447Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:146) Flush was successful
2024-06-01T19:19:02.450Z [SMOOTHING0] Clearing queued colors before: disabling
2024-06-01T19:19:02.450Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:19:02.450Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:225) setBackLightEnabled: 0
2024-06-01T19:19:02.450Z [COMPONENTCTRL0] System capture device: disabled
2024-06-01T19:19:02.450Z [COMPONENTCTRL0] (ComponentController.cpp:66) Disabling HyperHDR instance: preparations completed
2024-06-01T19:19:02.450Z [MACOS_SYSTEM:AUTO] Stopped
2024-06-01T19:19:02.457Z [LEDDEVICE0_ADALIGHT] Received goodbye: 'HyperHDR frames: 50 (FPS), receiv.: 50, good: 50, incompl.: 0, mem1: 0, mem2: 448, heap: 123232
' (97)
2024-06-01T19:19:02.472Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:164) Serial port is closed: cu.usbmodem2401
2024-06-01T19:19:02.472Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:423) Refresh rate = 50.00 Hz
2024-06-01T19:19:02.472Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:373) Device is not ready to start a timer
2024-06-01T19:19:02.472Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:433) Refresh interval updated to 20ms
2024-06-01T19:19:02.472Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 20ms (proposed: 0ms)
2024-06-01T19:19:02.472Z [COMPONENTCTRL0] LED device: disabled
2024-06-01T19:19:02.472Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:297) Disable the device
2024-06-01T19:19:02.472Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:214) Saving retryTimer (interval: 0)
Wake UP !
2024-06-01T19:20:03.407Z [HYPER_MANAGER] The system is going to wake up
2024-06-01T19:20:06.293Z [COMPONENTCTRL0] (ComponentController.cpp:73) Enabling HyperHDR instance: recovering previuosly saved component states
2024-06-01T19:20:06.293Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-01T19:20:06.293Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:20:06.293Z [COMPONENTCTRL0] Smoothing: enabled
2024-06-01T19:20:06.293Z [LEDDEVICE0_ADALIGHT] Ignoring user LED refresh rate. Forcing smoothing refresh rate = 50.00 Hz
2024-06-01T19:20:06.293Z [COMPONENTCTRL0] Blackborder detector: enabled
2024-06-01T19:20:06.293Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:423) Refresh rate = 50.00 Hz
2024-06-01T19:20:06.293Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:373) Device is not ready to start a timer
2024-06-01T19:20:06.293Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:433) Refresh interval updated to 20ms
2024-06-01T19:20:06.293Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 20ms (proposed: 20ms)
2024-06-01T19:20:06.294Z [MUXER0] Register new input 'System/VIDEOGRABBER' with priority 240 as inactive
2024-06-01T19:20:06.294Z [COMPONENTCTRL0] Video capture device: enabled
2024-06-01T19:20:06.294Z [MACOS AVF:AUTO] Multithreading for AVF is enabled. Available thread's count 4
2024-06-01T19:20:06.294Z [MUXER0] Register new input 'System/SYSTEMGRABBER' with priority 245 as inactive
2024-06-01T19:20:06.294Z [MACOS AVF:AUTO] (AVFGrabber.mm:409) Searching for devices...
2024-06-01T19:20:06.294Z [COMPONENTCTRL0] System capture device: enabled
2024-06-01T19:20:06.294Z [MACOS AVF:AUTO] (AVFGrabber.mm:257) Forcing auto discovery device
2024-06-01T19:20:06.294Z [MACOS AVF:AUTO] Could not find any capture device
2024-06-01T19:20:06.294Z [MACOS_SYSTEM:AUTO] (macOsGrabber.mm:111) init
2024-06-01T19:20:06.295Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-01T19:20:06.295Z [MACOS_SYSTEM:AUTO] Started
2024-06-01T19:20:06.295Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:20:06.296Z [COMPONENTCTRL0] HyperHDR: enabled
2024-06-01T19:20:06.296Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:247) Enable the device
2024-06-01T19:20:06.296Z [LEDDEVICE0_ADALIGHT] Opening UART: cu.usbmodem2401
2024-06-01T19:20:06.296Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:209) _serialPort.open(QIODevice::ReadWrite): cu.usbmodem2401, Baud rate [2000000]bps
2024-06-01T19:20:06.297Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:214) portName:          cu.usbmodem2401
2024-06-01T19:20:06.297Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:215) systemLocation:    /dev/cu.usbmodem2401
2024-06-01T19:20:06.297Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:216) description:       Pico
2024-06-01T19:20:06.297Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:217) manufacturer:      Raspberry Pi
2024-06-01T19:20:06.297Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:218) productIdentifier: 0xa
2024-06-01T19:20:06.297Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:219) vendorIdentifier:  0x2e8a
2024-06-01T19:20:06.297Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:220) serialNumber:      E66141040377B639
2024-06-01T19:20:06.327Z [LEDDEVICE0_ADALIGHT] Detected Rp2040 type board. HyperHDR skips the reset. State: 1, 1
2024-06-01T19:20:06.331Z [LEDDEVICE0_ADALIGHT] ESP sent: 'HyperHDR frames: 0 (FPS), receiv.: 0, good: 0, incompl.: 0, mem1'
2024-06-01T19:20:06.331Z [LEDDEVICE0_ADALIGHT] DETECTED DEVICE USING HyperSerialEsp8266/HyperSerialESP32/HyperSerialPico FIRMWARE (: 0, mem2: 448, heap: 123232  Welcome! Awa driver 9.) at 2 msec
2024-06-01T19:20:06.331Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:64) Switch on
2024-06-01T19:20:06.331Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:140) Power On
2024-06-01T19:20:06.331Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:367) Starting timer with interval = 20ms
2024-06-01T19:20:06.331Z [COMPONENTCTRL0] LED device: enabled
2024-06-01T19:20:06.331Z [SMOOTHING0] Using alternative smoothing input (0)
2024-06-01T19:20:06.372Z [SMOOTHING0] Using alternative smoothing procedure (0)
2024-06-01T19:20:06.411Z [MUXER0] Priority 245 is now active
2024-06-01T19:20:06.411Z [MUXER0] Set visible priority to 245
2024-06-01T19:20:06.411Z [HYPERHDR0] New priority[245], previous [255]
2024-06-01T19:20:06.411Z [HYPERHDR0] New source available -> switch LED-Device on
2024-06-01T19:20:06.411Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-01T19:20:06.411Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:20:06.411Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:225) setBackLightEnabled: 1
2024-06-01T19:20:06.412Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:247) Enable the device
2024-06-01T19:20:06.412Z [SMOOTHING0] Using alternative smoothing input (0)
2024-06-01T19:20:06.453Z [SMOOTHING0] Using alternative smoothing procedure (0)
2024-06-01T19:20:07.009Z [IMAGETOLED_MNG0] Total index number is: 33420 (memory: 33420). User sparse processing is: disabled, image size: 480 x 270, area number: 112
2024-06-01T19:20:08.089Z [MACOS_SYSTEM:AUTO] Lost connection to the display or user didn't grant access rights
2024-06-01T19:20:08.089Z [MACOS_SYSTEM:AUTO] Stopped
2024-06-01T19:20:08.089Z [MACOS_SYSTEM:AUTO] (macOsGrabber.mm:101) Uninit grabber: Display id: 2
2024-06-01T19:20:08.793Z [MUXER0] Priority 245 is now inactive
2024-06-01T19:20:08.793Z [MUXER0] Set visible priority to 255
2024-06-01T19:20:08.793Z [HYPERHDR0] New priority[255], previous [245]
2024-06-01T19:20:08.793Z [HYPERHDR0] No source left -> switch LED-Device off
2024-06-01T19:20:08.793Z [SMOOTHING0] Clearing queued colors before: disabling
2024-06-01T19:20:08.793Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T19:20:08.793Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:225) setBackLightEnabled: 0
2024-06-01T19:20:08.793Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:297) Disable the device
2024-06-01T19:20:08.793Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:381) Stopping refresh timer
2024-06-01T19:20:08.794Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:90) Switch off
2024-06-01T19:20:08.794Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:544) Set LED strip to black/power off
2024-06-01T19:20:08.794Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:146) Flush was successful
2024-06-01T19:20:08.804Z [LEDDEVICE0_ADALIGHT] Received goodbye: 'HyperHDR frames: 45 (FPS), receiv.: 45, good: 45, incompl.: 0, mem1: 0, mem2: 448, heap: 123232
' (97)
2024-06-01T19:20:08.819Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:164) Serial port is closed: cu.usbmodem2401
2024-06-01T19:20:08.819Z [COMPONENTCTRL0] LED device: disabled

Thank you. So the sleep handler seems correct, but something is wrong with the wake-up permissions and auto-resume doesnt work. I recently fixed one bug (incorrect thread affiliation when calling) in https://github.com/awawa-dev/HyperHDR/pull/852, which may be related to the problem. Can you test the installer from this build: https://github.com/awawa-dev/HyperHDR/actions/runs/9308928835

Unfortunately, this issue also occurs in this version (Apple_macOS_arm64_M1_M2_DMG_installer).
The behavior of the HyperHdr program is just as faulty when waking up the computer.

Wake Up !
2024-06-01T20:06:26.607Z [HYPER_MANAGER] The system is going to wake up
2024-06-01T20:06:29.758Z [COMPONENTCTRL0] (ComponentController.cpp:73) Enabling HyperHDR instance: recovering previuosly saved component states
2024-06-01T20:06:29.758Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-01T20:06:29.758Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T20:06:29.758Z [COMPONENTCTRL0] Smoothing: enabled
2024-06-01T20:06:29.758Z [COMPONENTCTRL0] Blackborder detector: enabled
2024-06-01T20:06:29.758Z [LEDDEVICE0_ADALIGHT] Ignoring user LED refresh rate. Forcing smoothing refresh rate = 50.00 Hz
2024-06-01T20:06:29.758Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:423) Refresh rate = 50.00 Hz
2024-06-01T20:06:29.758Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:373) Device is not ready to start a timer
2024-06-01T20:06:29.758Z [MUXER0] Register new input 'System/VIDEOGRABBER' with priority 240 as inactive
2024-06-01T20:06:29.758Z [COMPONENTCTRL0] Video capture device: enabled
2024-06-01T20:06:29.758Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:433) Refresh interval updated to 20ms
2024-06-01T20:06:29.758Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 20ms (proposed: 20ms)
2024-06-01T20:06:29.758Z [MUXER0] Register new input 'System/SYSTEMGRABBER' with priority 245 as inactive
2024-06-01T20:06:29.758Z [COMPONENTCTRL0] System capture device: enabled
2024-06-01T20:06:29.758Z [MACOS AVF:AUTO] Multithreading for AVF is enabled. Available thread's count 4
2024-06-01T20:06:29.758Z [MACOS AVF:AUTO] (AVFGrabber.mm:408) Searching for devices...
2024-06-01T20:06:29.758Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-01T20:06:29.758Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T20:06:29.758Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:247) Enable the device
2024-06-01T20:06:29.758Z [LEDDEVICE0_ADALIGHT] Opening UART: cu.usbmodem2401
2024-06-01T20:06:29.758Z [COMPONENTCTRL0] HyperHDR: enabled
2024-06-01T20:06:29.758Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:209) _serialPort.open(QIODevice::ReadWrite): cu.usbmodem2401, Baud rate [2000000]bps
2024-06-01T20:06:29.758Z [MACOS_SYSTEM:AUTO] (macOsGrabber.mm:110) init
2024-06-01T20:06:29.758Z [MACOS_SYSTEM:AUTO] Started
2024-06-01T20:06:29.758Z [MACOS AVF:AUTO] (AVFGrabber.mm:256) Forcing auto discovery device
2024-06-01T20:06:29.758Z [MACOS AVF:AUTO] Could not find any capture device
2024-06-01T20:06:29.760Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:214) portName:          cu.usbmodem2401
2024-06-01T20:06:29.760Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:215) systemLocation:    /dev/cu.usbmodem2401
2024-06-01T20:06:29.760Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:216) description:       Pico
2024-06-01T20:06:29.760Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:217) manufacturer:      Raspberry Pi
2024-06-01T20:06:29.760Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:218) productIdentifier: 0xa
2024-06-01T20:06:29.760Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:219) vendorIdentifier:  0x2e8a
2024-06-01T20:06:29.760Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:220) serialNumber:      E66141040377B639
2024-06-01T20:06:29.790Z [LEDDEVICE0_ADALIGHT] Detected Rp2040 type board. HyperHDR skips the reset. State: 1, 1
2024-06-01T20:06:29.794Z [LEDDEVICE0_ADALIGHT] ESP sent: 'HyperHDR frames: 0 (FPS), receiv.: 0, good: 0, incompl.: 0, mem1'
2024-06-01T20:06:29.794Z [LEDDEVICE0_ADALIGHT] DETECTED DEVICE USING HyperSerialEsp8266/HyperSerialESP32/HyperSerialPico FIRMWARE (: 0, mem2: 448, heap: 123232  Welcome! Awa driver 9.) at 2 msec
2024-06-01T20:06:29.794Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:64) Switch on
2024-06-01T20:06:29.794Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:140) Power On
2024-06-01T20:06:29.794Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:367) Starting timer with interval = 20ms
2024-06-01T20:06:29.794Z [COMPONENTCTRL0] LED device: enabled
2024-06-01T20:06:29.795Z [SMOOTHING0] Using alternative smoothing input (0)
2024-06-01T20:06:29.836Z [SMOOTHING0] Using alternative smoothing procedure (0)
2024-06-01T20:06:29.878Z [MUXER0] Priority 245 is now active
2024-06-01T20:06:29.878Z [MUXER0] Set visible priority to 245
2024-06-01T20:06:29.878Z [HYPERHDR0] New priority[245], previous [255]
2024-06-01T20:06:29.878Z [HYPERHDR0] New source available -> switch LED-Device on
2024-06-01T20:06:29.878Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-01T20:06:29.878Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T20:06:29.878Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:247) Enable the device
2024-06-01T20:06:29.878Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:224) setBackLightEnabled: 1
2024-06-01T20:06:29.878Z [SMOOTHING0] Using alternative smoothing input (0)
2024-06-01T20:06:29.916Z [SMOOTHING0] Using alternative smoothing procedure (0)
2024-06-01T20:06:30.067Z [MACOS_SYSTEM:AUTO] Lost connection to the display or user didn't grant access rights
2024-06-01T20:06:30.069Z [MACOS_SYSTEM:AUTO] Stopped
2024-06-01T20:06:30.069Z [MACOS_SYSTEM:AUTO] (macOsGrabber.mm:100) Uninit grabber: Display id: 2
2024-06-01T20:06:31.406Z [MUXER0] Priority 245 is now inactive
2024-06-01T20:06:31.406Z [MUXER0] Set visible priority to 255
2024-06-01T20:06:31.406Z [HYPERHDR0] New priority[255], previous [245]
2024-06-01T20:06:31.406Z [HYPERHDR0] No source left -> switch LED-Device off
2024-06-01T20:06:31.406Z [SMOOTHING0] Clearing queued colors before: disabling
2024-06-01T20:06:31.406Z [SMOOTHING0] Smoothing queue is cleared
2024-06-01T20:06:31.406Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:224) setBackLightEnabled: 0
2024-06-01T20:06:31.406Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:297) Disable the device
2024-06-01T20:06:31.406Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:381) Stopping refresh timer
2024-06-01T20:06:31.406Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:90) Switch off
2024-06-01T20:06:31.406Z [LEDDEVICE0_ADALIGHT] (LedDevice.cpp:544) Set LED strip to black/power off
2024-06-01T20:06:31.406Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:146) Flush was successful
2024-06-01T20:06:31.417Z [LEDDEVICE0_ADALIGHT] Received goodbye: 'HyperHDR frames: 0 (FPS), receiv.: 0, good: 0, incompl.: 0, mem1: 0, mem2: 448, heap: 123232
' (94)
2024-06-01T20:06:31.446Z [LEDDEVICE0_ADALIGHT] (ProviderSerial.cpp:164) Serial port is closed: cu.usbmodem2401
2024-06-01T20:06:31.447Z [COMPONENTCTRL0] LED device: disabled
2024-06-01T20:06:42.061Z [WEBSOCKET] (WebSocketClient.cpp:40) New connection from ::1
2024-06-01T20:06:43.871Z [WEBSOCKET] (HyperAPI.cpp:955) log streaming activated for client ::1

I cannot reproduce the problem on my Sonoma setup using latest HyperHDR v21alpha0.
Logs:

2024-06-02T15:53:15.353Z [HYPER_MANAGER] The system is going to sleep
2024-06-02T15:53:15.353Z [COMPONENTCTRL0] (ComponentController.cpp:47) Disabling HyperHDR instance: saving current component states first
2024-06-02T15:53:15.353Z [SMOOTHING0] Clearing queued colors before: disabling
2024-06-02T15:53:15.353Z [SMOOTHING0] Smoothing queue is cleared
2024-06-02T15:53:15.353Z [SMOOTHING0] Clearing queued colors before: disabling
2024-06-02T15:53:15.353Z [LEDDEVICE0_FILE] (LedDevice.cpp:297) Disable the device
2024-06-02T15:53:15.353Z [SMOOTHING0] Smoothing queue is cleared
2024-06-02T15:53:15.353Z [LEDDEVICE0_FILE] (LedDevice.cpp:381) Stopping refresh timer
2024-06-02T15:53:15.353Z [COMPONENTCTRL0] Smoothing: disabled
2024-06-02T15:53:15.353Z [LEDDEVICE0_FILE] (LedDevice.cpp:90) Switch off
2024-06-02T15:53:15.354Z [LEDDEVICE0_FILE] (LedDevice.cpp:126) Power Off
2024-06-02T15:53:15.354Z [MUXER0] Removed source priority 245
2024-06-02T15:53:15.354Z [LEDDEVICE0_FILE] (LedDevice.cpp:544) Set LED strip to black/power off
2024-06-02T15:53:15.354Z [MUXER0] Set visible priority to 255
2024-06-02T15:53:15.354Z [LEDDEVICE0_FILE] (LedDeviceFile.cpp:86) File: /dev/null
2024-06-02T15:53:15.354Z [HYPERHDR0] New priority[255], previous [245]
2024-06-02T15:53:15.354Z [LEDDEVICE0_FILE] (LedDevice.cpp:433) Refresh interval updated to 0ms
2024-06-02T15:53:15.354Z [HYPERHDR0] No source left -> switch LED-Device off
2024-06-02T15:53:15.354Z [LEDDEVICE0_FILE] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 0ms (proposed: 0ms)
2024-06-02T15:53:15.354Z [SMOOTHING0] Clearing queued colors before: disabling
2024-06-02T15:53:15.355Z [SMOOTHING0] Smoothing queue is cleared
2024-06-02T15:53:15.355Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:224) setBackLightEnabled: 0
2024-06-02T15:53:15.355Z [LEDDEVICE0_FILE] (LedDevice.cpp:297) Disable the device
2024-06-02T15:53:15.355Z [COMPONENTCTRL0] System capture device: disabled
2024-06-02T15:53:15.356Z [COMPONENTCTRL0] (ComponentController.cpp:66) Disabling HyperHDR instance: preparations completed
2024-06-02T15:53:15.356Z [COMPONENTCTRL0] LED device: disabled
2024-06-02T15:53:15.356Z [LEDDEVICE0_FILE] (LedDevice.cpp:214) Saving retryTimer (interval: 0)
2024-06-02T15:53:15.434Z [MACOS_SYSTEM:AUTO] Stopped
2024-06-02T15:53:25.334Z [HYPER_MANAGER] The system is going to wake up
2024-06-02T15:53:28.486Z [COMPONENTCTRL0] (ComponentController.cpp:73) Enabling HyperHDR instance: recovering previuosly saved component states
2024-06-02T15:53:28.486Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-02T15:53:28.486Z [SMOOTHING0] Smoothing queue is cleared
2024-06-02T15:53:28.487Z [LEDDEVICE0_FILE] (LedDevice.cpp:423) Refresh rate = 50.00 Hz
2024-06-02T15:53:28.487Z [COMPONENTCTRL0] Smoothing: enabled
2024-06-02T15:53:28.487Z [LEDDEVICE0_FILE] (LedDevice.cpp:373) Device is not ready to start a timer
2024-06-02T15:53:28.487Z [MUXER0] Register new input 'System/SYSTEMGRABBER' with priority 245 as inactive
2024-06-02T15:53:28.487Z [LEDDEVICE0_FILE] (LedDevice.cpp:433) Refresh interval updated to 20ms
2024-06-02T15:53:28.487Z [COMPONENTCTRL0] System capture device: enabled
2024-06-02T15:53:28.487Z [LEDDEVICE0_FILE] (LedDevice.cpp:448) LED refresh interval adjustment caused by smoothing configuration change to 20ms (proposed: 20ms)
2024-06-02T15:53:28.488Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-02T15:53:28.488Z [MACOS_SYSTEM:AUTO] (macOsGrabber.mm:110) init
2024-06-02T15:53:28.488Z [SMOOTHING0] Smoothing queue is cleared
2024-06-02T15:53:28.488Z [MACOS_SYSTEM:AUTO] Started
2024-06-02T15:53:28.488Z [COMPONENTCTRL0] HyperHDR: enabled
2024-06-02T15:53:28.488Z [LEDDEVICE0_FILE] (LedDevice.cpp:247) Enable the device
2024-06-02T15:53:28.488Z [LEDDEVICE0_FILE] (LedDeviceFile.cpp:56) Open filename: /dev/null
2024-06-02T15:53:28.488Z [LEDDEVICE0_FILE] (LedDeviceFile.cpp:60) QIODevice::WriteOnly, /dev/null
2024-06-02T15:53:28.489Z [LEDDEVICE0_FILE] (LedDevice.cpp:64) Switch on
2024-06-02T15:53:28.489Z [LEDDEVICE0_FILE] (LedDevice.cpp:140) Power On
2024-06-02T15:53:28.489Z [LEDDEVICE0_FILE] (LedDevice.cpp:367) Starting timer with interval = 20ms
2024-06-02T15:53:28.489Z [COMPONENTCTRL0] LED device: enabled
2024-06-02T15:53:28.490Z [SMOOTHING0] Using alternative smoothing input (0)
2024-06-02T15:53:28.530Z [SMOOTHING0] Using alternative smoothing procedure (0)
2024-06-02T15:53:28.608Z [MUXER0] Priority 245 is now active
2024-06-02T15:53:28.608Z [MUXER0] Set visible priority to 245
2024-06-02T15:53:28.608Z [HYPERHDR0] New priority[245], previous [255]
2024-06-02T15:53:28.608Z [HYPERHDR0] New source available -> switch LED-Device on
2024-06-02T15:53:28.608Z [SMOOTHING0] Clearing queued colors before: enabling
2024-06-02T15:53:28.608Z [SMOOTHING0] Smoothing queue is cleared
2024-06-02T15:53:28.609Z [COLORSPACE_CALIBRATION0] (ColorSpaceCalibration.cpp:224) setBackLightEnabled: 1
2024-06-02T15:53:28.609Z [LEDDEVICE0_FILE] (LedDevice.cpp:247) Enable the device
2024-06-02T15:53:28.609Z [SMOOTHING0] Using alternative smoothing input (0)
2024-06-02T15:53:28.630Z [SMOOTHING0] Using alternative smoothing procedure (0)
2024-06-02T15:54:33.918Z [PERFORMANCE] [INSTANCE0: FPS = 10.00, processed = 600], [LED0: FPS = 50.00, send = 3000, processed = 3000, dropped = 0]

Anyway, I added a new feature for the macOS grabber: auto-resume, so it should solve situations like yours
You can install this build and let me know if it solves the problem:
https://github.com/awawa-dev/HyperHDR/actions/runs/9339273352

Thank you very much!  Your improvement has solved the problem. Thank you for all your work on this project. The project is incredible!


create ability to cache and playback groups of snippets

When giving demos and teaching others puppet principles  I would really like to have a suite of examples that can be run easily in the debugger.
For example:
If I enter snippets  in the debugger I expect to get a list of snippets coming from an external source.
If I enter play snippet_name or list_id I expect the snippet to run within the debugger
If I enter record snippet_name  I expect the debugger to record and save the input following this command until some sort of 'EOF' is reached.  Also the output should not be recorded only the input.
I also expect to have some ability to pause and continue playback so that a user can review the input before the output is displayed.
Snippet groups should be be loaded via a hash where the name is given and the path of the snippet can be a url or file.
  beginner_concepts => {
     'defining_variables' => 'https://gist.github.com/nwops/defining_variables',
      'defining_classes'   => 'https://gist.github.com/nwops/defining_classes'
     }
   }

This would allow us to create a beginners guide, advanced_concepts guide and tips_and_tricks guide for anyone to follow.w

This has been moved to a plugin: See github.com/nwops/puppet-debugger-playbooks


Enable handling of null value returned by field defined as response.list.pointer

I use this connector to query records via an API, which returns them as elements of an array. The name of this field in the returned Json is items. Therefore I set the configuration response.list.pointer: /items.
As long as there are records to return, everything works as expected and the connector publishes them into a Kafka topic.
{
  "items": [
    {
      "entity_id": 1,
      "status": "pending"
    },
    {
      "entity_id": 2,
      "status": "pending"
    }
  ]
}

However, unfortunately, if there is nothing to return, this API does not return an empty array, but null as value of the field items.
{
  "items": null
}

In this case the connector does not work anymore and throws an exception. The reason basically is that this connector in case of a null value returns a Stream<JsonNode> with a single null value.
I fixed this by returning an empty Stream<JsonNode> in case the value is null. With this small fix for me everything works as expected.
I know that returning null instead of an empty array in the Json response is not best practice, but I cannot change this API and must accept what I get.
Therefore it would be create if you could check that I did not break something else and if it would be possible to merge this fix into your code.
Thanks.

Thanks @ueisele for your contribution, makes a lot of sense.
I'll trigger a new release with these changes.


Unable to use nestjs and admin-bro in the same app due to body-parser and formidable.

Backend api built with nestjs serves call at /, endpoints looks like /users/me or /auth/login etc.
Before adding AdminBro, call to /auth/login with post body of {"email": "<some-email>", "password": "<some-password>" } works fine.
But when adding a module named Backoffice to my app.module.ts post body is not found when calling /auth/login and throws an exception in the controller.
All calls to AdminBro works fine under /admin
@Module({
    imports: [
      AdminModule.createAdminAsync({
        imports: [
          TypeOrmModule.forRootAsync({
            imports: [SharedModule],
            inject: [ConfigService],
            useFactory: (configService: ConfigService) => configService.typeOrmConfig,
          }),
          UsersModule,
        ],
        inject: [UsersService, ConfigService],
        useFactory: (usersService: UsersService, configService: ConfigService) => {
          return {
            adminBroOptions: {
              rootPath: '/admin',
              resources: AdminBroResources,
            },
            auth: {
              authenticate: async (email, password) => {
                const user = await usersService.findOne({
                  email: email,
                  password: ConfigService.getPasswordsHash(password),
                });
                if (user) {
                  return { email: `${user.firstName}`, title: user.email.split('@')[0] };
                }
                return false;
              },
              cookiePassword: configService.get('COOKIE_SECRET'),
              cookieName: 'backoffice',
            },
          } as AdminModuleOptions;
        },
      }),
    ],
    // providers: [UsersService],
  })
  export class BackofficeModule {}

package.json dependencies used:
"@admin-bro/express": "^3.0.1",
"@admin-bro/nestjs": "^1.0.0",
"@admin-bro/typeorm": "^1.3.0",
"express-formidable": "^1.2.0",

I've narrowed it down to ExpressLoader in this repo which moves jsonParser and urlencodeparser in layer stack below AdminBro router. Commenting this out breaks AdminBro but nestjs api works again.

Same here. How about adding admin panel as microservice?

Same here. How about adding admin panel as microservice?

Is this related to #7? I was able to overcome similar auth issues by using the approach outlined in https://github.com/SoftwareBrothers/admin-bro-nestjs/issues/7#issuecomment-743963341

Is this related to #7? I was able to overcome similar auth issues by using the approach outlined in https://github.com/SoftwareBrothers/admin-bro-nestjs/issues/7#issuecomment-743963341

@maxpeterson its working for me also with your setup. Thanks!

@maxpeterson its working for me also with your setup. Thanks!

you must add app.use(express.json()); to index.js

node:internal/modules/esm/resolve:257
admin-dashboard    |     throw new ERR_MODULE_NOT_FOUND(
admin-dashboard    |           ^
admin-dashboard    |
admin-dashboard    | Error [ERR_MODULE_NOT_FOUND]: Cannot find module '/app/dist/app.module' imported from /app/dist/main.js
admin-dashboard    |     at finalizeResolution (node:internal/modules/esm/resolve:257:11)
admin-dashboard    |     at moduleResolve (node:internal/modules/esm/resolve:914:10)
admin-dashboard    |     at defaultResolve (node:internal/modules/esm/resolve:1038:11)
admin-dashboard    |     at ModuleLoader.defaultResolve (node:internal/modules/esm/loader:557:12)
admin-dashboard    |     at ModuleLoader.resolve (node:internal/modules/esm/loader:525:25)
admin-dashboard    |     at ModuleLoader.getModuleJob (node:internal/modules/esm/loader:246:38)
admin-dashboard    |     at ModuleJob._link (node:internal/modules/esm/module_job:126:49) {
admin-dashboard    |   code: 'ERR_MODULE_NOT_FOUND',
admin-dashboard    |   url: 'file:///app/dist/app.module'
admin-dashboard    | }


The "ZipDirectory" task was not found.

.net core 2.1 console app and added the example above and I get
The "ZipDirectory" task was not found. Check the following: 1.) The name of the task in the project file is the same as the name of the task class. 2.) The task class is "public" and implements the Microsoft.Build.Framework.ITask interface. 3.) The task is correctly declared with <UsingTask> in the project file, or in the *.tasks files located in the "C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin" directory.

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

ID: 4c2cbd60-5d56-af4f-b196-4c9f190a1586
Version Independent ID: 6408870a-85cd-428c-5ede-2338804481d6
Content: ZipDirectory Task - Visual Studio
Content Source: docs/msbuild/zipdirectory-task.md
Product: visual-studio-dev15
GitHub Login: @Mikejo5000
Microsoft Alias: mikejo

It is because 15.7 is the current released version and this is for 15.8.
Sorry!

No problem. Thanks for the follow up!


Go back to clip-anytorch and add imageio

This works with the truncate option as well.

Closing in favor of new PR

Great thanks!


RealVectorBoxConstraint's getConstraintDimension

Current implementation returns all dimension. This should be changed to return only the dimensions with bounded constraints.

Note that this would require changes to all of the Differentiable overrides on RealVectorBoxConstraint, not just getDimension.


[hotfix] add space bewteen error message lines

What is the purpose of the change
add space bewteen error message lines
Brief change log
add space bewteen error message lines
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:
none
Documentation
none

merging.


[RI-476] Remove no-download option from virtualenv

The --no-download option is not available in this version of virtualenv.
Issue: RI-476
Issue: RI-476

Thank you for submitting a pull request to this project!
Once all check jobs have passed and the pull request has received a
sufficient number of reviews, the repository's gate jobs can be triggered by
adding a comment of :shipit: to this pull request.
When the gate jobs have completed successfully, this pull request will get
merged automatically.

recheck_cit_artifact

recheck_cit_artifact

recheck_artifact


Initiate WOW on items that are partially above the fold?

I'm using WOW in several pages in a Shopify theme - on most templates, WOW works right away on page load. From my very basic understanding, this is because these items are already above the fold and visible, thus WOW animates them right away.
Is there a way to make it so that items that are only partially above the fold/in the viewport also get initiated? The problem I'm experiencing now is on one template, the design ends up with white space and there's no indication to the user that there is content below unless they start scrolling.
Any advice would be greatly appreciated.

I've found a hacky way to work around this for now by using jQuery to change the visibility of the first item on said template, which works, but would still love to hear any suggestions or input for a better fix.


error during connect: Post http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.40/build?buildargs=%7B%7D&cachefrom=%5B%5D&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=dockerfile&labels=%7B%7D&memory=0&memswap=0&networkmode=default&rm=1&session=w032eh4sjeeap8elwafzx94jg&shmsize=0&t=mymicroservice&target=&ulimits=null&version=1: open //./pipe/docker_engine: The system cannot find the file specified. In the default daemon configuration on Windows, the docker client must be run elevated to connect. This error may also indicate that the docker daemon is not running.

Problem encountered on https://dotnet.microsoft.com/learn/aspnet/microservice-tutorial/docker-image
Operating System: windows
Provide details about the problem you are experiencing. Include your operating system version, exact error message, code sample, and anything else that is relevant.

PLz ignore

If docker is not running in your PC you get this error.
Check if Docker is running by verifying  the system tray
or
Try running below command
docker --version
If the command runs, displaying some version information, then Docker is successfully installed.
Else please start the docker on your PC.


#1821 Add actions to workbench registry for staging and unstaging the active file

This PR registers actions for staging and unstaging the file which currently has focus. Works for both files and diff editors. The actions can then be bound to keyboard shortcuts at the users discretion.
Staging selection ranges is currently not part of this review but can be implemented on request.

Hi @tht13, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.microsoft.com.

TTYL, MSBOT;

@tht13, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, MSBOT;

@tht13, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, MSBOT;

Looks great, just did a few tweaks, thanks!


don't assume salsa response returns a name

the salsa response does not always contain name. add graceful error handling/fallback, e.g., email.
KeyError: 'firstName'
  File "django/core/handlers/exception.py", line 35, in inner
    response = get_response(request)
  File "django/core/handlers/base.py", line 128, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "django/core/handlers/base.py", line 126, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "django/views/generic/base.py", line 69, in view
    return self.dispatch(request, *args, **kwargs)
  File "django/views/generic/base.py", line 89, in dispatch
    return handler(request, *args, **kwargs)
  File "salsa_auth/views.py", line 122, in post
    'Welcome back, {}!'.format(user['firstName']),

addressed in 65d0913b767d5044c1f02f8bf9019506d2d032b0


Enhance Project Cards with Shadow Effect and Add 'Follow Us on Social Media' Section

Issue Description:
I’ve identified two potential improvements for the website:

Hover Effect (Shadow): Adding a shadow effect on each project card to enhance visual appeal and interactivity.
'Follow Us on Social Media' Section: Implementing a section for social media links to encourage user engagement.

I’d like to work on these enhancements. Please assign this issue to me.

I have the bellow approach,
Step 1: Add Shadow Effect to Project Cards
Step 2: Create 'Follow Us on Social Media' Section
Step 3: Add Social Media Icons with Links
Step 4: Style the Icons and Layout
Step 5: Implement Hover Effects on Icons
Kindly assing me this issue


How to switch to new windows in a test and close browser sessions after the test is completed in @serenity-js/webdriverio

In my test I have a link when clicked will open in new window and I'm unable to interact with it and close the window. Also how to close the browser session after the test is completed?
There is nothing related to this is available in Serenity/JS WebdriverIO documentation
https://serenity-js.org/modules/webdriverio/
Please help me out. Thanks

Hi again @chaitanyachekuru!
Same as with my suggestion regarding #1345, if you're using Serenity/JS 2.x, you can implement it based on the interaction to Switch.toWindow(nameOrHandleOrIndex) and the interaction to Close
In Serenity/JS 3.0, there are several nice mechanisms built in that enable you to easily switch between windows:

Page.whichName(expectation)
Page.whichTitle(expectation)
Page.whichUrl(expectation)

There's also a method Page#close() you can use to close a specific window, for example:
await actor.attemptsTo(
  Page.whichTitle(includes('pop up')).close(),
)

Hope this helps!

Hi @jan-molak, this will work if we use serenity-js/protractor, where as I'm using serenity-js/webdriverIO and none of these imports are available for use and not possible to implement these.

Hey @chaitanyachekuru!

none of these imports are available for use and not possible to implement these

I'm not sure what imports you're referring to, could you please elaborate some more?
WebdriverIO APIs for interacting with windows are very similar to what Protractor uses.

Hi, @chaitanyachekuru. I haven't heard from you in a while, so I'm assuming that I've answered your question and will close this ticket. If you have more questions about Serenity/JS, please feel free to join Serenity/JS Community Chat.


Add href link

To remove eslint warning
./src/components/footer/footer.js
Line 33:13:  The href attribute requires a valid value to be accessible. Provide a valid, navigable address as the href value. If you cannot provide a valid href, but still need the element to resemble a link, use a button and change it with appropriate styles. Learn more: https://github.com/evcohen/eslint-plugin-jsx-a11y/blob/master/docs/rules/anchor-is-valid.md  jsx-a11y/anchor-is-valid

Thanks for the fix


[BEAM-5324] Removing apache_beam.pipeline_test from Py3 unittests temporarily

Removing for now as it breaks Py3 unittests.
r: @RobbeSneyders @tvalentyn

Py3 passing, now i see docs failures....

I have submitted a PR with fixes at #6465.


metamorphic contracts

Hi,
Sorry for this but can someone explain how can i get this done? im asking because there is a lack of documentation in this
"Fill in the searcher address in Huff contract and deploy either straight onchain or via create2 using a metamorphic like factory."

You can use Keyless Create2 Factory to deploy the huff contract.
Install huff compiler curl -L get.huff.sh | bash
Get the contracts bytecode with huffc src/sando.huff --bytecode
Copy the contracts bytecode and use it to uploaded with the SafeCreate2 method, you can use this nodejs script https://github.com/Cionn3/create2-factory-contract-deploy
Make sure you run the huff compiler from the contracts folder

is this an alternative method to using metamorphic factory?

i think basically its the same thing, you can also find more info here: https://github.com/0age/metamorphic


Copyediting in README

... primarily emprical/empirical in the first paragraph. Patch file below.
index f6655c4..1360d53 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
 # Empirical Standards

-An _Empirical Standard_ is a brief public document that communicates expectations for emprical research. Here _empirical_ denotes research that uses data. The data can be qualitative or quantitative; real or synthetic. _Empirical_ distinguishes research that involves collecting and analyzing data from other kinds of scholarship like a mathematical proof or a philosophical treatise.
+An _Empirical Standard_ is a brief public document that communicates expectations for empirical research. Here _empirical_ denotes research that uses data. The data can be qualitative or quantitative; real or synthetic. _Empirical_ distinguishes research that involves collecting and analyzing data from other kinds of scholarship like a mathematical proof or a philosophical treatise.

 Moreover, our empirical standards are:

@@ -15,13 +15,13 @@ The empirical standards have three main uses:
 2. Designing better studies
 3. Educating graduate students

-Scholarly peer review is simultaneously “the lynchpin about which the whole business of science is pivoted" [1] and "prejudiced, capricious, inefficient, ineffective, and generally unscientific” [2]. Many of the problems with peer review boild down to reviewers inventing their own evaluation criteria. Devising appropriate evaluation criteria for any given manuscript is extraordinarily difficult, so most reviewers' criteria are not very good. Reviewers create criteria that are inconsistent with other reviewers', the venue's, the editor's, the methodological literature and---crucially---the author's. In effect, the real criteria by which our research is judged are not merely opaque; they don't even exist until after the manuscript is submitted. This is why peer review is so frustrating, unpredictable, and unscientific.
+Scholarly peer review is simultaneously “the lynchpin about which the whole business of science is pivoted" [1] and "prejudiced, capricious, inefficient, ineffective, and generally unscientific” [2]. Many of the problems with peer review boiled down to reviewers inventing their own evaluation criteria. Devising appropriate evaluation criteria for any given manuscript is extraordinarily difficult, so most reviewers' criteria are not very good. Reviewers create criteria that are inconsistent with other reviewers', the venue's, the editor's, the methodological literature and---crucially---the author's. In effect, the real criteria by which our research is judged are not merely opaque; they don't even exist until after the manuscript is submitted. This is why peer review is so frustrating, unpredictable, and unscientific.

 Empirical standards are the secret to fixing this situation. With the standards, all the reviewers use the same criteria and the authors know the criteria in advance. Used appropriately, the standards discourage or prevent reviewers from either accepting research with fatal flaws or rejecting research based on bogus criteria.

 Obviously, if authors have these criteria in advance, they can use the criteria to design more rigorous studies. There's a lot to remember when designing a study, and robust methodological training is rare in our community. The standards provide concise, convenient checklists to help us remember all the core practices for a given method.

-The standards can also be used for educational purposes. While they cannot replace a good methods textbook, the lists of references and exemplars can be used to construct reading lists, and the specific attributes can be used to sheppherd graduate students through their study designs and paper write-ups.
+The standards can also be used for educational purposes. While they cannot replace a good methods textbook, the lists of references and exemplars can be used to construct reading lists, and the specific attributes can be used to shepherd graduate students through their study designs and paper write-ups.

 ## Creation and Maintenance

@@ -41,6 +41,6 @@ In the main directory:

 ## References

-[1] John M Ziman. 1968.Public knowledge: An essay concerning the socialdimension of science. Vol. 519. CUP Archive.
+[1] John M Ziman. 1968. Public knowledge: An essay concerning the social dimension of science. Vol. 519. CUP Archive.
 [2] Paul Ralph. 2016. Practical suggestions for improving scholarly peer review quality and reducing cycle times. _Communications of the Association for Information Systems_ 38, 1 (2016), Article 13.
 [3] Paul Ralph et al. 2020 "Empirical Standards for Software Engineering Research." _arXiv_:2010.03525.

Thanks, @utmandrew. The patch was applied with the commit d648892.


TSC.Pager(server.workbooks) unable to print all workbooks from tableau server

Versions

Tableau Server version (or note if using Tableau Online) - tableau server 2020.2.7
Python version - 3.7
TSC library version

To Reproduce
Results
Below code is not printing all the workbooks on my tableau server 2020.2.7, one of the example is below - We have workbooks named like 2018-- but it doesn't prints them. I even tried with TSC.RequestOptions(pagesize=1000). How can i iterate through all the workbook names (there are more than 3000+ workbooks)
    for wb in TSC.Pager(server.workbooks):
        if wb.name.startswith('2018'):
            print("I am here:",wb.name)

@Bipin007 could you clarify - when you say that not all workbooks are being printed, do you mean specifically that not all workbooks whose name starts with 2018 are printed? I'm trying to determine whether the code is having a problem seeing all workbooks or if there is something special about .startswith.
As an alternative you could try this simple loop which should print out all workbooks that this specific user can see:
for wb in TSC.Pager(server.workbooks):
    print(wb.name, wb.id)

As another confirmation check: if you login to your Tableau Server web UI using the same user, are you able to see all the expected workbooks?


Go rewrite

Will close #39. For now used for tracking purposes.

We need to find a different way to update the containerd config, imports does not merge key by key, but instead overwrites entire sections. See https://github.com/containerd/containerd/issues/5837#issuecomment-894840240 for more details on this.

@phyrog regarding the update of the containerd config.toml. The following idea comes to my mind:
Create a new TOML file that contains all the data found on a set of shim configuration files and then import only this merged file inside the containerd config.toml.  This gives flexibility about which runtimes classes we want to import onto the config.toml
This gives the advantage of select configuration on demand (if we consider the operator here is a nice thing to have)
Deletions or updates could be done in the same way by generating the config file with updates keys (for update) or just by not selecting certain configs (deletion).

@crabarca Importing overwrites the whole [plugins] section, so we'd need to get these parts (e.g. the default runc config) into that new config file as well before we import it. But yeah, I agree. This is probably the way to go.

Parse config.toml, get the imports and plugins fields
Merge plugins config with shim configs and write to new file
Update the imports field, if necessary
3.1. Write updated config.toml file, if necessary
Restart containerd

One caveat here is that if a user manually updates something in the plugins section of config.toml, this will be overridden by our config, which can result in unexpected behavior.

Unfortunately neither BurntSushi/go-toml nor pelletier/go-toml support preserving comments when unmarshalling/marshalling, so if we modified config.toml like this to add imports, it would not preserve any comments, order, etc.

I went down the rabbit hole on both libraries to see if there were some detailed AST structure that we could leverage to persist comments when doing a merge. The problem is that usually the TOML parsers store the file as a map of key=values without an specific order and doesn't considers comments. Even if comments were parsed the following problem appears:
If we think more deeply about this problem, the key=values allow a merge scenario out-of-the-box where conflicts can be resolved. This doesn't apply to comments as comments are not identifiable by a key or specific metadata. So merging it's hard as you don't know where to put the comments in the file.
To conclude, I would not go after trying to merge comments and just creating an intermediary config file which contains the merge of the shim configurations and won't contain comments, which then is going to be imported into config.toml

@crabarca I was mainly thinking about the libraries because we need to potentially modify config.toml to add or update the imports field to include our custom config file. I think we should find a way to update the file with the minimal possible modifications (i.e. preserving comments). In the worst case (we don't find a way to modify it with minimal changes), we could opt for creating a backup of config.toml and then just not care about minimal changes.
But I do think the Tree API of pelletier/go-toml v1 that I linked to above parses and stores comments as well
For the custom config file, I agree, preserving comments is not relevant.


有人告诉我这是什么错误吗？

有人告诉我这是什么错误吗？

Hi,

please ask in English
please follow the issue template
please post text directly instead of screenshot of text
what to do is explained in the error message: Try with a lower definition: scrcpy -m 1024 (FAQ).


multiple stopSequence

Describe the bug
Some models, like mistral v0.2 instruct (mistral-7b-instruct-v0.2.Q4_K_M.gguf), do not always correctly spit out stop tokens. This results in infinite generation, the model rambling forever. The stop feature you implemented allows for manual interruption here, but there should be a more robust solution. Ollama accounts for this by allowing each model to define multiple stop sequences, and watches for them all.
To Reproduce
Steps to reproduce the behavior:

Trigger a generation with mistral-7b-instruct-v0.2.Q4_K_M.gguf (about 10% chance that this will occur, from my testing)
Model will generate forever, tying up system resources and providing output with progressive degradation in quality

Expected behavior
The model should stop at a logical point in its generation all the time.
Screenshots

Desktop:

Chip: M1 Pro
Memory: 34GB
OS: macOS 14.2

Additional context
This is within my grav.ai application. I will work on a solution today and PR.

can you give me a minimal code that can reproduce what you were experiencing?
find and set seed parameter to a certain number, and a input string combination that can reproduce it.

Trying to recreate but it is unreliable. Am now logging seed and params so will catch it next time I see it in a debug environment. In doing so though I've found a new interesting bug stemming from the context limit:

When generating, the generation freezes for a second while I assume history and other input to the context window is truncated or deleted, and then the generation of the answer seems to restart, not considering what has already been generated. It is significantly better than crashing though, thank you for solving that.

that's not a bug. if it hits maxTokenCount, first it attempts to remove the history and then resume, but if there is no history it uses scoup function that scoup out the middle part, and then try to generate more based on that scouped out input. getResponse will call finishResponse if it cannot meet EOS within macTokenCount and finishResponse uses getResponse internally so it can create a loop.
extension [String] {
    mutating func scoup(_ count: Int) {
        guard 0 < count else { return }
        let firstIndex = count
        let lastIndex = count * 2
        self.removeSubrange(firstIndex..<lastIndex)
    }
}

Got it, two updates:

I was able to get the infinite generation to replicate, I will explore and report findings/solutions and commit to my branch:

SEEDED WITH<PHONE_NUMBER>
PARAMS: llama_context_params(seed:<PHONE_NUMBER>, n_ctx: 4098, n_batch: 4098, n_threads: 10, n_threads_batch: 10, rope_scaling_type: -1, rope_freq_base: 0.0, rope_freq_scale: 0.0, yarn_ext_factor: -1.0, yarn_attn_factor: 1.0, yarn_beta_fast: 32.0, yarn_beta_slow: 1.0, yarn_orig_ctx: 0, cb_eval: nil, cb_eval_user_data: nil, type_k: __C.ggml_type(rawValue: 1), type_v: __C.ggml_type(rawValue: 1), mul_mat_q: true, logits_all: false, embedding: false, offload_kqv: true)
MODEL: mistral-7b-instruct-v0.2.Q4_K_M.gguf
PROMPT: yo

I've refactored the codebase on my branch significantly. The purpose was to remove as many class globals as possible and implement a new context limit truncation method, I've copied it below. Those are breaking changes, and I understand if that's not your preferred software arch philosophy, so won't open a PR unless you confirm. I will do my best to merge your changes into my branch and keep things on-par as far as features go. If you'd like to merge/discuss further, happy to chat or call on whatever, my contact info is on my profile README.

    /// Returns list of tokens, encoded from the history, truncated to the maximum token count.
    private func truncateAndEncode(history: [Chat]) -> [Token] {
        var tokens = encode(preProcess(history))
        guard tokens.count > maxTokenCount else { return tokens }

        // Truncate content from the start of history and recount tokens
        var truncatedHistory = history

        var index = 0

        // Then remove the first chat until we have removed enough tokens
        while tokens.count > maxTokenCount, index < truncatedHistory.count {
            // let chatTokenCount = encode(truncatedHistory[index].content).count

            // Get the amount of content we need to remove
            let tokensToRemove = (tokens.count - maxTokenCount) + 50 // Add 50 to ensure we remove enough tokens
            let contentToRemove = min(
                tokensToRemove * 4,
                truncatedHistory[index].content.count
            ) // Multiply by 4 for average token

            if contentToRemove == truncatedHistory[index].content.count {
                truncatedHistory.remove(at: index)
                print("Removed all of chat \(index)")
                index -= 1
            } else {
                // Remove the content
                truncatedHistory[index].content.removeFirst(contentToRemove)
                print("Removed \(contentToRemove) characters from chat \(index)")
            }

            // Update tokens
            tokens = encode(preProcess(truncatedHistory))
            print("Tokens: \(tokens.count)")
            index += 1
        }

        return encode(preProcess(truncatedHistory))
    }

i have put some thoughts on this for some time, and i concluded that this is not necessary.

firstly, i suspect @djmango  wasn't using this library when he was experiencing this infinite generation, as the example he presented is not reproducible.
secondly, if you find yourself in a position where you need multiple stopSequences, that's probably a sign that's telling you to find a better model. stopSequence is there to safeguard the edge case when LLM fails to produce EOS token.
thirdly, if you really want to have multiple stopSequences, you can do so by overriding default behavior of open func respond(to input: String) async without rewriting the library.
lastly, you can just change stopSequence if you don't think the default one i provide for the templates are not working well, as i was lazily defining stopSeqeucne for popular models, because they don't need one mostly anyway. for example you can change the stopSequence of Template.mistral with "[INST]" instead of "</s>" and see what works better.


My protfolio site(mobile-first) final code, HTML,CSS and Readme file …

In this part of the project, I have modified and updated different the HTML, CSS and Readme files according to my Figma template. I have managed to use different properties and tools of CSS e.g. flexbox property, grid property, and HTML5 tools to picture my portfolio professionally.

[ ] You're also missing the last cards of the about-section. Kindly add these as well. I have attached a video below fo your reference.
Kindly add the Languages Skills and Frameworks cards :+1:
Video Reference
Screencast from 02-18-2023 09:22:47 AM.webm

My portfolio website (mobile-first) is ready and approved by the code reviewer. I made some changes to it since the last code review which includes changing of button size and adding new cards in the about me section along with other miner changes.


⚠ SolarOscp has degraded performance

In 932081b, SolarOscp ($SOLAROSCP_URL) experienced degraded performance:

HTTP code: 200
Response time: 284 ms

Resolved: SolarOscp performance has improved in fdce3d5.


Consider adding split operations

Scalaz’s Foldable has two variants of partitioning methods, named splitWith and selectSplit:
https://github.com/scalaz/scalaz/blob/series/7.3.x/core/src/main/scala/scalaz/Foldable.scala#L303-L351

I am interested, will give it a try soon

FYI I’ve used splitWith as a test in this PR: https://github.com/scala/scala/pull/6674/files#diff-1ac5384a2a49471ae923396b6ee3f269R47

@julienrf Is it still supposed to be in collections-contrib and inside a SeqDecorator as it was originally?  Seems like a lot of the stuff there was deleted.  Where did you use splitWith in that pr?  It's not there, or I am blind :wink:
Also, where can I find the IsSeqLike?

Oops, I’ve updated the PR yesterday and renamed it to groupedWith: https://github.com/scala/scala/pull/6674/files#diff-1ac5384a2a49471ae923396b6ee3f269R80
Here is the story about IsSeqLike. It’s part of the standard library but in collections-contrib we have something similar named HasSeqOps. The goal of the PR I linked is to unify them.
The idea I have in mind would be for you work to target the collections-contrib module. But you can also do a PR on scala/scala (without using IsSeqLike since you will be able to implement it directly in the collections, then) and start a discussion to have them in the standard library…

Here's another naming quibble!
I think the names splitWith and selectSplit are terrible!

selectSplit should be called runsWhere as it splits a sequence into runs where a predicate is true;

splitWith sounds like it would do like String's split but using an element predicate instead of an actual character (as in "ab$cd$efg".splitWith(notLetter) == Seq("ab","cd","efg")); maybe a better name would be runsUntilFlip? I'm not sure the function is that useful though; I'd prefer a function that returns two distinct sequences, and it would be called partitionRunsWhere.

We have precedent for an operation returning consecutive subsequences: grouped. I think we should use grouped instead of runs.

It's unfortunate, because the "group" terminology does not conceptually imply "consecutive-ity", which is a central property here. This is exacerbated by other methods like groupBy also talking about groups, but groups that are not consecutive!
In fact, it's also a useful operation to get consecutive groups sharing the same result by some function. How would you call it, then, given that groupBy is taken? groupedBy? Scalaz calls it splitBy... it could also be called splitRunsBy 🙃

They are also similar to partition :smile: How about:

Scalaz
collections

splitWith
partitionAll

splitBy
partitionGroup

selectSplit
partitionFilter

@joroKr21 - I think you mean span, not partition.  partition does not respect order.
Anyway, split is more appropriate for a name because that's already what it means for String.
If we want semantics substantially different from those in String, we may wish to use another word, especially if it collides with the split name on String.  Note that String split drops the characters it splits on.
Other possibilities include grouped (we already do it by number), fragment, dice, chop, shatter, etc..
I do think it's important that the action word go first and the modifier go afterwards, so no selectSplit but rather splitSelect.

Yes, I meant span... I keep confusing these two methods and for the life of me I can't remember which is which.
If split is chosen then it should do the same thing as String.split - It should drop the element we split on, but also the (inconsistent IMO) way it handles empty substrings:
scala> "...".split('.')
res10: Array[String] = Array()

scala> ".42...".split('.')
res11: Array[String] = Array("", 42)

scala> ".42...13.".split('.')
res12: Array[String] = Array("", 42, "", "", 13)

I would also be happy with groupedWith, groupedBy and groupedFilter, but then groupBy vs groupedBy will be confusing. I don't like select because it is often used in relational context where it has a completely different meaning.


Make the header partial extensible.

This change makes the header partial a bit more extensible, somewhat along the lines of the example at https://gohugo.io/templates/partials/#example-header-html.
A couple other tweaks snuck into the template:

Make the meta description configurable, defaulting to the hard-coded description in place.
Allow individual pages to override the meta author name.
Consistent use of a closing slash for head elements.

This is a good idea, please check the review.

[x] Collapsed the whitespace around the "en" string, not sure what happened there.
[x] Remove the collapse newline directive from the meta partial, but retained the one after header_includes to keep the </head> tag tight.

Looking good, thanks for the contribution!


WIP: V2v

Awesome to see this! @mareklibra Anywhere we could start to see how it's looking?

@lizsurette , I will need to create mock data along writing tests. I'll let you know in a later comment.
Anyway, there's still discussion about the general architecture.

@lizsurette , I will need to create mock data along writing tests. I'll let you know in a later comment.
Anyway, there's still discussion about the general architecture (incl. backend).

Sounds great! Nice to see it's a WIP at least :)

Rebased. There was a lot of conflicts but after brief checking it seems to be still working.
Continuing with tests and other remainers.

Pull Request Test Coverage Report for Build 669

92 of 223 (41.26%)  changed or added relevant lines in 14 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-4.002%) to 83.122%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/components/Wizard/CreateVmWizard/BasicSettingsTab.js
8
9
88.89%

src/components/Wizard/CreateVmWizard/CreateVmWizard.js
0
1
0.0%

src/components/Wizard/CreateVmWizard/providers/VCenterInstances.js
8
10
80.0%

src/components/Wizard/CreateVmWizard/providers/vmware.js
7
12
58.33%

src/k8s/request.js
8
14
57.14%

src/utils/validations.js
1
8
12.5%

src/components/Wizard/CreateVmWizard/providers/VCenterVms.js
6
16
37.5%

src/components/Wizard/CreateVmWizard/providers/v2vvmwareController.js
6
18
33.33%

src/components/Wizard/CreateVmWizard/providers/vmwareProviderPod.js
3
20
15.0%

src/components/Wizard/CreateVmWizard/providers/vmwareActions.js
3
34
8.82%

Totals

Change from base Build 665:
-4.002%

Covered Lines:
2165

Relevant Lines:
2492

💛  - Coveralls

Recent screenshots:

Recent screenshots:

Thanks for sharing these, @mareklibra ! It's looking great, well done. What do you think about using form inline error messages rather than the inline notification? Might look something like this instead:

FYI @andybraren

Thanks, @lizsurette , the inline notifications look better. I'll implement them in a folow-up, tracking: #242


CreateChatCompletion() fails with error, status code: 400, message: '' is not one of ['json_object', 'text'] - 'response_format.type'

Describe the bug
v1.17.0 introduced a regression into CreateChatCompletion() when using the 3.5 Turbo model. Now this function is failing with:
error, status code: 400, message: '' is not one of ['json_object', 'text'] - 'response_format.type'
If I switch back to v1.16.1 the problem goes away.
To Reproduce
	client := openai.NewClient(MYKEY)
	dialogue := []openai.ChatCompletionMessage{
		{Role: openai.ChatMessageRoleSystem, Content: MYSYSTEMMSG},
		{Role: openai.ChatMessageRoleUser, Content: MYPROMPT},
	}

	resp, err := client.CreateChatCompletion(
		context.Background(),
		openai.ChatCompletionRequest{
			Model:    openai.GPT3Dot5Turbo,
			Messages: dialogue,
		},
	)
	if err != nil {
		return err  <-- v1.17.0 fails here
	}

Expected behavior
Non-error return.
Screenshots/Logs
Environment (please complete the following information):

go-openai version: v1.17.0
Go version: 1.21.3
OpenAI API version: v1
OS: Ubuntu 20.04.6 LTS

Additional context
n/a

It looks like commit 6d9c3a6365643d02692ecc6f0b34a5fa3e7fea45 introduced this regression. If I revert it locally the problem goes away. @henomis can you take a look?

oops, filed the same one as you. I searched before drafting :D #542

PR here: https://github.com/sashabaranov/go-openai/pull/544

@sashabaranov @mikeb26 @jackieli-tes @henomis
Released the fix for this issue:
https://github.com/sashabaranov/go-openai/releases/tag/v1.17.2


Delete manual  TOC

Codecov Report

Merging #323 (603ec07) into master (5cb3303) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #323   +/-   ##
=========================================
  Coverage     67.62%   67.62%
  Complexity      593      593
=========================================
  Files           100      100
  Lines          1838     1838
  Branches        194      194
=========================================
  Hits           1243     1243
  Misses          521      521
  Partials         74       74

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 130fd0e...603ec07. Read the comment docs.


Template .NET Isolated Azure Function with Zip Deploy

Here a template for an Azure Isolated Function and it's Zip Deployment.
The demo code is in .NET 8.
The PR where azd compatibility was added is: https://github.com/FBoucher/ZipDeploy-AzFunc/pull/1

Your template repository
Place your template repository link here: https://github.com/FBoucher/ZipDeploy-AzFunc

[x] Added an entry to https://github.com/Azure/awesome-azd/blob/main/website/src/data/users.tsx that includes:

[x] Template title - A short title that reflects the local application stack that someone could use to get their application on Azure (e.g. "Containerized React Web App with Java API and MongoDB")

[x] Description - 1-2 sentence description of the architecture (e.g. Azure services) or solution that is defined by the template.

[x] Architecture Diagram or Application Screenshot - The image should include all services and their connections (example). You should add the image to the website/src/data/images/.

[x] Link to Author's GitHub or other relevant website - Used for attribution

[x] Author's Name -  Name to credit on the gallery card

[x] Link to template source - Link to the template GitHub repo

[x] Tags - Specify tags to represent the template. If you don't see a relevant tag for your template? Feel free to add one!
Required tags:

[x] Tag your template as Micrsoft-authored ("msft") or Community-authored ("community")
[x] Tag the IaC provider ("bicep" or "terraform")
[x] At least 1 tag for programming language used
[x] At least 1 tag for Azure services integrated
[x] Add the "new" tag for any newly authored templates

[x] In the PR comment, if you can also add a link to the PR where you made your repo azd compatible this will allow us to provide feedback on your template and speed up the review process.

@zedy-wj Could you test this template?

Okay, we will test this template in today.

@hemarina , @FBoucher - We have completed the test. Just a spelling error:

https://github.com/FBoucher/ZipDeploy-AzFunc/issues/2

Changes requested done.