WIP: feat: add validation for predicates via cue policy files support

Fixes #512

We thought there are two ways to implement it on the cli’s UX
First is users runs cosign for each attestation type of their image's existing attestations. This means if an image has both spdx and slsa attestations then users have to run cosign twice by changing -type flag of the commands.
For example:
$ cosign verify-attestation -key cosign-keys/cosign.pub -policy=demos/spdx.cue -type spdx devopps/alpine:3.8
$ cosign verify-attestation -key cosign-keys/cosign.pub -policy=demos/slsaprovenance.cue -type slsaprovenance devopps/alpine:3.8

Seconds is users run cosign just one time. Here is the example to describe it better.
cosign verify-attestation -key cosign-keys/cosign.pub -policy=slsaprovenance=demos/slsaprovenance.cue -policy=spdx=demos/spdx.cue devopps/alpine:3.8

We implemented the first way now.
WDYT @dlorenc
CC: @developer-guy @Dentrax

Just updated to 3a738f17f452fe90021375d606901a7d6d9ab2ad commit, added some sanity and error checks.

We think we are ready.
WDYT @dlorenc

This is so cool and the code looks great! Do you mind if I leave the PR open for a bit to play with the cli, cue and the overall experience?
This is really new and exciting for all of the in-toto space!

Hello @dlorenc, we thought that we could support verifying in-toto attestations by using Rego policies as well like the following:

As you already know, we can use OPA as a go library. So the only thing that we have to do is detecting the extension of whether it is Cue or Rego, then calling the correct implementation. But there is a small workaround here to make the flags consistent with the cue implementation. We don't want to accept queries for Rego; instead, what we expect from users is that they have to write Rego policies in package "cosign," and they have to give "allow" names to rules like the above picture.

@developer-guy I was thinking that it would be nice if I could specify all my policies in a single CUE file and then select the ones I'd like to use for a given attestation. The cue CLI has this concept through the -e flag, or in Go with the LookupPath function. OPA looks to have similar ability to select out a subset of the full input.
Both CUE and Rego look to have the concept of modules and packages. It seems that both could be handled similarly, in that cue.Load was used to support multiple entrypoints which may include other files. I could, in theory, pass a directory in for a CUE entrypoint. I don't know if this is possible with Rego, but could cause issues with extension detection.
Generally, it looks like the code is intended to be that each policy flag holds a separate policy. I think it would be helpful to clarify the ideas of entrypoints from how policies are written. The CUE validation passes all policies together during validation, for each iteration of the loop. I'm not familiar enough with the details yet to know if this is implementing the desired outcomes. How do the policy flags relate to the PredicateType here:
https://github.com/sigstore/cosign/pull/641/files#diff-54166c9045199178b2f0a516fb36977ee5f3c21e25f80727b0f8b2cf24930ab0R238

Another thing to consider is required fields. There is an open proposal related to this in CUE: https://github.com/cue-lang/cue/issues/822
However, consider the following example modified from the one in #512
sigstore.go
package main

import (
        "cuelang.org/go/cue"
        "cuelang.org/go/cue/cuecontext"
        cuejson "cuelang.org/go/encoding/json"
        "io/ioutil"
)

func main() {
        ctx := cuecontext.New()
        cueBs, _ := ioutil.ReadFile("policy.cue")
        v := ctx.CompileString(string(cueBs), []cue.BuildOption{}...)

        input := `{
              "foo": {
                      "bar": {
                              "baz": 10
                      }
               },
               "user": {
                       "email"<EMAIL_ADDRESS>               }
         }`
        err := cuejson.Validate([]byte(input), v)
        if err != nil {
                panic(err)
        }
}

policy.cue
foo: bar: {
        baz: <11
        taz: int
}

user: role: "dev"

$ go run sigstore.go

This has no output, which is passing the policy checks as I would assume as a user. Should this fail because the user lacks a role at all?

@developer-guy I was thinking that it would be nice if I could specify all my policies in a single CUE file and then select the ones I'd like to use for a given attestation. The cue CLI has this concept through the -e flag, or in Go with the LookupPath function. OPA looks to have similar ability to select out a subset of the full input.

Actually, this one requires one additional flag to get the expression like "-e" and it is also helpful for the Rego implementation if we decide to support Rego because we need a query like an expression in Cue, so yeah this implementation would be helpful for us, WDYT @dlorenc?

Both CUE and Rego look to have the concept of modules and packages. It seems that both could be handled similarly, in that cue.Load was used to support multiple entrypoints which may include other files. I could, in theory, pass a directory in for a CUE entrypoint. I don't know if this is possible with Rego, but could cause issues with extension detection.

Yeah, definitely we should support loading CUE or Rego policies from directories, thanks for the idea @verdverm. 🤝 If we decide to support Rego files we might use separate flags for these, like "-cue" or "-rego" to avoid this kind of problem like you said extension detection for traversing within the directory

Generally, it looks like the code is intended to be that each policy flag holds a separate policy. I think it would be helpful to clarify the ideas of entrypoints from how policies are written. The CUE validation passes all policies together during validation, for each iteration of the loop. I'm not familiar enough with the details yet to know if this is implementing the desired outcomes. How do the policy flags relate to the PredicateType here:
https://github.com/sigstore/cosign/pull/641/files#diff-54166c9045199178b2f0a516fb36977ee5f3c21e25f80727b0f8b2cf24930ab0R238

There are various types of attestations provided by the in-toto community and cosign uses them internally. So, we thought that users might want to make a one-to-one relationship between the CUE policy file and the attestation's type to verify them like "-policy slsaprovenance.cue -type slsaprovenance" because we need to know which policy is associated with which type of attestation. Additionally, you can store more than one attestation in the OCI registry for an image, so all of them will be validated with the same CUE policy file

Another thing to consider is required fields. There is an open proposal related to this in CUE: cue-lang/cue#822
However, consider the following example modified from the one in #512
sigstore.go
package main

import (
        "cuelang.org/go/cue"
        "cuelang.org/go/cue/cuecontext"
        cuejson "cuelang.org/go/encoding/json"
        "io/ioutil"
)

func main() {
        ctx := cuecontext.New()
        cueBs, _ := ioutil.ReadFile("policy.cue")
        v := ctx.CompileString(string(cueBs), []cue.BuildOption{}...)

        input := `{
              "foo": {
                      "bar": {
                              "baz": 10
                      }
               },
               "user": {
                       "email"<EMAIL_ADDRESS>               }
         }`
        err := cuejson.Validate([]byte(input), v)
        if err != nil {
                panic(err)
        }
}

policy.cue
foo: bar: {
        baz: <11
        taz: int
}

user: role: "dev"

$ go run sigstore.go

This has no output, which is passing the policy checks as I would assume as a user. Should this fail because the user lacks a role at all?

I think it would be better if @dlorenc takes this because IMHO it is ok, if you specify any field within the CUE file that is not in the attestation body, we should pass the validation but if we can support required fields, that would be good for the security perspective.

Sorry I lost track of this one last week! I'll get some time to play with it this week and get it merged!

Sorry I lost track of this one last week! I'll get some time to play with it this week and get it merged!

It totally ok, we know you are busy 😋 but actually we are waiting for your thoughts about supporting to validate predicates by using Rego policies also, if you want us to do this, we are so excited to implement it 🥳🙋🏻♂

It totally ok, we know you are busy 😋 but actually we are waiting for your thoughts about supporting to validate predicates by using Rego policies also, if you want us to do this, we are so excited to implement it 🥳🙋🏻♂

Sure!

Sorry I lost track of this one last week! I'll get some time to play with it this week and get it merged!

It totally ok, we know you are busy 😋 but actually we are waiting for your thoughts about supporting to validate predicates by using Rego policies also, if you want us to do this, we are so excited to implement it 🥳🙋🏻♂

rego validation would be really useful as well, especially with its high adoption rate at present.

We're not sure if it's good UX to allow to validate both CUE and Rego policies at the same time; we couldn't distinguish which UX is better:
# using specific flags; `foo.rego`, takes the precedence and will be executing first
$ cosign verify-attestation -cue foo.cue -rego bar.rego

# passing engine flag
$ cosign verify-attestation -p foo.cue # default `-engine` is cue?
$ cosign verify-attestation -p foo.cue -engine cue   # valid
$ cosign verify-attestation -p bar.rego -engine rego # valid
$ cosign verify-attestation -p bar.cue -engine rego  # invalid

# directory example
$ cosign verify-attestation -p foo.rego -p bar.cue -p ./dir/to/rego/files/

# multi dir example (Regos and CUEs)
$ cosign verify-attestation -p foo.rego -p bar.cue -p ./dir/to/rego/files/ -p ./dir/to/cue/files/

Since we're traversing the ./dir/to/rego/files/ directory to load regos, what will happen if the directory contains a CUE file? And vice versa? (e.g., cue dir, but includes a rego)
@developer-guy


Who is using it?

leave a comment 🤟

@sinchang Can you please elaborate about issue ?

Hi @kapilG0, Thanks for your attention, it's not an issue, I created it to display the PR Welcome badge in the Readme.

Ok I am sorry I am new in open source that why it happens

please close issue from your end if you created for testing prupose


Tickets table: dynamic table sorting overrides query sort order?

Forgive me if is obvious, but I searched the other tickets carefully and did not see this reported.
It looks like the new dynamic sorting on the Tickets table (provided by dataTables?) overrides the sort order specified by the Ticket Query.   The Tickets are always sorted by ascending pk, regardless of the sort order filter.  Here's a screenshot -- you can see regardless of whether the sort order is reversed, the table is always sorted by pk.  As far as I can tell, this always happens.

I noticed you can see this bug in the screenshots shared last year when this feature was first released: https://github.com/django-helpdesk/django-helpdesk/pull/419#issuecomment-246574490
I'm happy with the dynamic sorting - the new UI is fabulous, thank-you!  But did find this confusing.

Yes the sorting is in DataTables now! I think you found an oversight :-) thanks!
Since you can sort directly in the table by clicking the little arrows, does it make sense to simply remove the Sorting option from the form so it's less confusing?

Depends...  is the JS sorting applied to entire result set or just page of results at the client-side?

Assuming it's a client-side only sort, be nice if they worked together.  Want me to look into it?

Ah yes, gotcha. Been a while since I worked on it :-) I believe it's client side sort, so I can see how it would still be useful to fix the form option for pages. If you have time and would like to send a PR, I'd greatly appreciate it! Been busy last few weeks but planning to work some more on tickets soon. Thanks!

Sure thing.  I can make a PR, but the mod to fix this is trivial:
Add DataTable option:  "order": [],
See:  https://datatables.net/reference/option/order#Examples
So, in template ticket_list.html:
$('#ticketTable').DataTable({
        "oLanguage": {
            "sEmptyTable": "{% trans 'No Tickets Match Your Selection' %}"
        },
        "order": [],
        responsive: true
});

Thanks again for all your efforts on this @gwasser -- so awesome to get this fresh look and new functionality.

Ah I'm glad it was such a simple fix, I hadn't looked into it yet :-) thanks for the patch! Committed to master, to be rolled into next 0.2.x bugfix release.

Cool.  thanks @gwasser


Python to GH example does not work

(From Food4Rhino)
Rhino starts up, but shows an error message that it cannot run the python script.

Some space escaping issue in Rhino's /runscript option prevents passing command-line arguments (such as the port) to Python scripts launched from Rhino. This can be fixed by using rs.GetInteger for example, to get the port from a new Rhino input.


Broke down 441479 into separate exchange areas

Country/region affected (e.g., "US"): GB
Example number(s) affected ("+1<PHONE_NUMBER>"): +44 1479 810930
The phone number range(s) to which the issue applies ("+1 555 555-XXXX"): +44 1479 XXXXXX
The type of the number(s) ("fixed-line", "mobile", "short code", etc.): fixed-line
Towns affected are significant distances from Grantown-on-Spey, especially Aviemore and Cairngorm (01479 81XXXX and 01479 86XXXX). Numbers outside the range 01479 81XXXX to 01479 87XXXX are not standard fixed lines but are owned by alternative providers with no geographic distinction.

Thanks for contributing to libphonenumber and signing the CLA @csteinle!
Could you please share evidence that these changes are the ground truth? See our contribution guidelines.

Full list of codes in 01479 range, including list of exchanges - http://www.telephonecodes.info/code/01479#sthash.PFPqrvZB.dpbs
Examples for each exchange locality:
0147981/Aviemore:
https://www.visitscotland.com/info/services/aviemore-icentre-p332791
http://www.highland.gov.uk/directory_record/521572/aviemore_primary
https://www.highlifehighland.com/aviemore-library
0147982/Nethybridge:
https://www.highland.gov.uk/directory_record/521556/abernethy_primary
http://nethybridge.com/community-centre/
https://www.yell.com/biz/nethy-bridge-post-office-nethy-bridge-659488/
0147983/Boat of Garten:
https://www.highland.gov.uk/directory_record/521611/deshar_primary
https://www.yell.com/biz/boat-of-garten-post-office-and-village-shop-boat-of-garten-654649/
https://www.boatgolf.com/
0147984/Carrbridge:
http://www.highland.gov.uk/directory_record/521592/carrbridge_primary
https://www.yell.com/biz/carrbridge-post-office-carrbridge-671472/
http://www.landmark-press.com/contact/
0147985/Dulnain Bridge:
http://www.muckrach.com/contact/
https://www.yell.com/biz/dulnain-bridge-post-office-and-store-grantown-on-spey-2679798/
0147986/Cairngorm:
http://www.glenmorelodge.org.uk/contact/
http://www.cairngormmountain.org/contactus/
0147987/Grantown-on-Spey:
https://www.highland.gov.uk/directory_record/521658/grantown_grammar_school/category/382/secondary
https://www.highlifehighland.com/grantown-on-spey-library/contact-grantown-on-spey-library/
http://www.grantownonspeygc.co.uk/

This looks great, thanks! We'll merge in an upcoming release.

Please note that you have submitted this information with the knowledge that we
may use, modify, reproduce, publicly display, and distribute the information in
accordance with our open source policies. Please let us know if you did not
intend to submit the information for such use.

@keghani I'm more than happy for you to use this submission in the ways disclosed and as per your policies.

Thanks! This will be in the next metadata release.


Correct way to deal with multiple pointers

Hi,
I want to deal with the api in PATHFIND
static Vector3* GENERATE_DIRECTIONS_TO_COORD(float x, float y, float z, BOOL p3, float* p4, float* p5, float* p6) { return invoke<Vector3*>(0xF90125F1F79ECDF8, x, y, z, p3, p4, p5, p6); } // 0xF90125F1F79ECDF8 0xED35C094

the api returns a pointer to Vector3 and three pointers to the floating values are required.
I can get the returned values by the following definition
World.hpp
static Math::Vector3^ GenerateDirectionsToCoord(Math::Vector3 target, bool unknown);

World.cpp
 Math::Vector3^ World::GenerateDirectionsToCoord(Math::Vector3 target, bool unknown) {
		Native::OutputArgument ^p4 = gcnew Native::OutputArgument();
		Native::OutputArgument ^p5 = gcnew Native::OutputArgument();
		Native::OutputArgument ^p6 = gcnew Native::OutputArgument();
        Math::Vector3 ^direction = Native::Function::Call<Math::Vector3>(Native::Hash::GENERATE_DIRECTIONS_TO_COORD, target.X, target.Y, target.Z, unknown, p4, p5, p6);
        //Native::Function::Call<float>(Native::Hash::GENERATE_DIRECTIONS_TO_COORD, target.X, target.Y, target.Z, unknown, p4, p5, p6);
        return p6->GetResult<Math::Vector3>();
    }

myScript.cs
Vector3 direction = WorldGenerateDirectionsToCoord(target, true);

How can I write a wrapper to get the other floating values?

You don't need to modify SHVDN to do that. In a C# script write the following:
Vector3 GenerateDirectionsToCoord(Vector3 target, bool p3, out float p4, out float p5, out float p6)
{
    OutputArgument out4 = new OutputArgument(), out5 = new OutputArgument(), out6 = new OutputArgument();
    Vector3 result = Function.Call<Vector3>(Hash.GENERATE_DIRECTIONS_TO_COORD, target.X, target.Y, target.Z, p3, out4, out5, out6);
    p4 = out4.GetResult<float>();
    p5 = out5.GetResult<float>();
    p6 = out6.GetResult<float>();
    return result;
}

@crosire  thanks!

I know this has been closed, but Im kind of unsure why that function is listed as returning a vector3 Pointer. A quick disassembly shows that the return value is always set to 0(checked on version 335 and 944)
http://i.imgur.com/LzXAQld.png

@zorg93
yup! The function always returns zero, but I am not sure why the returned value is defied as a pointer to Vector3.
And, p5 is always zero, too.
Btw, which tool you used to analyze the returned value?

IDA, anyway I updated the native on nativeDB.
That native is weird, i dont think you even get meaningful stuff from any of the pointer parameters

@zorg93
In fact, p4 is an integer which indicates the navigation, and p6 is a distance when turning right or left.
the remaining mystery is the meaning of p3 and p5.
More details can be found at http://gtaforums.com/topic/869246-gps-points-native/


Added Theme Toggle

Describe your changes
Implementing Ability to Toggle Theme with a Button on the AppBar
Issue ticket number and link
#76
Checklist before requesting a review

[x] My code follows the contribution guidelines of this project.
[x] I have performed a self-review of my code.
[ ] If it is a core feature, I have added thorough tests.

Codecov Report

Merging #84 (8843c85) into main (d7ab8b9) will increase coverage by 0.89%.
The diff coverage is 80.00%.

@@            Coverage Diff             @@
##             main      #84      +/-   ##
==========================================
+ Coverage   24.16%   25.06%   +0.89%
==========================================
  Files          28       28
  Lines         753      766      +13
  Branches      132      136       +4
==========================================
+ Hits          182      192      +10
- Misses        570      573       +3
  Partials        1        1

Impacted Files
Coverage Δ

src/components/AppBar.tsx
70.83% <50.00%> (-6.95%)
:arrow_down:

src/App.tsx
100.00% <100.00%> (ø)

src/reducer/preferenceSlice.tsx
32.50% <100.00%> (+7.50%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update d7ab8b9...8843c85. Read the comment docs.

@fduschka wow this is awesome 🤩  I'll just add a few suggestion, if you have some time could you please check.

Changes look good to me. Thanks so much @fduschka


fix: Inconsistent title and description fields behavior

Fixes #1784

@bprusinowski tested on TEST and INT and in both cases the title appears bold 💯 seems like the issue is now fixed: https://int.visualize.admin.ch/en/v/0O_XiCYKvro6?dataSource=Prod Thanks!

Hi @sosiology, thanks for testing 🙇♂ In fact, the issue only appears in case of dashboard layout, I can still reproduce on INT: https://int.visualize.admin.ch/en/v/LhFlei-pHPnj?dataSource=Prod


Unirep update

Pull request checklist
Please check if your PR fulfills the following requirements:

[ ] Tests for the changes have been added (for bug fixes / features)
[ ] Docs have been reviewed and added / updated if needed (for bug fixes / features)
[x] Build (yarn build) was run locally and any changes were pushed
[x] Lint (yarn lint --check) has passed locally and any fixes were made for failures

Pull request type

Please check the type of change your PR introduces:

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, renaming)
[x] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] Documentation content changes
[ ] Other (please describe):

What is the current behavior?

Issue Number: N/A
What is the new behavior?
Does this introduce a breaking change?

[x] Yes
[ ] No

Other information

This PR fixes tests and basic compatibility, but the frontend is still not fully functional.

I found that this.unirep inside /context/Unirep.ts does not have these configs:
this.unirep.numEpochKeyNoncePerEpoch(),             this.unirep.maxReputationBudget(),             this.unirep.maxUsers(),             this.unirep.treeDepths(),             this.unirep.attestingFee(),             this.unirep.epochLength()

@kittybest I think this is good for now. We're going to need to make more fixes along the way, specifically around initial syncing. But for now things seem to be working.
Test config for backend:
UNIREP=0x27580d01D76f8B0807F08c1C8246F2F605F1b6f0
UNIREP_SOCIAL=0x6F225280404027119A6117754D2e5E75620c9Cd2
DEFAULT_ETH_PROVIDER_URL=https://opt-goerli.g.alchemy.com/v2/C_Y7sd1-CSmvHUmu5Dx0w750Uzc-TG8Q
DEPLOYER_PRIV_KEY=0xaff5d356ad526837291c2283a7ef25a895a3a35ba42e80a8852b6fab5ea8968e
DB_PATH=db.sqlite

Test config for frontend:
export default {
    SERVER: 'http://localhost:5000',
    DEFAULT_ETH_PROVIDER_URL:
        'https://opt-goerli.g.alchemy.com/v2/C_Y7sd1-CSmvHUmu5Dx0w750Uzc-TG8Q',
}

Yea there are still bugs but I think it's best that we merge this so we're all working from the same codebase. Then we can fix these small bugs as we go.


markers should come over the infowindow on hover

in active state the z-index of the info box and marker is 1000.
but still it is behind the info window

how to bring the orange marker on the top of green infobox

@iamthespecial1 this library is unmaintained, please refer to new library npm @react-google-maps/api


Google Play rejection issues with FOREGROUND_SERVICE permission

Hi! We've faced an issue with multiple rejections on our Android app submission to the Google Play Store after trying to release an update of our app in December. The plugin's version was 5.4.1.
We migrated then to Capacitor 6 and the latest version of the plugin, but release was rejected with the same reasons.
(Release of our app in early November with plugin 5.4.1 was not rejected)

We found that one or more of the declared use cases is not compliant with how [foreground service permission] is allowed to be used. Specifically, the declared use case(s) can be interrupted or deferred by the system without creating a negative user experience. Your app is using foreground service to Health - Other when it is not required to do so.

We found that one or more of the declared use cases is not compliant with how [foreground service permission] is allowed to be used. Specifically, the user is not made aware of functionality requiring permission when active. Use of FGS is not perceptible to the user when performing Health - Other functionality.

Other rejection is about our declaration, we don't know what video we could provide for FOREGROUND_SERVICE permission:

We found that one or more of the use cases utilizing the [foreground service permission] in your app has either been incorrectly submitted or is missing from your Console declaration.
Your in-app experience or video does not match the Health - Other in your declaration.

Our actual app declaraion has confirmed FOREGROUND_SERVICE_LOCATION and FOREGROUND_SERVICE_HEALTH permsissions, but not FOREGROUND_SERVICE.

Plugin version: 6.1.5
Platform: Android
Capacitor info (npx cap doctor)

💊   Capacitor Doctor  💊

Latest Dependencies:

  @capacitor/cli: 6.2.0
  @capacitor/core: 6.2.0
  @capacitor/android: 6.2.0
  @capacitor/ios: 6.2.0

Installed Dependencies:

  @capacitor/cli: 6.2.0
  @capacitor/core: 6.2.0
  @capacitor/ios: 6.2.0
  @capacitor/android: 6.2.0

[success] iOS looking great! 👌
[success] Android looking great! 👌

variables.gradle:
ext {
    minSdkVersion = 22
    compileSdkVersion = 34
    targetSdkVersion = 34
    androidxActivityVersion = '1.8.0'
    androidxAppCompatVersion = '1.6.1'
    androidxCoordinatorLayoutVersion = '1.2.0'
    androidxCoreVersion = '1.12.0'
    androidxFragmentVersion = '1.6.2'
    androidxBrowserVersion = '1.7.0'
    firebaseMessagingVersion = '23.3.1'
    playServicesLocationVersion = '21.1.0'
    androidxFragmentVersion = '1.6.2'
    junitVersion = '4.13.2'
    androidxJunitVersion = '1.1.5'
    androidxEspressoCoreVersion = '3.5.1'
    cordovaAndroidVersion = '10.1.1'
    googlePlayServicesLocationVersion = '21.0.1'
    okHttpVersion = '4.9.1'
    localBroadcastManagerVersion = '1.0.0'
    coreSplashScreenVersion = '1.0.1'
    androidxWebkitVersion = '1.9.0'
    firebaseCrashlyticsVersion = '18.5.1'
    hmsLocationVersion = '<IP_ADDRESS>0'
}

We've tried submitting appeal describing how the plugin use motion detection but it was rejected too.
Thanks for any help you can provide!

Hi Chris!
We read #289 before submitting, now we'll try steps from your blog, thank you!

I am not an expert in Play Store publishing.  Issues with permissions are completely between you and Google.
If Google doesn't thing your app deserves some permission, it's up to you to prove to them why.  Each app is completely different.

this works, add these lines.
<uses-permission android:name="android.permission.ACTIVITY_RECOGNITION" tools:node="remove" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_HEALTH" tools:node="remove" />

hi! we had passed the review:

both "I beleive you did mistake" and "I do not know what to do" appeals was rejected
we had removed geofencing checkbox and video from foreground service app declaration, as we does not use this feature and had no UI to show for it
(previously the video was the same as for user-initiated location sharing)
we had changed the health app declaration from smth mentioning the plugin and how-it-works to "the app does not provide any health feature" with extended description copied from Chris's blog

anyway, I'm sure we do not want to remove ACTIVITY_RECOGNITION from manifest to keep the plugin doing it's work best, and we do not want to remove FOREGROUND_SERVICE_HEALTH because there is no such in latest v6 plugin version (but it was required in v5)

and we do not want to remove FOREGROUND_SERVICE_HEALTH because there is no such in latest v6 plugin version

That's correct.  This plugin removed FOREGROUND_SERVICE_HEALTH last June

this works, add these lines.

@ademirtemur stop posting this on every repo or I’ll block you.  It’s wrong.


E_ACCESSDENIED when trying to install new distro

Version
Microsoft Windows [Version 10.0.19045.2311]
WSL Version

[X] WSL 2
[ ] WSL 1

Kernel Version
<IP_ADDRESS>
Distro Version
No response
Other Software
No response
Repro Steps
Anytime I try to install a distro, for example, Ubuntu it fails with:
Installing: Ubuntu
Access is denied. =========90.0%=====================      ]
Error code: Wsl/InstallDistro/E_ACCESSDENIED
If I do it through the Microsoft Store I get:
Code: 0x80070005
I removed an Ubuntu instance before this started happening because I used it as a temporary instance to tinker around.
Expected Behavior
The distro should install.
Actual Behavior
Installing: Ubuntu
Access is denied. =========90.0%=====================      ]
Error code: Wsl/InstallDistro/E_ACCESSDENIED
If I do it through the Microsoft Store I get:
Code: 0x80070005
Diagnostic Logs
WslLogs-2022-12-14_12-39-19.zip

Same issue. As a matter of fact, on three different physical computers using a couple of different versions of Windows Pro, there hasn't been a single time when I've installed WSL and used it heavily where it hasn't stopped working for some reason or another and usually a fix isn't easy.

+1

I managed to fix this. The underlying problem was that the Microsoft Store was unable to install anything it seems.
I have fixed this by following the third solution here: https://answers.microsoft.com/en-us/windows/forum/all/0x80070005-cant-download-or-update-any-app-from/1629e23b-6332-4cb0-ad12-1b1fc12e01a1
In case this link is ever dead:
Solution 3
Reinstall the Microsoft Store.

Right-click on Start.
Click on Windows PowerShell(admin)
Type: Get-AppXPackage -allusers | Foreach {Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"} and press ENTER.
Reboot your pc and try open the Microsoft Store.

Download the distros from the web with --web-download. Easy!


1.2.2 requires angular 1.3.13

1.2.2 requires angular 1.3.13

Hi @KostyaSha,
Should we remove from angular-timer/bower.json

this  "angular": "~1.3.13"from

  "resolutions": {
    "angular": "~1.3.13",
    "humanize-duration": "~2.4.0"
  }

and  "angular-mocks": "~1.3.13" from:

    "angular": ">= 1.0.7",
    "momentjs": "~2.9.0",
    "humanize-duration": "~2.4.0",
    "angular-mocks": "~1.3.13"
  },

What's your opinion?

It depends on whether you really require it. If not then remove both places that enforces 1.3 usage for 1.2 branch and set lower or what was set in previous release.

Yes, I agree with that.

Done here : https://github.com/siddii/angular-timer/pull/163


The services names still in services.msc

i tried to remove some services from regedit and all has been removed but when i take a look in services.msc the removed services still appears , i know they are removed and uninstall but the services names still appears in services.msc

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

ID: c1efdff7-79ba-6f27-78ba-20d6bf4de4a5
Version Independent ID: 77fc9af3-35e3-2a31-3385-dcd2ce47d37d
Content: Sc delete
Content Source: WindowsServerDocs/administration/windows-commands/sc-delete.md
Product: windows-server-threshold
Technology: manage-windows-commands
GitHub Login: @coreyp-at-msft
Microsoft Alias: coreyp

Have you tried stopping the service before deleting?
I had the same issue and now I first stop the service and then delete it.
sc [] stop
sc [] delete []

The commands where automatically removed. Here they are again:
sc [ < ServerName > ] stop < ServiceName >
sc [ < ServerName > ] delete < ServiceName >

Deleting a service marks the service for deletion but does not remove it from the list in Services. Refresh does not help, and even not after logging out and in again. So why are deleted services not removed from the list? Or when?

@fjallemark : Have you read the Stack Overflow page https://stackoverflow.com/questions/76074/how-can-i-delete-a-service-in-windows to see if you can find more help there?

Please note: This repository is intended for documentation corrections and improvements. User issues can not be followed up by the MS Docs server docs team for capacity reasons.
Please use dedicated Microsoft Support services, Microsoft Support Forums and similar venues to request help with usage issues.

#please-close


Warning using column with orthogonal data

Hi!
I try to create a column with two data, in order to use it after in Javascript with one data to display and other to sort.
So the idea is this:
->addColumn('date', function ($row) { return [
      'display' => "a",
      'timestamp' => "b"
  ]; })

And in Javascript t o use this:
{
   data: {
      "_":    "date",
      "sort": "date_sort"
   },
   name: 'date', orderable: true
},

But when I try to make the Datatables json in the server, Laravel outputs tongs of these error in log:
[2022-08-22 16:20:12] local.WARNING: strnatcasecmp(): Passing null to parameter #1 ($string1) of type string is deprecated in /home/project/vendor/yajra/laravel-datatables-oracle/src/CollectionDataTable.php on line 319

[2022-08-22 16:20:12] local.WARNING: strnatcasecmp(): Passing null to parameter #2 ($string2) of type string is deprecated in /home/project/vendor/yajra/laravel-datatables-oracle/src/CollectionDataTable.php on line 319

Why is that ?

Hi @adantart,
There's a method called formatColumn in DataTableAbstract class I think this is the one that you need.
public function formatColumn($columns, $formatter): static


during module unloading, removing the itab can lead to runtime error

https://github.com/golang/go/blob/ce8146ed3361f584ba79427ac6c6d6fe9c297bea/src/runtime/iface.go#L145
when the itabtable is expanding because if t.count >= 3*(t.size/4) { // 75% load factor, it checks the count of both the old and new tables. If they are inconsistent, it will throw an error.
If we happen to be unloading a module at this time, it is possible to make the count inconsistent.

oh, i miss the lock(itabLock) before removing itabs, this is not an issue


Replaced com.osso with org.osso, and relocated source files accordingly

pom also has com.osso-project changed to org.osso-project
This closes #5

+1, thanks for the contribution @matthew-dailey!


Automatic PyPi Release

Before submitting

[ ] Was this discussed/approved via a Github issue? (no need for typos and docs improvements)
[x] Did you read the contributor guideline, Pull Request section?
[ ] Did you make sure to update the docs?
[ ] Did you write any new necessary tests?
[ ] If you made a notable change (that affects users), did you update the CHANGELOG?

What does this PR do?
Adds an automated release pipeline to create releases on pypi from tags
PR review
Anyone in the community is free to review the PR once the tests have passed.
If we didn't discuss your PR in Github issues there's a high chance it will not be merged.
Did you have fun?
Make sure you had fun coding 🙃
Remaining ToDo
Someone with access to the pypi account (probably @williamFalcon ) needs to setup a token and register it as a pypi_password secret

lets first push to test Pypi
https://packaging.python.org/guides/publishing-package-distribution-releases-using-github-actions-ci-cd-workflows/

I added pushes to test.pypi.org to verify everything is ok :) we now need pypi_password and test_pypi_password as secrets


watchlist error spawn_main - resolved, need if name == 'main':

I use Pycharm, not Juypter.
I ran your example.

Hello @karenjh2,
What version are you running of Pandas TA (as asked on the Bug Report)?
This installs the latest version which normally solves most Issues. (Also requested to do in the Bug Report)
$ pip install -U git+https://github.com/twopirllc/pandas-ta

This is not a Pandas TA bug. In fact, it is a Python multiprocessing Issue and the error message provides a solution. Furthermore, the third pinned Issue, #181, addresses this. In the future, please look through the Issues before posting duplicates.
Kind Regards,
KJ


Getting a user's data by supplying a username

The User.prototype.get function is broken for queries with particular usernames.
For example, if try to get the user "abcd" and there are multiple usernames which begin with "abcd", the function will return 'false'.
Also, the data returned from this query is not the same as querying for a user with a supplied id.
After supplying an id, you get more data, such as the media and follower counts, which does not happen if you search for a user with a given name/string.
The function, as it is now, will go through the results and look for an exact match between the supplied username and the users in the result set and then query the API again with the user's id, after finding a match.

@orhnsnmz, this looks like a good change. Please address the comments above and I'll happily merge this in.

@mikefowler sorry for the hold-up. I have committed your requested changes now. :)

Thanks, @orhnsnmz!


PB-470: icons are not centered

The files are slightly large since due to the shifting some metadata was added but it should not make much of an impact

lgtm

I probably keep the shift script (in case wee need to shift it back or something) but remove the other


FIX Correctly remove relations with ManyManyThroughList::removeall

Instead of just setting one side of the relation to null in the through table, remove the rows entirely.
Remove only the relations which match the filters that have already been set on the list.
This is consistent with the way ManyManyList works - in fact much of the code for both the functionality and the test are taken straight from that class.
The issue was ultimately caused by the HasManyList which is being used as an intermediary not having and of the 'where' clause (i.e. filter/exclude) of the underlying dataquery of the ManyManyThroughList. Changing that without causing regressions seemed like a bit of a tricky way to handle this - and even then if we still relied on using removeAll() from that HasManyList we would have still seen the rows in the through table being updated with null IDs on one side of the relationship instead of those rows being deleted outright.
Also some small tidy-up (removing an unnecessary line break and an unused "use" statement)
Parent Issue

fixes #10104

Given that the join records are DataObjects in their own right, do you think we’d be better approaching this in a similar way to ManyManyThroughList::removeByID()? It’s a little slower, but deletions are rarer than writes and it does allow for onBeforeDelete/onAfterDelete etc on the join records to be invoked

Hmm I'm conflicted between wanting to keep it performant and wanting to let people use those extension points...
Would it be reasonable to make it configurable? We could add a new configuration boolean on the join record class (something like private static bool $use_orm_for_removeall - obviously we can't declare this but we can document it, and the default null is falsey so that goes with how I'd want this to work).
Then in removeall if that config is falsey we use this or a similar approach, and if it's true we use the ORM so that any project that explicitly needs those hooks called on a join record can have that functionality available.
Keeps it snappy for the majority but gives flexibility to the minority that need it.

Maintaining two codepaths based on a config flag isn’t ideal 😕
I think we should be consistent with how we handle the “through” records too. When $manyManyThrough->add($item) is called, you can use onBeforeWrite/onAfterWrite hooks, ownership hooks etc, so I think we should offer the same functionality on deletions. I think that was part of the appeal of building the “through” API.
Performance-wise there shouldn’t really be any noticeable difference until you reach hundreds/thousands of join records. That sort of thing tends to be handled by scheduled tasks rather than synchronous user actions.

Just rethinking this, we’re changing behaviour from un-assigning a join record to deleting a join record. For old many-many that’s fine, but given that the join records are full DataObjects in many-many-through is that definitely desirable? I can’t think of a use case off the top of my head where you’d want to keep the unassigned join records, but I suppose there could be one...
Would we be safer to change this PR to just fix the filter issue and leave the “unassign” behaviour in place?

@emteknetnz do you have any opinions on using SQLDelete vs for example looping through and calling remove() to allow the ORM hooks on the join objects to be called?

Discussed with @emteknetnz offline - he says it makes sense to use the ORM for this situation, so that's two in favour of the ORM. I'll take that approach.

could you also add a test for ->removeAll() on an unfiltered list just to ensure that it removes everything

That's part of this same testRemoveAll() method - for clarity I'll split out out so there's one method for testing unfiltered revoveAll() and one for filtered.

NOTE I have also changed the IDs passed into the remove callbacks - the removeCallbacks() method defined in RelationList implies that these should be the IDs of the related items being removed, not the join records. When I added the child0 fixture and ran the unit tests, I got the following errors which clearly indicate that the tests were expecting IDs of the related records and not the join records.

There were 3 failures:

SilverStripe\ORM\Tests\ManyManyThroughListTest::testCallbackOnSetById
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
Array (

0 => 3

0 => 2
)

/var/www/vendor/silverstripe/framework/tests/php/ORM/ManyManyThroughListTest.php:450
/var/www/vendor/sminnee/phpunit/phpunit:52
/var/www/vendor/bin/phpunit:117

SilverStripe\ORM\Tests\ManyManyThroughListTest::testRemoveCallbackOnRemove
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
Array (

0 => 3

0 => 2
)

/var/www/vendor/silverstripe/framework/tests/php/ORM/ManyManyThroughListTest.php:483
/var/www/vendor/sminnee/phpunit/phpunit:52
/var/www/vendor/bin/phpunit:117

SilverStripe\ORM\Tests\ManyManyThroughListTest::testRemoveCallbackOnRemoveById
Failed asserting that two arrays are equal.
--- Expected
+++ Actual
@@ @@
Array (

0 => 3

0 => 2
)

/var/www/vendor/silverstripe/framework/tests/php/ORM/ManyManyThroughListTest.php:499
/var/www/vendor/sminnee/phpunit/phpunit:52
/var/www/vendor/bin/phpunit:117

I have approved, but there is some Travis test failed. Could you check it please.
1) SilverStripe\Core\Tests\MemoryLimitTest::testIncreaseMemoryLimitTo
Failed to set memory limit to 67108864 bytes (Current memory usage is 182976512 bytes)

FYI the failure is on the nightly php build which is no longer used in our travis config from 4.10 onwards. I think it's safe to ignore that.

What happens if the ManyManyThrouh object is versioned? Do we want to add a unit test specifically for that?

I don't know what if any thought was put into this scenario when ManyManyThroughList was implemented - it seems that versioning the join class doesn't affect anything at all. The `staged' aka draft version is always used, so publishing and unpublishing updates the version and live tables, but doesn't actually affect the functionality of the list. You always only see the draft relations.
removeAll() and removeByID() also ignore the live and version tables - they only operate on the draft. So you can have a published relation object where there's no draft object - but again, that doesn't affect anything. The list just won't see the relation at all.
Given the above, I think versioning is out of scope for this PR. At most, I could add a note in the docs that versioning the join objects isn't currently supported.


Fix dangling constructor links

Turns out these were dangling type links, not constructors, done in https://github.com/seagreen/unison-code-explorer/commit/d29f5a1dc70ffcf7f75dea9e32f801f512a09792


Add workflow to deploy a JupyterLite on GitHub Pages

So it will be easier to test the latest version in the browser.

Thanks @jtpio

I can add the PR and Galata report preview workflow later, similar to https://github.com/geojupyter/jupytergis/pull/188


How to make a Pull Request with Visual Studio Code ?

Hello,
So I want make PR to contribute. But, I can't make this since Visual Studio Code with the extension. Can you help me please ?

short: You can't
Well, maybe with a third party plugin.
VSCode has an integrated git "client" (git != github) , but pull request are github feature and not related to git itself.
In order to make a pull request you need to push your change in your own repo (or branch) and then in the github web interface you can make a pull request. (here is a doc: https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request)
You should also read: https://guides.github.com/

short: You can't
Well, maybe with a third party plugin.
VSCode has an integrated git "client" (git != github) , but pull request are github feature and not related to git itself.
In order to make a pull request you need to push your change in your own repo (or branch) and then in the github web interface you can make a pull request. (here is a doc: https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/creating-a-pull-request)
You should also read: https://guides.github.com/


Nuke time and new weight system

Hello, The command NUKE TIME does not work with the new warhead, I also had a suggestion for the new system of weight, to be able to choose the rate of increase or decrease example: smart_class_picker_class_ <Class 4> _weight_decrease = 3, thanks.

The ability to choose the rate of increase or decrease works almost exactly like that, you'd use smart_class_picker_class_4_weight_decrease = 3

PS. Don't use the smart_class_picker option right now, that feature is really bugged and will most likely crash your server every few rounds, the reason to why that happens is yet to be figured out.

Ok thanks a lot.

Smart Class Picker should no longer be broken


T261 lost tracking in certain direction when connected to a usb hub.

Required Info

Camera Model
T261

Firmware Version
<IP_ADDRESS>1

Operating System & Version
Win 10

Platform
PC/Raspberry Pi/ NVIDIA Jetson / etc..

SDK Version
2.47.0

Language
unity

Segment
AR/others

Issue Description
<Describe your issue / question / feature request / etc..>
The module lost tracking and went straight down in the SDK viewer when plugin in a usb hub or my integrator board with Motion Leap hand tracking controller. I'm currently working on the project north-star mr headset with T261 and motion leap controller mounted on a usb hub or the integration board, it should be working perfectly as other North Star developers did but currently I'm not one of them. A usb hub and the integrator board were used and both resulted in tracking failure to certain direction when T261 and motion leap controller activated at the same time. However T261 is working perfectly when motion leap controller is not active but been plugged in.
Here's some of the recording and screen-shots.

https://drive.google.com/file/d/13_5_IpxWlGMCBuSmDjzla9LAqnM0kipf/view?usp=sharing

More supporting material:

https://drive.google.com/file/d/13_5_IpxWlGMCBuSmDjzla9LAqnM0kipf/view?usp=sharing


Can not resolve config constant

Hi Josh,
Nice work on the plugin, this is an exciting project!
Just tried the plugin for the first time with an existing AIR project.
I'm getting a compile error trying to use config constants in my code eg
DEFINE::ANDROID { 	//android code } DEFINE::IOS { 	//ios code }
I've tried to define the constants in the asconfig.json as
"additionalOptions": "-define+=DEFINE::IOS,true -define+=DEFINE::ANDROID,false

The VSCode extension doesn't currently know about additionalOptions. I recently added it to asconfigc, and haven't gotten it into the extension yet. I'll get that hooked up in next version, and expose "define" as a proper compilerOption too. I can't believe that one slipped through! If you can ignore the errors in the editor for the time being, building the project should work. Sorry for the trouble!

I just released version 0.1.1 of the extension. It now supports the define compilerOption.


Update latest protos with Buf

Feeder v0.3.3 can't use latest daemon releases for stub mismatch
level=fatal msg="failed to list markets for target localhost:9000" error="rpc error: code = Unimplemented desc = unknown service tdex.daemon.v1.Operator"

Maybe fixed by https://github.com/tdex-network/tdex-feeder/commit/c9219a5806ddf32ef6c3c9b96e58abb760f66e9f

Added a guard for isReady as false, so we prevent calling ListMarkets, which will not respond before initialization


Add an Admin Panel

Add an Admin Panel to monitor all scheduled meeting meetings, and if there was a no-show; time out that person's account and send him/her a message asking for an explanation.
Before Working on this. Let me know how you plan to solve this, by explaining your thought process.
You can use a template admin panel like (I feel this can add a lot of bloat)
https://berrydashboard.io/free/
(Or you can create one from scratch using mui-5 component library. The dashboard must be responsive)
Example of custom dashboard

https://user-images.githubusercontent.com/54576074/145151875-93107a8c-a08c-43f1-8bd4-4951ea8284d8.mp4

The admin panel would be a different site on another subdomain.

The admin should have two factored authentication.

I’m thinking of using any pre-existing admin panels library for React, but they usually provide many features but restrict customizability.

Approve a mentor account
Ability to time-out ban or terminate any account.
Look at all the past — ongoing — upcoming mentorship sessions.
Resolve queries. (I’m thinking of using a third party chatbot like intercomn to do the following)
Ability to send email to all the signed up mentors-mentee

Good templates
https://material-ui.com/store/previews/minimal-dashboard-free/
https://material-ui.com/store/previews/soft-ui-pro-dashboard/

Hey @sulogna2001
Would you like to elaborate your ideas regarding no show mentors?

Is anyone working on this or is it in development ?
I would love to tackle this issue.


fix: deployment

fixes deployment issue with conventional commit changeling action
For this to work the deployment of GitHub pages has to be set to workflow based.

I updated it to use GitHub Actions


Add note about pg json string bug

See https://github.com/PostgREST/postgrest/pull/1314.

This was solved in pg. Seems not worth to add to the docs.


[BUG] Build is not working

Describe the bug
As per documentation, there should be possible to build package after generation of that package.
but it is not.
it is said that need to install slim, so i've added splunk-packaging-toolkit to requrements.txt and installed as other reuqurements.
but slim is failing.
Expected behavior
it works as described in documentation. If there are some old dependencies in python2, so documentation should be updated.
Screenshots
Traceback (most recent call last):
  File "/usr/local/bin/slim", line 5, in <module>
    from slim.__main__ import main
  File "/usr/local/lib/python3.10/dist-packages/slim/__init__.py", line 10, in <module>
    from . describe import describe
  File "/usr/local/lib/python3.10/dist-packages/slim/describe.py", line 9, in <module>
    from slim.app import AppDependencyGraph, AppSource
  File "/usr/local/lib/python3.10/dist-packages/slim/app/__init__.py", line 8, in <module>
    from . _configuration import (
  File "/usr/local/lib/python3.10/dist-packages/slim/app/_configuration.py", line 11, in <module>
    from . _configuration_validator import AppConfigurationValidator
  File "/usr/local/lib/python3.10/dist-packages/slim/app/_configuration_validator.py", line 13, in <module>
    from . _configuration_spec import AppConfigurationPlacement, AppConfigurationSpec
  File "/usr/local/lib/python3.10/dist-packages/slim/app/_configuration_spec.py", line 55, in <module>
    from . _configuration_validation_plugin import AppConfigurationValidationPlugin
  File "/usr/local/lib/python3.10/dist-packages/slim/app/_configuration_validation_plugin.py", line 12, in <module>
    from .. utils import SlimLogger, encode_filename, encode_series, slim_configuration
  File "/usr/local/lib/python3.10/dist-packages/slim/utils/__init__.py", line 18, in <module>
    from . ignore import *
  File "/usr/local/lib/python3.10/dist-packages/slim/utils/ignore.py", line 9, in <module>
    from collections import Iterable, OrderedDict  # pylint: disable=no-name-in-module
ImportError: cannot import name 'Iterable' from 'collections' (/usr/lib/python3.10/collections/__init__.py)

App Version:
latest package 4.21

as i may understand, this is due to python 3.10.
and it is strange, why venv using 3.10, or what is wrong?

so, i had to update some ~20 py files with Import from collections and changed it to Import from collections.abc and it started to work.
but this is not expected way to solve it.

Hey @yaroslav-nakonechnikov I believe you might be using an old version of our tooling, we migrated all these tools over to https://github.com/splunk/contentctl .. give those a try, I will work on updating our README here so it won't mislead other users. Thank you for raising!

@josehelps but according to releases and timestamps for it - there is a feel, that security_content is more active project.

it is definetly a more active project since we publish our active detection development there, but the tooling for it now lives on contentctl.

thanks!


Specification in requirements.txt is not enough

Specification in requirements.txt is not enough to create a virtual environment with the packages required by 3W (toolkit and Jupyter Notebooks).

This issue was resolved with the PR #31.


Update configuration file parsing

Update configuration file parsing to that described in the documentation.
Remove unused parameters.

Fixed with commit ad346e57b430e6b82e5341c52c538565d1fd8add


Case sensitive search

Describe the desired behavior
For example, I have a few components with properties named: "Platform" or "platform" and variant named: "Desktop" or "desktop"
I want to switch all components, no mater or the property or variant name case.
Describe the current behavior
This is currently impossible to do.

fixed


Make "there are no more objects/values" a visible "fact" in BlawxBot

In #236 we are going to want to let people change the fact scenario by deleting facts. One of the things that they may want to change is whether a list is closed. To do that, we need to add the fact that it is closed to the user interface.

Done in show_no_more branch.


WHMCS License Verification Broken

As noticed recently in the LET discord server, WHCMS license verification is broken. This is a direct result of WHMCS adding reCAPTCHA to all of their webpages with forms. I've reached out to them via ticket to see if they'll consider disabling reCAPTCHA on just the license verification page or providing me access to an API to do the license checks, but this may be wishful thinking. For now, until something changes on WHMCS-side, this feature will remain broken.
I won't consider adding a reCAPTCHA solver to this project since I won't break the ToS of one company to enable a bot to enforce a ToS of another. If the WHMCS license check feature included in this bot is helpful for you, then I highly suggest reaching out to the WHMCS team and requesting reCAPTCHA to be disabled on the license verification page (link to issue ticket: https://www.whmcs.com/members/submitticket.php?step=2&deptid=12)

Guidance has been received from the WHMCS team. A fix will be worked on and deployed shortly.

Fixed with c7d4a2c


How do I bulk delete with conditions?

First Check

[X] I added a very descriptive title to this issue.
[X] I used the GitHub search to find a similar issue and didn't find it.
[X] I searched the SQLModel documentation, with the integrated search.
[X] I already searched in Google "How to X in SQLModel" and didn't find any information.
[X] I already read and followed all the tutorial in the docs and didn't find an answer.
[X] I already checked if it is not related to SQLModel but to Pydantic.
[X] I already checked if it is not related to SQLModel but to SQLAlchemy.

Commit to Help

[X] I commit to help with one of those options 👆

Example Code
@dialplan.put("/dialplans")
async def put_dialplan(extension_in: ExtensionIn, offset: int = 0,
                       limit: int = Query(default=100, lte=100),
                       session: Session = Depends(get_session)):
    # delete multiple dialplan records with condtions
    session.delete()

Description
I can't find any instruction on https://sqlmodel.tiangolo.com/tutorial/ for this, please help!.
Operating System
Linux
Operating System Details
No response
SQLModel Version
0.0.6
Python Version
3.10
Additional Context
No response

You can use delete from sqlalchemy:
from sqlalchemy import delete

stmt = delete(Item).where(Item.id.in_([1, 2, 3]))
session.exec(stmt)
session.commit()

Thanks @meirdev,
I've managed to do delete this way:
My model:
from sqlmodel import SQLModel, Field as sqlmodel_field

class Extension(SQLModel, table=True):
    \_\_tablename\_\_ = 'extensions'
    id: Optional[int] = sqlmodel_field(default=None, primary_key=True)
    context: str
    exten: str
    priority: str
    app: str
    appdata: str = None

Delete code:
session.execute(
        delete(Extension).where(
            col(Extension.exten).like(
                f'{my_var}%')).execution_options(
            synchronize_session="fetch"))

Thanks for the help here @meirdev ! 👏  🙇
Thanks for reporting back and closing the issue @nghianv19940  👍

Deleting this way doesn't pass type check. I have the following code
from sqlmodel import delete
session.exec(delete(Tags).where(Tags.registry_id == entry.id))

And pypy will fail with:
error: No overload variant of "exec" of "Session" matches argument type "Delete"  [call-overload]
hub/api/v1/registry.py:211: note: Possible overload variants:
hub/api/v1/registry.py:211: note:     def [_TSelectParam] exec(self, statement: Select[_TSelectParam], *, params: Mapping[str, Any] | Sequence[Mapping[str, Any]] | None = ..., execution_options: Mapping[str, Any] = ..., bind_arguments: dict[str, Any] | None = ..., _parent_execute_state: Any | None = ..., _add_event: Any | None = ...) -> TupleResult[_TSelectParam]
hub/api/v1/registry.py:211: note:     def [_TSelectParam] exec(self, statement: SelectOfScalar[_TSelectParam], *, params: Mapping[str, Any] | Sequence[Mapping[str, Any]] | None = ..., execution_options: Mapping[str, Any] = ..., bind_arguments: dict[str, Any] | None = ..., _parent_execute_state: Any | None = ..., _add_event: Any | None = ...) -> ScalarResult[_TSelectParam]


[CARBONDATA-3841] Remove useless string in create and alter command

Why is this PR needed?

LoadDataCommand has duplicated info about user input. Since SQL plan is printed in driver log and showed on SparkUI, we want to make it pretty.
Some variable/file are not in used.

What changes were proposed in this PR?
Remove the duplicated info and unused variable/file.
Does this PR introduce any user interface change?

No
Yes. (please explain the change and update document)

Is any new testcase added?

No
Yes

Build Failed  with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1394/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3118/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3119/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1395/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3213/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1487/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3425/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1683/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3465/

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1728/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3470/

retest this please

Build Success with Spark 2.4.5, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbon_PR_Builder_2.4.5/1848/

Build Success with Spark 2.3.4, Please check CI http://<IP_ADDRESS>:12545/job/ApacheCarbonPRBuilder2.3/3587/

LGTM


Agitoon Unexpected Character

Source information
Agitoon
Steps to reproduce

Browse
Load Agitoon

Expected behavior
Load Agitoon books
Actual behavior
Does not load and instead results in a "JSON Parse error: Unexpected character: <" error.
LNReader version
2.0.0-beta.1
Android version
Android 14
Other details
No response
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open issue.
[X] I have written a short but informative title.
[X] I have updated the app to version 1.1.19.
[X] I have updated all installed extensions.
[X] If this is an issue with the app itself, I should be opening an issue in the app repository.
[X] I will fill out all of the requested information in this form.

I think the problem come from the fact that they changed url from https://agit655.xyz to https://agit657.xyz

I think the problem come from the fact that they changed url from https://agit655.xyz to https://agit657.xyz

Hmm is that something can be fixed through the app itself or something I'd need to wait an update for?

Some additional details -- I tried downgrading the app to beta.0 and the plugin loads books but using the search bar leads to the main page just reloading. Not sure if this detail helps to identify the problem but it's something to note.

the problem is the URL, I fixed it I just need a little more time to make it better and not susceptible to domain changes, will be fixed soon


Config Editor Restore Settings

@oznu
I just try to restore some old settings using New Config editor without success.
After select old backup and press restore nothing happens, the settings still unchanged.
Tested on macOS Safari Catalina, and iPad Pro.

Thanks for pointing this out. I've fixed it in the latest @test v4.7.0-test.31.


Code.exe still running after uninstall, reinstall unsuccessfull.

I tried to update VS Code and it failed, then VS Code would not even start. I uninstalled VS Code and downloaded the installer.
This error occurs during install.

Even though it was "successfully" uninstalled task manager shows this:

I have also noticed something similar once on my Windows machine. I think @dbaeumer noticed it too. The process Code.exe goes to consume very little memory (16K) and it then cannot be killed via Task Manager. The only way I could get myself out of that state was to restart Windows.

@alexandrudima Isn't this the Electron issue you investigated?

@joaomoreno That is where it happened, but that was due to Electron crashing every time.
The screenshot shows the icon for Code.exe stable, so it could not have had the same root cause.

Not sure what I can do here. @bpasero have you seen this?

No, not so far.


V0.1.1

Updated to work with Castor API release 2021.6.
Improved stability of CI testing.

@andreasCastor @slknijnenburg, would you mind checking out this pull request


Remove logback.xml from archive

Please, remove your logback.xml configuration file from final library:
https://mkyong.com/maven/maven-exclude-logback-xml-in-jar-file/
It makes confusion in our applications.

+1

+1

We've released a new version 2.0.0rc2 , where logback.xml has been removed to not interfere the user-end.


⚠ Secret Website 3 has degraded performance

In 7ea9300, Secret Website 3 ($SECRET_WEBSITE_3) experienced degraded performance:

HTTP code: 200
Response time: 2202 ms

Resolved: Secret Website 3 performance has improved in ffa2b0b.


[Turbo] Support custom TurboStreamResponse actions

Q
A

Bug fix?
no

New feature?
yes

Issues
-

License
MIT

The current implementation of TurboStream & TurboStreamResponse has no generic action (only the predefined turbo actions) and what's more the class is marked as final, which does not allow adding support for more actions. I think the wrap function should be public or have a public function "custom" that exposes the functionality (I've opted for the latter)
I really like this library: https://github.com/marcoroth/turbo_power
It adds additional simple actions. For example I use set/delete attributes to enable/disable UI elements
This change will allow people to use this or similar libraries, or even build their own custom actions if they want to.
There is no impact to the rest of the functionality or DX
There is a minor change to the wrap function, it now accepts an array of attributes instead of a string. It builds the string from the array of attributes, and adds a leading space. This aims to prevent errors, as the previous implementation needs the $attr argument to start with a blank space otherwise it would produce invalid html

I think it should also work for <twig:Turbo:Stream:*> components.

I think it should also work for twig:Turbo:Stream:* components.

This can be done by adding a generic <twig:Turbo:Stream> component maybe.

@nicolas-grekas
I just realised if you pass "action" or "targets" into the attributes array those will conflict with the existing attributes.
I think we should throw an exception if those are present

With the incoming <twig:Turbo:Frame> and <twig:Turbo:Stream>, do you think we still need this features ?

With the incoming <twig:Turbo:Frame> and <twig:Turbo:Stream>, do you think we still need this features ?

I think they are complementary. I'd rather use the twig component syntax only in templates and stick to this helper on the php side, plus it's better to have consistent functionality in both, especially for people who dislike the twig component syntax.

Looks good to me!
Could you check the type of values and throw if not expected (a non-stringable object) ?

Looks good to me!
Could you check the type of values and throw if not expected (a non-stringable object) ?

I believe this is going to throw:
foreach ($attr as $key => $value) {
    $key = htmlspecialchars($key);
    if (null === $value) {
        $attrString .= \sprintf(' %s', $key);
    } elseif (\is_int($value) || \is_float($value)) {
        $attrString .= \sprintf(' %s="%s"', $key, $value);
    } else {
        $attrString .= \sprintf(' %s="%s"', $key, htmlspecialchars($value)); // htmlspecialchars expect string so will throw here
    }
}

Or do you mean somewhere else ?

Looks good to me!
Could you check the type of values and throw if not expected (a non-stringable object) ?

I believe this is going to throw:
foreach ($attr as $key => $value) {
    $key = htmlspecialchars($key);
    if (null === $value) {
        $attrString .= \sprintf(' %s', $key);
    } elseif (\is_int($value) || \is_float($value)) {
        $attrString .= \sprintf(' %s="%s"', $key, $value);
    } else {
        $attrString .= \sprintf(' %s="%s"', $key, htmlspecialchars($value)); // htmlspecialchars expect string so will throw here
    }
}

Or do you mean somewhere else ?

So this is ready for merge then, right

After some thinking, why don't we rename the custom($action)  method in action($name, .... ... ... .. )  ?

After some thinking, why don't we rename the custom($action) method in action($name, .... ... ... .. ) ?

Yeah, I was thinking about this when I renamed the one in TurboStreamResponse
It should be either custom in both or action in both.
I don't really have a preference, both work, so I leave the choice to you

Let's use action in both then (sorry for the late comment)

Ready to merge

Updated the changelog, now ready to merge

Hey, I rebasing your PR and will merge it in the next minutes.

@DRaichev we will probably release a 2.22 in the coming weeks, you can use it with the "2.x-dev" in the meanwhile! Thanks for this PR 😄

@Kocal  @smnandre Thanks for the speedy reaction. And thank you for all the work you're doing on this project.
I used to hate to work on UX stuff, but thanks to Turbo and symfony UX I realised you can have great UX without the convoluted mess. Keep up the good work.


Remove loopback-connector-db2 from Third Party section

The link is broken, and the github user has removed all public repositories.

:+1:  Thanks


Revert "Revert "Revert "Public deployments have no valid web cert yet — work around this"""

Reverts vespa-engine/vespa#10626
@andreer for the next time you're feeling trigger happy :)

Closing as we have this with a feature flag now.


WIP: Composable retry

Continuing with the work started by @jdegoes. Closes #121

Ping

Pong :slightly_smiling_face:
Will start working on it tonight (AEST)

🕺 🎉

I've been following this ticket with great interest, and the more I think about it the more I have a feeling Retry is trying to merge two things that do not seem compatible:

a Mealy machine, witnessed by initial and update
a boolean algebra, witnessed by !, &&, ||

I wonder if, by separating the two, you would not face the problem that you are having with the implementation of ! for example.

@regiskuckaertz @ktonga The boolean not ! definitely does not work, because of the way update is encoded (the machine can either update the state, or return an error, but not both). It would need to return an unfailing (Option[E], S) in order to be implementable. I'll play around with that, but it shouldn't clutter this PR.
The && and || are not really boolean operators—both run the two strategies in parallel and choose consensus based on the operator (&& requires both to agree, while || is satisfied with either). So these operators really encode the two basic ways of achieving consensus (unanimity or dissent). Perhaps the use of operators is misleading.

I added named functions for the operators, both and either.
I have to admit the the update encoding and implementation are pretty elegant right now, it would be a pity to clutter it just for !, I was able to replace it by just applying the invention on the predicates.

The && and || are not really boolean operators

I admit that's what got me (and the check function), indeed both and either do not carry the same baggage.

I have to admit that the update encoding and implementation are pretty elegant right now

Indeed, it looks like a stream of states that could be installed as an instance of unfoldable or comonad, and then the sky's the limit 🚀

@ktonga @regiskuckaertz
I made some improvements.
I also modified update to produce Step, which contains a delay, pushing the sleep into IO.retry, allowing exponential and jitter to be greatly simplified and made completely orthogonal. Now any retry strategy can be jittered, including but not limited to exponential; and there is only need for 1 exponential function.
In addition, ! now works as expected, and various combinators were made simpler in the process.
There's probably some other simplifications to be made here, but I like the way it's looking now.

🤯 that looks bloody great! I’m away for a few days but will study that asap

@ktonga Thanks for your work on this Gaston! I'm going to close this one and open up a new one on my fork to continue the work there.

@jdegoes Sure, no problem. Here you have one last commit with a tiny modification to retryCollect and one more test I was working on just now.
https://github.com/ktonga/scalaz-zio/commit/c8ffb5d961fdc7a592ab90a2e7d113c47ad6c771

@ktonga Awesome. Please submit to my fork (when ready) and I'll merge right away.


SimSIMD acceleration for Python packages

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


Remove fds lib installation

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Ensured the license file is being packaged.

The libfds is not designed to be used by other users and is only meant to be used by fdesign executable. This has also been changed to a static library (as done by the original package), this then stops any undefined reference error occurring.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.


Release v1.30

Move to more standardized logging practices for better third party usage
Update Quick command to use POST endpoint instead of GET endpoint

Fixes:
#647
Includes:
#627 #628 #630 #634 #645 #646 #648 #650

+1 from me.  logging is now better fit for use as a library.


Use jslint for web app scripts

It should detect some issues. Add it to rules at Service Integration Guidelines.

Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.

https://github.com/standard/standard

Standard JS is in Nuvola ADK and is used in Nuvola SDK's convert-project/check-project.
Closing in favor of #424.


Only set empty handlers for IE CORS support if using XDomainRequest

I ran into a mysterious issue after upgrading Axios from 0.9.1 to 0.11.0 where a Selenium test was timing out only on Firefox, and was able to bisect the issue down to this commit. I'm assuming that this change was added based on the workaround for the issue reported here.
The problem seems to be that these handlers are being set on the request, even in test mode, which seems to have an unintended effect on promise resolution in Selenium, which I assume uses these handlers, but I haven't been able to find an exact path to track down the root cause.
This PR moves the workaround into the block that sets request to an XDomainRequest, and fixes the issue. I'm assuming there isn't a reason that these should be set to empty handlers in any other case.

Coverage decreased (-0.6%) to 91.254% when pulling f32b5a6ce4778aa94fd270f409eee0482e44c4c9 on icracked:master into ea375220a26fc8b0ec837e7526e678cd737eabda on mzabriskie:master.

Thank you for the PR!


refers to websocket implementation

Please have a look.

Need specs
Method 'redis' is wrong.

Could you write autotests (rspec) for your code?


Update on Openstack Information

TYPE

Enhancement

DETAILS

Chapter No: 2
Section Title: OpenStack Information
ADDITIONAL INFORMATION
Points completed:

Introduction
Controlling the Environment

@akshay196 , @KhushbuB  and @omkar0496 , anything else if you could suggest besides the mentioned points which needs to be addressed in this PR?


Installation on win 7

Hi. I'm new to this but then again even more grateful for help.
I'm having trouble installing v0.6.2 on my amd 64
The installation just never start and I can't run Telly.
Any ideas on what I'm doing wrong? Fumbling in the dark here at the moment...
thanks

What are you calling "the installation"?  All you should have to do is download the executable file and run it directly.
So you'd download one of these:
telly-windows-386.exe
telly-windows-amd64.exe
Then put it wherever you want, open a cmd window, cd to wherever you put it, and run it.
If you're downloading that file then double-clicking it expecting it to install something, it would just open and close.  There isn't an installation in that sense.

Thanks!


[BUG]: Topology based scheduling does not work when recreating Statefulsets

Describe the bug
Topology based scheduling is not working when recreating Statefulsets.
To Reproduce
Steps to reproduce the behavior:

Create StorageClass with

allowedTopologies:
- matchLabelExpressions:
  - key: "csi-vxflexos.dellemc.com/340906774c30210f
    values:
    - csi-vxflexos.dellemc.com

and
volumeBindingMode: WaitForFirstConsumer

NOTE - Powerflex is deployed/installed only on a subset of nodes in the cluster
2. Create a Statefulset without nodeAffinity, pods are scheduled on the right nodes
3. Delete the Statefulset created in step2.
4.  Recreate the Statefulset created in step2.
5. The pods are scheduled on nodes where powerflex is not installed
Expected behavior
Pods are scheduled on nodes where Powerflex is installed, even after re-creating the statefulset
Logs
Controller logs - https://gist.github.com/skavyas/6e155d1cff3dc0c75ff039d0142b80a4
System Information (please complete the following information):

OS/Version: [e.g. RHEL 7.9]
Kubernetes Version [e.g. 1.19]

@skavyas  - Please re-test using the latest v2.0.0 as mentioned by Jai and re-open the issue when you have those additional details. Closing this issue.


build: Fix detection of libvorbisfile

The variable name is case-sensitive and the module is named Vorbis, not vorbis.

I noticed this while updating the snapshots in Debian experimental: playmus couldn't play an Ogg Vorbis music track, because we were disabling all backends except vorbisfile, but then wrongly thinking libvorbisfile hadn't been found. This PR fixes that.
We're building with -DSDL3MIXER_STRICT=ON, so if we genuinely hadn't found libvorbisfile the build would have failed; but -DSDL3MIXER_STRICT=ON didn't catch this particular failure mode. Maybe this means more message() calls should have the ${fatal_error} parameter?

P.S.: SDL2 affected?

P.S.: SDL2 affected?

I don't know, I'm using Autotools in the Debian packaging of all of the SDL2 family (and will continue to do so unless told that upstream maintainers are no longer recommending it).
The CMakeLists.txt in the SDL2 branch looks different enough that I think it's probably unaffected.

The fix is correct!
I will replace some STATUSes with ${fatal_error} as a fail safe.
I was assuming find_package(REQUIRED) would be enough for the strict mode,
but I did not anticipate cmake bugs :).
SDL2 does not have this issue.
The strict mode is introduced in https://github.com/libsdl-org/SDL_mixer/pull/555, which is SDL3 only.

I was assuming find_package(REQUIRED) would be enough for the strict mode, but I did not anticipate cmake bugs

I don't think this is a CMake bug, only a bug in our CMakeLists.txt. In my build, find_package(Vorbis ${required}) correctly detected the libvorbis family and set Vorbis_FOUND (so the REQUIRED didn't have any practical effect, because the required thing was found). But then the CMakeLists.txt looked at vorbis_FOUND instead, and that variable wasn't set, leading to this:
-- Found Vorbis: /usr/lib/x86_64-linux-gnu/libvorbisfile.so¯¯
-- vorbisfile NOT found

That's what I meant: a bug in my cmake code.
The ${fatal_error} of my latest patch should catch this error case.
Thanks again!


failed to list *v1alpha1.KluctlDeployment: kluctldeployments.flux.kluctl.io is forbidden

Controller Version
v0.9.0
Kubernetes Version
v1.21.14
Bug description
failed to list *v1alpha1.KluctlDeployment: kluctldeployments.flux.kluctl.io is forbidden: User "system:serviceaccount:flux-system:flux-kluctl-controller" cannot list resource "kluctldeployments" in API group "flux.kluctl.io" at the cluster scope
Steps to reproduce
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- gotk-components.yaml
- gotk-sync.yaml
- https://github.com/kluctl/flux-kluctl-controller/config/install?ref=v0.9.0
namespace: flux-system

Relevant log output
W1130 19:03:36.954357       1 reflector.go:424] pkg/mod/k8s.io/client-go@v0.25.4/tools/cache/reflector.go:169: failed to list *v1alpha1.KluctlDeployment: kluctldeployments.flux.kluctl.io is forbidden: User "system:serviceaccount:flux-system:flux-kluctl-controller" cannot list resource "kluctldeployments" in API group "flux.kluctl.io" at the cluster scope
E1130 19:03:36.954385       1 reflector.go:140] pkg/mod/k8s.io/client-go@v0.25.4/tools/cache/reflector.go:169: Failed to watch *v1alpha1.KluctlDeployment: failed to list *v1alpha1.KluctlDeployment: kluctldeployments.flux.kluctl.io is forbidden: User "system:serviceaccount:flux-system:flux-kluctl-controller" cannot list resource "kluctldeployments" in API group "flux.kluctl.io" at the cluster scope

@lictw Do you have a cluster-admin ClusterRole defined inside your cluster?

Ofcourse.
$ kubectl get clusterroles.rbac.authorization.k8s.io cluster-admin
NAME            CREATED AT
cluster-admin   2020-11-11T12:32:12Z

Strange, I'm not able to reproduce this with a fresh Kind cluster. Does happen for specific KluctlDeployments or always? I would also assume that happens before any deployments are applied...

I don't understand how it works for you..
Controller uses flux-kluctl-controller SA and it doesn't have binding with cluster-admin, while there is binding flux-kluctl-cluster-reconciler for cluster-admin role, but it refers SA controller:
$ kubectl get clusterrolebindings.rbac.authorization.k8s.io flux-kluctl-cluster-reconciler -o json | jq .subjects
[
  {
    "kind": "ServiceAccount",
    "name": "controller",
    "namespace": "flux-system"
  }
]

Kustomize doesn't path subjects along with namePrefix.

I installed helm chart as a workaround and it works.

@lictw which Kustomize version are you using? I remember vaguely that Kustomize had a bug in the past that caused namePrefixes to be broken in combination with SAs.

I'm using latest Flux, seems like that https://github.com/fluxcd/kustomize-controller/blob/main/CHANGELOG.md#0270 (v4.5.7).


Add support for child device

Hello,
python-kasa just introduce the notion of child device for device like the KS240. It is required to be able to control each switch in a multi-device device. It would be great if it was added.
Thank you!

Hi @nodiaque! You are right, I can see in the library that there is an index attribute:
Ref: https://python-kasa.readthedocs.io/en/latest/smartstrip.html
I think that can be integrated into mqtt2kasa  for sure. I am currently out of cycles for doing that, but would love to play with it in the future. Thank you for creating this issue.


[#1315] Allow spells to be linked to a specific class

Add a field in spell data to store the spell origin.

I'm sorry for my mistakes, I'm not so used with this technology (I'm C#/Angular dev.), but I learn fast.
Thanks for review

Sorry, I don't know what happened, but it merged other branch, I try to rebase but I'm failling


How do i insert multiple rows with only one write?

Describe the bug
Hello, i need to know if there is a way to insert multiple rows with a single write. It'ss a feature that i think is a must to work with an hosted version of supabase and to lower costs of writing to db.
Right now supabase client insert
supabase.table("table_name").insert(data).execute()
support only a dict and not a list[dict]
I'm a developer so i could do something if someone point me to the right direction.
Thanks

@anand2312  do we need an insert_many in this instance since the normal postgres-js only have a single insert methods that takes a dict or a list?

Sorry @silentworks didn't see this earlier. I don't think we need it separately.


Test magic args

Proposed changes
Closes #94. The tests aren't super comprehensive but definitely increase the code coverage to the point that they would have caught #287.

GH actions is being weirdly flaky here but all the tests passed on the last run, so I think this is good for another look

Looks like the failures may have to do with the custom_paths strategy generating invalid examples. Check out https://pypi.org/project/hypothesis-fspaths/ for generating only valid paths. (I'm not seriously worried about users using null-bytes in their custom_paths, and if they do, that's on them, so I don't think we need to handle it).

Ah, sorry, looks like you did take some steps to address the failures. Either way, the library presented is another option (I may incorporate it in the future for other reasons, so we have it on standby at least)


TLS in a stubborn SMTP server

I had a very stubborn SMTP server which didn't allow me to authorize with TLS (and I knew I had to use TLS).
I tried with:
@@@
$smtp = fsockopen( "tls://mail.example.com", 587, $errno, $errstr );
@@@
got this:
@@@
Warning: fsockopen() [function.fsockopen]: SSL operation failed with code 1. OpenSSL Error messages: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number in E:\www\exp\test_email.php on line 49
Warning: fsockopen() [function.fsockopen]: Failed to enable crypto in E:\www\exp\test_email.php on line 49
Warning: fsockopen() [function.fsockopen]: unable to connect to tls://mail.example.com:587 (Unknown error) in E:\www\exp\test_email.php on line 49
@@@
When I tried first connecting with tcp:// and later switching to crypto connection with:
@@@
$smtp = fsockopen( "tcp://mail.example.com", 587, $errno, $errstr );
stream_socket_enable_crypto( $smtp, true, STREAM_CRYPTO_METHOD_TLS_CLIENT );
@@@
I got:
@@@
Warning: stream_socket_enable_crypto() [function.stream-socket-enable-crypto]: SSL operation failed with code 1. OpenSSL Error messages: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number in E:\www\exp\test_email.php on line 50
@@@
Using your system I got the same problem:
@@@
Warning: stream_socket_client() [function.stream-socket-client]: SSL operation failed with code 1. OpenSSL Error messages: error:1408F10B:SSL routines:SSL3_GET_RECORD:wrong version number in E:\www\exp\lib\swift\classes\Swift\Transport\StreamBuffer.php on line 271
Warning: stream_socket_client() [function.stream-socket-client]: Failed to enable crypto in E:\www\exp\lib\swift\classes\Swift\Transport\StreamBuffer.php on line 271
Warning: stream_socket_client() [function.stream-socket-client]: unable to connect to tls://mail.example.com:587 (Unknown error) in E:\www\exp\lib\swift\classes\Swift\Transport\StreamBuffer.php on line 271
Fatal error: Uncaught exception 'Swift_TransportException' with message 'Connection could not be established with host mail.example.com [ #0]' in E:\www\exp\lib\swift\classes\Swift\Transport\StreamBuffer.php:273 Stack trace: #0 E:\www\exp\lib\swift\classes\Swift\Transport\StreamBuffer.php(66): Swift_Transport_StreamBuffer->_establishSocketConnection() #1 E:\www\exp\lib\swift\classes\Swift\Transport\AbstractSmtpTransport.php(116): Swift_Transport_StreamBuffer->initialize(Array) #2 E:\www\exp\lib\swift\classes\Swift\Mailer.php(79): Swift_Transport_AbstractSmtpTransport->start() #3 E:\www\exp\test_swift.php(49): Swift_Mailer->send(Object(Swift_Message)) #4 {main} thrown in E:\www\exp\lib\swift\classes\Swift\Transport\StreamBuffer.php on line 273
@@@
I was close to give up but I encountered this post "Secure tls email through fsockopen":http://forum.powweb.com/showthread.php?t=73406 by Fred Kilbourn. The important fragments are:
@@@
cmd( "STARTTLS" );
stream_socket_enable_crypto( $smtp, true, STREAM_CRYPTO_METHOD_TLS_CLIENT );
cmd( "EHLO {$_POST['DomainName']}" );
@@@
so it is important to issue "STARTTLS" command, only after that start stream_socket_enable_crypto() and again issuing EHLO command. Only with this set of commands everything starts to work... I hope it may help you modify the code so that it will be possible to connect to more servers without any problems.
Original creation date: 2011-08-07T14:44:40Z
Original reporter: boryn
Original ticket: http://swiftmailer.lighthouseapp.com/projects/21527/tickets/215

I am currently running into this issue with SwiftMailer while trying to connect to our companies new Office365 mail accounts. Using TLS over port 587 is giving me the "...SSL3_GET_RECORD:wrong version number..." error message.  Is this something currently being worked on or is there a workaround in place?

Same as whitpan, Office365 mail account, SSL3_GET_RECORD:wrong version number


discovery: Remove processInfo

What does this PR do?
Store the model.Service received from the endpoint directly and remove the redundant type processInfo which duplicates the information available there.

Motivation
Simpler code. Noticed while working on https://github.com/DataDog/datadog-agent/pull/29000.

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

/merge


First steps to provide localization for thor

Hi there,
I usethor in my projects a lot and would like to provide the users a localized cli. Parts are done, but messages generated by thor itself are missing.
This is a very rough version, which I send to you to get some feedback. I would like to add a very thin layer to thor just to make it possible to localize its messages. The hard work should be done outside thor, e.g. by I18n or some other library.
For now I changed the messages in lib/thor.rb to give you an idea about the API. I took some code from I18n to make interpolation possible. Therefor it has the same functionality like I18n in regards of string interpolation.
In this version I use a YAML-file to store the translations. But this is just for my convenience during development. To speed things up, I can put that stuff into a Hash or some similar data structures.
Would you mind to give me some feedback? Would you merge such an PR if it matches your quality requirements etc..
Thank you very much.
Regards,
dg

As mentioned from @wycats I will add some more explanation to this PR. @wycats Can you give me some feedback on this? Thanks.
Reason for change
I'm using thor in most of my projects and want to give users a localized commandline interface. For now there are a lot of English messages hidden in thor's source code.
Proposal
This PR will replace all strings output by puts et al. by using a syntax similar to I18n.
puts "I'm a quite long message"

will become something like
puts Thor::Localize.t('thor.help.usage')

The api I have in mind:

Is a thin wrapper
By default uses a small backend
The default backend can be substituted a more advance one like I18n.

To make 1. possible I will add something like that
class Thor
  module Localize
    @backend = Thor::Localize::Internal

    attr_accessor :backend

    def t(translation_key, interpolation_values = {})
      backend.t(translation_key, interpolation_values)
    end

    module_function :backend, :t
  end
end

The default backend uses YAML in the background. Before that I tried several other approaches like using a Module, but this was hard to maintain. After playing around which YAML-approach a bit. I found it quite handy. Translations are easy to change/add later on. The structure is clear and lean - no need for {} (Hash) etc. YAML is part of ruby-core. As I18n also uses YAML files and you can reuse the default  file  and only change the translations where needed.
All translations are placed in a separate YAML-file in the  localize-subdirectory . The default backend also supports interpolation. The code for that was  "borrowed"  from I18n - which is also licensed under the  MIT-license .
To support much more complex setups, one can exchange (3.) the backend by simply using Thor::Localize.backend = NewBackend. The only requirement for a backend would be, that it needs to support #t. Because all "requests" will be forwarded to that method.
Things where I need some feedback / which need to be discussed

[ ] Is using YAML ok for you? I don't think that using it should have any negative side affects on the performance

[ ] Should exchanging backends be supported?

[ ] The structure of messages in the YAML-file
I think this is a tough one. For now I'm using this  structure . Every thor commandline command - update, list_installed etc. - has it's own section. I would try to make use of that structure everywhere. BTW there's an identation error  here  that would be fixed in the finished PR.

[ ] Testing
What would you want me to test? From my side I would add tests for the default backend, the interpolation-feature, exchanging the backend and some messages.

I would be grateful to get some feedback. Thanks a lot.

@dg-ratiodata have you considered making the API compatible with the Rails localization interface? There are several useful backends that already exist for the Rails interface that might be handy here.

Mmh.. I'm not sure what you mean  with "API compatible". I thought Rails uses I18n. Shouldn't that mean you've got everything in place when you use I18n as backend?
Thor::Localize.backend = I18n

@wycats Is this what you have in mind?

Friendly ping @wycats Anything I missed here? The idea was to provide a minimal layer which makes it possible to use fullblown solutions like I18n or something selfmade. I don't want thor to require I18n to be installed.

Friendly ping @wycats Anything I missed here? The idea was to provide a minimal layer which makes it possible to use fullblown solutions like I18n or something selfmade. I don't want thor to require I18n to be installed.


layers: Removing redundant if in unique_objects"

Exact same if check performed multiple times.
Removing redundant one
Change-Id: Iff32a724e58a06b4a967ba2632e60cc5b4050238

Removed terminating "

Good to go -- push it!


PENV-792: lifeline endpoints

- What I did
- How I did it
- How to verify it
- Description for the changelog

Codecov Report

:exclamation: No coverage uploaded for pull request base (release/1.2@34d6fb0). Click here to learn what that means.
The diff coverage is n/a.

@@              Coverage Diff               @@
##             release/1.2     #204   +/-   ##
==============================================
  Coverage               ?   71.06%
==============================================
  Files                  ?       55
  Lines                  ?     3695
  Branches               ?        0
==============================================
  Hits                   ?     2626
  Misses                 ?      890
  Partials               ?      179

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 34d6fb0...1d20c7a. Read the comment docs.


support type promotion for more complex predicates in inference

For pure predicates p we should be able to infer
if (a is List && p) {
  // a known as List
}

As far as I can tell this type promotion is working. If it isn't please add a concrete example.

Perhaps a limitation like discussed in #33932


Versioning with date not working

In Azure devops potal, if i create a pipeline variable which has a value $(Major).$(Minor).$(Patch).$(date:yyyyMMdd) and in Nuget-Pack task i set the version to the variable, I get this error: - The nuget command failed with exit code(1) and error(Version string specified for package reference '1.0.1.$(date:yyyyMMdd)' is invalid.)

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

ID: 11ed58a1-5819-f3a4-c674-dafcdbd56fbc
Version Independent ID: d68aca4d-3fd3-1864-09f5-6060295e0399
Content: Publishing to NuGet feeds - Azure Pipelines and TFS
Content Source: docs/pipelines/artifacts/nuget.md
Product: devops
Technology: devops-cicd
GitHub Login: @thomps23
Microsoft Alias: amullans

@andyf1ynn Thank you for your feedback!
The author has been notified with your support issue.
@thomps23 Can you please take a look at this issue?

@andyf1ynn sorry for the late response. Are you still having this issue?

I'll be closing this issue for now. I want to make sure you are no longer having this issue so please either respond here or make a new issue and I will get back to you as soon as possible.


Detach aggregate from repository on concurrency error?

Repository works as Identity Map for aggregates (at requested version).
If a concurrency exception is thrown on save the aggregate became stale and the repository will be stale too.
We can detach the stale aggregate before rethrowing so the client can ask again for a fresh version.

We can enable identity map with a decorator + Repository Factory.

Added the Identity map as decorator, up to the dev to choose what to do.
Default implementation keep the stale aggregate in memory.


ExpandingListener

where you define your ExapandingListener? I can`t find that code.

it's in the lib. in custom view


"Plugins" header in user settings is too far down

Thanks for the report, should be fixed by the update v2.3.0.


trigger staging cli release for 0.7.1

Description of changes:
trigger staging CLI release
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/override eks-anywhere-release-tooling-presubmit

/override eks-anywhere-attribution-files-presubmit
/override eks-anywhere-presubmit


Upgrade build to Gradle 7

Closes gh-572

@jgrandja I have broken this PR up into several commits so the steps can be reviewed individually. I think it might be best to merge without squashing commits but let me know if you want any of it cleaned up.


Added rescue blocks to allow some useful output even when there are some errors

Hi Elad,
Thanks for your hard work on this one!  The plugin saved me quite a bit of time grabbing the low-hanging index fruit on an application I just inherited. :)
I wasn't able to get the rake tasks to run successfully by default on my app, though, so I added a few rescue blocks to handle error cases (like inability to determine proper table name for association-based finders in controllers (e.g. current_user.widgets.find...)).
These tweaks don't actually FIX anything, but they do allow the plugin to show SOME indexes even when there are errors searching for others.
Cheers,
-Kali

How about including the primary key like below:
def key_exists?(table, key_columns)
   result = (key_columns.to_a - (ActiveRecord::Base.connection.indexes(table).map { |i| i.columns }.flatten + ActiveRecord::Base.connection.primary_key(table).to_a)) rescue []
   result.empty?
end


exit hangs after loading a module

As the title says. Trying to exit before loading a module is quick. Once a module is loaded the exit command hangs for a long time.

Itis likely related to your module as it doesn't happen for us.
What module, what version, what platform?