Add integration tests for Istio authorization for groups and list claims

Add integration tests for Istio authorization for groups and list claims, which cover the feature in https://istio.io/docs/tasks/security/rbac-groups/.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: lei-tang
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: ozevren
If they are not already assigned, you can assign the PR to them by writing /assign @ozevren in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

tests/integration/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@lei-tang: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
1a005ace8a8ce75e1a58a760a837a0981c6deb16
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
83abeac016d61d4a084dbeca97dfb80e19a393a7
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
674118bc98166cc11a9041fde1f5ecf8a079c41a
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
57cccb14d3715b4fb544b25a592a7be1eb385e38
link
/test istio-integ-k8s-tests

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-e2e-envoyv2-v1alpha3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-mixer-no_auth.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-mixer-no_auth

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-mixer-no_auth.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-mixer-no_auth

prow/e2e-dashboard.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-dashboard

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-mixer-no_auth.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-mixer-no_auth

prow/e2e-dashboard.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-dashboard

prow/e2e-bookInfoTests-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-envoyv2-v1alpha3

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-mixer-no_auth.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-mixer-no_auth

prow/e2e-dashboard.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-dashboard

prow/e2e-bookInfoTests-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-envoyv2-v1alpha3

prow/e2e-bookInfoTests-trustdomain.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-trustdomain

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-mixer-no_auth.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-mixer-no_auth

prow/e2e-dashboard.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-dashboard

prow/e2e-bookInfoTests-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-envoyv2-v1alpha3

prow/e2e-bookInfoTests-trustdomain.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-trustdomain

prow/e2e-simpleTests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-simpleTests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-mixer-no_auth.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-mixer-no_auth

prow/e2e-dashboard.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-dashboard

prow/e2e-bookInfoTests-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-envoyv2-v1alpha3

prow/e2e-bookInfoTests-trustdomain.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-trustdomain

prow/e2e-simpleTests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-simpleTests

prow/istio-pilot-multicluster-e2e.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-multicluster-e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-mixer-no_auth.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-mixer-no_auth

prow/e2e-dashboard.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-dashboard

prow/e2e-bookInfoTests-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-envoyv2-v1alpha3

prow/e2e-bookInfoTests-trustdomain.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-trustdomain

prow/e2e-simpleTests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-simpleTests

prow/istio-pilot-multicluster-e2e.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-multicluster-e2e

prow/e2e-simpleTests-cni.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-simpleTests-cni

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-mixer-no_auth.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-mixer-no_auth

prow/e2e-dashboard.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-dashboard

prow/e2e-bookInfoTests-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-envoyv2-v1alpha3

prow/e2e-bookInfoTests-trustdomain.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-trustdomain

prow/e2e-simpleTests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-simpleTests

prow/istio-pilot-multicluster-e2e.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-multicluster-e2e

prow/e2e-simpleTests-cni.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-simpleTests-cni

prow/e2e_pilotv2_auth_sds.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio_auth_sds_e2e

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-local-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-local-tests

prow/istio-integ-k8s-tests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-integ-k8s-tests

prow/istio-pilot-e2e-envoyv2-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-e2e-envoyv2-v1alpha3

prow/e2e-mixer-no_auth.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-mixer-no_auth

prow/e2e-dashboard.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-dashboard

prow/e2e-bookInfoTests-v1alpha3.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-envoyv2-v1alpha3

prow/e2e-bookInfoTests-trustdomain.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-bookInfoTests-trustdomain

prow/e2e-simpleTests.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-simpleTests

prow/istio-pilot-multicluster-e2e.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio-pilot-multicluster-e2e

prow/e2e-simpleTests-cni.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test e2e-simpleTests-cni

prow/e2e_pilotv2_auth_sds.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test istio_auth_sds_e2e

prow/release-test.sh
661d9d7d0f80103cb3a31edc4775bcc28b46f652
link
/test release-test

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
f0611ec2492085a24b479ecd749d6559fb96c66f
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
f0611ec2492085a24b479ecd749d6559fb96c66f
link
/test istio-integ-k8s-tests

prow/istio-unit-tests.sh
1e60fe8781885b2b99db78c858e351f86ed4c48a
link
/test istio-unit-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@lei-tang: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-unit-tests.sh
1e60fe8781885b2b99db78c858e351f86ed4c48a
link
/test istio-unit-tests

prow/istio-integ-k8s-tests.sh
1e60fe8781885b2b99db78c858e351f86ed4c48a
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: lei-tang
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: nmittler
If they are not already assigned, you can assign the PR to them by writing /assign @nmittler in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pkg/OWNERS
tests/integration/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

#13439

@lei-tang: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/istio-integ-k8s-tests.sh
0c7706c8471741d1f6debf85008d89bee33d0544
link
/test istio-integ-k8s-tests

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: lei-tang, nmittler
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

pkg/OWNERS [nmittler]
tests/integration/OWNERS [nmittler]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Policy and AWS

Discussion to understand library policy for storing data in scholarsphere and making sure we are meeting that policy within our AWS implementation.

Conversation to be had with Paul and EIT on technical details and cost
Conversation for Seth, Dann, Dan, and Briana to discuss library preservation policy and how that correlates to AWS implementation.

Notes from meeting with EIT:
AWS Implementation Option:
Primary bucket located in us-east-1, a bucket in a single region is backed by 3 availability zones and has 99.99999999999% durability, with 99.9% availability
As items are placed in this bucket, they are replicated into another bucket (presently in us-west-2) Delete events are not replicated, and versioning is enabled on both buckets.
After 2 days, items placed in the west bucket are "frozen" (moved to glacier) for DR purposes only.

Sketch of discussion on this.

I just met with Nathan Tallman about storage/preservation planning. He strongly encouraged replication to at least one non-AWS storage endpoint, which I think makes sense.


Feature Request - Extended rules around Druid forms

This is a feature request, not a bug.
Expected behaviour
I have the below macro (it's not perfect):
#showtooltip
/use [advflyable,nocombat]Flourishing Whimsydrake
/use [outdoors,flyable]Travel Form;[harm]Moonkin Form;[indoors]Cat Form
/use [outdoors]Travel Form
/dismount [mounted]

The intended use is like so:

If I am in a zone where I can use Dragonriding mount, use it.;
If that is not available, use the druid travel form instead. This works with my macro when I am walking and pressing the button, since it'll get me in druid form, as dragon riding is not available while walking, since there is a cast time to it;
If I have a target that I can attack, put me in Moonkin form;
Indoors, use cat form;
Underwater, use travel form;
Pressing again will dismount/dispel the druid form;

Actual behaviour
I am looking to get similar functionality with Rav Mounts although the add-on has an exclusive switch on the druid forms:

If I use druid forms, it will always put me in Druid flight form even though I should be able to dragonride;
If I don't use druid forms, cat form is not casted indoors. I suspect the same with underwater travel form;
I am unable to use "Alternate Mounts Modifier" since I already have other buttons bound to all modifier keys so I wouldn't want to change that just for this. So the macro is bound to -, Moonkin form is bound to SHIFT + - (because sometimes I just need to Moonkin directly without satisfying the macro conditions), Brutosaur is on CTRL + - and Yak is on ALT + -.

Steps to reproduce this behaviour

Use a druid
Use my macro and see how it behaves
Attempt to reproduce this in Ravenous Mounts add-on

@waldenp0nd

Hey @Soromeister,
Sorry to just get back to you.
Thanks for the feature request! There have been some glaring issues with how the addon handles class forms for a while now, so this is high on the list of priorities for me to attend to. The last time I tried to address those issues, I ended up breaking the addon for all classes 😅 so I will have to tread very carefully and test extremely thoroughly before I release a fix here.
I appreciate that a lot of time has passed since you submitted this feature request, and you've likely moved onto another addon that does support what you're looking for, but I thank you nonetheless for bringing this to my attention as a critical piece of the addon that needs fixing!

Hi @waldenp0nd , I haven't moved to another addon, but I am using my own macro (as faulty as it is). I am looking forward to the major refactor update. Thanks.

Hey @Soromeister, unfortunately I've made the decision to stop development on Ravenous Mounts.
I can't recommend LiteMount enough if you're looking for another addon that provides nearly all the same functionality as Ravenous Mounts!


Install php

Would be awesome to have PHP (preferentially the newest, version 7) installed in the servers.

Given that there is no backport for PHP 7, I would strongly advise for PHP 6 instead.
@dgadelha Please clarify:

What is needed?  PHP-FPM?  Just the PHP CLI?
Are any additional packages/libraries required?
May I ask what you need it for?

PHP 6 is great too.
Well, for lighttpd I just need the PHP CGI, but PHP CLI helps doing other stuff too.
About PHP extensions (generally they're distributed as another package), most common to see are: bz2, curl, dev, gd, imagick, imap, intl, json, mbstring, mcrypt, mysql, PDO (mysql, sqlite), sqlite3, ssh2, xml, zip.

Could you clarify what you actually need? (In terms of installed extensions)

Only curl, PDO and zip are okay :)

OK, so that would be the PHP CLI, CGI and FPM, and the curl, PDO and zip extensions.
Unfortunately, I just found out that PHP 6 isn't in jessie either, and there are no PHP backports, so we can either:

Install from testing: I would rather avoid it, as we might get in dependency hell pretty quick.
Request a backport or build it ourselves.
Install PHP 5.

5 is okay :)

OK.
Then, I would pull in php5-cli, php5-cgi, php5-curl, php5-fpm.
They pull the following as dependencies: libonig2 (regexp lib), libqdbm14, php5-common and php5-json.
Regarding PDO, which DB driver do you need?

mysql and sqlite only :)

OK, php5-mysql and php5-sqlite only add libmysqlclient18 and mysql-common as dependencies.

Alright

Erg, of course I ran into #123 again...
@dgadelha: Given that we can't currently deploy changes, this will have to wait a bit  :V

:/ okay then

@dgadelha Sorry it took shamefully long, but #123 should be resolved tonight, so I can run an install/deploy afterwards.

That's not a problem, thanks!


Standardize query parameter formatter with PEP249 conventions

Is your idea related to a problem? Please describe.
The recently implemented parameter formatter does not follow PEP 249 guidance.
Describe the solution you'd like
Instead of parameters being in the :name; format, we should use the Python's standard PyFormat: %(name)s.
P.S. Please do not attach files as it's considered a security risk. Add code snippets directly in the message body as much as possible.

My bad, I didn't see that PR.


[BUG] test_load_forecasting_from_repo failing on nightly CI

Describe the bug
The test is currently failing on all versions and OS with ValueError: too many values to unpack (expected 2).
Steps/Code to reproduce the bug
See CI failure example here https://github.com/aeon-toolkit/aeon/actions/runs/7095058970/job/19311381594#step:7:739
Expected results
The test passes.
Actual results
The test fails.
Versions
No response

ah I know why, will fix


Build an email address string from email and name components

It would be great if we could use email-addresses to construct an email string, from an email and an optional name component, escaping any relevant characters.

nodemailer kinda does this: https://github.com/nodemailer/buildmail/blob/master/lib/buildmail.js#L1077

address-rfc2822 does this.

Basically out of scope for this code right now. It really is just a parser. It doesn't have knowledge about how to construct anything.
But, presumably such a function could be very small and if someone wants to submit a PR adding this functionality and tests, I would merge it.


Filter throws error if there is no description in the schema

The view builder errors when searching through the entity and edge types. This is due to a .toLowerCase method in the schemaGroupFilter. This filter should handle undefined description fields.

Merged into develop.


Want to register but not give access to modify gist

It would be nice to register with jsbin without granting it access to read and write to my gist. That is too invasive to me.

Then you need to register through the old method. Please add to the existing thread in github.

I tried registering with the old method but it is now disallowed.

Indeed. You need to follow the directions in the issue thread.
On Thu, 28 Apr 2016 15:33 Phil<EMAIL_ADDRESS>wrote:

I tried registering with the old method but it is now disallowed.
—
You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub
https://github.com/jsbin/jsbin/issues/2753#issuecomment-215445649


SVG not drawn correctly

I have this simple instagram SVG which used to be drawn correctly but since i updated to the latest master build it wont draw the logo. (Only the color circled background.) I have only tested this on Android.
Here is the image:
Instagram.zip
<svg xmlns="http://www.w3.org/2000/svg" data-name="Layer 1" viewBox="0 0 41 41">
  <defs>
    <linearGradient id="a" x1="5.29" x2="36.27" y1="5.29" y2="36.27" gradientUnits="userSpaceOnUse">
      <stop offset="0" stop-color="#583ce5"/>
      <stop offset=".34" stop-color="#a725b2"/>
      <stop offset=".67" stop-color="#f4183f"/>
      <stop offset="1" stop-color="#ffc34a"/>
    </linearGradient>
  </defs>
  <circle cx="20.5" cy="20.5" r="20.5" fill="url(#a)"/>
  <path fill="#ffffff" d="M25.52 30.77h-9.53a5.79 5.79 0 0 1-1.68-.44 5.87 5.87 0 0 1-2.07-1.48 5.76 5.76 0 0 1-1.55-3.92v-8.75a5.55 5.55 0 0 1 .19-1.43 5.91 5.91 0 0 1 2.38-3.41 5.66 5.66 0 0 1 3.29-1.06h8.7a6 6 0 0 1 1.4.16 6 6 0 0 1 4.57 5.75v8.71a5.71 5.71 0 0 1-.46 2.24 5.94 5.94 0 0 1-2.6 2.86 5.79 5.79 0 0 1-2.26.72zM21 11.81h-4.81a4 4 0 0 0-1.73.55 4.27 4.27 0 0 0-2.2 3.83v8.56a4.68 4.68 0 0 0 .1 1 4.37 4.37 0 0 0 4.24 3.44h8.63a4.91 4.91 0 0 0 .77-.06 4.17 4.17 0 0 0 2.15-1 4.29 4.29 0 0 0 1.5-3.33v-8.55a4.68 4.68 0 0 0 0-.53 4.37 4.37 0 0 0-4.3-3.87c-1.49-.05-2.95-.04-4.35-.04z"/>
  <path fill="#ffffff" d="M26.48 20.5A5.53 5.53 0 1 1 21 15a5.55 5.55 0 0 1 5.48 5.5zm-9.48 0a4 4 0 1 0 4-4 3.94 3.94 0 0 0-4 4z"/>
  <circle fill="#ffffff" cx="26.87" cy="14.58" r="1.19" transform="rotate(-89.88 26.873 14.577)"/>
</svg>

I have a Xamarin forms project and with v2.2.20 my svg's are drawn perfectly. Today I upgraded to v2.2.21 and none of my svg's are drawn anymore :(. Doesn't matter if it is a normal, embedded or online svg, svg's are simply gone.

@michelmoorlag I had the same problem. Cleaning and rebuilding all projects helped me. Not on the bug I have right now though.
I am using version 2.2.21.
It seems that the 's in the SVG are drawn fine if the first  is not there???

I just tested attached SVG, and the result is:

I am wondering why the paths are not drawn correctly.

It is not just the paths. It seems to be everything after the first circle

I am debugging it right now, the strange thing is the canvas is correctly written (all circles & paths), but somehow it's not rendered by SkiaSharp !?

Yeah, I saw the same thing. I don't think I updated SkiaSharp tho from when the SVG worked only this framework.

Update: It works fine when linear gradient is replaced with a solid color.

It is so weird if you apply opacity to the first circle you can see the other paths are drawn as well but they too get opacity applied to them???

Which FFImageLoading version works good for your image?

I don't remember but let me find out.

:) ?? I am all the way back to version 2.2.10 now and the problem is just before that

Fixed, I'll push 2.2.12 soon

Thank you so much. As always very nice work!

Hey @daniel-luberda did you ship this fix with 2.2.22? I am only seeing this working on iOS not on Android?

Yes, please remove all bin/obj folders from all your projects and rebuild again.

Sorry that is my bad.

Hey @daniel-luberda this seems to be a problem again.
With the newest version <IP_ADDRESS>3 som SVGs are not show right. The one I gave in the beginning of this thread is not showing the Instagram logo, only the background. If I downgrade to 2.3.6 it is shown correctly.
I have a few others with similar problems:
Green image logo is now drawn correctly:
<svg width="156" height="111" fill="none" xmlns="http://www.w3.org/2000/svg">
  <path d="M156 55.5c0 30.652-24.848 55.5-55.5 55.5H-6V0h106.5C131.152 0 156 24.848 156 55.5z" fill="#000"/>
  <path style="fill:#64D5A1;fill-rule:evenodd" d="M51 37.2h54v27.327L91.898 51.664a3 3 0 0 0-3.976-.202L73.126 63.299c-.16.128-.303.27-.432.423l-6.69-6.958a3 3 0 0 0-3.46-.625l-11.342 5.444a3.145 3.145 0 0 0-.202.107V37.2zm-6 0c0-3.976 2.686-7.2 6-7.2h54c3.314 0 6 3.224 6 7.2v39.6c0 3.977-2.686 7.2-6 7.2H51c-3.314 0-6-3.224-6-7.2V37.2zM70.5 51a4.5 4.5 0 1 0 0-9 4.5 4.5 0 0 0 0 9z" />
</svg>

Mask is not drawn correctly:
<svg xmlns="http://www.w3.org/2000/svg" width="147" height="111" fill="none">
  <path fill="#000" d="M0 55.5C0 24.848 24.848 0 55.5 0H162v111H55.5C24.848 111 0 86.152 0 55.5z"/>
  <mask id="a" width="87" height="87" x="33" y="3" maskUnits="userSpaceOnUse">
    <circle cx="14.5" cy="14.5" r="14.5" fill="#fff" transform="matrix(3 0 0 3 33 3)"/>
  </mask>
  <g mask="url(#a)">
    <path fill="#64D5A1" fill-rule="evenodd" d="M77.743 55.1c8.923 0 16.157-7.211 16.157-16.107 0-8.896-7.234-16.107-16.157-16.107-8.924 0-16.157 7.211-16.157 16.107 0 8.896 7.233 16.108 16.157 16.108zm-6.065 5.37c-14.497 0-26.25 11.752-26.25 26.249a3.28 3.28 0 0 0 3.282 3.28h58.066a3.28 3.28 0 0 0 3.28-3.28c0-14.497-11.751-26.25-26.248-26.25h-12.13z" clip-rule="evenodd"/>
  </g>
</svg>

@PCDK

Regression fixed
Mask example is fixed
The other file, moved to a separate issue: https://github.com/luberda-molinet/FFImageLoading/issues/1056

@daniel-luberda Hi, when can we expect a release for the issue fixed above?

It's already released

@daniel-luberda You are amazing!


Support for thermostats etc.

merge climate and heating zone in one
support for #404 (not sure if it's enough to add it and that's all?)

support for Add thermostat compatibility #404 (not sure if it's enough to add it and that's all?)

It's not enough, it must be managed as in HC2 but it was not stable. This is the reason I switched to Climate zones.

I don't understand. Can you fix it so it will be good?

I don't understand. Can you fix it so it will be good?

No, I was not able to stabilize it. If you want I can merge this change in order to test, but I do not have the devices.

Unfortunately, I don't have these devices either. Ok, then let's wait if the user who reported that he wants support for these devices show interest in cooperation in this area.

I'm closing it for now, if necessary it will open.


gRPC connections metric has long label values

Thanos, Prometheus and Golang version used:
latest - v0.27.0
What happened:
When running a survey of long label values on our system I discovered Thanos was responsible for generating the longest label name length
thanos_store_nodes_grpc_connections{external_labels="..."}

The maximum length is 154436 characters.
This is likely because of the large number of Prometheus instances we have writing to a cluster-wide S3 bucket.
What you expected to happen:
This label needs to be removed or modified to limit the length to something more sane.
How to reproduce it (as minimally and precisely as possible):
Have stores serving lots of buckets with lots of external labels.
Full logs to relevant components:

Anything else we need to know:

CC @hitanshu-mehta

I agree to remove the label external_labels. Using the endpoint address here might be a better solution to represent each store.

I'll work on this

Hi @yeya24 from what I see in:
https://github.com/thanos-io/thanos/blob/ee512aed1fece177b9257e80ba6c6c5d5986620a/pkg/query/endpointset.go#L193-L202
We have external_labels and store_type. Do you think it's safe to remove both or just external_labels?

Using the endpoint address here might be a better solution to represent each store.

Could you please show me where I can take the endpoint address from?

Removing external labels only should be good.

We have been discussing this in the past. The endpoint address was assumed not stable enough (e.g. same store API replica on restart would have different IP). On top of that IP does not give you a lot, when debugging querier using this metric.
To me, we have two solutions:
A) Remove ext label label totally.
B) Enforce label limit by checking if we external labels label value is larger than X (e.g let's say 1000 chars). If yes, capping it to <first 1000 chars of external labels>(...).
What about B?

We have been discussing this in the past. The endpoint address was assumed not stable enough (e.g. same store API replica on restart would have different IP). On top of that IP does not give you a lot, when debugging querier using this metric.
To me, we have two solutions:
A) Remove ext label label totally. B) Enforce label limit by checking if we external labels label value is larger than X (e.g let's say 1000 chars). If yes, capping it to <first 1000 chars of external labels>(...).
What about B?

If there're no other better labels to replace here, then +1 for B.

I would much prefer A. The gRPC metrics are useful to alert on, but I would use tracing data to do debugging.

One thing that would be more useful than just the IP, would be to propagate the SRV record names through. This would allow the dnssrv store flag lists to be more useful.

Ok, so my proposal would be to:

Always trim external labels to e.g. 1000 chars.
Add a []string flag to querier like querier.conn-metric.labels that allows specifying NO, or any of the labels like external_labels, store_type, record_name (default external_labels, store_type) which will switch labels the thanos_store_nodes_grpc_connections has.

This allows user to choose as they want and also would avoid breaking compatibility.

@bwplotka LGTM.

Hey @haanhvu, are you still working on it ?

Closed by https://github.com/thanos-io/thanos/pull/5785


Document EVP_CIPHER_fetch and EVP_CIPHER_up_ref

Added documentation for the two recently added functions EVP_CIPHER_fetch and EVP_CIPHER_up_ref.
I also took the opportunity to rename EVP_MD_upref and EVP_CIPHER_upref to EVP_MD_up_ref and EVP_CIPHER_up_ref. These were the only two examples of upref functions spelled that way. Since they are new and not yet in any stable release we can rename them.
This address two of the functions noted as missing from #9095.

Darnit, that means another rebase round for #8877 :wink:

Darnit, that means another rebase round for #8877 😉

It might help if you autosquash your fixups without moving the merge-base to simplify your commit history. If you force-push the autosquashed result before rebasing again, GitHub will show that the force-push does not have any tree changes, so reviewing can continue where it left off.
git rebase -i --autosquash $(git merge-base HEAD master)
git push --force

Updates pushed addressing all feedback so far.

Ping?

Pushed. Thanks!


error when launching strategy

[2024-04-27 09:24:05,755: INFO] gRPC session started for client_id: 63285328
trade_id: gHt8aRaFtLqbF2Ur3Nttjk
[2024-04-27 09:24:08,971: DEBUG] Exception on send request <grpc.aio._channel.UnaryUnaryMultiCallable object at 0x0000000007EE01C0>: UNKNOWN, Unexpected <class 'google.protobuf.json_format.ParseError'>: Message type "martin.FetchExchangeInfoSymbolResponse" has no field named "otoAllowed" at "FetchExchangeInfoSymbolResponse".
Available Fields(except extensions): "['symbol', 'status', 'baseAsset', 'baseAssetPrecision', 'quoteAsset', 'quotePrecision', 'quoteAssetPrecision', 'baseCommissionPrecision', 'quoteCommissionPrecision', 'orderTypes', 'icebergAllowed', 'ocoAllowed', 'quoteOrderQtyMarketAllowed', 'allowTrailingStop', 'cancelReplaceAllowed', 'isSpotTradingAllowed', 'isMarginTradingAllowed', 'filters', 'permissions', 'defaultSelfTradePreventionMode', 'allowedSelfTradePreventionModes']"

Hi!
Add some info please:
ver:
exchange:
Regards, Jerry.

exchanges-wrapper 2.1.11
martin-binance 3.0.6
exchange: binance
Clean, new installation. Now another error:
Start server
Run in terminal window
exchanges-wrapper-srv
Exeption:NotImplementedError.

martin-binance       1.3.6.post1
exchanges-wrapper    1.3.7.post1
exchange: binance.com

Hi! It is really old version, try update, I have not this error on last
pip install -U martin-binance

Regards, Jerry.

pip install -U martin-binance
Requirement already satisfied: martin-binance in c:\users\user\appdata\local\programs\python\python38\lib\site-packages (1.3.6.post1)
Available only martin-binance 1.3.6.post1

Try this
pip install martin-binance==3.0.6

Ready. Now another problem has appeared:
exchanges-wrapper-srv
Exception:
Traceback (most recent call last):
NotImplementedError

What OS are your used? Attach exch_srv.log with this error.

windows 10
exch_srv.log

This is a problem with implementing asyncio in a Windows environment. I tried several workarounds, but nothing helped. This version cannot run on Windows in the terminal. Alternatively you can use Docker - install from Docker

I installed Docker, but I don't understand what to do there.
2024-04-29 15:20:51 Traceback (most recent call last): 2024-04-29 15:20:51 File "/home/appuser/.local/lib/python3.10/site-packages/exchanges_wrapper/exch_srv.py", line 5, in 2024-04-29 15:20:51 from exchanges_wrapper import version as ver_ew 2024-04-29 15:20:51 ImportError: cannot import name 'version' from 'exchanges_wrapper' (/home/appuser/.local/lib/python3.10/site-packages/exchanges_wrapper/init.py)

I confirm, I will do this as soon as possible.
Regards, Jerry

Hi!
3.0.7 - 2024-05-02
Fix

Docker: server-client deployment functionality restored (exchanges-wrapper and martin-binance), also for Windows


reactApp: Unable to yarn start

yarn run v1.22.17
error<EMAIL_ADDRESS>The engine "node" is incompatible with this module. Expected version ">=14 <17". Got "17.0.1"
error Commands cannot run with an incompatible environment.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

yarn start command is suggested from: https://github.com/sampingantech/kmm-rss-reader/blob/production/reactApp/README.md

https://stackoverflow.com/a/70752062/3763032 removing the node engine version <17 constraint, able to runs but produce a different error build. Might need to install specific node engine(?)

Needs to install first: https://github.com/reactstrap/reactstrap/issues/711#issuecomment-473624475
Similar error thrown on #3

Needs to install first: https://github.com/reactstrap/reactstrap/issues/711#issuecomment-473624475
yarn

it'll execute the reactApp/scripts/preinstall.sh

Unfortunately similar error thrown on #3 (see description). It's due to Could not find org.nodejs:node:14.17.0.

inshaAllah fixed by running yarn, as mentioned above. before try to runs yarn start


Request for a official flutter documentation in Pdf format

Hello flutter team I wanted to convey that there should be a pdf for flutter documentation , because the people who  have trouble with internet in their area for example - remote areas won't be able to access internet to visit flutter documentation all the times. This will cause them to Drop flutter language as they will be unable to learn and use the language on time and it will severely cost them time.

Hi @satviksinha12
I see there's an open issue addressing the case you described. https://github.com/flutter/flutter/issues/61335
Please follow up on that issue, I'm closing the current one as a duplicate.
If you disagree, please write in the comments and I will reopen it.
Thank you


FilePathLayout - CleanupInvalidFilePath - Happy path should not allocate

This change is

Current coverage is 80% (diff: 100%)

Merging #1694 into master will increase coverage by <1%

@@             master      #1694   diff @@
==========================================
  Files           274        274
  Lines         16873      16874     +1
  Methods        2666       2666
  Messages          0          0
  Branches       1872       1872
==========================================
+ Hits          13511      13512     +1
  Misses         2929       2929
  Partials        433        433

Powered by Codecov. Last update a8a7739...f3e426b

Nice one! Thanks!


karma-firefox-launcher : You need to include some adapter that implements karma.start method!

Windows 10 Professional
git-bash
ASP.NET Core Angular
$ npm install karma-firefox-launcher --save-dev
creates folder :
/ClientApp/node_modules/karma-firefox-launcher/
modifies packages.json
  "devDependencies": {
    "karma-firefox-launcher": "^1.1.0",
    "karma-ie-launcher": "^1.0.0",
  }

$ karma --version
Karma version: 4.3.0

/ClientApp/src/karma.conf.js
// Karma configuration file, see link for more information
// https://karma-runner.github.io/1.0/config/configuration-file.html

module.exports = function (config) {
  config.set({
    basePath: '',
    frameworks: ['jasmine', '@angular-devkit/build-angular'],
    plugins: [
      require('jasmine-core'),
      require('jasmine-spec-reporter'),
      require('karma-jasmine'),
      require('karma-jasmine-html-reporter'),
      require('karma-coverage-istanbul-reporter'),
      require('karma-chrome-launcher'),
      require('karma-firefox-launcher'),
      require('karma-ie-launcher'),
      require('karma-teamcity-reporter'),
      require('@angular-devkit/build-angular/plugins/karma')
    ],
    client: {
      clearContext: false // leave Jasmine Spec Runner output visible in browser
    },
    coverageIstanbulReporter: {
      dir: require('path').join(__dirname, '../coverage'),
      reports: ['html', 'lcovonly', 'text-summary'],
      fixWebpackSourcePaths: true
    },
    reporters: ['progress', 'kjhtml'],
    port: 9876,
    colors: true,
    logLevel: config.LOG_INFO,
    autoWatch: true,
    browsers: ['Firefox', 'IE'],
    singleRun: false,
  });
};

run from /ClientApp/
$ karma start --reporters teamcity --single-run --browsers Firefox  --colors false
##teamcity[blockOpened name='JavaScript Unit Tests' flowId='']
12 09 2019 15:49:30.085:INFO [karma-server]: Karma v4.3.0 server started at http://<IP_ADDRESS>:9876/
12 09 2019 15:49:30.089:INFO [launcher]: Launching browsers Firefox with concurrency unlimited
12 09 2019 15:49:30.093:INFO [launcher]: Starting browser Firefox
12 09 2019 15:49:30.454:ERROR [launcher]: Cannot start Firefox

12 09 2019 15:49:30.455:ERROR [launcher]: Firefox stdout:
12 09 2019 15:49:30.455:ERROR [launcher]: Firefox stderr:
12 09 2019 15:49:32.565:INFO [Firefox 68.0.0 (Windows 10.0.0)]: Connected on socket FrpDMD7_tszd_VewAAAA with id 32447890
Firefox 68.0.0 (Windows 10.0.0) ERROR
  You need to include some adapter that implements __karma__.start method!
##teamcity[blockClosed name='JavaScript Unit Tests' flowId='']
12 09 2019 15:49:33.503:INFO [launcher]: Trying to start Firefox again (1/2).
12 09 2019 15:49:33.504:WARN [temp-dir]: Failed to create a temp dir at C:\Users\myuser\AppData\Local\Temp\2\karma-32447890

It does not seem be a Karma error, but rather a configuration error. Is Firefox installed on CI? Is binary path configured correctly? Do you have a display on TeamCity build server (maybe you need FirefoxHeadless instead)? Does it work locally?

Most normal plugins are loaded by name, not by calling require()
http://karma-runner.github.io/5.0/config/plugins.html


Database migration script

Write database conversion script to update to 4.0

3.0 database will not be upgraded to 4.0. However, future upgrades of 4.0 database scheme need to be scripted.


posix + kernel: support for realtime signals

These were required for practicality

kernel: support find_msb_set_64() find_lsb_set_64()
tests: bitarray: test find_msb_set_64() and find_lsb_set_64()
ring_buffer: support static rings

These add support to the kernel

kernel: initial support for signals
tests: kernel: add tests for k_sigqueue() and k_sigtimedwait()
doc: kernel: services: add a doc about signals

These complete the POSIX_REALTIME_SIGNALS Option Group (and _POSIX_REALTIME_SIGNALS Option)

posix: add realtime signal support
tests: posix: common: add tests for realtime signals
doc: posix: mark realtime signals as supported 🎉

These add pthread_kill() to (finally) complete the POSIX_THREADS_BASE Option Group and _POSIX_THREADS Option

posix: threads: implement pthread_kill()
tests: posix: headers: test for pthread_kill()
doc: posix: mark posix threads as supported 🎉

Doc Preview
Fixes #59943
Fixes #74993
Fixes #74994
Fixes #74995

Works on my desk ¯_(ツ)_/¯
twister --retry-failed 3 -T tests/posix/common -T tests/kernel/signal/
..
INFO    - Using Ninja..
INFO    - Zephyr version: v3.7.0-rc1-12-gc284b50da617
INFO    - Using 'zephyr' toolchain.
INFO    - Selecting default platforms per test case
INFO    - Building initial testsuite list...
INFO    - Writing JSON report /home/cfriedt/zephyrproject/zephyr/twister-out/testplan.json
INFO    - JOBS: 32
INFO    - Adding tasks to the queue...
INFO    - Added initial list of jobs to queue
INFO    - Total complete:  562/ 562  100%  skipped:  272, failed:    0, error:    0
INFO    - 16 test scenarios (562 test instances) selected, 272 configurations skipped (246 by static filter, 26 at runtime).
INFO    - 290 of 562 test configurations passed (100.00%), 0 failed, 0 errored, 272 skipped with 0 warnings in 696.02 seconds
INFO    - In total 23167 test cases were executed, 27603 skipped on 41 out of total 757 platforms (5.42%)
INFO    - 288 test configurations executed on platforms, 2 test configurations were only built.
INFO    - Saving reports...
INFO    - Writing JSON report /home/cfriedt/zephyrproject/zephyr/twister-out/twister.json
INFO    - Writing xunit report /home/cfriedt/zephyrproject/zephyr/twister-out/twister.xml...
INFO    - Writing xunit report /home/cfriedt/zephyrproject/zephyr/twister-out/twister_report.xml...
INFO    - Run completed

@cfriedt  Quickly looked at this, some comments:

there is a layer violation in the kernel, i.e. you have CONFIG_POSIX_SIGNALS inside kernel/ and dependency on it in the Kconfig.
You are introducing a new API into kernel.h k_sig_* without any reference or documentation what this does and how it can be used standalone without posix portability layer being enabled.

@cfriedt Quickly looked at this, some comments:

there is a layer violation in the kernel, i.e. you have CONFIG_POSIX_SIGNALS inside kernel/ and dependency on it in the Kconfig.

I can see why it would appear at first that there might be a layering violation. However, there is actually none; the kernel is the logical common place to collect signal support, since it is required for ISO C, POSIX, and Realtime signals. In this case, the kernel Kconfig integer is really just acting as an "accumulator" for a number of other Kconfig integers spread throughout other parts of Zephyr.
As far as I know, there are no other APIs that use the same signal concept, but if there were, they would also just be "accumulated" in the same fashion. I.e. it is consistent.
It might be more obvious after first glance, but in the actual C code introduced here, Zephyr does not depend on or reference anything from POSIX (it's the exclusively the opposite). So the code dependency graph is unidirectional (aside from the POSIX features that have already been baked into Zephyr, such as errno, strnlen(), etc), and therefore there is no layering violation.

You are introducing a new API into kernel.h k_sig_* without any reference or documentation what this does and how it can be used standalone without posix portability layer being enabled.

There is Doxygen and there are tests. It certainly does not require POSIX to be enabled, as evident from the tests. Additionally, it can be used by any ISO C library wishing to provide support for signals, but that is out of scope of the POSIX API and not part of this PR.
I suppose I could write a page about it, if that's necessary.

Documentation for k_sig_emptyset()seems wrong (looks like a copy of
the one for k_sig_fillset()).
This looks odd:
struct k_sig_set {
       unsigned long sig[ROUND_UP(CONFIG_SIGNAL_SET_SIZE, BITS_PER_LONG) / BITS_PER_LONG];
};

I'd suggest DIV_ROUND_UP(CONFIG_SIGNAL_SET_SIZE, BITS_PER_LONG) instead.
Same thing with K_STRSIGSET_CHARS.
You have a mix of:
        for (size_t i = 0; i < ARRAY_SIZE(set->sig); ++i) { ... }

and:
        ARRAY_FOR_EACH(set->sig, i) { ... }

Maybe uniformize those.

Documentation for k_sig_emptyset()seems wrong (looks like a copy of
the one for k_sig_fillset()).

I'll take a look.

I'd suggest DIV_ROUND_UP(CONFIG_SIGNAL_SET_SIZE, BITS_PER_LONG) instead.
Same thing with K_STRSIGSET_CHARS.

I tried that originally. On revisiting, it seems that neither of those work in the case the numerator is zero, so I will add a MAX() operation as well.

        ARRAY_FOR_EACH(set->sig, i) { ... }

Maybe uniformize those.

Will do

there is a layer violation in the kernel, i.e. you have CONFIG_POSIX_SIGNALS inside kernel/ and dependency on it in the Kconfig.

I can see why it would appear at first that there might be a layering violation. However, there is actually none; the kernel is the logical common place to collect signal support, since it is required for ISO C, POSIX, and Realtime signals. In this case, the kernel Kconfig integer is really just acting as an "accumulator" for a number of other Kconfig integers spread throughout other parts of Zephyr.
As far as I know, there are no other APIs that use the same signal concept, but if there were, they would also just be "accumulated" in the same fashion. I.e. it is consistent.
It might be more obvious after first glance, but in the actual C code introduced here, Zephyr does not depend on or reference anything from POSIX (it's exclusively the opposite). So the code dependency graph is unidirectional (aside from the POSIX features that have already been baked into Zephyr, such as errno, strnlen(), etc), and therefore there is no layering violation.

I was referring to the Kconfig above, not the code. It would be nice to not have CONFIG_POSIX in the kernel/ to avoid any confusion, probably there is a better way to set the queue size other than referencing a kconfig from 1 layer up.

There is Doxygen and there are tests. It certainly does not require POSIX to be enabled, as evident from the tests. Additionally, it can be used by any ISO C library wishing to provide support for signals, but that is out of scope of the POSIX API and not part of this PR.
I could write a page about it, if that's necessary, but it might be better to defer that given that it is experimental.

Docygen is not enough, standalone usage of signals needs to be detailed, similar to all other kernel premitives and services we currently have and the usecase (standalone) needs to be provided.

I was referring to the Kconfig above, not the code. It would be nice to not have CONFIG_POSIX in the kernel/ to avoid any confusion, probably there is a better way to set the queue size other than referencing a kconfig from 1 layer up.

Yeah, it's unfortunate that Kconfig does not allow select for integer Kconfig options, otherwise, it would be fairly straightforward.
Technically speaking, we could just have a default of 1 if SIGNAL is selected, otherwise 0, and then simply have build-time assertions in other areas saying like so:
// signal.c (e.g. common libc)
BUILD_ASSERT(CONFIG_SIGNAL_SET_SIZE >= 6, "ISO C requires CONFIG_SIGNAL_SET_SIZE >= 6");
// signal.c (posix)
BUILD_ASSERT(CONFIG_SIGNAL_SET_SIZE >= 31, "POSIX signals require CONFIG_SIGNAL_SET_SIZE >= 31");
// rtsig.c (realtime)
BUILD_ASSERT(CONFIG_SIGNAL_SET_SIZE >= 32, "POSIX signals require CONFIG_SIGNAL_SET_SIZE >= 32 (40 to be conformant)");

Docygen is not enough, standalone usage of signals needs to be detailed, similar to all other kernel premitives and services we currently have and the usecase (standalone) needs to be provided.

Ok. I'll add a sample and a page in the documentation.

rebased

used ARRAY_FOR_EACH() where possible
removed k_strsignal*() in favour of LOG_HEXDUMP_DBG()
remove use of POPCOUNT()
moved structs and macros to include/zephyr/kernel/signal.h
used MAX(x, 1) with DIV_ROUND_UP() so that the numerator would be non-zero
added a page with documentation to doc/kernel/services/signal.rst

touched-up signals.rst / doxygen

got rid of Kconfig compliance issues (odd that checkpatch.pl did not catch those, and no warnings were generated at all... were they false positives?)

Yeah, it would appear that the Kconfig warnings are a false positive.

used u*_count_leading_zeros() instead of find_lsb_set_*()
used bitwise operators instead of expensive division & modulo in signal arithmetic
undid the unnecessary change of SIGUSR1 to SIGURG

fixed commit message typo: k_sigqueue() -> k_sig_queue()

removed reference to non-existent timeout parameter in k_sig_queue() doxygen

Fixed up references in signals.rst

I'm still seeing weirdness in the Doxygen output. Not entirely sure how to fix this

I'm still seeing weirdness in the Doxygen output. Not entirely sure how to fix this. @kartben - have you ever seen this before?

Is there a reason you're using @headerfile? Looks like the likely culprit (not sure why tho)

Is there a reason you're using @headerfile? Looks like the likely culprit (not sure why tho)

Actually, I added @headerfile thinking that would solve the problem, but it didn't help. With or without it was the same.
Then I reversed where @addtogroup and @defgroup were for the k_sig_apis group, and it half-worked. It now shows #include <signal.h> which is slightly correct. I think it would be preferable to use #include <zephyr/kernel.h> since kernel headers shouldn't be included directly.
Ahh... I see it's the same situation already for spinlocks.

At least it's not only a problem here, so I think my next push should be OK.
Have a nice weekend. Please take a look when the signals are green again, but no rush.

@cfriedt if you want to use @headerfile tags (which I don't think you need, but I might be missing something), then double check the correct syntax for sharp brackets: https://www.doxygen.nl/manual/commands.html#cmdheaderfile

@jukkar, @ycsin - please revisit when you have a moment.
@kartben - @headerfile isn't used anywhere else in Zephyr currently, so I would prefer to not introduce it. The #include ... bit seems to be generated by SHOW_HEADERFILE

@peter-mitsis , @andyross - would you be able to review this from the kernel side?

Years ago, Zephyr had a signal-like feature called alerts; however, this was removed in 2018 as no one was using it. This leads me to wonder, would it be better to have this entirely defined within the posix subsystem/library and not in the kernel?

for reference: https://docs.zephyrproject.org/1.13.0/kernel/synchronization/alerts.html?highlight=alerts

would it be better to have this entirely defined within the posix subsystem/library and not in the kernel?

The primary reason is that, eventually, the same signal mechanism can be used by both libc and POSIX to signal threads (so that libc signals can be independent of POSIX).
The second reason is that (currently) Zephyr threads are not POSIX threads, so if it were to be only available at the POSIX thread level, then there would be an asymmetric way to signal. This simplifies and future-proofs signalling so it is bidirectional.

@cfriedt - Not sure if there is anything you need from me at the moment on this PR, but I thought I would ping you just in case I have overlooked something.

@peter-mitsis - I have to respin. Just in Vienna at LPC this week. I'll make sure to check about ISR vs syscall context.

I'd like to get #79479 in before this (to factor out the BITS_PER_BYTE macro). I have respun with changes requested, but will push after 79479 is in.


fix: Increase backoff retries and duration for CP4I

contributes-to: #284
Description of changes:

Increase backoff duration for CP4I Applications

Output of argocd app list command or screenshot of the ArgoCD Application synchronization window showing successful application of changes in this branch.
 argocd app list
NAME                 CLUSTER                         NAMESPACE         PROJECT               STATUS  HEALTH   SYNCPOLICY  CONDITIONS  REPO                                    PATH                                    TARGET
argo-app             https://kubernetes.default.svc  openshift-gitops  argocd-control-plane  Synced  Healthy  Auto-Prune  <none>      https://github.com/IBM/cloudpak-gitops  config/argocd                           284-longer-sync
cp-shared-app        https://kubernetes.default.svc  ibm-cloudpaks     default               Synced  Healthy  Auto-Prune  <none>      https://github.com/IBM/cloudpak-gitops  config/argocd-cloudpaks/cp-shared       284-longer-sync
cp-shared-operators  https://kubernetes.default.svc  ibm-cloudpaks     default               Synced  Healthy  Auto-Prune  <none>      https://github.com/IBM/cloudpak-gitops  config/cloudpaks/cp-shared/operators    284-longer-sync
cp4i-apic            https://kubernetes.default.svc  cp4i              default               Synced  Healthy  Auto-Prune  <none>      https://github.com/IBM/cloudpak-gitops  config/cloudpaks/cp4i/install-apic      284-longer-sync
cp4i-app             https://kubernetes.default.svc  cp4i              default               Synced  Healthy  Auto-Prune  <none>      https://github.com/IBM/cloudpak-gitops  config/argocd-cloudpaks/cp4i            284-longer-sync
cp4i-mq              https://kubernetes.default.svc  cp4i              default               Synced  Healthy  Auto-Prune  <none>      https://github.com/IBM/cloudpak-gitops  config/cloudpaks/cp4i/install-mq        284-longer-sync
cp4i-platform        https://kubernetes.default.svc  cp4i              default               Synced  Healthy  Auto-Prune  <none>      https://github.com/IBM/cloudpak-gitops  config/cloudpaks/cp4i/install-platform  284-longer-sync
cp4i-prereqs         https://kubernetes.default.svc  cp4i              default               Synced  Healthy  Auto-Prune  <none>      https://github.com/IBM/cloudpak-gitops  config/cloudpaks/cp4i/install-prereqs   284-longer-sync

:tada: This PR is included in version 0.30.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Fix: correctly handle image URLs

This PR fixes an issue where image URLs are not correctly handled when a streamlit app is not exposed on the root of the domain. I think it fixes https://github.com/andfanilo/streamlit-drawable-canvas/issues/83
Basically, we always pass a relative URL on the Python side, then we reconstruct the full URL on the frontend. This works both in development and in deployment, so it removes the need for these lines

I'm so sorry, I missed this! Github did not notify me...I'll have a look ASAP, did you test on Streamlit Cloud?

I'm sorry, I only tested locally and on our servers

Ok thanks, don't worry I'll do a fake release and test myself, and if it works I'll do a real release
Thanks for assisting! This has been in my todo forever...


[Feature Request] Allow plugins to add tasks to chain maintenance

Plugins may add various objects to the database, which allows 3rd party code to benefit from the infrastructure the blockchain uses to maintain its internal state. One of the tools the database uses to keep its state consistent is the maintenance interval, a time during which slow calculations can be performed, or index-wide sweeps to check for and execute pending tasks can be performed.
Currently, there is no way (that I know of) for a plugin to register a routine to be run during chain maintenance. This would be a useful feature for plugins, as they also may have some pending tasks or slow calculations which can be deferred to a maintenance interval.
I propose the addition of a method on the chain::database which allows plugins to register callable objects, which take as a parameter a non-const reference to the database, to be called during maintenance intervals. These objects would need to be registered during database initialization.
A different mode of operation could involve one-off tasks which can be deferred until maintenance. In this mode, the callable objects would be registered during normal database operations, executed at the maintenance interval, and then destroyed. Note that in this mode of operation, the callable objects would have to be serializable so that they could be saved to disk and restored on database shutdown and startup. This mode of operation, although more complex to implement due to the added requirements of serializability and persistence, may be more efficient as it is assumed that the tasks would only be registered if it is known that a maintenance step will be required, and the dirty objects (the ones needing updating) may be known as state of the callable object (thus avoiding the need to sweep an entire index looking for dirty objects). In this way, plugin maintenance routines would not need to be run at all unless they were known to be necessary, and index-wide sweeps could be avoided.

For the second mode of operation, it's possible that the plugin may process a pending task during normal operations before the maintenance interval occurs. In this case, the pending task could be canceled.
To meet this use case as well as the nominal case described above, perhaps a better design would be that plugins can retrieve a serializable object with promise semantics (i.e. a promise for a non-const reference to the database during a maintenance interval). If the promise is destroyed, the task is canceled; otherwise, the promise will resolve with the reference and a handler can run (with whatever state it needs) performing the necessary tasks.

After more thought about this, if the second mode of operation were implemented, it wouldn't be necessary to use a maintenance interval at all. Since the second mode has very low overhead (no index-wide sweeps) and would only be invoked if it was known that work needed to be done, this infrastructure could be used to schedule tasks at arbitrary times instead of at the maintenance interval. The only necessary change would be to add a parameter to the task registration method containing a timestamp. The task would be invoked while processing the first block at or following the supplied timestamp.

This issue was moved to bitshares/bitshares-core#211


integrate the openwhisk apigateway docker container

Without the apigateway deploy and configured the command wsk api will not work.
In the mean time if someone wants to use wsk api need to choose a different deployment method like native ansible or vagrant from main repo, or kube deploy.

@ddragosd I see gateway is now in docker-compose #123. Should we close this issue?


Reducing Copy-Pastes in Packed Field Testing

Currently for each 31-bit field and architecture (AVX2/512/Neon) we have an essentially copy pasted testing suite that we run.
This is unideal and also leads to situations where some tests are only applied for particular field-arch pairs for seemingly no reason.
This PR pulls out almost all the packed field testing functions into the field_testing crate and adds a macro allowing for all testing to be run on a given packed field more easily.

Okay, I've reworked it slightly to avoid introducing a new trait and instead implemented things using PackedValue.
The functions are a little untidy as PackedValue only works with slices and references as opposed to the underlying value so the functions involve a little more borrowing and dereferencing than I'd like. I think the natural fix for this would be in changing the PackedValue trait so that would be a seperate PR.
Also before this merges someone needs to double check that everything compiles and runs on NEON architectures.


luaprompt: init at 0.9

luaprompt is an interactive Lua prompt offering features not found in the official Lua interpreter:

Readline-based input with history and completion for keywords, globals, table accesses, and module names.
Persistent command history across sessions and result recording.
Descriptive value pretty-printing without needing an equal sign, mimicking Lua code.
Color highlighting for errors and variable printouts.

Things done

Built on platform(s)

[X] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[X] Fits CONTRIBUTING.md.

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

Thanks for the review @kirillrdy, I have incorporated your feedback.

repology search revals that we already package this
https://github.com/NixOS/nixpkgs/blob/nixos-unstable/pkgs/development/lua-modules/generated-packages.nix
can we do some code reuse ? I am not at all across lua infra cc @NixOS/lua

@michaeladler no worries, I am going to hand this to @NixOS/lua, feel free to ping me if you don't get response


[ENG-6866][eas-cli] Consistent prompt for application identifier for both platorms

Checklist

[ ] I've added an entry to CHANGELOG.md if necessary. You can comment this pull request with /changelog-entry [breaking-change|new-feature|bug-fix|chore] [message] and CHANGELOG.md will be updated automatically.

Why

The command will ask for the Android package name, but will bail on the missing ios.bundleIdentifier.

This happens only on managed, for bare projects we would just fail, but it's hard to create native project where those values are not defined, so it should not be a big issue.
How
Test Plan
remove package name and bundle identifier from app.json and run eas bulid:version:sync

/changelog-entry bug-fix Ask for the missing application identifier consistently in eas build:version:sync command.


Rebuild OpenSSL for MSVC++ v140

📒 Description
Rebuild OpenSSL for MSVC++ v140
🤯 List of changes

[x] Replaced vc120 built binaries with vc140
[x] Optimized include directories for TogglDesktopDLL.vcxproj
[x] Added OpenSSL build instructions that worked for me

👫 Relationships
Closes #3066
🔎 Review hints

Building from clean repo should work
Running the app without vc120 should work:

Rename the files msvcp120.dll and msvcr120.dll from C:\Windows\System32 and C:\Windows\SysWOW64.
Run the application from Visual Studio

How does this work. Is the openssl built together with the app in Visual Studio or we need to build it from command line?

The binaries are in the repo.
If at any point we need to rebuild them (like I needed here to target v140), then we do it from a command line.
Perhaps we should just remove the line about rebuilding them from Readme, as those instructions can get obsolete as soon as we change our dependencies, like raise the version of Poco.

Looks good 👍


incompatibility with Audaki Cart Engine

Audaki Cart Engine (https://modrinth.com/mod/audaki-cart-engine) basically makes the minecart faster but without breaking redstone circuits, but when using it together with the Copper Rail mod, the cart ignores the effect of the Copper Rail and detects it as just a normal rail, and this problem only happens when the Player is driving the cart, when the cart is empty everything works correctly
I showed this problem to the creator of Audaki Cart Engine and he told me this:
          Heya, I just checked it and the mod in question is also overriding the function moveOnRail: https://github.com/iluha168/MCTheCopperRail/blob/main/src/main/java/com/thecopperrail/mixin/AbstractMinecartMixin.java#L23C20-L23C30 ; I don’t know how to properly fix this, but I will accept pull requests as long as they don’t negatively impact performance for people who don’t use this mod.

by @audaki in https://github.com/audaki/minecraft-cart-engine/issues/26#issuecomment-2028455708

if it is possible to fix this I would appreciate it if there was an update to fabric 1.20.1

minecartMovementTick {
    if minecart is being ridden {
        vanilla logic but faster movement
    } else {
        vanilla logic with copper rails
    }
}

The incompatibility comes from ACE mod. Authors use mixins irresponsibly, if that makes sense.
Let me explain it to you. Imagine this pseudocode is vanilla code for minecart movement:
minecartMovementTick {
    vanilla logic
}

What mods should do (to be as most compatible with other mods as possible) is modify existing vanilla logic bit by bit:
minecartMovementTick {
    V
    A  <- (mod 1 affect this)
    N
    I
    L  <- (mod 2 affects that)
    L
    A
}

Let us call this slightly modified logic modded logic
minecartMovementTick {
        modded logic
}

The problem is, the authors of ACE mod copied the entirety of decompiled vanilla logic, modified it, and inject back the copy:
minecartMovementTick {
    if minecart is rideable and is being ridden:
        vanilla logic but faster movement
    else:
        modded logic
}

This results in vanilla-rails-only logic when a minecart is being ridden. As you can see, most (all?) modded rails will not work because of this. You can prove this by installing more rail mods and noticing none of them work when the minecart is being ridden.
The copper rail acts as an iron rail because it is in the minecraft:rails tag.
TL;DR This is not my problem :P
Regarding your second question, the mod already works for all 1.20.x versions as far as i tested. If it does not, you can always make another issue (make sure to specify the version then).

@iluha168 Before you throw punches like this you should have a closer look at code you intend to criticize, otherwise it might turn out to be a tad embarrassing for yourself in the end.
To use your example:
moveOnRail {
V  <- (ACE affects this)
A  <- (ACE affects this)
N  <- (ACE affects this)
I  <- (ACE affects this)
L  <- (ACE affects this)
L  <- (ACE affects this)
A  <- (ACE affects this)
}
Hope this helps you to understand.

@audaki That is wrong.
Decompiled by FernFlower AbstractMinecartEntity.class after applying mixins from ACE-2.0.6 and TCR 0.9.1
   public void moveOnRail(BlockPos pos, BlockState state) {
      CallbackInfo callbackInfo55 = new CallbackInfo("moveOnRail", true);
      this.handler$zcj000$audaki_cart_engine$moveOnRailOverwrite(pos, state, callbackInfo55);
      if (!callbackInfo55.isCancelled()) {
         this.onLanding();
         double d = this.getX();
         double e = this.getY();
         double f = this.getZ();
         Vec3d vec3d = this.snapPositionToRail(d, e, f);
         e = (double)pos.getY();
         boolean bl = false;
         boolean bl2 = false;
         Block injectorAllocatedLocal57 = Blocks.POWERED_RAIL;
         if (this.redirect$zig000$thecopperrail$injectedPoweredRailCheck(state, injectorAllocatedLocal57)) {
            bl = (Boolean)state.get(PoweredRailBlock.POWERED);
            bl2 = !bl;
         }

         double g = 0.0078125;
         if (this.isTouchingWater()) {
            g *= 0.2;
         }

         Vec3d vec3d2 = this.getVelocity();
         RailShape railShape = (RailShape)state.get(((AbstractRailBlock)state.getBlock()).getShapeProperty());
         switch (1.field_7682[railShape.ordinal()]) {
            case 1:
               this.setVelocity(vec3d2.add(-g, 0.0, 0.0));
               ++e;
               break;
            case 2:
               this.setVelocity(vec3d2.add(g, 0.0, 0.0));
               ++e;
               break;
            case 3:
               this.setVelocity(vec3d2.add(0.0, 0.0, g));
               ++e;
               break;
            case 4:
               this.setVelocity(vec3d2.add(0.0, 0.0, -g));
               ++e;
         }

         vec3d2 = this.getVelocity();
         Pair<Vec3i, Vec3i> pair = getAdjacentRailPositionsByShape(railShape);
         Vec3i vec3i = (Vec3i)pair.getFirst();
         Vec3i vec3i2 = (Vec3i)pair.getSecond();
         double h = (double)(vec3i2.getX() - vec3i.getX());
         double i = (double)(vec3i2.getZ() - vec3i.getZ());
         double j = Math.sqrt(h * h + i * i);
         double k = vec3d2.x * h + vec3d2.z * i;
         if (k < 0.0) {
            h = -h;
            i = -i;
         }

         double l = Math.min(2.0, vec3d2.horizontalLength());
         vec3d2 = new Vec3d(l * h / j, vec3d2.y, l * i / j);
         this.setVelocity(vec3d2);
         Entity entity = this.getFirstPassenger();
         if (entity instanceof PlayerEntity) {
            Vec3d vec3d3 = entity.getVelocity();
            double m = vec3d3.horizontalLengthSquared();
            double n = this.getVelocity().horizontalLengthSquared();
            if (m > 1.0E-4 && n < 0.01) {
               this.setVelocity(this.getVelocity().add(vec3d3.x * 0.1, 0.0, vec3d3.z * 0.1));
               bl2 = false;
            }
         }

         double o;
         if (bl2) {
            o = this.getVelocity().horizontalLength();
            if (o < 0.03) {
               this.setVelocity(Vec3d.ZERO);
            } else {
               this.setVelocity(this.getVelocity().multiply(0.5, 0.0, 0.5));
            }
         }

         o = (double)pos.getX() + 0.5 + (double)vec3i.getX() * 0.5;
         double p = (double)pos.getZ() + 0.5 + (double)vec3i.getZ() * 0.5;
         double q = (double)pos.getX() + 0.5 + (double)vec3i2.getX() * 0.5;
         double r = (double)pos.getZ() + 0.5 + (double)vec3i2.getZ() * 0.5;
         h = q - o;
         i = r - p;
         double s;
         double t;
         double u;
         if (h == 0.0) {
            s = f - (double)pos.getZ();
         } else if (i == 0.0) {
            s = d - (double)pos.getX();
         } else {
            t = d - o;
            u = f - p;
            s = (t * h + u * i) * 2.0;
         }

         d = o + h * s;
         f = p + i * s;
         this.setPosition(d, e, f);
         t = this.hasPassengers() ? 0.75 : 1.0;
         u = this.getMaxSpeed();
         vec3d2 = this.getVelocity();
         this.move(MovementType.SELF, new Vec3d(MathHelper.clamp(t * vec3d2.x, -u, u), 0.0, MathHelper.clamp(t * vec3d2.z, -u, u)));
         if (vec3i.getY() != 0 && MathHelper.floor(this.getX()) - pos.getX() == vec3i.getX() && MathHelper.floor(this.getZ()) - pos.getZ() == vec3i.getZ()) {
            this.setPosition(this.getX(), this.getY() + (double)vec3i.getY(), this.getZ());
         } else if (vec3i2.getY() != 0 && MathHelper.floor(this.getX()) - pos.getX() == vec3i2.getX() && MathHelper.floor(this.getZ()) - pos.getZ() == vec3i2.getZ()) {
            this.setPosition(this.getX(), this.getY() + (double)vec3i2.getY(), this.getZ());
         }

         this.applySlowdown();
         Vec3d vec3d4 = this.snapPositionToRail(this.getX(), this.getY(), this.getZ());
         Vec3d vec3d5;
         double w;
         if (vec3d4 != null && vec3d != null) {
            double v = (vec3d.y - vec3d4.y) * 0.05;
            vec3d5 = this.getVelocity();
            w = vec3d5.horizontalLength();
            if (w > 0.0) {
               this.setVelocity(vec3d5.multiply((w + v) / w, 1.0, (w + v) / w));
            }

            this.setPosition(this.getX(), vec3d4.y, this.getZ());
         }

         int x = MathHelper.floor(this.getX());
         int y = MathHelper.floor(this.getZ());
         if (x != pos.getX() || y != pos.getZ()) {
            vec3d5 = this.getVelocity();
            w = vec3d5.horizontalLength();
            this.setVelocity(w * (double)(x - pos.getX()), vec3d5.y, w * (double)(y - pos.getZ()));
         }

         if (bl) {
            Vec3d var10000 = this.getVelocity();
            CallbackInfo callbackInfo58 = new CallbackInfo("moveOnRail", true);
            this.handler$zig000$thecopperrail$injectedCopperRailCallback(pos, state, callbackInfo58);
            if (callbackInfo58.isCancelled()) {
               return;
            }

            vec3d5 = var10000;
            w = vec3d5.horizontalLength();
            if (w > 0.01) {
               double z = 0.06;
               this.setVelocity(vec3d5.add(vec3d5.x / w * 0.06, 0.0, vec3d5.z / w * 0.06));
            } else {
               Vec3d vec3d6 = this.getVelocity();
               double aa = vec3d6.x;
               double ab = vec3d6.z;
               if (railShape == RailShape.EAST_WEST) {
                  if (this.willHitBlockAt(pos.west())) {
                     aa = 0.02;
                  } else if (this.willHitBlockAt(pos.east())) {
                     aa = -0.02;
                  }
               } else {
                  if (railShape != RailShape.NORTH_SOUTH) {
                     return;
                  }

                  if (this.willHitBlockAt(pos.north())) {
                     ab = 0.02;
                  } else if (this.willHitBlockAt(pos.south())) {
                     ab = -0.02;
                  }
               }

               this.setVelocity(aa, vec3d6.y, ab);
            }
         }

      }
   }

Hello, @iluha168. I think you can fix this by changing the priority of your mixin to higher than the other mod (to be injected first). While the other mod completely replaces the moveOnRail method with a new one, if you manage to execute your code first, it might just work fine. Currently, the other mod seems to have a default priority for its mixin.

@Blockmeska you can fix this by rewriting ACE. ACE creates a copy of the vanilla function, meaning other mods would have to inject the same code twice into 2 different locations with 2 different priorities in order to be "compatible".
I could make my own yet another minecart boosting mod if you guys really want this? :thinking:


New release?

Can we please create a release to make this live - https://github.com/django-import-export/django-import-export/pull/794
Thanks

Also would like to have a new release

do we have a release cycle?

released :)


[Snyk] Upgrade web-vitals from 3.4.0 to 3.5.0

This PR was automatically created by Snyk using the credentials of a real user.Snyk has created this PR to upgrade web-vitals from 3.4.0 to 3.5.0.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 2 versions ahead of your current version.
The recommended version was released 22 days ago, on 2023-09-28.

Release notes

Package name: web-vitals

3.5.0 - 2023-09-28Release v3.5.0

3.5.0-soft-navs-10 - 2023-09-28

3.4.0 - 2023-07-10Release v3.4.0

    from web-vitals GitHub release notes

Commit messages

Package name: web-vitals

dfdf57d Release v3.5.0
9cad8ee Update CHANGELOG for 3.5.0 (#387)
1cc298c Run onLCP callback in own task (#386)
1e94221 Bump nunjucks from 3.2.3 to 3.2.4 (#385)
8fcf698 Upgrade selenium and webdriver (#384)
4b769ff Fix INP `durationThreshold` bug when set to 0 (#372)
27db8a0 Readme fixes for INP (#379)
a948d3c Remove reference to Universal Analytics from README (#371)
3806160 Prevent FID entries being emitted as INP for non-supporting browsers (#368)

Compare

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:
🧐 View latest project report
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

Closed in #135


send() takes at least 1 positional argument

This function may cause python exception if it doesn't have positional argument msg.

Do you have a test that triggers this?


Stiffness matrix for shaft tapered element is not returning the expected results

We are having problems with the stiffness matrix for shaft tapered elements.
PR #233 implemented some tests we are skipping for now because of these issues.
@rodrigomoliveira1 , could you describe here the reference for the implementation and what tests did you carry so we can try discuss a solution for this problem?

The matrices for shaft tapered elements are based in this article:

Genta, G., and Gugliotta, A. (1988). A conical element for finite element rotor dynamics, Journal of Sound and Vibration 120,175-182.

Following these matrices, I have implemented some tests (PR #217 and PR #233).
Besides some basic tests to check the correct functioning of each method, I did a simple test that compares a cylindrical element built from class  ShaftElement and a a cylindrical element built from ShaftTaperedElement. The expected results were numerically equal matricess. The mass (M), the gyroscopic (G) and the damping (C) matrices are ok, however it's not happening for the stiffness matrix (K).
@pytest.fixture
def tap2():
    #  Timoshenko element
    L = 0.4
    i_d_l = 0.
    i_d_r = 0.
    o_d_l = 0.25
    o_d_r = 0.25

    return ShaftTaperedElement(
        L, i_d_l, i_d_r, o_d_l, o_d_r, steel, shear_effects=True, rotary_inertia=True
    )

@pytest.fixture
def tim2():
    #  Timoshenko element
    le_ = 0.4
    i_d_ = 0
    o_d_ = 0.25
    return ShaftElement(
            le_, i_d_, o_d_, steel, rotary_inertia=True, shear_effects=True
    )

def test_match_mass_matrix(tap2, tim2):
    M_tap = tap2.M()
    M_tim = tim2.M()
    assert_almost_equal(M_tap, M_tim, decimal=5)

@pytest.mark.skip(reason="inconsistencies in stiffness matrix")
def test_match_stiffness_matrix(tap2, tim2):
    K_tap = tap2.K()
    K_tim = tim2.K()
    assert_almost_equal(K_tap, K_tim, decimal=5)

def test_match_gyroscopic_matrix(tap2, tim2):
    G_tap = tap2.G()
    G_tim = tim2.G()
    assert_almost_equal(G_tap, G_tim, decimal=5)

I will update here what I am trying to test to solve this issue.
I have tried different shear_method_calc ("cowper" or "hutchinson") and the comparison for K are still off, but it looks like "hutchinson" will give a smaller error.
For example, the value for K at the [0, 0] element is 2.40037e+09 for tap2.K() and 4.08082e+09 for tim2.K(). When we change to "hutchinson" we get 3.73722e+09 for tap2.K() and 3.66603e+09 for tim2.K().

For reference, this is the stiffness matrix for the element obtained from XLTRC2.
Element properties (ross steel):
density: 7810 kg/m3
E: 211e9 N/m2
G: 81.2e9 N/m2
L=0.4, od_left=0.25, id_left=0, od_right=0.25, id_right=0

4.08E+09
0
0
8.16E+08
-4.1E+09
0
0
8.16E+08

0
4.08E+09
-8.2E+08
0
0
-4.1E+09
-8.2E+08
0

0
-8.2E+08
2.64E+08
0
0
8.16E+08
62086082
0

8.16E+08
0
0
2.64E+08
-8.2E+08
0
0
62086082

-4.1E+09
0
0
-8.2E+08
4.08E+09
0
0
-8.2E+08

0
-4.1E+09
8.16E+08
0
0
4.08E+09
8.16E+08
0

0
-8.2E+08
62086082
0
0
8.16E+08
2.64E+08
0

8.16E+08
0
0
62086082
-8.2E+08
0
0
2.64E+08

I have finally fixed the problems related to the stiffness matrix for shaft tapered elements.
The reference paper has some disagreement with what Friswell presents in his book and in his codes (which are based in the same paper we are using).

First of all, some terms in the stiffness matrix have their signs missplaced.

The element stiffness matrix is built from 2 separated matrices (K1 and K2). K1 is proportional to the Young's Modulos (E) and the Inertia (Ie), while K2 should be proportional to the Shear Modulus (G) and the Area (A).

        K1 = [
            [  k1,     0,       0,    L*k2,   -k1,    0,       0,    L*k3],
            [   0,    k1,   -L*k2,       0,     0,  -k1,   -L*k3,       0],
            [   0, -L*k2, L**2*k4,       0,     0, L*k2, L**2*k5,       0],
            [L*k2,     0,       0, L**2*k4, -L*k2,    0,       0, L**2*k5],
            [ -k1,     0,       0,   -L*k2,    k1,    0,       0,   -L*k3],
            [   0,   -k1,    L*k2,       0,     0,   k1,    L*k3,       0],
            [   0, -L*k3, L**2*k5,       0,     0, L*k3, L**2*k6,       0],
            [L*k3,     0,       0, L**2*k5, -L*k3,    0,       0, L**2*k6],
        ]

        K2 = [
            [  k7,     0,       0,    L*k8,   -k7,     0,       0,    L*k8],
            [   0,    k7,   -L*k8,       0,     0,   -k7,   -L*k8,       0],
            [   0, -L*k8, L**2*k9,       0,     0,  L*k8, L**2*k9,       0],
            [L*k8,     0,       0, L**2*k9, -L*k8,     0,       0, L**2*k9],
            [ -k7,     0,       0,   -L*k8,    k7,     0,       0,   -L*k8],
            [   0,   -k7,    L*k8,       0,     0,    k7,    L*k8,       0],
            [   0, -L*k8, L**2*k9,       0,     0,  L*k8, L**2*k9,       0],
            [L*k8,     0,       0, L**2*k9, -L*k8,     0,       0, L**2*k9],
        ]

K1 = K1 * (E * Ie * K / (105 * L ** 3 * (1 + phi) ** 2))
K2 = K2 * (G * A * phi ** 2 * K2 / (12 * kappa * L * (1 + phi) ** 2))
K = K1 + K2
However, checking again what Friswell has done in his code, the correct formula (and what is working fine now) is:
K = E * Ie / (105 * L ** 3 * (1 + phi) ** 2) * (K1 + 105 * phi * K2)

The paper also says that the term K1[0][0] is k1 = 630 * a2 + 504 * b2 + 441 * gama + 396 * delta, but it actually lacks an independent value. The correct form is k1 = 1260 + 630 * a2 + 504 * b2 + 441 * gama + 396 * delta. This make sense, since if we set both ends with equal outer and inner radius, then a2, b2, gama and delta will be zero, and K1[0][0] would be zero too without this independent value (1260).

PR #268 closes this issue


Populate elasticCache collection after SSR reload

I'm submitting a ...

[ ] bug report
[x] feature request
[ ] support request => Please do not submit support request here, see note at the top of this template.

What is the current behavior?

Currently the offline cache (indexedDb - elasticCache collection) is populated only when user clicks thru categories in the CSR (client's side rendering) mode. We should populate the caceh after full page reload with the window.INITIAL_STATE otherwise offline mode won't work for the products loaded in the SSR

Other information (e.g. detailed explanation, stacktraces, related issues, suggestions how to fix, links for us to have context, eg. stackoverflow, gitter, etc)

Probably the easiest and most safe way to populate the cache is to just call the ‘product/list’ in the background (correct, it’s separate request but the INITIAL_STATE doesn’t contain all the product attributes thereferore we couldn’t populate cache with it)

We need to run exactly this kind of request:
https://github.com/DivanteLtd/vue-storefront/blob/41ec50deebd183e08c4b59a3eca1a58b101f61c0/core/modules/catalog/store/category/actions.ts#L284

With this issue also Homepage products should be cached for offline use on first page render


Cannot simulate shift-click on a checkbox

I am trying to simulate shift-clicking a checkbox but I can't figure out how.
I have tried the following in my Capybara code:
my_checkbox.native.send_key [:Shift, :Click]
my_checkbox.native.send_key [:Shift, :Space]
my_checkbox.native.send_key [:Shift, ' ']

Unfortunately they all act like a plain click.
Any help would be appreciated!
I'm using Poltergeist 1.9.0 and phantomjs 2.1.1.

my_checkbox.send_key (there is no need for .native anymore - the README needs updating) emulates keypresses not mouse clicks, and there is no support for specifying modifiers with #click so there is currently no way to do a shift-click .  If you have a keyboard only alternative for whatever JS is handling your shift-click you could use that, otherwise you may not be able to test this behavior (without using execute_script to build and fire off your own events)

Thanks for the information!


Code for skipping containers deduplicated

SUMMARY
Tiny code deduplication of skipping containers within RangeBitmap.
Automated Checks

[x] I have run ./gradlew test and made sure that my PR does not break any unit test.
[x] I have run ./gradlew checkstyleMain or the equivalent and corrected the formatting warnings reported.

Merging.


When trying to extract an invalid non-zero .zip file, Files crashes

Description
When trying to extract an invalid non-zero .zip file, Files crashes
Steps To Reproduce

Open up notepad, write some junk in it then save it as invalid.zip
Open up Files, and navigate to where you saved the zip file
Right Click -> Extract Here
Wait for Files to crash silently

Expected behavior
An error message saying that the file you tried to extract was invalid or corrupted.
Files Version
<IP_ADDRESS>
Windows Version
10.0.19043.1237
Relevant Assets
debug.log

Fixed on main.


Creating environment using anaconda

Hi,
I received error like below when I executed  conda env create -f environment.yml
Is it ok? or it is not ok,  What should I do to resolve this issue?
Error:
Pip subprocess error:
ERROR: Could not find a version that satisfies the requirement tensorflow-data-validation==0.15.0 (from -r C:\Users\xxxxxxxxx\Downloads\handson-ml-master\handson-ml-master\condaenv.du4xm5kl.requirements.txt (line 9)) (from versions: 0.21.0, 0.21.1, 0.21.2, 0.21.4, 0.21.5)
ERROR: No matching distribution found for tensorflow-data-validation==0.15.0 (from -r C:\Users\xxxxxxxxx\Downloads\handson-ml-master\handson-ml-master\condaenv.du4xm5kl.requirements.txt (line 9))
CondaEnvException: Pip failed

I resolved it to modify environment.yml file.
Originally, this configuration file input tensorflow-data-validation==0.15.0, but even if I make environments using conda, my environments failed and shows it looks able to use more than 20, so I updated it tensorflow-data-validation==0.21.0 then it succeeded to build environment using conda. But I am not sure it may happen error someday to validate data using tensorflow.


[FEATURE REQUEST] ephemeral onion services

Is your feature request related to a problem? Please describe.

By default, as the tools provided are for persistent services because
https://gitweb.torproject.org/torspec.git/tree/control-spec.txt#n1849

Once created the new Onion Service will remain active until either the
Onion Service is removed via "DEL_ONION", the server terminates, or the
control connection that originated the "ADD_ONION" command is closed.
It is possible to override disabling the Onion Service on control
connection close by specifying the "Detach" flag.

Also because I don't mess with tor control except for the Vanguards addon.
Describe the solution you'd like

Use the control port at its finest.
Describe alternatives you've considered

tor-ctrl by Adrelanos
Tested and it works, it requires socat and xxd, socat I can maybe change to netcat but xxd is linux only? bad for portability but can I do the same with only hexdump?
Also, this has not high priority because if this is done one day, would be a script just for it.
Additional context

https://gitweb.torproject.org/torspec.git/tree/control-spec.txt
https://github.com/adrelanos/tor-ctrl/blob/master/usr/bin/tor-ctrl

Can I interact with Tor's controller interface directly?
socat man
nc man
Socat is on ports for OpenBSD but NetCat is on base...
Finding the equivalents:
networking tool for unix socket
current is

socat

socat - UNIX-CONNECT:"${TOR_CONTROL}"

would like to chage it too

netcat

nc -U "${TOR_CONTROL}"

reason: it is on OpenBSD base, but probably I will test which program exists and use what is available
networking tool for addr:port

telnet

telnet "${TORCTLIP}" "${TORCTLPORT}" 2>/dev/null

netcat

nc  "${TORCTLIP}:${TORCTLPORT}"

reason: short because telnet show unecessary info piped stderr to dev null
cookie hex

hexdump

hexdump -e '32/1 "%02x""\n"' "${TOR_COOKIE}"

xxd

xxd -u -p -c32 < "${TOR_COOKIE}"

xdd puts all letters in upper case, this can be done piping hexdump to tr translating lower to upper

GREAT, working with AUTH METHODS=COOKIE,HASHEDPASSWORD.
I want to give the option for SAFECOOKIE to not leak credeantions, but currently it is no working and it requires the xdd tool plus openssl.

GREAT, working with AUTH METHODS=COOKIE,HASHEDPASSWORD.
I want to give the option for SAFECOOKIE to not leak credeantions, but currently it is no working and it requires the xdd tool plus openssl.

This was done on a separate repo for organization purposes
See the onion script:
https://github.com/nyxnor/tor-ctrl/blob/master/usr/bin/tor-ctrl-onion
I don't know if this should be done on onionjuggler, ephemeral onion services are for advanced users, or it can be done with a wrapper to be like onionshare but minimal, without bunch of deps

closing as per above reply


Dependency resolver with custom repository?

Dependency resolver feature is one of really cool things,
however I have problem with adding custom repo in zeppelin.
tried adding some lines into
spark/src/main/java/com/nflabs/zeppelin/spark/dep/DependencyResolver.java
didn't help.
artifactRequest.addRepository(repo);

   artifactRequest.addRepository(anotherRepo);

Any ideas?

resolved with https://github.com/NFLabs/zeppelin/pull/319


EscPosPrinter.disconnect error

I am trying to disconnect the connected printer by following code
   await EscPosPrinter.disconnectPrinter(
      device.target
    );

getting Error: 4 on IOS and Error: ERR_MEMORY on Android. It is not disconnecting with the connected printer.

Last version - 3.0.3
    "react": "^18.2.0",
    "react-native": "0.72.7",

The same on IOS.
Disconnect error [Error: 4]


How can I obtain sufficiently good intermediate representations as you provided tmp.pt?

How can I obtain sufficiently good intermediate representations as you provided tmp.pt? I use your provided face images and train for 450 iters, but results is not very good. When I use faces from some other datasets, the generated videos are unrelated to them. I suspect it's an issue with the first stage of my training.

https://github.com/qinghew/StableIdentity/assets/82270941/53660dcb-1da7-4c11-a838-b5ccfa1a5a79

I just fix a bug of my "README.md". The base model is SD2.1-512. So sorry for this bug.

oh my god :) Thanks!


Document - development setup

@chad11111
I would be happy to take the task plus explained about this task


Widevine content being downloaded for offline playback, but not Playready

Have you read the FAQ and checked for duplicate open issues?
Yes
If the problem is related to FairPlay, have you read the tutorial?

What version of Shaka Player are you using?

4.11.17
Can you reproduce the issue with our latest release version?
Yes
Can you reproduce the issue with the latest code from main?
Yes
Are you using the demo app or your own custom app?
Both
If custom app, can you reproduce the issue using our demo app?
Yes
What browser and OS are you using?
Microsoft Edge
For embedded devices (smart TVs, etc.), what model and firmware version are you using?
N/A
What are the manifest and license server URIs?
Sent via email

What configuration are you using?  What is the output of player.getNonDefaultConfiguration()?

What did you do?
I wish to enable offline playback of my DRM videos. I am able to download the video if it is not DRM Encrypted, or if it is encrypted with Widevine. When i try to do the same with Playready encrypted videos, i get the following error : https://shaka-player-demo.appspot.com/docs/api/shaka.util.Error.html#value:6006
Shaka Error DRM.FAILED_TO_GENERATE_LICENSE_REQUEST (Failed to execute 'generateRequest' on 'MediaKeySession': Failed to create MF PR CdmSession<PHONE_NUMBER>),NotSupportedError: Failed to execute 'generateRequest' on 'MediaKeySession': Failed to create MF PR CdmSession<PHONE_NUMBER>),)

https://shaka-player-demo.appspot.com/

Load the mpd url into the player, along with the license server url. The video plays in Microsoft Edge. When i try to download it, it throws the above error. When i loaded a widevine packaged url along with the license server url, i was able to download it and play it offline.

What did you expect to happen?
I expected the playready content to get downloaded and play offline.
What actually happened?

Are you planning send a PR to fix it?

I've found some code errors and bugs in the documentation, I'll fix all of these and come back to this issue as soon as all PRs are merged.

Using the nightly demo the content of MSS PR is downloadable, can you check if it works in your case?
https://nightly-dot-shaka-player-demo.appspot.com/demo/#audiolang=en-US;textlang=en-US;uilang=en-US;panel=ALL_CONTENT;panelData=drm:PLAYREADY,OFFLINE;build=uncompiled
Things that have changed in the demo to make this content work:

com.microsoft.playready.recommendation is used instead of com.microsoft.playready (Only Edge Windows)
A license url is used that allows persistent licenses