Column Limit

I keep getting this error:
The batch item wasn't processed successfully because: (400)
Reason: Bad Request
HTTP response headers: HTTPHeaderDict({'Date': 'Tue, 09 May 2023 09:01:43 GMT', 'Content-Type': 'application/json', 'Content-Length': '216', 'Connection': 'keep-alive', 'trace-id': 'a5e2abe810cb6c3f', 'trace-sampled': 'false', 'Strict-Transport-Security': 'max-age=15724800; includeSubDomains', 'X-Influxdb-Request-ID': '3402a4e1bf06f25e3e0b3d6523c10cde', 'X-Influxdb-Build': 'Cloud'})
HTTP response body: {"code":"invalid","message":"dml handler error: service limit reached: couldn't create columns in table E7DEAEE7; table contains 199 existing columns, applying this write would result in 267 columns, limit is 200"}
I don't have the config file for influxdb to increase the limit for columns., please help.

Have you double checked that you're running the correct Python 3.9 install and you're using a virtual environment as per the README with the correct dependencies?

yes I am

can you try the following:

Re-download the repository
Run the install.bat and share the full console printout from this here
Run the main.bat and share the full console printout from this here

Hi again,
I suggest trying to send us a full zip incl. your DBC and inputs.py if possible via our contact form, then we can test if we can replicate the issue here.

The issue seems to be that new InfluxDB accounts get setup based on their new IOx engine, while my account was setup on the older TSM engine. The new IOx engine has implemented a rule schema that restricts the total number of columns to 200.
I'm checking if there's a simple way to remove that limit or to get setup with the TSM engine without having to self-host InfluxDB. But short term I recommend deleting your measurement and restricting your setup to write a max of 200 signals.
We'll update the README for now.


Back Port for imxrt dcache fixes to support WB and USB

Summary
Back ports
The ARM errata for Cortex-M7: Write-Through stores and loads may return incorrect data (NXP ERR011572) requires Write Back caching to avoid the issue. Once CONFIG_ARMV7M_DCACHE_WRITETHROUGH was tuned off the system hardfault repeatedly, it also had issues with caching turned off because the MPU was always enabling buffered caching but the maintenance operation are not present.
Root cause were in USDHC and USB improper alignment issues and improper maintenance operation.
Furthermore once all the caching was working, the USB driver had a bug that the bulk endpoints was getting confused with the interrupt endpoints and although sized to 512 where reporting a max size of 1024 causing more fun memory overwrites.
Impact
System stability with using USB dev (CDCACM) and USDHS
Testing
PX4: nxp_fmurt1062-v1

Upstream https://github.com/apache/incubator-nuttx/pull/4784.


PAGINATION - Next page token is always null ?

Hi team,
I'm using your library to fetch reviews from Play Store and reply to them, however, the getTokenPagination() function always return null. I'm not sure which part I was wrong.
Below is my code
$listReviews = $this->getGoogleService()->reviews->listReviews(             $this->googleConfig->name,             $opt,         );         dd($listReviews->getTokenPagination());
And this is the way I get the service:
    try {
        $client = new Google_Client();
        $client->setAuthConfig(json_decode($this->googleConfig->json, true));
    } catch (Throwable $e) {
        LoggerUtils::logError($this->logger, $e, 'Failed to create Google client');

        throw $e;
    }

    $client->addScope(Google_Service_AndroidPublisher::ANDROIDPUBLISHER);
    $this->service = new Google_Service_AndroidPublisher($client);

    return $this->service;

Hello @minhvb! Thanks for reaching out.
Are you still having the same issue?

Closed due inactivity. Please let me know if you have any further questions. Feel free to leave a comment if the issue persists!

I am encountering an issue with the Google Play Developer API (v3) when fetching reviews for an app. Despite setting maxResults to 100 or 50, the nextToken in the response is consistently null, even when the number of reviews returned is less than maxResults, and I know additional reviews exist.

Steps to Reproduce

Environment:

PHP Version: 8.4.1
Laravel Framework: 11.31
Google API Client Library: ^2.18
Google Play Developer API Version: v3
Authentication via env('GOOGLE_APPLICATION_CREDENTIALS') (service account JSON)

Code:
Service:
<?php

namespace App\Services;

use Google\Client;
use Google\Service\AndroidPublisher;
use Illuminate\Support\Facades\Log;

class GooglePlayReviewService
{
    protected $androidPublisherService;

    public function __construct()
    {
        $this->initializeGoogleClient();
    }

    protected function initializeGoogleClient()
    {
        $client = new Client();
        $client->setAuthConfig(env('GOOGLE_APPLICATION_CREDENTIALS'));
        $client->addScope(AndroidPublisher::ANDROIDPUBLISHER);

        $this->androidPublisherService = new AndroidPublisher($client);
    }

    public function getReviews(string $packageName, int $maxResults = 100, ?string $token = null): array
    {
        try {
            $params = [
                'maxResults' => $maxResults,
            ];

            if ($token) {
                $params['token'] = $token;
            }

            $response = $this->androidPublisherService->reviews->listReviews($packageName, $params);

            return [
                'reviews' => $response->getReviews(),
                'nextToken' => $response->getTokenPagination()?->getNextPageToken(),
            ];
        } catch (\Exception $e) {
            Log::error('Failed to fetch reviews: ' . $e->getMessage());
            return [
                'error' => $e->getMessage(),
            ];
        }
    }
}

Controller:
<?php

namespace App\Http\Controllers;

use App\Services\GooglePlayReviewService;
use Illuminate\Http\Request;

class ReviewsController extends Controller
{
    protected $googlePlayReviewsService;

    public function __construct(GooglePlayReviewService $googlePlayReviewsService)
    {
        $this->googlePlayReviewsService = $googlePlayReviewsService;
    }

    public function fetchReviews(Request $request)
    {
        $packageName = "com.test.app";
        $maxResults = "100";

        $result = $this->googlePlayReviewsService->getReviews($packageName, $maxResults);

        return response()->json($result);
    }
}

API Request:
Example of the API request using the provided code:
$result = $googlePlayReviewsService->getReviews("com.test.app", 100);

Example API Response:
{
    "reviews": [
        {
            "authorName": "John Doe",
            "reviewId": "example-review-id",
            "comments": [
                {
                    "userComment": {
                        "starRating": 5,
                        "text": "Great app!",
                        "lastModified": {
                            "seconds": "1734128646"
                        }
                    }
                }
            ]
        }
    ],
    "nextToken": null
}

Expected Behavior
The nextToken field in the API response should contain a value to indicate there are more reviews to fetch when the total number of reviews exceeds the maxResults parameter.

Observed Behavior

The nextToken field is null in the response, even when:

Fewer reviews are returned than the maxResults parameter (e.g., 80 reviews when maxResults is 100).
Additional reviews are available for the app.

Additional Notes

I’ve verified that my authentication setup is correct using env('GOOGLE_APPLICATION_CREDENTIALS'), and other API endpoints work as expected.
This behavior occurs consistently, regardless of the maxResults value (tested with 100 and 50).

Environment

PHP: 8.4.1
Laravel Framework: ^11.31
google/apiclient: ^2.18
Google Play Developer API Version: v3
Authentication: Service Account JSON (env('GOOGLE_APPLICATION_CREDENTIALS'))

Request for Clarification
Could you confirm if:

This is a bug with the API's pagination mechanism?
There’s a specific filter or limitation causing this behavior?
Any workaround exists to ensure all reviews are fetched without relying on nextToken?


master

Delete traling whitespace
Add alt texts to the images
Add advice on sample rate.

+1.
I really appreciate having that alt text.  I'm blind and use Scream
to get audio out of a Windows VM.


Add release static builds for Linux (and macOS?)

This is the continuation of my work on #5306.

This PR make it possible to build a static release for Linux (x86_64).
For that purpose:

release.mk is replaced by individual release scripts
the dependencies script are made more flexible to select native/cross and static/shared
the GitHub Actions script is improved (cf screenshot)
a Linux build script is added

Please test the binaries generated by GitHub Actions: https://github.com/Genymobile/scrcpy/pull/5515#issuecomment-2495589621
old
Here is a Linux binary (x86_64) built by GitHub Actions:

scrcpy-linux-ga.tar.gz SHA-256: f29f4e915f02c77ab3be4b00aaf218a359248463cc2e423c8ee692621041b62

Now, I want to do the same for macOS, but I have no mac. So I started a skeleton (the last commit of this PR), I need your help to complete it and make it work. You can read the commit which adds the static build for Linux as a base.
Thank you!

For macos , macos-latest runner is arch arm64 only.

@rom1v For macOS, I had to fix just small two things but I do see some logs about some missing static libraries https://github.com/Genymobile/scrcpy/pull/5517

@rom1v I can also confirm the build you attached works in Linux amd64:
~/Downloads/scrcpy-linux-ga                                                                                06:57:27 PM
❯ ./scrcpy_bin
scrcpy 2.7 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     --> (tcpip)  localhost:37105                 device  <redacted>
/home/muvaf/Downloads/scrcpy-linux-ga/scrcpy-server: 1 file pushed, 0 skipped. 200.1 MB/s (90228 bytes in 0.000s)
[server] INFO: Device: <redacted> (Android 14)
INFO: Renderer: opengl
INFO: OpenGL version: 4.6.0 NVIDIA 560.35.03
INFO: Trilinear filtering enabled
INFO: Texture: 1080x1920

@muvaf Thank you!
Can you please test branch macos_build (based on your work on #5517)?

@Genxster1998

For macos , macos-latest runner is arch arm64 only.

What other runner should we use to build a version for older macos? macos-14? They don't provide runners for < 14 apparently: https://docs.github.com/en/actions/using-github-hosted-runners/using-github-hosted-runners/about-github-hosted-runners

Could you also please test with ./scrcpy (so that it uses adb and scrcpy-server from the package)?

In Linux amd64, ./scrcpy works only if I change the last line from scrcpy "$@" to ./scrcpy_bin "$@".
❯ ./scrcpy
scrcpy 2.7 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     --> (tcpip)  emulator-5554                   device  sdk_gphone64_x86_64
./scrcpy-server: 1 file pushed, 0 skipped. 213.4 MB/s (90228 bytes in 0.000s)
[server] INFO: Device: [Google] google sdk_gphone64_x86_64 (Android 15)
[server] ERROR: Encoding error: java.lang.IllegalArgumentException:
[server] INFO: Retrying with -m2560...
INFO: Renderer: opengl
INFO: OpenGL version: 4.6.0 NVIDIA 560.35.03
INFO: Trilinear filtering enabled
INFO: Texture: 1344x2992
INFO: Texture: 1152x2560

In Linux amd64, ./scrcpy works only if I change the last line from scrcpy "$@" to ./scrcpy_bin "$@".

:facepalm: Thank you, I fixed locally in app/data/scrcpy_static_wrapper.sh. :+1:

Can you please test branch macos_build macos_build.2 (based on your work on https://github.com/Genymobile/scrcpy/pull/5517)?

@rom1v Worked as is!
Similarly, I needed to change the script.
> ./scrcpy
scrcpy 2.7 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     --> (tcpip)  emulator-5554                   device  sdk_gphone64_arm64
./scrcpy-server: 1 file pushed, 0 skipped. 236.4 MB/s (71200 bytes in 0.000s)
[server] INFO: Device: [Google] google sdk_gphone64_arm64 (Android 15)
ERROR: Could not get icon path
WARN: Could not load icon
INFO: Renderer: metal
INFO: Texture: 1080x2400
2024-11-23 19:26:07.856 scrcpy_bin[22331:1443939] +[IMKClient subclass]: chose IMKClient_Modern
2024-11-23 19:26:07.856 scrcpy_bin[22331:1443939] +[IMKInputSession subclass]: chose IMKInputSession_Modern
WARN: Killing the server...

> cat scrcpy
#!/bin/bash
cd "$(dirname ${BASH_SOURCE[0]})"
export ADB=./adb
export SCRCPY_SERVER_PATH=./scrcpy-server
export ICON=./icon.png
./scrcpy_bin "$@"

For the linux static build, I get this warning:

WARNING: Static library 'udev' not found for dependency 'libusb-1.0', may not be statically linked

I think this is ok (it just requires udev to be installed at runtime).

What I'm not sure is that when it says udev not found for dependency libusb-1.0, will it require udev to be present or libusb-1.0

Just udev:
$ ldd scrcpy_bin
	linux-vdso.so.1 (0x00007f4b39692000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f4b37e7c000)
	libudev.so.1 => /lib/x86_64-linux-gnu/libudev.so.1 (0x00007f4b37e37000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f4b37c41000)
	/lib64/ld-linux-x86-64.so.2 (0x00007f4b39694000)
	libcap.so.2 => /lib/x86_64-linux-gnu/libcap.so.2 (0x00007f4b37c35000)

@rom1v This is what I see in macOS with the current macos_build.2 branch:
> otool -L release/work/build-macos/dist/scrcpy_bin
release/work/build-macos/dist/scrcpy_bin:
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1351.0.0)
	/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 3107.0.0)
	/System/Library/Frameworks/CoreVideo.framework/Versions/A/CoreVideo (compatibility version 1.2.0, current version 1.5.0)
	/System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 1226.0.0)
	/usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 7.0.0)
	/usr/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.2.12)
	/System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio (compatibility version 1.0.0, current version 1.0.0)
	/System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox (compatibility version 1.0.0, current version 1000.0.0)
	/System/Library/Frameworks/CoreHaptics.framework/Versions/A/CoreHaptics (compatibility version 1.0.0, current version 1.0.0, weak)
	/System/Library/Frameworks/GameController.framework/Versions/A/GameController (compatibility version 1.0.0, current version 12.1.3, weak)
	/System/Library/Frameworks/ForceFeedback.framework/Versions/A/ForceFeedback (compatibility version 1.0.0, current version 1.0.2)
	/System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 170.0.0)
	/System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0)
	/System/Library/Frameworks/Metal.framework/Versions/A/Metal (compatibility version 1.0.0, current version 367.4.0, weak)
	/usr/lib/libobjc.A.dylib (compatibility version 1.0.0, current version 228.0.0)
	/System/Library/Frameworks/Security.framework/Versions/A/Security (compatibility version 1.0.0, current version 61439.41.1)
	/System/Library/Frameworks/AppKit.framework/Versions/C/AppKit (compatibility version 45.0.0, current version 2575.20.19)
	/System/Library/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics (compatibility version 64.0.0, current version 1883.1.10)
	/System/Library/Frameworks/Foundation.framework/Versions/C/Foundation (compatibility version 300.0.0, current version 3107.0.0)

Given Homebrew reports those as system libraries, I think we're OK, this is probably as static as it gets.

@rom1v
macOS didn't run at first, asking it to be explicitly allowed in the settings, which I did, then it worked with following logs:
 /tmp/scrcpy-macos-test ------------------------------------------------------------------------------------------------------------- 08:34:14 PM
> ls
adb           icon.png      scrcpy        scrcpy-server scrcpy_bin

 /tmp/scrcpy-macos-test --------------------------------------------------------------------------------------------------- KILL  5s  08:34:25 PM
> ./scrcpy
scrcpy 2.7 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     --> (tcpip)  emulator-5554                   device  sdk_gphone64_arm64
./scrcpy-server: 1 file pushed, 0 skipped. 218.7 MB/s (90228 bytes in 0.000s)
[server] INFO: Device: [Google] google sdk_gphone64_arm64 (Android 15)
ERROR: Could not get icon path
WARN: Could not load icon
INFO: Renderer: metal
INFO: Texture: 1080x2400
2024-11-23 20:34:48.398 scrcpy_bin[88997:1891324] +[IMKClient subclass]: chose IMKClient_Modern
2024-11-23 20:34:48.398 scrcpy_bin[88997:1891324] +[IMKInputSession subclass]: chose IMKInputSession_Modern

macOS didn't run at first, asking it to be explicitly allowed in the settings

OK, it's probably a security on macOS when running a downloaded binary?
Do you know why these logs:

2024-11-23 20:34:48.398 scrcpy_bin[88997:1891324] +[IMKClient subclass]: chose IMKClient_Modern
2024-11-23 20:34:48.398 scrcpy_bin[88997:1891324] +[IMKInputSession subclass]: chose IMKInputSession_Modern

?
Do you have them if you build scrcpy yourself (dynamically)?

This is what I see on Linux amd64:
/tmp/scrcpy-linux-test                                                                                08:36:40 PM
❯ ./scrcpy
scrcpy 2.7 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     --> (tcpip)  emulator-5554                   device  sdk_gphone64_x86_64
./scrcpy-server: 1 file pushed, 0 skipped. 225.0 MB/s (90228 bytes in 0.000s)
[server] INFO: Device: [Google] google sdk_gphone64_x86_64 (Android 15)
[server] INFO: Retrying with -m2560...
[server] ERROR: Encoding error: java.lang.IllegalArgumentException:
libEGL warning: egl: failed to create dri2 screen
[server] WARN: Could not get initial audio timestamp
INFO: Renderer: opengles2
INFO: OpenGL version: OpenGL ES 3.2 Mesa 24.0.9-0ubuntu0.2
INFO: Trilinear filtering enabled
INFO: Texture: 1344x2992
INFO: Texture: 1152x2560

Note that in the first archive you provided in PR description, I was seeing NVIDIA:
/tmp/scrcpy-linux-ga                                                                                08:37:44 PM
❯ ./scrcpy
scrcpy 2.7 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     --> (tcpip)  emulator-5554                   device  sdk_gphone64_x86_64
./scrcpy-server: 1 file pushed, 0 skipped. 104.1 MB/s (90228 bytes in 0.001s)
[server] INFO: Device: [Google] google sdk_gphone64_x86_64 (Android 15)
[server] ERROR: Encoding error: java.lang.IllegalArgumentException:
[server] INFO: Retrying with -m2560...
[server] WARN: Could not get initial audio timestamp
INFO: Renderer: opengl
INFO: OpenGL version: 4.6.0 NVIDIA 560.35.03
INFO: Trilinear filtering enabled
INFO: Texture: 1344x2992
INFO: Texture: 1152x2560

Do you have them if you build scrcpy yourself (dynamically)?

I haven't built scrcpy myself dynamically

ERROR: Could not get icon path
WARN: Could not load icon

Fixed by:
diff --git app/data/scrcpy_static_wrapper.sh app/data/scrcpy_static_wrapper.sh
index 4dcce9a72..56243471f 100755
--- app/data/scrcpy_static_wrapper.sh
+++ app/data/scrcpy_static_wrapper.sh
@@ -2,5 +2,5 @@
 cd "$(dirname ${BASH_SOURCE[0]})"
 export ADB=./adb
 export SCRCPY_SERVER_PATH=./scrcpy-server
-export ICON=./icon.png
+export SCRCPY_ICON_PATH=./icon.png
 ./scrcpy_bin "$@"

@rom1v I'm seeing those log lines even when I use scrcpy from brew install scrcpy

@rom1v Will you use these scripts only to publish to Github releases or are you planning to use them in Homebrew formula as well?

Note that in the first archive you provided in PR description, I was seeing NVIDIA:

In the initial version, in the build-linux job, I used:
          sudo apt install -y meson ninja-build nasm ffmpeg libsdl2-2.0-0 \
             libsdl2-dev libavcodec-dev libavdevice-dev libavformat-dev \
             libavutil-dev libswresample-dev libusb-1.0-0 libusb-1.0-0-dev

Now, I use:
          sudo apt update
          sudo apt install -y meson ninja-build nasm libudev-dev \
            libasound2-dev libpulse-dev

(I added libasound2-dev and libpulse-dev otherwise I had no sound)
I think I will revert that change, many feature will be missing I guess when building without the SDL and FFmpeg dependencies.

Will you use these scripts only to publish to Github releases or are you planning to use them in Homebrew formula as well?

Only for official releases.

Are you planning on adding linux-arm64 and darwin-amd64 architectures as well potentially via cross-compilation?

Are you planning on adding linux-arm64 and darwin-amd64 architectures as well potentially via cross-compilation?

It would be great.
However, I won't work on it soon, my goal for now is just to have at least "experimental" static linux and macos releases for "the general use case" before publishing scrcpy 3.0 (with virtual displays and opengl filters).

Here are new binaries, with the known problems fixed:

scrcpy-linux-test.tar.gz SHA-256: a0b60acf0de3b8e8d767b30bc0704dca87ebe62bbeeffc416664a5867484bb8
scrcpy-win64-test.zip SHA-256: 0a2baddf716190c23cd39f5c144e2705576a07297e912c922133d24589d2d0b
scrcpy-macos-test.tar.gz SHA-256: 2718abe656d28a132c8116130ca776bff7c045d76386b7862aa60230e5885c9

Please test :slightly_smiling_face:

macOS arm64:
> ./scrcpy
scrcpy 2.7 <https://github.com/Genymobile/scrcpy>
INFO: ADB device found:
INFO:     --> (tcpip)  emulator-5554                   device  sdk_gphone64_arm64
./scrcpy-server: 1 file pushed, 0 skipped. 240.2 MB/s (90228 bytes in 0.000s)
[server] INFO: Device: [Google] google sdk_gphone64_arm64 (Android 15)
INFO: Renderer: metal
INFO: Texture: 1080x2400
2024-11-23 21:35:53.362 scrcpy_bin[33048:2055306] +[IMKClient subclass]: chose IMKClient_Modern
2024-11-23 21:35:53.362 scrcpy_bin[33048:2055306] +[IMKInputSession subclass]: chose IMKInputSession_Modern

To be able to customize variables even with the scrcpy wrapper:
#!/bin/bash
cd "$(dirname ${BASH_SOURCE[0]})"
export ADB="${ADB:-./adb}"
export SCRCPY_SERVER_PATH="${SCRCPY_SERVER_PATH:-./scrcpy-server}"
export SCRCPY_ICON_PATH="${SCRCPY_ICON_PATH:-./icon.png}"
./scrcpy_bin "$@"

ADB=myadb ./scrcpy

@muvaf Could you please confirm that it works fine on macOS. :slightly_smiling_face:

@rom1v I have used macos-13 here https://github.com/Genxster1998/scrcpy/commit/db019004aeda96f6083b6c25645f36a760af4de7

@Genxster1998 Could you please re-implement this on top of current dev and open a PR, please? (with minimal changes compared to the macos-latest job)

@rom1v FYI, I tested released tarballs in both Linux amd64 and macOS arm64 and they both worked just as expected. Thank you for getting the scripts to the finish line so that we get the static builds so soon!

@rom1v I don't have much idea about cross compiling with universal binary as target. It would just need  separate build config for Intel and arm64. And ofcourse renaming release because current macos release in not universal.

@rom1v I have used macos-13 here Genxster1998@db01900

I can confirm your latest Intel binary from Actions build-macos-x86_64-intermediate also running just fine in the latest macOS Monterey 12.7.7

@LeeBinder  👍 I am encountering you a lot , in  hacintosh repos , sometime in kernelsu or zygisk stuffs. 🤣

..maybe I'm your cyberspace twin brother 🤣 😜

@LeeBinder Can you see if https://github.com/Genxster1998/scrcpy/actions/runs/12015099730 works without a local wrapper script , just icon.png and scrcpy-server in same dir and adb installed.

 Executing scrcpy_bin has the desired result, with the icon in the dock - respect!
BTW, in the info for scrcpy_bin it says "requires macOS 13", but it runs fine even in macOS 12 Monterey (maybe even below).

Please test #5644 release builds with scrcpy --video-codec=av1 (with a phone having an AV1 encoder).


Active visitors location

It would be helpful to see where the active visitors are. A widget like this could be added to the Dashboard-/Domain-View.

Hi @electerious wanted to ask what's the ETA on this, also If you need any help on this then I can try for it. :)

Hi @electerious wanted to ask what's the ETA on this, also If you need any help on this then I can try for it. :)


watterfall plot didn't work with TreeExplainer

Hi
Thanks for all your explaination.
I want to use watterfall plot and I have some question:
1.if I have TreeExplainer I can't use watterfall plot.I succeded when I use Explainer.
2.why there is a difference between using force plot and watterfall plot?
for forceplot I just write:
explainer = shap.TreeExplainer(model)
shap_values = explainer.shap_values(X_train)
shap.force_plot(explainer.expected_value, shap_values[0,:], X_train.iloc[0,:])
For watterfall plot plot I need model.predict
explainer = shap.Explainer(model.predict, X)
shap_values = explainer(X)
shap.waterfall_plot(shap_values[2])
Thanks!

Helper function here helped me :)


Inconsistent marker rendering

QuitarHero at 11/16/2019 9:26:45 PM +00:00

Bug Report:
Module: Markers & Paths / Core
Issue: For an unknown reason, markers that have text (not titles, but pictures with text in them, maybe only when the text is part of a transparent background) bold.
Picture of Issue:

Temporary? Fix: Reload the Markers & Paths module in the gw2 map that the bugged marker(s) appear on. This needs to be done on a per-gw2 map that have markers basis.

I have theorized (though seemingly proven wrong) that Blish interacts with something with windows that "resets" when your computer takes a long rest after a shut down, and Blish only interacts with that thing when you reload the module.
I've also theorized (though again, proven wrong) that iconSize may be part of the culprit, considering the pictures I'm using are 128x128 and iconSize="1" or even slightly larger doesn't correspond to the origional / larger size (in short, the pictures are smaller) so it temporarily bolds to compensate.
I've also theorized (yet to be proven) that re-organizing categories (even if the final result is the same) in the .xml results in this issue.

Attached to this bug report is the marker pack I was using (and developing) when this issue occured.

https://cdn.discordapp.com/attachments/534492173362528287/645374221303808032/Blish.Text.Bug.zip
REF: https://discordapp.com/channels/531175899588984842/534492173362528287/645374222104788992

This appears to be a marker stacking issue where the old markers are not removed when the same map is loaded multiple times.  This was an issue identified and resolved in https://github.com/blish-hud/Community-Module-Pack/pull/53
If it is not this, then it is a alpha blending error.  I'll confirm if I can replicate the issue with and without the changes introduced in the above mentioned PR as that should confirm one way or the other.


Properly set has_* keywords on messages.

This PR takes over from #13196.
Testing Plan:
Manual + Automated Tests
Review Help:

First commit (has:link) by Dustin is mostly unchanged; there are just some refactoring in the tests to make them easier to reuse later.
Second commit (migration) by Tim is unchanged.
Third commit sets up the way for has:image.
Fourth commit (has:image) removes content_has_image as well.
Fifth commit (has:attachment) leaves update_calculated_fields as a no-op since it still has a TODO left.
Sixth commit removes one of the last occurrences of content_has_attachment.

Work Remaining:

Remove the last few occurrences of content_has_attachment from the message editing codepaths. This part is slightly tricky as we have to maintain the has_attachment flag from before editing the message and compare it to the final result from bugdown. Naive attempts make the code ugly so I've kept it off the PR for now.
Comparing the urls to regexes can still have false positives but a database access to actually check if that url is indeed a valid attachment from Bugdown might not be worth it here. Maybe there's some approach I can't think of.
Address the TODO in update_calculated_fields or completely remove the function.

Partially fixes #12912. Tests are passing.

Great, thanks for picking this up @aero31aero!  I merged the self.add_a commit to help keep the diffs simple.
I think removing update_calculated_fields makes sense.  For attachments, I had been thinking that the most correctly implementation would be to have the markdown processor record what URLs there are links to in the message, and then to have the attachment claiming code path inspect those URLs, basically eliminating the regular expression logic from the system (and having has_attachment only be true if there's an actual Attachment object associated with the message).

Specifically, for the Attachment code path, what I was imagining is changing bugdown to expose a list, potential_attachment_urls, on the message object:
diff --git a/zerver/lib/actions.py b/zerver/lib/actions.py
index 653bc1889b..eeca4284e4 100644
--- a/zerver/lib/actions.py
+++ b/zerver/lib/actions.py
@@ -1429,7 +1429,7 @@ def do_send_messages(messages_maybe_none: Sequence[Optional[MutableMapping[str,

         # Claim attachments in message
         for message in messages:
-            if message['message'].has_attachment:
+            if len(message['message'].potential_attachment_urls) > 0:
                 do_claim_attachments(message['message'])

         for message in messages:
@@ -5452,9 +5452,7 @@ def notify_attachment_update(user_profile: UserProfile, op: str,
     send_event(user_profile.realm, event, [user_profile.id])

 def do_claim_attachments(message: Message) -> None:
-    attachment_url_list = attachment_url_re.findall(message.content)
-
-    for url in attachment_url_list:
+    for url in message.potential_attachment_urls:
         path_id = attachment_url_to_path_id(url)
         user_profile = message.sender
         is_message_realm_public = False
@@ -5477,6 +5475,7 @@ def do_claim_attachments(message: Message) -> None:

         attachment = claim_attachment(user_profile, path_id, message, is_message_realm_public)
         notify_attachment_update(user_profile, "update", attachment.to_dict())
+        message.has_attachment = True

 def do_delete_old_unclaimed_attachments(weeks_ago: int) -> None:
     old_unclaimed_attachments = get_old_unclaimed_attachments(weeks_ago)

With a corresponding update to check_attachment_reference_change (potentially a rewrite of that function).  What do you think of that approach?
Also, commit ordering-wise, I think what we want is to move the migration commit to the end of the series.
Finally, it looks like Dustin added has_link to get_raw_db_rows; is that change correct?  If so, do we need to make similar changes for the other flags?  I think the answer is that change is wrong, and we don't need to add it, because has_link and friends aren't accessed by the frontend or intended to be part of the API; they're just stored in the database for use by search.
Otherwise, looks great!

Ready for review. Changes:

Squashed changes related to has:attachment along with the new potential_urls approach in one commit.
Removed unneeded changes from the has:link commit.
Reordered commits and made the migrations commit 'fix' the issue.

I opened https://github.com/zulip/zulip/issues/13514 for potential follow-up cleanup work (would be a better strategy than the properties, I think, and avoid cluttering Message).

This is great; I'm going to just make the changes above and merge this, so we can get it deployed on chat.zulip.org and ready for production use.

Merged with a few changes described above (including a test for the blockquote case) and also the addition of 958f39a5516a1671a746ba01c06441ad708e7f4d.  Huge thanks for getting this done in time for the 2.1 release @aero31aero!


Missing "state_class" in HA MQTT discovery

Is your problem within Home Assistant (Core or Z-Wave JS Integration)?
NO, my problem is NOT within Home Assistant or the ZWave JS integration
Is your problem within Z-Wave JS UI (formerly ZwaveJS2MQTT)?
NO, my problem is NOT within Z-Wave JS UI
Checklist

[X] I have checked the troubleshooting section and my problem is not described there.

[X] I have read the changelog and my problem was not mentioned there.

Describe the bug
What causes the bug?
Didabling ZWaveJS HA WS Server integration and relying only on MQTT with automatic discovery breaks the statistic recordings on HA
What do you observe?
Missing energy statistics on HA
What did you expect to happen?
Have the statistics active with MQTT discovery only
Steps to reproduce the behavior:

Have any ZWave device pith power metering
Disable ZWaveJS WS HA integration and only rely on MQTT with automatic discovery
On HA: the statistics are missing (because not recorded any more)

To fix it: the sensors related to class "enegy" sould have the additionnal attribute (maybe if applicable, fixed the issue on my side by modifying the default MQTT discovery message and adding the "state_class" attribute tu the JSON message and then resend the MQTT discovery):
"state_class": "total_increasing",
Device information
Manufacturer: Shenzhen Neo Electronics Co., Ltd.
Model name: NAS-WR01Z
Node ID in your network: Multiple, 2, 4, 5, 9 and 25
Manufacturer: Fibargroup
Model name: FGS223
Node ID in your network: 24
How are you using node-zwave-js?

[X] zwave-js-ui (formerly zwavejs2mqtt) Docker image (latest)
[ ] zwave-js-ui (formerly zwavejs2mqtt) Docker image (dev)
[ ] zwave-js-ui (formerly zwavejs2mqtt) Docker manually built (please specify branches)
[ ] ioBroker.zwave2 adapter (please specify version)
[ ] HomeAssistant zwave_js integration  (please specify version)
[ ] pkg
[ ] node-red-contrib-zwave-js (please specify version, double click node to find out)
[ ] Manually built from GitHub (please specify branch)
[ ] Other (please describe)

Which branches or versions?
No response
Did you change anything?
yes (please describe)
If yes, what did you change?
To fix the issue, I added
"state_class": "total_increasing",
to the related sensons.
Did this work before?
Yes (please describe)
If yes, where did it work?
I guess the issue is only related to the MQTT only setup I now use. Never had this issue when WS HA server was active.
Attach Driver Logfile
Discovery issue. Upgrades seems to redo the JSON updade on all related sensors.
For device 3 for example, had to change the default
{
"type": "sensor",
"object_id": "electric_kwh_value",
"discovery_payload": {
"value_template": "{{ value_json.value }}",
"unit_of_measurement": "kWh",
"device_class": "energy",
"state_topic": "zwave/prise_ender3/50/0/value/65537",
"json_attributes_topic": "zwave/prise_ender3/50/0/value/65537",
"device": {
"identifiers": [
"zwavejs2mqtt_0xe504565f_node2"
],
"manufacturer": "Shenzhen Neo Electronics Co., Ltd.",
"model": "Wall Plug Switch (NAS-WR01Z)",
"name": "prise_ender3",
"sw_version": "3.94"
},
"name": "prise_ender3_electric_kwh_value",
"unique_id": "zwavejs2mqtt_0xe504565f_2-50-0-value-65537"
},
"discoveryTopic": "sensor/prise_ender3/electric_kwh_value/config",
"values": [
"50-0-value-65537"
],
"persistent": false,
"ignoreDiscovery": false,
"id": "sensor_electric_kwh_value"
}
with
{
"type": "sensor",
"object_id": "electric_kwh_value",
"discovery_payload": {
"value_template": "{{ value_json.value }}",
"unit_of_measurement": "kWh",
"device_class": "energy",
"state_topic": "zwave/prise_ender3/50/0/value/65537",
"state_class": "total_increasing",
"json_attributes_topic": "zwave/prise_ender3/50/0/value/65537",
"device": {
"identifiers": [
"zwavejs2mqtt_0xe504565f_node2"
],
"manufacturer": "Shenzhen Neo Electronics Co., Ltd.",
"model": "Wall Plug Switch (NAS-WR01Z)",
"name": "prise_ender3",
"sw_version": "3.94"
},
"name": "prise_ender3_electric_kwh_value",
"unique_id": "zwavejs2mqtt_0xe504565f_2-50-0-value-65537"
},
"discoveryTopic": "sensor/prise_ender3/electric_kwh_value/config",
"values": [
"50-0-value-65537"
],
"persistent": false,
"ignoreDiscovery": false,
"id": "sensor_electric_kwh_value"
}

Hi @opensource-alt , thanks for your issue, are you able to fix this your own in a PR so you can also test it? I could help you identify the lines and the changes to do

Hello. I checked yesterday and today again inside the zwavejs container (I'm pulling zwavejs/zwavejs2mqtt:latest, using some "grep -R" commands) and I wasn't able to find the files building the JSON for MQTT discovery.
I confirm the container upgrade (had a new version today) removed the manual update in the UI.
It's probably genarated using template system somewhere.
I'll check if I'm able to have a working way to patch the file you gave me using container overrides.

I'm unsure the file you gave me could be the starting point of a fix (and also I'm not an expert of nodejs :-) ).
Maybe in ./server/lib/Constants.js , function meterType(ccSpecific, configManager)
But it's first required to know if it's appropriate to add the missing class (and also it will be required to define it. It's a map so we just have to add it?). "energy" class is always a cumulative total? If yes, it could be pathced here. If not, the device database require additionnal information first.

Just try to add:
"state_class": "total_increasing"

Below this line:
https://github.com/zwave-js/zwave-js-ui/blob/d091834ad7512bf9be2b6c99051dcd09b6b8a864/lib/Constants.ts#L137

PR https://github.com/zwave-js/zwave-js-ui/pull/2953
In docker container: works when patched the file server/lib/Constants.js / no change when updated lib/Constants.js
I didn't check the file origin using the Docker build process...

Thanks 🙏🏼


Update Pace to the latest version, and remove duplicate files in app/assets.

Update Pace to version 0.5.6, and removed the duplicate files in app/assets in favor of vendor/assets. Added minor stylistic updates to README.md.

@hughes123b ?


ZEPPELIN-3506. DepInterpreter is broken

What is this PR for?
The bug is due to getInterpreterInTheSameSessionByClassName doesn't find the correct DepInterpreter. This PR fix this issue. The unit test fails due to classpath issue, will enable it later.
What type of PR is it?
[Bug Fix]
Todos

[ ] - Task

What is the Jira issue?

https://issues.apache.org/jira/browse/ZEPPELIN-3506

How should this be tested?

CI pass and manually tested

Screenshots (if appropriate)

Questions:

Does the licenses files need update? No
Is there breaking changes for older versions? No
Does this needs documentation? No

I am trying to upgrade Zeppelin to 0.8.2 and having problems with depInterpreter. I am loading jars with depInterpreter and using them as dependencies in a spark paragraph. The paragraph fails beacause it does not have the jars in its classpath. By setting the "zeppelin.spark.useNew" property to false the spark paragraph succeeds. Could this be related also to this change in 0.8.2?


Non-hardcoded types (enums, plugins) and migrations

Yes, it's me again with more enum-related type mapping issues. PostgreSQL enum support is almost done but I've ran into a snag when trying to do migrations.
I've reached a point where everything works well as long as I create my database without migrations (EnsureCreated()). My TypeMappingSource has a mapping from the CLR enum to the PostgreSQL one (by communicating with the ADO.NET layer), my migrations SQL generator creates the PostgreSQL enum based on a model annotation, everything works great.
However, when generating a migration, an int column is created instead of my enum type. This happens because of this line, which unwraps the enum type to its underlying integral type.
But the deeper issue here, is that even if I set the store type explicitly, enum support requires the application to globally map the enum, so that the TypeMappingSource can be aware of it. In other words, any mapping which isn't hardcoded into the TypeMappingSource is absent when command-line tools are executed (e.g. add migration), because they are outside the application.
The same problem will occur with any sort of external plugin modifying mappings - I'm about to add such plugins to support Nodatime, NetTopologySuite spatial support, and possibly JSON.NET, etc. So the scope here is a larger than just PostgreSQL enums.
I do realize this is really non-trivial ask - how to allow application-defined mappings to be injected into the TypeMappingSource for the command-line tools - but it does block several exciting features. What are your thoughts?

@roji With regard to, "is absent when command-line tools are executed (e.g. add migration), because they are outside the application." This is probably a case where the application needs to implement IDesignTimeContextFactory.
The issue with global configuration and tooling is one of the reasons we have tried to avoid it. In the old stack it lead to the abomination that is DbConfiguration.

@roji With regard to, "is absent when command-line tools are executed (e.g. add migration), because they are outside the application." This is probably a case where the application needs to implement IDesignTimeContextFactory.

Yeah, I see what you mean, but there still has to be a place where my user says "use this type plugin", or "here's this enum mapping", and I'm not aware of one... Yeah, all this definitely goes in the direction of global configuration, and I know it's not a simple subject.

It's OK if at the end of the day you guys say "we don't want to support this kind of scenario", although it would be a bit of a shame - the idea is to get us thinking about it (it's also obviously OK if you're busy with more important preview2 stuff...).

@roji Are you asking about applications specifying type mappings separately from the provider, or about making sure the provider has the information it needs to setup the type mappings?

I'm talking about applications specifying type mappings, yeah (or the provider pulling them from some application-managed place). Some examples of use:

In my application I want database date/time types to be mapped to Nodatime instead of the built-in BCL types (e.g. DateTime)
In my application I want a certain CLR enum type to be mapped to a PostgreSQL enum type, rather than to a database integer or string.
In my application I want the database json types to be mapped to Newtonsoft Json.NET types, or better yet, to use Json.NET to serialize/deserialize them transparently to my own types. In other words, on my entity I have some arbitrary POCO which, when saved, will be serialized to JSON at the ADO.NET level.

All the above is actually really within reach on PostgreSQL, with the notable exception of migrations - because all the above requires the user to express that they want to do these things, and there doesn't seem to be a place for that currently when running dotnet ef (or the Powershell commands).
Hope that makes it a bit clearer...

@roji We don't have a way for applications to easily set their own type mappings. We may well get to the point where we do this, but so far we have been focusing on allowing the application to change verious facets of the mapping and have that work with the provider to generate the correct mapping. This is inherently more provider-agnostic than just having the application set an explicit mapping because mappings are very provider-specific.
So, for example, if we take the Nodatime case, ideally EF should support Nodatime across all providers. This likely involves value conversions for most databases, together with a means to influence SQL translation that we don't have yet.
Now, if Postgres can natively use Nodatime types, then the provider is free to map those types by returning appropriate type mappings. Same for natively mapped enums. But that should not involve the application setting type mappings explicitly. Instead, the Postgres EF provider should generate those mappings based on being given the Nodatime or enum type to map. My understanding from our previous conversations is that the ADO.NET provider needs some configuration to make this work, and that the EF Provider would also need some global configuration, but once that configuration is done, then the application should not need to do anything else. Is that correct?
Assuming the above is correct, then for this to work in tooling, the application just needs to make sure that the configuration of the ADO.NET provider and the EF provider is run before the model is built. That would be done by the application in the implementation of IDesignTimeContextFactory. This doesn't seem bad at all--so what am I missing?

So, for example, if we take the Nodatime case, ideally EF should support Nodatime across all providers. This likely involves value conversions for most databases, together with a means to influence SQL translation that we don't have yet.
Now, if Postgres can natively use Nodatime types, then the provider is free to map those types by returning appropriate type mappings.

That's right - there are two ways to approach Nodatime support (in Npgsql) - doing it either at the ADO.NET level, or at the EF Core level (once you guys provide support for that). There are advantages either way - it seems cleaner to directly convert Nodatime to PostgreSQL representations and vice versa, rather than having to go through DateTime intermediaries (in some cases the impedance between all these types becomes a real problem). On the other hand clean, cross-provider support in EF Core is an attractive approach.

Now, if Postgres can natively use Nodatime types, then the provider is free to map those types by returning appropriate type mappings. Same for natively mapped enums. But that should not involve the application setting type mappings explicitly. Instead, the Postgres EF provider should generate those mappings based on being given the Nodatime or enum type to map.

Well... I could take a reference to NodaTime (or Json.NET or whatever) from the Npgsql EF Core provider, and simply map NodaTime to PostgreSQL date/time types. This would have the following problems:

I'd be forcing Nodatime on people who may not want it, without any opt-in or opt-out.
This is made worse in cases where there really are several legitimate options for mapping, and the provider imposes one of them without letting the user choose (e.g. NetTopologySuite vs. Microsoft.Spatial).
I'd be breaking backwards compatibility with all existing applications, which are written to expect DateTime rather than NodaTime.
I'd be adding references from my provider to lots of 3rd-party dependencies which people may not be interested in at all (e.g. spatial support with NetTopologySuite).

For these reasons, up to now I've been working under the assumption that users need to configure mappings somehow, i.e. opt into things. That's exactly the part that creates the issue for migration.

My understanding from our previous conversations is that the ADO.NET provider needs some configuration to make this work, and that the EF Provider would also need some global configuration, but once that configuration is done, then the application should not need to do anything else. Is that correct?

That's right, some mapping configuration has to happen at both levels, although again, the problem is where this application-provided configuration (or opt-in) happens.

Assuming the above is correct, then for this to work in tooling, the application just needs to make sure that the configuration of the ADO.NET provider and the EF provider is run before the model is built. That would be done by the application in the implementation of IDesignTimeContextFactory. This doesn't seem bad at all--so what am I missing?

Ah, maybe the misunderstand is mine - I should have read through before posting the comments above. Are you saying that an application can provide its own IDesignTimeContextFactory, which is instantiated and used when migration commands are executed etc? Do you have any sort of sample to point me to?

@roji Yes--that's what IDesignTimeContextFactory is for. See the docs here: https://docs.microsoft.com/en-us/ef/core/miscellaneous/cli/dbcontext-creation

That looks perfect, I wasn't aware of it... sorry for all the roundabout explaining/questioning.
I'll post back here if I encounter any more issues.

@ajcvickers just to let you know that migrations seem to be working well with enums (barring #11368), thanks again for the guidance here.


Fatal Error: Runtime out of memory while making fabric base-image

Yeah, you may need to modify the line

       Memory:<PHONE_NUMBER>

to

       Memory: 16777216

in core.yaml as mentioned in   compiling.md for building on Raspberry Pi.
Also making a swap partition can be necessary if the devices run out of memory during build.  You can check for existing swap either with top or swapon --show. 1GB of swap should be more than enough, to create swap perform the following actions:
sudo fallocate -l 1G /swapfile
sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo echo '/swapfile swap swap defaults 0 0' >> /etc/fstab


Add configuration parameters

Brian asked to revisit ReqMgr2 MicroService with Unified Transferor. He asked me to setup an instance in read-only mode and provide a demo. I'm adding config parameters which we can use to turn on verbosity level and change the interval of MS cycle.

Done, I was not sure if it is applicable to config instance.
On  0, Alan Malta Rodrigues<EMAIL_ADDRESS>wrote:

amaltaro commented on this pull request.

@@ -194,7 +194,11 @@ def init(self, config=None):
self.config = config
self.reqmgrAux = ReqMgrAux(self.config.reqmgr2_url)
self.requests = {}

   self.reqManager = RequestManager()

   group = 'DataOps' if not hasattr(config, "group") else config.group

How about
group = getattr(config, "group", "DataOps")
?
Same for the others.
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/dmwm/WMCore/pull/9086#pullrequestreview-212314826


web worker error in remote

Describe the bug
I get web worker error when i use nested remote modules or set rspack.output.publicPath to auto.
The module structure is host->remote-remote1

If you remove the marked configuration it will work fine
Reproduction
https://github.com/mrcwl/mf-error-test
Used Package Manager
npm
System Info
System:
    OS: macOS 15.0.1
    CPU: (10) arm64 Apple M1 Max
    Memory: 4.79 GB / 64.00 GB
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 16.20.2 - /usr/local/bin/node
    Yarn: 1.22.19 - /usr/local/bin/yarn
    npm: 8.19.4 - /usr/local/bin/npm
    pnpm: 8.15.4 - /usr/local/bin/pnpm
  Browsers:
    Chrome: 129.0.6668.100
    Safari: 18.0.1

Validations

[X] Read the docs.
[X] Read the common issues list.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Make sure this is a Module federation issue and not a framework-specific issue.
[X] The provided reproduction is a minimal reproducible example of the bug.

Does the same issue happen with a webpack build?


Question: Are there any better options then to put CSS libs to /static?

The official documentation to this template states:

For existing libraries e.g. Bootstrap or Semantic UI, you can place them inside /static and reference them directly in index.html.

Putting the dependencies in /static we both loose an ability to upgrade these libs via npm upgrade and bloating the source code repository. Users might miss the updates because the dependencies versions are spreaded among /static folder and package.json. I think there might be better options to get both fast build speed and declarative dependencies versioning via package.json. For example, the template might provide in /config to notify webpack about the dependencies that should be treated like the /static ones. Hense webpack might i.e. copy them from node_modules to /dist as-is instead of processing and bundling. Also users will get an ability to seamlessly include those CSS libs back in the bundle just by removing the entry from config file.

You can simply import them in the main file:
import 'bootstrap/dist/bootstrap.css'

If you want to cutomize, simply create a main style file and import  that one:
// main.scss

// addd your vriable overwrites here..
import '~bootstrap/scss/bootstrap.scss'

// main.js
import './main.scss'

@LinusBorg Thanks. As far as I understand you suggest to import bootstrap into the bundle. In that case Webpack is going to load it via style-loader and process using postcss (i.e. autoprefixer).

For existing libraries e.g. Bootstrap or Semantic UI, you can place them inside /static and reference them directly in index.html. This avoids extra build time and also is better for browser caching. (See Static Asset Handling)

Quote is taken from docs to template. I believe that the man who wrote the lines meant that the user can optimize build process by putting boostrap.min.css into /static so that files will be transferred to /dist as-is. Hense the whole Bootstrap will not be loaded via webpack. But this solution lacks automatic version management. Maybe it would be better option to load the file via webpack (in order to get it from node_modules) but do not process via style-loader and autoprefixer (because bootstrap is already built, minified and prefixed). Instead webpack may just copy the bootstrap.min.css as-is to the /dist folder.

Well, alll solutions have their trade-offs, so it depends what you want:

if you want to be able to update these dependencies by updating a package in  node_modules, you probably also want webpack to add a hash to the file, so updates will cache-bust existing files for your users. In that case, just import them as I showed.
If you want you static assets to be really static (i.e. they will likely change (almost) never), it's probably easier to add them to /static, and not a lot of work either.

Yet you can of course change the config (here) to also include some files from node_modules.


amdvlk: 2024.Q2.3 -> 2024.Q3.1

Description of changes
Update to 2024.Q3.1: https://github.com/GPUOpen-Drivers/AMDVLK/releases/tag/v-2024.Q3.1
Builds, runs vkcube and NixOS test passes (eval $(nix-build -A amdvlk.impureTests)).

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Have some cleanup to make, will do in a seperate PR.


HTTP 200 error code on /dictate API endpoint

Hi,
Firstly, thanks for your efforts!
I seem to have all the requisite containers running:
$ docker ps
CONTAINER ID        IMAGE                             COMMAND                  CREATED             STATUS              PORTS                NAMES
71c1ef071742        botiumspeechprocessing_frontend   "/bin/sh -c 'npm sta…"   37 minutes ago      Up 8 seconds        56000/tcp            botiumspeechprocessing_frontend_1
ac5b093ba5a8        botiumspeechprocessing_tts        "/bin/sh -c ./marytts"   37 minutes ago      Up 2 seconds        59125/tcp            botiumspeechprocessing_tts_1
3e43c78a63fc        botiumspeechprocessing_dictate    "docker-entrypoint.s…"   37 minutes ago      Up 6 seconds        56100/tcp            botiumspeechprocessing_dictate_1
93b06574ac09        botiumspeechprocessing_stt_de     "/usr/bin/supervisord"   37 minutes ago      Up 5 seconds        80/tcp               botiumspeechprocessing_stt_de_1
15199910a926        botiumspeechprocessing_watcher    "/usr/bin/supervisord"   37 minutes ago      Up 6 seconds                             botiumspeechprocessing_watcher_1
26689b50571c        botiumspeechprocessing_stt_en     "/usr/bin/supervisord"   37 minutes ago      Up 9 seconds        80/tcp               botiumspeechprocessing_stt_en_1
7256a8ac9e27        nginx                             "nginx -g 'daemon of…"   37 minutes ago      Up 3 seconds        <IP_ADDRESS>:80->80/tcp   botiumspeechprocessing_nginx_1

However, http://<IP_ADDRESS>/dictate URL autocompletes to http://<IP_ADDRESS>/dictate/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/mob.html while giving HTTP 200.
Please note, /api/stt/en seems to work fine with a wav file.
Thanks!

Please get the latest version, rebuild the dictate-container and restart:
git pull
docker-compose build dictate
docker-compose up -d

@codeforequity-at: I still have the same problem.
Thanks!

What happens if you directly navigate to this url: http://<IP_ADDRESS>/dictate/demos/mob.html
By the way, if you are using Chrome, this definitly won't work, as it requires HTTPS to enable the microfone in the browser

Hi,
I just installed botium-speech-processing and do have the same issue.
Using http://<IP_ADDRESS>/dictate/demos/mob.html also redirects me to
http://<IP_ADDRESS>/dictate/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/demos/mob.html
I am using Firefox. Accessing the tss and stt services via the Swagger UI works perfectly though.
Thanks for making this available to the public @codeforequity-at . This is an awesome project 👍

what happens when you point your browser to the demo environment: https://speech.botiumbox.com/dictate/

It works without any issues if I use your demo environment :)
On my machine it does not work however. I actually tested on two machines with the same result.

I found the problem and fixed it. Please pull the latest changes and restart nginx container (docker-compose restart nginx), that should do.

Thanks :) It does solve part of the problem. I can now access the dictate demo if I use the full url:
<IP_ADDRESS>/dictate/demos/mob.html
Using <IP_ADDRESS>/dictate wrongly redirects me to <IP_ADDRESS>/demos/mob.html however which only gets me:
Cannot GET /demos/mob.html
Unfortunatly though the dictate demo does not seem to work on my local machine. I always get an error after stopping recording. It's either
"Could not determine type of stream."
or
"No valid frames decoded before end of stream"
Both errors are followed by:
ERR: 4: Server error: 5: Unknown error
I can rule out that the errors are caused by a badly setup microphone as the demo you provided (https://speech.botiumbox.com/dictate/) still works.
I can test the demo on a different machine tomorrow to see if that works.
Btw:
When accessing the dictate demo from a different machine in the same network the redirection works correctly now but I get the following error when I'm trying to use it:
ERR: 3: Recorder undefined
ERR: 5: No user media support
msg: 1: Waiting for approval to access your microphone ...

I'm assuming this is caused by missing encryption (using http instead of https)

When using it from a remote server you will need https, at least when using Chrome. With Firefox it works without https.

Hi, sorry for not getting back to you for such a long time.
I just retried this today and the redirection from <IP_ADDRESS>/dictate to <IP_ADDRESS>/dictate/demos/mob.html now works for me. I can also use the dictate demo without any issues on localhost.
I think this issue can be closed.


type safety when instantiating the model

Its possible to maintain the type-safety when i create an instance of the model?
using the .create method
MyModel.create({ anAttrThatDontExistsInModel: 'something'}); // <- its fine for typescript, should throw an error
MyModel.create<MyModel>({ anAttrThatDontExistsInModel: 'something'}); // <- its fine for typescript, should throw an error

the same with .build, .bulkBuild, .bulkCreate
And with this way typescript throws an error:
const model: MyModel = { anAttrThatExistsInModel: 1};

Property '$add' is missing in type '{ anAttrThatExistsInModel: number; }'.

The only way that i found to maintain type-safety is with
const model = new MyModel();
model.anAttrThatExistsInModel = 1; // ok for typescript
model.anAttrThatDontExistsInModel = 'something'; // typescript error, its ok

cool, thanks.
sorry for the delay, i didn't see the email


[ENHANCEMENT] Set default macaddress when vmi is deleted

Is your enhancement related to a problem? Please describe.
After we updated KubeVirt to v1.0.0, the actual generation is different from expected. The root cause is that we set macaddress to VM and don't restart the VM.

Describe the solution you'd like
In backend, we can set the macaddress when VMI is removed, so VMI can have the same macaddress if users start the VM again.
In frontend, we can suggest users to restart the VM if they try to update vm.Spec and don't restart it.
Additional context
https://github.com/harvester/harvester/issues/4758

Close this issue and use another https://github.com/harvester/harvester/issues/4909.


Chapter section to group highlights

Is your feature request related to a problem? Please describe.
It is hard to find the chapter where the quote is from. Having to click the link to open the Kindle app is not ideal.
Describe the solution you'd like
Add an option to auto-add the chapter above the section of highlights that belong to that chapter.
Describe alternatives you've considered
None that I can think of.
Additional context
None

Would like to see this as well. It adds a relevant context to what the highlight is in reference to. The Kindle software does a nice job of this when reviewing highlights on device.

Does kindle make the data available? We would need a mapping from the kindle 'loc' to chapter and page.
When I look at my notebook page only the (nearly useless) 'location' is all that's shown: https://read.amazon.com/kp/notebook
Following the options->open in kindle doesn't work because it tries to open another app. If it opened cloud reader it might have been possible to scrape it from there.


Clarify that threads is optional and dbname alias

Testing a minimal config with dbt debug I found threads to be optional and database to work as an alias for dbname

thanks @hlcianfagna

Apologies @dataders , I rebased the branch and it seems you would need to approve again.

Thanks again @dataders , now there are no conflicts, but it seems I do not have enough permission to merge the PR.


Coap integration release 3.0.x

adding coap integration into device input adapter

Closing this PR as feature is backlogged


use syscall.Stdin for stdin

fixes #2587

If anyone has any good ideas for how to write a regression test for this, we can probably run something on appveyor.


Set PHP Version

Hi,
I suppose that version 7.2. as as shown here is no longer supported?
https://docs.microsoft.com/en-us/azure/app-service/configure-language-php?pivots=platform-linux#set-php-version
Wouldn't it also make sense to add some guidance on how the PHP version can be changed via the portal? For python this documentation is available.
Thanks
Sebastian

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

ID: a3209bb1-99cd-9e32-ae48-2605831aee02
Version Independent ID: 743bc03e-d0d1-1e9e-acb1-52ae01daa0cc
Content: Configure PHP apps - Azure App Service
Content Source: articles/app-service/configure-language-php.md
Service: app-service
GitHub Login: @cephalin
Microsoft Alias: cephalin

@sebhe
Thanks for your feedback! We will investigate and update as appropriate.


Flutter Driver: add support of SelectableText in _getText method in handler_factory.dart

Use case
I'm developing flutter tests using flutter_driver and I need to have possibility to get text from SelectableText.
Currently I get error message:
Exception: DriverError: Error in Flutter application: Uncaught extension error while executing get_text: Unsupported operation: Type SelectableText is currently not supported by getText
#0      CommandHandlerFactory._getText (package:flutter_driver/src/common/handler_factory.dart:416:7)

Proposal
Add support of SelectableText by adding two lines of code:
  Future<GetTextResult> _getText(Command command, CreateFinderFactory finderFactory) async {
    final GetText getTextCommand = command as GetText;
    final Finder target = await waitForElement(finderFactory.createFinder(getTextCommand.finder));

    final Widget widget = target.evaluate().single.widget;
    String? text;

    if (widget.runtimeType == Text) {
      text = (widget as Text).data;
    ...
    } else if (widget.runtimeType == SelectableText) {   //  < --- line to add
      text = (widget as SelectableText).data;                   //  < --- line to add
    }

    if (text == null) {
      throw UnsupportedError('Type ${widget.runtimeType.toString()} is currently not supported by getText');
    }

    return GetTextResult(text);
  }

Note: this solution worked for me.

A similar fix was made for RichText : https://github.com/flutter/flutter/issues/62489
Treating this as a proposal.


Tharmi123

Purpose
Examples
Checklist

[ ] Linked to an issue
[ ] Updated the changelog
[ ] Added tests

Codecov Report

Merging #10 (d4c227e) into master (37b619a) will decrease coverage by 0.43%.
The diff coverage is 88.30%.

@@             Coverage Diff              @@
##             master      #10      +/-   ##
============================================
- Coverage     80.66%   80.22%   -0.44%
  Complexity       67       67
============================================
  Files           317      335      +18
  Lines         16337    17095     +758
  Branches       3735     3824      +89
============================================
+ Hits          13178    13715     +537
- Misses         2455     2645     +190
- Partials        704      735      +31

Impacted Files
Coverage Δ

ballerina/auth_client_basic_auth_handler.bal
100.00% <ø> (ø)

...allerina/auth_client_bearer_token_auth_handler.bal
91.66% <ø> (ø)

ballerina/auth_client_oauth2_handler.bal
86.95% <ø> (ø)

...erina/auth_client_self_signed_jwt_auth_handler.bal
100.00% <ø> (ø)

...th_listener_file_user_store_basic_auth_handler.bal
95.83% <ø> (ø)

ballerina/auth_listener_jwt_auth_handler.bal
96.00% <ø> (ø)

...th_listener_ldap_user_store_basic_auth_handler.bal
95.65% <ø> (ø)

ballerina/auth_listener_oauth2_handler.bal
87.87% <ø> (ø)

ballerina/auth_types.bal
100.00% <ø> (ø)

ballerina/auth_utils.bal
93.47% <ø> (ø)

... and 618 more

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 2cd416c...d4c227e. Read the comment docs.


AttributeError: 'int' object has no attribute 'GetAtoms'

I tried to run the generation step in antibiotics.md with the command line below:
synthemol
--model_path $BASEDIR/data/Models/antibiotic_chemprop
--model_type chemprop
--building_blocks_path $BASEDIR/data/Models/antibiotic_chemprop/building_blocks.csv
--building_blocks_score_column chemprop_ensemble_preds
--building_blocks_id_column Reagent_ID
--reaction_to_building_blocks_path $BASEDIR/data/Data/4_real_space/reaction_to_building_blocks.pkl
--save_dir $BASEDIR/test_antibiotics/generate_molecules_with_SyntheMol/generations_chemprop
--max_reactions 1
--n_rollout 20000
--replicate
but I got this error. Any idea what could the fix be?
File "/miniconda3/envs/synthemol/lib/python3.10/site-packages/chemprop/features/featurization.py", line 345, in init
self.f_atoms = [atom_features(atom) for atom in mol.GetAtoms()]
AttributeError: 'int' object has no attribute 'GetAtoms'

It seems that the above error is due to the reaction_to_building_blocks.pkl file storing the building_blocks as integers not   SMILEs. Will greatly appreciate if the authors can clarify if this is correct!

Hi @jklyu0824,
Thank you for bringing up this issue! I'm traveling right now and I'm not sure exactly what the issue is offhand, but I'll get back to you shortly!
Best,
Kyle

Hi @jklyu0824,
I checked the issue and the problem is a typo in the antibiotics.md file. The --reaction_to_building_blocks_path should use reaction_to_building_blocks_filtered.pkl instead of reaction_to_building_blocks.pkl. I have now corrected this. Please try again with this updated file path and reopen this issue if you're still having problems.
Best,
Kyle

Hello @swansonk14,
I think this problem also occurred at the clogp.md in the generate molecules section. It would be really nice if you could fix it.
Thanks,
Chingyuen


[Bug]: Text not visible in dark mode

Is there an existing issue for this?

[X] I have searched the existing issues

Describe the bug
The watch our story text is not visible in dark mode
Expected behavior
The text should be clearly visible in dark mode
Add ScreenShots

On which device are you experiencing this bug?
Chrome
Record

[X] I have read the Contributing Guidelines
[X] I'm a GSSOC'24 contributor
[ ] I'm a VSOC'24 contributor
[X] I have starred the repository

Hey @apu52 @itsekta
Can you please assign me this issue
Thank you


OpenTimeOut

Hello，
My computer is Mac OS，
The CPU is M1。
I can do it "dryrun -v"，when i do "dryrun https://github.com/cesarferreira/android-helloworld"。
The system gives a prompt。
dryrun https://github.com/cesarferreira/android-helloworld
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/net/http.rb:947:in initialize': execution expired (Net::OpenTimeout) 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/net/http.rb:947:in open'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/net/http.rb:947:in block in connect' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/timeout.rb:103:in timeout'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/net/http.rb:945:in connect' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/net/http.rb:930:in do_start'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/net/http.rb:919:in start' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/open-uri.rb:337:in open_http'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/open-uri.rb:756:in buffer_open' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/open-uri.rb:226:in block in open_loop'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/open-uri.rb:224:in catch' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/open-uri.rb:224:in open_loop'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/open-uri.rb:165:in open_uri' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/open-uri.rb:736:in open'
from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/open-uri.rb:35:in open' 	from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/open-uri.rb:46:in open'
from /Library/Ruby/Gems/2.6.0/gems/dryrun-1.3.2/lib/dryrun/dryrun_utils.rb:30:in latest_version' 	from /Library/Ruby/Gems/2.6.0/gems/dryrun-1.3.2/lib/dryrun/dryrun_utils.rb:39:in up_to_date'
from /Library/Ruby/Gems/2.6.0/gems/dryrun-1.3.2/lib/dryrun.rb:89:in outdated_verification' 	from /Library/Ruby/Gems/2.6.0/gems/dryrun-1.3.2/lib/dryrun.rb:18:in initialize'
from /Library/Ruby/Gems/2.6.0/gems/dryrun-1.3.2/bin/dryrun:6:in new' 	from /Library/Ruby/Gems/2.6.0/gems/dryrun-1.3.2/bin/dryrun:6:in <top (required)>'
from /usr/local/bin/dryrun:23:in load' 	from /usr/local/bin/dryrun:23:in '

I don't have the M1 yet, I'll take a look once I have it, meanwhile if you or anyone else with an M1 that can give a help it'd be appreciated!


security/acme-client: Automation fails to authenticate on Synology NAS

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[ X] I have read the contributing guide lines at https://github.com/opnsense/plugins/blob/master/CONTRIBUTING.md
[ X] I have searched the existing issues, open and closed, and I'm convinced that mine is new.
[ X] The title contains the plugin to which this issue belongs

Describe the bug
A clear and concise description of what the bug is, including last known working version (if any).
When using the automation rule "Upload certificate to Synology DSM", it fails to authenticate on the Synology NAS.
The user login used is an admin account, IP and port as correctly set from DSM settings.
Synology 720+ with DSM 7.2.2-72806
So far tried:

https and https
the actual base admin account instead of a new one
turning off any security I had on the NAS

Tip: to validate your setup was working with the previous version, use opnsense-revert (https://docs.opnsense.org/manual/opnsense_tools.html#opnsense-revert)
To Reproduce
Steps to reproduce the behavior:
Set up an ACME certificate renewal (which does work)
Create an user on the Synolgy NAS and add him to the Administrator group
Create an "Upload certificate to Synology DSM" automation rule in the ACME-client plugin UI.
Try running the automation, it fails.
Expected behavior
A clear and concise description of what you expected to happen.
An certificate being created and/or renewed on the Synology NAS
Screenshots
If applicable, add screenshots to help explain your problem.

Relevant log files
If applicable, information from log files supporting your claim.
new 1.txt
Additional context
Add any other context about the problem here.
Environment
Router
OPNsense 24.7.6-amd64
ACME plugin 4.6
NAS
Synology NAS 7.2.2-72806

Ok.. even when I change the IP address in the automation, it still tries to authenticate against the old IP even though that automation doesnt exist anymore.
I think something is going wrong there... any locations I can check out where it saves automations or something?

Ok.. found the issue. The ACME-client plugin seems to save automation settings together with the certificate settings somewhere (dont ask me where.. if I knew I would have wiped that stuff out into space already)
So the only way was to make a new certificate in the ACME client and then it did pick up the changes in automation.
So... why or where?
Because I do NOT want to have to recreate certificates just to adjust automation rules simply because the plugin doesnt seem to be able to clean those settings up correctly.

Same issue here - especially problematic since I want to deploy the same cert to two different NAS Systems. For the second NAS allways the saved values are used.
Is it maybe possible to deactivate the saving of the Environment variables?

Same exact error/issue here.  Even if you remove the automation and create a brand new one, it seems to still ignore the port.  So when I looked at the .conf file for my installation, it showed that I did create a new automation to use HTTPS (from default HTTP) but despite putting in port 5001, it wouldn’t change what’s in the conf file as 5000.  Manually editing the .conf for that cert fixed things.
I’m going to try creating a new cert to see if its because I originally created the certs when the automation was using HTTP and port 5000, but then changed it later but it was already stuck using 5000 and ignored any future changes to different ports.  24.7.7 with 4.6 Acme client.

Same issue here too !! I want to deploy the same certificate to two Synology systems. I've tried all; remove and delete all directories and the reinstall the plugin. Recreate a new account, challenge, automation and certificate !
Tried to modify the config file in " /var/etc/acme-client/cert-home/" but no chance.

I found a possible root cause of error but would need some help setting up a viable dev environment to test it out.
In the File https://github.com/opnsense/plugins/blob/master/security/acme-client/src/opnsense/mvc/app/library/OPNsense/AcmeClient/LeAutomation/Base.php#L141 is a function to clean up the conf files based on the deploy hook name.
// acme.sh records the last used deploy hook and would automatically
// use it on the next run. This information must be removed from the
// configuration file. Otherwise it would be impossible to disable
// or remove a deploy hook from the GUI.
foreach (glob(self::ACME_HOME_DIR . '/*/*.conf') as $filename) {
    // Skip openssl config files.
    if (preg_match('/.*.csr.conf/i', $filename)) {
        continue;
    }

    // Read contents from file.
    $contents = file_get_contents($filename);

    // Check if deploy hook string can be found.
    if (strpos($contents, self::ACME_DEPLOY_HOOK_STRING) !== false) {
        // Replace the whole line with an empty string.
        $contents = preg_replace('(' . self::ACME_DEPLOY_HOOK_STRING . '.*)', '', $contents);

        // Write changes to the file.
        if (!file_put_contents($filename, $contents)) {
            LeUtils::log_error('clearing recorded deploy hook from acme.sh failed (' . $filename . ')');
        } else {
            LeUtils::log_debug('cleared recorded deploy deploy hook from acme.sh (' . $filename . ')', $this->debug);
        }
    }
}

The Synology Deploy Hook name is synology_dsm but the variables are SYNO_xxxxx so their not getting cleaned up properly. In the Logs this would possibly explain the line
Domain config new key exists, old key SYNO_Certificate='OPNsense ACME' has been removed.

Maybe a upstream changes broke support for DSM:
https://github.com/acmesh-official/acme.sh/wiki/deployhooks#20-deploy-the-certificate-to-synology-dsm
https://github.com/acmesh-official/acme.sh/commits/master/deploy/synology_dsm.sh
If someone can spot the changes that need to be made, please let me know.

The /var/etc/acme-client/cert-home/ gets regenerated only when you issue the cert - not if you just tell the webui to run the automations.

@GitTimeraider How is this related to this bug report?

In the log of the Original issue you will find the lines:
20:14:34 CEST 2024] Domain config new key exists, old key SYNO_Port='DSM PORT' has been removed.
So his Automation also runs with old, probably wrong, credentials.

In the log of the Original issue you will find the lines:
20:14:34 CEST 2024] Domain config new key exists, old key SYNO_Port='DSM PORT' has been removed.
So his Automation also runs with old, probably wrong, credentials.

This is correct.
Like said in the original, my specific issue was that when youve set up the automation and added it to an certificate issue under the Certificates tab of the ACME client plugin .. it keeps the old credentials even if you change the credentials in the automation afterwards.
This persists even with an reissue of the certificate for me. All that can make the automation use the "new" set credentials was to fully delete the certificate from the Certificates tab in the ACME client plugin and then create that one again.

it keeps the old credentials even if you change the credentials in the automation afterwards

@GitTimeraider So you've changed the (Synology) credentials and now it does not work anymore?

it keeps the old credentials even if you change the credentials in the automation afterwards

@GitTimeraider So you've changed the (Synology) credentials and now it does not work anymore?

If you change the Synology credentials (or IP address or Port) in the automation ... the certificate in acme client will keep using the old setting for the Synology automation whenever it tries to run it in any way, thus not working if those are now incorrect

After the automation fails, go to your System->Log Files->General and you'll find the failing command logged there. It will look something like:
AcmeClient: AcmeClient: The shell command returned exit code '1': '/usr/local/sbin/acme.sh --deploy --syslog 6 --log-level 1 --server 'letsencrypt'...
To see in detail what's going wrong, start a ssh session. Grab all the text between the quotes starting at /usr/local/sbin... If you execute it in ssh then it still fails but without much more in the way of clues. Now change the --log-level 1 argument to --debug --output-insecure. Now the command looks something like this...
/usr/local/sbin/acme.sh --deploy --syslog 6 --debug --output-insecure --server 'letsencrypt'...
Run it again and you'll see debug output including the literal password that's being passed to your Synology NAS. You'll see here that if you've changed the password in your OPNsense config, that it is still using the old password instead.
Now if you go to /var/etc/acme-client/cert-home you'll find one directory for each certificate and in that directory you'll find a .conf file that has the bad credentials stored with a SAVED_SYNO_PASSWORD= line etc.
Look at the date/time stamp on that file and you'll find that it matches roughly when you last issued the certificate. If you delete the whole directory under cert-home, it will NOT get regenerated when you run the automations again, it will just fail more catastrophically because of the missing config files.
However, if you go to the webui for the acme plugin and tell it reissue the certificate, now it WILL regnerate the config in acme-client and successfully update your nas. If it does not, you have another problem. Repeat the steps for running it in debug mode at the ssh prompt and you'll see what's going wrong and you can confirm it using the correct password now.

Thank you @fraenki ! The patch works correctly. I can now push to multiple DSMs.

Thanks for testing and providing feedback, much appreciated.


Yaml-tags Regex

I've updated your code so that it will also find tags in YAML frontmatter.
I've tried it with my vault and it worked as I expected.
Please try it out yourself before merging, so as to make sure that I didn't introduce any bugs or unwanted behaviour.

Hello, thanks for contributing! It's an important feature the one you contributed !
I did some tests and I found a bug:

When I want to export a tag, for example test, if i start to write the tag, it will export the full tag anyways:

Maybe the regex is too permissive

Ah yes, I see what the problem is.
I just checked whether the tag is in the result but not whether it equals it. I assumed that people would enter full tags, but I can see how that would mess with nested tags. I already have an idea on how to fix it, I'll just have to do some string manipulation depending on the match.
I'll try to give it a go today.

I think the best way would be to parse the yaml front matter, because using string manipulation would make the code messy and if we have yaml, we should also try to use it.
Let's see if I can get that implemented.

I've completely reworked the _tagInCurrentFile method and changed the Regex of self._regexFindTags.
Feel free to implement them in your current implementation, because I think you know best where you moved what.
I didn't change anything else.

I just committed some large restructuration in src, can you update your code with :
git pull https://github.com/danymat/Obsidian-Extractor.git your_branch
What you'll have to change is the file named MarkdownFile in src/. Caution: the function you worked on doesn't exist anymore, it is replaced by the function called _findTags which return all tags in Markdown File.
If you do have any questions, feel free to ask !
(btw, i integrated some tests, this is the process:)
(run in a virtual environment if you don't wan't purest to be installed globally. If you already have pytest, skip 1)

pip install -r requirements.txt
pytest test/

Thanks for merging it, otherwise I would have tried it after having lunch with the instructions you gave. :)

No problem, I released a new version with your changes and the basic parser.
You can use it to your projects, feel free to contribute
Thanks for all the work!


fix: pack aud claim

What kind of change does this PR introduce?
This PR modifies the JSON parsing functionality of JWTDecoder convert the value of JWTClaims.Public.AUDIENCE (if present and if it is of TYPE_ARRAY) to TYPE_PACKED_STRING_ARRAY.
What is the current behavior?
Fixes #21

Line 23 appears to have an extra space, which causes Godot to fail to parse this.


eigen: support sparse matrix types

This is a first attempt at supporting sparse matrix types from Eigen. The code is mostly ported over from pybind11. It compiles but the test segfaults. This could have to with the fact that I have not really a good idea of what I'm doing. Help is very much appreciated.

Thank you very much for the thorough review. I've pushed a fixup commit which I will later rebase, but for the sake of review I will leave it split for now to better follow the progress.

It would still be good to figure out a way to make nanobind/eigen/dense.h not depend on Eigen/SparseCore (see my earlier comment). Following this, would you be able to squash the commits and rebase on master?

By the way, you may also need to change .github/workflows/ci.yml to install the relevant SciPy packages so that your changes are actually tested.

Rebased and squashed. Checks are enabled, but as already noted something throws in from_cpp, apparently during make_tuple in the return statement.
Backtrace

Please also add a changelog entry ;)

I have to double check the minimum Eigen version. The current 3.3.0 seems too low (it's also from way back in 2016, i.e. before C++17). In principle I would also like to improve the test coverage a bit. Right now it's limited to the pybind11 tests.

Agreed, the tests seem a bit, ahem -- sparse. ;)

Another aspect I realized today is that one feature in the dense caster is not shared by this sparse version. In the from_cpp part, when the return value policy is move, nanobind can perform a zero-copy transfer by move-constructing the Eigen object into a new heap-allocated instance, and then tying the lifetime of the newly created NumPy wrapper using a capsule owner object.
See the special case here: https://github.com/wjakob/nanobind/blob/master/include/nanobind/eigen/dense.h#L132

Any further changes planned?

I would like to test returning Eigen::Ref<Eigen::SparseMatrix> and  Eigen::Map<Eigen::SparseMatrix> from C++. This could also go in a later PR if you prefer to get the feature in now. I'll quickly rebase.

I think that it would be great to have Eigen::Ref<Eigen::SparseMatrix> and Eigen::Map<Eigen::SparseMatrix>. You don't need to write documentation, I already started myself on writing some for Eigen/Dense and that can easily be adapted/extended.
Note that there was a change on master that impacts this PR: the nb::tensor<..> type was renamed to nb::ndarray<..>

I've tried to get Map and Ref support up and running but failed so far. For now I have added stubs for these implementation so that if anybody attempts to use this, the compiler errors are a little bit less useless.

Okay, fair enough. FYI, I added preliminary documentation for the dense part in the meantime: https://nanobind.readthedocs.io/en/latest/eigen.html — can you address the remaining conflicts so that the PR can be merged? (should just be a matter of moving the sparse-specific text into a subsection).

Done. I think it'd be good to run the testsuite again before merging just to be sure.


Fix #2083 #2086, Consistent doxygen flow/naming for generation and use reusable documentation generation workflow

Describe the contribution

Fix #2083
Fix #2086

Testing performed
Tested via https://github.com/skliper/cFS/actions/runs/2161038232
Expected behavior changes
More consistent naming supports doc generation reusable workflow use
System(s) tested on
CI w/ modified reference passed at https://github.com/skliper/cFE/actions/runs/2161429776
Additional context
Depends on nasa/cFS#451 addition of reusable workflow
Third party code
None
Contributor Info - All information REQUIRED for consideration of pull request
Jacob Hageman - NASA/GSFC

CCB:2022-04-13 APPROVED

befe292 - Update from CCB conversations, now uses reusable workflow logic to deploy cfe-usersguide which simplifies local workflow.


'I/O' and 'read' errors; BME280 sensor is not waterproof

Be aware that the BME280 sensor is not waterproof. If the unit gets wet or damp it will stop working and you may see random 'I/O' and 'read' errors when running the app.
My suggestion is to enclose the unit in a waterproof but breathable housing if you intend to measure outside temperature and humidity.

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

ID: a57d05c9-562c-02a5-7ccd-b1b1bb7c8f0c
Version Independent ID: 17ee094f-aee3-ca0c-959b-6380e4ea8b89
Content: Raspberry Pi to cloud (Node.js) - Connect Raspberry Pi to Azure IoT Hub
Content Source: articles/iot-hub/iot-hub-raspberry-pi-kit-node-get-started.md
Service: iot-hub
GitHub Login: @rangv
Microsoft Alias: rangv

You will also see 'I/O' and 'read' errors if:

The connection wiring between the Pi and the BME280 sensor is too long: I used 1M (3 feet) cable and this caused issues. A shorter cable worked OK.

The electrical connections between the Pi and the sensor are loose or of poor quality. Ensure that the connections are tight and cannot be bent or flexed.

Hope this helps.

Thanks for the feedback! We are currently investigating and will update you shortly.

Thanks for the feedback @ddentrec :). Good info to share! I have assigned the issue to the content author to evaluate and update as appropriate.

@ddentrec Great points. I'm updating this topic to use the latest versions of Raspbian, Node, etc.  I'll add this as well.

We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.

We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.