How to get COM object as "base" Interface without move

Hello, I don't think this is rust-general question, but this is my first time writing rust "in anger", so happy to be told otherwise.
I am looking at the Core Audio APIs, and specifically the IAudioEndpointVolume::RegisterControlChangeNotify  callback method/interface.
So to receive the callback I've got to create a class that implements the IAudioEndpointVolumeCallback interface, nice and easy thanks to the #implement macro!
However my question is how to "nicely" get that struct as a IAudioEndpointVolumeCallback, ideally without moving or cloning?
Here's a minimal reproduction case (or as minimal as I could get it):
use windows::{
    core::{implement, Result},
    Win32::{
        Media::Audio::{
            eConsole, eRender,
            Endpoints::{
                IAudioEndpointVolume, IAudioEndpointVolumeCallback,
                IAudioEndpointVolumeCallback_Impl,
            },
            IMMDeviceEnumerator, MMDeviceEnumerator,
        },
        System::Com::{
            CoInitializeEx,
            CoCreateInstance,
            COINIT_APARTMENTTHREADED,
            CLSCTX_ALL,
            CLSCTX_INPROC_SERVER,
        },
    },
};

#[implement(IAudioEndpointVolumeCallback)]
pub struct VolumeCallbackClient {}

impl IAudioEndpointVolumeCallback_Impl for VolumeCallbackClient {
    #[allow(clippy::not_unsafe_ptr_arg_deref)]
    fn OnNotify(
        &self,
        _pnotify: *mut windows::Win32::Media::Audio::AUDIO_VOLUME_NOTIFICATION_DATA,
    ) -> Result<()> {
        Ok(())
    }
}

#[cfg(test)]
mod tests {
    use windows::Win32::Media::Audio::AUDIO_VOLUME_NOTIFICATION_DATA;

    use super::*;
    #[test]
    fn test_cast() -> Result<()> {
        unsafe {
            CoInitializeEx(None, COINIT_APARTMENTTHREADED)?;
            let device_enumerator: IMMDeviceEnumerator =
                CoCreateInstance(&MMDeviceEnumerator, None, CLSCTX_INPROC_SERVER)?;
            let device = device_enumerator.GetDefaultAudioEndpoint(eRender, eConsole)?;

            let endpoint_volume: IAudioEndpointVolume = device.Activate(CLSCTX_ALL, None)?;
            let vcallback = VolumeCallbackClient {};
            let interface: IAudioEndpointVolumeCallback = vcallback.into();
            endpoint_volume.RegisterControlChangeNotify(&interface)?;
            endpoint_volume.UnregisterControlChangeNotify(&interface)?;

            let notification_data: AUDIO_VOLUME_NOTIFICATION_DATA = std::default::Default::default();
            // Can't do this, as vcallback was moved on the `let interface` line
            // vcallback.OnNotify(&mut notification_data as *mut AUDIO_VOLUME_NOTIFICATION_DATA)?;

            // TODO: Can do I get this wornking?
            // endpoint_volume.RegisterControlChangeNotify(vcallback)?;
            // endpoint_volume.UnregisterControlChangeNotify(vcallback)?;
        }
        Ok(())
    }
}

I tried just calling endpoint_volume.RegisterControlChangeNotify(&callback)?; but that failed to compile with:
error[E0277]: the trait bound `&windows::Win32::Media::Audio::Endpoints::IAudioEndpointVolumeCallback: From<&VolumeCallbackClient>` is not satisfied
   --> src\lib.rs:46:57
    |
46  |             endpoint_volume.RegisterControlChangeNotify(&vcallback)?;
    |                             --------------------------- ^^^^^^^^^^ the trait `From<&VolumeCallbackClient>` is not implemented for `&windows::Win32::Media::Audio::Endpoints::IAudioEndpointVolumeCallback`
    |                             |
    |                             required by a bound introduced by this call
    |
    = help: the trait `From<VolumeCallbackClient>` is implemented for `windows::Win32::Media::Audio::Endpoints::IAudioEndpointVolumeCallback`
    = note: required because of the requirements on the impl of `Into<&windows::Win32::Media::Audio::Endpoints::IAudioEndpointVolumeCallback>` for `&VolumeCallbackClient`
    = note: required because of the requirements on the impl of `From<&VolumeCallbackClient>` for `windows::core::Borrowed<'_, windows::Win32::Media::Audio::Endpoints::IAudioEndpointVolumeCallback>`
    = note: 3 redundant requirements hidden
    = note: required because of the requirements on the impl of `Into<InParam<'_, windows::Win32::Media::Audio::Endpoints::IAudioEndpointVolumeCallback>>` for `&VolumeCallbackClient`
note: required by a bound in `windows::Win32::Media::Audio::Endpoints::IAudioEndpointVolume::RegisterControlChangeNotify`
   --> C:\Users\Ash\.cargo\registry\src\github.com-1ecc6299db9ec823\windows-0.42.0\src\Windows\Win32\Media\Audio\Endpoints\mod.rs:302:13
    |
302 |         P0: ::std::convert::Into<::windows::core::InParam<'a, IAudioEndpointVolumeCallback>>,
    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `windows::Win32::Media::Audio::Endpoints::IAudioEndpointVolume::RegisterControlChangeNotify`

(Without & I get an error rightly suggesting consider borrowing).
The one approach I did get to work is
            let interface: IAudioEndpointVolumeCallback = vcallback.into();
            endpoint_volume.RegisterControlChangeNotify(&interface)?;
            endpoint_volume.UnregisterControlChangeNotify(&interface)?;

but that takes ownership of the object meaning I can't access any attributes/methods I add on-top of the interface (which don't exist in this reproduction, but that I'd like to have in my real code).
If someone can help me with this I'm more than happy to add to the docs on this (likely the FAQ page about implementing COM interfaces)

Are you looking for cast()?

If you're trying to get at the implementation behind a COM interface that you have implemented, you might want to take a look at the AsImpl trait. The implement macro provides an implementation.

That gets me part of the way there (once I worked out I had to use windows::core::AsImpl to get as_impl to show up. Rust newbie here as I said.
However that gives a non-mutable reference to the implementation, so I can't change any of the state.
For example, given
#[implement(IAudioEndpointVolumeCallback)]
pub struct VolumeCallbackClient {
    x: u32,
}

impl VolumeCallbackClient {
    fn add_one(&mut self) {
        self.x += 1;
    }
}

I can't do something like this:
            let vcallback2 = interface.as_impl();
            vcallback2.add_one();

This example is purposefully reductive; what I actually want to do is add or remove volume conditions to change the behaviour of the OnNotify callback.
I guess I can restructure the object hierarchy to work around this if there isn't another way currently (using Cell etc, though I'm not a huge fan of having to lie about mut on the impl of my struct)

Just how bad an idea is this:
trait AsMutImpl<T> {
    fn as_mut_impl(&self) -> &mut T;
}

impl AsMutImpl<VolumeCallbackClient> for IAudioEndpointVolumeCallback {
    fn as_mut_impl(&self) -> &mut VolumeCallbackClient {
        let this = ::windows::core::Vtable::as_raw(self);
        unsafe {
            let this = (this as *mut *mut ::core::ffi::c_void).sub(2 + 0)
                as *mut VolumeCallbackClient_Impl;
            &mut (*this).this
        }
    }
}

Implementations are intentionally immutable since COM inherently allows multiple references which would break Rust's mutability guarantees. You need to use something like RwLock to grant mutable access. Here's an example.

Thanks very much for the help and pointers @kennykerr!


Merge version 0.1.30 from dev to master

Refactoring and big improvements have taken place.
Major changes include:

Proper key bindings (human readable)
Pygments highlighting
Flake8 linting module
Smarter event handling
Use Python logging library
New config location (~/.config/suplemon/suplemon-config.json)
Many smaller changes

Releasing v0.1.30 :)


is it possible to use an adaptive card with out a bot?

I am developing a personal tab application which allow user to select a channel from the list and send a message to the selected channel with a card attachment. I am getting teams and channels using Grap API. I was able to send the message. I am trying save the response of card button click event. I am using adaptive card as attachment and button's type is "Action.Submit". So when user click on button I need to send a response to an API end point. Is it possible to do that. Currently I am sending this card attachment.

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

ID: 8fb0c2d8-f880-c260-d0be-6b9467e47f8c
Version Independent ID: 7820ffc9-5260-c818-f5fb-672801a67d00
Content: Respond to the task module submit action - Teams
Content Source: msteams-platform/messaging-extensions/how-to/action-commands/respond-to-task-module-submit.md
Product: msteams
GitHub Login: @clearab
Microsoft Alias: anclear

@piyumi25:  In case if you are using adaptive card using task modules, You can make a API call on client side in JavaScript on a button click. You can check this sample.

@piyumi25 , How are you sending the card attachment to specific channel? are you using incoming webhook?

Thank you for your reply and I will check this example

@piyumi25 , How are you sending the card attachment to specific channel? are you using incoming webhook?
No, I am sending the message using Graph API.

let cardconten3 = {
        "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
        "type": "AdaptiveCard",
        "version": "1.0",
        "body": [
          {
            "type": "Container",
            "items": [
              {
                "type": "TextBlock",
                "text": "How are you feeling?",
                "weight": "bolder",
                "size": "medium"
              },
            ]
          },
        ],
        "actions": [
          {
            "type": "Action.Submit",
            "title": "Average",
          },
          {
            "type": "Action.Submit",
            "title": "OK",
          },
          {
            "type": "Action.Submit",
            "title": "Good",
          },
          {
            "type": "Action.Submit",
            "title": "Excellent",
          }
        ]
      };
 const chatMessage = {
            body: {
                contentType: "html",
                content: "Here's the latest budget. <attachment id=\"87b2e161-3d3f-4d21-8453-249de0e2ee43\"></attachment>"
            },
            attachments: [
                {
                    id: "87b2e161-3d3f-4d21-8453-249de0e2ee43",
                    contentType: "application/vnd.microsoft.card.adaptive",
                    //contentUrl: "https://m365x987948.sharepoint.com/sites/test/Shared%20Documents/General/test%20doc.docx",
                    content:JSON.stringify(cardconten3),
                    name: "CT"
                }
            ]
        };
        let res = await this.msGraphClient
        .api(`teams/${teamId}/channels/${channelId}/messages`)
        .post(chatMessage);
        console.log("message send",res);

So, After sending adaptive card --> User clicks on button and then api call must be made? Is my understanding correct?

yes @Manish-MSFT

Adaptive card doesn't support actions(Although they are supported for outlookhere). You can render a task module on click of button and then have a click action on that task module. So, the overall flow will be Adaptive card (button click) --> Task Module --> button click--> action.
You can handle API call for task module's on client side(quite similar to generall process of handling an button event call for HTML/CSS website) and can have same layout using HTML/CSS.
For more info on Task Module samples, Please refer here.

Why not just add a bot to your webapp to send and handle the Adaptive Card? This will give you flexibility moving forward, and give you access to additional contextual information.

Thanks for all replies.

Adaptive card doesn't support actions(Although they are supported for outlook here). You can render a task module on click of button and then have a click action on that task module. So, the overall flow will be Adaptive card (button click) --> Task Module --> button click--> action.
You can handle API call for task module's on client side(quite similar to general process of handling an button event call for HTML/ & CSS website) and can have same layout using HTML& CSS.
For more info on Task Module samples, Please refer here.

Hi,
I have implemented a solution for my problem and now I am facing a different issue.
My personal tab application workflow is as follows

get graph token
send message to a selected channel
This message is a hero card as follows. I have used openUrl to open a taskmodule using a deeplink. So taskmodule is opened only when that receiver has installed the application. Is there any way to implement this without installing the app.

this is the deeplink for taskmodule
let taskmoduleurl = https://teams.microsoft.com/l/task/${appId}?url=${url}&height=${height}&width=${width}&title=${title}``

@piyumi25 - Could you please confirm if your issue has resolved or still looking for any help?


BUG: unknown command "convert-kubeconfig" for "kubelogin"

In the documentation for Azure it says to run :kubelogin convert-kubeconfig -l azurecli
but when i run this command i get: error: unknown command "convert-kubeconfig" for "kubelogin"
seems like convert-kubeconfig is deprecated.
I'm using latest version: kubelogin version v1.27.0 (go1.20.1 windows_amd64)
This issue is preventing me from configuring kubelogin for AKS, please advise.

what does your kubelogin -h look like? how did you install it?

looks like you downloaded from a completely different repo :D
Can you follow the official doc? https://azure.github.io/kubelogin/install.html

cool thanks @weinong!!
wasn't aware there is separated kubelogin for azure


ci(github-actions): use bot's personal access token for pushing rc testing branch and triggering ci checking workflows

Description
What is the current behavior?

Even if we trigger the rc testing GitHub actions workflows and it creates a testing branch as expected, it won't trigger ci testing workflows due to https://docs.github.com/en/actions/using-workflows/triggering-a-workflow#triggering-a-workflow-from-a-workflow. Thus, we'll need to use personal access token for it.

What is the new behavior?

automatically trigger other ci testing workflows when rc testing branch is triggered
Does this introduce a breaking change?
no
Checklist

[ ] Created tests which fail without the change (if possible)
[ ] Extended the README / documentation, if necessary

Will need @phanikumv 's help setting up BOT_TOKEN

as https://github.com/astronomer/astro-sdk/pull/2009 is merged, I think we can close this one


Removing duplicate set mark-symlinked-directories on settings.

You've got set mark-symlinked-directories on showing up twice :)

Good catch, thanks!

No worries, thanks for the code! :)


Enable jsx-fragment rule

Enforce shorthand or standard form for React fragments with jsx-fragment Rule.

Go ahead and release!


AWS Lambda - Only instantiate Docker when invoking functions

…ker running
Fixes #3359
This ensures that Docker is only instantiated when trying to invoke a Lambda. Put differently, when Docker is not running, it will only throw an error when trying to invoke a Lambda-function.
Other Lambda calls (create_function, list_, etc) will still work even if Docker is not running.
Edit: @batch has the same problem, so this PR now fixes both services
(My initial approach was to simply downgrade the docker-py dependency to <=4.3.0, but that's not really a solution - just a workaround.)

Coverage decreased (-0.2%) to 94.219% when pulling 390a4d55102f49cade830bf422ebf36e3be7dacb on bblommers:bugfix/3359 into 2f70373c2e9d91405082ddbd12eb61fb43914b20 on spulec:master.

Thanks Bert!


Valid syntax `" causes invalid highlighting in PowerShell

(Original issue 782 created by jpoehls on 2012-06-07T19:47:31.007347+00:00)
This valid line of PowerShell code will cause the remainder of the file to be incorrectly highlighted:
{{{
#!powershell
$x = ping "www.google.com"
}}}
This can also be seen breaking the last few lines of this GIST. https://gist.github.com/2891103

(Original issue 782 last updated on 2012-08-19T09:28:04.161101+00:00)
(Issue automaticaly closed due to status in Bitbucket: resolved)

(Original comment by birkenfeld on 2012-08-19T09:28:04.158623+00:00)
Closes #782: add PowerShell escape syntax outside strings
→ <>


-fix "the" duplicate

The word "the" was duplicated

@tommasodotNET : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#sign-off


Update run.sh

tensorflow==1.15.* is now no longer available

Sorry, I found that change at the include is the better way


404 Error on link "Fit Assessment"  samples

Getting 404 error when clicking on
'GoogleCloudPlatform/migrate-to-containers' repository doesn't contain the 'examples/fit-assessment' path in 'main'.

Item removed


Cars Assemble: Error in return value of test case

There is a problem in #2083
Problem : the expected return type in test case 14 and 15 is float but the testcase it is receiving is in int.
Solution : I want to make correction is the test case return value
Please assign me this issue

Hi!
Thanks for taking the time to write an issue.
Maybe I'm missing something, but I don't see the issue. Tests 14 and 15 for me are these ones:
https://github.com/exercism/go/blob/9ecfb014112598afd9f2d77c12e2ee46dc711d37/exercises/concept/cars-assemble/cars_assemble_test.go#L147-L156
This is in the TestCalculateCost function, that tests the CalculateCost function. carsCount and want are int and unint respectively:
https://github.com/exercism/go/blob/9ecfb014112598afd9f2d77c12e2ee46dc711d37/exercises/concept/cars-assemble/cars_assemble_test.go#L127-L131
Which are exactly the argument and return types CalculateCost expects:
https://github.com/exercism/go/blob/9ecfb014112598afd9f2d77c12e2ee46dc711d37/exercises/concept/cars-assemble/cars_assemble.go#L16-L18
Maybe you are referring to a different test case?

Thanks for reaching me out .
But even if I am including the  codition in raw but still it is given error
I can show you
On Sun, 6 Mar 2022 at 22:09, André Santos @.***> wrote:

Hi!
Thanks for taking the time to write an issue.
Maybe I'm missing something, but I don't see the issue. Tests 14 and 15
for me are these ones:
https://github.com/exercism/go/blob/9ecfb014112598afd9f2d77c12e2ee46dc711d37/exercises/concept/cars-assemble/cars_assemble_test.go#L147-L156
This is in the TestCalculateCost function, that tests the CalculateCost
function. carsCount and want are int and unint respectively:
https://github.com/exercism/go/blob/9ecfb014112598afd9f2d77c12e2ee46dc711d37/exercises/concept/cars-assemble/cars_assemble_test.go#L127-L131
Which are exactly the argument and return types CalculateCost expects:
https://github.com/exercism/go/blob/9ecfb014112598afd9f2d77c12e2ee46dc711d37/exercises/concept/cars-assemble/cars_assemble.go#L16-L18
Maybe you are referring to a different test case?
—
Reply to this email directly, view it on GitHub
https://github.com/exercism/go/issues/2122#issuecomment-1059995652, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AWGMRIPGXUA7KDAY57FPWOTU6TNVLANCNFSM5QBJCN2A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

If you are detecting the error in a particular solution, yes, please post the solution here.

@jewthon Sure, no problem, take your time!
If you believe the problem might be with your solution, you can ask for mentoring and a mentor will help you see if there's anything wrong with your solution or are the tests that are potentially wrong.
If on the other hand you strongly believe the problem are the tests, you can post the problematic solution here and we can take a look.

Thanks, I'll check it out.
On Mon, Mar 7, 2022, 2:49 PM André Santos @.***> wrote:

@jewthon https://github.com/jewthon Sure, no problem, take your time!
If you believe the problem might be with your solution, you can ask for
mentoring and a mentor will help you see if there's anything wrong with
your solution or are the tests that are potentially wrong.
If on the other hand you strongly believe the problem are the tests, you
can post the problematic solution here and we can take a look.
—
Reply to this email directly, view it on GitHub
https://github.com/exercism/go/issues/2122#issuecomment-1060376193, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AWGMRIKIIWVRTOYGEUQOI3TU6XCZTANCNFSM5QBJCN2A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

@jewthon Any news on this?

Not yet!
On Sat, Mar 12, 2022, 4:51 PM André Santos @.***> wrote:

@jewthon https://github.com/jewthon Any news on this?
—
Reply to this email directly, view it on GitHub
https://github.com/exercism/go/issues/2122#issuecomment-1065865199, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AWGMRIL2PQAVVX5LFRJHABDU7R44BANCNFSM5QBJCN2A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>

@jewthon Did you start this exercise some months ago and then continued later on? There was a different version of this exercise before, maybe that is causing the issue.

I also doubt that. I think this is the reason why I am getting error. Ok I
got you
On Wed, Mar 16, 2022, 2:53 AM June @.***> wrote:

@jewthon https://github.com/jewthon Did you start this exercise some
months ago and then continued later on? There was a different version of
this exercise before, maybe that is causing the issue.
—
Reply to this email directly, view it on GitHub
https://github.com/exercism/go/issues/2122#issuecomment-1068486200, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AWGMRILLJ6DMRNKKA5N7FJLVAD5UJANCNFSM5QBJCN2A
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you were mentioned.Message ID:
@.***>


Client Cypress Integration

Add GH action script for Client UI tests
closes #168

The github action looks good

[x]  Ensure that the test is required in Github

Client tests added as requirement for main branch


[Docs] Updated artifactId for overlay

ArtifactId is not consistent with the drivers configuration documentation. Changed it to match the same Artifact on JDBC-Drivers.html

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

Thank you very much for the change. The correct artifact name is in fact cas-server-support-jdbc. Drivers should be pulled in automatically, or should perhaps be declared separately.


fix the doc tests

I think the re-ordering of the files in this PR caused problems because some test cases have side effects which affect tests that are executed later.
I had opened up https://github.com/crate/crate/pull/6545 so I think this one is obsolete.


INT B-20608 add and

Agility ticket
First INT PR
Summary
Forgot the word 'and'
and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and and I'm sorry

Warnings

:warning:

Files located in legacy directories (src/shared or src/scenes) have
been edited. Are you sure you don’t want to also relocate them to the new file structure?
View the frontend file org ADR for more information

:warning:
This PR does not include changes to unit tests, even though it affects app code.

  Generated by :no_entry_sign: dangerJS against 332b8203fa653759c55ea9f05a7ae0691c5891cb


HDDS-10108. [hsync] Adopt RATIS-1994 to reduce hsync ops latency

What changes were proposed in this pull request?
Adopt the new Ratis API added in RATIS-1994 to (hopefully) reduce hsync latency.
Basically the idea is that ratis client send() call alone would suffice. And we could ditch watchForCommit in hsync (writeChunk + putBlock) path.
Requires Ratis 3.1.0.
Note:

In order for failedServers list to be properly appended when a datanode lags behind in Ratis server watch() (in which case server throws NotReplicatedException), as checked by TestFailureHandlingByClient.testDatanodeExclusionWithMajorityCommit, significant adjustments has been made around sendRequest() and sendCommand().
Datanodes raft.server.watch.timeout config has been lowered from 180s to 10s (Ratis default), as it has to be lower than raft.client.rpc.request.timeout (currently 60s in Ozone) for NotReplicatedException to be propagated

What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/HDDS-10108
How was this patch tested?

Existing tests must all pass. Manual latency test pending.

@smengcl , thanks for working on this!
TestBlockOutputStreamCorrectness can pass if we override watchForCommit(..) in CommitWatcher; see https://issues.apache.org/jira/secure/attachment/13066441/6014_idea.patch (Need to update TestCommitWatcher.testReleaseBuffersOnException)

@smengcl , thanks for working on this!
TestBlockOutputStreamCorrectness can pass if we override watchForCommit(..) in CommitWatcher; see issues.apache.org/jira/secure/attachment/13066441/6014_idea.patch (Need to update TestCommitWatcher.testReleaseBuffersOnException)

Thanks @szetszwo for the help. It works!

I noticed some refactoring (HDDS-10173) done in TestBlockOutputStreamCorrectness in master but not in the feature branch so I didn't change it at the moment to reduce merge conflict (test would still pass, the key is CommitWatcher).

3 test failures remaining at this point, not including flaky ones:

TestRandomKeyGenerator.testKeyLargerThan2GB -- somehow key write always fails with this large 2.01 GB key in this test. It can be reproduced locally. If I change the key size to 0.01 GB it passes. I suspect this has something to do with client write buffer management as well. But haven't quite figured out why.
TestFailureHandlingByClient.testDatanodeExclusionWithMajorityCommit -- it fails because the test is expecting the datanode exclusion list to be populated with the datanode the test just shutdown. But it is not doing so because I modified watchForCommit to NOT actually do the Ratis request (remember? the goal of this PR is to
TestOzoneClientRetriesOnExceptions.testMaxRetriesByOzoneClient -- AssertionFailedError: Expected java.io.IOException to be thrown, but nothing was thrown looks to be the same type of issue as TestCommitWatcher#testReleaseBuffersOnException that I fixed already in 5c68ead09ca3c6235c998c338e9a64db957479fc. Should be an easy one.

For 2: XceiverClientRatis#watchForCommit had this logic where it initially attempts ALL_COMMITTED, but when it failed to do a 3-way commit, it falls back to MAJORITY_COMMITTED, which is where it adds the failed datanode to the list.
XceiverClientRatis#sendCommandAsync might have to do exactly the same to keep the same behavior now that watchForCommit Ratis request is omitted. (Or is it worth keeping such behavior?)

@smengcl , Let's try the snapshot right at the commit of RATIS-1994.  Pushed 3.1.0-5e8ef17-SNAPSHOT.
commit 5e8ef17e7a17042c99875d398c9e9b9cee8a3ac4
Author: Tsz-Wo Nicholas Sze<EMAIL_ADDRESS>Date:   Thu Jan 11 20:38:27 2024 -0800

    RATIS-1994. AsyncApi send() to support optional replication level. (#1006)

Just tried -- TestRandomKeyGenerator.testKeyLargerThan2GB() can pass with 3.1.0-5e8ef17-SNAPSHOT.

Just tried -- TestRandomKeyGenerator.testKeyLargerThan2GB() can pass with 3.1.0-5e8ef17-SNAPSHOT.

Thanks so much @szetszwo ! The test passed after rolling back to the point RATIS-1994 is just merged.
Do we know what exactly caused the regression? Is it RATIS-2094?

For transparency this is what I plan to do further with this PR in order to resolve the testDatanodeExclusionWithMajorityCommit failure:

Pull in RATIS-2102, which should fix the bugs in RATIS-1994
Pull in RATIS-2089, which will allow NotReplicatedException to carry CommitInfoProto of all nodes in the Raft quorum returned from Raft server (leader) despite of that NotReplicatedException (in which case reply would be null and won't have the CommitInfoProtos we need to populate the failedServers dead node list)
Tweak sendRequestAsync() in order to "fake" a reply using the CommitInfoProto that is now being passed with RATIS-2089 even in the event of NotReplicatedException (which means server watch() timed out after trying to wait for all followers to commit to the desired log index).
Because addDatanodetoReply() has (unfortunately) been used for two different purposes, and I would need to differentiate the reason nodes are added to the list in order to achieve my goal here. (One for adding dead/timed out datanodes to the failedServers. Another for adding replier/leader datanode.) As a result, I would need to tweak addDatanodetoReply() and DatanodeDetails class (if needed) to tag nodes with the reason they are added to the list in order to achieve the purpose.
After 3 and 4 are done, tweak sendCommandAsync() to call addDatanodetoReply() (or a variant of that as I see fit) to add the dead node to the list.
Finally after 3,4,5 are done, tweak whoever calls get() on containerCommandResponse generated by sendCommandAsync() in order to keep the same behavior as BlockOutputStream#watchForCommit() does before.

@ivandika3

The idea looks good. However, we might need reduce the Ratis server watch timeout configuration to trigger NotReplicatedException.

Yes indeed, the current Raft server (datanode) watch.timeout is way too high to trigger NotReplicatedException. I've tested that as long as I set DN's raft.server.watch.timeout lower than client's raft.client.rpc.request.timeout, the integration test would trigger the NotReplicatedException. So I intend to adjust the timeouts in this PR as well.

Additionally, cluster.shutdownHddsDatanode(datanodes.get(0)) might shutdown the current datanode Ratis leader, which I think will not throw NotReplicatedException (e.g. NotLeaderException or GroupMismatchException (if the pipeline is closed due to ContainerStateMachine#notifyLeaderChanged after a new election)). In that case, will the datanode be excluded eventually? I think it might be retried in KeyOutputStream which will exclude it as well, but maybe we can ensure to shutdown the follower datanode instead of leader.

Good idea. Let me check.

Provided that all the tests passed. I would still need to address the performance issue in write()s as a result of switching all send()s to ALL_COMMITTED (high latency). I have added TODOs in the code.

The failure in TestHsync is inherent in the test code. The PR just made it more likely to fail.
The WriteChunk/PutBlock waits for ALL_COMMITTED. However, the fact that all peers have committed does not imply they are applied. In other words, the read after write is not linearizable.
I see there are two solutions
(1) enable Ratis linearizable read, and use XceiverClientRatis to read data (unsupported today)
(2) Add a workaround at Ozone client side to wait and retry.

enable Ratis linearizable read, and use XceiverClientRatis to read data

Just want to point out that from some benchmarks on OM linearizable read https://github.com/apache/ozone/pull/5288, there are some significant performance hits. This is because there are additional ReadIndex mechanism between follower and reader, among other things.

I brought test failures back down to the last one of them: TestOzoneClientRetriesOnExceptions.testMaxRetriesByOzoneClient.
testMaxRetriesByOzoneClient expects key.write() to throw IOException after maximum retries after all the containers of the key is closed. The expected IOException message looks like this (got this on HDDS-7593 branch where the test is passing):
java.io.IOException: java.io.IOException: java.io.IOException: java.io.IOException: java.io.IOException: Retry request failed. retries get failed due to exceeded maximum allowed retries number: 3

(Looks like the IOException was wrapped 5 times.)
While in this PR, the same test is failing because it is no longer throwing IOException with the same key.write(). I suspect watchForCommit() was responsible for composing the IOException from ContainerNotOpenExceptions after a number of retries. But now that watchForCommit() is (mostly) gone, this code path is no longer active and causes this change in behavior. (ContainerNotOpenException is still thrown though.)

...  it is no longer throwing IOException with the same key.write(). ...

Did the write fail?  We may consider updating the test.

...  it is no longer throwing IOException with the same key.write(). ...

Did the write fail? We may consider updating the test.

Yes the write failed. Only the write() before key blocks' containers' closure succeeded, verified using validateData(keyName, data1).

After digging for a few more hours I realized the problem might be more than just exception handling.
Because it looks like the first write() call (before container close) has led to an incorrect internal state on my PR branch:
https://github.com/smengcl/hadoop-ozone/blob/0679fbf84683b3a565468572b8ba28875e2febab/hadoop-ozone/integration-test/src/test/java/org/apache/hadoop/ozone/client/rpc/TestOzoneClientRetriesOnExceptions.java#L225
Thus, if I simply comment out the first write(), the second write() (AFTER container closure) will correctly throw IOException: Retry request failed that it is expecting.
I suspect the commitIndexMap update handling (updateCommitInfoMap) may be buggy in this case.

Ah. The test testMaxRetriesByOzoneClient passed locally after I bump Ratis to 3.1.0. So it might be another Ratis bug (that is fixed in 3.1.0 release).

This PR won't make it into the HDDS-7593 feature branch before the branch gets merged next week.
Please rebase onto master branch after the branch merge. Thanks!

/pending conflicts


Datetime year field has range between (current year - 5) and (current year + 5)?

How can I customize this behaviour?
In the file
vendor/symfony/symfony/src/Symfony/Component/Form/Extension/Core/Type/DateType.php
I can change the 'years' value at setDefaults, but I guess that's not the prettiest way to achieve it. :)

Hi, This repo is not maintained, I invite you to check the official repo https://github.com/javiereguiluz/EasyAdminBundle


Pass ramlev tests before generating mock

raml-mocker is awesome for automated REST API testing. I tried to integrated it into a CI process before ramlev, which is a example validator of RAML. ramlev will ensure the RAML is able to mock with raml-mocker if all tests passed.

If you want to include your plugin as a part of the process please provide a real example of how to use it with this plugin otherwise I can't add your solution because I didn't evaluate it.
Thanks.

No enough information attached.


Consistently add generated preamble

This adds the generated preamble "Generated by wit-bindgen {version}. DO NOT EDIT!" to the generated Go files, and refactors all code generators to use the same text.

@alexcrichton I'm not sure what you mean. The version is already being passed from the leaf crate so they should be able to keep independent versions.
https://github.com/bytecodealliance/wit-bindgen/blob/217baaeb72e7bb7be6dc9fd491c6f1e0f208af74/crates/core/src/lib.rs#L346

Wow today is just not my day...
Ignore me! I think there's errors in CI though?

@alexcrichton fixed!


Support transformers 4.42

OpenVINO tests pass for me locally with 4.42. Would be great if we can support this version.

For OpenVINO tests for the regular test there is only a non-related error:
Repository Not Found for url: https://huggingface.co/api/models/optimum-internal-testing/tiny-random-phi-private/tree/main?recursive=True&expand=False.
With the slow tests there is this error:
FAILED tests/openvino/test_modeling.py::OVModelForCausalLMIntegrationTest::test_beam_search_13_llama - AssertionError: False is not true : generation config : GenerationConfig {
  "do_sample": true,
  "max_new_tokens": 10,
  "min_new_tokens": 10,
  "num_beams": 4,
  "top_k": 1
}
, transformers output tensor([[    1, 20628,   338,   263,  7575,  2462,   322,   306,   626,  5520,
         20211, 18061, 13144, 29944, 20372, 29249, 18428, 29572, 31252,  1404],
        [    2,     2,     2,     2,     2,     2,     1,   910,   338,   592,
         27264, 14848,  2618, 20610, 24351, 28333, 17245, 12944, 19234, 21336]]), ov_model_stateful output tensor([[    1, 20628,   338,   263,  7575,  2462,   322,   306,   626,  5520,
         20211, 18061,  1404,  2376, 12454,  1404,  2376, 12454,  1404,  5661],
        [    2,     2,     2,     2,     2,     2,     1,   910,   338,   592,
         27264, 14848,  2618, 20610, 24351, 28333, 17245, 12944, 19234, 21336]])
== 1 failed, 190 passed, 421 deselected, 3066 warnings in 2018.31s (0:33:38) ===```

I think we should update the version in the CI as well
https://github.com/huggingface/optimum-intel/blob/60532db6527219663e41604db13abf85f1d7b817/.github/workflows/test_openvino.yml#L24

this is probably will require some changes related to generative models with disableing wrapping cache to cache class and dtype

I think we should update the version in the CI as well

Thanks! I was under the impression the latest version would always be installed. I update the workflow file.

this is probably will require some changes related to generative models with disableing wrapping cache to cache class and getting dtype

:-( I'll make this PR a draft. The regular tests worked out of the box for me so I hoped this would be an easy update.

@helena-intel how did you tested that? There is also forcing transformers version on optimum side that may affect optimum-intel package selection https://github.com/huggingface/optimum/blob/d0a84a94183222a3931adcfca7f234a7086821db/setup.py#L18
do you install transformers version after optimum-intel install?

Closing PR as per Ekaterina's comment this needs more work to be supported.


Prefer pyvalue into ref

Various refactors to avoid direct use of PyObject and put things through the into_ref interface.

Codecov Report

Merging #682 into master will decrease coverage by 0.05%.
The diff coverage is 41.07%.

@@            Coverage Diff             @@
##           master     #682      +/-   ##
==========================================
- Coverage   40.79%   40.74%   -0.06%
==========================================
  Files          79       79
  Lines       17534    17555      +21
  Branches     4498     4522      +24
==========================================
- Hits         7153     7152       -1
- Misses       8534     8565      +31
+ Partials     1847     1838       -9

Impacted Files
Coverage Δ

vm/src/pyobject.rs
58.92% <ø> (+1.34%)
:arrow_up:

vm/src/obj/objstr.rs
35.58% <100%> (ø)
:arrow_up:

vm/src/obj/objweakref.rs
86.95% <100%> (ø)
:arrow_up:

vm/src/obj/objcomplex.rs
49.01% <11.11%> (+2.61%)
:arrow_up:

vm/src/obj/objbytearray.rs
52% <12.5%> (+1.43%)
:arrow_up:

vm/src/obj/objbytes.rs
40.99% <45.45%> (+4.06%)
:arrow_up:

vm/src/obj/objproperty.rs
63.04% <47.61%> (-3.39%)
:arrow_down:

vm/src/frame.rs
46.6% <80%> (-0.45%)
:arrow_down:

... and 7 more

Continue to review full report at Codecov.

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


Anonymous v2/user/:id requests should return public profile.

What's this PR do?
We want to lock down "privileged" access to resources by using scopes (so that, for example, if an app doesn't need full user profiles we just don't give it access to them). This is helpful because internal apps that use the Client Credentials grants are always given admin privileges, and so a bug or leaked key could get up to a lot of mischief!
HOWEVER, we also have scenarios where we want anonymous access to those same resources – for example, to grab first names for a set of Northstar IDs in a photo gallery. In these cases, the request won't have a scope because it doesn't have an access token at all!
This pull request updates Northstar's RequireScope middleware to ignore scopes on anonymous requests, just like we did in Gateway.
How should this be reviewed?
I added a failing test in f4b9bdb, and the fix in 4e7e409.
Relevant Tickets
I ran into this issue while working on GraphQL galleries for #155944555.
Checklist

[ ] Documentation added for changed endpoints.
[x] Tests added for new features/bug fixes.
[ ] Post a message in #api if this includes something that causes a rebuild!

@DFurnes this would only be a problem if I was anonymously hitting that Northstar endpoint directly? Wondering if when requesting stuff from Rogue with include=user you would have expected me to see this issue.

Rogue is a bit weird since it has the Registrar make Northstar requests using its own client credentials (so they all go out as "admin" requests), and then it caches them locally. That makes for better performance but we lose some of the benefits of encoding the viewer's identity in the request.
I ran into this particular issue when my local Phoenix Next made a GraphQL request to https://graphql-qa.dosomething.org, which forwards along the token (if any) to ask Rogue for signups/posts, and Northstar for users.


Update paginator.ts

Accessibility issue for page navigator
###Defect Fixes
When submitting a PR, please also create an issue documenting the error.
###Feature Requests
Due to company policy, we are unable to accept feature request PRs with significant changes as such cases has to be implemented by our team following our own processes.

Documented the issue and link
https://docs.google.com/document/d/1cuLvTFgnbi3yB7RepXY7Wnafr1avy2bp/edit?usp=sharing&ouid=105404828190647614854&rtpof=true&sd=true


Update docker-compose.yml

/var/log/apache currently creates a volume with a random name, this commit changes that to a human-readable name like the others
By submitting this pull request, I confirm the following:
Please fill in any appropriate check-boxes, e.g: [X]

[X]   I have read and understood the contributors guide, as well as this entire template.
[X]   I have made only one major change in my proposed changes.
[X]   I have commented my proposed changes within the code.
[X]   I have tested my proposed changes, and have included unit tests where possible.
[X]   I am willing to help maintain this change if there are issues with it later.
[X]   I give this submission freely and claim no ownership.

What does this PR aim to accomplish?:
a small update to docker-compose.yml
How does this PR accomplish the above?:
added a name to the apache2 log volume specified in the dockerfile, so that it doesn't get created with a randomized name
also added a comment explaining how to change from volumes to bind mounts
What documentation changes (if any) are needed to support this PR?:
i dont think any are needed

You must follow the template instructions. Failure to do so will result in your pull request being closed.
Please respect that Tronitor is developed by volunteers, IE: me, who can only reply in their spare time.

Thanks for this!


Prevent toggle selection of checkpoint experiment running in the workspace

2/3 main <- #2877 <- this <- https://github.com/iterative/vscode-dvc/pull/2882
This PR prevents the selection of checkpoint experiments running in the workspace via toggling.
Demo
https://user-images.githubusercontent.com/37993418/206063679-1534a478-457b-49ee-9348-9f6d1660c12c.mov
The only other path I can think of that would need patching is Select up to 7 Experiments to Display in Plots via a quick pick. At this point, I don't think that it is worth the effort and the behaviour could be confusing.

Q: to clarify - does it prevent manual toggle as well? Or the one that happens automatically?
(For manual - why would be the reason to prevent this?)

Q: to clarify - does it prevent manual toggle as well? Or the one that happens automatically?
(For manual - why would be the reason to prevent this?)

It is the manual toggle that I am suppressing. I want to do this because I want to remove the code needed to patch this race condition:
https://user-images.githubusercontent.com/37993418/206080775-9cccad2b-cf97-4e33-94fd-e29be601281a.mov
The workspace (triggered by watchers) will always update quicker than the path of experiment table updates => get new revisions => request revisions


[Source Request]

PLEASE READ THIS
I acknowledge that:

I have checked that the extension does not already exist:

In the list of existing extensions in the application
In the multi-source spreadsheet: https://tachiyomi.org/extensions
By searching the GitHub repository for the extension and verify it does not appear in the code base

I have searched the existing GitHub issues and this extension does NOT have an open request
I will fill out the title and the information in this template

Note that the issue will be automatically closed if you do not fill out the title or requested information.

Source website

Name: HuraWatch
Link: https://hurawatch.com
Language(s): English

Other details
This is a website where you can stream all movies, web-series and tv-series few cartoons and animes for free

Plsss addd


test-branch/execute-job/quoted-authorization/86a45f4b-fe4a-4f8e-ba5b-d5d6f1801ca2

PR for testing 66eacdf62e73dcc123f88742aa9437c4e4047e90

/canonical/self-hosted-runners/run-workflows 66eacdf62e73dcc123f88742aa9437c4e4047e90


Training speed and training effect

I feel that the training speed is very slow, which is not as good as NERF, and the effect is not very good? What is the situation?

Hi, the training speed aspect has been explained here: https://github.com/yashbhalgat/HashNeRF-pytorch/issues/4#issuecomment-1144708129
Can you explain what you mean by "effect is not very good"?

This pure pytorch（python） implementation has the same training speed as nerf (pytorch), but pure pytorch（python） converges quickly. Am I right?

Yes.


design

This fix replaces the dropdown menu with yes/no buttons

I think we fixed this in the latest version. Thanks for the request though!


fixed error for setting first state (issue #7)

I included the changes suggested here: https://github.com/msgpack/msgpack-cli/issues/234

Thanks for the pull request @niklaswolf! I'll review it as soon as I get home :)

Awesome, it works! Thank you so much @niklaswolf! 🎉 🎉 🎉

no problem, you did the most work here! I just executed :D


Not so local RPC client

Problem
#2909.
Solution
Instead of RPC server rework we just provide a (wrapped) WSClient that does calls in the same process. RPC server rework is something that can be done, but:

RPC client and RPC server interfaces do not exactly match in the way they handle inputs and outputs
we'll have to manage concurrency in this client (and manage it again in the RPC server for subscriptions!)

This structure is better in that:

for Internal user it's absolutely the same interface as WSClient has, they can be interchanged easily and we can have this link configurable (go via RPC or use internal)
it has much simpler implementation
subscriptions are much easier with WSClient interface (and more robust, RPC server has some buffers and already manages queue overflows)

But:

it adds a little JSON in/out overhead
it leaves us with a lot of code still in the RPC server (but hey, it works)

Not yet complete.

@cthulhu-rider, check it out. Especially TestLocalClient in the rpcsrv, it shows that the RPC server could be started with zero ports exposed and local Internal client can happily use it. It at the same time is 100% interchangeable with WSClient. So the idea is that you keep RPC server config internally (except maybe for MaxGasInvoke, but you enable sessions, do any other things needed), it's not exposed, yet at the same time its API works as usual.


Dask Dataframe read_parquet: OSError: Couldn't deserialize thrift: TProtocolException: Invalid data

I'm generating a Dask dataframe to be used downstream in a clustering algorithm supplied by dask-ml. In a previous step in my pipeline I read a dataframe from disk using the dask.dataframe.read_parquet, apply a transformation to add columns using map_partitions, and then write the resulting dataframe back to disk using dask.dataframe.to_parquet. The issue occurs when the resulting dataframe gets read again and compute() is called.
What happened:
File "/home/ec2-user/pycharm_remote/pipeline/perform_clustering.py", line 32, in run
  print(ddf.shape[0].compute())
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/base.py", line 167, in compute
  (result,) = compute(self, traverse=False, **kwargs)
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/base.py", line 452, in compute
  results = schedule(dsk, keys, **kwargs)
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/threaded.py", line 84, in get
  **kwargs
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/local.py", line 486, in get_async
  raise_exception(exc, tb)
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/local.py", line 316, in reraise
  raise exc
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/local.py", line 222, in execute_task
  result = _execute_task(task, data)
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/core.py", line 121, in _execute_task
  return func(*(_execute_task(a, cache) for a in args))
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/dataframe/io/parquet/core.py", line 276, in read_parquet_part
  dfs = [func(fs, rg, columns.copy(), index, **kwargs) for rg in part]
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/dataframe/io/parquet/core.py", line 276, in <listcomp>
  dfs = [func(fs, rg, columns.copy(), index, **kwargs) for rg in part]
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/dataframe/io/parquet/arrow.py", line 758, in read_partition
  piece, columns, partitions, **kwargs
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/dask/dataframe/io/parquet/arrow.py", line 817, in _parquet_piece_as_arrow
  **kwargs.get("read", {}),
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/pyarrow/parquet.py", line 719, in read
table = reader.read_row_group(self.row_group, **options)
File "/home/ec2-user/project/virtualenv/lib64/python3.7/site-packages/pyarrow/parquet.py", line 272, in read_row_group
use_threads=use_threads)
File "pyarrow/_parquet.pyx", line 1080, in pyarrow._parquet.ParquetReader.read_row_group
File "pyarrow/_parquet.pyx", line 1099, in pyarrow._parquet.ParquetReader.read_row_groups
File "pyarrow/error.pxi", line 99, in pyarrow.lib.check_status
  OSError: Couldn't deserialize thrift: TProtocolException: Invalid data
  Deserializing page header failed.

What you expected to happen:
I expect that a dataframe written to disk by Dask's to_parquet() method should be read in using read_parquet() without error.
Minimal Complete Verifiable Example:
# First step: make the Dask dataframe
ddf = ddf.map_partitions(partition_func)  # in this case, perform a df.apply, then pandas.concat with the original partition
ddf_output_path = pathlib.Path("./data/")  # Some directory
ddf_output_path.mkdir(parents=True, exist_ok=True)
dask.dataframe.to_parquet(ddf, ddf_output_path)  # Succeeds

# Second step: attempt to read and compute on the Dask dataframe
ddf = dask.dataframe.read_parquet(ddf_output_path)
print(ddf.columns)  # Produces the correct output
print(ddf.shape[0].compute())  # <-- fails here, for a simplified example

Anything else we need to know?:
The dask dataframe consists of 404 columns and is read from approximately 14,000 parquet files. Four of the columns contain items of type object (three hold strings, one holds a nested list of strings), while the remaining 400 contain type float64. I tried renaming the columns to see if it would work correctly but it made no change to the traceback.
I apologize that I also made a post on Stack Overflow: since I haven't received any answers I'm in the dark as to whether this is something I'm doing wrong or an error in the library/dependencies themselves. The full code is available in this repository between pipeline/embed_article_text.py and pipeline/perform_clustering.py
Environment:

Dask version: 2.30.0
PyArrow version: 2.0.0
Python version: 3.7.9
Operating System: Amazon Linux 2
Install method: pip

Thanks for raising @mikewheel - I'll be happy to dig into this if you can help by making the "Minimal Complete Verifiable Example" pasted in this issue a "complete" example (i.e. add synthetic data generation to the code snippet).  I don't think I, or others watching dask.dataframe, will have time to experiment with data generation or translate your full/linked code to a simple reproducer...  If you cannot come up with a simple reproducer, that will be valuable information as well.

Closing due to lack of reproducible example. @mikewheel feel free to re-open if you're able to provide a code snippet we can use to reproduce the deserialization error.


Functional: @raw_itir_stencil decorator

Some features, e.g. reductions, are still in the working or missing in the frontend. This PR adds an additional decorator @raw_itir_stencil that may be used inside programs or field operators to inject raw iterator IR nodes. The signature of the function needs to follow the rules of how FieldOperators are typed for the time beeing.
Example:
@raw_itir_stencil
def add_self(arg: Field[[IDim], "float64"]) -> Field[[IDim], "float64"]:
    return itir.FunCall(fun=itir.SymRef(id="plus"), args=[
        itir.FunCall(fun=itir.SymRef(id="deref"), args=[arg]),
        itir.FunCall(fun=itir.SymRef(id="deref"), args=[arg])])

@program
def raw_copy_program(in_field: Field[[IDim], "float64"], out_field: Field[[IDim], "float64"]):
    add_self(in_field, out=out_field)

outdated, we could instead support the pretty-printed format if we want still want this feature


Bug(scope):Message format compile throwing unsafe eval errors

Is there an existing issue for this?

[X] I have searched the existing issues

Which Transloco package(s) are the source of the bug?
MessageFormat
Is this a regression?
Yes
Current behavior
We are trying to remove 'unsafe-eval' from CSP, getting below error.
EvalError: Refused to evaluate a string as JavaScript because 'unsafe-eval' is not an allowed source of script in the following Content Security Policy directive: "script-src 'self'

Expected behavior
There should not be error after removing unsafe-eval from CSP as we handled through nonce
Please provide a link to a minimal reproduction of the bug, if you won't provide a link the issue won't be handled.
https://github.com/jsverse/transloco/issues/364
Transloco Config
No response
Please provide the environment you discovered this bug in
Transloco:
Angular:
Node:
Package Manager:
OS:

Browser
No response
Additional context
No response
I would like to make a pull request for this bug
Yes 🚀

@bh2989 Please provide the environment information.


Refactoring PublishedContentExtensions for readability and performance.

The methods in this class were getting too difficult to follow and any changes difficult to detect. Resharper was having a hard time also.
I've split the GetPropertyValue method into two parts: a getter and a setter. I've also cached the MethodInfo instances for Cast and FirstOrDefault as static fields since they will never change.That should give us a performance booster.
@leekelleher @mattbrailsford Can you both cast your eyes over this when you can as I want to make sure I haven't introduced any bugs?

Cool, thanks @JimBobSquarePants!
I wont get chance until later on to test this out, (damn we need IPublishedContent unit-tests! :wink:).
In the meantime, @mattbrailsford if you're happy with it - I'm happy for it to be merged in (to develop).

No problemo.. :sunglasses:
Yeah, we need those tests. I've never done any unit testing against IPublishedContent though so I don't know where to start.


Interop client regression

At some point during the API refactoring the interop client lost the ability to process Commits (CommitRequest/CommitResponse).

Closing because the client is now back.


help: Nuxt UI components

📚 What are you trying to do?
I would like to use Nuxt UI components, but always get error 500.
🔍 What have you tried?
No response
ℹ Additional context
No response

Hi there! 👋
Run the command:
npx nuxi@latest module add ui
This command will automatically install and configure the module in your nuxt.config.ts file.
Once that's done, you can start using Nuxt UI components like this:
<template>   <UButton>Button Text</UButton> </template>
After making these changes, restart your development server using:
npm run dev

Are you able to provide a reproduction?


DingTalk messenger

Project description
DingTalk is a messenger similar to WeChat used in many Asian countries. Some Chinese companies provide support service for their products with the help of it.
Metadata

homepage URL: www.dingtalk.com
source URL: https://github.com/nashaofu/dingtalk
license: MIT
platforms: linux, darwin

This is what I've came up with:
default.nix:
{ lib
, electron_16
, fetchFromGitHub
, fetchYarnDeps
, makeWrapper
, mkYarnPackage
, runCommandLocal
}:
let
  pname = "dingtalk";
  version = "2.1.13";
  src = fetchFromGitHub {
    owner = "nashaofu";
    repo = "dingtalk";
    rev = "v${version}";
    sha256 = "0q61cl07vv8syx8y85p9mqdr8jd588b4q6p7fhk7h6vp5yjkji8x";
  };
  yarnLock = runCommandLocal "fix-yarn.lock" { } ''
    sed 's/\.tgz\?[^#]\+/\.tgz/g' ${src + /yarn.lock} > $out
  '';
  electron_exec = "${electron_16}/bin/electron";
in
mkYarnPackage {
  inherit pname version src yarnLock;

  nativeBuildInputs = [ makeWrapper ];

  # packageJSON = package-json;
  packageJSON = runCommandLocal "fix-package-json" {} ''
    grep -v -E '"electron-?[^ ]*": ' ${src}/package.json > $out
  '';

  # yarnFlags = [ "--offline" "--frozen-lockfile" "--production=true" ];

  postInstall = ''
    makeWrapper ${electron_exec} $out/bin/dingtalk `
    `--set NODE_ENV production `
    `--run "cd $out/libexec/${pname}/deps/${pname}" `
    `--add-flags "$out/libexec/${pname}/deps/${pname}"
  '';

  dontStrip = true; # no ELF binaries to strip
  doDist = false;

  offlineCache = fetchYarnDeps {
    inherit yarnLock;
    sha256 = "0ljfxzswpzx1gr74gja6vrqqjzknm17m7z5mrw099jis9x686qwq";
  };

  meta = {
    description = "DingTalk desktop messaging application";
    homepage = "https://www.dingtalk.com/";
    license = lib.licenses.mit;
    inherit (electron_16.meta) platforms;
  };
}

pkgs.nix based on https://github.com/NixOS/nixpkgs/issues/144200#issuecomment-1016994169:
let
  pin = builtins.fetchTarball {
    name = "nixpkgs";
    url = "https://github.com/NixOS/nixpkgs/archive/d5dae6569ea9952f1ae4e727946d93a71c507821.tar.gz";
    sha256 = "1w4wch077d2wgrdaya8y1pa34rzvh26xns6zgzr4kmlfd5g2rhwd";
  };
  overlay = (_final: prev: {
    prefetch-yarn-deps = prev.prefetch-yarn-deps.overrideAttrs (_def: {
      postBuild = ''
        chmod +w libexec/index.js
        cp ${pkgs.path + /pkgs/build-support/node/fetch-yarn-deps/index.js} `
        `libexec/index.js
        patch -p5 libexec/index.js ${./fetch.patch}
        patchShebangs libexec/index.js
      '';
    });
  });
  pkgs = import pin { overlays = [ overlay ]; };
in
pkgs

$ nix-build -E '(import ./pkgs.nix).callPackage ./. {}'

But I get:
$ ./result/bin/dingtalk
Error launching app
Unable to find Electron app at /nix/store/mw4fkifnk84ksx050kswbf1wyhmj7il6-dingtalk-2.1.13/libexec/dingtalk/deps/dingtalk

Cannot find module '/nix/store/mw4fkifnk84ksx050kswbf1wyhmj7il6-dingtalk-2.1.13/libexec/dingtalk/deps/dingtalk/dist/main.js'. Please verify that the package.json has a valid "main" entry

DingTalk desktop application uses Electron and its package.json has a set of commands for packaging it with webpack and electron-builder:
"main": "dist/main.js",
  "scripts": {
    "start": "electron .",
    "lint": "eslint --ext .js,.vue src",
    "dev": "npm-run-all --parallel dev:main dev:preload dev:renderer",
    "postinstall": "electron-builder install-app-deps",
    "dev:main": "webpack --config build/main/webpack.dev.conf.js",
    "dev:preload": "webpack --config build/preload/webpack.dev.conf.js",
    "dev:renderer": "webpack serve --config build/renderer/webpack.dev.conf.js",
    "build": "npm-run-all --parallel build:main build:preload build:renderer",
    "build:main": "webpack --config build/main/webpack.prod.conf.js",
    "build:preload": "webpack --config build/preload/webpack.prod.conf.js",
    "build:renderer": "webpack --config build/renderer/webpack.prod.conf.js",
    "pack": "electron-builder --dir",
    "release": "electron-builder"
  }

The problem is that "dist/main.js" does not exist, perhaps, until webpack & electron-builder steps are performed. I tried a custom main.js with no success neither (it just draws a blank window).
I couldn't figure out how to package this for nixpkgs. I used various resources as a reference to try to write a proper nixpkgs package:

element-desktop package
reddit How do i package an electron app
Arch Linux dingtalk package
https://github.com/NixOS/nixpkgs/issues/46382

Temporarily, I use AppImage solution:
{ lib, fetchurl, appimageTools }:
let
  pname = "dingtalk";
  version = "2.1.13";
  name = "${pname}-${version}";
  src = fetchurl {
    url = "https://github.com/nashaofu/dingtalk/releases/download/v${version}/${name}-latest-x86_64.AppImage";
    sha256 = "0z1nli1f3miri3i44b725avxlp6c5pyyxlqqf80mjpkg8y8zv70c";
  };
in appimageTools.wrapType2 {
  inherit name src;
  meta = {
    description = "DingTalk desktop messaging application";
    homepage = "https://www.dingtalk.com/";
    license = lib.licenses.mit;
    platforms = [ "x86_64-linux" ];
  };
}

Temporarily, I use AppImage solution:
{ lib, fetchurl, appimageTools }:
let
  pname = "dingtalk";
  version = "2.1.13";
  name = "${pname}-${version}";
  src = fetchurl {
    url = "https://github.com/nashaofu/dingtalk/releases/download/v${version}/${name}-latest-x86_64.AppImage";
    sha256 = "0z1nli1f3miri3i44b725avxlp6c5pyyxlqqf80mjpkg8y8zv70c";
  };
in appimageTools.wrapType2 {
  inherit name src;
  meta = {
    description = "DingTalk desktop messaging application";
    homepage = "https://www.dingtalk.com/";
    license = lib.licenses.mit;
    platforms = [ "x86_64-linux" ];
  };
}

DingTalk AppImage can‘t be used anymore， because the web version of dingding has been shut down permanently。

As DingTalk has been offline web version and the source project was developed based on web version,the source project github.com/nashaofu/dingtalk has been unavailable. we could try to build it with offical .deb file

the offical website of dingtalk is follow
https://page.dingtalk.com/wow/dingtalk/act/en-home?spm=a213l2.14171110.8665136909.1.26ce2726It5mHb&wh_biz=tm


Link back to http://mitmproxy.org from docs.mitmproxy.org

This is a tad confusing at the moment, especially if the user landed on the docs page from Google.

Works locally, but not on readthedocs.org...

Fixed per 8d8ae74.


[Docs] Fix typos in differentiable programming manifesto.

Differentiable operators -> Differential operators
Fix incorrect gradient(at:in:) result type.

@swift-ci Please smoke test and merge

@swift-ci Please smoke test and merge


Re-enable widget UI test with mock bootstrap

Summary of Changes
Previously, we had disabled the widget UI test. Now, instead of loading the real widget via the real bootstrap, we use a mock bootstrap.
The mock bootstrap works by replacing the afterpay-widget-container with a message. It does this in response to the iOS WidgetView calling its methods. We can test that message.

Ugh looks like I stuffed something


Add plugins: hexo-yam and hexo-nofollow

This pull adds new plugins to the catalog, hexo-yam and hexo-nofollow.
hexo-yam: Minify and compress html, js and css. Support gzip and brotli compressions.
hexo-nofollow: Adds nofollow attribute to all external links in posts. A more updated version of hexo-autonofollow.

travis build error is due to https://github.com/mozilla/nunjucks/issues/1160 https://github.com/mozilla/nunjucks/pull/1161


KIE-Sandbox DMN execution is broken after applying accelerator if the executed model imports another model

Hello,
the execution of a DMN model that imports another DMN model in the same project in KIE-Sandbox is broken after applying the Quarkus accelerator (tested with other custom accelerators as well, the issue is reproduced).
Before applying the accelerator everything works fine.
It's reproducer in v0.32.0 and daily-dev as well.
Steps to reproduce:

Clone this repo with the KIE-Sandbox UI
Run the RepetirExamenLicenciaDecision model. The form is generated and execution works fine.
Apply the Quarkus Accelerator
Run the RepetirExamenLicenciaDecision model again. The form is not generated anymore, showing an error panel in the UI.

I've attached the logs I see in the extended-services container.
dmn-runner-error.log

@thiagoelg @tiagobento
I tested it against the current version in main.
It reproduces partially, in detail: after applying the accelerator, the DMN runner form shows an error for ~1 - 2 seconds, but thereafter the DMN runner works again.
https://github.com/apache/incubator-kie-issues/assets/16005046/8041abd2-cb40-4add-914d-0a5138ab9a41
It the behavior is confirmed, I would classify it as an improvement and not a bug


[WIP] Add mongodb-replicaset package

This package can be used to run a MongoDB ReplicaSet on DC/OS. It's based on dcos-commons, and contains a custom framework implementation.
There are currently some open issues with dcos-commons

https://github.com/mesosphere/dcos-commons/issues/400
https://github.com/mesosphere/dcos-commons/issues/392

so please don't merge yet...

@tobilg is this ready for review?

@ryadav88 There is a change to the CLI integration which I still have to implement. I guess tomorrow it should be fine.

CLI integration is working now... You can start your review @ryadav88


Feedback on Tutorial: SAPUI5 - Setup the DataSource in the local application

HI
Please check the following screenshot.
The link for Create a new project doesn't work.

BR
Benny

Good catch.  The URL was missing, I added it.  Fixed!


Support Blending Modes

Patch introduces blending options such as Normal, Screen, Multiply, Overlay,
Darken, Lighten, ColorDodge, ColorBurn, HardLight, SoftLight, Difference,
Exclusion, Hue, Saturation, Color, Luminosity

Hi @mmaciola - this work looks great!
What is the status of this patch?  Are all blending modes working?
Do you know why it has not been accepted into thorvg?

Hi @projectitis the patch wasn't merged as there were some more critical issues that was being fixed that time.
Do you have a need for blending modes in your project? If yes, we could back to it this patch when some free time available.
There were programmed Normal, Screen, Multiply, Overlay, Darken, Lighten, ColorDodge, ColorBurn, HardLight, SoftLight, Difference and Exclusion blending modes.

@mmaciola That would be amazing :) I am working on the rive_tizen renderer. It requires blend mode support. I can see some incorrect example rive files because some shapes need Overlay or Hard Light, for example.


Add initial migration for organization table

Summary

Fixes
Depends on
Test plan

Screenshots

Checklist

[ ] My code follows the code style of this project and passes make format.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] My change has adequate unit test coverage.

Reviewing pull request by @homanp

In .env.example file:

Added VECTORSTORE variable and set it to astra.
Moved PINECONE_ENVIRONMENT, PINECONE_API_KEY, and PINECONE_INDEX variables below KEYSPACE_NAME.
Removed the value for E2B_API_KEY.

Added a new file organization.sql in libs/ui/supabase/migrations directory, which creates a table named organizations with the following columns:

id (SERIAL PRIMARY KEY)
name (VARCHAR(255))
api_key (VARCHAR(255))
stripe_customer_id (VARCHAR(255))
is_onboarded (BOOLEAN DEFAULT false)
created_at (timestamptz default now())

No major issues found. Good job, @homanp! 👍🏼


heteronym problem

Hi
I have an example heteronym 'wind'
a) The 'wind' is blowing

b) Lets all 'wind' down.

For both these cases, the g2p 'wind' is pronounced the same

Is there any problem with the POS tagging, how can we get the correct pronunciation [W IY1 N D] and [W AY1 N D]

Do we need to train the g2p again?


Equality: Array/Hash/Option

Improve equality check for those function. One thing i like about F# is that it can create data with List,Records,Maps and so on, those data can be nested as much as wanted and all of those data can be equality checked by default. It's just an awesome feature.
I also want that data can be automatically checked by default with any recursion depth and it at least works as long those data
are built with just Array, Hashes and Option values.
In the future we maybe can add some equality checks for known objects that are comparable. Sq could supports some typical objects used in Perl by default but also a way to add/register new objects for comparison would be fine.

Implemented in Sq::Equality.
Automatically loaded and adds an equal function to Array, Hash, Seq, Option, Result.
Also an equal function is now automatically imported by Sq to be used.


static user provider doesn't work for gRPC in v0.4.0

What type of bug is this?
Unexpected error
What subsystems are affected?
Other
What happened?
Start the standalone with static user provider:
cargo run -- standalone start --user-provider=static_user_provider:cmd:greptime_user=greptime_pwd

But the user_provider in gRPC handler is always None, looks like the bug is back again.
https://github.com/GreptimeTeam/greptimedb/blob/0a9972aa9a24c8a68d9d4fa93f5273924fe6c854/src/servers/src/grpc/greptime_handler.rs#L70
And our test doesn't cover this case at all.
What operating system did you use?
Ubuntu 22
Relevant log output and stack trace
No response
How can we reproduce the bug?
As described above.

In integration test we build server instance and set user provider directly, skipping the parsing command part.

@shuiyisong Can we close this PR now?

@evenyag Yes. We'll track adding tests in #2579


Clarified language

Clarified initial warning about the ability to write false exif values and the description for the load function.

Coverage remained the same at 95.031% when pulling 44154c7449833b0de5cf05bff5dd1ff9cabc8108 on SavenR:patch-1 into 42eeed469d47cd5679b74129dd616834f05072eb on hMatoba:master.

Thanks!


本地启动编译问题

When I started by local compilation, I executed the './pre_build.sh 'script and entered' make 'to compile, but the compilation failed due to network problems, how should I solve it, looking forward to your reply，thanks!

Add the dep like the follows to workspace
http_archive(
name = "go_sdk",
strip_prefix = top dir name of the package,
urls = [
"file://  path where your package locate",
],
sha256 = "",
)

@Veluriyam 你的问题解决了吗


button on template generated toast to view func code

@wendybujalski I'll just make a commit to this PR, then someone else can review it and we'll merge it


Update spring-boot's version to 2.4.4.

Update spring-boot's version to 2.4.4.

/azp run java - spring - tests

/azp run java - cosmos - tests

/azp run java - spring tests

azp run java - cosmos - tests

java - cosmos - ci failure reason: https://github.com/reactor/reactor-core/issues/2663

Closing this PR because new PR created : https://github.com/Azure/azure-sdk-for-java/pull/20721. In new PR I'll upgrade to spring-boot 2.4.5.


[ROCKETMQ-224] add rocketmq client log4j2 logging support

When using RocketMQ client,we can only using logback or log4j for logging. If we using log4j2,there is no client log.

Coverage decreased (-0.1%) to 38.464% when pulling 4b4666a5b3279d66bbc1406ec9537b3383c0cdcc on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage decreased (-0.1%) to 38.464% when pulling 4b4666a5b3279d66bbc1406ec9537b3383c0cdcc on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.7%) to 39.271% when pulling 4b4666a5b3279d66bbc1406ec9537b3383c0cdcc on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.7%) to 39.271% when pulling 4b4666a5b3279d66bbc1406ec9537b3383c0cdcc on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.7%) to 39.271% when pulling 4b4666a5b3279d66bbc1406ec9537b3383c0cdcc on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.6%) to 39.189% when pulling 6ab4ad4553b70bfc39f7cacaf178ba9f01fd69f4 on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.6%) to 39.189% when pulling 6ab4ad4553b70bfc39f7cacaf178ba9f01fd69f4 on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.6%) to 39.189% when pulling 6ab4ad4553b70bfc39f7cacaf178ba9f01fd69f4 on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.6%) to 39.21% when pulling 04e5a1e030c82e4c9175ed544a8d059eecbd6a72 on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.6%) to 39.21% when pulling 04e5a1e030c82e4c9175ed544a8d059eecbd6a72 on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.6%) to 39.21% when pulling 04e5a1e030c82e4c9175ed544a8d059eecbd6a72 on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Now, LGTM. this pr also fix the rocketmq's logger appender bug when using any concrete implementation, no matter log4j, log4j2 or logback.

Coverage increased (+0.2%) to 38.771% when pulling 0ea6994712784d700aa365c2e121306b898b3355 on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.2%) to 38.771% when pulling 0ea6994712784d700aa365c2e121306b898b3355 on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.

Coverage increased (+0.2%) to 38.771% when pulling 0ea6994712784d700aa365c2e121306b898b3355 on lindzh:fix_client_logger into 0c5e53db6f4d0ed9f25747379a8b679e2da5392d on apache:master.


npx create-next-app not working

I'm trying to follow the instruction below to create an app from scratch, and the result is an empty directory.
I'm running OSX, node 19.0.1, npx 8.19.2
npx create-next-app your-blog --example "https://github.com/StaticJsCMS/static-cms-nextjs-netlify-blog-template"

Looks likes the URL was wrong in the README. Should be https://github.com/StaticJsCMS/static-cms-next-netlify-template
So the full command should be:
npx create-next-app your-blog --example "https://github.com/StaticJsCMS/static-cms-next-netlify-template"


Wrong calculation of "Total Standby Voteweight"

Expected behavior
"Total Standby Voteweight" should show only active standby Voteweight without banned or punished delegates.
Actual behavior
Looks like is showing now too much in "Total Standby Voteweight", probably includes banned or punished deleates.
Steps to reproduce
Which version(s) does this affect? (Environment, OS, etc...)

fixed


Test lurch T-15920

Note: FOR INTERNAL USE ONLY. For support questions, please use the EDA Chatter group in The Power of Us Hub.
For feature requests, please use the Ideas tab in The Power of Us Hub.

Do you want to request a feature or report a bug?

What is the current behavior?

What is the expected behavior?

What is the motivation / use case for changing the behavior?

Acceptance Criteria

Given: I am on a certain page
When: I click a button
Then: An action should occur

Keyboard Acceptance Criteria

Given: I am navigating the site using only my keyboard
When: I tab to the button
Then: I should see the button highlighted on focus
And When: I press enter on a highlighted button
Then: An action should occur

Screenreader Acceptance Criteria

Given: I am using a screenreader to navigate the site
When: I tab to the button
Then: I should hear the label of the button
And When: I press enter
Then: I should hear that an action has occurred

**lurch: add

Tracking W-032940

@skosgi1 Can this be closed? (Maybe deleted, but not sure if that's possible)

@robertbwatson Closed it, but looks like I do not have access to delete.


add Redraw event

Fires an event after Redrawing a Path Layer

What problem does this solve?

It is a feature
with this, you can register at the redraw event and you can do than some stuff.
I need this feature for one of my projects. Reading the docs I found no other solution to do this.

I don't think there's a good rationale for this. The only calls to L.Path.redraw come from setLatLngs (polyline, polygon), setLatLng and setRadius (circlemarker).
In the meantime, feel free to monkey-patch Leaflet in your code with something like:
L.Path.include({
  redraw:  function () {
		if (this._map) {
			this._renderer._updatePath(this);
		}
		return this.fire('redraw');;
	},
})

If you think this should be a Leaflet feature, please explain your rationale. Give a couple of examples of something that could never be done without this feature.


Sound Bug/Lag with G933 and G35 in connection with LGS

What are you experiencing an issue with?

[x ] Aurora
[ ] Aurora supported game, (Fill in the game)
[ ] Aurora Wrapper
[ ] Aurora Profile
[ ] Aurora supported device, (Fill in problematic devices)
[ ] Aurora Scripts
[ ] Aurora Updater
[ ] Aurora Lighting issue
[x ] Other, (Logitech Gaming Software)

What kind of an issue is it?

[ ] Crash
[x ] Performance problems
[ ] Visual bug
[ ] Localization issue
[ ] Enhancement suggestion
[ ] Device issue
[x ] Other, (Sound Bug)

Expected behavior:
No Laggy/Buggy sound!
Actual behavior:
If i start aurora and lgs my sound ist buggy like hell.
I cannot here anything without lagging.
i have a g933 and a g35 but both of them are lagging. If i close lgs then aurora isn't able to map the colors.
How often does this problem occur?
Sometime. But most of the time after 30 minutes of startup the pc
Please describe the steps to reproduce this issue:
The issue can be reproduced by doing following steps:

PC Startup
Going on Teamspeak 3
Then after 30 Minutes my G933 ist lagging like hell.

What is the version of Aurora you are experiencing this issue with?
v 0.6.0b
Does the previous version of Aurora have this issue?
I don't know.
Please include any logs, screenshots, or files that are related to this issue:
========================================
Operation System: Windows 10 Pro
System Architecture: 64 bit
Environment OS Version: Microsoft Windows NT 6.2.9200.0
System Directory: C:\WINDOWS\system32
Processor Count: 8
User DomainName: AWESOME-SYSTEM_
User Name: xx
SystemPageSize: 4096
Environment Version: 4.0.30319.42000
Is Elevated: True
Aurora Assembly Version: <IP_ADDRESS>
Aurora File Version: <IP_ADDRESS>
[INFO] 20.04.2017 22:53:35: Program started with '-install_logitech' parameter
[INFO] 20.04.2017 22:53:35: Logitech LED SDK patched successfully

i had the same issue and a lgs update fixed it for me.

This issue is permanent on my system.
LGS 8.92.67

@Zeeanq Could you try using the latest development release to see if it makes a difference?

@Zeeanq Could you try updating lgs and trying the latest development release as mentioned before? Closing for now.


how about add NSUrl,String extension

i think using extension to invoke have a better experience. like:
stringA.QRImage()
this method could have some default parameters,like size or something else.
if you agree with this , I can spend some time work on it,create a pull request

why not doing it yourself?
Like:
 extension String { var qrCode: String { get { let qrCode = QRCode("http://schuch.me") qrCode?.image } } }


Implemented credentials refresh callback

With this PR I've added the ability to get the new credentials obtained when the oAuth library updates them. This is usually the case when the app is open for a very long time and the previous access token is expired while I'm using the app.
This also solves issue #86.
I've also added some lines in the readme file to notify new users about this feature.

I'm sorry @roisnir, I forgot to update the readme with the latest changes.


Updater Keeps Wiping images.json

Every time I use the updater, it extracts a new images.json and wipes out everything...can we not. 😉
Edit: It also wipes the images_backup.json so that's annoying too. 🙁

Also of note, even going up from 2.25.1 to 2.25.2, it still did all of this again:
-1 11:33:54 ShardsCoordinator | Starting NadekoBot v2.25.2
-1 11:33:54 RedisImagesCache | Migrating images v0 to images v1.
-1 11:33:54 RedisImagesCache | Migrating images v1 to images v2.
-1 11:33:54 RedisImagesCache | Cards loaded in 0.02s
-1 11:35:18 RedisImagesCache | Images reloaded in 84.10s

Mostly that migration junk from 0 -> 1 -> 2.

Ok that's an issue.
images_backup is not a backup for you. It's a backup of original values in case you mess up, so they should be wiped.

Are you sure it's the updater?

Does it happen every time you restart the bot?

Wait... Where is your images.json? images.json is moved from data/images/images.json to data/images.json, are you perhaps editing the wrong one?

Are you sure it's the updater?

Yes. Both times I've updated using the updater since the change to images.json it has wiped it back to default.

Does it happen every time you restart the bot?

No. Works fine on a restart.

Where is your images.json? images.json is moved from data/images/images.json to data/images.json, are you perhaps editing the wrong one?

I have edited C:\Program Files\NadekoBot\system\data\images.json every single time.

The first message will only ever trigger if there is data/images/images.json file. It will delete it after.

I guess it thinks that file is there, because that hasn't been there in awhile...all I know is watching the updater both times, it said it was extracting images.json and wiped mine. :D

As a partial aside, should I just delete C:\Program Files\NadekoBot\system\data\images if it's not actually in use anymore?

Cards are in there :D

Yes please do

Alright. I may be able to on Saturday night or Sunday. Unfortunately, real life stuff in the way at the moment. 👍

Just did it again after the update to 2.25.4, btw.

Same, after updating bot, images.json getting wiped to default.

@xnaas as i said, after you update and before you start the bot, you have to check if data/images/images.json exists

The file C:\Program Files\NadekoBot\system\data\images\images.json does not exist, but I will check if the file is created next time after updating and before launching the bot. Or as part of my larger test this weekend.

Ok I think the file was there because it seems file weren't being cleared up when a new release is built, so old files which should've been removed long time ago were still present. Please try updating to 2.26.0, tell me the result and close if it's solved.

For me - works

You don't have any customization in your JSON unless I'm blind. The issue is that the images.json is being reset back to default. You have default anyway, so you wouldn't be affected.

Finally seems to have stuck after this last update.

Wait, cancel that. ALMOST, perfect. 😛 Still added your own nadeko image there.

That's unrelated, it's a new pic 😂


Fix make clean/make distclean/make testclean from top level

Problem: make distclean, clean, testclean fail from top level
Solution: restore the cwd after cleaning inside runtime directories.
Previously, the embedded script would:

cd to runtime/indent
run make clean
attempt to cd to runtime/syntax, failing (as runtime/indent/runtime/syntax doesn't exit)

Solution is to run the cd & make in a sub shell.
Also considered this:
	@if test "$@" = "clean" -o "$@" = "distclean" -o "$@" = "testclean"; then \
		$(MAKE) -C runtime/indent clean; \
		$(MAKE) -C runtime/syntax clean; \
	fi

But wasn't sure if make -C is universally supported, and avoided it given Vim's makefiles don't appear to rely on it in other places.

Hmm. The tests failed on FreeBSD, with suspicious-looking problem:
�[?25hcd runtime/syntax &&  make clean &&  make test VIM="../../src/vim"
rm -f testdir/failed/* testdir/done/* testdir/vimcmd
VIMRUNTIME=../.. vim --clean --not-a-term -u testdir/runtest.vim
/bin/sh: vim: not found
*** Error code 127

however, this looks to be make indenttest which should be unaffected by this change (ditto make syntaxtest) unless there's another issue with CI. I'll see if I can work it out.

That failure seems to be because runtime/syntax/Makefile expects the "vim" path to be specified in VIMPROG, but I'd actually specified in VIM:
syntaxtest:
	cd runtime/syntax && \
		$(MAKE) clean && \
		$(MAKE) test VIM="$(VIM_FOR_SYNTAXTEST)"

Should probably be more like:
syntaxtest:
	cd runtime/syntax && \
		$(MAKE) clean && \
		$(MAKE) test VIM="$(VIM_FOR_SYNTAXTEST)" VIMRUNTIME=..

Hmm. The tests failed on FreeBSD, with suspicious-looking problem:
�[?25hcd runtime/syntax &&  make clean &&  make test VIM="../../src/vim"
rm -f testdir/failed/* testdir/done/* testdir/vimcmd
VIMRUNTIME=../.. vim --clean --not-a-term -u testdir/runtest.vim
/bin/sh: vim: not found
*** Error code 127

however, this looks to be make indenttest which should be unaffected
by this change (ditto make syntaxtest) unless there's another issue
with CI. I'll see if I can work it out.

The mixup of $VIM and $VIMPROG was fixed in patch 9.0.1628.
I'm not totally happy with how it ended up, it will now fail when using
"vim" (without a path).
--
"Hit any key to continue" is very confusing when you have two keyboards.
/// Bram Moolenaar -- @.*** -- http://www.Moolenaar.net   \
///                                                                      \
\\        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///


ExecProbeTimeout feature gate introduction

Feature gate and a notice on probes page
KEP: https://github.com/kubernetes/enhancements/issues/1972
k/k PR: https://github.com/kubernetes/kubernetes/pull/94115
Setting on hold for the k/k PR to be merged first:
/hold
/sig node
/cc @andrewsykim

/milestone 1.20

/assign @kcmartin

/hold cancel
(PR in k/k was approved and in a queue for merge)
/assign @dchen1107
(for additional tech lgtm)

Page preview:
https://deploy-preview-24692--kubernetes-io-vnext-staging.netlify.app/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#configure-probes
https://deploy-preview-24692--kubernetes-io-vnext-staging.netlify.app/docs/reference/command-line-tools-reference/feature-gates/#feature-gates-for-graduated-or-deprecated-features

/lgtm

Hi @andrewsykim this just need another look from you for tech review / lgtm

HI @SergeyKanzhelev once you addressed Tim's feedback I think this one is good to go

HI @SergeyKanzhelev once you addressed Tim's feedback I think this one is good to go

All suggestions were good and I accepted them. Should be good to go

/lgtm
Thank you @SergeyKanzhelev


Remove unused watch_me.rb

This appears to be a custom script for running tests every time a file changes and using Jessie's sneazr nose plugin to make growl notifications. We don't use nose any more and noone is using this

Coverage remained the same at 80.485% when pulling bd238c7083aca7d26e0de9b0f22ea4b006ecce6e on delete_watch_me_rb into bf64ddeef951f69db912e42afb95623ce1df16e3 on master.

Coverage remained the same at 80.485% when pulling bd238c7083aca7d26e0de9b0f22ea4b006ecce6e on delete_watch_me_rb into bf64ddeef951f69db912e42afb95623ce1df16e3 on master.

:+1:


[FLINK-19570][tests] Avoid directly creating ExecutionJobVertex and ExecutionVertex via constructors in tests

What is the purpose of the change
This PR is to fix the tests which encounters unexpected failures due to improperly creating ExecutionJobVertex and ExecutionVertex and registering duplicated ExecutionAttemptID.
Brief change log
See commits.
Verifying this change
This change is already covered by existing tests.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): (yes / no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (yes / no)
The serializers: (yes / no / don't know)
The runtime per-record code paths (performance sensitive): (yes / no / don't know)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (yes / no / don't know)
The S3 file system connector: (yes / no / don't know)

Documentation

Does this pull request introduce a new feature? (yes / no)
If yes, how is the feature documented? (not applicable / docs / JavaDocs / not documented)

@flinkbot run azure

Thanks for reviewing! @tillrohrmann
Merging.


Session.end does break rendering

Hello, currently when ending the XRSession the renderer seems to be broken.
It works as expected on device returning to the original rendering state
https://github.com/meta-quest/immersive-web-emulator/assets/5083203/477f4b86-b2ca-46c1-a176-d51abc198134

Oh seems to be related to our project

Hi - so it seems the issue is related to the canvas being a child of a shadowRoot container with a custom web component. See the glitch project for reproducting it here: https://zircon-sunset-singer.glitch.me/ (you can exit XR using the ESC key)

This doesnt happen when using Quest with Link


Wait on client-acceptor thread to prevent race condition

When creating a new instance of DefaultEventBusServer right after another has been closed may lead to an exception: Cannot bind on <IP_ADDRESS>:24842 ... already in use. This is because the client-acceptor thread might be still running even though the DefaultEventBusServer has been closed. Simply calling interrupt on the thread doesn't end the it immediately, so there is a chance it will continue running for a short while and block the socket.
This patch simply waits until the client-acceptor dies to prevent the described race condition.

Hi,
Thank you for the patch! This is a legit fix.

Note: to be able to directly merge the patch we would need you to sign a Contributor agreement:
The PDF is at https://github.com/ehcache/ehcache3/wiki (last paragraph)
Thanks a lot!

I know the reason behind the agreement but that is to much of a hassle for that minor fix. I won't sign the agreement. You know what the bug is about and how to fix it now...


Improve error handling, add config file etc.

This improves handling of errors while translating packets, adds a config file, adds debug logging, allows cancelling of translation, logs packet violation warnings etc.

By the way the config file code structure is mostly copied from geyser, but I tried not to copy lots of code directly


Avoid adding real names when the user is using a real name

This isn't useful:

I'd rather see this:

Feature: show-names
If name matches username
	replace username with name (to keep capitalization)

Either we drop the space altogether (so in this case there won't be any changes for these users, but there would be for sindresorhus, which would become SindreSorhus), or
we replace it with  so it won't break copy-pasting.

Example URL:
https://github.com/microsoft/TypeScript/issues/30442#ref-pullrequest-433925264

Wouldn't this break #2146, in a way 🤷♂.

Sounds good, but there should be a space visually, I don't want to see SindreSorhus.

Wouldn't this break #2146

As far as textContent is concerned, only the case will change. sindresorhus -> SindreSorhus so to fix that feature we just need a .toLowercase() in a couple of places.
To make it even safer if could use sindre<s/>sorhus where s and u are margin-left: 0.2em and text-transform: uppercase respectively.

One more: Punctuation.

https://github.com/bfred-it/webext-options-sync/issues/13#issuecomment-497941181


turn off debugging output?

I'm trying out moment; so far it looks like a great module.  But when I make the following call I get about 100 lines of output on node's stdout, mentioning compiled functions:
moment([2012, 0, 1]).fromNow()
Can this output be turned off?  This seems like odd default behavior.
Sorry if the answer is obvious; I'm new to this.

Hmm, I've never seen this. Can you paste some of the output here?

Full output is at https://gist.github.com/1672903
First few lines are below:
Compiled Function:
var interp;
__.unshift({ lineno: 1, filename: __[0].filename });
__.unshift({ lineno: 1, filename: __[0].filename });
buf.push('<div');
buf.push(attrs({ 'id':('tmpdebugs') }));
buf.push('>');

Hmm, I don't think this is coming from momentjs. Are there any other modules that you are using as well?

Ah, you are correct.
When trying out moment.js I had foolishly named one of my template parameters "debug", which triggered this output.
I apologize for the random noise on your tracker.  I'm looking forward to using your package!  Thanks.


[BUG] CLI Dashboard is not displayed

Describe the bug
After setting up a cluster with ipxe-examples/vagrant-pxe-harvester the dashboard is not displayed on all 3 nodes.

The harvester-installer process is running:
harvester-node-1:/home/rancher # ps aux | grep installer
root      1926  0.0  0.0   9092  3440 ttyS0    Ss+  19:04   0:00 /bin/bash -e /usr/bin/start-installer.sh
root      1928  0.0  0.1<PHONE_NUMBER>0 ttyS0    Sl+  19:04   0:00 harvester-installer
root     22021  0.0  0.0   5644   804 pts/0    S+   19:06   0:00 grep installer

To Reproduce
Steps to reproduce the behavior:

Setup a new cluster using the ipxe-examples/vagrant-pxe-harvester tool.
Start the cluster.

Expected behavior
The dashboard should be displayed instead of the default login prompt.
Environment

Harvester ISO version: Latest version at the time of writing this issue (28.04.2024).

@votdev it's because ttys0 is specified in the config file. I don't know why it's been made this way, probably the initial author wants to use virsh console <domain_id> to debug rather than VNC initially.

Try changing it from ttys0 to tty1 and redeploy. Or, on a running system, you can flip it like this:
# mv<EMAIL_ADDRESS><EMAIL_ADDRESS># systemctl daemon-reload
# systemctl restart<EMAIL_ADDRESS># systemctl restart<EMAIL_ADDRESS>
Maybe it's worth adding a tty option to settings.yml? Or at least mention it in the README to avoid further confusion - I too wondered WTF was going on when I didn't see the installer dashboard on the VM console when deployed by PXE :-)


When running csx locally, breakpoints require "require source to match" be disabled

There's a bug that repros only when a BOM is not present in a .csx file.
Steps to repro:

Install azurefunctions CLI:

npm install -g azurefunctions
npm install -g yo
npm install -g generator-azurefunctions

Create new function Http1. Use C# HTTP trigger

mkdir MyFunction
cd MyFunction
func init
func new

Run in debugger

func run Http1 --debug

This issue can also be observed in remote debugging scenarios


Move to feature structure. Ducks

https://www.freecodecamp.org/news/scaling-your-redux-app-with-ducks-6115955638be/

OR
https://github.com/soshace/fosterflow/issues/122


CentOS not supported

hey,
one of the problems is the hiera.yaml
is: path: 'os/%{facts.os.name}%{facts.os.release.major}.yaml'
should be: path: 'os/%{facts.os.family}%{facts.os.release.major}.yaml'
the other issue is that facts.d/cisecurity relies on the subscription manager to be installed.
after this, is stopped testing.
Kind regards,

Change your Puppetfile to reference the Github site rather than the Forge and let me know if the latest commit fixes your problem.


[FEATURE] getTable method of Column with full context

Description
As indicated at the docstrings, the getTable method from Column object only returns the table name if it is in the local context. I will copy the docstring here:
The inference is based only on local information, and not on the whole SQL command. For example, consider the following query:
   SELECT x FROM Foo
Given the Column called x, this method would return null, and not the info about the table Foo. On the other hand, consider:
   SELECT t. x FROM Foo t
Here, we will get a Table object for a table called t. But because the inference is local, such object will not know that t is just an alias for Foo.

It would be possible to have the full context of the FromItem related to the Column??
Additional context
I would like to transform the SQL using a custom deparser, but I need to know if the Column I'm transforming comes from a table (and which table) or comes from another expression, like a subquery.
Tips:

Greetings.
Unfortunately I do not fully understand what you are looking for. I assume its about full Column Resolution and Lineage.
If I am correct then this can't be done by JSQLParser alone since it depends in Schema information. The good news is that I just finished work on a sister project: JSQLTranspiler, which gives you the full lineage and points on the physical column.
Please have a look at the shown examples and let me know if this solves you challenge.
Otherwise please feel welcome to illustrate further your requirements -- best case with simple input and expected output examples.

For your given example:
SELECT t. x FROM Foo t

JSQLTranspiler would resolve the column like this:
t.x --> Foo.x
``

and for the more generic example

```sql
SELECT * FROM Foo t

JSQLTranspiler would resolve all the columns of Foo like this:
t.x --> Foo.x
t.col2 --> Foo.col2
...
t.col10 -- > Foo.col10
``

(depending on the actual columns held in physical table `Foo`.

Is this still relevant? Otherwise I would close this issue.