Getting each line of output log (Async Report) [Q]

Hello @lelegard
I hope you are doing well
According to your advice, we could developed our java JNA module that will detect some kind of events (we have used your History plugin).
Now we need to filter output log that will generate with History plugin.
Actually we have prepared a module that could handle some command like below script
tsp -v -m --synchronous-log -I ip -r <IP_ADDRESS>:1234 -P history -c --suspend-packet-threshold 60 --ignore-stream-id-change -O drop
as you could see, we used drop (output) that will write automatically to console. but we need to get each line of output log.
for example, we have gotten below log from our module and we need to catch each line such as a String param or any object that could be manageable

but we can not find any related function that could use for that
we will appreciated if you could help us
Taha

In a C++ application, the typical way would be to supply an instance of your own subclass of ts::Report, overriding the method writeLog() to get the logged lines. Take care to make it thread-safe since this object is potentially called at the same from multiple threads (each plugin executes in its own thread).
In Java, there is no direct way. The ts::Processor instance needs an instance of ts::Report but there is no way to create a Java class which inherits from a C++ class. I had a similar question from Python developers and I made the same answer.
As a workaround, you can use a named pipe. Use the file name of the named pipe with option --output-file in plugin history. You can read the other end of the named pipe from the Java code and get the output lines of the plugin.

In a C++ application, the typical way would be to supply an instance of your own subclass of ts::Report, overriding the method writeLog() to get the logged lines. Take care to make it thread-safe since this object is potentially called at the same from multiple threads (each plugin executes in its own thread).
In Java, there is no direct way. The ts::Processor instance needs an instance of ts::Report but there is no way to create a Java class which inherits from a C++ class. I had a similar question from Python developers and I made the same answer.
As a workaround, you can use a named pipe. Use the file name of the named pipe with option --output-file in plugin history. You can read the other end of the named pipe from the Java code and get the output lines of the plugin.

Dear @lelegard
Thank you for your quick respond.
We will appreciated if you could describe the java solution
Actually we have wrote bellow script but we can not drop logs in output file and result.log was empy
tsp -v -m --synchronous-log -I ip -r <IP_ADDRESS>:1234 -P history -c --suspend-packet-threshold 60 --ignore-stream-id-change -O drop > F:\tsduck\result.log
Thank you in advance

Dear @lelegard
Thank you for your quick respond.
We will appreciated if you could describe the java solution
Actually we have wrote bellow script but we can not drop logs in output file and result.log was empy
tsp -v -m --synchronous-log -I ip -r <IP_ADDRESS>:1234 -P history -c --suspend-packet-threshold 60 --ignore-stream-id-change -O drop > F:\tsduck\result.log
Thank you in advance

This is a shell issue, not a TSDuck issue. As with all shell command lines, the logs are written to standard error to avoid messing with standard output. This is required when tsp is used as a pipe with the standard output carrying a transport stream. In your command, you redirect standard output, not standard error. In a shell, you would write tsp ... 2>log. You are apparently using the old DOS CMD. I do not know the syntax for this one, I never use it. On WIndows, I use bash or PowerShell, never the obsolete DOS CMD.

This is a shell issue, not a TSDuck issue. As with all shell command lines, the logs are written to standard error to avoid messing with standard output. This is required when tsp is used as a pipe with the standard output carrying a transport stream. In your command, you redirect standard output, not standard error. In a shell, you would write tsp ... 2>log. You are apparently using the old DOS CMD. I do not know the syntax for this one, I never use it. On WIndows, I use bash or PowerShell, never the obsolete DOS CMD.

We will appreciated if you could describe the java solution

What do you mean by this? The java binding are quite simple, they only give access to the high level TSProcessor class. They are described here and here with some examples here.

We will appreciated if you could describe the java solution

What do you mean by this? The java binding are quite simple, they only give access to the high level TSProcessor class. They are described here and here with some examples here.

This is a shell issue, not a TSDuck issue. As with all shell command lines, the logs are written to standard error to avoid messing with standard output. This is required when tsp is used as a pipe with the standard output carrying a transport stream. In your command, you redirect standard output, not standard error. In a shell, you would write tsp ... 2>log. You are apparently using the old DOS CMD. I do not know the syntax for this one, I never use it. On WIndows, I use bash or PowerShell, never the obsolete DOS CMD.

May i ask you to prepare a script with pipe structure (related to our script requirement) ? our output log could be same as below :
* 2021/01/11 09:31:31 - history: 2745923: PID 302 (0x012E), PES stream_id is 0xE0 (Video 0)
* 2021/01/11 09:31:31 - history: 2745922: PID 301 (0x012D) suspended, clear, service 0x0001
* 2021/01/11 09:31:31 - history: 2746230: PID 301 (0x012D) restarted, clear, service 0x0001
* 2021/01/11 09:31:31 - history: 2746230: PID 301 (0x012D) suspended, clear, service 0x0001
* 2021/01/11 09:31:31 - history: 2746414: PID 301 (0x012D) restarted, clear, service 0x0001

I think that we are doing somethings wrong
Thanks

This is a shell issue, not a TSDuck issue. As with all shell command lines, the logs are written to standard error to avoid messing with standard output. This is required when tsp is used as a pipe with the standard output carrying a transport stream. In your command, you redirect standard output, not standard error. In a shell, you would write tsp ... 2>log. You are apparently using the old DOS CMD. I do not know the syntax for this one, I never use it. On WIndows, I use bash or PowerShell, never the obsolete DOS CMD.

May i ask you to prepare a script with pipe structure (related to our script requirement) ? our output log could be same as below :
* 2021/01/11 09:31:31 - history: 2745923: PID 302 (0x012E), PES stream_id is 0xE0 (Video 0)
* 2021/01/11 09:31:31 - history: 2745922: PID 301 (0x012D) suspended, clear, service 0x0001
* 2021/01/11 09:31:31 - history: 2746230: PID 301 (0x012D) restarted, clear, service 0x0001
* 2021/01/11 09:31:31 - history: 2746230: PID 301 (0x012D) suspended, clear, service 0x0001
* 2021/01/11 09:31:31 - history: 2746414: PID 301 (0x012D) restarted, clear, service 0x0001

I think that we are doing somethings wrong
Thanks

We will appreciated if you could describe the java solution

What do you mean by this? The java binding are quite simple, they only give access to the high level TSProcessor class. They are described here and here with some examples here.

I mean that we need to write this kind of log in file (according to your solution) then filter the output file (string based) same as your pipe solution
For example we need to detect PIDs that will suspended or restarted, so we should write some string parser (filter included)
Thank you in advance.

We will appreciated if you could describe the java solution

What do you mean by this? The java binding are quite simple, they only give access to the high level TSProcessor class. They are described here and here with some examples here.

I mean that we need to write this kind of log in file (according to your solution) then filter the output file (string based) same as your pipe solution
For example we need to detect PIDs that will suspended or restarted, so we should write some string parser (filter included)
Thank you in advance.

You have to read the TSDuck user's guide. The history plugin has a -o option to specify an output file name. You have to create a named pipe, a pipe with a file name, and specify the file name of that pipe with that -o option. On Unix systems (Linux, macOS), named pipes are created using mkfifo system call or shell command (same name). On Windows, I have no idea. But this is a system question, not a TSDuck question.

You have to read the TSDuck user's guide. The history plugin has a -o option to specify an output file name. You have to create a named pipe, a pipe with a file name, and specify the file name of that pipe with that -o option. On Unix systems (Linux, macOS), named pipes are created using mkfifo system call or shell command (same name). On Windows, I have no idea. But this is a system question, not a TSDuck question.

Hello again @lelegard
I am sorry for continuously disturb.
I have developed named pipe according to your advice and pass to -O plugin same as below screenshot. So as you could see, it catch drop error
Our named pipe is \\.\pipe\LOCAL\test.txt and would be validated but we have got the error.

Our final command is :
tsp -v -m --synchronous-log -I file F:\java projects\mpeg-ts-analyzer\src\test\resources\test.ts -P history -c --ignore-stream-id-change --suspend-packet-threshold 60 -O drop \\.\pipe\LOCAL\test.txt
We have got below error :
* 2021/01/13 09:18:30 - Error: drop: no parameter allowed, use options only
we will appreciated if you could help us
Thank you in advance

Hello again @lelegard
I am sorry for continuously disturb.
I have developed named pipe according to your advice and pass to -O plugin same as below screenshot. So as you could see, it catch drop error
Our named pipe is \\.\pipe\LOCAL\test.txt and would be validated but we have got the error.

Our final command is :
tsp -v -m --synchronous-log -I file F:\java projects\mpeg-ts-analyzer\src\test\resources\test.ts -P history -c --ignore-stream-id-change --suspend-packet-threshold 60 -O drop \\.\pipe\LOCAL\test.txt
We have got below error :
* 2021/01/13 09:18:30 - Error: drop: no parameter allowed, use options only
we will appreciated if you could help us
Thank you in advance

You have placed the pipe name as a parameter of the drop plugin while this plugin takes no parameter at all (cf. the error message). The pipe should be used with option -o in the history plugin: tsp ... -P history -o \\.\pipe\... ... -O drop.
In addition to that, I may have good news for you. I tried to figure out if it could be possible to enhance the Java bindings in a way that is currently not possible with the Python bindings and have a Java Report class which could handle the logged messages in some user Java class. This is in fact possible, thanks to the power of the JNI spec.
So, in the TSDuck Java bindings, there is now an AbstractAsyncReport Java class which can be derived in the application to handle the TSDuck log messages. See an example here. You need to install the latest TSDuck version, available from the nuightly builds.
This way you may avoid the burden of named pipes (easy on Unix but a kind of pain on Windows).

You have placed the pipe name as a parameter of the drop plugin while this plugin takes no parameter at all (cf. the error message). The pipe should be used with option -o in the history plugin: tsp ... -P history -o \\.\pipe\... ... -O drop.
In addition to that, I may have good news for you. I tried to figure out if it could be possible to enhance the Java bindings in a way that is currently not possible with the Python bindings and have a Java Report class which could handle the logged messages in some user Java class. This is in fact possible, thanks to the power of the JNI spec.
So, in the TSDuck Java bindings, there is now an AbstractAsyncReport Java class which can be derived in the application to handle the TSDuck log messages. See an example here. You need to install the latest TSDuck version, available from the nuightly builds.
This way you may avoid the burden of named pipes (easy on Unix but a kind of pain on Windows).

wow ... Thank you so much Mr @lelegard
Such a great job. Thank you in advance
Its a great pre-release that could be handle our requirement.
According to your way, we have installed the nuightly build ( version 3.25-2168) and then make an override class for  AbstractAsyncReport, but we have got below error

Actually we have added tsduck.jar as a library. On the other hand when we have built your example, had gotten same error
I think that is is related to class file version.
Taha

wow ... Thank you so much Mr @lelegard
Such a great job. Thank you in advance
Its a great pre-release that could be handle our requirement.
According to your way, we have installed the nuightly build ( version 3.25-2168) and then make an override class for  AbstractAsyncReport, but we have got below error

Actually we have added tsduck.jar as a library. On the other hand when we have built your example, had gotten same error
I think that is is related to class file version.
Taha

The binaries were compiled with the latest LTS JDK from AdoptOpenJDK:
PS C:\WINDOWS\system32> java --version
openjdk <IP_ADDRESS> 2020-11-04
OpenJDK Runtime Environment AdoptOpenJDK (build <IP_ADDRESS>+1)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build <IP_ADDRESS>+1, mixed mode)

I wonder how I could enforce a class format which compatible with Java 8.
In the meantime, you may rebuild the Java bindings from sources. There are only 9 .java files in the TSDuck Java bindings.

The binaries were compiled with the latest LTS JDK from AdoptOpenJDK:
PS C:\WINDOWS\system32> java --version
openjdk <IP_ADDRESS> 2020-11-04
OpenJDK Runtime Environment AdoptOpenJDK (build <IP_ADDRESS>+1)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build <IP_ADDRESS>+1, mixed mode)

I wonder how I could enforce a class format which compatible with Java 8.
In the meantime, you may rebuild the Java bindings from sources. There are only 9 .java files in the TSDuck Java bindings.

Thank you so much.
I have built it for java 8
Great job

Thank you so much.
I have built it for java 8
Great job

I modified the compilation options for the Java bindings. It should be compatible with Java 8 now (but not older than 8). This will be available by tomorrow, after the automatic creation of the nightly builds. Please wait for version 3.25-2171 or higher, download, test the Java bindings with Java 8 and please report here if this is ok.

I modified the compilation options for the Java bindings. It should be compatible with Java 8 now (but not older than 8). This will be available by tomorrow, after the automatic creation of the nightly builds. Please wait for version 3.25-2171 or higher, download, test the Java bindings with Java 8 and please report here if this is ok.

Hello @lelegard
Thank you so much for your support. we could use it for java 8. such a great modification.
Just a point. Actually now we should install your release build and catch native library fromOS PATH(according to your below code)
    public static synchronized void loadLibrary() {
        if (!loaded) {
            String path = null;
            // Try in same directory as plugins (typically in a development environment).
            path = searchLibraryInPath(System.getenv("TSPLUGINS_PATH"), libName);
            // Try various typical Unix directories
            if (path == null && !isWindows) {
                path = searchLibraryInPath("/usr/local/lib:/usr/lib:/usr/lib64", libName);
            }
            // Load the native library by explicit file name or using system search rules.
            if (path != null) {
                System.load(path.toString());
            }
            else {
                System.loadLibrary(libName);
            }
            initialize();
            loaded = true;
        }

But most of teams need to use your TSDUCK as a dynamic library that could attach to project (for example, gettting just tsduck.dll as library) same as below :

As you could see, we have added your dll to our resources path in project, and need to do all functionality (included AbstractAsyncReport -> logMessageHandler) ... but we have got below errors

We have modified your native loader that could load from dll but would be generated below error :

Briefly, i think it could be useful if we have dynamic loader for each dll (because you have implemented each part on different dll) that does not need to install your build
We will appreciated if you could help us.
Thank you in advance
Taha

Hello @lelegard
Thank you so much for your support. we could use it for java 8. such a great modification.
Just a point. Actually now we should install your release build and catch native library fromOS PATH(according to your below code)
    public static synchronized void loadLibrary() {
        if (!loaded) {
            String path = null;
            // Try in same directory as plugins (typically in a development environment).
            path = searchLibraryInPath(System.getenv("TSPLUGINS_PATH"), libName);
            // Try various typical Unix directories
            if (path == null && !isWindows) {
                path = searchLibraryInPath("/usr/local/lib:/usr/lib:/usr/lib64", libName);
            }
            // Load the native library by explicit file name or using system search rules.
            if (path != null) {
                System.load(path.toString());
            }
            else {
                System.loadLibrary(libName);
            }
            initialize();
            loaded = true;
        }

But most of teams need to use your TSDUCK as a dynamic library that could attach to project (for example, gettting just tsduck.dll as library) same as below :

As you could see, we have added your dll to our resources path in project, and need to do all functionality (included AbstractAsyncReport -> logMessageHandler) ... but we have got below errors

We have modified your native loader that could load from dll but would be generated below error :

Briefly, i think it could be useful if we have dynamic loader for each dll (because you have implemented each part on different dll) that does not need to install your build
We will appreciated if you could help us.
Thank you in advance
Taha

Briefly, i think it could be useful if we have dynamic loader for each dll (because you have implemented each part on different dll) that does not need to install your build

Your implementation is uselessly complicated. You should not load any TSDuck DLL from your application, let TSDuck do the job. Plugins are loaded by the TSProcessor when needed. All TSDuck common features are in tsduck.dll / libtsduck.so.
If you have a standard installation, then there is nothing to do.
If you install TSDuck DLL / shared libraries in some non-standard locations, simply put them all in the same directory and make environment variable TSPLUGINS_PATH point to this directory (can be more than one directory, just like in $PATH). See the user's guide, chapter 3, tsp section, "Plugin activation options" sub-section. See also section 6.1.

Briefly, i think it could be useful if we have dynamic loader for each dll (because you have implemented each part on different dll) that does not need to install your build

Your implementation is uselessly complicated. You should not load any TSDuck DLL from your application, let TSDuck do the job. Plugins are loaded by the TSProcessor when needed. All TSDuck common features are in tsduck.dll / libtsduck.so.
If you have a standard installation, then there is nothing to do.
If you install TSDuck DLL / shared libraries in some non-standard locations, simply put them all in the same directory and make environment variable TSPLUGINS_PATH point to this directory (can be more than one directory, just like in $PATH). See the user's guide, chapter 3, tsp section, "Plugin activation options" sub-section. See also section 6.1.

@lelegard
how to Get pcr sysnchronous log each line of output using tsp
which command was used how to display only the audio and video sync in output log
please reply me
thank you in advance

@udhayNuk, please do not hijack older and non-related issues. If you have a new question, please open a new issue and describe your question precisely and thoroughly (your question is unclear).


Invalid systemd setup

I'm getting issues with the docker service after reboot, (specifically a cannot take ownership of /vart/lib/docker error in journalctl).  After doing some digging, it appears to be some systemd configurations don't quite point to each other correctly.
The primary issue seems to be that there is nothing telling the docker service to wait for css, or no value in a css unit file with the correct values to take ownership of container runtime directory in order to let docker start correctly.
I'm running container-storage-setup using the following template:
# /etc/sysconfig/docker-storage-setup
STORAGE_DRIVER=devicemapper
DEVS="/dev/sdb"
CONTAINER_THINPOOL=thinpool
VG=docker
ROOT_SIZE=10G
DATA_SIZE=40%FREE
MIN_DATA_SIZE=2G
POOL_META_SIZE=16M
CHUNK_SIZE=512K
AUTO_EXTEND_POOL=yes
POOL_AUTOEXTEND_THRESHOLD=60
POOL_AUTOEXTEND_PERCENT=20
WIPE_SIGNATURES=true
DEVICE_WAIT_TIMEOUT=60
CONTAINER_ROOT_LV_NAME=data
CONTAINER_ROOT_LV_MOUNT_PATH=/var/lib/docker
CONTAINER_ROOT_LV_SIZE=40%FREE

Which creates the following EnvironmentFile (loaded by docker.service):
# /etc/sysconfig/docker-storage
DOCKER_STORAGE_OPTIONS="--storage-driver devicemapper --storage-opt dm.fs=xfs --storage-opt dm.thinpooldev=/dev/mapper/docker-thinpool --storage-opt dm.use_deferred_removal=true --storage-opt dm.use_deferred_deletion=true "

My systemd files look like this (truncated):
drwx------.  2 root root   35 Oct 27 13:37 docker.service.d
drwxr-xr-x.  2 root root   33 Oct 27 14:15 docker-storage-setup.service.wants (symlink to var-lib-docker.mount)
-rw-------.  1 root root  347 Oct 30 10:09 var-lib-docker.mount

$ sudo ls -al /etc/systemd/system/docker-storage-setup.service.wants
total 4
drwxr-xr-x.  2 root root   33 Oct 27 14:15 .
drwxr-xr-x. 13 root root 4096 Oct 30 10:16 ..
lrwxrwxrwx.  1 root root   40 Oct 27 14:15 var-lib-docker.mount -> /etc/systemd/system/var-lib-docker.mount

Contents of var-lib-docker.mount:
[Unit]
Description=Mount data on /var/lib/docker directory.
Before=docker-storage-setup.service

[Mount]
What=/dev/docker/data
Where=/var/lib/docker
Type=xfs
Options=defaults

[Install]
WantedBy=docker-storage-setup.service

So in this setup:

There is no docker-storage-setup.service as referenced in the var-lib-docker-mount
There's nothing referencing the docker.service, thus allowing the docker.service to start before container-storage-setup has properly mounted the container root lv.

I was able to resolve this issue by changing two values in the var-lib-docker.mount. New content as follows:
   [Unit]
   Description=Mount data on /var/lib/docker directory.
- Before=docker-storage-setup.service
+ Before=docker.service

    [Install]
 - WantedBy=docker.storage-setup.service
 + WantedBy=docker.service

I'm guessing this isn't totally correct, but it does allow docker to start back up.

@rhvgoyal PTAL

It looks like the unit file for the mount is created, but the .service definition file isn't. I've got no concerns with this needing to be added manually, but it would need to be clarified in the docs.
If it's not supposed to be created (needs to be provided by user), i think it's going to cause some confusion. It would be inconsistent (some things are set up in systemd, others aren't)
Most of the packaged distributions of this seem to install src packages and not binaries with the service file attached.

docker.service has Wants= dependency on docker-storage-setup.service. That should take care of it, isn't it?

No, but only because there isn't a systemd unit for docker-storage-setup.service.  The script creates all the other systemd units except that one.

We do ship docker-storage-setup.service with docker package. Something else is not right.

I think these wants directories are added only if we use WantedBy= or RequiredBy= directives. Given we are already using Wants= in docker.service, we don't need to put WantedBy= in docker-storage-setup.service, AFAIK.
I did systemctl list-dependencies docker and it does list docker-storage-setup.serivce as a dependency.
docker.service
● ├─docker-containerd.service
● ├─docker-storage-setup.service
So I believe, that docker will wait for docker-storage-setup.service to start before it continues.

Right, container-storage-setup does not install docker-storage-setup.service. It is the docker package which install docker-storage-setup.service

but the docker package doesn't install docker-storage-setup.service. It hasn't in a really long time. If it did, systemctl list-units would show it.

systemctl list-units --all | grep docker
docker-storage-setup.service                                                                                loaded    inactive dead      Docker Storage Setup
docker.service                                                                                loaded    active   running   Docker Application Container Engine

systemctl status docker-storage-setup
● docker-storage-setup.service - Docker Storage Setup
Loaded: loaded (/usr/lib/systemd/system/docker-storage-setup.service; enabled; vendor preset: dis
Active: inactive (dead) since Tue 2017-10-31 11:10:27 EDT; 27min ago
Process: 2925 ExecStart=/usr/bin/container-storage-setup (code=exited, status=0/SUCCESS)
Main PID: 2925 (code=exited, status=0/SUCCESS)

rpm -ql docker | grep docker-storage-setup
/usr/lib/systemd/system/docker-storage-setup.service

What docker distribution/version are you using? Because only the RedHat versions of docker, and docker pre 1.12 install that service.  I don't get that unit when installing upstream docker

upstream docker does not install it. It is only fedora/rhel/centos docker which installs this service

This is what I am using on my F26 VM right now.
docker-1.13.1-22.gitb5e3294.fc26.x86_64

That version is nearly a year old. The docs don't say anything about requiring a specific source for the docker package (redhat distributed docker packages or docker < 17.x).
So we're back to "missing systemd unit", unless you want to make a specification in the docs that upstream docker isn't supported?

i'm ok with either, I think it just needs to be documented if you go with the latter.
I think that's the wrong route, since it's inconsistent with setting up some of the systemd units and not others.
I also think this can and should be done without modifying the docker.service unit. All i need to do is add the docker-storage-setup.service file and specify the service should be before docker.service, and things work beatifully.
Most docker installations are managed by orchestration or automation tools, and the unit files for the docker installation will constantly be fighting with CSS altering the state of the docker.service file.
We should not alter the docker.service file (which we don't currently AFAICT), but we should ensure the script creates a docker-storage-setup.service file. (might as well be a container-storage-setup.service file at this point)

We work with the docker shipped with the distribution.  If you have an issue with docker shipped from somewhere else, then you should take it up with those packagers.

I think those who ship docker package they need to decide whether they want to be dependent on docker-storage-setup for their storage needs or not. If they want to be dependent, then they need to ship right default config file and systemd unit file accordingly.
W.r.t dynmacially generating var-lib-docker.mount, it has to be done dynamically because name of this file is determined by the path of mount (specified in config file). Otherwise I would have generated it statically as well.

docker isn't shipped with any distribution. You have to add repos that have the docker package. Even on RedHat family Operating Systems

I think those who ship docker package they need to decide whether they want to be dependent on docker-storage-setup for their storage needs or not. If they want to be dependent, then they need to ship right default config file and systemd unit file accordingly.

None of the current distributions of docker ship with css as a dependency. And the README bills this product as a way to configure container storage.
What you're telling me about the usage here is very different from how the usage in the README is described.  README says nothing about this project only being compatible with docker distributions that have a dependency for css built in.

docker package is available by default on Fedora and Centos.  Only on RHEL is it on the extras repo.  But it availabel as part of the default subscription.

Each distribution of the package sets up different configurations of the unit file that starts the service.  If upstream does not match the distributions version, then the user is responsible to make the packages work together.
The distribution is responsible for making all packages that it ships work together.  Not random upstream packages.

All i'm asking you to do is remove any ambiguity from your README. As it reads right now, i would expect it to work with any container engine, no caveats.

I can even make the PR if that's something you're willing to accept. something along the lines of

"User will need to hook up .service to the docker-storage-setup.service" if it is not already done so by the docker/container package.

For the record, I'm approaching this as a maintainer/contributor to the puppet forge module for docker.
this is related to:

dm_thinpooldev on RHEL
Fix Storage Setup

It's not a problem to implement the service itself with puppet dynamically based on the OS and location of the docker package, I was just trying to connect some dots based on the information in this project's README and wanted to make sure this responsibility was solved in the right place so that I didn't create a conflict in system automation by adding the service configuration to the automation tooling.

Please generate a PR for README. I will have a look. Lets see what text are you looking for.


Update extended eye tracking guides

Replace the ExtendedEyeGazeDataProvider.cs script content in extended eye tracking Unity guidance with a link to that script in GitHub EyeTracking sample, since we may usually update its content in the GitHub sample.

Learn Build status updates of commit 286b800:
:bulb: Validation status: suggestions

File
Status
Preview URL
Details

mixed-reality-docs/mr-dev-docs/develop/native/extended-eye-tracking-native.md
:bulb:Suggestion

Details

mixed-reality-docs/mr-dev-docs/develop/unity/extended-eye-tracking-unity.md
:white_check_mark:Succeeded

mixed-reality-docs/mr-dev-docs/develop/native/extended-eye-tracking-native.md

Line 248, Column 219: [Suggestion: docs-link-absolute - See documentation] Absolute link 'https://learn.microsoft.com/uwp/api/windows.ui.input.spatial.spatialpointerpose.trygetattimestamp' will be broken in isolated environments. Replace with a relative link.

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings or suggestions unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel

Learn Build status updates of commit baf54e8:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/mr-dev-docs/develop/native/extended-eye-tracking-native.md
:white_check_mark:Succeeded

mixed-reality-docs/mr-dev-docs/develop/unity/extended-eye-tracking-unity.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the learn.microsoft.com contributor guidesPost your question in the Learn support channel


Store Commerce app availability means the Note needs an update

There is currently a note on this page:
"It is critical to note that Commerce Scale Unit (self-hosted) does not replace offline. Currently, Retail Modern POS with an offline database is the only way to have offline capabilities."
I believe this needs to be updated now that the Store Commerce app is available, as that also supports offline capabilities if configured for it.

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

ID: b3904172-4dc3-3602-05a6-6bc0fcd1c7e3
Version Independent ID: 2eaac493-f165-5f34-8d05-e441e741a8b8
Content: Commerce Scale Unit (self-hosted) - Commerce | Dynamics 365
Content Source: articles/commerce/dev-itpro/retail-store-system-begin.md
Service: dynamics-365-commerce
Product: ****
Technology: ****
GitHub Login: @josaw1
Microsoft Alias: josaw

Bug 752904 has been logged to address this issue.

@anupamar-ms please take a look. Thanks.

The blurb about offline needs to be updated as follows:
It is critical to note that Commerce Scale Unit (self-hosted) does not replace offline. Currently, the point of sale apps for Windows (Retail Modern POS or Store Commerce App) with an offline database is the only way to have offline capabilities.
There was no associated bug - I created the following CD for tracking: https://msdyneng.visualstudio.com/FinOps/_workitems/edit/759447


[5.9] Add diagnostic for wrong inheritance

Explanation: When there was a Python style inheritance the parser did show an "unexpected code" error. This will show a correct error and fix-it
Scope: Swift parser and diagnostics
Risk: Low
Testing: Added test cases that converts Python style inheritance to Swift inheritance
Issue: N/A
Reviewer: @ahoppen on https://github.com/apple/swift-syntax/pull/1450

Looking at this PR again, I’d prefer not to cherry-pick it to 5.9. The change seems potentially risky (because isAtPythonStyleInheritanceClause is not super trivial) and the use case is very marginal.


[STORM-2989] LogCleaner should preserve current worker.log.metrics

https://issues.apache.org/jira/browse/STORM-2989
Preserve current worker.log.metrics

The test failures should be unrelated.

+1

Thanks, merged to master. Cherry picked to 1.x and 1.1.x, and made the same change to the clojure logviewer there.


💡 [REQUEST] - rtl support

Describe the feature
Hi,
Thanks for this great Nuxt module.
Could you please add rtl support for this?
Thank you in advance !
Additional information

[ ] Would you be willing to help implement this feature?
[ ] Does this feature have a potential to break existing features?

Follow this guide: https://quasar.dev/options/rtl-support/
If you can't make it work, then be specific in what you need that isn't already in nuxt-quasar

I read the documentation.
The HTML tag has dir="rtl" and lang="fa-IR" but in quasar.css html and body dir is LTR.
my nuxt.config.ts is:
export default defineNuxtConfig({   modules: ['nuxt-quasar-ui'],   quasar: {     extras: {},     lang: 'fa-IR',     build: {       rtl: true     }   } }),
and postcss.config.cjs :
module.exports = {   plugins: [     require('postcss-rtlcss')({ source: 'rtl'  })    ] }
nuxt version : "^3.5.2" and  postcss-rtlcss: "^4.0.6"
and my app is still LTR

Try following nuxt.config.ts
export default defineNuxtConfig({
  app: {
    head: {
      htmlAttrs: {
        dir: 'rtl',
      },
    },
  },
  modules: ['nuxt-quasar-ui'],
  postcss: {
    plugins: {
      'postcss-rtlcss': {},
    },
  },
  quasar: {
    lang: 'fa-IR',
  }
}

fixed! thank you


See there is function for NVIDIA GeForce NOW, is it hard to do same for Boosteroid?

Could it be make to work with Boosteroid? (or ported)

I had to check because I have never heard of it. Is it just running in a normal browser or does it also have a client? If it's just running in a browser, it might be difficult to always find the correct window.
If it doesn't have a client and only runs in web-browsers, one solution could be to install a secondary web-browser that you only use for boosteroid. The script could then be modified to handle this browser as the game-client and apply overlays, etc.
That said, I don't know how many of the script's features actually work for streaming services. GeForce Now support was added at the very beginning when the script was only scanning the screen for archnemesis recipes, and since then I have added many features but haven't received much feedback on what works and what doesn't.

It runs with a client. Boosteroid.exe
I tried to change in code GeForceNOW.exe to Boosteroid.exe but it do nothing, only if needed update it showed me overlays (for 1 sec in the upper left corner and not reacting to anything overlay for update).
But I would to say, if it need more that 30 min to try to make it work with Boosteroid, there no need for it.

I double-checked, and I think there's a missing line around line 40 in the main ahk-file:
GroupAdd, poe_window, ahk_exe GeForceNOW.exe
GroupAdd, poe_window, ahk_class POEWindowClass
GroupAdd, poe_ahk_window, ahk_class POEWindowClass
GroupAdd, poe_ahk_window, ahk_exe GeForceNOW.exe <--- this one
GroupAdd, poe_ahk_window, ahk_class AutoHotkeyGUI
There is also a GeForceNow.exe line in "modules\settings menu.ahk" that needs to be changed to boosteroid.

One time it showed me "positive" in gamescreen but then never after.

I understand, this don't work if I'm in Boosteroid and it's the "center screen", but if I click and select the options screen as the "center screen" then pixel check works (game as a background of option menu of script).

One more question, can't move item because it sending them to chat.
What options is it, what it trying to do, and how it off?

And one more problem, in betrayal menu do not work prio-view options.

Cant get how to use recognize so will do it with hands.
There some minor inconvenience, when I press mouse on the script overlay and it to something mouse will teleport to some degree.

You could try this: in the modules folder, there is a hotkeys.ahk file which is empty. Add these lines
~RButton UP::
~LButton UP::
WinActivate, ahk_exe boosteroid.exe
Return
This will focus the boosteroid client everytime you release left or right mouse-button while boosteroid or a script overlay is active. I don't know if this has negative side-effects, but it's the only thing that comes to mind right now that would fix the teleporting cursor.

Not helped. But Thanks, its already good that it is working.


Crashes as soon as speech to text is called

I am attaching logs here
stt.log
EDIT
Got it working on windows, but the same problem in android.
and exits with Abort message: 'terminating with uncaught exception of type std::runtime_error: Exception with an error code: 0x8 (SPXERR_FILE_OPEN_FAILED)
device log.txt

Created a new branch including ARM & ARM64 libraries for Android: https://github.com/lucoiso/UEAzSpeech/tree/hotfix/ANDROID-PACKAGING-ARM

Created a new branch including ARM & ARM64 libraries for Android: https://github.com/lucoiso/UEAzSpeech/tree/hotfix/ANDROID-PACKAGING-ARM

I am trying again and reporting back, thanks

Still crashes, on the device output log, the first few lines are:
D/UE      : In the JNI_OnLoad function 5 D/UE      : [GameActivity] java.lang.UnsatisfiedLinkError: dlopen failed: library "liblibMicrosoft.CognitiveServices.Speech.core.so" not found D/UE      : [GameActivity] libMicrosoft.CognitiveServices.Speech.core library not loaded and may be required for AzSpeech. D/UE      : [GameActivity] java.lang.UnsatisfiedLinkError: dlopen failed: library "liblibMicrosoft.CognitiveServices.Speech.extension.audio.sys.so" not found D/UE      : [GameActivity] libMicrosoft.CognitiveServices.Speech.extension.audio.sys library not loaded and may be required for AzSpeech. D/UE      : [GameActivity] java.lang.UnsatisfiedLinkError: dlopen failed: library "liblibMicrosoft.CognitiveServices.Speech.extension.kws.so" not found D/UE      : [GameActivity] libMicrosoft.CognitiveServices.Speech.core library not loaded and may be required for AzSpeech. D/UE      : [GameActivity] java.lang.UnsatisfiedLinkError: dlopen failed: library "liblibMicrosoft.CognitiveServices.Speech.extension.lu.so" not found D/UE      : [GameActivity] libMicrosoft.CognitiveServices.Speech.extension.lu library not loaded and may be required for AzSpeech. D/UE      : Entering native app glue main function D/UE      : Created event thread D/UE      : Entered AndroidMain()

@Ishu07
Looks like the libs wasn't copied to the build folder. I've updated the Android UPL in the last commit.
dlopen failed: library "liblibMicrosoft.CognitiveServices.Speech.core.so" not found

Can you check again? And can you check if the same problem occurs with "Enable Azure SDK Logs" disabled in Project Settings? Perhaps the plugin is not able to create the log file in Android environments and the failure is occurring because the file does not exist and there is nowhere to write the log.

New branch w/ SDK logs disabled for android: https://github.com/lucoiso/UEAzSpeech/tree/hotfix/LOG-GENERATION-CRASH

The issue still exists for me under UE5.1 for Android (shipping build with GooglePAD enabled, target SDK 31). During the build process I get:
LogAzSpeech_Internal: Warning: LoadDependency: Failed to load library ../../../../../Projects/X/Plugins/AzSpeech/Source/ThirdParty/AzureWrapper/libs/Win/Runtime/Microsoft.CognitiveServices.Speech.extension.codec.dll.
It does copy the .so files to Intermediate/Android/arm64/libs/arm64-v8a and then Intermediate\Android\gradle\app\src\main\libs\arm64-v8a though.
When running it, the application starts visually fine, but throws this during startup:
[GameActivity] java.lang.UnsatisfiedLinkError: dlopen failed: library "liblibMicrosoft.CognitiveServices.Speech.core.so" not found
[GameActivity] libMicrosoft.CognitiveServices.Speech.core library not loaded and may be required for AzSpeech.
[GameActivity] java.lang.UnsatisfiedLinkError: dlopen failed: library "liblibMicrosoft.CognitiveServices.Speech.extension.audio.sys.so" not found
[GameActivity] libMicrosoft.CognitiveServices.Speech.extension.audio.sys library not loaded and may be required for AzSpeech.
[GameActivity] java.lang.UnsatisfiedLinkError: dlopen failed: library "liblibMicrosoft.CognitiveServices.Speech.extension.kws.so" not found
[GameActivity] libMicrosoft.CognitiveServices.Speech.core library not loaded and may be required for AzSpeech.
[GameActivity] java.lang.UnsatisfiedLinkError: dlopen failed: library "liblibMicrosoft.CognitiveServices.Speech.extension.lu.so" not found
[GameActivity] libMicrosoft.CognitiveServices.Speech.extension.lu library not loaded and may be required for AzSpeech.

and then crashes the moment any STT function is called (every time). Any ideas?

Hello! @ocinon : )
library "liblibMicrosoft...
A extra "lib" was added to the filenames wtf 👀
I'll take a look at this issue, thanks for the information!
If you want to test locally: there's a file called AzSpeech_UPL_Android.xml that's responsible for the copy and load of the dependencies on Android. You can test removing the "lib" from the front of the filenames in the soLoadLibrary section.
I'll check this soon and test the behavior with other engine versions!

@lucoiso thanks so much for the quick response! Your hotfix did indeed solve that issue!
Sadly, it hasn't solved the actual crash. A "DebugGame" build works on Android, but a development or shipping build crashes any time the STT function is called. I also can't find any usable exception or error, I assume they all symbols are stripped during distribution.
System.exit called, status: 0
I/AndroidRuntime: VM exiting with result code 0, cleanup skipped.
[...]
E/TheiaManager: [tagL]: calling catchLog()..., focusedPid:7499 pids:[7499]
D/TheiaManager: No stackTrace found in args

I am wondering whether this is a shipping build issue on Android or has something to do with GooglePAD/the Google play store distribution.

Even with GooglePAD and distribution disabled and when deployed locally, the Android build crashes during the STT call when it is a shipping build. It works with Debug and Development builds.

@ocinon created a separated issue and will start the works as soon as possible! : )
https://github.com/lucoiso/UEAzSpeech/issues/70

Merged in development branch: https://github.com/lucoiso/UEAzSpeech/tree/development
New issue: https://github.com/lucoiso/UEAzSpeech/issues/70


Add ADR template

What
Link to story
Add ADRs to CDA
Checklist
Before you ask people to review this PR:

[ ] Tests and linters should be passing
[ ] Github should not be reporting conflicts; you should have recently run git rebase master.
[ ] Avoid mixing whitespace changes with code changes in the same commit. These make diffs harder to read and conflicts more likely.
[ ] You should have looked at the diff against master and ensured that nothing unexpected is included in your changes.
[ ] You should have checked that the commit messages say why the change was made.

I believe it is a matter of convention, to start the readme itself as 0001, and is supported out of the box by adr-tools which auto generates it by default. I'm happy to change, but my personal preference is the convention. https://github.com/npryce/adr-tools/blob/master/doc/adr/0001-record-architecture-decisions.md

OK, good to know. Thank you for the info. Very happy to go with the convention.


Add some Azure installation instructions

This adds my Azure install documentation into our documentation branch. Closes #733. Still need to do #738.

Thanks Adam!


Revert "Roll Dart to 45f9462398ae7d2e80acd79d3f9c32c7ca6f6f97"

Reverts flutter/flutter#23307
It cannot pick up the SDK build (yet or at all?)


bump scala to version 3.3 and squash some warnings

This PR is the first one in the sequence of several PRs to complete scalismo version 0.92

Thank you for updating it.


Fusion++ did not work(log folder lack of permission)

I have tried with fusion++ 1.1 and 1.2, both of them did not work. I click record and open an IIS site, and the site reproduce an exception "Could not load file or assembly". Then I click stop, but the software told me "Relax no data yet".
How can I troubleshooting this, I did not find any log under Fusion++.

It's really weird, I tried the Fuslogvw.exe to do the log feature. It still did not work.
Not sure what's wrong with my computer system, we just reimage our system.
Microsoft Windows [Version 10.0.18363.657] (1909)
(c) 2019 Microsoft Corporation. All rights reserved.

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\FUSLOGVW.exe works fine.
C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\FUSLOGVW.exe did not work.

C:\Users\clu\Downloads\Fusion++.1.2>corflags "Fusion++.exe"
Microsoft (R) .NET Framework CorFlags Conversion Tool. Version 4.8.3928.0
Copyright (c) Microsoft Corporation. All rights reserved.
corflags : error CF008 : The specified file does not have a valid managed header
C:\Users\clu\Downloads\Fusion++.1.1>corflags "Fusion++.exe"
Microsoft (R) .NET Framework CorFlags Conversion Tool. Version 4.8.3928.0
Copyright (c) Microsoft Corporation. All rights reserved.
Version : v4.0.30319
CLR Header: 2.5
PE : PE32
CorFlags : 0x20003
ILONLY : 1
32BITREQ : 0
32BITPREF : 1
Signed : 0

https://stackoverflow.com/questions/18608785/how-to-interpret-the-corflags-flags
Microsoft .NET 4.5 introduced a new option, Any CPU 32-bit Preferred. In the new version of CorFlags.exe, the 32BIT flag no longer exists, instead, two new flags were added, 32BITREQ and 32BITPREF.
Somewhere based on the below explanation, we can interpret new CorFlags as follows.
CPU Architecture           PE      32BITREQ   32BITPREF

x86 (32-bit)               PE32           1           0
x64 (64-bit)               PE32+          0           0
Any CPU                    PE32           0           0
Any CPU 32-Bit Preferred   PE32           0           1

The fusion++1.1 was Any CPU 32-Bit version, I tried to run it as admin.  And can not get any log.
What's the type of fusion++1.2? 32or 64 bit application?

Interesting, I got some binding failures for fusion++ from Fuslogvw.

Fusion++.exe.zip

That's a strange behavior, indeed. As I read this, I don't think this is related to the bitness of the application.
What Fusion++ does to activate the log - and that's similar to the old FUSLOGVW - is setting up some registry keys. See https://techcommunity.microsoft.com/t5/iis-support-blog/fusion-log-viewer-fuslogvw-exe/ba-p/784396, for example.
On your side, I'd check the registry and what differs from a not-working FUSLOGVW and the working one. I'd be very interested in these differences, btw. After that, it would be very interesting to see what Fusion++ does on your system.

I have figured out why I mistakenly think the 64 bit vesion Fuslogvw did not work.
Because the web forms site will load the dependency only once when the site first start.
Now I test the Fuslogvw with 32 bit and 64 bit version, both of them works. （I need to do the iisreset to make sure the site will reload again）.
Now the problem would be, why the Fusion ++  did not work, even if I have done the iisreset to make sure the site will be reloaded.

By the way, I already configured the registry key as mentioned above.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Fusion
Add:
DWORD ForceLog set value to 1
DWORD LogFailures set value to 1
DWORD LogResourceBinds set value to 1
DWORD EnableLog set value to 1
String LogPath set value to folder for logs (e.g. C:\FusionLog)
When I open the registry editor, I lost the EnableLog setting.

I find the difference about the registry key.
Before the fusion++ run, the registry keys are as following:

After I run the fusion++, some keys are lost, eg: EnableLog

The register keys only changed after I clock the record button of fusion++, I have tried to add the missing registry key back after click record button.
Set-ItemProperty -Path HKLM:\Software\Microsoft\Fusion -Name LogFailures      -Value 1               -Type DWord
Set-ItemProperty -Path HKLM:\Software\Microsoft\Fusion -Name EnableLog        -Value 1               -Type DWord

However, even if I did the iisreset, and reload the site with "Could not load file or assembly" exception. Then stop the fusion++, still got nothing for log.

Another clue, the fusion++ can record log for software EveryThing.exe, but can not record log for IIS site(an web application under site).
folder 2<IP_ADDRESS>.47.14.7452 contains logs, and folder 2<IP_ADDRESS>.52.45.7891 contains nothing (It supposed to have logs for IIS web application).

Test with another site, and still did not work. The only difference seems like the log folder.

This has nothing to do with the folders. These are being created by Fusion++ for each recording session. If nothing is logged during a session, they stay empty.
I suppose that there's an issue with your IIS or that everything you fire up is .NET Core which cannot be logged with Fusion++ (also not via Registry keys or FUSLOGVW.exe).

I am running a web forms site, and it's based .net framework.
And the log can be recorded by FUSLOGVW.exe,  when I switch to Fusion++, then it will not record the log.

Did you know how to build a website through IIS?
Maybe I can provide you a sample site with source code, then you can reproduce it on your local environment.

I won't dig into this atm, thanks. This seems not related to Fusion++ but also to the FUSLOGVW (at least x86).

FUSLOGVW x86 also works fine.

I'm having the exact same issue:
Both x86 and x64 FUSLOGVW tools are working fine (same version as @chucklu: v10.0A), though only after I recycle the relevant app-pool in IIS each time.
On the other hand, I've so far been unable to get Fusion++ to record anything for my IIS web-app at all (targets ASP.NET 4.8, AnyCPU). Unlike FUSLOGVW, recycling the application pool in IIS has no effect.
Fortunately at least for my own issue I was trying to solve, I was able to record the logs with FUSLOGVW and then import those logs into Fusion++.

Fortunately at least for my own issue I was trying to solve, I was able to record the logs with FUSLOGVW and then import those logs into Fusion++.

Well done.
So this is not related to the @chucklu's machine you say? Okay, I might give it a try. Would any of you @chucklu or @lethek upload a zipped solution to reproduce the issue?

@awaescher  I am not able to build Fusion++ by source code. Could you please build a test version, and hard code the log path as "C:\FusionLogs"? Then I can test Fusion++ to check if the problem was caused by the log path.

I'll try to create a minimal solution that reproduces the issue on my PC at least.
Note: so far I haven't tried Fusion++ with any other web-apps or other .NET apps - so not yet sure if there may be something weird about this particular one (which has been continuously maintained and upgraded for about 10 years now), or the way I'm hosting it on my dev machine.

You can start Fusion++ and start logging. Then, in the registry change the log path as you want it to be. That'll work. As soon as you close fusion++, it will reset the values as they were before starting Fusion++.
Building requires you to have a DevExpress subscription.

@awaescher  I tried to change the log path to "C:\FusionLogs" after the Fusion++ start record. The log was recorded successfully.
I checked the security tab of these two folders, the folder created by Fusion++ could only be  accessed by System user group, current logon user and Administrators user group.
The problem should be the permission access.

You might grant the  new created folder with Users user group permission to fix this issue.
https://stackoverflow.com/questions/5437723/iis-apppoolidentity-and-file-system-write-access-permissions
https://stackoverflow.com/questions/8944765/c-sharp-set-directory-permissions-for-all-users-in-windows-7

@awaescher  I just granted the MachineName\Users user group permission to the log folder Fusion++ created. Then it works perfectly.

Nice work! That appears to be the cause of the problem for me too.
However, now after manually adding permission to the parent dir, I've got an Exception when it attempted to parse the logs - I'll investigate that a bit further and post a new Issue if need be.

 So this has nothing to do with x86/x64?
Thinking of this ...

C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\FUSLOGVW.exe works fine.
C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools\x64\FUSLOGVW.exe did not work.

I have figured out why I mistakenly think the 64 bit vesion Fuslogvw did not work.
Because the web forms site will load the dependency only once when the site first start.
Now I test the Fuslogvw with 32 bit and 64 bit version, both of them works. （I need to do the iisreset to make sure the site will reload again）.
Now the problem would be, why the Fusion ++ did not work, even if I have done the iisreset to make sure the site will be reloaded.

@awaescher  Maybe you did not read this comment yesterday.

Just wanted to have this confirmed.

The issue has nothing to do with the 32 bit or 64 bit. It's just a security problem, the log folder you created could not be accessed by Fuslogvw.

Version 1.3 was just released.
I would be happy to hear if this issue is gone now.

@awaescher  It works with the new version 1.3 .


snippeting with multiple matches

In instantsearch.js we can use attributesToSnippet: ["content:50"] to return a part of the matched attribute. In cases where there are multiple matches (multiple occurrences of the keyword) in the same record, only one will be returned.
Is there a way to return all of them?

@bnfd The typesense-instantsearch-adapter automatically enables full-field highlights for you, which returns all matchces. You just want to use the highlights helper like this to display all matches in the UI:
https://github.com/typesense/showcase-ecommerce-store/blob/5cf0597807da2429af00a73c1c2e69fe6bd3fafb/src/app.js#L207


[FAB-18117] Update fabric-protos-go dependency

Signed-off-by: Wenjian Qiao<EMAIL_ADDRESS>Type of change

New feature

Description
Bump fabric-protos-go to latest and update related code with update fields in snapshot.pb.go
Related issues
https://jira.hyperledger.org/browse/FAB-18117

/ci-run


Add a line about pre-release troubleshooting to pre-release documentation

What
Add a line to the docs on publishing a pre-release discussing how to troubleshoot problems with installing the pre-release in projects.
Why
This came up recently for me due to issues with how zsh handles this command, I suspect because of potential special characters in the line generated by the pre-release command. This gives any future devs who want to do this a helping hand.

Just a thought – is there a way we could avoid needing to document this as a workaround?
For example, if we modified the script to include the quotes around the repo / hash in the output, do you think we would still need this?

@36degrees That's a good point! I've put together a separate PR to test this out https://github.com/alphagov/govuk-frontend/pull/2532 I'm hoping this doesn't cause problems for devs using terminals other than zsh.

As https://github.com/alphagov/govuk-frontend/pull/2532 has been merged, this change is no longer needed. Sorry @EoinShaughnessy for wasting your time, thanks all the same for the review!

@owenatgov No trouble at all, give me a shout if I can ever help with anything!


java rpm download failed

Every so often, Oracle seems to update their URLs.  Looks like it happened again.

👍 same here

Sorry!
In order to download products from Oracle Technology Network you must agree to the OTN license terms.

Be sure that...
Your browser has "cookies" and JavaScript enabled.
You clicked on "Accept License" for the product you wish to download.
You attempt the download within 30 minutes of accepting the license.

where I need to change download link in the file.can you please mention details in readme file

I was able to get around it by specifying version, subversion, build, and hash.

I released version 2.19.2. Should work for jdk 8_u191 again. Others will not work.

thanks


Video slows down along with the audio

So, every time the video plays, I hear the audio working normally but the video is slowed down. When it reaches a certain point in the video, the audio repeats and slows down with the video.
https://user-images.githubusercontent.com/78701030/120113692-9ca89780-c149-11eb-84c7-36dd2d22e3b4.mp4

also, the audio being on the left channel is supposed to happen. don't worry about that.

happens to me too

So, every time the video plays, I hear the audio working normally but the video is slowed down. When it reaches a certain point in the video, the audio repeats and slows down with the video.
2021-05-30-13-16-25.mp4

actually your issue name is
Video slows down
because the audio synchronizes with the audio
since i placed that feature
idk how to fix this
either your computer's specifications
or the video being to heavy to decode on openfl


delete unused code

There is a build failure. Are we referencing the unused type in a test or something?

There is a build failure. Are we referencing the unused type in a test or something?

no, it's just integration test is not stable because of slow faucet and stale response handling, I will spend some time to fix them later.


Development: /admin features test

Checklist
General

[x] Language: I followed the guidelines for inclusive, diversity-sensitive, and appreciative language.
[x] I chose a title conforming to the naming conventions for pull requests.

Client

[x] I followed the coding and design guidelines.

Motivation and Context

This PR introduces client tests for: app/admin/features
Steps for Testing

Execute the client test in: admin-feature-toggle.component.spec.ts
Review Progress

Code Review

[ ] Review 1
[ ] Review 2

Test Coverage

admin-feature-toggle.component.ts 75% | 100%

Overall code looks good but there are some GitHub Actions / client-style warnings about unused imports and variables, I can approve after these are solved.

unused imports and variables removed @akesfeden


The value of SV_VertexID seems to be wrong in renderdoc when used with ID3D11DeviceContext::DrawIndexed

Description

The value of SV_VertexID seems to be wrong in renderdoc when used with ID3D11DeviceContext::DrawIndexed when a vertex buffer has not been bound. I believe that renderdoc adds the index value to the BaseVertexLocation value (the 3rd argument in ID3D11DeviceContext::DrawIndexed) to generate the value for SV_VertexID in the vertex shader when debugging and in the Mesh Viewer. This is what the Microsoft Docs seem to indicate should happen but I think this is only true if a vertex buffer is set. Without a vertex buffer, Directx11 just passes the raw index value.
Steps to reproduce

Create an index buffer and then call ID3D11DeviceContext::DrawIndexed without a vertex buffer bound. Look at the value generated for SV_VertexID in the vertex shader. DirectX11 does not add BaseVertexLocation, but renderdoc does.
Environment

RenderDoc version: 1.7
Operating System: Win10
Graphics API: DirectX11

From testing this doesn't seem to be related to vertex buffers being bound at all, which I don't think would make sense given that there would have to be complex rules defining how that worked when multiple vertex buffers are in use and depending on the input layout. Instead it seems to me like SV_VertexID doesn't include BaseVertexLocation regardless.

Hi. Thanks for looking into it. I agree. I've just done a test with the Visual Studio Graphics Analyzer and can see that BaseVertexLocation isn't considered. It just seems to be RenderDoc exhibiting this behavior.

That commit should fix the handling of BaseVertexLocation both in shader debugging and the mesh output.


Polygon without exterior possible when calling buffer(0).

Under certain corner cases it is possible to end up with a Polygon without an exterior.  One possible way to get this is to follow the practice of cleaning an invalid polygon using buffer(0).  Below is a example of such a case.
Example
>>> from shapely.geometry import Polygon
>>> poly_cw = Polygon([(-1, 0), (0, 1), (0, 2), (0, 1), (1, 0)])
>>> poly_ccw = Polygon([(1, 0), (0, 1), (0, 2), (0, 1), (-1, 0)])
>>> poly_cw.is_valid
False
>>> poly_ccw.is_valid
False
>>> poly_clean_cw = poly_cw.buffer(0)
>>> poly_clean_ccw = poly_ccw.buffer(0)
>>> poly_clean_cw.is_valid
True
>>> poly_clean_ccw.is_valid
True
>>> poly_clean_cw.exterior is None
False
>>> poly_clean_ccw.exterior is None
True

As the above example demonstrates it is sensitive to the order the points are given in.
Testing Conditions
Operating system: Arch Linux
Python version: 3.6.2
Versions tested: 1.5.17 (from PyPI), 1.6b4 (from PyPI), and master (from github)

Just realized this is the already closed issue #277 and is intended behavior due to upstream limitations.


feat: add favicon to styleguide

Fixes #121

Coverage remained the same at 77.992% when pulling 22fcaceb15f229cf72633b0f00a496e0a7a6cb61 on add-favicon into cfc949e954dc37e1746422135e32138a7b7c4272 on master.


Backport "cargo-graph: init at 0.2.0-d895af1" to 19.03

Motivation for this change
Backport https://github.com/NixOS/nixpkgs/pull/63521 to 19.03.
Things done

[x] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
Built on platform(s)

[x] NixOS
[x] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[ ] Assured whether relevant documentation is up to date
[x] Fits CONTRIBUTING.md.

@GrahamcOfBorg build cargo-graph

@GrahamcOfBorg build cargo-graph


ci: define i as type int in for loop

The output of the for loop seemt to be groovy.lang.IntRange, which is
not very useful. Maybe it is required to define the variable of type
int?

/retest ci/centos/jjb-validate

/retest ci/centos/jjb-validate

I hope I fixed the CI issue, but that can only be tested once the PR is merged :crossed_fingers:


chore: set up CI on v0 branch

Set up GitHub Actions, update release script on v0

Please see the commit in https://github.com/googleapis/python-datalabeling/pull/211/commits needed to fix the docs build

Fixed!


Package skeleton and first JSON schema collection.  (GDEV-406) (#2)

Package skeleton
first JSON schemas needed for red-lipped batfish
simple test to check if schemas are valid according to JSON schema spec

Codecov Report

Merging #3 (ee6786c) into main (36f5497) will increase coverage by 38.20%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##             main        #3       +/-   ##
============================================
+ Coverage   61.79%   100.00%   +38.20%
============================================
  Files          13         2       -11
  Lines          89        16       -73
============================================
- Hits           55        16       -39
+ Misses         34         0       -34

Impacted Files
Coverage Δ

ghga_message_schemas/__init__.py
100.00% <100.00%> (ø)

ghga_message_schemas/schemas.py
100.00% <100.00%> (ø)

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 36f5497...ee6786c. Read the comment docs.


Federico: Watch coolutils.com

Federico requests the watch of the watch_keyword coolutils\.com. See the Metasmoke search here and the Stack Exchange search here.

coolutils\.com has been seen in 0 true positives, 0 false positives, and 0 NAAs.

!!/approve


Bad solving of issue #2151

https://github.com/nltk/nltk/blob/2a5aece8624504ebdaf363b2005e01f81dedade7/nltk/tag/mapping.py#L90-L112
This patch from #2151 just don't work, because source == 'ru-rnc-new' failed on line
https://github.com/nltk/nltk/blob/2a5aece8624504ebdaf363b2005e01f81dedade7/nltk/tag/mapping.py#L90
with LookupError for file 'ru-rnc-new.map'
So, why don't change 'ru-rnc-new' to ru-rnc.map, or just create ru-rnc-new.map?
P.S. this is a @alvations patch, so requesting the author

@mmmm1998 Thank you for raising the issue. The patch there for ru-rnc-new was there to hot-plug in the new mappings without messing with the existing data in nltk_data.
I also think that the better approach is to add the new mappings to as a ru-rnc-new.map file to the nltk_data/taggers/universal_tagset but nevertheless the code implement doesn't fail and works as needed.
>>> from nltk.tag.mapping import tagset_mapping
>>> tagset_mapping("ru-rnc", "universal")
defaultdict(<function _load_universal_map.<locals>.<lambda> at 0x101bb8e18>, {'!': '.', 'A': 'ADJ', 'AD': 'ADV', 'C': 'CONJ', 'COMP': 'CONJ', 'IJ': 'X', 'NC': 'NUM', 'NN': 'NOUN', 'P': 'ADP', 'PTCL': 'PRT', 'V': 'VERB', 'VG': 'VERB', 'VI': 'VERB', 'VP': 'VERB', 'YES_NO_SENT': 'X', 'Z': 'X'})
>>> tagset_mapping("ru-rnc-new", "universal")
{'A': 'ADJ', 'A-PRO': 'PRON', 'ADV': 'ADV', 'ADV-PRO': 'PRON', 'ANUM': 'ADJ', 'CONJ': 'CONJ', 'INTJ': 'X', 'NONLEX': '.', 'NUM': 'NUM', 'PARENTH': 'PRT', 'PART': 'PRT', 'PR': 'ADP', 'PRAEDIC': 'PRT', 'PRAEDIC-PRO': 'PRON', 'S': 'NOUN', 'S-PRO': 'PRON', 'V': 'VERB'}

I might not be understanding this issue raised so please do explain if the tagset_mapping implemented from #2151 isn't doing what it's expected =)

The problem is that while trying to use the universal tagset the LookUpError arises searching for 'ru-rnc-new.map' file. Just caught it myself having all the files downloaded and checked via nltk.download

Looks like bug still exists?


Add some final trove classifiers to help document the project

Development Status :: 5 - Production/Stable
Intended Audience :: Developers
Operating System :: OS Independent

Codecov Report

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

@@          Coverage Diff          @@
##           master   #193   +/-   ##
=====================================
  Coverage      91%    91%
=====================================
  Files           5      5
  Lines         934    934
=====================================
  Hits          850    850
  Misses         84     84

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 a444a36...97c4be1. Read the comment docs.


Problem with Forecast weather data of OpenWeatherMap

The answer from OpenWeatherMap seems to be correct.
Here is the answer for forecast weather data:
WeatherSampleCurrFore.txt
If i call the json_loads() function with the responese json string, i get an error.
error.line = -1
error.column = -1
error.position = 0
error.soutce = ""
error.text = ""
But the json_loads() return = 0x0.
I use the version 2.13.1.
With the current weather data the call works as expected.
WeatherSampleCurr.txt
I would be happy if the problem was solved.

The problem could be found. The set heap was too small. In the environment where I use the library it is necessary to set the heap. (B&R Automation Runtime)


Auth at mobile device - selecting Retry after time out does not open BankID app directly

Initiate Authentication at mobile device but let the session time out by not submitting a password/touch id in the bankID app. After session time out, a page is presented to the user where it can select Retry or Abort.
If selecting Retry then the BankID app does not start automatically until about 30 seconds later.

Please fill out the following information about this bug to allow us to replicate the issue.
Device: Android/iOS/Windows/macOS
Browser: Safari/Chrome/Edge/Samsung Internet/...
BankID Device: Same/Other
User-Agent String: eg. Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/<IP_ADDRESS> Safari/537.36

Device : iPad , iOS 16.6.1
Browser: Safari
BankID: same
User agent string:
Mozilla/5.0 (iPad; CPU OS 16_6_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/16.6 Mobile/15E148 Safari/604.1

Fixed in https://github.com/swedenconnect/bankid-saml-idp/pull/188


PLANNER-635 Implement HardMediumSoftBigDecimalScore

See https://issues.jboss.org/browse/PLANNER-635
Broken into multiple commits to make review easier - will squash if required.

Can one of the admins verify this PR? Comment with 'ok to test' to start the build.

Can one of the admins verify this PR? Comment with 'ok to test' to start the build.

ok to test

Thanks Brad, great work :)
I 've added a note in the release notes:
http://github.com/droolsjbpm/optaplanner-website/commit/cd4c57276


lombscargle produces wrong output

The lombscargle function produces unexpected results: Frequency peak at ~6Hz for a 1Hz cosine oscillation.
Reproducing code example:

import matplotlib.pyplot as plt
import scipy.signal as signal
import numpy as np

x = np.linspace(0, 10, 1000)
y = np.sin(2*np.pi*x)
f = np.linspace(0.1, 10, 1001)
pgram = signal.lombscargle(x, y - y.mean(), f)
plt.plot(f,pgram)

Executing a fft on the same data returns the results I expected (frequency peak at 1Hz):
Y = np.fft.fft(y)
f_fft = np.linspace(0, 1000/10, 1000)
plt.plot(f_fft[1:50], abs(Y[1:50]))

Matlab (and my octave implementation) shows a peak at 1 Hz as well:
x = linspace(0, 10, 1000);
y = sin(2*pi*x);
f = linspace(0.1, 10, 1001);
[per,f] = plomb(y,x,10);
plot(f, per)

Scipy/Numpy/Python version information:

1.4.1 1.18.5 sys.version_info(major=3, minor=7, micro=6, releaselevel='final', serial=0)

It looks like the peak is different than what you expect by a factor of 2π. Perhaps it's an issue of frequency vs. angular frequency?

Indeed, looking at the lombscargle docs, f is an angular frequency. So you can produce the results you're looking for like this:
import matplotlib.pyplot as plt
import scipy.signal as signal
import numpy as np

x = np.linspace(0, 10, 1000)
y = np.sin(2*np.pi*x)
f = np.linspace(0.1, 10, 1001)
pgram = signal.lombscargle(x, y - y.mean(), 2 * np.pi * f)
plt.plot(f,pgram)

Oh, thanks!


Correction to Example 5

Fixed property name from 'Title' to 'JobTitle' in Example 5.

Docs Build status updates of commit 0e25cad:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

azureadps-2.0/AzureAD/Get-AzureADUser.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Hi @CReamflourish
Per the read me file:
Please be aware that if you have any updates to automatically generated reference content, you should create an issue and not a PR.  The issue will then be created into a bug and triaged accordingly.  We do this because the reference content must mirror the *dll-help.xml file and subsequent updates to the reference content may overwrite any changes made through the repo.  Capturing it in the source code ensures that this does not occur.  Any PR with changes to automatically generated reference content will be closed.
Automatically generated reference content is any of the content under this Reference node, such as Get-AzureADUser
This only applies to reference content and not conceptual content.  Pull requests for changes to conceptual content are accepted and encouraged.  An example of the conceptual content is the Overview or a scenario such as importing data.
Thank you!
Bill


modify setting for terminal renderer

I created a separate PR to address the changes needed for terminal rendering syntax. So far I only find one that need to change.
On the other note, I think we can also use this PR to decide on whether we should commit to use the name terminal_renderer or text and unify the mixed use of text and terminal across the changes before we update the PR to merge to mistune.

@csadorf Just want to make sure I understand correctly, you mean just make both a text and terminal format mith minor difference like I did in my last commit? If so I think we can merge this PR as well and request the mistune maintainer again once you are both good with this. @csadorf @vyasr

What are the exact differences between the two variants? Just whether we include formatting markup? If so, then the inheritance relationship seems sensible.

What are the exact differences between the two variants? Just whether we include formatting markup? If so, then the inheritance relationship seems sensible.

@vyasr yes terminal renderer have a few terminal specific markup. I changed the terminal one to inherit from text now.

The changes look pretty clean here. @csadorf once you approve I can take point on reaching out to the mistune maintainer again if you'd like.

@csadorf @zhou-pj  it looks like you're still using f-strings, which are a Python 3.6 feature. The CI for mistune is currently failing on a syntax error because it apparently still tests Python 2.7. You will need to use string formatting to avoid this, then hopefully we should be set.

@vyasr Let's forget about merging upstream and just develop this fork for our purposes for now. We can always merge at some later point.

OK, in that case can you give signac-committers write access? We will need to vendor this fork as part of the signac-flow package for the foreseeable future if we go that route.


Fixes example for replicating async.series with Promise.each

The documentation here conflicted with the documentation on this page as well as the actual functionality of the Promise.each method.

I think instead of messing around with arrays the example should just use the new mapSeries method.

@bergus Changing it mapSeries is a much better idea. I've made those changes and they were much cleaner. :+1:


[C-API/Service] bugfix for DB permission in Tizen

Because of not enough permission in the /opt/usr/dbspace in Tizen,
ML Service APIs failed when running the test cases. This patch
fixes this bug.
Signed-off-by: Sangjung Woo<EMAIL_ADDRESS>Self evaluation:
Build test: [ ]Passed [ ]Failed [X]Skipped
Run test: [ ]Passed [ ]Failed [X]Skipped

:memo: TAOS-CI Version: 1.5.20200925. Thank you for submitting PR #148. Please a submit 1commit/1PR (one commit per one PR) policy to get comments quickly from reviewers. Your PR must pass all verificiation processes of cibot before starting a review process from reviewers. If you are new member to join this project, please read manuals in documentation folder and wiki page. In order to monitor a progress status of your PR in more detail, visit http://nnstreamer.mooo.com/.

@gichan-jang @jaeyun-jung
The main reason for this bug is not enough permission in /opt/usr/dbspace in Tizen. If you update the code as below, all test cases are passed.
/* ml-api-service-db.cc */
#define ML_DATABASE_PATH      "/tmp"

I don't know why so I will report this issue to AppFW guy and fix it ASAP. Thanks for your reporting.

:octocat: cibot: @again4you, A builder checker could not be completed because one of the checkers is not completed. In order to find out a reason, please go to http://nnstreamer.mooo.com/nnstreamer-api/ci/repo-workers/pr-checker/148-202204091029250.8964478969574-902d153ff5caf79edd9305813e20b2d60fb160f0/.


Added support for nested dirs in SimpleDirectoryReader

Currently we just return a ValueError if the top-level directory we pass to SimpleDirectoryReader has sub directories.
Instead, iterate through all the subdirectories and add those to the reader.

Thanks @gwpx! I'll push some changes to this so that it generalize recursively to subdirectories (and by default, recursive=False).


How can perfetto show the memory usage of Chrome?

I captured a chrome trace with memory-infra category enabled. I tried to import this record file to perfetto, but I couldn't find any counter tracks about memory usage.
How can perfetto show the memory usage? What is the correct way to trace the memory usage of Chrome?
Thanks!

@betasheet for comments. I am not aware of a Chrome-only data source which gives you memory use info which shows up natively in Perfetto.

Yeah, memory-infra is only supported in the legacy catapult viewer at present (e.g. chrome://tracing or the "Open in Legacy UI" button in Perfetto UI). While we may integrate this into Perfetto UI in the future, we're not actively working on this currently.


contact:email and other contact:* keys should be considered

They are! Their values are displayed, and when updating, the prefixes are preserved. For new tags I decided to go without the prefix, since that's how it has been done in OSM from the start.


rbac and composer

When you are using composer to install the yii2-rbac package you have missed RbacConsoleModule.php, RbacWebModule.php and commands folder. But instead you have Module.php file.
That lead to errors when running app such as:
Exception 'ReflectionException' with message 'Class dektrium\rbac\RbacConsoleModule does not exist'

Q
A

Yii2 version
2.0.9

Composer  version
1.1.0

Yii2-rbac version
0.3

PHP version
5.6

Yii2-rbac 0.3.0 does not have dektrium\rbac\RbacConsoleModule class. You probably using documentation for version 1.0.0-dev which is located in master branch.
If you're using version 0.3.0 then you should use this documentation.

Sorry, thats my fault.
But it will be nice if you will drop some lines in docs about installing module via composer. Just change the composer install dektrium/yii2-rbac to composer require "dektrium/yii2-rbac:@dev"


Replace s/argument/parameter/i here and there

Commonly in programming languages (and specifically in the
TypeScript specification), "parameter" is used to describe a
variable accepted by a function, and "argument" describes a
value passed to a function during a call. Similarly, in the
case of generic types, "(type) parameter" is a part of the
type declaration and "(type) argument" a part of the use.
This commit fixes up a few cases where it seems "parameter" was
intended rather than "argument".

thanks!


Editor: Fix categories and tooltips in TileSet editor

Hide unnecessary standard category.

Regression from #88318.
Fixes #91926.

Fix missing custom descriptions in help tooltips.

Regression from #89058.

Thanks!


/* breaks JSON tokenization

Information

Language: [JSON]
Plugins: [none]

Does the problem still occur in the latest version of Prism? Yes
Description
I'm logging server response as JSON. The HTTP header Accept: */* triggers this problem.

Code snippet

The code being highlighted incorrectly.
{
  "A": "/*",
  "B": "B",
  "C": "C"
}

Redefining Prism.languages.json.comment solves my problem, but I'm still posting the issue to see if this was intended or not.

This is definitely a bug which is probably caused by #1492.

Redefining Prism.languages.json.comment solves my problem

What does 'redefining' mean? Do you change or delete comment?

What does 'redefining' mean? Do you change or delete comment?

Yes, I changed comment as all of my code are standard json without comment.


DecoCraft Bug

When Generating a ship with DecoCraft items on it. All DecoCraft items turn to "Stuffed Creepers". When placing any DecoCraft items after a ship has been generated will instantly turn the item being place into a "Stuffed Creeper".

That is quite literally the strangest bug I've ever heard of. I'll check it out, it sounds like something related to NBT data or sth.

Old issue, closed.