Question: [Epic] Horizontally scalable request layer (e.g. `pgwired`)?

At the moment, all communication from clients goes through `environmentd`, which maintains the catalog, performs optimization, sends requests to `clusterd`, and passes results back to the client. Both data and control are multiplexed on the same connection.

The result of this multiplexing is
* increased effort for `environmentd` to provide data to clients,
* inability to restart independently of client connections, and
* risk of exhausting resources within `environmentd`.

Edit: Renamed the new component to `pgwired` based on feedback.

## Goals

Split the control and data plane into separate entities. This could be achieved using the following approach:
* Introduce an `pgwired` that accepts client connections, forwards requests to `environmentd`, and collects results from `environmentd` or `computed` directly.
* `environmentd` maintains its current responsibility but does not transfer data from `computed` to clients because that data is exchanged directly.
* `computed` hands the result of inserts directly to `persist` instead of passing data through `environmentd`
* `pgwired` needs to be stateless to avoid conflicts with `environmentd`'s state.
* The rollout needs to happen in a backwards-compatible fashion.

## Non-goals

* Move more processing, such as optimization, out of `environmentd`.

## Tasks

* Design the structure of `pgwired`
 * Derive a minimal protocol that allows `pgwired` to discover which services it needs to talk to.
* Implement the protocol between `pgwired` and `computed`, while preserving the existing communication channel.

## Alternatives

* Use Persist to move data between components of the system.

from @ georgewfraser (thanks!), lightly edited and shared with permission:

You can get most of Fivetran's commands if you set up postgres as a source (henceforth, "upstreamdb") and set up a new postgres database as a destination (henceforth, "downstreamdb"). Instrument downstreamdb with statement level logging and do the following operations:

Create a few tables in upstreamdb, add some data, and connect it to fivetran. Fivetran should do an initial load of all the data (into fivetran's internal representation).

* Sync a table to downstreamdb.
 * On the first sync Fivetran should copy straight into the table (this is DWH dependent, so lets see what happens).
* Run some inserts in upstreamdb, then sync again.
 * You should see Fivetran create a separate staging table and then move the data from there.
* Run some updates in upstreamdb and then sync again.
 * Be sure to update multiple columns, and try a few variations.
 * You'll see us do some funky update queries that do a "patch" operation. They're long but they follow a simple template.
* Sync some DELETES.
 * You'll see some slightly different update queries.
* Add a column.
 * We'll add the column in the destination.
* Change the type of a column.
 * We'll migrate the data in-place in the destination.
* Click resync in the Fivetran UI.
 * We'll do a "mass update" where we flag any rows that didn't get resynced as deleted.
* All of these queries will be slightly different in "history mode" vs "live mode" (ed: i don't know what this means, perhaps it is obvious from Fivetran UI).
 * History mode isn't widely available yet though, and it's probably best to just start with live mode.


Question: External hostname is not updated if an ingress is added *after* relating a charm to Prometheus?

### Bug Description

See title. If you first relate to Prometheus and then to Traefik, it all works as expected. The other way around, no cigar.

### To Reproduce

-

### Environment

-

### Relevant log output

shell
-

### Additional context

We could have used the ingress established/revoked events, but these are unfortunately fired prematurely

So basically, what I think would make sense here:

An optional argument, per consumer, to turn path-prefix-stripping on and off. It should take whatever path prefix it is using for that route and add it to the middleware's list of path's to strip. As an example:

- Jon is instantiating the traefik consumer in his `zinc-k8s` charm.
- Jon is, either implicitly or explicitly, setting the `strip_path_prefix` argument to `True`.
- Traefik adds a route, with the path prefix `/jons-cool-model-zinc-k8s`, resulting in the full routable URL ` URL
- Traefik also adds a strip path prefix middleware for `/jons-cool-model-zinc-k8s`.
- The workload app will no longer have to know that it is being reverse proxied and will continue to work, as long as all of the links it renders are relative.


Question: [Question] longhorn-conversion-webhook container not starting error, failed to create containerd task: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: eaccess /usr/local/sbin/longhorn-manager: permission denied: unknown?

**Question:**

I am open this as Question, because this is my first Longhorn storage installation on Kubernetes cluster (Multi Master HA setup), Feels like issue with some container permission while accessing /usr/local/sbin/longhorn-manager while provisioning container.
after applying the longhorn.yaml version v1.3.2, non of pods are getting started throwing error "CrashLoopBackOff" for longhorn-manager and convention-webhook pods. Looking at Kubernetes pod logs, in longhorn-conventional-webhook container its showing with the message: " unable to start container process: eaccess /usr/local/sbin/longhorn-manager: permission denied: unknown"

What more can I look at to diagnose this issue? Is my volume configured incorrectly somehow? Did I miss a setup step somewhere?

Environment Setup
Longhorn version: v1.3.2
Kubernetes version: v1.24.0
Node config
OS type and version: Rhel 8
CPU per node: 4
Memory per node: 8gb & 16gb
Disk type: XFS
Network bandwidth and latency between the nodes: I don't have numbers, but they are all running on the same physical server
Underlying Infrastructure (e.g VMWare/KVM, Baremetal): KVM

**Additional context**
My basic setup is that I have multiple K8s nodes running inside KVM virtual machines provisioned with libvirt. The K8S nodes are running rhel8. I have ensured that nfs-common and open-iscsi are both installed. Everything is running the latest version give or take a week. Each K8S VM has a 300gb XFS volume mounted at /var/lib/longhorn.

You can manually hide the private information, or you can send the support bundle to longhorn-support-bundle@suse.com which is only accessible by Longhorn members.


Question: error message using this step?

Hi,
I set this first step in our workflow:

 - name: Cancel Previous Runs
 uses: styfle/cancel-workflow-action@0.11.0

I did 2 pushes (first, and second) one after another to check how it works.
I see this message in the logs:
`Error while canceling workflow_id 5888667: Resource not accessible by integration`

Why did it happen?

Makes sense, as long as we can provide examples for each of the `Advanced:` use cases in the readme.

Would you like to submit a PR?


Question: [image_picker] image_picker: ^1.0.7 image revert issue in IOS?

### Steps to reproduce

1. get the image from library/gallery or capture it from camera(only front camera)
2. select and show it
3. all images are inverted like a mirror in IOS devices only are inverted

### Expected results

The image must be the same as placed in the gallery or captured by camera using the front camera.

### Actual results

Images are inverted in IOS when choosing from library/gallery using ImagePicker().pickImage(ImageSource.gallery) or captured by camera using ImagePicker().pickImage(ImageSource.camera).

### Code sample

ImagePicker().pickImage(source:text == StringConstants.loadFromLibrary ? ImageSource.gallery : ImageSource.camera).then((value) async {
if (value != null) {
List imageBytes = File(value.path).readAsBytesSync();
String _base64Image = base64Encode(imageBytes);
}
}).onError((err, stackTrace) {
debugPrint(err.toString());
});

### Screenshots or Video

 Screenshots / Video demonstration

[Upload media here]

### Logs

 Logs

console
[Paste your logs here]

### Flutter Doctor output

Flutter (Channel stable, 3.16.7, on Microsoft Windows [Version 10.0.19044.3086], locale en-US)
• Flutter version 3.16.7 on channel stable at D:\dev\projects\flutter
• Upstream repository URL
• Framework revision URL (3 months ago), 2024-01-11 15:19:26 -0600
• Engine revision 4a585b7929
• Dart version 3.2.4
• DevTools version 2.28.5

Note: the bug is only generating in case of front camera images that are placed in gallery or captured from camera.

When taking selfie in native camera at on Android devices, they are correcting the mirror effect, this is a useful feature to be baked into the `camera` package instead of modifing the image using `Transform` widget
Thanks for the issue!


Question: residual and capacity do not have the value returned by the API?

### Mark

Peugeot

### Model

e208

### Year

2020

### Engine

Electric

### Remote service

E-remote control

### HomeAssistant version

last

### Integration version

last

### What happened?

Hi, I think there is a problem with the display of battery capacity and remaining values.
the percentage does not correspond to the displayed values either

API log :
'preconditioning': {'airConditioning': {'createdAt': '2025-08-19T06:47:53Z', 'updatedAt': '2025-08-19T06:47:53Z', 'status': 'Disabled'}}, 'energies': [{'createdAt': '2025-08-10T02:12:28Z', 'type': 'Electric', 'subType': 'ElectricEnergy', 'level': 41.0, 'autonomy': 160, 'extension': {'electric': {'battery': {'load': {'createdAt': '2025-08-10T02:12:28Z', **'capacity': 46176, 'residual': 18688}},** 'charging': {'plugged': False, 'status': 'Disconnected', 'chargingRate': 0, 'chargingMode': 'No', 'nextDelayedTime': 'PT22H5M', 'schedule': []}}}}], 'preconditionning': {'airConditioning': {'createdAt': '2025-08-19T06:47:53Z', 'updatedAt': '2025-08-19T06:47:53Z', 'status': 'Disabled'}}, 'energy': [{'createdAt': '2025-08-10T02:12:28Z', 'updatedAt': '2025-08-19T06:47:53Z', 'type': 'Electric', 'level': 41.0, 'autonomy': 160, 'charging': {'plugged': False, 'status': 'Disconnected', 'chargingRate': 0, 'chargingMode': 'No', 'nextDelayedTime': 'PT22H5M'}}]}

integration value in yellow :

### Log output

shell

Unfortunally stellantis dont provide the specific type of hybrid.
The only way is to remove capacity and residual for all hybrids on next release.


Question: Receive from dashboard?

As a fast-follow for send, we need to design a way to handle "Send" & "Receive" as global action.
This issue is about the Receive part that is delivered separately.

AC:
- User is able to trigger receive from homepage
- User is able to choose or create new account for receiving

Designs: URL

Missing Cardano Send feature is something that has to be handled here. And even if we unblock the ADA send and implemented, it will probably be available only on 2.8.7 FW and not older (since the ADA send flow has been changed in that version). URL


Question: None or multiple MFA types potentially break login flow?

This needs investigation to replicate, but there is a possiblity that if:

A user has no MFA setup on their amazon account, they will be prompted to set it up after a successful login. Which breaks the flow.

A user has multiple forms of MFA setup on their amazon account, they might be presented with a different version of the MFA form. Which breaks the login flow.

@mmstano when you say you cleared cookies and history - I meant the ones the server application (the add-on) stores, not your browsers. Perhaps a misunderstanding there because I said cookies, because that's what I called one of the files it generates haha. Probably a poor choice of words on my part.

I'm not sure if Home Assistant will remove an add-ons persisted data when the add-on is removed tbf. But worth checking just incase. It might keep the data around so it's all still there should you decide to activate the add-on again.

But yea, the server add-on tells HA to store some files it needs for future reference. One of them is a config.json file and the other is a cookies.json file. The former stores server settings, the latter stores your authenticated browser session with amazon.

Probably a red herring, but something to check out in the mean time until I get chance to try and replicate this.

Those errors look chromium related, and not our errors, just output logs from chromium itself. That "not authenticated" error is likely referring to something else.

I will try and replicate later, but I don't have windows I'm afraid 😅 .

If I really can't replicate it, the nuclear option would be to get together on discord or something and do a screenshare, fiddle with some code and see if we can discover what the hell is going on.


Question: Canonical URL not added with default configuration?

With a new install of the Metatag 1.22.5 and default settings...

Under "Advanced Tags" for "Global" and "Content", the following token is set for "Canonical URL":

`[current-page:url:absolute]`

Since a token is is provided for the canonical url field by default, I would expect to see

` `

In the head of all pages. However, no rel canonical tag is inserted.

Note that if "Always output canonical, shortlink, and generator meta tags" is enabled in Metatag master settings, a canonical tag _is_ inserted.

Reproducible with Backdrop 1.24.1 and Metatag 1.22.5.

Perhaps I am misunderstanding expected behavior?

I checked metatag's handling of `#attached` and it looks like it already works correctly. There was a separate issue with Canonical not working #109, but with that issue fixed I have confirmed that the HTTP `Link` header already works properly. The `X-Generator` header is another example of a metatag that exists both in HTML and in the HTTP header. I added test coverage for both in a PR at URL

So in summary to fix this issue, I think we need to do both of these things:

1. Merge URL to make `schema_metatag` act like other metatags.
2. Merge URL which includes @dgbruns's fix and test coverage.


Question: SchemaOf returns undefined-able type for a required array?

I need to verify that my schema match array of strings, so I use [`yup.SchemaOf `]( URL but when I try to validate using this schema or InferType from it, it returns me `string[] | undefined`. I can't understand where this `undefined` comes from:

js
const schema: yup.SchemaOf = yup.array().of(yup.string().required()).required();
type MyType = yup.InferType ;

Expected result: `type MyType = string[]`
Actual result: `type MyType = string[] | undefined`

I provided this simplified example, but this happens not only with array of strings, but with any arrays, including arrays in object attributes.

Note: if I don't use SchemaOf annotation, it works as expected:

js
const schema = yup.array().of(yup.string().required()).required();
type MyType = yup.InferType ; // type MyType = string[]

(but that way I can't guarantee that validation schema produce objects that match types defined in my application)

Yup version: 0.32.11
NodeJS version: 16.15.0
TypeScript version: 4.6.4

It became pretty annoying so I appreciate any feedback. Thank you!

Yes, strict nulls is a required typescript setting for types to work, as mentioned in the docs


Question: [google_maps_flutter] Google maps overlay?

I would like to display an image in overlay at given lat-log positions on Google map using Flutter. I am using flutter package google_maps_flutter: ^2.2.1, at present the package does not provide to implement the feature .

@UDAYBIDKAR did some great work on this in URL but unfortunately isn't available to finish the work. If anyone would like to build on their great contribution and take it to the finish line, that would be great — there's just some review comments to address (see the PR for details).


Question: left right assertion failures on intel/nvidia hybrid gpu laptop.

Hi! I tried running wl-screenrec on my hardware but I consistently get the following errors on both my NVIDIA card and my integrated intel gpu:

bash
❯ ./wl-screenrec --dri-device /dev/dri/renderD129 -v
Using output eDP-1
[file @ 0x564a68e9ce00] Setting default whitelist 'file,crypto,data'
[AVHWDeviceContext @ 0x564a68e9d340] libva: VA-API version 1.18.0
[AVHWDeviceContext @ 0x564a68e9d340] libva: Trying to open /usr/lib/dri/iHD_drv_video.so
[AVHWDeviceContext @ 0x564a68e9d340] libva: va_openDriver() returns -1
[AVHWDeviceContext @ 0x564a68e9d340] libva: Trying to open /usr/lib/dri/i965_drv_video.so
[AVHWDeviceContext @ 0x564a68e9d340] libva: va_openDriver() returns -1
[AVHWDeviceContext @ 0x564a68e9d340] Failed to initialise VAAPI connection: -1 (unknown libva error).
thread 'main' panicked at 'assertion failed: `(left == right)`
 left: `-5`,
 right: `0`', src/avhw.rs:34:13
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
[AVIOContext @ 0x564a68e9d180] Statistics: 0 bytes written, 0 seeks, 0 writeouts

If anyone can provide some context as to why this is occurring, I'd love to dig in deeper and provide more information.

Fixed the timing issues, which includes mp4 timing, so it should work without jank.

I'm going to close this issue, if you still see the frame corruption issues open a new issue. Thanks for all the help guys!


Question: 🚀 Feature: publish: :push action?

### 🔖 Feature description

add publish:\ :push to the list of built-in action

### 🎤 Context

As a user who adding API (or any other component) to my service catalogue - I want to have the option to do this via UI.
Creating a new git repository for each new entity seems wasteful, so I want to have a single repository for all configs.
Creating yaml files manually and registering them via a direct link is tiring.
I want to push a new yaml file directly to the branch and be able to register entity in catalog immediately after creation.

template example:

 steps:
 - id: fetch-base
 name: Fetch Base
 action: fetch:template
 input:
 url: ./content
 values:
 name: ${{ parameters.name }}

 - id: publish
 name: Publish
 action: publish:github:push
 input:
 branch: master
 targetPath: some/path
 repoUrl: ${{ parameters.repoUrl }}

 - id: register
 name: Register
 action: catalog:register
 input:
 repoContentsUrl: ${{ steps['publish'].output.repoContentsUrl }}
 catalogInfoPath: 'some/path/catalog-info.yaml'

### ✌ Possible Implementation

_No response_

### 👀 Have you spent some time to check if this feature request has been raised before?

- [X] I checked and didn't find similar issue

### 🏢 Have you read the Code of Conduct?

- [X] I have read the Code of Conduct

### Are you willing to submit PR?

None

That's right.

Yep, spread them out to where they belong, and leave their management up to their respective owners.

I am again a bit confused by the wording "catalog repo". :) There should be no catalog repo. You should have catalog-info files spread out all across your version control system, and the catalog (the catalog SERVICE, running in your infrastructure) holds a list of URLs pointing to those files. It updates its internal state all the time, in the background, based on the contents of those files.

If an end user changes a catalog-info file in their own repo, that's already registered in the catalog backend, there's no more action to take. You don't re-register. A short while later, the updated info will just automatically be reflected in the catalog.


Question: Correção de Estilização na Página de Horóscopo?

Descrição: Esta tarefa foca na construção e implementação do conteúdo da tela do horoscopo do site, utilizando o design já estabelecido como referência.

figma: URL
documento: heavenly.pdf

Correção de estilo concluída e integrada à branch develop.
feature da tarefa: Feature/correcao estilo


Question: Tighten the definition of "column"?

The source map spec doesn't describe the units for columns -- just that they are zero-based. It turns out that Gecko uses UTF-16 code points, and that seems to be a common, but not universal, choice. It would improve the spec if it were explicit about the units.

I left a comment now on the tc39 proposal. I hope for now that Firefox reverts this behavior but the issue is known from our side. Since not all Firefox versions agree on the offset it's unfortunately a pretty frustrating situation right now that we do not want to try to make too many guesses about.


Question: Create a preprocessing step to use defaults, validate input data, and calculate flow partitions?

### Description

As in the Tulipa-OBZ-CaseStudy, we start with the bare minimum input data and then move on to the tables we need to create the model. Having these steps inside Tulipa will help improve the users' experience and avoid data that generates incorrect constraints (e.g., the flow partitions must be inferred from the asset partitions).

### Sub issues

- [ ] Create the minimum input data (mandatory) files/tables an user must provide
- [ ] Create a validation function to check #461
- [x] #1129
- [ ] #1052

Here's a version of the 1st one, the user workflow. It includes functions that don't exist, and I haven't followed the current situation of the workflow, but it should be enough to evaluate the solution.
Tulipa User Workflow-2.pdf


Question: Unify tagging for mirroring and release stages?

Related to URL

Currently both mirroring and release stage are tagging the same build commit with the same tag and pushing it to a remote (mirroring to `dotnet-security-partners/dotnet`, release to the public `VMR`). They are also using two different scripts to achieve this.

We should unify this step under one logic to guarantee that we don't accidently change only one of them in the future, resulting in a miss-match between what we published publicly versus what we handed off to partners.

We could utilize the Release CLI for this by just adding a single command and using it in both stages.

[Triage] Closing as a duplicate of URL Even though this issue was logged first, URL has more detail.


Question: Bug with Window Covers in Matter/SmartThings/Google Home Integration?

Here is how you can explain your issue on GitHub in English:

I have an issue with my window covers. These covers do not support percentage-based positioning; they only have commands for "up," "down," and "stop." To manage their state, I added a sensor that indicates whether they are open or closed.

I created a YAML configuration for these covers using the cover component with the generic platform.

On Homebridge and Home Assistant, everything works fine.

On Matter, SmartThings, or Google Home, the integration does not work properly.

However, when I use Google Home via the cloud, it works as expected.

It seems like the problem is specifically related to how the configuration or functionality is handled in Matter/SmartThings/Google Home locally.

volet_louis:
 friendly_name: "Volet Louis 2"
 position_template: "{{ (states('binary_sensor.lumi_lumi_sensor_magnet_aq2_opening_25') == 'off')|int * 100 }}"
 open_cover:
 service: cover.open_cover
 data:
 entity_id: cover.volet_louis
 close_cover:
 service: cover.close_cover
 data:
 entity_id: cover.volet_louis
 stop_cover:
 service: cover.stop_cover
 data:
 entity_id: cover.volet_louis

🤦

Can you confirm that google home is always in sync with "target position" instead of "current position" ?
We don't have target position in home assistant, right? At least I don't have it. So i could sync target position with current position, but doesn't really make sense...

For ALL covers? As I mentioned earlier:
Matter open = 0% and close = 100%
HA open = 100% and close = 0%

Therefore I am inverting. Can you test using "open cover" command (without percentage) to verify that it's REALLY inverted?

Yes, but users could be confused by it, when trying to set the position to 30% in GH 😀

But isn't that a problem of the integration. If the cover supports it, shouldn't it be part of the cover entity?
Anyway I am already using/used it for covers. I just need to re-add it for non-position-aware covers.

To make it clear:
I don't have a problem with device based bridge, it's just a matter of effort vs. available time at the moment 😀


Question: Brisanje nepremičnine?

Potrebovale bi pomoč pri brisanju nepremičnine. Kljub temu, da smo uredile, da ko izbrišemo nepremičnino, da se izbriše tudi komitent, nam še vedno javlja napako, da izbris ni mogoč, ker se v komitentu sklicujemo na nepremičnino, ki bi jo rade izbrisale.
Že v naprej hvala za pomoč!

Hvala za opombe, `requests` smo odstranili url-je smo pa naredili tako kot smo se menili na vajah.
Imamo še eno vprašanje glede `binder`-ja, ali moramo spremeniti oz. dodati še kaj za delovanje le-tega
(poleg povezave z _javnost_ na bazo).


Question: Change Some expression that not contribute with inclusive language or antiracist language?

### Summary

Hi community!

In the view Spam Filter when you are editing a domain.

change words
White List for Enabled
Black List for Disabled

In Spanish
Lista Blanca: Habilitada
Lista Negra: Deshabilitada

Captura de pantalla de 2022-03-25 20-23-59

Captura de pantalla de 2022-03-25 20-22-02

### Motivation

contribute to a non-racist language

### Additional context

_No response_

I don't think Mailcow is the right place for political discussions like this. While the intent may be laudable, it comes at a price in terms of clarity, brevity and unambiguity.

For example, replacing "whitelist" with "allow list" is ambiguous and unclear (you don't need to be on that list to be allowed to send mail) and "spam filter bypass list" is lengthy and not completely clear either.

There do not appear to be alternative terms in widespread use (Exchange has "safe senders", Gmail doesn't even have that feature), and as a small mail server platform, we are not in the position to define new terms. We need to make it as easy as possible for people migrating from other platforms. Once Exchange, Yahoo, Gmail, etc. converge on a new name, we will happily adopt it.


Question: Better integration with UI library: ...register() to pass e.g. error, helperText?

**Is your feature request related to a problem? Please describe.**
Pardon me if I'm missing something, but it seems like a massive wasted opportunity not to let the register() function pass some additional props to the input component, such as in the case of MUI TextField `error` and `helperText`. Since it's already being spread anyway, it can just pass arbitrary props. Let me give an example. Currently our code looks like this:

jsx

That's a lot of boilerplate for every single input field, and our forms contain a lot of input fields. Given that DX is one of the goals of this project, I felt like this would be a great addition!

**Describe the solution you'd like**
Instead, the `register()` function passes `error` and `helperText` props to the component automatically. It already know we're dealing with the `first_name` here (because we pass that to `register()`) so it can use that to extract `error.first_name` and `errors.first_name.message`.

jsx

Of course, different UI libraries use different props for `error` and `helperText`. There would need to be some way to tell react-hook-form what UI library the project is using so it can figure out which props to pass. Ideas? Also the `register()` function would need to be nicely typed so that you can spread it to your input component without unknown props errors.

**Describe alternatives you've considered**
The alternative is to pass those props manually, which is error-prone, increases the SLOC of your component and thus decreases readability, and is just a waste of time for the developer.

<img width="613" alt="image" src=" URL

It's working because there is no type check.


Question: Column access to tables?

With #17 we have defined a simple table structure, but we have no simple way to get a numpy array of the columns, for instance, we might hope to be able to get

python
child_left = TableCollection.intervals.child_left

Or even set a whole column:

python
TableCollection.intervals.child_left = child_left +1

(we can't even do the latter in tskit, though)

The two example tests in test_tables.py should show you (a) how to use fixtures (e.g. if you want to import a standard GIG for testing in multiple tests) and (b) how to use `@pytest.mark.parametrize` to test a range of parameter values. Both of these are useful idioms.


Question: Password presence validation bizarre behaviour?

User model

ruby
class User true

found_user = User.last
found_user.update!(name: "Other", password: "")
# => Validation failed: Password can't be blank (ActiveRecord::RecordInvalid)

More info on:
Why would `has_secure_password` suppress password validation on update, but only if the object is newly created?

May I ask this behaviour is intended or it's a bug?

I don't think the problem is on those conditionals. `''` is empty so the password_digest would not be updated. The validation doesn't fail because the digest is still the same as before and no changes to the database will be made.

We have a test for it
 URL So an empty password doesn't change the current password so it is still valid.

If I remember correctly we tried to fix this before and I'm almost sure there is a reason for this behavior. But please investigate.


Question: Support for setting an alternate subscriptionId as a resource parameter?

### Is there an existing issue for this?

- [X] I have searched the existing issues

### Community Note

* Please vote on this issue by adding a :thumbsup: reaction to the original issue to help the community and maintainers prioritize this request
* Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
* If you are interested in working on this issue or have submitted a pull request, please leave a comment

### Description

Currently in order to support multiple subscriptions, one needs to specify multiple aliases as different providers, since currently the azurerm provider has a 1-to-1 relationship between the authentication credentials and subscriptions.

However, from an Azure API perspective, the relationship between authentication credentials and subscriptions is actually a 1-to-N.

The main drawback of the current method used by azurerm is that the subscriptionIds must be known beforehand (to be declared); therefore it's not possible to work with multiple dynamic subscriptions, at least not without the usage of an external helper to declare them as provider aliases directly in the TF files.

My proposal is to allow any resource to specify an alternative subscriptionId (different from the one specified within the provider block) as part of the resource parameters.

This way, subscriptions can be created/updated/destroyed dynamically, and their values could be reused to populate such this resource parameter.

### New or Affected Resource(s)/Data Source(s)

azurerm_*

### Potential Terraform Configuration

hcl
provider "azurerm" {
 client_id = "nono"
 client_secret = "nono"
 subscription_id = "XXX"
 tenant_id = "nono"
}

# Sample resource using the default subscription (coming from provider block)
resource "azurerm_private_dns_zone" "zoneXXX" {
 name = "XXX.domain"
 resource_group_name = azurerm_resource_group.xxx.name
}

# Sample resource using the custom subscription
resource "azurerm_private_dns_zone" "zoneYYY" {
 name = "YYY.domain"
 subscription_id = "YYY"
 resource_group_name = azurerm_resource_group.yyy.name
}

### References

_No response_

@bhupinder-azenix Can you use the provider alias of `subscriptionA` to create this resource and assign whatever you have in `${data.azurerm_client_config.this.subscription_id}` as `subscription_id`? That should be equivalent to above azapi config.


Question: Can we disable the Outlook warning when add-in closes the message from ItemSent event?

Last week when using our add-in we started seeing this warning when our add-in tries to close a message being composed:

Image

Our add-in retrieves all the information of a message to later send it using the Graph API. Before it was seamless for the users, but now we are getting a lot of confusion from our users since they don't know if they should close the message or cancel. Also if they cancel our service will still send the message, but the draft isn't deleted and that creates even more confusion.

We were wondering if there was a way to disable this feature in the user's mailbox or disable the feature entirely in our add-in ?

Please take note that this warning was not there earlier last week and that it only happens when the `Office.context.mailbox.item.close()` line is executed from the `ItemSent` event. The mailbox item is closed without warning if called from a side panel.

Here is a code example:

XML:

...

...

OnSendHandler function:

function onSendHandler(event){
 //Process de data in the body
 ...

 //Close mailbox item to later be sent
 Office.context.mailbox.item.close() //Warning is triggered since the event based activation was from ItemSent
}

**Edit**

I tried the `closeAsync` function with `discardItem: true`:

mailboxItem?.closeAsync({ discardItem: true }, result => {
 console.log(result);
});

I don't get the previous close warning and the mailbox item is getting closed successfully, but now I get a new warning:

Image

I think again this message is linked to the `ItemSent` event and just to add, it says that the `email was moved to the Drafts folder`, but no drafts are present for the message that was closed.

Is there a way to disable this new warning with the `ItemSent` event ?

Hi @victorcalarasu

Thank you for providing the logs.
I can see repeated POST requests to " URL
".
This endpoint if for Telemetry collection.
NO_AUTH also suggests that requests are unauthenticated.
Is the add-in explicitly sending excessive analytics data using Office.js APIs? You may re-try disabling them.


Question: Is there any way to bypass CSP?

Related to URL
Is there any way to bypass cross-origin objects?
Because this code

js
document.querySelector('iframe[title="Основное содержание испытания hCaptcha"]').contentWindow.document

returns `Uncaught DOMException: Permission denied to access property "document" on cross-origin object`.
Same in playwright:

python
captcha = await page.wait_for_selector('iframe[title="Основное содержание испытания hCaptcha"]')
frame = await captcha.content_frame()

Exception:

js
ElementHandle.content_frame: Protocol error (Page.describeNode): error in channel "content::9/13/2": exception while running method "describeNode" in namespace "page": Permission denied to access property "docShell" on cross-origin object _describeNode@chrome://juggler/content/content/PageAgent.js:417:62
_onMessageInternal@chrome://juggler/content/SimpleChannel.js:237:37
_onMessage@chrome://juggler/content/SimpleChannel.js:194:12
bindToActor/actor.receiveMessage@chrome://juggler/content/SimpleChannel.js:39:44
playwright._impl._errors.Error: Protocol error (Page.describeNode): error in channel "content::9/13/2": exception while running method "describeNode" in namespace "page": Permission denied to access property "docShell" on cross-origin object _describeNode@chrome://juggler/content/content/PageAgent.js:417:62
_onMessageInternal@chrome://juggler/content/SimpleChannel.js:237:37
_onMessage@chrome://juggler/content/SimpleChannel.js:194:12
bindToActor/actor.receiveMessage@chrome://juggler/content/SimpleChannel.js:39:44

Methods like `bounding_box()` work and return everything correctly, but `page.mouse.click(x, y)` on iframe coordinates also doesn't work

Hello,

I figured out that reason this issue doesn't happen when using the route solution is because headers aren't being passed to `route.fulfill`.

python
async def handle_route(route):
 response = await route.fetch()
 await route.fulfill(
 body=await response.body(),
 headers=response.headers,
 status=response.status
 )

Specifically, the reason Turnstile passes is due because the `Cross-Origin-Opener-Policy` (or COOP) header is being removed. Seems like Playwright's click function does not support the latest security changes in FF133+.

A workaround for this could be to use this preference which disables COOP from being handled:

python
firefox_user_prefs={
 'browser.tabs.remote.useCrossOriginOpenerPolicy': False,
}

However, this could potentially be detected by anti-bots, though I haven't seen this used in a production environment (all of the Camoufox testing sites still pass). I will consider adding a COOP toggle in the Python library until Playwright bumps to FF133+ 👍


Question: NuGet publishing?

Publish our OSS packages to NuGet. Individual issues for the same: URL URL URL

First steps:

- Set up the NuGet publishing with GitHub Actions of URL and URL These will then at a later point serve as models for the rest.
- These two projects are special, and thus cover all important use cases, because Helpful Extensions depends on Helpful Libraries, and Helpful Libraries contains three csprojs that all need to be published (either as separate packages or one; perhaps the former because other projects may not depend on all of them).
- We're developing such OSS projects as part of this OSOCE solution. In other projects of ours we use them as submodules too, so consuming and improving them is easier. We'll keep this, thus we need some way for this to not clash with NuGet references.

Some criteria to keep in mind:

- We can handle the whole thing from a build in OSOCE too somehow, it needn't be for each project, if it makes things easier.
- Currently, we have about 30 projects that we'd like to publish to NuGet. This already necessitates the ability to manage NuGet publishing somehow centrally in a DRY manner (apart from credentials that can be stored in GitHub secrets) but we'll likely have many more. So, a solution where we need to maintain a pipeline in each of these repositories would be an issue

@scleaver @deanmarcussen it might be interesting for you what we've progressed with Node.js Extensions here. While we don't have the full functionality of Gulp Extensions yet, we actually have an NPM script-containing NuGet package working!


Question: [LLD] symbol not found with PROVIDE script?

I tried the following code. I expect lld to link successful while also removing unused symbols, but it reports `symbol not found: bar`.

a.s:

asm
.global _start
_start:
 nop
.section .text.foo,"ax",@progbits
.global foo
foo:
 nop
.section .text.bar,"ax",@progbits
.global bar
bar:
 nop

script.t:

PROVIDE(foo = bar);

commands:

bash
llvm-mc -filetype=obj -triple=x86_64 a.s -o a.o
ld.lld -o a_gc a.o --gc-sections -T script.t

output:

ld.lld: error: script.t:1: symbol not found: bar
ld.lld: error: script.t:1: symbol not found: bar
ld.lld: error: script.t:1: symbol not found: bar

cc @MaskRay ebb326a51fec37b5a47e5702e8ea157cd4f835cd

I have read the related code, maybe we need to add this symbol to the symbol table. Or change the code like this:

diff
diff --git a/lld/ELF/ScriptParser.cpp b/lld/ELF/ScriptParser.cpp
index 3febcfb87da4..44185c282ad7 100644
--- a/lld/ELF/ScriptParser.cpp
+++ b/lld/ELF/ScriptParser.cpp
@@ -1660,10 +1660,11 @@ Expr ScriptParser::readPrimary() {
 tok = unquote(tok);
 else if (!isValidSymbolName(tok))
 setError("malformed number: " + tok);
- if (activeProvideSym)
+ if (activeProvideSym) {
 ctx.script->provideMap[*activeProvideSym].push_back(tok);
- else
- ctx.script->referencedSymbols.push_back(tok);
+ return [] { return 0; };
+ }
+ ctx.script->referencedSymbols.push_back(tok);
 return [=, s = ctx.script] { return s->getSymbolValue(tok, location); };
 }

However, I'm not familiar with this part of the code.

In any case, I believe the upstream backport is likely to miss our backport process. I'm reverting this commit to our fork LLVM.


Question: [Impeller] Flaky impeller golden test in the engine?

After URL there appears to be a flaky golden file test in the engine that is blocking other PRs from landing (example: URL

Screenshot 2023-04-05 at 4 48 25 PM

The individual dots to the right show different colors, meaning a unique image was generated for each commit.
This is with the fuzzy matching algorithm set for this test:

Screenshot 2023-04-05 at 4 51 07 PM

Also, it looks like this image is even flaking in post submit, because the same test is listed as untriaged on the main branch: URL

In the framework we have the tree go red if an unapproved image shows up in post submit, maybe the engine implementation should do the same.

cc @mdebbar @dnfield @chinmaygarde @gaaclarke

The main problem with the configuration file updates is there are a lot of places that end up needing this, and some of those places don't allow comments, and no one seems to have a good way to make sure we're covering all of them short of watching for a new failure to pop up.


Question: Migrating/Integrating WebCrypto (possibly WASM) instead of Node Forge Crypto?

### Specification

The work in #155 involving nativescript meant that we are starting to consider alternatives to Node forge crypto in order to standardise our crypto API and future proof to future JS-based platforms. There are number of reasons to look into webcrypto:

* WebCrypto is a standard across ES platforms, thus enabling more potential native-implementations which can improve performance and security (prevent timing attacks)
* WebCrypto API focuses on using ES-compliant buffers like `Uint8Array` and `ArrayBuffer` which can help us standardise our buffer usage across js-db, js-id, js-workers and more, especially as workers require `ArrayBuffer` to do zero-copy
* There is existing work with WebCrypto API involving WASM to plug in functionality that isn't supported by the standard, such as providing ed25519 keys, and this will help us resolve the usage of ed25519 #168
* The `node-forge` source code isn't well maintained and doesn't have as many eyes watching and evaluating its security

Now for some background:

This comment URL explains how we came to be using `node-forge` as opposed to other cryptographic libraries.

I know that when Polykey project first started, we initially were thinking of using PGP and thus the kbpgp.js library ( URL We ended up going away from PGP due to its limited usage in a number of scenarios that we want PK to deal with. Namely end to end encrypted network communication which is a TLS issue, that makes use of X.509 certificates rather than PGP certificates. Furthermore we also had symmetric encryption/decryption scenarios like js-encryptedfs that again would not make use of PGP standards. Therefore it just lacked interoperability with many other cryptographic scenarios, it seemed like its own island of standards, the library can still be brought back in in the future if we find usecases for PK using PGP.

However in choosing node-forge, we came across a few other problems. Mainly overall-cross platform compatibility planning for mobile devices. This is not just a problem with crypto, but also other libraries that are used in our `networking` domain such as utp-native.

Here are something I found that may be relevant to us proceeding here:

* The webcrypto standard ( URL is now the official standard for cryptographic operations in browser environments. It is now being supported by all major browsers and electron
* This webcrypto standard is now taking over other deployment platforms such as in Nodejs: URL & URL
* As a standardised API, switching over to this API gives us more cross-platform opportunity as the rest of the world's development ecosystem catches up and migrates over to webcrypto standard.
* In particular are nativescript and react-native ecosystems. Currently none of them have official crypto APIs, they expect the developer to use underlying native iOS or Android crypto APIs.
* However I found out that the GUN project URL claims to be able to use webcrypto on react-native and other platforms.
* It does this through a "webview" trick. Basically this hooks into the browser runtimes that are on iOS and Android to perform the actual crypto and then return the results back to the main application. I have no idea about the performance characteristics of this trick. This trick is described here: URL and URL
* The usage of webcrypto libraries is pioneered by "PeculiarVentures" which has these main libraries:
 - URL - this could be an alternative to node-forge for all of our PKI/X.509 and TLS related functionality (previously it was claimed this was overly complex compared to `node-forge`)
 - URL - this is a generic polyfill for webcrypto, not entirely sure how it wraps the native webcrypto inside nodejs or if smooths over the differences, there is a discussion about this library in relation to other webcrypto polyfills targeting nodejs URL because this is also mentioned with respect to the webview trick, there may also be a relationship between the webview trick and this polyfill
 - They have many other crypto related libraries that we should investigate

All of this will mean that we either replace node-forge, or end up creating a adapter pattern where we plugin different crypto implementions depending on our environment. At this point in time, the `keys` domain abstracts over most(all?) crypto operations for all other domains. Except in the case of EFS which is currently pinned to `node-forge` (it may be a good idea to abstract that and expect an interface of functions for EFS).

Cross platform compatibility here isn't just about the fundamental crypto library. It's also about other parts of PK. One closely related situation is the JOSE libraries. As they involve cryptographic operations, they currently seem to "fix" their underlying crypto library as well. It would be ideal that if we standardise on a crypto library for cross-platform deployment, that we can also ensure that our JOSE library is using the same crypto library to reduce our crypto attack surface. We are currently using URL which uses native crypto depending on the platform including webcrypto. Contenders include URL (which fixes on node-forge) and URL

### Additional context

* URL - js-id also should be using WebCrypto
* #155 - will impact NativeScript deployment
* URL - can help make use of the migration to `ArrayBuffer` and typed arrays
* WebAssembly resources
 - There are 2 well supported runtimes for WASM:
 * wasm3 - supports interpretation
 * wasmer - supports JIT and AOT compilation
 - URL
 - URL
 - URL
 - URL - This describes how to use webcrypto together with webassembly when you need a custom crytographic functionality not supported inside webcrypto.
 - URL
 - URL and URL

Wasmer can compile WASM code to native code. But wasm3 is for interpretation. Why use interpetation?

It appears that in some cases interpretation can be more widely deployed. There are examples of iOS apps using wasm3. URL

It's becoming fast a standard target for many languages. Even TypeScript when ported to AssemblyScript can be compiled to WASM.

Once it is WASM, the only thing missing is broad adoption of WASI. If WASI is broadly adopted like it is in nodejs ( URL then pretty much we have a universal portable binary capable of doing relevant system operations. WASI is like a universal standard of system calls. Like a whole new POSIX standard.

Then one would just use WASM and WASI for all platforms.

### Tasks

1. ...
2. ...
3. ...

We decided not to bother with preventing resource starvation, however an idea is like this.

1. Take advantage of DB's natural key ordering.
2. Create a bimap index of Priority/Timestamp -> Task Id AND Timestamp/Priority -> Task Id
3. Now we can iterate task ids based on 2 compound indexes: highest priority + earliest timestamp AND earliest timestamp + highest priority
4. Use dynamic programming/kinetic priority function that iterates through both sublevels (indexes) simultaneously to fill up a fixed concurrency pool (if unlimited, this policy is unnecessary, just iterate through as fast as posssible)

Simultaneous iteration that uses the timestamp to weight the priority, where the timestamp delta starts from 0 and goes towards infinity. Once could say that this multiples the priority based on a "rate". A delta of 0 multiplies by 1. A delta of infinity multiplies by infinity. Therefore the rate produces a multiplier between 1 to infinity.


Question: spire-agent gets OOMKilled after pod restart?

* **Version**: up to 1.8.6
* **Platform**: Linux 6.5.0-26-generic 26~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Tue Mar 12 10:22:43 UTC 2 x86_64 GNU/Linux
* **Subsystem**: agent

When I delete a spire-agent pod in the cluster, it becomes unstable, the container gets `OOMKilled` a couple of times before becoming stable.

These are the resource settings currently:

 Limits:
 cpu: 1
 memory: 570Mi
 Requests:
 cpu: 800m
 memory: 512Mi

There is only a warning about a container ID that is not found at attestation then the agent exits with reason `OOMKilled`.

time="2024-04-11T13:40:53Z" level=warning msg="Current umask 0022 is too permissive; setting umask 0027"
time="2024-04-11T13:40:53Z" level=info msg="Starting agent with data directory: "/run/spire/temp""
time="2024-04-11T13:40:53Z" level=warning msg="Agent is now configured to accept remote network connections for Prometheus stats collection. Please ensure access to this port is tightly controlled" subsystem_name=telemetry
time="2024-04-11T13:40:53Z" level=info msg="Plugin loaded" external=false plugin_name=k8s_psat plugin_type=NodeAttestor subsystem_name=catalog
time="2024-04-11T13:40:53Z" level=info msg="Plugin loaded" external=false plugin_name=memory plugin_type=KeyManager subsystem_name=catalog
time="2024-04-11T13:40:53Z" level=info msg="Plugin loaded" external=false plugin_name=k8s plugin_type=WorkloadAttestor subsystem_name=catalog
time="2024-04-11T13:40:53Z" level=info msg="Bundle loaded" subsystem_name=attestor trust_domain_id="spiffe://infra"
time="2024-04-11T13:40:53Z" level=info msg="SVID is not found. Starting node attestation" subsystem_name=attestor trust_domain_id="spiffe://infra"
time="2024-04-11T13:40:53Z" level=info msg="Node attestation was successful" rettestable=true spiffe_id="spiffe://infra/spire/agent/k8s_psat/infra-cluster/890be4ad-1618-4379-9bc9-c54bb55223d5" subsystem_name=attestor trust_domain_id="spiffe://infra"
time="2024-04-11T13:40:53Z" level=info msg="Renewing X509-SVID" entry_id=28908b2f-d02b-4269-8ecf-de78d350bf5d spiffe_id="spiffe://infra/ns/infra/pod/nsmgr-72bjt" subsystem_name=manager
time="2024-04-11T13:40:53Z" level=info msg="Renewing X509-SVID" entry_id=deaeb5c6-ab93-4851-88c5-e13497486f09 spiffe_id="spiffe://infra/ns/infra/pod/forwarder-vpp-xgbgq" subsystem_name=manager
time="2024-04-11T13:40:53Z" level=info msg="Renewing X509-SVID" entry_id=610ecd0f-e2c9-4e38-922d-9e325a3dd6cb spiffe_id="spiffe://infra/ns/cndsc3/pod/proxy-vpn1-6vkn4" subsystem_name=manager
time="2024-04-11T13:40:53Z" level=info msg="Renewing X509-SVID" entry_id=0415f6a1-240c-49b3-8215-7e337bcead79 spiffe_id="spiffe://infra/ns/cndsc3/pod/proxy-vpn2-pvb7p" subsystem_name=manager
time="2024-04-11T13:40:53Z" level=info msg="Renewing X509-SVID" entry_id=0d2837cb-9aa8-4189-b2d7-c3ddeb4ee587 spiffe_id="spiffe://infra/ns/cndsc3/pod/stateless-lb-frontend-attr-vpn2-5444c987npdbt" subsystem_name=manager
time="2024-04-11T13:40:53Z" level=info msg="Renewing X509-SVID" entry_id=cfdb2a8a-e340-4cef-8d3f-8944af4e4758 spiffe_id="spiffe://infra/ns/cndsc3/pod/fdr-fdcb9f8f6-tqqcj" subsystem_name=manager
time="2024-04-11T13:40:53Z" level=info msg="Renewing X509-SVID" entry_id=14d49a0a-2b58-4a7c-a0de-551df85d2fc1 spiffe_id="spiffe://infra/ns/infra/pod/registry-k8s-5cc46b8bbf-bk6wc" subsystem_name=manager
time="2024-04-11T13:40:53Z" level=info msg="Starting Workload and SDS APIs" address=/run/spire/sockets/agent.sock network=unix subsystem_name=endpoints
time="2024-04-11T13:40:53Z" level=warning msg="Container id not found" attempt=1 container_id=0c2c4b591c6e68635a6cfff55c91a90244bfb85c2091d0f43874785ff39789a7 external=false plugin_name=k8s plugin_type=WorkloadAttestor pod_uid=1f39d257-6173-4a4e-ac25-3706dd13db63 retry_interval=500ms subsystem_name=catalog
2024-04-11T13:40:58.743 Agent exit code: 137

As it can be seen on this graph, the average memory consumption is always below 200Mi but after restart there is a spike that causes the container restart:
spire-agent-oomkilled

Can you please help to understand if this behavior is normal? Is there any other way than further increasing the memory resource limit to make it stable?

Yes, @Rishikesh01. That is the correct package for the Kubernetes workload attestor code.


Question: Sokol-shdc segfaults with glsl:100 because of variable shadowing?

The shader:

glsl
@module threedee

@vs vs
in vec3 pos_in;
in vec2 uv_in;

out vec3 pos;
out vec2 uv;
out vec4 light_space_fragment_position;

uniform vs_params {
 mat4 model;
 mat4 view;
 mat4 projection;
 mat4 directional_light_space_matrix;
};

void main() {
 pos = pos_in;
 uv = uv_in;

 vec4 frag_pos = view * model * vec4(pos_in, 1.0);
 gl_Position = projection * frag_pos;

 light_space_fragment_position = directional_light_space_matrix * frag_pos;
}
@end

@fs fs
uniform sampler2D tex;
uniform sampler2D shadow_map;

in vec3 pos;
in vec2 uv;
in vec4 light_space_fragment_position;

out vec4 frag_color;

float decodeDepth(vec4 rgba) {
 return dot(rgba, vec4(1.0, 1.0/255.0, 1.0/65025.0, 1.0/16581375.0));
}

float calculate_shadow_factor(sampler2D shadowMap, vec4 light_space_fragment_position) {
 float shadow = 1.0;

 vec3 projected_coords = light_space_fragment_position.xyz / light_space_fragment_position.w;

 if(projected_coords.z > 1.0)
 return shadow;

 projected_coords = projected_coords * 0.5f + 0.5f;

 float current_depth = projected_coords.z;

 vec2 shadow_map_size = textureSize(shadow_map, 0);
 vec2 uv = projected_coords.xy * shadow_map_size;

 shadow = decodeDepth(texture(shadowMap, uv));

 return shadow;
}

void main() {
 vec4 col = texture(tex, uv);
 if(col.a < 0.5)
 {
 discard;
 }
 else
 {
 vec3 light_dir = normalize(vec3(1, -1, 0));

 float shadow_factor = 1.0;//In percentage of light remaining, i.e. 1.0 full-bright, 0.0 fully shadowed
 shadow_factor = calculate_shadow_factor(shadow_map, light_space_fragment_position);

 frag_color = vec4(col.rgb*shadow_factor, 1.0);
 }
}
@end

@program program vs fs

I just implemented a fix to communicate the SPIRVCross error message instead of just crashing in branch `storage-buffer`. In case of your example shader the error message isn't very helpful, but better than nothing I guess:

/Users/floh/projects/sokol-tools/test/issue_86.glsl:0:0: error: SPIRVCross exception: Access chains that result in an array can not be flattened

Unfortunately I don't get line information back from SPIRVCross, only an error message. Closing this ticket (even though the fix isn't in the master branch yet).


Question: [iOS] "Original error: Command '/usr/bin/python' not found" appear when use setLocation of a iOS Emulator on MAC Apple Silicon (M1)?

## The problem

When I call setLocation function appium return error "Original error: Command '/usr/bin/python' not found" and break test.
<img width="820" alt="Screen Shot 2022-08-08 at 23 10 18" src=" URL

## Environment

* Appium version (or git revision) that exhibits the issue: **Appium 1.22.3**
* Last Appium version that did not exhibit the issue (if applicable): **N/A**
* Desktop OS/version used to run Appium: **macOS Monterey 12.5 - M1Pro**
* Node.js version (unless using Appium.app|exe): **v18.7.0**
* Npm or Yarn package manager: **npm**
* Mobile platform/version under test: iOS 15.5
* Real device or emulator/simulator: XCode Emulator
* Appium CLI or Appium.app|exe: Appium.app

## Details
The error appear when I hit command:
`driver.setLocation(new Location(0,0,0));`

## Link to Appium logs
Gist

## Code To Reproduce Issue [ Good To Have ]
`driver.setLocation(new Location(0,0,0));`

Newer versions are available via appium 2. You can get it via npm as `appium@next`.


Question: Compressed, chunked response inhibits connection reuse?

rust
env_logger::init();
let agent: Agent = ureq::AgentBuilder::new().build();
for _ in 0..2 {
 let resp = agent.get(" URL
 println!("Connection: {}", resp.header("connection").unwrap());
 std::io::copy(&mut resp.into_reader(), &mut io::sink()).unwrap();
}

results in (RUST_LOG=trace)

[2022-10-17T01:02:37Z DEBUG ureq::stream] connecting to www.jammersreviews.com:443 at 172.67.140.111:443
[2022-10-17T01:02:37Z DEBUG rustls::client::hs] No cached session for DnsName(DnsName(DnsName("www.jammersreviews.com")))
[...]
[2022-10-17T01:02:37Z DEBUG ureq::stream] created stream: Stream(RustlsStream)
[2022-10-17T01:02:37Z DEBUG ureq::unit] sending request GET URL
[2022-10-17T01:02:37Z DEBUG ureq::unit] writing prelude: GET /st-tos/s1/dagger.php HTTP/1.1
 Host: www.jammersreviews.com
 User-Agent: ureq/2.5.0
 Accept: */*
 accept-encoding: gzip
[2022-10-17T01:02:37Z DEBUG rustls::client::tls13] Ticket saved
[2022-10-17T01:02:37Z DEBUG rustls::client::tls13] Ticket saved
[2022-10-17T01:02:37Z DEBUG ureq::response] Chunked body in response
[2022-10-17T01:02:37Z DEBUG ureq::unit] response 200 to GET URL
Connection: keep-alive
[2022-10-17T01:02:37Z DEBUG ureq::stream] dropping stream: Stream(RustlsStream)
[2022-10-17T01:02:37Z DEBUG ureq::stream] connecting to www.jammersreviews.com:443 at 172.67.140.111:443
[2022-10-17T01:02:37Z DEBUG rustls::client::hs] Resuming session
[...]
[2022-10-17T01:02:37Z DEBUG ureq::stream] created stream: Stream(RustlsStream)
[2022-10-17T01:02:37Z DEBUG ureq::unit] sending request GET URL
[2022-10-17T01:02:37Z DEBUG ureq::unit] writing prelude: GET /st-tos/s1/dagger.php HTTP/1.1
 Host: www.jammersreviews.com
 User-Agent: ureq/2.5.0
 Accept: */*
 accept-encoding: gzip
[2022-10-17T01:02:37Z DEBUG rustls::client::tls13] Ticket saved
[2022-10-17T01:02:37Z DEBUG rustls::client::tls13] Ticket saved
[2022-10-17T01:02:37Z DEBUG ureq::response] Chunked body in response
[2022-10-17T01:02:37Z DEBUG ureq::unit] response 200 to GET URL
Connection: keep-alive
[2022-10-17T01:02:37Z DEBUG ureq::stream] dropping stream: Stream(RustlsStream)

As can be seen, though TLS does session resumption, the TCP stream gets closed and reopened between requests. I believe this is caused by the fact that the `GzDecoder` knows when to expect the end of the gzip stream, never tries to read beyond it, and therefore never makes the read that causes the `ChunkDecoder` to give it Ok(0), which is what the `PoolReturnRead` looks for to know when to return the `Stream` to its pool. I was able to get it to work properly by using a `MultiGzDecoder` instead of a plain `GzDecoder`, at least in my private, heavily-modified version of ureq. But I don't think any such thing is available for Brotli.

When we return the Stream to the pool, we can check that the `inner` `BufReader`'s buffer is empty.


Question: Signal UI does not show on Debian Forky unless run with "--disable-gpu"?

### Using a supported version?

- [x] I have searched searched open and closed issues for duplicates.
- [x] I am using Signal-Desktop as provided by the Signal team, not a 3rd-party package.

### Overall summary

Following me updating all my packages in apt yesterday, Signal's UI stopped working, the app would appear in my panel, and I'd get notifications, but no UI would show. Running signal-desktop with the --disable-gpu flag allows it to launch and work again. When running signal-desktop from the terminal, I can see a bunch of GPU errors. Since I can't get a debug log from the app directly due to it not launching, I've attached that terminal log to the debug log section

### Steps to reproduce

1. Run Debian Forky (with Wayland)
2. Install signal-desktop from Signal's official apt repo
3. Launch signal-desktop
4. UI fails to load

### Expected result

Expected result is for the UI to show.

### Actual result

Current result is the UI does not show at all.

### Screenshots

_No response_

### Signal version

7.78.0

### Operating system

Debian Forky with KDE Plasma 6.5.1 (Wayland)

### Version of Signal on your phone

_No response_

### Link to debug log

NODE_ENV production
NODE_CONFIG_DIR /opt/Signal/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME debian
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/ivy/.config/Signal
(node:16128) [DEP0180] DeprecationWarning: fs.Stats constructor is deprecated.
(Use `signal-desktop --trace-deprecation ...` to show where the warning was created)
[16403:1107/160301.991707:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=SCANOUT
[16403:1107/160301.991816:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=GPU_READ
[16403:1107/160301.991866:ERROR:gpu/command_buffer/service/shared_image/shared_image_factory.cc:931] CreateSharedImage: could not create backing.
[16403:1107/160301.991926:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=SCANOUT
[16403:1107/160301.991968:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=GPU_READ
[16403:1107/160301.992016:ERROR:gpu/command_buffer/service/shared_image/shared_image_factory.cc:931] CreateSharedImage: could not create backing.
[16403:1107/160301.992077:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=SCANOUT
[16403:1107/160301.992125:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=GPU_READ
[16403:1107/160301.992203:ERROR:gpu/command_buffer/service/shared_image/shared_image_factory.cc:931] CreateSharedImage: could not create backing.
[16403:1107/160301.992308:ERROR:gpu/command_buffer/service/shared_image/shared_image_manager.cc:389] SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.
[16403:1107/160301.992388:ERROR:components/viz/service/gl/exit_code.cc:13] Restarting GPU process due to unrecoverable error. Context was lost.
[16128:1107/160301.999767:ERROR:content/browser/gpu/gpu_process_host.cc:964] GPU process exited unexpectedly: exit_code=8704
[16460:1107/160302.077249:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=SCANOUT
[16460:1107/160302.077328:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=GPU_READ
[16460:1107/160302.077377:ERROR:gpu/command_buffer/service/shared_image/shared_image_factory.cc:931] CreateSharedImage: could not create backing.
[16460:1107/160302.077417:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=SCANOUT
[16460:1107/160302.077453:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=GPU_READ
[16460:1107/160302.077485:ERROR:gpu/command_buffer/service/shared_image/shared_image_factory.cc:931] CreateSharedImage: could not create backing.
[16460:1107/160302.077530:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=SCANOUT
[16460:1107/160302.077563:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=GPU_READ
[16460:1107/160302.077593:ERROR:gpu/command_buffer/service/shared_image/shared_image_factory.cc:931] CreateSharedImage: could not create backing.
[16460:1107/160302.077638:ERROR:gpu/command_buffer/service/shared_image/shared_image_manager.cc:389] SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.
[16460:1107/160302.077689:ERROR:components/viz/service/gl/exit_code.cc:13] Restarting GPU process due to unrecoverable error. Context was lost.
[16128:1107/160302.084797:ERROR:content/browser/gpu/gpu_process_host.cc:964] GPU process exited unexpectedly: exit_code=8704
[16505:1107/160302.166760:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=SCANOUT
[16505:1107/160302.166840:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=GPU_READ
[16505:1107/160302.166882:ERROR:gpu/command_buffer/service/shared_image/shared_image_factory.cc:931] CreateSharedImage: could not create backing.
[16505:1107/160302.166925:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=SCANOUT
[16505:1107/160302.166963:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=GPU_READ
[16505:1107/160302.167005:ERROR:gpu/command_buffer/service/shared_image/shared_image_factory.cc:931] CreateSharedImage: could not create backing.
[16505:1107/160302.167047:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=SCANOUT
[16505:1107/160302.167084:ERROR:ui/ozone/platform/wayland/gpu/gbm_pixmap_wayland.cc:82] Cannot create bo with format= RGBA_8888 and usage=GPU_READ
[16505:1107/160302.167118:ERROR:gpu/command_buffer/service/shared_image/shared_image_factory.cc:931] CreateSharedImage: could not create backing.
[16505:1107/160302.167180:ERROR:gpu/command_buffer/service/shared_image/shared_image_manager.cc:389] SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.
[16505:1107/160302.167243:ERROR:components/viz/service/gl/exit_code.cc:13] Restarting GPU process due to unrecoverable error. Context was lost.
[16128:1107/160302.176041:ERROR:content/browser/gpu/gpu_process_host.cc:964] GPU process exited unexpectedly: exit_code=8704

Since this issue was opened, we started using `curve25519-n`, a native module. This should improve the performance of our curve25519 code by a lot.

Given that (and the fact that this issue has been inactive for over 3 years), I'm going to close. Happy to reopen if that's wrong.


Question: Some `cupyx.scipy.signal` APIs fall back to NumPy?

Some `scipy.signal` APIs depend on `numpy.eigvals`, which computes the eigenvalues of a general matrix. However, cuSolver only provides the eigenvalue solver of a symmetric (Hermitian) matrix but does not the one of a general matrix. Therefore, the `cupyx.scipy.signal` counterparts of such APIs are currently implemented by falling back to `numpy.eigvals` or `numpy.roots`, which calls `numpy.eigvals`.

Such APIs include:
- `cupyx.scipy.signal.findfreqs` #7641
- `cupyx.scipy.signal.tf2zpk` #7652
- `cupyx.scipy.signal.ss2tf` #7652

See:
- URL
- URL

Yes! The new routine was meant for CuPy and other projects to implement `eig` and `eigvals`.


Question: Inquiry Regarding LED Screen Procurement?

(Please excuse my limited English proficiency; this message was translated with AI assistance.)

Dear Author,

I am a DIY creator from China. While attempting to replicate your project, I encountered challenges in procuring the specific LED screen used. I would like to clarify the details of the LED panel you employed.

From your referenced project link (about driving an LED screen with a Raspberry Pi 4), it seems you used a screen with a P1.875 pixel pitch, a 128x64 array, and FM6126 driver chips. Is this accurate? (Note: This information might differ from your actual setup.)

If correct, manufacturers in China have informed me that FM6126-driven screens are discontinued. Could you provide guidance on driver alternatives? If your screen uses a different driver chip (which we sincerely hope is the case), please specify the chip model so we can source compatible panels from other suppliers.

Additionally, you shared a product link that directs to a flexible LED screen with a soft rubber base (now discontinued). However, your YouTube video appears to show a rigid screen. Did you actually use a flexible screen in your project?

Your assistance would be immensely valuable. Thank you very much!

I think you should step back and start again from an unmodified repo. If you daisy chain two 64x64 panels together, they should work as a single 128x64 panel. Both variants (vortex and rotovox) use two 128x64 panels, so we know that part works. If the image is the wrong way up, it's because the panels are the wrong way up.
You can't adjust the rotation of the image in the software. The orientation of the scan lines, and the order they're addressed, is fundamental to how the device works. It times its output to where the current scanline is physically located in space.

Vortex assumes two 128x64 panels arranged with horizontal scanlines, placed back to back. In this configuration, both panels have line 0 at the top, and line 63 at the bottom.

Rotovox assumes two 128x64 panels arranged vertically (with their scanlines vertical), and both facing the same way. One of the panels is upside down compared with the other. The point of this arrangement is to ensure that each corresponding scanline is at the same radius. Line 0 of both panels is closest to the axis, line 63 is furthest from the axis.

If you want to replicate one of these setups using four 64x64 panels, arrange them in two chains of 2, with each chain arranged so that their horizontal scanlines are aligned. Check that this works using `rpi-rgb-led` with no display transforms applied. The panels have to be side by side, the same way up, with scanline 0 extending across the top of both panels.
(If that doesn't work, check whether `--led-rows=64 --led-cols=64 --led-chain=2` behaves the same way as `--led-rows=64 --led-cols=128 --led-chain=1` - the assumption I'm making is that they're equivalent, but I've never tested that.)

If none of that helps, it may still be possible to use make a smaller display using the 64x64 panels without chaining.


Question: Add MiroTalk?

_Best of JS_ is for the most popular open-source projects related to the web platform and Node.js.

What is the URL of the project you'd like to add to _Best of JS_?

GitHub: URL
Demo: URL

Before submitting the request to add a new project, please check the following points:

- ✅ The project is related to the web platform or Node.js
- ✅ The project has more than 100 stars on GitHub
- ✅ The project has thorough documentation in English
- ✅ The project is not deprecated and actively maintained

How would this project be tagged? (Pick one or several existing tags from this list: URL

WebRTC, Websocket, Real-Time

Also you can suggest new tags to add if you think _Best of JS_ is missing useful tags.

self-hosted, sfu, p2p, web-app, video-conferencing, video-call, voip, streaming, file-sharing, screen-sharing, whiteboard

Hello @nitad54448,
What do you mean by `I get a certificate error` ?
If you using the MiroTalk SSL default certificates on: URL
At most the browser could tell you that it is an unknown certificate, you accept it and you can use Mirotalk in HTTPS.
I haven't tried caddy, I usually use Let's Encrypt for trusted certificates.
Regards


Question: Usage of NonBondedForce.setIncludeDirectSpace(False)?

Hi,

I've created a very simple test case where I have 3 Coulomb forces:

1) NonBondedForce with PME
2) CustomNonbondedForce of a Coulomb potential with PeriodicCutoff
3) NonBondedForce.setIncludeDirectSpace(False) with PME

So if I'm not mistaklen, Force1 should be the sum of Force2 and Force3

Force1 and Force2 has values that I would except. Force3 seems completely off though.

Is this a bug? or am I missing something?

Thanks!

test_includedirectspace.zip

Not exactly like that, but what you can do is have the NonbondedForce compute only the reciprocal space term. Do that by calling `setIncludeDirectSpace(False)`. Then you can use a CustomNonbondedForce to compute the direct space part, both Coulomb and LJ, in whatever way you want.


Question: [CoE Starter Kit - BUG] Audit Component Issue?

### Does this bug already exist in our backlog?

- [X] I have checked and confirm this is a new bug.

### Describe the issue

HI,

we are facing an issue in Audit component and would like to reinstall only audit component , can you please help me on this

### Expected Behavior

Post upgrade also , Flow is still show the old connectors in the flow

The flow is not upgraded and didn't change the connectors

### What solution are you experiencing the issue with?

Audit Log

### What solution version are you using?

3.3

### What app or flow are you having the issue with?

Admin | Sync Audit Logs

### What method are you using to get inventory and telemetry?

Cloud flows

### Steps To Reproduce

Post upgrade also , Flow is still show the old connectors in the flow

The flow is not upgraded and didn't change the connectors

### Anything else?

Post upgrade also , Flow is still show the old connectors in the flow

The flow is not upgraded and didn't change the connectors

You will need to hire someone that can sit with you to fix your situation then. Your environment is not in a state that I can assist in debugging remotely.

There are partners that specialize specifically in CoE Starter Kit, so you could reach out to them for assistance. You can find some via you can find them via AppSource

As a reminder, although the underlying features and components used to build the kit (such as Dataverse, admin APIs, and connectors) are fully supported, the kit itself represents sample implementations of these features. While we do our best to help people use them as is, they are not a supported feature.


Question: JXL->JXL processing (to remove alpha channel) drops color profile?

### ImageMagick version

7.1.1-44

### Operating system

Linux

### Operating system, version and so on

Fedora 41 x86_64

### Description

The Fedora 42 background images are going to be distributed in JXL format instead of the traditional PNG. Due to the limitations of the GNOME background system's timed-transition image blending, it's necessary that background images be stripped of their alpha channel before installation. We've been accomplishing that with a `magick -alpha off` command, which works fine on PNG images.

It works fairly well on JXL images as well (with an added `-quality 100`), but the output image no longer carries the same color profile as the input image.

### Steps to Reproduce

## 1. Unzip and examine the original file:

bash
$ unzip f42-01-day.zip
Archive: f42-01-day.zip
 inflating: f42-01-day.jxl

$ identify -verbose f42-01-day.jxl
Image:
 Filename: f42-01-day.jxl
 Permissions: rw-r--r--
 Format: JXL (JPEG XL (ISO/IEC 18181))
 Mime type: image/jxl
 Class: DirectClass
 Geometry: 4032x3024+0+0
 Units: Undefined
 Colorspace: sRGB
 Type: TrueColorAlpha
 Base type: Undefined
 Endianness: Undefined
 Depth: 8-bit
 Channels: 4.0
 Channel depth:
 Red: 8-bit
 Green: 8-bit
 Blue: 8-bit
 Alpha: 1-bit
 Channel statistics:
 Pixels: 12192768
 Red:
 min: 12 (0.0470588)
 max: 214 (0.839216)
 mean: 126.731 (0.496982)
 median: 133 (0.521569)
 standard deviation: 43.3644 (0.170056)
 kurtosis: -0.324868
 skewness: 0.0404497
 entropy: 0.749915
 Green:
 min: 5 (0.0196078)
 max: 224 (0.878431)
 mean: 137.296 (0.538416)
 median: 142 (0.556863)
 standard deviation: 47.5222 (0.186362)
 kurtosis: -0.608794
 skewness: -0.11526
 entropy: 0.76154
 Blue:
 min: 5 (0.0196078)
 max: 221 (0.866667)
 mean: 105.595 (0.414096)
 median: 90 (0.352941)
 standard deviation: 54.5139 (0.21378)
 kurtosis: -0.439243
 skewness: 0.766023
 entropy: 0.752578
 Alpha:
 min: 255 (1)
 max: 255 (1)
 mean: 255 (1)
 median: 255 (1)
 standard deviation: 0 (0)
 kurtosis: 0
 skewness: 0
 entropy: 0
 Image statistics:
 Overall:
 min: 5 (0.0196078)
 max: 255 (1)
 mean: 156.155 (0.612374)
 median: 155 (0.607843)
 standard deviation: 36.3501 (0.14255)
 kurtosis: -0.343226
 skewness: 0.172803
 entropy: 0.566008
 Rendering intent: Perceptual
 Gamma: 0.454545
 Chromaticity:
 red primary: (0.64,0.33,0.03)
 green primary: (0.3,0.6,0.1)
 blue primary: (0.15,0.06,0.79)
 white point: (0.3127,0.329,0.3583)
 Matte color: grey74
 Background color: white
 Border color: srgb(223,223,223)
 Transparent color: black
 Interlace: None
 Intensity: Undefined
 Compose: Over
 Page geometry: 4032x3024+0+0
 Dispose: Undefined
 Iterations: 0
 Compression: Undefined
 Orientation: TopLeft
 Profiles:
 Profile-icc: 9080 bytes
 Properties:
 date:create: 2025-03-11T23:48:07+00:00
 date:modify: 2025-03-11T08:05:06+00:00
 date:timestamp: 2025-03-11T23:48:55+00:00
 icc:copyright: Copyright 2015, Elle Stone (website: URL email: ellestone@ninedegreesbelow.com). This ICC profile is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License ( URL
 icc:description: sRGB-elle-V2-srgbtrc.icc
 mime:type: image/jxl
 signature: 6a090391cc3d126be6a5807503aeef4cfddce0c527120cbf76252cdaa7e4ddbd
 Artifacts:
 verbose: true
 Tainted: False
 Filesize: 1.93684MiB
 Number pixels: 12.1928M
 Pixel cache type: Memory
 Pixels per second: 13.1612MP
 User time: 2.440u
 Elapsed time: 0:01.926
 Version: ImageMagick 7.1.1-44 Q16-HDRI x86_64 22688 URL

The original image contains a 9k color profile, `sRGB-elle-V2-srgbtrc.icc`.

## 2. Process the image using ImageMagick to remove alpha channel

bash
$ magick f42-01-day.jxl -quality 100 -alpha off f42-01-day_noalpha.jxl

## 3. Examine the output file

bash
$ identify -verbose f42-01-day_noalpha.jxl
Image:
 Filename: f42-01-day_noalpha.jxl
 Permissions: rw-r--r--
 Format: JXL (JPEG XL (ISO/IEC 18181))
 Mime type: image/jxl
 Class: DirectClass
 Geometry: 4032x3024+0+0
 Units: Undefined
 Colorspace: sRGB
 Type: TrueColor
 Base type: Undefined
 Endianness: Undefined
 Depth: 8-bit
 Channels: 3.0
 Channel depth:
 Red: 8-bit
 Green: 8-bit
 Blue: 8-bit
 Channel statistics:
 Pixels: 12192768
 Red:
 min: 12 (0.0470588)
 max: 214 (0.839216)
 mean: 126.731 (0.496982)
 median: 133 (0.521569)
 standard deviation: 43.3644 (0.170056)
 kurtosis: -0.324868
 skewness: 0.0404497
 entropy: 0.749915
 Green:
 min: 5 (0.0196078)
 max: 224 (0.878431)
 mean: 137.296 (0.538416)
 median: 142 (0.556863)
 standard deviation: 47.5222 (0.186362)
 kurtosis: -0.608794
 skewness: -0.11526
 entropy: 0.76154
 Blue:
 min: 5 (0.0196078)
 max: 221 (0.866667)
 mean: 105.595 (0.414096)
 median: 90 (0.352941)
 standard deviation: 54.5139 (0.21378)
 kurtosis: -0.439243
 skewness: 0.766023
 entropy: 0.752578
 Image statistics:
 Overall:
 min: 5 (0.0196078)
 max: 224 (0.878431)
 mean: 123.207 (0.483165)
 median: 121.667 (0.477124)
 standard deviation: 48.4668 (0.190066)
 kurtosis: -0.457635
 skewness: 0.230404
 entropy: 0.754678
 Rendering intent: Relative
 Gamma: 0.454545
 Chromaticity:
 red primary: (0.64,0.33,0.03)
 green primary: (0.3,0.6,0.1)
 blue primary: (0.15,0.06,0.79)
 white point: (0.3127,0.329,0.3583)
 Matte color: grey74
 Background color: white
 Border color: srgb(223,223,223)
 Transparent color: black
 Interlace: None
 Intensity: Undefined
 Compose: Over
 Page geometry: 4032x3024+0+0
 Dispose: Undefined
 Iterations: 0
 Compression: Undefined
 Orientation: TopLeft
 Profiles:
 Profile-icc: 536 bytes
 Properties:
 date:create: 2025-03-11T23:50:54+00:00
 date:modify: 2025-03-11T23:50:54+00:00
 date:timestamp: 2025-03-11T23:51:34+00:00
 icc:copyright: CC0
 icc:description: RGB_D65_SRG_Rel_SRG
 mime:type: image/jxl
 signature: bb19320a637ffbb342d9fcf381ea825659dbf8c10ac02fd768311252f2a68c33
 Artifacts:
 verbose: true
 Tainted: False
 Filesize: 1.9296MiB
 Number pixels: 12.1928M
 Pixel cache type: Memory
 Pixels per second: 14.5702MP
 User time: 2.270u
 Elapsed time: 0:01.836
 Version: ImageMagick 7.1.1-44 Q16-HDRI x86_64 22688 URL

The image no longer has an alpha channel (that's good!), but has lost the ICC profile and other metadata.

## Delegate information:

bash
$ magick -list format|grep jxl
 JXL* JXL rw+ JPEG XL (ISO/IEC 18181) (libjxl 0.10.4)

### Images

Here's the first of the upcoming Fedora 42 background images, in source JXL format (with color profile):

f42-01-day.zip

The `-x` flag in cjxl is only used for inputs that can't have color profiles embedded (PPM, ect), otherwise it's taken from the original file.
JPEG XL can use Color Enums instead of ICC profiles for common color spaces (sRGB, P3, Rec2020, ect). Usually this is only used for lossy, but it seems ImageMagick is incorrectly using Enums for lossless too. This has little to no impact visually, but it does remove the original ICC profile.

Using cjxl to recompress the source file retains the ICC in Lossless, and uses the sRGB Enum when set to lossy, confirming it as an ImageMagick bug. @sboukortt might know what area needs to be fixed though, likely just a missing flag.


Question: `__vite_ssr_import_meta__.glob is not a function` Error During SSR?

### Related plugins

- [x] plugin-vue

- [ ] plugin-vue-jsx

### Describe the bug

This bug is a very strange one. When using SSR, I cannot use dynamic imports more than once in my Vue SFC if I add `class="whatever"` to the root element. Please see the minimal reproduction, but here is a brief rundown:

1. I'd like to do some ``import(`./dynamicA/${name}.json`)`` and some ``import(`./dynamicB/${name}.json`)`` in my Vue SFC... in other words, I'd like to using dynamic importing multiple times.
2. When I do, the second dynamic import fails if I add `class="whatever"` to the root element of my SFC.
3. This is very surprising outcome, because as a developer I wouldn't expect my `class` attribute and dynamic imports to have anything to do with each other.

### Reproduction

 URL

### Steps to reproduce

Please see the minimal reproduction `README.md` for reproduction steps.

### System Info

shell
System:
 OS: macOS 12.5
 CPU: (10) arm64 Apple M1 Pro
 Memory: 99.11 MB / 16.00 GB
 Shell: 5.8.1 - /bin/zsh
 Binaries:
 Node: 16.19.0 - ~/.volta/tools/image/node/16.19.0/bin/node
 npm: 8.19.3 - ~/.volta/tools/image/node/16.19.0/bin/npm
 Browsers:
 Chrome: 109.0.5414.119
 Safari: 15.6
 npmPackages:
 @vitejs/plugin-vue: ^4.0.0 => 4.0.0
 vite: ^4.0.4 => 4.0.4

### Used Package Manager

npm

### Logs

 Click to expand!

shell
/entrypoints/App.vue:8
 console.log("[dynamicB/test.json#message]", (await __vite_ssr_import_0__.default((__vite_ssr_import_meta__.glob("./dynamicB/*.json")), `./dynamicB/${name}.json`)).default.message);
 ^

TypeError: __vite_ssr_import_meta__.glob is not a function
 at asyncWrapper (/entrypoints/App.vue:8:110)

### Validations

- [X] Follow our Code of Conduct
- [X] Read the Contributing Guidelines.
- [X] Read the docs.
- [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 Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to vuejs/core instead.
- [X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
- [X] The provided reproduction is a minimal reproducible example of the bug.

When ran without the parser, the tokenizer _will_ fail to distinguish regexps from division operators in some cases (because JavaScript cannot be tokenized without parsing). This is a known limitation, and not something that's fixable.


Question: Stack custom items even if NBT data order is different?

### Terms

- [x] I'm using the very latest version of ItemsAdder and its dependencies.
- [x] I am sure this is a bug and it is not caused by a misconfiguration or by another plugin.
- [x] I've looked for already existing issues on the Issue Tracker and haven't found any.
- [x] I already searched on the plugin wiki to know if a solution is already known.
- [x] I searched the `#itemsadder-forum` channel on Discord for similar issues.
- [x] I tested that this issue persists on a **bare-minimum Server** as described in #4187.

### Discord Username (optional)

_No response_

### What happened?

After the plugin update, many things broke. 1st problem is, that order of nbt tags has been randomly changed, so now the old items cannot stack with a new one.

Image

causes issues like this (the purple item)

Image

gg

### Steps to reproduce the issue

Idk updete the plugin from 4.0.7 to 4.0.9

### Server version

Paper 1.21.1 v132

### ItemsAdder Version

4.0.9

### ProtocolLib Version

ProtocolLib version 5.4.0-SNAPSHOT-741

### LoneLibs Version

LoneLibs version 1.0.65

### Full Server Log

 URL

### Error (optional)

shell

### Problematic items yml configuration file (optional)

yaml

### Other files, you can drag and drop them here to upload. (optional)

_No response_

### Screenshots/Videos (you can drag and drop files or paste links)

_No response_

This seems to be a MMOitems bug not ItemsAdder bug.
As I said:

This is not an ItemsAdder bug.


Question: MCAD Multi-Cluster + KubeStellar Integration (Stage-1)?

### Feature Description

MCAD as one of the options for the job queuing and scheduling interface for KubeStellar.

### Proposed Solution

Stage-1: MCAD dispatcher deploys appWrappers to MCAD agent clusters and collects AppWrapper status via KubeStellar
Stage-2: new MCAD observability paths (e.g., metrics collection: Prometheus, Thanos, Observatorium, etc.) enable by KubeStellar

### Want to contribute?

- [ ] I would like to work on this issue.

### Additional Context

The gaps identified for stage-1 are the following:

i) MCAD dispatcher needs to create a KubeStellar EdgePlacement objects. The EdgePlacement object is used to select a target cluster to deploy a workload (e.g., AppWrapper)

ii) MCAD dispatcher needs to deploy AppWrappers and EdgePlacement objects to KubeStellar Workload Management Workspaces (WMW)

iii) MCAD dispatcher needs to use an informer library to collect appWrapper status from KubeStellar

Thanks @dumb000!,

@asm582 , I tagged this one as well with multi-cluster label.


Question: Show percentage?

While using the app, I found that sometimes I need to finish pomodoro timer early. In that case, I want to record how much did I spend - 70%, 50% for example. Let's make this option

This is adding new column named percentage

Hello, @TheRustyPickle. I'm sorry that I'm so busy (😢) that I have not researched about this issue.
So correct me if I'm wrong.
As I commented above, I found clap supports `clap_complete`. Could you take a look and see if it solves this issue?


Question: Could not open '/lib64/ld-linux-x86-64.so.2' during devcontainer build?

I'm trying to create a small dev container via VS Code's "Add Dev Container Configuration Files" option. I have selected only a couple other features ("docker-in-docker", "go", "python", and "pre-commit").

Every time I select the pre-commit feature (also happens when manually adding the `"ghcr.io/devcontainers-contrib/features/pre-commit:2": {}` feature to the devcontainer.json) I see the following error when trying to build the devcontainer:

[2022-12-29T16:13:59.722Z] ------

#0 0.134 ===========================================================================
#0 0.134 Feature : Pre-Commit (via pipx)
#0 0.134 Description : Pre-Commit is a framework for managing and maintaining multi-language pre-commit hooks.
#0 0.134 Id : ghcr.io/devcontainers-contrib/features/pre-commit
#0 0.134 Version : 2.0.0
#0 0.134 Documentation : URL
#0 0.134 Options :
#0 0.134 VERSION="latest"
#0 0.134 ===========================================================================
#0 0.792 featmake: OK
#0 0.808 qemu-x86_64: Could not open '/lib64/ld-linux-x86-64.so.2': No such file or directory
[2022-12-29T16:13:59.722Z] #0 0.810 ERROR: Feature "Pre-Commit (via pipx)" (ghcr.io/devcontainers-contrib/features/pre-commit) failed to install! Look at the documentation at URL for help troubleshooting this error.
------
[2022-12-29T16:13:59.722Z] ERROR: failed to solve: executor failed running [/bin/sh -c cd /tmp/build-features/pre-commit_4 && chmod +x ./devcontainer-features-install.sh && ./devcontainer-features-install.sh]: exit code: 255

For reference I'm running this on a 2021 16-inch MacBookPro with Apple M1 Pro processor (could the error be related to running this on an ARM processor?). Might I be missing something? The devcontainer works fine when removing the pre-commit feature and installing pre-commit manually (using pip3, for example).

from version 0.0.16 and up featmake is now not a binary but a raw shell script, you can open it with any text editor


Question: Reference id not matching with documentElement id?

**To Reproduce**

Receiving this response from Azure AD:

xml

 STRIPPED

 STRIPPED

 STRIPPED

 STRIPPED

 STRIPPED

 STRIPPED

 STRIPPED

 STRIPPED

 STRIPPED

 STRIPPED

 STRIPPED

 urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport
 URL

 STRIPPED
 STRIPPED
 STRIPPED

 STRIPPED

 STRIPPED

 STRIPPED

 STRIPPED

 urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport

When validating the signature, the documentElement of the SAML response is used and the reference id tries to match with the id of it. But they don't match, instead the reference id matches with the ` `-Element id, thus successfully validating the signature is not possible.

**Expected behavior**
Signature should validate successfully.

**Environment**

- Node.js version: 16.14.0
- `passport-saml` version: 4.0.4

The change was intended as it is in harmony with the secure-by-default philosophy that we have here. Please feel free to put up a PR to help us with our README.


Question: FS22 Lumberjack nopt working in multiplayer/dedicated server?

I noticed that deleting trees by using the chainsaw red ring no longer works in multiplayer. When the tree or stump is supposed to disappear the chainsaw snaps back a bit but just continues to saw and spew sahavings. Nothing else happens. In career mode it still works like a charm :)

Do we know why this is?

Please let me know if this version has resolved the issue: URL

I guess it will not do anything to your terrain issue caused by previously removed trees, but hopefully should prevent the problem occuring again.


Question: Icecast only loading or no sound on iOS in Angular?

Hello Ethan,

first of all thank you for your hard work. I really like it and it works perfectly on Android. Unfortunately I can't get it to work on iOS. I am using Ionic and Angular. The stream is loading (network tab of developer console), but I can't hear anything. The event listener gives success on play, no error. The stream keeps on loading.

If I use a standard html5 audio without your script the stream plays fine. I really look forward to use your icecast-metadata-player.

Do you have any idea?

After you've cloned the repo, and checked out the PR, you can point directly to the `icecast-metadata-player` folder in your `package.json`. Example: `"icecast-metadata-player:" "file:path-to-icecast-metadata-js-clone/src/icecast-metadata-player"`. I use this method every time I am testing with the demo page.


Question: Double free() in global object destruction in 7.10.1 (regression from 7.10.0)?

I'm getting double free() error of memory block allocated by **pqxx::internal::demangle_type_name**.

System: Arch Linux
libpqxx version: 7.10.1
Used compiler: clang++ 20.1.6

Valgrind output:
`[pavenis@ap test]$ valgrind ./CellTest
==1688117== Memcheck, a memory error detector
==1688117== Copyright (C) 2002-2024, and GNU GPL'd, by Julian Seward et al.
==1688117== Using Valgrind-3.25.1 and LibVEX; rerun with -h for copyright info
==1688117== Command: ./CellTest
==1688117==

Cell tests
==========
Running 2 test cases...
+ [is_saddle(Cell)]
+ [minmax(Cell)]

*** No errors detected
==1688117== Invalid free() / delete / delete[] / realloc()
==1688117== at 0x496D8DD: operator delete(void*, unsigned long) (vg_replace_malloc.c:1181)
==1688117== by 0x672C05F: __cxa_finalize (cxa_finalize.c:97)
==1688117== by 0x9033B97: ??? (in /usr/lib/libpqxx-7.10.so)
==1688117== by 0x4125FD1: _dl_call_fini (dl-call_fini.c:43)
==1688117== by 0x41291B1: _dl_fini (dl-fini.c:120)
==1688117== by 0x672C5E0: __run_exit_handlers (exit.c:118)
==1688117== by 0x672C6BD: exit (exit.c:148)
==1688117== by 0x67136BB: (below main) (libc_start_call_main.h:74)
==1688117== Address 0xbd623c0 is 0 bytes inside a block of size 129 free'd
==1688117== at 0x496D8DD: operator delete(void*, unsigned long) (vg_replace_malloc.c:1181)
==1688117== by 0x4062D64: std::__new_allocator ::deallocate(char*, unsigned long) (new_allocator.h:172)
==1688117== by 0x4062CCF: deallocate (allocator.h:215)
==1688117== by 0x4062CCF: deallocate (alloc_traits.h:649)
==1688117== by 0x4062CCF: std::__cxx11::basic_string , std::allocator >::_M_destroy(unsigned long) (basic_string.h:305)
==1688117== by 0x4062BD9: std::__cxx11::basic_string , std::allocator >::_M_dispose() (basic_string.h:299)
==1688117== by 0x404CB48: std::__cxx11::basic_string , std::allocator >::~basic_string() (basic_string.h:896)
==1688117== by 0x672C05F: __cxa_finalize (cxa_finalize.c:97)
==1688117== by 0x69B55E7: ??? (in /usr/lib/libsmartmet-macgyver.so)
==1688117== by 0x4125FD1: _dl_call_fini (dl-call_fini.c:43)
==1688117== by 0x41291B1: _dl_fini (dl-fini.c:120)
==1688117== by 0x672C5E0: __run_exit_handlers (exit.c:118)
==1688117== by 0x672C6BD: exit (exit.c:148)
==1688117== by 0x67136BB: (below main) (libc_start_call_main.h:74)
==1688117== Block was alloc'd at
==1688117== at 0x4969F93: operator new(unsigned long) (vg_replace_malloc.c:487)
==1688117== by 0x904ABC5: UnknownInlinedFun (new_allocator.h:151)
==1688117== by 0x904ABC5: UnknownInlinedFun (alloc_traits.h:614)
==1688117== by 0x904ABC5: UnknownInlinedFun (basic_string.h:142)
==1688117== by 0x904ABC5: UnknownInlinedFun (basic_string.tcc:164)
==1688117== by 0x904ABC5: UnknownInlinedFun (basic_string.tcc:235)
==1688117== by 0x904ABC5: UnknownInlinedFun (basic_string.h:692)
==1688117== by 0x904ABC5: pqxx::internal::demangle_type_nameabi:cxx11 (strconv.cxx:245)
==1688117== by 0x69B47CB: __cxx_global_var_init.33 (strconv.hxx:80)
==1688117== by 0x41292F6: call_init (dl-init.c:74)
==1688117== by 0x41292F6: call_init (dl-init.c:26)
==1688117== by 0x41293CC: _dl_init (dl-init.c:121)
==1688117== by 0x414161F: ??? (in /usr/lib/ld-linux-x86-64.so.2)
==1688117==
==1688117==
==1688117== HEAP SUMMARY:
==1688117== in use at exit: 330 bytes in 5 blocks
==1688117== total heap usage: 7,058 allocs, 7,054 frees, 1,461,985 bytes allocated
==1688117==
==1688117== LEAK SUMMARY:
==1688117== definitely lost: 129 bytes in 1 blocks
==1688117== indirectly lost: 0 bytes in 0 blocks
==1688117== possibly lost: 0 bytes in 0 blocks
==1688117== still reachable: 201 bytes in 4 blocks
==1688117== suppressed: 0 bytes in 0 blocks
==1688117== Rerun with --leak-check=full to see details of leaked memory
==1688117==
==1688117== For lists of detected and suppressed errors, rerun with: -s
==1688117== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 0 from 0)
`

Program was a one of the test of URL

No need to change compilers for this... Don't get me wrong, clang is an excellent compiler. But one of those tricks to producing top-quality code is to run it through as many compilers as you can, and pay attention to the errors or warnings they produce.

So... do both. :-)


Question: [Bug]: storage stopped working in termux:api 0.51.0?

### Problem description

Storage stopped working when updating Termux:API to 0.51.0

Don't know what the old version was, it was probably like 3 months old but I'm not sure.
`cd storage` works, but I cannot navigate to anything inside storage.
Quote

u0_a318@localhost:~$ cd storage/movies
bash: cd: storage/movies: Permission denied
u0_a318@localhost:~$ namei -l storage/movies
f: storage/movies
drwx------ u0_a318 u0_a318 storage
lrwxrwxrwx u0_a318 u0_a318 movies -> /storage/emulated/0/Movies
drwxr-xr-x root root /
drwx--x--x shell everybody storage
drwxrwx--- media_rw media_rw emulated
drwxrws--- media_rw media_rw 0
drwxrws--- u0_a309 media_rw Movies
u0_a318@localhost:~$ id
uid=10318(u0_a318) gid=10318(u0_a318) groups=10318(u0_a318),3003(inet),9997(everybody),20318(u0_a318_cache),50318(all_a318) context=u:r:untrusted_app_27:s0:c62,c257,c512,c768

It was working perfectly before the Termux:API update.

Source: F-droid
Termux 0.118.2
Termux:API 0.51.0
Phone: Samsung Galaxy S24 Ultra
Android 14

Storage was working perfectly before the Termux:API update.

### Steps to reproduce the behavior.

- Update to Termux:API 0.51.0
- cd storage/movies
bash: cd: storage/movies: Permission denied

### What is the expected behavior?

No error.

### System information

* Termux application version: 0.118.2
* Android OS version: 14
* Device model: Samsung Galaxy S24 Ultra

Seems like firmware related bug. Usually OS does not automatically revoke permissions day after user grants it.